Diyarbakır Yazılım LogoDİYARBAKIR
>Ana Sayfa>Projeler>Atölye>Yazılar
>Ana Sayfa>Projeler>Atölye>Yazılar
durum: inşa ediliyor
Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama
  1. Anasayfa
  2. Yazılar
  3. Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama

Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama

Diyarbakır Yazılım
Diyarbakır Yazılım
16.08.2026
#Yazılım#Teknoloji#Topluluk

Bir NLP projesinde model seçimine saatler ayırıp veri setini birkaç CSV dosyasından ibaret görmek, performans sorunlarının en yaygın nedenlerinden biridir. Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama süreci, modelin gerçek dünyada neyi öğrenebileceğini doğrudan belirler. On yılı aşkın yazılım ve veri projelerinde gördüğüm en net sonuç, iyi tanımlanmış ve düzenli kontrol edilen verinin çoğu zaman model mimarisinden daha fazla değer üretebildiğidir. Bu rehberde NLP modelleri için özel veri seti nasıl hazırlanır sorusunu veri toplama, temizleme, etiketleme, kalite kontrol, train-validation-test ayrımı, Türkçe metin işleme ve sürümleme başlıklarıyla ele alacağız. Ayrıca NER duygu analizi ve metin sınıflandırma için veri seti oluşturma gibi sık karşılaşılan kullanım senaryolarını gerçek proje yaklaşımıyla inceleyeceğiz.

NLP İçin Özel Veri Seti Nedir?

Özel NLP veri seti, belirli bir iş problemi, dil, sektör veya kullanıcı davranışını temsil edecek şekilde tasarlanmış metin koleksiyonudur. Bu veri yalnızca ham cümlelerden oluşmaz; etiket şeması, kaynak bilgisi, kalite ölçümü, lisans durumu ve bölme stratejisi de veri setinin parçasıdır. Hazır veri setleri hızlı başlangıç sağlar ancak çoğu zaman kurumun gerçek kullanıcı dilini tam olarak yansıtmaz. Özel veri seti, modelin eğitileceği veya değerlendirileceği gerçek kullanım dağılımına daha yakın örnekler üretmeyi hedefler. İyi hazırlanmış veri seti model performansının yanında hata analizi, güvenilirlik ve sonraki sürümlerin karşılaştırılmasını da kolaylaştırır.

Hazır Veri Seti ile Özel Veri Seti Arasındaki Fark

Hazır veri setleri genellikle akademik araştırma, ortak benchmark veya geniş kullanım amacıyla hazırlanır. Özel veri seti ise belirli kurumun, ürünün veya sektörün gerçek problemlerine göre şekillenir. Örneğin genel bir Türkçe duygu analizi veri seti, teknik destek taleplerindeki “servis yine düştü” gibi ifadeleri doğru yorumlamayabilir. Özel veri setinde bu tür örnekler gerçek üretim verisinden veya kontrollü sentetik üretimden eklenebilir. Böylece model, benchmark'ta iyi görünmek yerine gerçek iş akışında daha anlamlı sonuç üretmeye başlar.

NLP Modellerinde Veri Kalitesi Neden Model Mimarisinden Bile Kritik Olabilir?

Yanlış veya tutarsız etiketlenmiş veri, güçlü modelin bile yanlış ilişki öğrenmesine neden olabilir. Aynı intent için farklı annotator'lar farklı label kullanıyorsa modelin karar sınırı belirsizleşir. Duplicate ve leakage problemleri test skorunu yapay biçimde yükseltebilir. Eksik edge case'ler production ortamında model hatalarının hızla artmasına yol açabilir. Bu nedenle daha büyük modele geçmeden önce veri kalitesini ölçmek ve hata üreten segmentleri düzeltmek çoğu projede daha verimli bir adımdır.

Hangi Durumlarda Özel Veri Setine İhtiyaç Duyulur?

Hazır veri gerçek kullanıcı davranışını yeterince temsil etmiyorsa özel veri seti gerekir. Sektörel terimler, kurum içi intent'ler ve özel entity tipleri bu ihtiyacı artırır. Türkçe gibi morfolojik açıdan zengin dillerde genel veri setlerinin kapsamı belirli görevlerde yetersiz kalabilir. Modelin gerçek production dağılımındaki başarısının ölçülmesi için kurumun kendi test setine sahip olması da önemlidir. Özel veri seti hazırlama kararı, yalnızca veri sayısına değil mevcut verinin kullanım senaryosunu ne kadar iyi kapsadığına göre verilmelidir.

Sektöre özel terminoloji

Bankacılık, sağlık, üretim, yazılım veya hukuk gibi alanlar genel dil kullanımından farklı terimler içerir. Aynı kelime sektöre göre farklı anlam taşıyabilir ve model yanlış sınıflandırma yapabilir. Sektörel veri toplamak modelin gerçek kullanım ortamını daha iyi tanımasını sağlar. Terminoloji sözlüğü annotation guideline içine eklenebilir. Domain expert incelemesi özellikle teknik terimlerin doğru etiketlenmesinde önemli katkı sağlar.

Türkçe veya düşük kaynaklı diller

Düşük kaynaklı dillerde büyük ve dengeli veri setlerine ulaşmak daha zor olabilir. Türkçede ek yapısı ve karakter kullanımı veri çeşitliliğini ayrıca artırır. Hazır İngilizce veri setini yalnızca çevirmek aynı dil dağılımını oluşturmaz. Gerçek Türkçe kullanıcı ifadeleri, yazım hataları ve günlük dil örnekleri de bulunmalıdır. Böyle bir veri seti modelin yerel dil davranışlarını daha iyi öğrenmesine yardımcı olur.

Şirkete özel intent ve entity'ler

Her kurumun ürün, işlem ve müşteri süreçleri farklıdır. Genel intent setinde “abonelik_dondurma” veya “kurumsal_lisans_yenileme” gibi şirket özelinde gerekli sınıflar bulunmayabilir. NER tarafında kurumun ürün kodu veya dahili departman adı gibi entity tipleri gerekebilir. Bu durumda özel taxonomy hazırlanmalıdır. Production loglarından toplanan anonimleştirilmiş örnekler sınıfların gerçek kullanıcı diliyle doldurulmasını sağlar.

Hazır benchmark'ların gerçek kullanım senaryosunu temsil etmemesi

Benchmark sonuçları model karşılaştırması için yararlıdır ancak gerçek iş başarısını garanti etmez. Akademik veri setindeki metin uzunluğu, kullanıcı profilinizden tamamen farklı olabilir. Gerçek sistemde argo, kısa mesaj, yazım hatası ve code-switching görülebilir. Bu örnekler benchmark'ta bulunmuyorsa model production'da beklenmedik hatalar üretir. Kuruma özel test seti bu farkı ölçmek için gereklidir.

Veri Toplamadan Önce NLP Görevini Tanımlayın

Veri toplamaya başlamadan önce modelin hangi görevi çözeceğini açık biçimde tanımlamak gerekir. Aynı metin koleksiyonu text classification, NER ve summarization için farklı biçimde etiketlenir. Beklenen output net değilse annotation süreci kısa sürede tutarsız hale gelir. Başarı metriğinin de veri toplamadan önce seçilmesi gerekir. Bu yaklaşım gereksiz veri toplama maliyetini azaltır ve veri setinin doğrudan iş problemiyle ilişkili kalmasını sağlar.

Text Classification

Text classification bir metni önceden tanımlanmış sınıflardan birine veya birkaçına atamayı hedefler. Haber kategorisi, talep türü veya içerik konusu buna örnek olabilir. Label tanımları birbirinden açık biçimde ayrılmalıdır. Aynı metin birden fazla kategoriye ait olabiliyorsa multi-label yaklaşım düşünülmelidir. Veri seti gerçek production sınıf dağılımını ve zor ayrım yapılan örnekleri içermelidir.

Sentiment Analysis

Sentiment analysis metnin olumlu, olumsuz veya nötr gibi duygu kategorilerine ayrılmasını hedefler. Ancak ironi, bağlam ve alan özelindeki ifadeler annotation sürecini zorlaştırabilir. “Ürün hızlı geldi ama çalışmıyor” gibi karışık ifadeler için açık guideline gerekir. Aspect-based sentiment gerekiyorsa etiket şeması daha ayrıntılı tasarlanmalıdır. Duygu analizi veri setinde gerçek kullanıcı dili ve farklı ifade biçimleri dengeli biçimde temsil edilmelidir.

Intent Classification

Intent classification kullanıcının gerçekleştirmek istediği amacı belirlemeye çalışır. Chatbot ve destek sistemlerinde yaygın olarak kullanılır. Intent sınıfları iş süreçleriyle doğrudan ilişkili olduğu için şirket özelinde tasarlanması gerekir. Birbirine çok yakın intent'ler model için zor olabilir ve hard negative örnekler gerektirir. “Şifre değiştirme” ile “şifremi unuttum” gibi sınıfların guideline içinde net biçimde ayrılması önemlidir.

Named Entity Recognition (NER)

NER metin içindeki kişi, kurum, tarih, ürün veya başka özel varlıkları bulmayı hedefler. Entity sınırlarının nerede başlayıp bittiği annotation kalitesini doğrudan etkiler. “Diyarbakır Yazılım Topluluğu” tek entity olarak mı yoksa farklı parçalar halinde mi işaretlenecek önceden belirlenmelidir. Nested entity kullanılıyorsa veri formatı buna uygun seçilmelidir. NER duygu analizi ve metin sınıflandırma için veri seti oluşturma süreçleri birbirinden farklı annotation kuralları gerektirir.

Question Answering

Question answering veri seti bağlam, soru ve doğru cevap ilişkisini içerir. Extractive QA sisteminde cevabın context içindeki span bilgisi de kaydedilir. Cevaplanamaz sorular veri setine eklenerek modelin uydurma cevap üretme eğilimi ölçülebilir. Sorular yalnızca kolay ve doğrudan cümlelerden oluşmamalıdır. Gerçek kullanıcıların aynı bilgiyi farklı biçimlerde nasıl sorduğu veri setinde temsil edilmelidir.

Text Summarization

Summarization veri seti kaynak metin ile hedef özet çiftlerinden oluşur. Özetin uzunluk, ton ve bilgi kapsamı kuralları annotation guideline içinde belirtilmelidir. Farklı annotator'lar çok farklı özetler yazabileceği için kalite kontrol önemlidir. Sayısal ve kritik bilgilerin korunması ayrıca değerlendirilmelidir. Kurumsal summarization görevlerinde anonimleştirilmiş gerçek dokümanlar sentetik örneklerden daha değerli olabilir.

Machine Translation

Machine translation için kaynak ve hedef dilde hizalanmış cümle veya belge çiftleri gerekir. Çevirinin doğal ve anlam açısından doğru olması önemlidir. Sektörel terminoloji için glossary kullanılabilir. Otomatik çevrilmiş verinin insan doğrulamasından geçmesi kaliteyi artırır. Türkçe ile İngilizce arasındaki yapı farkı nedeniyle kelime kelime çeviri örnekleri model kalitesini düşürebilir.

Semantic Similarity

Semantic similarity görevinde iki metnin anlam açısından ne kadar yakın olduğu değerlendirilir. Veri seti benzer, kısmen benzer ve anlamı farklı ama kelimeleri yakın örnekler içermelidir. Kolay negatif örnekler modelin gerçek ayrım yeteneğini ölçmek için yetersizdir. Paraphrase ve hard negative örnekleri özellikle önemlidir. Annotation ölçeği binary veya sayısal skor biçiminde tasarlanabilir.

Instruction Tuning ve LLM Fine-Tuning

Instruction tuning veri seti kullanıcı talimatı ile beklenen model yanıtı arasındaki ilişkiyi öğretir. Instruction, input, output ve gerektiğinde system message alanları bulunabilir. Yanıtların yalnızca doğru değil stil ve güvenlik açısından da tutarlı olması gerekir. Aynı görevin farklı ifade edilmiş talimatları veri çeşitliliğini artırır. LLM fine-tuning verisi hazırlarken düşük kaliteli otomatik yanıtların büyük miktarda eklenmesi yerine daha küçük ama doğrulanmış örnek seti tercih edilebilir.

Göreve Göre Veri İhtiyacı Nasıl Değişir?

Her NLP görevi aynı miktarda ve aynı biçimde veri gerektirmez. Basit binary classification birkaç bin iyi örnekle anlamlı sonuç verebilirken geniş intent taxonomy daha fazla çeşitlilik ister. NER'de yalnızca toplam cümle sayısı değil her entity türünün kaç kez görüldüğü önemlidir. Summarization ve instruction tuning gibi üretim görevlerinde tek örnek hazırlama maliyeti daha yüksektir. Veri ihtiyacı model boyutu, domain çeşitliliği ve başarı hedefiyle birlikte değerlendirilmelidir.

NLP Veri Seti Tasarımına Nereden Başlanmalı?

İyi veri seti tasarımı modelin input ve output tanımından başlar. Ardından label taxonomy, edge case ve exclusion kuralları hazırlanır. Başarı metriği henüz veri toplanmadan belirlenirse hangi örneklerin daha değerli olduğu anlaşılır. Annotation guideline tasarım aşamasında oluşturulmalıdır. Bu hazırlık, daha sonra binlerce örneği yeniden etiketleme ihtiyacını ciddi biçimde azaltır.

Modelin Girdisini Tanımlayın

Modelin tek cümle, paragraf, konuşma geçmişi veya belge alıp almayacağı açık olmalıdır. Input uzunluğu veri setindeki text distribution'ı belirler. Production'da kullanıcı yazım hataları yapıyorsa training set yalnızca temiz cümlelerden oluşmamalıdır. Input içine metadata ekleniyorsa hangi alanların model tarafından görüleceği belirlenmelidir. Veri toplama sistemi bu formatı baştan koruyacak şekilde kurulmalıdır.

Beklenen Model Çıktısını Tanımlayın

Model output'u label, entity listesi, span, özet veya serbest metin olabilir. Output biçimi değerlendirme yöntemini belirler. Structured output gerekiyorsa schema veri setinde açık biçimde tanımlanmalıdır. Multi-label classification sisteminde birden fazla label aynı örnekte bulunabilir. Beklenen çıktı net değilse annotator kararları tutarsız hale gelir.

Label Taxonomy Oluşturun

Label taxonomy bütün sınıfların tanımını ve birbirleriyle ilişkisini belirler. Label isimleri kısa ama anlamı açık olmalıdır. Çok benzer sınıflar birleştirilebilir veya daha net kurallarla ayrılabilir. Hiyerarşik taxonomy gerekiyorsa ana ve alt sınıflar belirlenmelidir. Gerçek production örnekleri taxonomy tasarımını test etmek için kullanılmalıdır.

Inclusion ve Exclusion Kriterleri Belirleyin

Her veri örneğinin dataset'e alınması gerekli değildir. Çok kısa, anlamsız, izin problemi bulunan veya görevi temsil etmeyen metinler dışarıda bırakılabilir. Inclusion kriteri hangi örneklerin kabul edildiğini açıklar. Exclusion kriteri annotator'ların benzer kararlar vermesini sağlar. Bu kurallar veri kaynağı değiştiğinde yeniden gözden geçirilmelidir.

Edge Case'leri Önceden Tanımlayın

Edge case'ler modelin en çok hata yapabileceği sınır durumlarıdır. İroni, çoklu intent, eksik cümle veya code-switching buna örnek olabilir. Bu örnekler yalnızca production'da ortaya çıktıktan sonra fark edilmemelidir. Pilot annotation sırasında özellikle aranmalıdır. Edge case listesi zamanla living guideline içine eklenebilir.

Başarı Metriklerini Veri Toplamadan Önce Belirleyin

Accuracy bazı görevlerde yeterli olabilir ancak dengesiz sınıflarda yanıltıcıdır. Macro F1, per-class recall veya entity-level F1 daha anlamlı olabilir. İş açısından kritik sınıf için minimum recall hedefi tanımlanabilir. Bu hedef hangi veri segmentinin daha fazla toplanması gerektiğini gösterir. Model değerlendirme kriteri veri seti hazırlandıktan sonra değil proje başında belirlenmelidir.

NLP Verileri Nereden Toplanabilir?

NLP verileri kurum içi sistemlerden, açık veri kaynaklarından, API'lerden, web sayfalarından veya sentetik üretim yoluyla toplanabilir. Her kaynağın kalite, temsil ve lisans riski farklıdır. Şirket içi gerçek veriler kullanım senaryosunu iyi temsil eder ancak kişisel veri içerebilir. Açık veri hızlı başlangıç sağlar ancak domain uyumu kontrol edilmelidir. Veri provenance kaydı hangi örneğin nereden geldiğini izlemek için sürecin başından itibaren tutulmalıdır.

Şirket İçi Veri Kaynakları

Şirket içi kayıtlar modelin gerçek kullanıcı davranışını temsil etmesi açısından değerlidir. Destek konuşmaları, e-posta, CRM ve dokümanlar gerçek terminoloji içerir. Bu kaynaklar kullanılmadan önce erişim ve kişisel veri kuralları değerlendirilmelidir. Veriler mümkün olduğunda anonimleştirilmelidir. Kaynak sistem ve toplama tarihi metadata olarak saklanmalıdır.

Müşteri destek kayıtları

Destek kayıtları intent, sentiment ve question answering görevleri için zengin veri kaynağıdır. Kullanıcıların gerçek sorunları nasıl ifade ettiği görülebilir. Aynı ticket içinde müşteri ve destek çalışanı mesajları ayrıştırılmalıdır. Kişisel ve sipariş bilgileri temizlenmelidir. Çözülmüş ticket'lar doğru intent veya resolution label üretmek için ek sinyal sağlayabilir.

E-postalar

E-postalar kurumsal terminoloji ve doğal iletişim dili içerir. Ancak imza, quoted reply ve kişisel bilgi gibi temizlenmesi gereken alanlar bulunur. Aynı e-posta zinciri farklı örnekler halinde kullanılırsa duplicate leakage oluşabilir. Konu satırı ayrı özellik olarak değerlendirilebilir. Kullanım izni ve retention politikası veri toplama öncesinde belirlenmelidir.

Chatbot konuşmaları

Chatbot logları kullanıcıların kısa ve doğal ifadelerini içerir. Başarısız intent tahminleri yeni training data için özellikle değerlidir. Aynı kullanıcının arka arkaya yazdığı mesajlar conversation context içinde ele alınabilir. Kullanıcı ID anonimleştirilmelidir. Bot response'larının training örneği olarak kullanılması sırasında önceki model hatalarının tekrar veri setine taşınmamasına dikkat edilmelidir.

CRM kayıtları

CRM verileri müşteri talebi, işlem türü ve açıklama gibi yapılandırılmış ve metinsel alanları bir araya getirir. Mevcut kategori alanları weak supervision için başlangıç label'ı olabilir. Ancak CRM label'larının insanlar tarafından tutarlı girildiği varsayılmamalıdır. Örneklem üzerinde doğruluk kontrolü yapılmalıdır. Hassas müşteri verisi anonimleştirilmeden NLP pipeline'ına aktarılmamalıdır.

Dokümanlar

Şirket içi dokümanlar question answering, summarization ve RAG değerlendirme veri setleri için kullanılabilir. Belge sürümü ve tarih bilgisi önemlidir. Eski prosedürler güncel olmayan cevap üretimine neden olabilir. Kaynak doküman izinleri korunmalıdır. Bölüm başlığı ve sayfa bilgisi metadata olarak saklandığında error analysis daha kolay yapılır.

Açık Veri Kaynakları

Açık veri kaynakları pilot ve baseline hazırlığında önemli avantaj sağlar. Ancak her açık veri seti ticari kullanım veya yeniden dağıtım için uygun değildir. Dataset card ve lisans bilgisi incelenmelidir. Dil ve domain dağılımı kurum verisiyle karşılaştırılmalıdır. Açık veri genellikle özel veriyle birlikte kullanıldığında daha anlamlı başlangıç sağlar.

Hugging Face Datasets

Hugging Face Datasets birçok NLP veri setine ortak arayüz üzerinden erişim sağlar. Dataset card veri kaynağı, lisans ve kullanım amacı hakkında önemli bilgi sunabilir. Model training pipeline'ına doğrudan entegre edilebilir. Ancak veri setinin gerçekten gerekli lisans şartlarını taşıdığı ayrıca kontrol edilmelidir. Kuruma özel dönüştürülmüş sürüm ayrı revision altında tutulabilir.

Kaggle

Kaggle çok sayıda community dataset barındırır. Veri kaynağı ve lisans kalitesi setten sete değişebilir. Açıklaması yetersiz veri seti production training için risklidir. Duplicate veya yanlış label oranı örnekleme ile incelenmelidir. Kaggle verisi başlangıç araştırması için yararlı olsa da provenance doğrulaması yapılmadan kurumsal kullanıma alınmamalıdır.

Akademik veri setleri

Akademik veri setleri iyi dokümante edilmiş benchmark'lar sağlayabilir. Dataset oluşturma metodolojisi makaleden incelenebilir. Araştırma kullanım izni ile ticari kullanım izni aynı olmayabilir. Veri dağılımı gerçek production kullanıcılarını temsil etmeyebilir. Bu nedenle akademik benchmark yanında kurum özelinde test seti tutulmalıdır.

Kamu açık verileri

Kamu açık verileri Türkçe NLP projelerinde önemli kaynak olabilir. Karar, rapor veya istatistik metinleri belirli görevlerde kullanılabilir. Veri kullanım koşulları ve lisans yine kontrol edilmelidir. Resmi dil günlük kullanıcı dilinden farklı olduğu için domain farkı hesaba katılmalıdır. Kamu verisi tek başına müşteri destek veya sosyal medya kullanımını temsil etmez.

Web Scraping ile Metin Toplama

Web scraping metin toplamak için kullanılabilir ancak teknik olarak erişilebilir içerik otomatik olarak serbest kullanım anlamına gelmez. robots, kullanım koşulları ve telif durumu değerlendirilmelidir. Sayfa HTML'i temizlenirken asıl metin ile navigasyon içerikleri ayrıştırılmalıdır. URL ve crawl tarihi provenance kaydına eklenebilir. Veri toplama hızı siteye gereksiz yük oluşturmayacak şekilde sınırlandırılmalıdır.

API'lerden Veri Toplama

API veri toplama yapılandırılmış erişim sağladığı için scraping'e göre daha düzenli olabilir. Rate limit ve kullanım şartlarına uyulmalıdır. API response version değişiklikleri veri formatını etkileyebilir. Ham response ile temizlenmiş metin ayrı saklanabilir. API credential'ları dataset repository'sinde tutulmamalıdır.

Kullanıcı Üretimli İçerikler

Kullanıcı yorumları, forum mesajları ve sosyal medya içeriği doğal dil çeşitliliği sağlar. Yazım hatası, emoji ve argo açısından gerçek kullanım dağılımını temsil edebilir. Buna karşılık kişisel veri ve kullanım izni açısından daha yüksek risk taşır. Toxic içerik annotation ekibinin çalışma güvenliği açısından da ele alınmalıdır. Veri kullanım amacı ve saklama süresi açık biçimde belirlenmelidir.

Sentetik Veri Oluşturma

Sentetik veri az görülen sınıfları desteklemek veya özel edge case üretmek için kullanılabilir. Gerçek verinin yerini tamamen alması önerilmez. Üretim prompt'u modelin kendi dil kalıplarını veri setine taşıyabilir. İnsan doğrulaması sentetik örnek kalitesini artırır. Sentetik kaynak etiketi metadata içinde tutulmalıdır.

LLM Kullanarak Training Data Üretme

LLM belirli intent veya entity örneklerini hızlı üretmek için kullanılabilir. Few-shot prompt ile istenen stil ve sınıf açıklaması verilebilir. Çıktıların tekrar eden pattern ve yanlış label açısından incelenmesi gerekir. Aynı LLM ile üretip aynı model ailesini fine-tune etmek bias riskini artırabilir. Gerçek kullanıcı örnekleriyle karşılaştırma yapılmadan sentetik veriye yüksek ağırlık verilmemelidir.

Veri Toplama Aşamasında Hukuk, Etik ve Gizlilik

NLP veri seti oluştururken teknik kalite kadar veri kullanım hakkı ve gizlilik de önemlidir. Kişisel veri, telif hakkı ve kaynak lisansı veri toplama planının ilk aşamasında değerlendirilmelidir. Sonradan veri setinden belirli örnekleri çıkarmak provenance yoksa zorlaşır. Veri minimization yalnızca gerekli içeriğin tutulmasını sağlar. Veri güvenliği ve yerellik hakkında daha geniş bir bakış için https://www.diyarbakiryazilim.com.tr/posts/makine-ogrenimi-modellerinde-veri-guvenligi-ve-yerellik içeriği de incelenebilir.

KVKK ve Kişisel Veriler

Türkçe şirket verilerinde isim, telefon, adres veya müşteri numarası gibi kişisel bilgiler bulunabilir. Bu verilerin eğitim amacıyla kullanılması için hukuki dayanak ve amaç değerlendirilmelidir. Gerekli olmayan alanlar veri setinden çıkarılabilir. Kişisel veri bulunan dataset erişimi rol bazlı sınırlandırılmalıdır. KVKK açısından kesin uygulama kurumun veri işleme sürecine göre hukuk ve veri koruma uzmanlarıyla değerlendirilmelidir.

Personally Identifiable Information (PII)

PII bir kişiyi doğrudan veya dolaylı tanımlayabilecek bilgileri kapsar. E-posta, telefon ve açık kimlik bilgileri sık örneklerdir. Regex ve NER tabanlı PII taraması otomatik ön kontrol sağlayabilir. Otomatik sistem bütün PII türlerini yakalayamayacağı için örnek insan review yapılmalıdır. Ham ve anonimleştirilmiş dataset farklı erişim seviyelerinde tutulabilir.

Hassas Verilerin Anonimleştirilmesi

Anonimleştirme kişiyi veya hassas kaydı tanımlayan bilgilerin kaldırılmasını ya da dönüştürülmesini hedefler. İsim yerine PERSON_001 gibi placeholder kullanılabilir. Tarih veya konum bilgisi görevin gerektirdiği ölçüde genelleştirilebilir. Dönüşüm modeli öğrenilecek NLP görevini bozmamalıdır. Anonimleştirme sonrasında yeniden tanımlama riskinin düşük olduğu kontrol edilmelidir.

Telif Hakkı ve Veri Kullanım İzinleri

İnternette bulunan metnin erişilebilir olması eğitim verisi olarak sınırsız kullanılabileceği anlamına gelmez. Kaynak içeriğin lisansı ve kullanım şartları incelenmelidir. Kurum içi dokümanlarda da fikri mülkiyet sahipliği netleştirilmelidir. Veri kaynağı ve izin durumu dataset metadata'sında tutulabilir. Hukuki belirsizliği olan içerik production training setinden çıkarılabilir.

Web Scraping ve Kullanım Koşulları

Scraping öncesinde ilgili sitenin kullanım koşulları incelenmelidir. Teknik erişim ile kullanım hakkı aynı şey değildir. Rate limit ve robot politikaları dikkate alınmalıdır. Toplanan içeriğin yeniden dağıtımı ayrıca farklı haklar gerektirebilir. Kurumsal projelerde hukuk incelemesi scraping pipeline kurulmadan önce yapılmalıdır.

Dataset Lisansları

Dataset lisansı verinin nasıl kullanılabileceğini ve dağıtılabileceğini belirler. Model training, ticari kullanım ve yeniden yayınlama izinleri birbirinden farklı olabilir. Lisans metadata'sı dataset version ile birlikte saklanmalıdır. Birden fazla kaynağın birleştirildiği dataset'te lisans uyumluluğu ayrıca değerlendirilmelidir. “Açık veri” ifadesi tek başına bütün kullanım haklarını açıklamaz.

Apache

Apache lisansı genellikle geniş kullanım hakları sağlayan lisans türlerinden biridir. Ancak dataset'in gerçekten bu lisans altında yayınlandığı doğrulanmalıdır. Attribution ve notice gereksinimleri ilgili sürüme göre incelenmelidir. Model ve dataset lisansı birbirinden ayrı olabilir. Kurum hukuk ekibi production kullanımı öncesinde ilgili koşulları kontrol etmelidir.

MIT

MIT lisansı yazılım tarafında yaygın ve görece izin verici bir lisanstır. Dataset bağlamında kullanılıyorsa veriyi oluşturan tarafın gerçekten ilgili haklara sahip olup olmadığı ayrıca önemlidir. Lisans metni veri provenance kaydıyla birlikte saklanabilir. Attribution gereksinimi değerlendirilmelidir. Bir dataset'in GitHub repository'sinde MIT dosyası bulunması veri içindeki üçüncü taraf içeriğin durumunu otomatik çözmez.

Creative Commons

Creative Commons lisansları farklı koşullar içerir. BY, NC veya SA gibi ekler kullanım biçimini önemli ölçüde etkileyebilir. Ticari kullanım özellikle NC koşulunda dikkatle değerlendirilmelidir. Derivative work ve redistribution şartları da önemlidir. Dataset card'daki lisans kodu tek başına yeterli görülmeden resmi lisans metni incelenmelidir.

Ticari kullanım kısıtları

Bazı dataset'ler yalnızca akademik veya kişisel kullanım için sunulabilir. Şirket içi model geliştirme bu kapsamın dışında kalabilir. Fine-tuning ve model çıktısının ticari üründe kullanılması ayrıca incelenmelidir. Veri seti lisansı izin vermiyorsa alternatif kaynak bulunmalıdır. Lisans kontrolünü training tamamlandıktan sonra yapmak gereksiz proje riski oluşturur.

Data Provenance Neden Kaydedilmelidir?

Data provenance her örneğin hangi kaynaktan ve hangi tarihte geldiğini izlenebilir hale getirir. Lisans veya silme talebi ortaya çıktığında etkilenen örnekler bulunabilir. Model hatası belirli veri kaynağına bağlıysa analiz kolaylaşır. Sentetik ve gerçek veri birbirinden ayrılabilir. Dataset card ve versioning sistemi provenance bilgisini özetlemek için kullanılabilir.

Ham Metin Verisi Nasıl Temizlenir?

Ham metin temizleme işlemi veri kalitesini artırmayı hedefler ancak anlam taşıyan bilgiyi yok etmemelidir. Duplicate, HTML artığı, encoding sorunu ve anlamsız metinler ilk kontrol alanlarıdır. Modern transformer modellerinde agresif normalizasyon çoğu zaman gereksizdir. Temizleme adımları kod olarak sürümlenmelidir. Ham veri korunarak temizlenmiş veri yeniden üretilebilir hale getirilmelidir.

Duplicate Verilerin Temizlenmesi

Duplicate örnekler modelin bazı metinleri gereğinden fazla öğrenmesine neden olabilir. Aynı örnek train ve test setine düşerse değerlendirme skoru yapay biçimde yükselir. Exact duplicate ilk aşamada kolayca bulunabilir. Near ve semantic duplicate kontrolleri daha gelişmiş benzerlik yöntemleri gerektirir. Duplicate temizliği split işleminden önce yapılması gereken temel kontrollerden biridir.

Exact duplicate

Exact duplicate birebir aynı metnin veri setinde birden fazla kez bulunmasıdır. Normalize edilmiş text hash değeri kullanılarak hızlı tespit edilebilir. Label'lar farklıysa veri kalitesi problemi ayrıca incelenmelidir. Bir örneğin hangi kayıttan tutulacağı provenance bilgisine göre belirlenebilir. Duplicate rate kalite dashboard'unda takip edilebilir.

Near duplicate

Near duplicate küçük yazım veya format farkları bulunan büyük ölçüde aynı metinlerdir. Noktalama ve whitespace farkı klasik exact hash yöntemini aşabilir. Karakter veya token tabanlı benzerlik metrikleri kullanılabilir. Aynı e-posta zincirinin farklı imzalarla kaydedilmiş kopyaları buna örnektir. Near duplicate leakage test skorunu ciddi biçimde etkileyebilir.

Semantic duplicate

Semantic duplicate kelimeler farklı olsa bile anlam olarak çok yakın örnekleri ifade eder. Embedding similarity bu örnekleri bulmak için kullanılabilir. Aynı kullanıcı sorusunun farklı paraphrase biçimleri tamamen duplicate sayılmayabilir, bu nedenle threshold dikkatle seçilmelidir. Test setinde train örneklerine çok yakın semantic kopyalar varsa değerlendirme zorlaşır. İnsan örneklemesi otomatik similarity sonuçlarını doğrulamak için yararlıdır.

HTML ve Markdown Kalıntılarının Temizlenmesi

Web veya doküman kaynaklarında HTML tag ve Markdown işaretleri metne karışabilir. Görev bu format bilgisini kullanmıyorsa gereksiz kalıntılar temizlenebilir. Link text'i anlam taşıyorsa korunmalıdır. Kod blokları teknik destek veya coding dataset'inde önemli olabilir ve kaldırılmamalıdır. Temizleme kuralı veri kaynağı ve NLP görevine göre belirlenmelidir.

URL ve E-posta Adreslerinin Yönetilmesi

URL ve e-posta adresleri bazı görevlerde entity veya güvenlik sinyali olabilir. Bu nedenle otomatik olarak silmek yerine placeholder ile değiştirmek daha uygun olabilir. PII amacıyla e-posta adresleri anonimleştirilebilir. URL domain bilgisi classification için önemliyse kontrollü biçimde korunabilir. Normalizasyon kararı modelin hedef görevine bağlıdır.

Emoji ve Özel Karakterlerin Yönetilmesi

Emoji özellikle sentiment ve sosyal medya verilerinde güçlü anlam taşır. Olumlu veya olumsuz duygu sinyali tamamen kaybolmamalıdır. Bazı modeller emoji token'larını doğrudan işleyebilir. Bozuk veya anlamsız kontrol karakterleri ise temizlenebilir. Özel karakterleri topluca silmek modern NLP projelerinde çoğu zaman gereksiz bilgi kaybı oluşturur.

Gereksiz Whitespace ve Satır Sonları

Fazla boşluk ve anlamsız satır sonları text normalization sırasında azaltılabilir. Ancak paragraf ayrımı summarization ve document task'lerinde bilgi taşıyabilir. Birden fazla boşluk tek boşluğa dönüştürülebilir. Kod veya tablo içeren metinlerde whitespace yapısı korunmalıdır. Temizleme işlemi görev bazında uygulanmalıdır.

Encoding Problemleri

Türkçe karakterlerin bozuk görünmesi encoding hatasının güçlü göstergesidir. UTF-8 standardizasyonu çoğu pipeline için iyi başlangıçtır. “İ” veya benzeri bozulmuş karakterler kaynak encoding yanlış yorumlandığında ortaya çıkabilir. Veriyi sessizce dönüştürmek yerine bozuk kayıt sayısı raporlanmalıdır. Encoding sorunu kaynak sistem seviyesinde çözülebiliyorsa en doğru yaklaşım budur.

Bozuk veya Eksik Metinlerin Filtrelenmesi

Boş, anlamsız veya yalnızca sistem mesajı içeren kayıtlar training'e değer katmaz. Minimum uzunluk kuralı uygulanabilir ancak kısa intent örnekleri yanlışlıkla silinmemelidir. Eksik source veya label bilgisi olan kayıtlar ayrı kalite kuyruğuna alınabilir. Filter edilen örnek sayısı raporlanmalıdır. Çok yüksek filter oranı veri toplama pipeline'ında sorun olduğunu gösterebilir.

Toxic ve Zararlı İçeriklerin Yönetimi

Toxic içerik bazı görevlerde modelin gerçek kullanım ortamını temsil edebilir. Tamamen silmek modelin kötüye kullanım örneklerini tanımamasına neden olabilir. Bununla birlikte annotator güvenliği ve psikolojik yükü dikkate alınmalıdır. Hassas içerik için özel erişim ve işaretleme yöntemi uygulanabilir. Veri setinde tutulup tutulmayacağı kullanım amacı ve güvenlik politikasına göre belirlenmelidir.

NLP İçin Metin Normalizasyonu

Metin normalizasyonu her projede aynı kuralların uygulanacağı mekanik bir işlem değildir. Lowercase, noktalama silme ve stemming gibi klasik adımlar modern transformer modellerinde her zaman gerekli değildir. Fazla normalizasyon modelin gerçek kullanıcı girdisini görmesini engelleyebilir. Eğitim ve production preprocessing aynı olmalıdır. Her dönüşümün performans etkisi ablation testiyle ölçülebilir.

Lowercase Yapılmalı mı?

Lowercase kararı kullanılan model ve göreve göre verilmelidir. Cased model kullanılıyorsa büyük harf bilgisi önemli olabilir. Türkçede “I” ve “İ” dönüşümleri locale açısından ayrıca dikkat gerektirir. NER görevinde büyük harf entity sinyali taşıyabilir. Varsayılan olarak bütün metni lowercase yapmak yerine tokenizer ve model tasarımına uygun davranmak daha sağlıklıdır.

Noktalama İşaretleri Silinmeli mi?

Noktalama işaretleri cümle yapısı, duygu ve anlam hakkında bilgi taşır. Sentiment analizinde “!” veya “?” önemli sinyal olabilir. Transformer tokenizer'lar noktalama işaretlerini işleyebilir. Gürültü oluşturan özel durumlar ayrı temizlenebilir. Bütün noktalama işaretlerini silmek modern NLP pipeline'ında çoğu zaman gerekli değildir.

Stop Words Silinmeli mi?

Klasik bag-of-words sistemlerinde stop word temizliği faydalı olabilir. Transformer tabanlı modeller bağlam ilişkisini kullandığı için stop word'leri silmek cümle anlamını bozabilir. Negation içeren kısa kelimeler özellikle önemlidir. “Bu ürün iyi değil” örneğinde “değil” kelimesini kaldırmak duygu etiketini tersine çevirebilir. Bu nedenle stop word temizliği model türüne göre test edilmelidir.

Stemming ve Lemmatization Gerekli mi?

Stemming ve lemmatization klasik NLP sistemlerinde vocabulary boyutunu azaltmak için kullanılır. Modern subword tokenizer'lar morfolojik çeşitliliği farklı biçimde yönetir. Türkçede yanlış kök bulma anlam kaybına neden olabilir. Transformer fine-tuning için çoğu zaman ham kelime biçimini korumak daha uygundur. Geleneksel model kullanılıyorsa etkisi validation set üzerinde ölçülebilir.

Modern Transformer Modellerinde Aşırı Temizleme Neden Zararlı Olabilir?

Transformer modelleri noktalama, büyük harf ve kelime biçimlerinden bağlam bilgisi öğrenebilir. Bu işaretleri kaldırmak training ile gerçek kullanıcı girdisi arasında dağılım farkı oluşturur. Sosyal medya dilindeki emoji ve tekrarlar duygu sinyali taşıyabilir. Temizleme yalnızca açık teknik gürültüyü hedeflemelidir. Daha fazla preprocessing her zaman daha iyi model anlamına gelmez.

Türkçe NLP Veri Setlerinde Özel Dikkat Gerektiren Noktalar

Türkçe eklemeli dil yapısı, karakter özellikleri ve günlük kullanım çeşitliliği nedeniyle veri hazırlamada özel dikkat ister. İngilizce için hazırlanmış preprocessing kuralını doğrudan Türkçeye uygulamak hatalı sonuç üretebilir. I, İ, ı ve i dönüşümleri en sık görülen teknik problemlerden biridir. Yazım hataları ve code-switching gerçek kullanıcı verisinde sık görülür. Türkçe özel veri seti hazırlama süreci bu çeşitliliği koruyarak modelin gerçek kullanım ortamını öğrenmesini sağlamalıdır.

Türkçenin Eklemeli Dil Yapısı

Türkçede kelime köklerine çok sayıda ek gelebilir ve tek kelime uzun anlam dizisi taşıyabilir. Bu durum vocabulary ve tokenization davranışını etkiler. Aynı intent farklı ek kombinasyonlarıyla ifade edilebilir. Veri seti yalnızca sözlük biçimindeki kelimelerden oluşmamalıdır. Subword tokenizer seçimi Türkçe üzerinde ayrıca test edilmelidir.

I/ı ve İ/i Problemi

Türkçe büyük ve küçük harf dönüşümü İngilizce locale kurallarından farklıdır. “I” karakterinin küçüğü “ı”, “İ” karakterinin küçüğü “i” olmalıdır. Standart yazılım fonksiyonları yanlış locale ile kullanıldığında veri bozulabilir. Bu durum entity ve kelime eşleşmesini etkiler. Text normalization pipeline Türkçe locale testleri içermelidir.

Cased ve Uncased Veri Hazırlama

Cased model büyük harf bilgisini korur ve NER gibi görevlerde avantaj sağlayabilir. Uncased model farklı yazım biçimlerine karşı daha dayanıklı olabilir. Ancak Türkçe karakter dönüşümleri doğru yapılmalıdır. Veri setinin production girişini temsil etmesi en önemli kriterdir. Model karşılaştırması aynı test seti üzerinde yapılmalıdır.

Türkçe Karakterlerin Korunması

ç, ğ, ı, İ, ö, ş ve ü karakterleri anlam taşıyan normal Türkçe karakterlerdir. ASCII dönüşümü bazı kelimeleri belirsiz hale getirebilir. Kullanıcı gerçekten “cagri” yazıyorsa bu örnek ayrıca bulunabilir ancak temiz “çağrı” metni zorla ASCII'ye çevrilmemelidir. Encoding pipeline bu karakterleri eksiksiz korumalıdır. Character corruption kalite testleriyle otomatik tespit edilebilir.

Yazım Hataları

Gerçek kullanıcılar mobil cihaz ve hızlı mesajlaşma nedeniyle yazım hataları yapar. Training set tamamen düzeltilmiş metinden oluşursa model production'da zorlanabilir. Orijinal ve normalize edilmiş metin ayrı alanlarda tutulabilir. Bazı hatalar sentetik olarak üretilebilir. Ancak sentetik typo dağılımı gerçek kullanıcı verisiyle karşılaştırılmalıdır.

Argo ve Günlük Dil

Argo ve günlük konuşma intent veya sentiment üzerinde güçlü anlam taşır. Kurumsal chatbot gerçek kullanıcı mesajlarını alıyorsa bu ifadeleri tamamen temizlemek doğru değildir. Annotation guideline saldırgan veya argo ifadelerin nasıl etiketleneceğini açıklamalıdır. Annotator güvenliği için içerik uyarısı kullanılabilir. Veri seti resmi Türkçe ile günlük Türkçe arasında dengeli kapsama sahip olmalıdır.

Sosyal Medya Türkçesi

Sosyal medya metinlerinde kısaltma, emoji, tekrarlı harf ve noktalama kullanımı yaygındır. “çoook iyi” gibi ifadeler sentiment açısından güçlü sinyaldir. Kullanıcı adları ve URL'ler anonimleştirilebilir. Hashtag'lerin anlam taşıyıp taşımadığı göreve göre değerlendirilmelidir. Sosyal medya verisiyle eğitilen model normal kurumsal metne taşınırken domain farkı ölçülmelidir.

Code-Switching

Türkçe kullanıcılar teknik ve günlük konuşmalarda sıkça İngilizce kelimeler kullanabilir. “Deploy sonrası servis crash oldu” gibi cümleler yazılım ekiplerinde normaldir. Bu örnekleri temizlemek gerçek dağılımı bozabilir. Model tokenizer'ının iki dili de yeterli biçimde desteklemesi gerekir. Code-switching oranı dataset statistics içinde raporlanabilir.

Türkçe-İngilizce karışık metinler

Türkçe-İngilizce karışık metinler özellikle teknoloji ve iş dünyasında sık görülür. Entity ve intent annotation kuralları bu tür cümleleri kapsamalıdır. İngilizce teknik terimler Türkçeye zorla çevrilmemelidir. Gerçek kullanım oranı train ve test setlerinde benzer tutulabilir. Language detection sistemi bu metinleri tek dil olarak yanlış filtrelememelidir.

Bölgesel Dil Kullanımı ve Diyalektler

Bölgesel ifadeler modelin farklı kullanıcı gruplarını anlamasını etkileyebilir. Yalnızca standart İstanbul Türkçesine benzer metinlerle eğitim yapmak coverage boşluğu oluşturabilir. Diyalekt verisi toplanırken kullanıcı gizliliği ve temsil dengesi önemlidir. Annotation guideline yerel ifadelerin standart anlamını açıklayabilir. Diyarbakır ve çevresinde kullanılabilecek yerel ifade veri setleri topluluk projeleri için de değerli bir çalışma alanı sunar.

Sektöre Özel Türkçe Terminoloji

Sektörel terimler çoğu genel dil modelinde farklı anlamda yorumlanabilir. Finans, hukuk, sağlık ve yazılım alanlarında Türkçe ile İngilizce terimler sık karışır. Terminoloji sözlüğü annotation sürecine dahil edilmelidir. Domain expert belirli örneklerde final karar verebilir. Model evaluation seti sektörün en kritik terimlerini içermelidir.

NLP Verisi Nasıl Etiketlenir?

Doğal dil işleme için metin verisi toplama temizleme ve etiketleme süreci veri setinin güvenilirliğini doğrudan belirler. Manuel annotation yüksek kalite sağlar ancak maliyetlidir. Model-assisted veya LLM-assisted yöntemler annotator hızını artırabilir. Weak supervision büyük hacimli kaba label üretmek için kullanılabilir. En iyi sonuç çoğu projede human-in-the-loop ve ölçülebilir kalite kontrolün birlikte kullanılmasından gelir.

Manual Annotation

Manual annotation insan annotator'ın örneği okuyup guideline'a göre label vermesidir. Karmaşık bağlam ve domain bilgisi gereken görevlerde güçlü yöntemdir. İnsan hatası ve subjektif kararlar yine mümkündür. Double annotation ve agreement ölçümü kaliteyi artırır. Annotator eğitimi veri seti hazırlama maliyetinin önemli bölümüdür.

Model-Assisted Annotation

Model-assisted annotation mevcut baseline modelin tahminini annotator'a öneri olarak sunar. İnsan doğruysa onaylar, yanlışsa düzeltir. Bu yöntem kolay örneklerde annotation hızını artırabilir. Annotator'ın model önerisine aşırı güvenmesi bias oluşturabilir. Belirli oranda prediction gizlenerek bağımsız kalite kontrol yapılmalıdır.

LLM-Assisted Annotation

LLM-assisted annotation label tanımı ve örneklerle büyük dil modelinden ön etiket üretmeyi kullanır. Karmaşık metinlerde açıklama üretmesi annotator kararını kolaylaştırabilir. Ancak LLM'in güvenilirliği label ve domain'e göre değişir. High confidence tahminler bile örneklem insan review'dan geçmelidir. LLM çıktısı nihai ground truth olarak otomatik kabul edilmemelidir.

Weak Supervision

Weak supervision kural, sözlük veya mevcut sistem sinyallerini kullanarak programatik label üretir. CRM kategorisi veya keyword rule başlangıç etiketi sağlayabilir. Bu label'lar gürültülü olabilir ve quality estimation gerekir. Büyük hacimde data bootstrap etmek için değerlidir. Daha küçük golden dataset ile weak label kalitesi ölçülebilir.

Active Learning

Active learning modelin en belirsiz veya en bilgilendirici örneklerini annotator'a gönderir. Böylece her örneği etiketlemek yerine en değerli veriye odaklanılır. Low-confidence prediction ve decision boundary yakınındaki örnekler seçilebilir. Production model geliştirme döngüsünde maliyeti azaltabilir. Selection bias oluşmaması için rastgele örnekler de kalite kontrol amacıyla tutulmalıdır.

Human-in-the-Loop Yaklaşımı

Human-in-the-loop otomasyon ile insan kararını birleştirir. Model kolay örnekleri ön etiketler, insan zor veya kritik örnekleri inceler. Domain expert yalnızca anlaşmazlık veya yüksek riskli sınıflarda devreye girebilir. Bu yapı annotation maliyetini kontrol altında tutarken kaliteyi korur. Workflow ve escalation kuralları baştan tanımlanmalıdır.

Annotation Guideline Nasıl Hazırlanır?

Annotation guideline annotator'ların aynı metin için benzer karar vermesini sağlayan temel dokümandır. Her label'ın tanımı, olumlu ve olumsuz örnekleri bulunmalıdır. Boundary case ve kararsız durumlar açıkça açıklanmalıdır. Guideline ilk günden mükemmel olmak zorunda değildir ve pilot annotation ile geliştirilir. Yaşayan doküman yaklaşımı yeni edge case'lerin sürece eklenmesini sağlar.

Her Label'ın Açık Tanımını Yazın

Label tanımı kısa ama ayırt edici olmalıdır. Benzer sınıflar arasındaki fark özellikle açıklanmalıdır. Tanım iş ekibi ve annotator tarafından aynı şekilde anlaşılmalıdır. Bir label başka label'ın alt kümesi gibi görünüyorsa taxonomy yeniden değerlendirilebilir. Belirsiz label doğrudan düşük agreement üretir.

Pozitif Örnekler Ekleyin

Pozitif örnek annotator'a label'ın hangi durumlarda uygulanacağını gösterir. Farklı cümle uzunluğu ve ifade biçimleri seçilmelidir. Yalnızca kolay örnekler guideline'ın gerçek değerini düşürür. Argo ve yazım hatası gibi production örnekleri de bulunabilir. Her önemli alt kullanım için birkaç temsilci örnek eklenmelidir.

Negatif Örnekler Ekleyin

Negatif örnek label'ın hangi benzer durumlarda kullanılmaması gerektiğini açıklar. Özellikle birbirine yakın intent'lerde çok değerlidir. “Şifre değiştirme” label'ı için “şifremi unuttum” negatif örnek olabilir. Bu yaklaşım decision boundary'yi annotator açısından netleştirir. Hard negative örnekler zamanla guideline'a eklenebilir.

Boundary Case'leri Belirleyin

Boundary case iki veya daha fazla label arasında kalan örneklerdir. Bu tür örnekler annotation anlaşmazlığının ana kaynağı olabilir. Guideline öncelik veya tie-break kuralı tanımlayabilir. Gerekirse yeni “other” veya multi-label yaklaşımı düşünülmelidir. Boundary case sayısı taxonomy kalitesi hakkında sinyal verir.

Kararsız Durumlar İçin Kurallar Tanımlayın

Annotator bazı örneklerde yeterli bağlam bulamayabilir. Tahmin yapmak yerine “uncertain” veya review flag mekanizması kullanılabilir. Bu örnekler adjudication kuyruğuna gönderilir. Zorunlu label verme hatalı ground truth üretir. Uncertain oranı yüksekse guideline veya taxonomy yeniden tasarlanmalıdır.

Guideline'ı Pilot Annotation ile Test Edin

Pilot aşamada birkaç annotator aynı yüzlerce örneği bağımsız etiketleyebilir. Agreement metriği sorunlu label'ları gösterir. Tartışmalı örnekler üzerinden guideline güncellenir. Ana annotation başlamadan önce bu iterasyon birkaç kez yapılabilir. Küçük pilot maliyeti binlerce hatalı etiketi sonradan düzeltmekten daha düşüktür.

Living Guideline Yaklaşımı

Production verisi yeni ifade ve edge case'ler getirdikçe guideline güncellenmelidir. Her değişikliğin version ve tarih bilgisi tutulmalıdır. Eski dataset hangi guideline version ile etiketlendiği bilgisini taşımalıdır. Büyük kural değişikliği eski label'ların yeniden değerlendirilmesini gerektirebilir. Guideline değişiklik günlüğü annotator eğitiminde kullanılabilir.

NLP Görevlerine Göre Etiket Formatları

Veri formatı NLP görevinin label yapısını eksiksiz taşımalıdır. Classification için text ve label yeterli olabilirken NER token veya span bilgisi ister. QA veri setinde context, question ve answer span gerekir. Instruction tuning conversation formatı kullanabilir. Format seçimi training framework ve annotation aracının desteğiyle birlikte düşünülmelidir.

Text Classification Dataset Formatı

Text classification veri setinde temel olarak metin ve label alanı bulunur. Metadata alanları kaynak, tarih veya language bilgisi taşıyabilir. Tek label veya çoklu label ihtiyacı baştan belirlenmelidir. CSV basit projelerde yeterli olabilir. Daha karmaşık metadata için JSONL veya Parquet daha uygun olabilir.

Text

Text alanı modelin gerçek input olarak göreceği metni taşır. Preprocessing sonrası değer ile ham metin ayrı alanlarda saklanabilir. Boş veya yalnızca whitespace içeren text kayıtları kalite testinde yakalanmalıdır. Text encoding UTF-8 olarak standartlaştırılabilir. Çok uzun metinlerin length distribution'ı ayrıca izlenmelidir.

Label

Label modelin öğrenmesi gereken hedef sınıfı temsil eder. İnsan tarafından okunabilir string ve sayısal ID mapping birlikte tutulabilir. Label isimleri eğitim boyunca değiştirilmemelidir. Taxonomy değişirse dataset major version artırılabilir. Invalid label kalite kontrol pipeline'ında otomatik yakalanmalıdır.

Multi-class classification

Multi-class problemde her örnek yalnızca tek sınıfa aittir. Softmax tabanlı model output sık kullanılır. Sınıflar birbirini dışlamalıdır. Annotator iki label arasında kalıyorsa taxonomy problemi olabilir. Class distribution train, validation ve test setlerinde raporlanmalıdır.

Multi-label classification

Multi-label problemde tek metin birden fazla sınıfa ait olabilir. Label listesi JSON array veya binary indicator biçiminde tutulabilir. Evaluation metriği micro ve macro F1 gibi değerleri içerebilir. Label co-occurrence analizi veri kalitesini anlamaya yardımcı olur. Annotation tool'un çoklu seçim desteklemesi gerekir.

Sentiment Analysis Dataset Formatı

Basit sentiment veri seti text ve sentiment label alanlarından oluşabilir. Positive, negative ve neutral yaygın sınıflardır. Mixed sentiment veya aspect-specific ihtiyaç varsa schema genişletilebilir. Class imbalance özellikle neutral verinin fazla olduğu sistemlerde kontrol edilmelidir. İnsan değerlendirmesinde ironik ifadeler için özel guideline bulunmalıdır.

Positive

Positive örnek metinde açık olumlu değerlendirme veya memnuniyet bulunduğunu gösterir. Yalnızca olumlu kelime eşleşmesi yeterli değildir. “Ürün güzel görünüyordu ama hiç çalışmadı” negatif olabilir. Context bütün olarak okunmalıdır. Annotator örnekleri guideline içinde farklı ifade biçimleriyle gösterilmelidir.

Negative

Negative label şikayet, memnuniyetsizlik veya olumsuz değerlendirmeyi temsil eder. Argo ve ironi bu sınıfta zor örnekler oluşturabilir. Bir sorun bildirimi her zaman duygusal negatiflik anlamına gelmeyebilir. Domain'e göre kural belirlenmelidir. Support ticket ve review sentiment görevleri aynı taxonomy'yi kullanmak zorunda değildir.

Neutral

Neutral metin güçlü olumlu veya olumsuz görüş içermeyen ifadeleri kapsar. Bilgi soruları genellikle neutral olabilir. Ancak “ürün bugün geldi” gibi çıplak bilgi ile gizli memnuniyetsizlik ayrımı dikkat gerektirir. Neutral sınıf çoğu dataset'te fazla olabilir. Class distribution ve agreement ayrıca izlenmelidir.

NER Dataset Formatı

NER veri seti entity konumunu ve türünü taşımalıdır. Token-level veya character span formatı kullanılabilir. BIO ve BIOES yaygın tagging şemalarıdır. Tokenizer alignment özellikle subword model kullanıldığında önemlidir. Nested entity gerekiyorsa basit BIO formatı yeterli olmayabilir.

Token-level annotation

Token-level annotation her token için entity etiketi verir. CoNLL formatında yaygın olarak kullanılır. Annotation tokenizer ile training tokenizer farklıysa hizalama problemi oluşabilir. Noktalama ve birleşik kelimeler token sınırını etkiler. Ham character span bilgisini ayrıca saklamak yeniden tokenization için faydalıdır.

BIO tagging

BIO şeması Beginning, Inside ve Outside etiketlerini kullanır. Bir entity'nin ilk token'ı B, sonraki token'ları I ile işaretlenir. Entity dışındaki token'lar O olur. Basit ve yaygın framework desteğine sahiptir. Invalid transition kontrolü dataset quality testine eklenebilir.

BIOES tagging

BIOES tek token entity ve entity sonunu ayrı label'larla gösterir. B, I, O yanında E ve S kullanılır. Bazı model ve görevlerde sınır öğrenmesini kolaylaştırabilir. Label sayısı BIO'ya göre daha fazladır. Annotation export ve training pipeline aynı şemayı desteklemelidir.

Nested entities

Nested entity bir entity span'in başka entity içinde bulunmasıdır. Basit BIO formatı aynı token için tek label taşıdığı için yetersiz olabilir. Span-based format daha uygun olabilir. Gerçek iş ihtiyacı yoksa gereksiz nested schema annotation maliyetini artırır. Taxonomy tasarımında önce kullanım senaryosu doğrulanmalıdır.

Question Answering Dataset Formatı

QA veri seti context, question ve answer ilişkisini taşımalıdır. Extractive sistemlerde answer start ve end span bilgisi gerekir. Bir sorunun birden fazla doğru cevabı olabilir. Unanswerable örnekler model güvenilirliği için değerlidir. Belge ve soru ID bilgisi leakage kontrolünü kolaylaştırır.

Context

Context cevabın bulunacağı kaynak metindir. Belge başlığı ve kaynak ID metadata olarak eklenebilir. Çok uzun belge segmentlere ayrılıyorsa hangi parçanın aynı kaynağa ait olduğu korunmalıdır. Aynı document chunk'larının train ve test'e dağılması leakage oluşturabilir. Context temizliği answer span konumunu bozmamalıdır.

Question

Question gerçek kullanıcıların soru biçimini temsil etmelidir. Aynı bilgi farklı cümlelerle sorulabilir. Yalnızca doküman cümlesini soru biçimine çevirmek kolay benchmark oluşturur. Paraphrase ve dolaylı sorular veri kalitesini artırır. Kullanıcı dilindeki yazım hataları belirli oranda korunabilir.

Answer

Answer beklenen doğru yanıtı taşır. Extractive QA'da context içinden alınır. Generative QA'da doğal dil yanıtı olabilir. Birden fazla kabul edilebilir cevap varsa liste olarak tutulabilir. Ground truth uzman review'dan geçmelidir.

Answer span

Answer span cevabın context içindeki başlangıç ve bitiş konumudur. Text normalization span offset'lerini değiştirebilir. Bu nedenle span annotation temizlik sonrası veya character mapping korunarak yapılmalıdır. Otomatik validator answer text ile context slice değerini karşılaştırabilir. Hatalı span training sürecini doğrudan bozar.

Answerable / unanswerable questions

Unanswerable sorular modelin kaynakta olmayan bilgi üretmemeyi öğrenmesine yardımcı olur. Sadece cevaplanabilir örneklerle eğitim yapılan model her soruya yanıt verme eğilimi gösterebilir. Negatif sorular gerçek document domain'inden seçilmelidir. Çok kolay alakasız sorular yeterli değildir. Hard unanswerable örnekler benzer kavram içeren ama cevabı bulunmayan sorulardır.

Summarization Dataset Formatı

Summarization veri seti source text ve target summary çiftlerinden oluşur. Özet stilinin abstractive veya extractive olması belirlenmelidir. Uzunluk hedefi ve kritik bilgi kuralları guideline'a eklenmelidir. Kaynak ile özet arasında factual consistency kontrol edilebilir. Belge provenance ve version bilgisi saklanmalıdır.

Source text

Source text özetlenecek asıl içeriği taşır. Çok uzun belgeler model context limitine göre bölünebilir. Bölme strategy training ve production'da benzer olmalıdır. Kaynak içindeki tablo ve başlıkların korunma biçimi göreve göre belirlenir. Duplicate document kontrolü split öncesinde yapılmalıdır.

Target summary

Target summary modelin üretmesi beklenen referans özettir. Tek doğru özet olmadığı için birden fazla referans kaliteyi artırabilir. Özet kaynaktaki bilgiyi değiştirmemelidir. Sayısal ve tarih bilgileri özellikle kontrol edilmelidir. Annotator'a uzunluk ve ton beklentisi açık biçimde verilmelidir.

LLM Instruction Dataset Formatı

Instruction dataset kullanıcı talebi ile ideal response çiftlerini içerir. Tek turn veya multi-turn conversation formatı kullanılabilir. System message davranış ve persona kurallarını belirleyebilir. Output'ların kalite ve güvenlik review'dan geçmesi gerekir. Instruction çeşitliliği modelin aynı görevi farklı ifade biçimleriyle anlamasına yardımcı olur.

Instruction

Instruction kullanıcının modelden ne istediğini açıklar. Kısa, uzun ve farklı tonlarda örnekler bulunmalıdır. Aynı template'i küçük değişikliklerle binlerce kez üretmek gerçek çeşitlilik sağlamaz. Gerçek kullanıcı talimatları anonimleştirilerek kullanılabilir. Instruction ile output uyumu otomatik ve insan kontrolünden geçmelidir.

Input

Input instruction'ın çalışacağı ek bağlamı içerir. Bazı örneklerde boş olabilir. Belge, tablo veya müşteri mesajı bu alanda bulunabilir. Hassas veri anonimleştirilmelidir. Input uzunluk dağılımı production kullanımına yakın olmalıdır.

Output

Output ideal model yanıtını temsil eder. Doğru, güvenli ve istenen formatta olmalıdır. LLM ile üretilen output insan doğrulamasından geçirilebilir. Çok uzun veya gereksiz açıklamalar task hedefini bozabilir. Output kalite rubric'i annotation guideline içinde tanımlanmalıdır.

System message

System message modelin genel davranışını ve kurallarını belirleyebilir. Dataset'te sistem mesajı training framework formatıyla uyumlu tutulmalıdır. Her örnekte gereksiz farklı system prompt kullanmak behavior consistency'yi bozabilir. Kurumsal assistant persona ayrı versionlanabilir. Safety ve policy talimatlarının output ile çelişmediği kontrol edilmelidir.

Conversation format

Multi-turn dataset user ve assistant rollerini sıralı biçimde taşır. Her mesaj role ve content alanına sahip olabilir. Conversation kesilirken önceki bağlamın answer için gerekli olup olmadığı değerlendirilmelidir. Aynı conversation'ın farklı parçalarının split'lere dağılması leakage oluşturabilir. Conversation ID group split için kullanılabilir.

Preference Dataset Formatı

Preference dataset aynı prompt için daha iyi ve daha kötü yanıt çiftleri içerir. Alignment ve preference optimization yöntemlerinde kullanılabilir. Chosen ve rejected response arasındaki kalite farkı net olmalıdır. İki yanıt da kötü ise tercih verisi değeri düşer. Preference criteria annotator'lar arasında açık şekilde paylaşılmalıdır.

Prompt

Prompt iki response'un değerlendirilmesine temel olan kullanıcı talebidir. Gerçek kullanım senaryolarından seçilmesi önemlidir. Çok kolay prompt'lar tercih farkını ölçmekte yetersiz olabilir. Güvenlik ve factuality gibi farklı rubric boyutları için dengeli örnekler hazırlanabilir. Prompt kaynağı provenance metadata'sında tutulabilir.

Chosen response

Chosen response annotator tarafından daha iyi bulunan yanıttır. Doğruluk, yararlılık ve format gibi kriterler değerlendirilir. Neden seçildiği isteğe bağlı reason alanında tutulabilir. Çok küçük fark bulunan çiftler uncertainty olarak işaretlenebilir. Domain expert yüksek riskli görevlerde review yapabilir.

Rejected response

Rejected response chosen yanıtından daha düşük tercih puanı alan seçenektir. Yanlış bilgi, format ihlali veya gereksiz uzunluk nedeniyle reddedilebilir. Bilinçli olarak zararlı veya aşırı kötü response üretmek veri dağılımını bozabilir. Gerçek model hatalarından gelen rejected örnekler değerlidir. Response kaynak modeli metadata olarak kaydedilebilir.

Annotation Kalitesi Nasıl Ölçülür?

Annotation kalitesi yalnızca kaç örnek etiketlendiğiyle ölçülmez. Annotator'ların aynı örnek üzerindeki anlaşma düzeyi önemli göstergedir. Golden dataset ve per-annotator accuracy operasyonel kaliteyi takip eder. Anlaşmazlıklar adjudication süreciyle çözülür. NLP veri setlerinde annotation kalite kontrol ve train validation test ayrımı model güvenilirliğinin temel parçalarıdır.

Inter-Annotator Agreement Nedir?

Inter-Annotator Agreement birden fazla annotator'ın aynı örneklerde ne kadar benzer karar verdiğini ölçer. Basit yüzde agreement başlangıç bilgisi sağlar. Şans eseri aynı label seçimini hesaba katmak için Kappa veya Alpha metrikleri kullanılabilir. Düşük agreement guideline veya taxonomy problemini gösterebilir. Her label için ayrı agreement analizi daha ayrıntılı bilgi verir.

Cohen's Kappa

Cohen's Kappa iki annotator arasındaki agreement'i şans faktörünü hesaba katarak ölçer. Classification gibi kategorik görevlerde sık kullanılır. Class imbalance metriğin yorumunu etkileyebilir. Tek sayı üzerinden kalite kararı vermek yerine confusion pair'leri de incelenmelidir. Pilot annotation değerlendirmesinde yararlı bir metriktir.

Fleiss' Kappa

Fleiss' Kappa ikiden fazla annotator bulunan kategorik annotation süreçlerinde kullanılabilir. Her örnek aynı sayıda annotator tarafından değerlendiriliyorsa uygulaması kolaydır. Label dağılımı skorun davranışını etkiler. Çok düşük skor guideline belirsizliğini gösterebilir. Kappa yanında örnek bazlı disagreement review yapılmalıdır.

Krippendorff's Alpha

Krippendorff's Alpha farklı veri türleri ve eksik annotation durumlarında esnek bir agreement metriğidir. Kategorik ve bazı ordinal görevlerde kullanılabilir. Annotator sayısının değiştiği sistemlerde faydalı olabilir. Hesaplama yöntemi görev ölçeğine göre seçilmelidir. Tek başına kullanılmak yerine qualitative review ile desteklenmelidir.

Golden Dataset Kullanımı

Golden dataset uzmanlar tarafından yüksek güvenle etiketlenmiş küçük referans settir. Annotator kalitesi düzenli olarak bu örneklerle kontrol edilebilir. Golden örneklerin tamamı annotator tarafından ezberlenmeyecek şekilde yönetilmelidir. Yeni guideline version çıktığında golden set yeniden doğrulanmalıdır. Model evaluation test setinden ayrı tutulması önerilir.

Annotator Accuracy Takibi

Annotator accuracy golden örnekler veya adjudicated sonuçlarla karşılaştırılarak ölçülebilir. Hata oranı label bazında incelenmelidir. Belirli sınıfta sürekli hata yapan annotator ek eğitim alabilir. Metrik cezalandırma amacıyla değil süreç iyileştirme için kullanılmalıdır. Çok düşük agreement bütün annotator'larda görülüyorsa sorun bireysel değil guideline kaynaklı olabilir.

Adjudication Süreci

Adjudication annotator anlaşmazlıklarının final karara dönüştürüldüğü süreçtir. Senior annotator veya domain expert devreye girebilir. Karar yalnızca mevcut örneği çözmekle kalmamalı, guideline'a yeni kural olarak yansıtılmalıdır. Sık tekrarlanan disagreement pattern'leri taxonomy değişikliğini gerektirebilir. Adjudication decision log gelecekteki annotation kalitesini artırır.

Etiket anlaşmazlıklarının çözülmesi

İki annotator farklı label verdiğinde örnek otomatik olarak çoğunluk oyu ile kapanmak zorunda değildir. Özellikle kritik sınıflarda gerekçe incelenmelidir. Annotator'lar guideline üzerinden kısa açıklama ekleyebilir. Final reviewer karar verir. Benzer disagreement örnekleri batch halinde ele alınarak tutarlı karar sağlanabilir.

Domain expert review

Hukuk, sağlık veya teknik ürün terminolojisi gibi alanlarda genel annotator yeterli bilgiye sahip olmayabilir. Domain expert yalnızca zor örnekleri inceleyerek maliyeti kontrol edebilir. Uzman kararı guideline'a dönüştürülmelidir. Her örneğin expert review'dan geçmesi gerekli değildir. Risk tabanlı review yaklaşımı daha verimlidir.

Kaç Kişi Veri Etiketlemeli?

Annotator sayısı veri hacmi, görev zorluğu ve kalite hedefiyle belirlenmelidir. Tek annotator hızlı ve ucuz olabilir ancak bias ve hata riski yüksektir. Kritik örneklerde double veya triple annotation daha güvenilir sonuç sağlar. Domain expert tüm veri setini etiketlemek yerine anlaşmazlıkları çözebilir. Annotation maliyeti ile kalite arasındaki denge pilot çalışma sonunda ölçülmelidir.

Tek Annotator'ın Riskleri

Tek annotator'ın hatasını doğrudan ground truth olarak kabul etmek kolaydır. Kişisel yorum ve guideline yanlış anlaması bütün dataset'e yayılabilir. Agreement metriği hesaplanamaz. Golden set yalnızca bireysel accuracy ölçümü sağlayabilir. Küçük pilot bile ikinci annotator ile doğrulanmalıdır.

Double Annotation

Double annotation aynı örneğin iki bağımsız kişi tarafından etiketlenmesidir. Agreement hesaplamak ve disagreement kuyruğu oluşturmak için güçlü başlangıçtır. Maliyeti tek annotation'a göre yaklaşık iki katına çıkarır. Bütün dataset yerine belirli örnek yüzdesinde uygulanabilir. Zor sınıflarda coverage oranı yükseltilebilir.

Triple Annotation

Triple annotation üç bağımsız karar sağlayarak çoğunluk oyu ve daha güçlü agreement analizi sunar. Subjektif sentiment veya preference görevlerinde yararlı olabilir. Maliyet ciddi biçimde artar. Yüksek riskli veya golden subset üzerinde kullanılabilir. Domain expert kararının yerini her zaman çoğunluk oyu almamalıdır.

Domain Expert Ne Zaman Gereklidir?

Label kararı özel uzmanlık gerektiriyorsa domain expert gerekir. Tıbbi entity, hukuki belge sınıflandırması veya teknik hata kodu buna örnektir. Uzman her kolay örneği etiketlemek zorunda değildir. Annotation guideline hazırlanması ve adjudication aşaması daha yüksek değer sağlayabilir. Expert zamanı en belirsiz örneklere ayrılmalıdır.

Annotation Maliyeti ile Kalite Arasındaki Denge

Bütün örnekleri üç kişiyle etiketlemek her proje için ekonomik değildir. Risk seviyesi yüksek sınıflarda daha fazla annotator kullanılabilir. Model-assisted annotation kolay örneklerde maliyeti düşürebilir. Agreement ve error rate verisi annotation stratejisinin zaman içinde ayarlanmasını sağlar. Kalite maliyet hesabı yalnızca örnek başına ücret üzerinden yapılmamalıdır.

Dataset Class Imbalance Nasıl Yönetilir?

Class imbalance bazı sınıfların diğerlerinden çok daha az örneğe sahip olmasıdır. Production dağılımı gerçekten dengesiz olabilir ve dataset bunu tamamen yapay biçimde eşitlememelidir. Ancak az sınıflar model tarafından hiç öğrenilemiyorsa targeted data collection gerekebilir. Oversampling, class weight ve synthetic example yöntemleri kullanılabilir. Başarı metriği accuracy yerine macro F1 ve per-class recall gibi değerlerle desteklenmelidir.

Sınıf Dağılımını Ölçme

Her label için örnek sayısı ve oranı raporlanmalıdır. Train, validation ve test setlerinin dağılımı ayrı gösterilmelidir. Çok az örnekli sınıflar otomatik uyarı üretebilir. Production log dağılımı dataset ile karşılaştırılmalıdır. Zaman içindeki değişiklik data drift göstergesi olabilir.

Minority Class Problemi

Minority class az örneğe sahip olduğu için model tarafından çoğunluk sınıfına karıştırılabilir. Kritik bir fraud veya güvenlik intent'i az görülse bile yüksek iş değerine sahip olabilir. Bu durumda örnek sayısı hedefli olarak artırılmalıdır. Recall özellikle izlenmelidir. Class weight tek başına yetersiz kalırsa veri toplama gerekir.

Oversampling

Oversampling minority örneklerin training sırasında daha sık gösterilmesini sağlar. Basit tekrar overfitting riski oluşturabilir. Augmentation veya synthetic variation ile desteklenebilir. Validation ve test setinde doğal dağılım korunmalıdır. Oversampling yalnızca training pipeline'a uygulanmalıdır.

Undersampling

Undersampling majority class örneklerinin bir bölümünü kaldırır. Training süresini azaltabilir. Ancak değerli çeşitliliğin kaybolmasına neden olabilir. Majority class içindeki hard negative örnekler korunmalıdır. Büyük veri setlerinde kontrollü sampling yararlı olabilir.

Class Weight

Class weight loss function içinde az sınıflara daha yüksek önem verilmesini sağlar. Veri setinin kendisini değiştirmeden training davranışını etkiler. Aşırı yüksek weight modelin false positive oranını artırabilir. Validation üzerinde optimize edilmelidir. Model training config dataset version ile birlikte kaydedilmelidir.

Targeted Data Collection

Az veya sorunlu sınıf için bilinçli veri toplamak çoğu zaman en güçlü çözümdür. Production loglarından ilgili intent aranabilir. Kullanıcı araştırması veya controlled prompt generation yapılabilir. Yeni örnekler mevcut distribution'ı taklit etmelidir. Sadece kolay ve açık örnekler eklemek gerçek model sorununu çözmeyebilir.

Synthetic Minority Examples

LLM ile az sınıf için sentetik metin üretilebilir. Farklı ton, uzunluk ve yazım biçimi istenebilir. İnsan doğrulaması yanlış veya birbirine çok benzeyen örnekleri temizler. Sentetik data oranı metadata'da izlenmelidir. Gerçek production minority örnekleri geldikçe sentetik verinin ağırlığı azaltılabilir.

Long-Tail Intent ve Entity'ler

Uzun kuyrukta çok az görülen ama önemli intent ve entity'ler bulunabilir. Bunları dataset'ten tamamen çıkarmak model kapsamını azaltır. Az sayıda örnekli sınıflar hierarchy veya fallback modeliyle yönetilebilir. Active learning yeni örnekleri zaman içinde toplar. Per-class metric long-tail performansını görünür hale getirir.

Dataset Coverage Nasıl Ölçülür?

Coverage veri setinin gerçek production dünyasının ne kadarını temsil ettiğini ölçmeye çalışır. Sadece toplam örnek sayısı güçlü coverage anlamına gelmez. Dilsel çeşitlilik, domain, edge case ve rare intent dağılımı incelenmelidir. Hard negative ve farklı kullanıcı grupları test setinde bulunmalıdır. Coverage boşlukları model error analysis ile birlikte sürekli güncellenmelidir.

Production Distribution ile Training Distribution Karşılaştırması

Training ve production sınıf oranları karşılaştırılabilir. Text length, language ve source distribution da önemlidir. Büyük fark model drift veya data mismatch gösterebilir. Model prediction histogram'ı ek sinyal sağlar. Düzenli monitoring yeni dataset toplama önceliklerini belirler.

Demografik ve Dilsel Çeşitlilik

Kullanıcı grupları farklı dil ve ifade biçimleri kullanabilir. Veri seti yalnızca belirli bir yazım tarzını temsil ederse model bazı gruplarda daha fazla hata yapabilir. Hassas demografik bilgi toplamak ayrıca gizlilik ve etik değerlendirme gerektirir. Dilsel çeşitlilik anonim metin özellikleri üzerinden de analiz edilebilir. Bölgesel ve code-switching örnekler coverage içinde değerlendirilebilir.

Domain Coverage

Bir model birden fazla ürün veya iş alanında kullanılıyorsa her domain yeterli örneğe sahip olmalıdır. Genel sınıf dağılımı iyi görünürken belirli ürün için coverage çok düşük olabilir. Domain metadata bu analizi kolaylaştırır. Per-domain metrics raporlanabilir. Yeni ürün eklendiğinde dataset update planı yapılmalıdır.

Edge Case Coverage

Edge case coverage modelin sınır durumlarını ne kadar gördüğünü gösterir. İroni, çoklu intent veya bozuk metin gibi kategoriler tag ile işaretlenebilir. Test setinde bilinçli sayıda edge case bulunmalıdır. Model sadece ortalama kullanıcı örneğinde değil zor örneklerde de değerlendirilmelidir. Production hataları yeni edge case taxonomy oluşturabilir.

Rare Intent Coverage

Nadir intent az görülür ama iş açısından kritik olabilir. Train ve test setinde tamamen eksik olması risklidir. Synthetic ve targeted collection ile desteklenebilir. Per-intent recall özellikle takip edilmelidir. Rare intent fallback rule veya human handoff ile de desteklenebilir.

Hard Negative Examples

Hard negative görünüşte hedef sınıfa çok benzeyen ama başka sınıfa ait örneklerdir. Model karar sınırını öğrenmek için çok değerlidir. Benzer kelime kullanımı ama farklı intent içeren örnekler toplanabilir. Production confusion matrix hard negative kaynaklarını gösterir. Data-centric iyileştirmede öncelikli veri tiplerinden biridir.

Hard Negative Mining Nedir?

Hard negative mining modelin en çok karıştırdığı negatif örnekleri sistematik biçimde bulma sürecidir. Rastgele alakasız negatifler model için çok kolaydır ve gerçek karar sınırını geliştirmez. Embedding similarity veya yanlış yüksek confidence tahminleri aday olarak kullanılabilir. İnsan review doğru label'ı doğrular. Bu örnekler sonraki training version'a eklenerek iteratif model gelişimi sağlanır.

Kolay Negatif Örnekler Neden Yetersizdir?

“Şifre sıfırlama” intent'i için hava durumu sorusunu negatif vermek model için çok kolaydır. Gerçek sorun “şifre değiştir” ile “şifremi unuttum” arasındaki ayrımdır. Kolay negatifler yüksek accuracy üretip yanıltıcı güven verebilir. Test seti benzer sınıfları ayıran zor örnekler içermelidir. Hard negative oranı dataset quality metriği olarak izlenebilir.

Modelin Karıştırdığı Örnekleri Training Data'ya Eklemek

Confusion matrix hangi sınıfların birbirine karıştığını gösterir. Yanlış tahmin edilen örnekler insan review ile doğrulanabilir. Benzer yeni örnekler production'dan veya targeted collection'dan eklenir. Aynı hatalı örneği onlarca kez kopyalamak yerine çeşitlilik sağlanmalıdır. Retraining sonrası confusion değişimi ölçülmelidir.

Semantic Similarity ile Hard Negative Bulma

Embedding kullanılarak farklı label'lara ait ama semantik olarak yakın metinler bulunabilir. Bu çiftler model için potansiyel zor örneklerdir. Similarity threshold otomatik karar yerine candidate selection için kullanılabilir. İnsan label doğrulaması yapılmalıdır. Embedding modelinin domain'e uygunluğu sonucu etkiler.

Iteratif Dataset Geliştirme

Dataset tek sefer hazırlanıp unutulan artifact değildir. Model hataları yeni veri toplama planını yönlendirmelidir. Hard negative, edge case ve düşük confidence örnekler yeni version'a eklenir. Retraining sonrası aynı test seti ve yeni challenge set ile değerlendirme yapılır. Dataset versioning bu döngüyü izlenebilir hale getirir.

Sentetik Veri NLP Veri Setlerinde Nasıl Kullanılır?

Sentetik veri özellikle az sınıf, privacy ve edge case üretiminde yararlı olabilir. Gerçek veriyi tamamen değiştirmemelidir çünkü production dağılımındaki ince ayrıntıları kaçırabilir. LLM aynı stil ve kelimeleri tekrar ederek çeşitliliği yapay biçimde yüksek gösterebilir. Human validation ve similarity filtering bu riski azaltır. Sentetik veri oranı ve kaynak modeli metadata olarak saklanmalıdır.

Synthetic Data'nın Avantajları

Az görülen intent için hızlı örnek üretilebilir. Hassas gerçek müşteri verisi yerine güvenli test metinleri oluşturulabilir. Belirli edge case kontrollü şekilde çoğaltılabilir. Annotation maliyeti ilk aşamada azalabilir. Farklı prompt stratejileriyle çeşitlilik artırılabilir.

Synthetic Data'nın Riskleri

LLM yanlış label'a uygun görünen metin üretebilir. Üretilen örnekler birbirine çok benzeyebilir. Gerçek kullanıcı yazım hatası ve dil çeşitliliği yeterince temsil edilmeyebilir. Kaynak modelin bias'ı training set'e aktarılabilir. Büyük miktar tek başına kalite garantisi değildir.

LLM ile Sentetik Metin Üretme

Prompt içinde label tanımı, pozitif ve negatif örnekler verilebilir. Farklı ton, uzunluk ve kullanıcı profili istenebilir. Her batch farklı generation seed veya template kullanabilir. Output duplicate ve semantic similarity kontrolünden geçirilmelidir. İnsan örneklemesi düzenli yapılmalıdır.

Sentetik Label Üretme

LLM mevcut metne label önerisi de verebilir. Confidence veya explanation eklenebilir. Bu etiket weak label olarak tutulmalıdır. High-risk sınıflar insan tarafından doğrulanmalıdır. Golden dataset üzerinde LLM annotator accuracy ölçülebilir.

Human Validation

İnsan doğrulaması sentetik verinin göreve gerçekten uygun olup olmadığını kontrol eder. Bütün örnekleri tek tek incelemek yerine stratified sampling uygulanabilir. Kritik veya low-confidence örnekler yüzde yüz review edilebilir. Hatalı üretim pattern'i prompt güncellemesine yol açar. Validation sonucu sentetik üretim pipeline'ının kalite metriği olur.

Gerçek ve Sentetik Veri Oranı

Tek evrensel doğru oran yoktur. Başlangıçta gerçek verinin çoğunlukta tutulması daha güvenlidir. Minority class içinde sentetik oran daha yüksek olabilir. Model performansı farklı oranlarla validation üzerinde test edilebilir. Production feedback geldikçe gerçek örneklerin payı artırılmalıdır.

Synthetic Data ile Gerçek Dünya Dağılımı Arasındaki Fark

Sentetik model genellikle daha düzgün ve açıklayıcı cümleler üretir. Gerçek kullanıcılar kısa, hatalı ve bağlamı eksik mesajlar yazabilir. Text length, vocabulary ve typo distribution iki veri kaynağında karşılaştırılmalıdır. Büyük fark varsa synthetic prompt strategy güncellenebilir. Dataset card sentetik verinin oranını açık biçimde belirtmelidir.

LLM ile Veri Etiketleme Güvenilir midir?

LLM veri etiketlemede hız sağlayabilir ancak doğruluğu görev ve domain'e göre değişir. Zero-shot kolay taxonomy'de işe yarayabilir. Few-shot örnekler karar kalitesini artırabilir. Human review özellikle düşük confidence ve kritik sınıflarda gereklidir. LLM-as-annotator performansı golden dataset üzerinde ölçülmeden ground truth üretmek için kullanılmamalıdır.

Zero-Shot Annotation

Zero-shot yöntemde modele yalnızca label tanımları verilir. Hızlı pilot ve taxonomy testi için kullanılabilir. Benzer sınıflarda hata oranı artabilir. Prompt wording sonucu ciddi biçimde etkileyebilir. Golden set comparison yapılmalıdır.

Few-Shot Annotation

Few-shot yaklaşım her label için birkaç örnek sunar. Model boundary case'leri daha iyi anlayabilir. Örnek seçimi bias oluşturabileceği için dengeli olmalıdır. Prompt token maliyeti yükselir. Aynı model version ve prompt template pinlenmelidir.

LLM-as-Annotator

LLM-as-annotator otomatik veya yarı otomatik annotation pipeline'ı kurar. Output label yanında reasoning veya confidence alınabilir. Reasoning'in doğru olması label'ın doğru olduğu anlamına gelmez. İnsan annotator ile agreement ölçülebilir. Model version değiştiğinde annotation consistency yeniden test edilmelidir.

Confidence-Based Human Review

LLM yüksek confidence örnekleri otomatik kabul, düşük confidence örnekleri human review'a gönderebilir. Confidence'ın kalibre edilmiş olması önemlidir. Modelin kendi ürettiği 0.99 değeri gerçek olasılık olarak kabul edilmemelidir. Golden set üzerinde threshold belirlenebilir. Random audit otomatik kabul edilen örneklerde kalite kaymasını yakalar.

LLM Annotation Bias

LLM eğitim verisinden gelen kültürel ve dilsel bias taşıyabilir. Belirli argo veya bölgesel ifadeleri yanlış yorumlayabilir. Türkçe özel kullanımda test edilmelidir. Model-assisted annotation insan annotator'ı da aynı hataya yönlendirebilir. Bağımsız blind review bias riskini azaltır.

İnsan ve LLM Etiketlerini Karşılaştırma

Aynı golden subset hem insan hem LLM tarafından etiketlenebilir. Accuracy, agreement ve sınıf bazlı hata dağılımı karşılaştırılır. LLM'in güçlü olduğu kolay sınıflar otomasyona alınabilir. Zor sınıflar insan annotation'da bırakılabilir. Bu hibrit yaklaşım maliyet ve kalite dengesini iyileştirir.

Train, Validation ve Test Seti Nasıl Oluşturulur?

Train, validation ve test ayrımı modelin öğrenme, ayar ve tarafsız değerlendirme ihtiyaçlarını birbirinden ayırır. Split yalnızca rastgele satır bölmek değildir. Aynı kullanıcı, belge veya conversation farklı split'lere düşerse leakage oluşabilir. Temporal ve group-based split gerçek production senaryosunu daha iyi temsil edebilir. Oranlar veri miktarı ve görev yapısına göre belirlenmelidir.

Training Set

Training set model parametrelerini öğrenmek için kullanılır. En büyük veri bölümü genellikle buradadır. Augmentation ve oversampling yalnızca training tarafında uygulanabilir. Label kalitesi model davranışını doğrudan etkiler. Training data version model artifact ile ilişkilendirilmelidir.

Validation Set

Validation set hyperparameter ve model seçimi için kullanılır. Training sırasında model bu örneklerden doğrudan öğrenmemelidir. Validation'a tekrar tekrar bakmak zamanla overfit riski oluşturabilir. Class ve domain dağılımı uygun olmalıdır. Büyük model değişikliklerinde validation set performansı karşılaştırılabilir.

Test Set

Test set final tarafsız değerlendirme için saklanmalıdır. Model geliştirme sırasında sürekli kullanılmamalıdır. Her denemede test sonucuna göre model ayarlamak test setine overfit etmektir. Production'a yakın dağılım içermelidir. Test set erişimi belirli ekiplerle sınırlandırılabilir.

Stratified Split

Stratified split sınıf oranlarını farklı split'lerde benzer tutmaya çalışır. Dengesiz classification problemlerinde faydalıdır. Ancak aynı kullanıcı veya belge leakage riski varsa yalnızca stratification yeterli değildir. Group bilgisiyle birlikte kullanılabilir. Çok az örnekli sınıflarda split dikkatle yapılmalıdır.

Group-Based Split

Group-based split aynı kullanıcı, conversation veya document ID'yi tek split içinde tutar. Bu yöntem benzer örneklerin train ve test arasında sızmasını azaltır. Müşteri destek verisinde ticket ID iyi group alanı olabilir. NER dokümanlarında document ID kullanılabilir. Group dağılımı class balance'ı bozuyorsa özel algoritma gerekebilir.

Temporal Split

Temporal split eski veriyi training, daha yeni veriyi validation veya test olarak kullanır. Production gelecekteki veriye uygulanacaksa gerçekçi değerlendirme sağlar. Yeni ürün veya kampanya drift'i görülebilir. Veri tarih bilgisinin güvenilir olması gerekir. Temporal leakage feature engineering sırasında da kontrol edilmelidir.

Domain-Based Split

Domain-based split belirli ürün, sektör veya kaynak alanını testte tutabilir. Modelin unseen domain genelleme yeteneğini ölçmek için kullanılır. Production'da yeni domain'e çıkış planlanıyorsa değerlidir. Test daha zor olabilir. Baseline ve domain-specific metric birlikte raporlanmalıdır.

NLP Datasetlerinde Data Leakage Nasıl Önlenir?

Data leakage modelin test bilgisine training sırasında doğrudan veya dolaylı erişmesidir. Duplicate ve aynı document parçaları en sık görülen kaynaklardır. Kullanıcı veya conversation seviyesinde split yapılmaması da leakage yaratabilir. Preprocessing pipeline test istatistiğini training'e taşımamalıdır. Train-test similarity analizi leakage kontrolünün düzenli parçası olmalıdır.

Exact Duplicate Leakage

Aynı metnin train ve test setinde bulunması en açık leakage türüdür. Hash karşılaştırmasıyla tespit edilebilir. Preprocessing sonrası normalize edilmiş hash ayrıca kullanılmalıdır. Duplicate label farklıysa veri hatası olarak incelenmelidir. Split öncesi global dedup en güvenli yaklaşımdır.

Semantic Duplicate Leakage

Paraphrase veya çok benzer cümleler exact hash kontrolünden kaçabilir. Embedding similarity bu örnekleri tespit etmeye yardımcı olur. Threshold çok düşük seçilirse doğal benzer örnekler yanlışlıkla duplicate sayılabilir. İnsan örnek review gerekir. Test seti challenge değerini koruyacak şekilde düzenlenmelidir.

Aynı Dokümanın Farklı Parçalarının Split'lere Dağılması

Uzun doküman chunk'lara bölündüğünde aynı belgenin parçaları train ve test'e düşebilir. Model doküman stilini ve bilgiyi training'de görmüş olur. Document ID group split bu problemi çözer. RAG evaluation dataset'inde özellikle önemlidir. Chunk ID yanında parent document ID tutulmalıdır.

Aynı Kullanıcının Verilerinin Farklı Split'lere Dağılması

Kullanıcıların kendine özgü ifade biçimi vardır. Aynı kullanıcının mesajları train ve test'e bölünürse model kullanıcı stilini ezberleyebilir. User-level group split daha gerçekçi performans ölçebilir. Privacy için gerçek user ID yerine stable anonymized ID kullanılabilir. Yeni kullanıcı generalization önemli kullanım senaryosudur.

Preprocessing Leakage

Vocabulary veya normalization parametreleri bütün dataset üzerinden öğrenilirse test bilgisi training pipeline'a sızabilir. Klasik ML sistemlerinde TF-IDF vocabulary yalnızca train üzerinde fit edilmelidir. Feature scaling aynı prensibe uyar. Transformer tokenizer genellikle önceden sabittir ancak özel tokenizer eğitiminde split kuralı önemlidir. Pipeline aşamaları açık biçimde belgelenmelidir.

Benchmark Contamination

Özellikle büyük dil modellerinde benchmark örnekleri ön eğitim verisinde bulunmuş olabilir. Bu durum model başarısını yapay yükseltebilir. Kuruma özel yeni test seti contamination riskini azaltır. İnternette yayınlanmamış anonim örnekler daha gerçekçi değerlendirme sağlar. Public benchmark tek performans kaynağı olarak kullanılmamalıdır.

Train-Test Similarity Analizi

Embedding veya n-gram similarity train ve test arasındaki yakınlığı ölçebilir. En yüksek benzer çiftler insan tarafından incelenebilir. Çok yüksek similarity oranı split strategy problemini gösterebilir. Rapor dataset quality checklist'e eklenebilir. Her yeni dataset version'da tekrar çalıştırılmalıdır.

NLP Dataset'i Hangi Formatlarda Saklanmalı?

Dataset formatı veri büyüklüğü, görev ve kullanılan framework'e göre seçilmelidir. CSV basit classification için yeterliyken nested metadata JSONL ile daha kolay taşınır. Parquet büyük dataset'lerde depolama ve okuma performansı sunar. NER için CoNLL formatı yaygındır. Format değişse bile schema ve version bilgisi korunmalıdır.

CSV

CSV insan tarafından kolay incelenir ve spreadsheet araçlarıyla uyumludur. Text içinde newline ve virgül bulunduğunda escaping hataları oluşabilir. Nested label yapısı için uygun değildir. Küçük classification dataset'lerinde pratik seçimdir. Encoding açık biçimde UTF-8 tutulmalıdır.

JSON

JSON nested yapı ve metadata taşımak için uygundur. Büyük tek dosya memory kullanımını artırabilir. Conversation ve QA dataset'lerinde okunabilir yapı sağlar. Schema validator kullanılabilir. Dosya indentation production storage boyutunu artırabilir.

JSONL

JSONL her satırda bağımsız JSON object tutar. Büyük dataset streaming için uygundur. Hatalı tek satır bütün dosyanın parse edilmesini engellemez. LLM instruction ve preference dataset'lerinde sık kullanılır. Schema bütün satırlarda tutarlı olmalıdır.

Parquet

Parquet columnar ve sıkıştırılmış veri formatıdır. Büyük dataset'lerde depolama ve okuma performansı güçlüdür. Hugging Face Datasets ile iyi çalışır. İnsan tarafından doğrudan okunması CSV kadar kolay değildir. Production pipeline ve dataset artifact storage için uygundur.

CoNLL

CoNLL formatı token-level NER ve sequence labeling görevlerinde yaygındır. Genellikle token ve label satır bazında tutulur. Cümleler boş satırla ayrılabilir. Nested entity veya zengin metadata için sınırlı kalabilir. Export formatı olarak güçlüdür.

Arrow

Apache Arrow columnar in-memory format sunar. Hugging Face Datasets dahili olarak Arrow tabanlı yapıları kullanabilir. Büyük dataset işlemlerinde memory mapping avantaj sağlar. Kullanıcı çoğu zaman doğrudan Arrow dosyasını yönetmek zorunda kalmaz. Framework entegrasyonu veri pipeline'ını hızlandırabilir.

Hugging Face Dataset Formatı

Hugging Face Dataset schema, features ve split bilgisini birlikte yönetebilir. DatasetDict train, validation ve test setlerini tek yapı altında tutar. Map, filter ve shuffle işlemleri reproducible pipeline'a dönüştürülebilir. Hub revisions versioning sağlar. Private dataset repository kurum içi kullanımda değerlendirilebilir.

Göreve Göre En Uygun Format Nasıl Seçilir?

Basit tabular classification için CSV yeterli olabilir. Conversation ve QA için JSONL daha esnektir. Büyük ölçekli training için Parquet avantaj sağlar. NER interoperability için CoNLL tercih edilebilir. Asıl kriter training tool, annotation export ve versioning sürecinin aynı schema'yı güvenilir biçimde taşımasıdır.

Hugging Face Datasets ile Özel Veri Seti Hazırlama

Hugging Face Datasets özel NLP veri setlerini yüklemek, dönüştürmek ve training pipeline'a bağlamak için kullanışlı bir araçtır. CSV, JSON ve Parquet kaynakları tek API üzerinden işlenebilir. Dataset ve DatasetDict yapıları schema bilgisini korur. Map işlemi preprocessing adımlarını uygulanabilir hale getirir. Veri seti private Hub repository veya kurum içi storage üzerinde sürümlenebilir.

load_dataset

load_dataset yerel veya uzaktaki birçok veri formatını ortak API ile yükler. CSV ve JSON file path'leri doğrudan verilebilir. Split tanımları ayrı dosyalarla oluşturulabilir. Dataset script kullanılıyorsa source logic versionlanmalıdır. Remote code kullanımında güvenlik politikası dikkate alınmalıdır.

Dataset

Dataset tek bir veri tablosunu column-based yapı içinde temsil eder. Select, filter ve map işlemleri uygulanabilir. Schema features üzerinden görülebilir. Büyük dataset memory mapping ile verimli kullanılabilir. Transformation sonucu yeni fingerprint üretilebilir.

DatasetDict

DatasetDict train, validation ve test gibi split'leri tek dictionary altında tutar. Aynı preprocessing fonksiyonu bütün split'lere uygulanabilir. Split adlarının standardize olması training script'lerini kolaylaştırır. Test split yanlışlıkla training'e verilmemelidir. Dataset card split statistics içermelidir.

Feature ve ClassLabel Tanımlama

Features her sütunun veri tipini açık biçimde tanımlar. ClassLabel string label ile numeric ID mapping sağlar. Invalid label load aşamasında yakalanabilir. NER için Sequence ve ClassLabel birlikte kullanılabilir. Schema değişikliği dataset version açısından önemli breaking change olabilir.

CSV ve JSON Dosyalarını Yükleme

Yerel CSV ve JSON dosyaları dataset loader ile kolayca okunabilir. Encoding ve column type sorunları yükleme sırasında kontrol edilmelidir. Train ve validation file mapping açık verilebilir. Büyük JSON array yerine JSONL daha streaming-friendly olabilir. Ham dosya checksum reproducibility için kaydedilebilir.

Dataset Üzerinde map() Kullanımı

map fonksiyonu normalization, tokenization veya feature extraction için kullanılabilir. Batched processing performansı artırabilir. Fonksiyon deterministic olmalıdır. Cache tekrar işlemleri hızlandırır. Map code version dataset transformation provenance içinde tutulmalıdır.

Dataset'i Hub'a Yükleme

Dataset Hub paylaşım ve versioning için kullanılabilir. Hassas şirket verisi public repository'ye yüklenmemelidir. Private repository veya kurum politikası uygun alternatif olabilir. Dataset card lisans, kullanım amacı ve limitation bilgisi içermelidir. Revision pinning model training reproducibility sağlar.

Tokenization Veri Hazırlığının Hangi Aşamasında Yapılmalı?

Tokenization genellikle temizlenmiş ve split edilmiş dataset üzerinde model training pipeline'a yakın aşamada yapılmalıdır. Raw text kaybolmamalıdır çünkü tokenizer değişebilir. Model ile tokenizer uyumlu olmalıdır. Maximum sequence length, truncation ve padding politikası training performansını etkiler. NER gibi görevlerde token-label alignment ayrıca kontrol edilmelidir.

Tokenizer Model ile Neden Uyumlu Olmalıdır?

Pretrained model belirli tokenizer vocabulary ve special token düzeniyle eğitilmiştir. Farklı tokenizer kullanmak embedding mapping'i bozabilir. Model checkpoint ile tokenizer version birlikte pinlenmelidir. Fine-tuning dataset'i raw text olarak da saklanmalıdır. Tokenizer update yeni preprocessing version sayılmalıdır.

Subword Tokenization

Subword yöntemleri nadir kelimeleri daha küçük parçalara böler. Türkçenin eklemeli yapısında kelime sonları birden fazla token olabilir. NER label alignment bu nedenle önemlidir. Token fertility model memory ve context kullanımını etkiler. Türkçe text üzerinde tokenizer istatistiği ölçülebilir.

Maximum Sequence Length

Maximum sequence length modelin tek örnekte işleyebileceği token sayısını sınırlar. Dataset text length distribution incelenmeden keyfi değer seçilmemelidir. Çok düşük limit kritik bilgiyi truncation ile kaybedebilir. Çok yüksek limit training memory maliyetini artırır. P95 token length başlangıç referansı olabilir.

Truncation

Truncation uzun örneklerin maksimum uzunluğa kesilmesidir. Classification'da önemli bilgi metnin sonunda bulunabilir. Head-only kesmek hatalı olabilir. Sliding window veya head-tail stratejisi değerlendirilebilir. Kesilen örnek oranı dataset report'ta tutulmalıdır.

Padding

Padding farklı uzunluktaki sequence'leri batch içinde aynı uzunluğa getirir. Gereksiz padding GPU hesaplama maliyetini artırır. Static ve dynamic yöntemler farklı kullanım alanlarına sahiptir. Padding token attention mask ile gerçek içerikten ayrılır. Model tokenizer config ile uyumlu olmalıdır.

Static padding

Static padding bütün örnekleri sabit maksimum uzunluğa tamamlar. Implementation basittir. Kısa metin ağırlıklı dataset'te çok fazla boş token oluşturabilir. Bazı accelerator optimizasyonlarında faydalı olabilir. Maliyet benchmark ile ölçülmelidir.

Dynamic padding

Dynamic padding yalnızca mevcut batch içindeki en uzun sequence kadar padding ekler. Genellikle training verimliliğini artırır. Data collator bu işi batch zamanında yapabilir. Sequence length'e göre bucketing ek verim sağlayabilir. Evaluation pipeline aynı attention behavior'ı kullanmalıdır.

Attention Mask

Attention mask modelin gerçek token ile padding token'ı ayırmasını sağlar. Tokenizer çoğu zaman otomatik üretir. Yanlış mask modelin padding'e attention vermesine neden olabilir. Custom preprocessing bu alanı bozmadığından emin olmalıdır. Unit test birkaç örnek üzerinde kontrol sağlayabilir.

Token Type IDs

Bazı model mimarileri segment ayrımı için token type ID kullanır. BERT-style sentence pair görevlerinde görülebilir. Her model bu alanı kullanmaz. Tokenizer output'una göre training code esnek olmalıdır. Gereksiz field zorla üretmek gerekmez.

NER'de Token-Label Alignment

Tek kelime subword parçalarına bölündüğünde tek word label birden fazla token'a hizalanmalıdır. İlk subword'e label verip diğerlerini ignore etmek yaygın yaklaşımdır. Alternatif olarak label bütün subword'lere yayılabilir. Training loss davranışı seçilen yönteme göre değişir. Alignment code unit test ve sample visualization ile doğrulanmalıdır.

NLP Veri Seti Kalitesi Nasıl Kontrol Edilir?

Dataset quality kontrolü otomatik test ve manuel örnekleme yöntemlerini birlikte kullanmalıdır. Missing data, invalid label, duplicate, length ve class distribution temel kontrollerdir. Leakage ve PII scan production readiness açısından önemlidir. Annotation agreement insan etiketlerinin tutarlılığını gösterir. Her dataset version aynı kalite pipeline'ından geçmelidir.

Missing Data

Text veya label alanı eksik örnekler training hatasına veya anlamsız öğrenmeye neden olabilir. Null, empty string ve whitespace-only durumları ayrı kontrol edilmelidir. Bazı metadata alanları isteğe bağlı olabilir. Schema hangi alanların zorunlu olduğunu tanımlamalıdır. Missing rate threshold üzerinde olduğunda pipeline fail edilebilir.

Invalid Labels

Taxonomy dışında label bulunması veri hatasıdır. Büyük-küçük harf veya yazım farklılığı da yeni sınıf gibi görülebilir. ClassLabel veya schema validation bunu engelleyebilir. Deprecated label migration planı olmalıdır. Invalid label raporu kaynağa göre ayrıştırılabilir.

Duplicate Rate

Duplicate rate exact ve near duplicate oranını gösterir. Çok yüksek oran veri toplama pipeline'ın tekrar kayıt ürettiğini gösterebilir. Class distribution duplicate sonrası değişebilir. Train-test leakage ayrıca kontrol edilmelidir. Dataset card temizleme sonrası duplicate istatistiğini içerebilir.

Text Length Distribution

Karakter ve token uzunluğu dağılımı model input profilini gösterir. Çok kısa veya aşırı uzun outlier'lar incelenmelidir. Production distribution ile karşılaştırma yapılabilir. Truncation rate hesaplanabilir. Farklı domain'ler ayrı histogram ile analiz edilebilir.

Label Distribution

Label distribution class imbalance ve eksik sınıfları görünür yapar. Split bazında karşılaştırılmalıdır. Production label tahminiyle trend analizi yapılabilir. Çok az örnekli label için targeted collection planlanabilir. Taxonomy değişikliği distribution tarihçesiyle izlenmelidir.

Vocabulary Coverage

Vocabulary coverage kullanılan model tokenizer'ın dataset metinlerini ne kadar verimli parçaladığını gösterir. Unknown token oranı bazı tokenizer'larda önemli metriktir. Subword token sayısı kelime başına ölçülebilir. Türkçe ve code-switching segmentleri ayrı karşılaştırılabilir. Çok yüksek fragmentation model seçimini etkileyebilir.

Language Detection

Dataset içinde beklenmeyen diller bulunabilir. Otomatik language detection kaba kalite kontrol sağlar. Kısa metinlerde yanlış tahmin oranı yüksek olabilir. Türkçe-İngilizce code-switching yanlışlıkla filtrelenmemelidir. Language field metadata olarak saklanabilir.

Annotation Agreement

Agreement annotation guideline kalitesini izler. Label veya annotator bazında hesaplanabilir. Zaman içinde düşüş yeni annotator eğitimi ihtiyacını gösterebilir. Yeni taxonomy version sonrası tekrar ölçülmelidir. Düşük agreement verisi doğrudan model training'e alınmadan review edilebilir.

Leakage Tests

Leakage test exact duplicate, group overlap ve semantic similarity kontrolünü içerir. Train ve test user ID intersection otomatik hesaplanabilir. Document ID overlap sıfır olmalıdır. Embedding-based similarity yüksek çiftleri raporlayabilir. Dataset release gate leakage test başarısını zorunlu kılabilir.

PII Scan

PII scan e-posta, telefon ve belirli kimlik pattern'lerini arayabilir. NER tabanlı detector kişi ve konumları da bulabilir. False positive ve false negative mümkündür. Hassas dataset'te manual sample review eklenmelidir. Bulunan PII remediation log tutulmalıdır.

Manual Sample Review

Otomatik testler dilsel kalite ve anlam hatalarını tamamen yakalayamaz. Her version'da rastgele ve risk bazlı örnek seçimi insan tarafından incelenebilir. Label, text cleaning ve metadata birlikte kontrol edilir. Review sonucu kalite checklist'e kaydedilir. Sistematik hata bulunursa daha geniş veri segmenti taranmalıdır.

NLP Dataset Quality Checklist

Quality checklist veri seti release öncesinde temel riskleri hızlı doğrulamaya yardımcı olur. Temsil, label açıklığı, edge case, denge, duplicate, leakage, PII ve lisans kontrolleri birlikte ele alınmalıdır. Tek bir kontrolün başarılı olması genel kaliteyi garanti etmez. Checklist otomatik pipeline ve insan sign-off kombinasyonu olabilir. Her dataset release aynı standardı uygulamalıdır.

Veriler Görevi Temsil Ediyor mu?

Dataset gerçek input uzunluğu ve dil stilini yansıtmalıdır. Production source dağılımı ile karşılaştırma yapılmalıdır. Yalnızca kolay akademik örnekler yeterli değildir. Edge case ve long-tail sınıflar bulunmalıdır. Kullanıcı araştırması temsil boşluklarını gösterebilir.

Label'lar Açık ve Birbirinden Ayrılabilir mi?

Annotator iki label arasında sık kararsız kalıyorsa taxonomy sorunu olabilir. Definition ve negative example'lar incelenmelidir. Agreement sınıf bazında ölçülmelidir. Gerekirse sınıflar birleştirilebilir. Model confusion aynı problemi doğrulayabilir.

Edge Case'ler Var mı?

Edge case dataset'te bilinçli biçimde bulunmalıdır. Sadece ortalama örneklerden oluşan test gerçek riskleri göstermez. Production hata logları yeni case kaynağıdır. Her edge category metadata tag alabilir. Coverage zaman içinde izlenebilir.

Dataset Dengeli mi?

Denge her sınıfın eşit sayıda olması anlamına gelmez. Production dağılımı ve iş kritiklik seviyesi birlikte düşünülmelidir. Minority class yeterli öğrenme örneğine sahip olmalıdır. Test set doğal dağılıma yakın olabilir. Macro F1 dengesiz performansı görünür yapar.

Duplicate Veriler Temizlendi mi?

Exact ve near duplicate kontrolleri yapılmalıdır. Train-test overlap sıfıra yakın olmalıdır. Same document chunk leakage ayrıca incelenmelidir. Duplicate removal sonrası class distribution yeniden hesaplanmalıdır. Dedup logic versionlanmalıdır.

Split'lerde Leakage Var mı?

User, document ve conversation group overlap kontrol edilmelidir. Semantic similarity yüksek örnekler review edilmelidir. Preprocessing fit yalnızca train üzerinde yapılmalıdır. Test set model development'tan izole tutulmalıdır. Leakage test raporu release artifact'e eklenebilir.

PII Temizlendi mi?

Dataset kullanım amacı PII gerektirmiyorsa kişisel bilgiler kaldırılmalıdır. Regex ve NER scanner kullanılabilir. İnsan sample review ek güvence sağlar. Anonimleştirme placeholder'ları tutarlı olmalıdır. Ham veri daha sıkı access control altında tutulmalıdır.

Veri Kaynakları ve Lisansları Kaydedildi mi?

Her source'un provenance kaydı olmalıdır. Lisans veya kullanım izni belgelenmelidir. Mixed dataset'te kaynak oranları raporlanmalıdır. Lisans değişikliği ilgili örnekleri bulmayı kolaylaştırmalıdır. Dataset card bu bilgiyi özetler.

Dataset Versioning Neden Gereklidir?

Dataset zaman içinde yeni örnek, düzeltilmiş label ve farklı split içerir. Versioning olmadan hangi modelin hangi veriden üretildiğini bilmek zorlaşır. Kod gibi dataset de değişiklik günlüğüne sahip olmalıdır. DVC, Git LFS veya Hub revisions araç olarak kullanılabilir. Model artifact metadata'sında dataset version bulunması reproducibility sağlar.

Dataset'i Kod Gibi Sürümlemek

Her değişiklik reason ve author bilgisiyle kaydedilebilir. Küçük düzeltme ile taxonomy değişikliği birbirinden ayrılmalıdır. Release tag training pipeline tarafından kullanılabilir. Eski version gerektiğinde yeniden açılabilir. Tam dataset binary olarak Git'e eklenmek yerine uygun storage çözümü kullanılmalıdır.

Semantic Dataset Versioning

Major, minor ve patch benzeri version modeli dataset değişikliklerine uygulanabilir. Label schema değişimi major version olabilir. Yeni örnek eklenmesi minor, birkaç label düzeltmesi patch sayılabilir. Kurallar kurum tarafından açık biçimde tanımlanmalıdır. Model compatibility bu version bilgisiyle değerlendirilebilir.

Değişiklik Günlüğü

Changelog yeni eklenen, silinen ve düzeltilen veri segmentlerini açıklar. Split değişikliği ayrıca belirtilmelidir. PII remediation veya lisans nedeniyle silinen kaynaklar kaydedilebilir. Performance etkisi model benchmark ile ilişkilendirilebilir. Dataset card release history bölümü olarak kullanılabilir.

DVC

DVC büyük veri artifact'lerini Git metadata'sıyla birlikte sürümlemek için kullanılabilir. Dataset dosyaları object storage üzerinde tutulabilir. Pipeline stage ve dependency ilişkisi tanımlanabilir. Hash değişiklikleri reproducibility sağlar. Ekip mevcut DevOps altyapısıyla entegrasyonu değerlendirmelidir.

Git LFS

Git LFS büyük dosyaları Git repository pointer'larıyla yönetir. Küçük ve orta dataset projelerinde kolay olabilir. Çok büyük dataset ve sık değişiklikte storage maliyeti artabilir. Access control repository ile ilişkilidir. Hassas veri için ayrı güvenlik değerlendirmesi yapılmalıdır.

Hugging Face Dataset Revisions

Hub repository revision ve commit mekanizması dataset versioning sağlayabilir. Training script belirli revision'a pinlenebilir. Private repository kurumsal veriler için kullanılabilir. Dataset card her release ile güncellenebilir. Kurumun veri yerelliği ve erişim politikası platform seçimini belirlemelidir.

Model Versiyonu ile Dataset Versiyonunu Eşleştirmek

Her model registry kaydı kullanılan dataset version'ı içermelidir. Tokenizer ve training code version da eklenebilir. Model performans değişikliğinin veri mi kod mu kaynaklı olduğu böylece analiz edilir. Rollback sırasında aynı kombinasyon yeniden oluşturulabilir. MLOps metadata store bu ilişkiyi merkezi tutabilir.

Dataset Card Nasıl Hazırlanır?

Dataset card veri setinin ne olduğunu, nereden geldiğini ve hangi sınırlara sahip olduğunu açıklar. Yeni ekip üyesi yalnızca dosya adından dataset amacını anlayamaz. Kaynak, lisans, dil, schema ve statistics temel alanlardır. Known limitations ve bias bölümü güvenli kullanım için önemlidir. Intended ve out-of-scope kullanım açık biçimde yazılmalıdır.

Dataset Açıklaması

Açıklama veri setinin hangi NLP görevi için üretildiğini belirtir. Toplama dönemi ve domain bilgisi eklenebilir. Örnek sayısı ve split dağılımı özetlenebilir. Annotation yöntemi kısa biçimde açıklanmalıdır. Okuyucu dataset'i neden kullanacağını hızlıca anlamalıdır.

Veri Kaynakları

Her ana kaynak türü listelenmelidir. Şirket içi, açık veri ve sentetik oranı belirtilebilir. Collection date ve sampling yöntemi önemlidir. Gizlilik nedeniyle exact source paylaşılmıyorsa kategori düzeyinde açıklama yapılabilir. Provenance ayrıntısı internal registry'de tutulabilir.

Lisans

Dataset lisansı veya internal kullanım şartı belirtilmelidir. Birden fazla kaynak varsa lisans durumu açıklanmalıdır. Redistribution mümkün değilse açıkça yazılmalıdır. Model training kullanım hakkı ayrıca belirtilebilir. Hukuk onay tarihi internal metadata'da saklanabilir.

Dil

Ana dil ve varsa code-switching oranı belirtilmelidir. Türkçe bölgesel veya sektörel özellikler açıklanabilir. Otomatik language detection yöntemi kullanıldıysa yazılabilir. Çok dilli dataset'te dil dağılımı tablo halinde verilebilir. Bu bilgi model ve tokenizer seçimini etkiler.

Label Schema

Bütün label isimleri ve tanımları dataset card'da bulunmalıdır. Deprecated label varsa belirtilmelidir. Multi-label veya hierarchy yapısı açıklanmalıdır. NER entity türleri listelenmelidir. Annotation guideline daha ayrıntılı dokümana link verebilir.

Dataset Statistics

Örnek sayısı, label distribution ve text length temel istatistiklerdir. Duplicate removal sonrası değerler verilmelidir. Train, validation ve test ayrı raporlanmalıdır. Sentetik veri oranı belirtilebilir. Agreement score kalite hakkında ek bilgi sağlar.

Known Limitations

Dataset'in eksik olduğu domain ve kullanıcı grupları açıkça yazılmalıdır. Örneğin sosyal medya Türkçesi az olabilir. Rare intent coverage sınırlı olabilir. Veri toplama tarihinden sonra yeni ürünler bulunmayabilir. Model kullanıcıları bu sınırlamaları bilerek risk yönetebilir.

Bias ve Riskler

Veri kaynağı belirli kullanıcı grubunu fazla temsil edebilir. LLM-generated örnekler kaynak model bias'ını taşıyabilir. Toxic veya hassas içerik bulunabilir. Bu riskler saklanmak yerine belgelenmelidir. Mitigation ve kullanım uyarısı eklenebilir.

Intended Use

Dataset'in hedeflenen kullanım alanı net biçimde yazılmalıdır. İç intent classifier training veya Türkçe NER benchmark gibi açıklama verilebilir. Ticari ürün kullanım izni varsa belirtilmelidir. Evaluation ve training amacı farklı olabilir. Intended use model kartıyla birlikte değerlendirilebilir.

Out-of-Scope Use

Dataset'in uygun olmadığı kullanım alanları belirtilmelidir. Örneğin sağlık kararı veya hukuki tavsiye için tasarlanmamış olabilir. Başka dilde model training için yeterli olmayabilir. Hassas demografik karar sistemlerinde kullanılmaması gerekebilir. Açık sınırlar yanlış kullanımı azaltır.

Özel Veri Setinin Model Performansına Etkisi Nasıl Ölçülür?

Özel veri setinin değeri model benchmark değişimiyle ölçülmelidir. Önce baseline model ve sabit test set oluşturulur. Yeni data version aynı training recipe ile denenir. Accuracy, precision, recall, F1 ve confusion matrix karşılaştırılır. Error analysis hangi veri değişikliğinin hangi sınıfta fayda sağladığını gösterir.

Baseline Model Oluşturma

Baseline basit ama tekrarlanabilir bir model olmalıdır. İlk dataset version ile eğitilir. Hyperparameter ve random seed kaydedilir. Daha karmaşık modelden önce veri değişiklikleri baseline üzerinde test edilebilir. Bu yaklaşım iyileştirmenin model mi data mı kaynaklı olduğunu ayırır.

Accuracy

Accuracy doğru tahminlerin toplam tahminlere oranıdır. Dengeli sınıflarda anlaşılır metriktir. Dengesiz dataset'te çoğunluk sınıfı skoru yükseltebilir. Kritik az sınıfların hatası görünmez kalabilir. Bu nedenle diğer metriklerle birlikte kullanılmalıdır.

Precision

Precision modelin bir sınıf olarak tahmin ettiği örneklerin ne kadarının gerçekten o sınıfa ait olduğunu ölçer. False positive maliyeti yüksek görevlerde önemlidir. Spam veya risk tespiti buna örnek olabilir. Per-class precision raporlanmalıdır. Threshold ayarı precision-recall dengesini değiştirir.

Recall

Recall gerçek pozitiflerin ne kadarının model tarafından bulunduğunu gösterir. Kaçırma maliyeti yüksek sınıflarda kritik metriktir. Minority class recall düşükse targeted data collection gerekebilir. Confusion matrix hangi sınıfa kaydığını gösterir. Recall tek başına false positive sayısını açıklamaz.

F1 Score

F1 precision ve recall'un harmonik ortalamasıdır. İki metriği dengeli değerlendirmek için kullanılır. Binary ve multiclass görevlerde farklı averaging seçenekleri bulunur. Threshold selection F1'e göre optimize edilebilir. İş metriğiyle uyumu yine kontrol edilmelidir.

Macro F1

Macro F1 her sınıfa eşit ağırlık vererek F1 ortalaması alır. Dengesiz dataset'lerde minority class performansını görünür hale getirir. Çok az örnekli sınıf skoru dalgalanabilir. Support sayısıyla birlikte raporlanmalıdır. Veri seti iyileştirme kararında güçlü metriktir.

Per-Class Metrics

Toplam skor bazı sınıflardaki ciddi problemi gizleyebilir. Her label için precision, recall ve F1 ayrı incelenmelidir. İş açısından kritik sınıflar minimum threshold'a sahip olabilir. Data collection priority bu sonuçlara göre belirlenebilir. Version karşılaştırması sınıf bazında yapılmalıdır.

Confusion Matrix

Confusion matrix hangi sınıfların birbirine karıştığını gösterir. Hard negative mining için temel kaynaktır. Benzer intent pair'leri hızlıca görünür olur. Normalize edilmiş matrix class imbalance etkisini azaltarak okunabilir. Her model release hata analizi toplantısında kullanılabilir.

Error Analysis

Error analysis yanlış tahminleri elle veya otomatik kategorilerle inceler. Hata veri eksikliği, yanlış label veya model kapasitesi kaynaklı olabilir. Her hata için yeni veri toplamak gerekli değildir. Sistematik pattern'ler önceliklendirilmelidir. Sonuç yeni dataset version backlog'una dönüştürülür.

Data-Centric AI ile NLP Modelini Geliştirme

Data-centric yaklaşım model mimarisini sürekli değiştirmek yerine veri kalitesini sistematik olarak iyileştirmeye odaklanır. Yanlış label, eksik segment ve hard negative örnekler model hatalarının ana kaynağı olabilir. Aynı model daha iyi veriyle belirgin performans artışı gösterebilir. Dataset ve error analysis döngüsü sürekli çalışmalıdır. Bu yaklaşım özellikle kurumsal özel NLP projelerinde ölçülebilir ve sürdürülebilir ilerleme sağlar.

Modeli Değiştirmeden Önce Veriyi İyileştirmek

İlk refleks daha büyük transformer kullanmak olmamalıdır. Confusion matrix ve low-confidence örnekler veri problemini gösterebilir. Yanlış label temizliği performansı model değişiminden daha fazla artırabilir. Deney aynı baseline modelle tekrar edilmelidir. Maliyet ve latency avantajı korunur.

Hatalı Etiketleri Bulmak

Modelin yüksek confidence ile ground truth'tan farklı tahmin verdiği örnekler label error adayı olabilir. Confident learning benzeri yöntemler kullanılabilir. İnsan review final kararı verir. Hatalı label düzeltilirken guideline güncellenebilir. Error rate data source veya annotator bazında analiz edilebilir.

Eksik Veri Segmentlerini Tespit Etmek

Model belirli domain veya text length grubunda daha kötü çalışabilir. Slice-based evaluation bu segmentleri gösterir. Türkçe-İngilizce karışık metin veya uzun ticket'lar örnek olabilir. Yeni data collection yalnızca bu segmentlere odaklanabilir. Böylece veri bütçesi daha verimli kullanılır.

Model Hatalarını Yeni Training Data'ya Dönüştürmek

Production yanlış tahminleri human review queue'ya alınabilir. Doğru label belirlendikten sonra sonraki training set'e eklenir. Aynı hataya benzer örnekler de toplanabilir. Veri eklendi diye mevcut test set değiştirilmemelidir. Yeni challenge set ayrı tutulabilir.

Dataset → Training → Error Analysis → Dataset Döngüsü

Bu döngü model geliştirmeyi sürekli süreç haline getirir. Her dataset version yeni training run üretir. Evaluation yeni hata segmentlerini gösterir. Veri ekibi bu segmentlere göre yeni örnek toplar veya label düzeltir. Versioning bütün zinciri izlenebilir kılar.

Production Verileriyle Dataset Nasıl Sürekli Geliştirilir?

Production sistemi gerçek kullanıcı dilinin en değerli kaynağıdır. Model hataları, düşük confidence ve yeni intent'ler kontrollü biçimde veri geliştirme kuyruğuna alınabilir. PII ve kullanıcı izinleri bu süreçte korunmalıdır. Human review doğru label üretir. Periyodik retraining ve drift monitoring veri setinin güncel kalmasını sağlar.

Model Hatalarını Loglamak

Yanlış tahmin olduğu kullanıcı veya operasyon sistemi tarafından bildirilebilir. Tam prompt yerine gerektiğinde anonimleştirilmiş örnek data lake'e aktarılabilir. Prediction, confidence ve model version metadata olarak kaydedilir. Hata kategorisi insan review sonrasında eklenir. Bu log yeni dataset backlog'unun temelidir.

Low-Confidence Prediction'ları Toplamak

Düşük confidence örnekler decision boundary yakınında olabilir. Active learning için değerlidir. Confidence threshold calibration ile belirlenmelidir. Bütün düşük confidence örnekleri saklamak privacy ve storage yükü oluşturabilir. Sampling ve anonimleştirme uygulanabilir.

Human Review Queue

Review queue modelin belirsiz veya kullanıcı tarafından işaretlenmiş örneklerini toplar. Priority kritik intent ve yüksek trafik segmentine göre verilebilir. Annotator mevcut prediction'ı doğrular veya düzeltir. Review sonucu guideline'a yeni case ekleyebilir. Queue SLA production model kalitesini etkiler.

Active Learning

Active learning review bütçesini en değerli örneklere ayırır. Uncertainty, diversity ve model disagreement kriterleri kullanılabilir. Aynı tip yüzlerce örneğin kuyruğa gelmesi engellenebilir. Random control sample bias kontrolü sağlar. Retraining sonrası selection policy yeniden değerlendirilebilir.

Yeni Edge Case'leri Dataset'e Eklemek

Production yeni ürün veya kullanıcı davranışı nedeniyle daha önce görülmeyen case getirir. Bu örnekler özel tag ile dataset'e eklenebilir. Sadece tek örnek yerine benzer varyasyonlar toplanmalıdır. Test ve training dağılımına kontrollü biçimde eklenir. Dataset card limitation bölümü güncellenebilir.

Periodic Retraining

Retraining sabit takvim veya drift sinyaline göre yapılabilir. Her hafta training yapmak gerekli olmayabilir. Yeterli yeni veri biriktiğinde ve kalite review tamamlandığında yeni model hazırlanır. Aynı test set ile regression yapılır. Production promotion ayrı MLOps süreciyle yürütülmelidir.

Data Drift Monitoring

Data drift input dağılımının training verisinden zamanla uzaklaşmasıdır. Text length, language, embedding distribution ve predicted class oranı izlenebilir. Büyük değişim yeni veri toplama ihtiyacını gösterebilir. Drift her zaman model performans düşüşü anlamına gelmez. Labeled sample evaluation ile etkisi doğrulanmalıdır.

NLP Veri Seti Hazırlamak İçin En İyi Programlama Dili Hangisidir?

NLP veri hazırlamada Python en yaygın seçeneklerden biridir ancak tek doğru dil değildir. pandas, Hugging Face Datasets, Transformers ve spaCy gibi geniş ekosistem güçlü avantaj sağlar. R istatistiksel analizde, SQL büyük veri kaynaklarından seçim yapmada kullanılabilir. Asıl önemli konu script'lerin yeniden üretilebilir ve test edilebilir data pipeline'a dönüştürülmesidir. Programlama dili iyi süreç tasarımının yerini alamaz.

Python Neden Öne Çıkıyor?

Python NLP ve machine learning ekosisteminin büyük bölümüne doğrudan erişim sağlar. Veri temizleme, annotation export ve model training aynı dil içinde yürütülebilir. Notebook prototipi production script'e dönüştürülebilir. Unit test ve type checking büyük pipeline'larda önem kazanır. Dependency versionları lock file ile sabitlenmelidir.

pandas

pandas küçük ve orta ölçekli tabular veri temizliği için oldukça kullanışlıdır. Missing, duplicate ve label distribution kontrolleri hızlı yapılabilir. Çok büyük dataset'te memory sınırı görülebilir. Parquet ve chunk processing yardımcı olur. DataFrame dönüşümleri version-controlled script içinde tutulmalıdır.

Hugging Face Datasets

Datasets büyük veri ve NLP training pipeline'ı için verimli yapı sağlar. Map ve filter işlemleri uygulanabilir. DatasetDict split yönetimini kolaylaştırır. Parquet ve Arrow desteği performans avantajı sunar. Hub veya local storage ile versioning uygulanabilir.

Transformers

Transformers tokenizer ve pretrained model entegrasyonu sağlar. Veri setinin model-specific tokenization adımı bu ekosistemle yürütülebilir. Data collator dynamic padding sağlar. Training pipeline dataset schema ile uyumlu olmalıdır. Model ve tokenizer version pinlenmelidir.

spaCy

spaCy tokenization, NER ve linguistic preprocessing için güçlü araçtır. Custom pipeline ve rule-based matcher annotation destek amacıyla kullanılabilir. Türkçe desteğinin kullanım senaryosuna uygunluğu test edilmelidir. Prodigy ile annotation ekosistemine entegre olabilir. Rule-based prelabeling manual annotation hızını artırabilir.

scikit-learn

scikit-learn baseline classification ve metric hesaplama için değerlidir. Stratified split, confusion matrix ve class weight araçları sağlar. Basit TF-IDF model güçlü baseline olabilir. Büyük transformer'dan önce data kalitesini test etmek için kullanışlıdır. Pipeline ve random seed reproducibility için sabitlenmelidir.

R Ne Zaman Kullanılabilir?

R istatistiksel analiz ve veri görselleştirmede güçlü seçenek olabilir. Veri bilim ekibi R konusunda deneyimliyse annotation quality ve distribution analizi burada yapılabilir. Model training başka sistemde olsa bile export standard formatta tutulabilir. Python zorunluluğu yoktur. Ortak schema ekipler arasındaki entegrasyonu kolaylaştırır.

SQL'in Veri Hazırlamadaki Rolü

Şirket içi NLP verisi çoğu zaman CRM veya data warehouse içinde bulunur. SQL doğru örnekleri seçmek ve metadata ile birleştirmek için temel araçtır. Sampling query version control altında tutulmalıdır. PII alanları mümkünse kaynak sorguda çıkarılabilir. Temporal split database tarih alanı üzerinden üretilebilir.

Programlama Dilinden Daha Önemli Olan Veri Pipeline Tasarımı

Tek seferlik notebook üretim ortamında sürdürülebilir değildir. Raw, cleaned, labeled ve split data aşamaları açık olmalıdır. Her step deterministic ve versionlanmış code ile çalışmalıdır. Quality gate pipeline'ı hatalı dataset release'ini engeller. Dil seçimi bu mimarinin ardından gelir.

NLP Veri Etiketleme Araçları

Annotation aracı multi-user çalışma, review ve export sürecini kolaylaştırır. Label Studio, Doccano, Prodigy ve Argilla farklı kullanım profilleri sunar. Araç seçerken yalnızca UI görünümüne değil workflow ve API desteğine bakılmalıdır. NER, classification ve preference annotation ihtiyaçları farklı olabilir. Export formatı training pipeline'a kolay bağlanmalıdır.

Label Studio

Label Studio birçok veri türü ve NLP görevi için esnek annotation interface sunar. Custom label configuration hazırlanabilir. Multi-user ve review süreçleri deployment şekline göre yapılandırılabilir. API entegrasyonu prelabeling ve export automation için kullanılabilir. Kurumsal deployment'ta authentication ve data storage politikası değerlendirilmelidir.

Doccano

Doccano özellikle text classification, sequence labeling ve translation görevlerine odaklanır. Basit arayüz annotator onboarding'i kolaylaştırabilir. Açık kaynak deployment mümkündür. Export formatı training script ile eşleştirilmelidir. User permission ve backup production annotation projelerinde önemlidir.

Prodigy

Prodigy aktif learning ve model-in-the-loop annotation workflow'larıyla bilinir. spaCy ekosistemiyle yakın entegrasyon sağlayabilir. Hızlı keyboard-driven annotation deneyimi sunar. Ticari lisans modeli kurum tarafından değerlendirilmelidir. Custom recipe geliştirmek teknik ekip gerektirebilir.

Argilla

Argilla human feedback ve NLP dataset workflow'larında kullanılabilir. Model prediction ve annotation birlikte gösterilebilir. Review ve feedback process desteklenebilir. LLM data curation senaryolarında değerlendirilebilir. Deployment ve access control kurumun güvenlik gereksinimlerine göre ayarlanmalıdır.

Hugging Face Ekosistemi

Hugging Face dataset storage, model training ve evaluation aşamalarını ortak ekosistemde birleştirebilir. Annotation araçlarından export edilen veri Dataset formatına dönüştürülebilir. Hub private repository collaboration sağlayabilir. Dataset card ve revisions dokümantasyonu güçlendirir. Hassas veri yerelliği kurum politikasına göre değerlendirilmelidir.

Araç Seçerken Nelere Dikkat Edilmeli?

Araç NLP görevinizi doğal biçimde desteklemelidir. Annotator sayısı, review workflow ve authentication önemli kriterlerdir. API otomasyonu büyük veri projelerinde ciddi zaman kazandırır. Export formatı vendor bağımlılığını azaltmalıdır. Self-hosting ihtiyacı güvenlik politikasıyla birlikte değerlendirilmelidir.

Multi-user annotation

Birden fazla annotator aynı projede güvenli biçimde çalışabilmelidir. Task assignment duplicate veya double annotation stratejisini desteklemelidir. User bazında ilerleme ölçülebilir. Yetki rolleri annotator ve reviewer'ı ayırmalıdır. Shared account kullanılmamalıdır.

Review workflow

Annotation doğrudan final kabul edilmemelidir. Reviewer disagreement ve low-confidence örnekleri inceleyebilmelidir. Adjudication sonucu kayıt altında tutulmalıdır. Golden sample mekanizması faydalıdır. Review history audit ve kalite analizi için kullanılabilir.

API desteği

API veri import, prelabeling ve export otomasyonunu sağlar. Production loglarından yeni task otomatik oluşturulabilir. Authentication token secure storage'da tutulmalıdır. API version değişiklikleri integration test ile takip edilmelidir. Rate limit ve batch işlemleri büyük dataset'te önemlidir.

Export formatları

Tool-specific export tek seçenek olmamalıdır. JSON, JSONL, CSV veya CoNLL gibi açık formatlar tercih edilir. Character span ve metadata kaybolmadan export edilmelidir. Dataset schema validator conversion sonrası çalıştırılmalıdır. Tool değişimi data migration sorununa dönüşmemelidir.

Open Source ve İşbirliği ile NLP Dataset Geliştirme

Açık kaynak dataset projeleri Türkçe NLP ekosistemine doğrudan katkı sağlar. Annotation guideline, schema ve quality script'lerinin paylaşılması başka ekiplerin katkısını kolaylaştırır. GitHub issue ve pull request modeli veri katkısına uyarlanabilir. Kişisel veri ve telif problemi olan örnekler public repository'ye eklenmemelidir. Açık dataset yayınlanmadan önce lisans ve data card hazırlanmalıdır.

Açık Kaynak Dataset Oluşturmanın Avantajları

Topluluk farklı dil ve bölge örnekleri sağlayarak coverage'ı artırabilir. Hatalı label'lar issue olarak raporlanabilir. Dataset yönteminin açık olması akademik ve endüstriyel kullanımı kolaylaştırır. Benchmark standardı oluşabilir. Katkı süreci quality gate ile korunmalıdır.

GitHub ile Dataset Projesi Yönetme

Repository guideline, scripts ve küçük sample data için kullanılabilir. Büyük dataset release artifact veya harici storage'da tutulabilir. Issue tracker label hatası ve yeni sınıf talebi için kullanılabilir. Pull request otomatik quality test çalıştırabilir. Contribution guide veri formatını açıklar.

Annotation Guideline'ı Açık Kaynak Paylaşma

Guideline paylaşımı dataset'in nasıl üretildiğini şeffaf hale getirir. Başka ekipler label interpretation'ı anlayabilir. Community feedback belirsiz kuralları iyileştirir. Guideline version dataset release ile eşleştirilmelidir. Hassas kurum içi örnekler anonim örneklerle değiştirilebilir.

Community Annotation

Topluluk annotation büyük veri hacminde katkı sağlayabilir. Annotator eğitimi ve golden test kaliteyi korur. Her contribution doğrudan final label olarak kabul edilmemelidir. Review ve agreement mekanizması uygulanmalıdır. Katılımcılara veri kullanım ve etik kurallar açıklanmalıdır.

Pull Request ile Veri Katkısı

Veri katkısı standard JSONL veya başka açık formatta yapılabilir. CI duplicate, schema ve PII test çalıştırabilir. Reviewer linguistic ve label quality kontrol eder. Kabul edilen katkı changelog'a eklenir. Büyük binary dosyalar repository'yi şişirmemelidir.

Dataset Issue Tracker

Issue tracker yanlış label, duplicate ve coverage gap raporlarını toplar. Her issue dataset version ile ilişkilendirilebilir. Yeni taxonomy önerisi tartışılabilir. Security veya PII issue public disclosure gerektirmiyorsa private channel kullanılmalıdır. Kapanan issue changelog'a referans olabilir.

Veri Setinin Hugging Face Hub'da Yayınlanması

Hub dataset discovery ve erişim kolaylığı sağlar. Dataset card eksiksiz hazırlanmalıdır. Lisans ve intended use açık olmalıdır. Sensitive veya redistribution kısıtlı veri public yüklenmemelidir. Revision sistemi release management için kullanılabilir.

Diyarbakır Yazılım Topluluğu İçin NLP Dataset Proje Fikirleri

Diyarbakır Yazılım Topluluğu için Türkçe ve yerel dil kullanımına odaklanan NLP projeleri hem teknik öğrenme hem açık veri üretimi açısından değerli olabilir. Proje seçiminde veri izni ve kişisel veri güvenliği baştan ele alınmalıdır. Küçük ama iyi dokümante edilmiş dataset büyük fakat kontrolsüz veri setinden daha yararlıdır. Topluluk projeleri hakkında https://www.diyarbakiryazilim.com.tr/projects adresi üzerinden mevcut çalışmalar incelenebilir. Topluluğun yaklaşımı ve iletişim bilgileri için https://www.diyarbakiryazilim.com.tr/about sayfası kullanılabilir.

Türkçe Yerel Ağız ve İfade Veri Seti

Bölgesel ifade ve günlük dil örnekleri Türkçe NLP coverage'ına katkı sağlayabilir. Veri gönüllü ve açık izinle toplanmalıdır. Hassas kimlik bilgileri bulunmamalıdır. Standard Türkçe karşılığı metadata olarak eklenebilir. Dialect classification amacı yerine language understanding benchmark gibi daha güvenli kullanım tasarlanabilir.

Diyarbakır İşletmeleri İçin Müşteri Yorumları Dataset'i

İzinli ve açık kaynaklı yorumlardan sentiment veya topic dataset hazırlanabilir. İşletme ve kullanıcı kimliği anonimleştirilmelidir. Telif ve platform kullanım koşulları kontrol edilmelidir. Positive, negative ve neutral guideline toplulukla geliştirilebilir. Dataset yalnızca izin verilen içeriklerden oluşturulmalıdır.

Türkçe Intent Classification Benchmark

Yerel hizmetler ve günlük dijital işlemler için intent taxonomy hazırlanabilir. Katılımcılar farklı ifade biçimleri üretebilir. Double annotation ve agreement ölçümü uygulanabilir. Baseline model sonuçları açık biçimde paylaşılabilir. Benchmark hem eğitim hem portföy projesi olarak kullanılabilir.

Yerel Kültür ve Tarih İçin Question Answering Dataset'i

Açık ve güvenilir kaynaklardan Diyarbakır kültür ve tarihi hakkında QA dataset oluşturulabilir. Her answer source citation metadata'sı taşımalıdır. Cevaplanamaz sorular ayrıca eklenebilir. Telif durumu kaynak bazında kontrol edilmelidir. Uzman veya kaynak doğrulaması factual quality'yi artırır.

Açık Kaynak Türkçe NER Dataset'i

Kişi, kurum, konum ve yerel entity tiplerini içeren Türkçe NER dataset hazırlanabilir. Public kaynakların kullanım izni kontrol edilmelidir. BIO ve span formatları birlikte sunulabilir. Double annotation agreement ölçümü yapılabilir. Dataset card Türkçe tokenization özelliklerini açıklayabilir.

Topluluk Tabanlı Veri Etiketleme Etkinlikleri

Annotation etkinlikleri dataset engineering sürecini uygulamalı öğretir. Katılımcılar guideline, label ve quality review deneyimi kazanır. Küçük golden set ile kalite ölçülebilir. Kişisel veri içermeyen örnekler kullanılmalıdır. Etkinlik çıktısı açık kaynak contribution'a dönüştürülebilir.

Annotation workshop

Workshop küçük classification veya NER dataset'i üzerinde yapılabilir. Önce guideline açıklanır. Katılımcılar aynı örnekleri bağımsız etiketler. Agreement hesaplanıp tartışılır. Son bölümde guideline nasıl iyileştirilir birlikte değerlendirilir.

Dataset hackathon

Hackathon takımların veri toplama, temizleme ve baseline model süreçlerini uçtan uca deneyimlemesini sağlar. Aynı raw data farklı ekipler tarafından işlenebilir. Quality score ve model result birlikte değerlendirilebilir. Telif ve PII kuralları etkinlik öncesi belirlenmelidir. Sonuçlar açık repository'de paylaşılabilir.

GitHub contribution sprint

Contribution sprint mevcut dataset issue'larını çözmeye odaklanabilir. Duplicate cleanup, label fix veya documentation görevleri seçilebilir. Pull request CI quality test çalıştırır. Yeni katılımcılar için küçük issue'lar hazırlanabilir. Review süreci gerçek açık kaynak deneyimi sağlar.

Dataset quality review

Quality review etkinliği model training yerine veri hatalarını bulmaya odaklanır. Duplicate, PII, label inconsistency ve leakage testleri çalıştırılır. Katılımcılar manuel sample review yapar. Bulunan sorunlar issue tracker'a eklenir. Dataset engineering'in model geliştirmedeki rolü uygulamalı görülür.

NLP Alanında Yazılımcı Olmak İçin Ne Öğrenilmeli?

NLP alanında ilerlemek isteyen geliştirici yalnızca transformer kütüphanelerini öğrenmemelidir. Veri analizi, regex, annotation, evaluation ve MLOps bilgisi günlük işte büyük rol oynar. Türkçe gibi dillerde linguistic özellikleri anlamak avantaj sağlar. Küçük açık kaynak dataset projeleri teori ile pratiği birleştirir. Veri seti hazırlama ve model geliştirme becerisi portföyde güçlü bir farklılık oluşturabilir.

Python

Python veri temizleme ve model training ekosisteminin temel araçlarından biridir. pandas ve Datasets öğrenmek iyi başlangıçtır. Script yazma yanında virtual environment ve dependency management bilinmelidir. Unit test data pipeline güvenilirliğini artırır. Küçük notebook kodu zamanla modüler pipeline'a dönüştürülmelidir.

Veri Analizi

Distribution, missing value ve outlier kavramları NLP dataset'lerinde de önemlidir. Histogram ve group-by analizleri data coverage'ı gösterir. Class imbalance erken fark edilmelidir. Production ve training distribution karşılaştırılabilir. Model sonucu veri analizi olmadan doğru yorumlanamaz.

Regex ve Text Processing

Regex PII detection, text cleaning ve pattern extraction için güçlü araçtır. Çok karmaşık regex bakım maliyetini artırabilir. Unicode ve Türkçe karakterler test edilmelidir. Regex label kuralı olarak weak supervision sağlayabilir. Her pattern unit test ile doğrulanmalıdır.

NLP Fundamentals

Tokenization, morphology, sequence labeling ve language modeling temelleri anlaşılmalıdır. Word embedding ile contextual embedding farkı önemlidir. Evaluation metric task'a göre seçilmelidir. Data leakage ve preprocessing kavramları model kadar önemlidir. Teori gerçek dataset üzerinde uygulanmalıdır.

Machine Learning

Train-validation-test, overfitting ve bias-variance temel kavramlardır. Baseline model oluşturma becerisi güçlüdür. Accuracy dışındaki metrikler öğrenilmelidir. Feature ve label leakage anlaşılmalıdır. Transformer kullanmak klasik ML bilgisini gereksiz hale getirmez.

Transformers

Attention ve pretrained model mantığını anlamak modern NLP için önemlidir. Tokenizer ve model input formatları öğrenilmelidir. Fine-tuning memory ve sequence length davranışı bilinmelidir. Model card ve license okumak teknik becerinin parçasıdır. Daha büyük modelin her zaman daha iyi olmadığını benchmark gösterir.

Hugging Face

Datasets, Transformers ve Hub birlikte güçlü workflow sunar. Custom dataset yükleme ve tokenization öğrenilebilir. Trainer veya alternatif training loop denenebilir. Model ve dataset revisions pinlenmelidir. Private data kullanımında security policy dikkate alınmalıdır.

Veri Etiketleme ve Dataset Engineering

Label taxonomy ve annotation guideline hazırlama temel beceridir. Agreement metric ve adjudication öğrenilmelidir. Dataset versioning ve card hazırlamak profesyonel süreç oluşturur. PII ve lisans kontrolü teknik pipeline'a eklenmelidir. Veri hatalarının model hatasına nasıl dönüştüğü error analysis ile görülmelidir.

Model Evaluation

Evaluation yalnızca tek skor üretmek değildir. Per-class metric, confusion matrix ve slice analysis öğrenilmelidir. Test contamination ve repeated tuning riski bilinmelidir. Human evaluation generative görevlerde önemlidir. Production metric ile offline benchmark ilişkilendirilmelidir.

MLOps ve DataOps

Dataset, code ve model version ilişkisi MLOps'un temelidir. Data quality pipeline otomatik çalışmalıdır. Model registry hangi dataset version kullanıldığını bilmelidir. Retraining ve deployment kontrollü süreç olmalıdır. Monitoring data drift ve model hata sinyallerini toplar.

Portföy İçin NLP Veri Seti Projeleri

İyi bir NLP portföy projesi yalnızca model notebook'u değil veri tasarım sürecini de göstermelidir. Dataset card, annotation guideline ve quality report güçlü katkı sağlar. Türkçe görev seçmek yerel ekosistem için değer üretir. Açık lisanslı veya kendi oluşturduğunuz veriler kullanılmalıdır. Sonuç GitHub ve uygun durumda Hugging Face üzerinden paylaşılabilir.

Türkçe Sentiment Dataset

Küçük ama dengeli Türkçe sentiment dataset hazırlanabilir. Positive, negative ve neutral guideline açık yazılmalıdır. İroni ve mixed sentiment edge case olarak eklenebilir. Agreement ölçümü raporlanmalıdır. Baseline transformer ve klasik model karşılaştırılabilir.

Intent Classification Dataset

Örneğin e-ticaret destek intent'leri için taxonomy hazırlanabilir. Her label pozitif ve hard negative örnekler içerebilir. Synthetic data belirli sınıfları destekleyebilir. Split user-independent biçimde tasarlanabilir. Confusion matrix üzerinden dataset iyileştirme döngüsü gösterilebilir.

Named Entity Recognition Dataset

Türkçe ürün, kurum veya konum entity dataset'i hazırlanabilir. Span ve BIO export sağlanabilir. Token-label alignment script yazılabilir. Agreement ve entity distribution raporlanabilir. PII kullanılacaksa açık kaynak veya sentetik metin tercih edilmelidir.

Question Answering Dataset

Açık dokümanlardan extractive QA dataset oluşturulabilir. Context, question, answer ve span formatı hazırlanır. Unanswerable sorular eklenir. Document-level split uygulanır. Baseline QA model evaluation yapılabilir.

Instruction-Tuning Dataset

Küçük Türkçe instruction dataset farklı görevleri kapsayabilir. İnsan yazımı ve LLM-assisted örnekler ayrı metadata taşıyabilir. Output kalite rubric hazırlanmalıdır. JSONL conversation formatı kullanılabilir. Dataset card sentetik oranı ve limitation bilgisi içermelidir.

Açık Kaynak Türkçe Benchmark

Birden fazla NLP görevini küçük benchmark paketi altında birleştirmek mümkündür. Classification, NER ve QA ayrı split'lere sahip olabilir. Benchmark test seti sık değiştirilmemelidir. Evaluation script repository'ye eklenmelidir. Community contribution yeni challenge set ile yapılabilir.

Uçtan Uca Özel NLP Veri Seti Hazırlama Workflow'u

Uçtan uca workflow iş probleminden başlayıp versionlanmış dataset release ile tamamlanır. Her aşama sonraki adımın kalitesini etkiler. PII ve lisans kontrolü annotation'dan önce yapılmalıdır. Baseline model training dataset kalitesini gerçek metrikle test eder. Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama sürecinin sürdürülebilir olması için bütün workflow otomasyon ve insan review ile desteklenmelidir.

1. İş Problemini Tanımlayın

Model hangi iş sonucunu iyileştirecek açıkça belirlenmelidir. Kullanıcı ve decision flow anlaşılmalıdır. Yanlış prediction'ın maliyeti değerlendirilmelidir. Başarı metriği iş hedefiyle ilişkilendirilmelidir. NLP görevi bu problemden türetilmelidir.

2. NLP Görevini Seçin

Classification, NER veya generation ihtiyacı netleştirilmelidir. Tek model birden fazla görev yapacaksa her görev ayrı değerlendirilmelidir. Output schema belirlenmelidir. Baseline yaklaşım seçilebilir. Veri formatı göreve göre planlanır.

3. Label Schema Oluşturun

Label isim ve tanımları yazılmalıdır. Birbirine yakın sınıflar tartışılmalıdır. Edge case ve multi-label ihtiyacı belirlenmelidir. Domain expert görüşü alınabilir. Schema versionlanmalıdır.

4. Veri Kaynaklarını Belirleyin

Şirket içi ve açık kaynaklar listelenmelidir. Her source için izin ve lisans durumu kontrol edilir. Production temsil değeri değerlendirilir. Collection yöntemi belgelenir. Provenance field tasarlanır.

5. Verileri Toplayın

Raw data immutable alanda saklanabilir. Collection date ve source ID eklenir. API veya SQL query versionlanır. Rate limit ve kullanım şartlarına uyulur. İlk distribution report hazırlanır.

6. PII ve Lisans Kontrolü Yapın

PII scanner ve insan review uygulanır. Gereksiz kişisel alanlar çıkarılır. Lisans şüpheli kaynaklar quarantine edilir. Hukuk onayı gerekiyorsa training öncesinde alınır. Provenance kayıtları tamamlanır.

7. Veriyi Temizleyin

Duplicate, encoding ve bozuk text temizlenir. Gereksiz HTML artığı kaldırılır. Türkçe karakterler korunur. Aşırı normalization yapılmaz. Temizleme code ve metrics versionlanır.

8. Annotation Guideline Hazırlayın

Label definition, positive, negative ve boundary örnekleri yazılır. Uncertain policy belirlenir. Domain terminology eklenir. Guideline reviewer tarafından incelenir. İlk version pilot için yayınlanır.

9. Pilot Annotation Yapın

Küçük ama çeşitli sample seçilir. En az iki annotator bağımsız çalışır. Zor örnekler özellikle dahil edilir. Annotation süresi ölçülür. Tool ve workflow problemi bu aşamada görülür.

10. Agreement Ölçün

Cohen's Kappa veya uygun metric hesaplanır. Label bazlı disagreement incelenir. Düşük agreement sınıfları yeniden tanımlanır. Guideline update edilir. Gerekirse ikinci pilot yapılır.

11. Ana Annotation Sürecini Çalıştırın

Task'lar annotator'lara kontrollü dağıtılır. Double annotation oranı risk bazlı seçilir. Golden sample araya eklenebilir. Progress ve accuracy izlenir. Problem görülen label için annotation durdurulup guideline düzeltilebilir.

12. Quality Assurance Yapın

Schema, missing ve invalid label testleri çalışır. Agreement ve annotator accuracy raporlanır. Random manual review yapılır. Adjudication kuyruğu kapatılır. QA başarısızsa dataset release edilmez.

13. Duplicate ve Leakage Kontrolü Yapın

Exact ve semantic duplicate analizi yapılır. User, document ve conversation group'ları çıkarılır. Split öncesi global dedup uygulanır. Similarity candidate'ları insan review'dan geçebilir. Leakage report kaydedilir.

14. Train/Validation/Test Split Oluşturun

Göreve göre stratified veya group split uygulanır. Temporal yapı gerekiyorsa tarih kullanılır. Test set erişimi sınırlandırılabilir. Split statistics kontrol edilir. Aynı group'un birden fazla split'te olmadığı doğrulanır.

15. Hugging Face Dataset Formatına Dönüştürün

Dataset veya DatasetDict oluşturulur. Features ve ClassLabel tanımlanır. Schema validation çalışır. Parquet artifact üretilebilir. Revision ve fingerprint kaydedilir.

16. Tokenization Yapın

Model-specific tokenizer version pinlenir. Max length distribution'a göre seçilir. Truncation ve padding policy tanımlanır. NER alignment test edilir. Raw text ayrı tutulur.

17. Baseline Model Eğitin

Basit ve tekrarlanabilir model seçilir. Seed ve hyperparameter kaydedilir. Validation metric izlenir. Model artifact dataset version ile etiketlenir. Training log sonraki karşılaştırma için saklanır.

18. Error Analysis Yapın

Confusion matrix ve yanlış örnekler incelenir. Hata taxonomy oluşturulur. Data problem ve model problem ayrıştırılır. Hard negative adayları çıkarılır. Kritik sınıflar önceliklendirilir.

19. Eksik Veri Segmentlerini Tamamlayın

Coverage gap için targeted collection yapılır. New edge case ve minority examples eklenir. Sentetik data gerekiyorsa human review uygulanır. Yeni örnekler ayrı provenance taşır. Dataset minor version hazırlanır.

20. Dataset'i Sürümleyin ve Dokümante Edin

Release version ve changelog yayınlanır. Dataset card güncellenir. Quality report artifact olarak saklanır. Training-ready immutable revision oluşturulur. Model registry bu version'a referans verir.

Özel NLP Veri Seti Hazırlarken En Sık Yapılan Hatalar

Özel NLP veri seti hazırlama ve veri etiketleme hizmeti planlanırken yalnızca örnek sayısına odaklanmak en yaygın hatalardan biridir. Görev tanımı, taxonomy, agreement ve leakage kontrolleri çoğu zaman daha yüksek öneme sahiptir. Türkçe preprocessing hataları data kalitesini sessizce bozabilir. PII ve lisans konularını son aşamaya bırakmak proje riskini artırır. Sürdürülebilir dataset programı versioning ve production feedback döngüsünü ilk günden planlamalıdır.

Görevi Tanımlamadan Veri Toplamak

Çok veri toplamak doğru veri toplamak anlamına gelmez. Output ve metric tanımlı değilse hangi örneğin değerli olduğu bilinmez. Annotation sonradan değişebilir. Gereksiz data privacy ve storage yükü oluşturur. Önce iş problemi ve task belirlenmelidir.

Label'ları Belirsiz Tanımlamak

Belirsiz label düşük agreement üretir. Model aynı metni farklı sınıflara öğrenir. Negative example eksikliği boundary kararını zorlaştırır. Pilot annotation sorunu erken gösterir. Taxonomy gerekli durumda sadeleştirilmelidir.

Tek Annotator Kullanmak

Tek kişinin bias'ı dataset'e yayılabilir. Agreement ölçülemez. Golden test yalnızca sınırlı kontrol sağlar. En azından pilot ve kritik subset double annotation yapılmalıdır. Domain expert disagreement review'da kullanılabilir.

Annotation Agreement Ölçmemek

Annotator'lar aynı guideline'ı farklı anlayabilir. Yüksek örnek sayısı bu problemi çözmez. Kappa veya Alpha gibi metric kullanılabilir. Sınıf bazlı disagreement incelenmelidir. Düşük agreement model ceiling'ini sınırlar.

Sadece Kolay Örnekleri Toplamak

Kolay örnekler yüksek offline skor oluşturabilir. Production'da hard negative ve edge case daha zordur. Confusion pair'leri bilinçli eklenmelidir. Active learning zor örnek bulabilir. Test set özellikle challenge örnekleri içermelidir.

Class Imbalance'ı Görmezden Gelmek

Çoğunluk sınıfı accuracy'yi yapay yükseltebilir. Minority recall düşük kalabilir. Distribution ölçülmelidir. Targeted collection ve class weight seçenekleri kullanılabilir. Macro F1 raporlanmalıdır.

Duplicate Verileri Farklı Split'lere Dağıtmak

Bu hata test skorunu doğrudan şişirir. Exact ve semantic duplicate temizliği split öncesinde yapılmalıdır. Same document veya conversation group birlikte tutulmalıdır. Leakage test otomatik olmalıdır. Release quality gate overlap olduğunda fail etmelidir.

Test Setini Defalarca Kullanarak Overfit Etmek

Her model denemesini test skoruna göre ayarlamak test setini validation'a dönüştürür. Test sonucu yalnızca final karar noktalarında kullanılmalıdır. Development için validation set bulunmalıdır. Gerekirse yeni hidden test set hazırlanır. Benchmark governance bu riski azaltır.

Gereğinden Fazla Text Cleaning Yapmak

Noktalama, emoji ve büyük harf anlam taşıyabilir. Transformer modelleri ham yapıyı işleyebilir. Aşırı temiz metin production input'tan uzaklaşır. Her transformation etkisi validation ile test edilmelidir. Teknik gürültü ile dilsel bilgi ayrılmalıdır.

Türkçe Karakterleri Kaybetmek

ASCII normalization Türkçe kelimeleri bozabilir. Yanlış encoding farklı token distribution üretir. I ve İ dönüşümü locale-aware olmalıdır. Quality test bozuk karakter pattern'lerini aramalıdır. Raw data mümkün olduğunca korunmalıdır.

PII ve Telif Haklarını Görmezden Gelmek

Model başarılı olsa bile hukuki olarak kullanılamayan dataset ciddi proje kaybıdır. Veri izni başta kontrol edilmelidir. PII anonimleştirilmelidir. Provenance silme ve lisans yönetimini kolaylaştırır. Hukuk ve güvenlik review training öncesinde yapılmalıdır.

Dataset Versioning Yapmamak

Versioning yoksa model sonuçları yeniden üretilemez. Hangi label'ın ne zaman değiştiği bilinmez. Test set değişikliği performans karşılaştırmasını bozar. Dataset release immutable olmalıdır. Model metadata dataset version taşımalıdır.

Model Hatalarını Dataset Geliştirmede Kullanmamak

Production hataları en değerli veri kaynaklarından biridir. Aynı modeli tekrar eğitmek yeni bilgi eklemez. Error analysis veri eksik segmentlerini gösterir. Human review ile yeni ground truth üretilebilir. Dataset ve model birlikte iteratif geliştirilmelidir.

Sık Sorulan Sorular

Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama konusunda en sık sorulan sorular veri miktarı, format, annotation ve split yöntemi etrafında toplanır. Tek bir doğru örnek sayısı veya split oranı bütün projelere uygulanamaz. Görev, class dağılımı ve production koşulları kararı değiştirir. Aşağıdaki yanıtlar güçlü bir başlangıç çerçevesi sunar. Gerçek proje kararı küçük pilot, kalite ölçümü ve baseline model sonucuyla verilmelidir.

NLP için veri seti nasıl hazırlanır?

Önce iş problemi ve NLP görevi tanımlanır. Label schema ve annotation guideline hazırlanır. Veriler izinli kaynaklardan toplanır, temizlenir ve kişisel bilgiler kontrol edilir. Annotation kalite ölçümü yapıldıktan sonra leakage güvenli train, validation ve test split oluşturulur. Dataset versionlanır, dokümante edilir ve baseline model ile test edilir.

NLP modeli eğitmek için kaç örnek gerekir?

Tek bir sabit sayı yoktur. Basit binary classification yüzlerce veya birkaç bin kaliteli örnekle başlayabilir. Çok sayıda intent veya nadir entity daha fazla veriye ihtiyaç duyabilir. Pretrained transformer ve fine-tuning veri ihtiyacını azaltabilir. En doğru yaklaşım learning curve ölçüp yeni data eklendiğinde performansın nasıl değiştiğine bakmaktır.

NLP verileri nasıl etiketlenir?

Manual, model-assisted, LLM-assisted veya weak supervision yöntemleri kullanılabilir. Label guideline açık olmalıdır. Kritik subset birden fazla annotator tarafından etiketlenebilir. Agreement ve golden accuracy ölçülmelidir. Anlaşmazlıklar adjudication ile final karara dönüştürülmelidir.

NLP için en iyi veri formatı hangisidir?

Tek bir en iyi format yoktur. Basit classification için CSV yeterli olabilir. LLM conversation ve QA için JSONL daha esnektir. Büyük dataset'te Parquet güçlü performans sağlar. NER interoperability için CoNLL kullanılabilir.

Train, validation ve test oranları ne olmalıdır?

80/10/10 veya 70/15/15 gibi oranlar başlangıç örneği olabilir ancak zorunlu değildir. Veri azsa validation ve test yeterli güvenilir örnek içermelidir. Split oranından daha önemli konu leakage olmamasıdır. Group ve temporal split gerçek production senaryosunu daha iyi temsil edebilir. Test set değişmeden korunmalıdır.

NLP veri setindeki sınıf dengesizliği nasıl çözülür?

Önce production dağılımı ile dataset dağılımı karşılaştırılır. Minority class için targeted data collection uygulanabilir. Oversampling, class weight ve sentetik veri destek olabilir. Test setin yapay şekilde tamamen dengelenmesi her zaman doğru değildir. Macro F1 ve per-class recall izlenmelidir.

Türkçe NLP veri seti hazırlarken nelere dikkat edilmelidir?

Türkçe karakterler ve locale-aware case dönüşümü korunmalıdır. Eklemeli dil yapısı tokenizer davranışını etkiler. Yazım hatası, argo ve code-switching gerçek kullanıcı dağılımında bulunabilir. Aşırı stemming veya ASCII normalization yapılmamalıdır. Bölgesel ve sektör özelindeki terminoloji coverage kapsamında değerlendirilmelidir.

ChatGPT veya başka bir LLM veri etiketlemek için kullanılabilir mi?

Evet, LLM prelabeling ve annotation desteği için kullanılabilir. Ancak nihai ground truth olarak otomatik kabul edilmemelidir. Golden dataset üzerinde LLM annotation accuracy ölçülmelidir. Düşük confidence ve kritik örnekler insan review'a gönderilmelidir. LLM bias ve prompt değişikliği tutarlılığı etkileyebilir.

Sentetik veri NLP modellerinde kullanılabilir mi?

Evet, özellikle minority class ve edge case üretiminde yararlı olabilir. Gerçek veri dağılımını tamamen değiştirmemelidir. Duplicate ve style repetition kontrol edilmelidir. Human validation kaliteyi artırır. Sentetik veri oranı ve kaynak modeli dataset metadata'sında tutulmalıdır.

Hugging Face'e özel veri seti nasıl yüklenir?

Önce Dataset veya DatasetDict oluşturulabilir. Schema ve split'ler doğrulanmalıdır. Dataset card hazırlanmalıdır. Hassas veri için private repository kullanılmalıdır. Belirli revision training script'te pinlenebilir.

NER veri seti nasıl hazırlanır?

Önce entity taxonomy ve boundary kuralları tanımlanır. Metinler character span veya token-level biçimde etiketlenir. BIO veya BIOES export hazırlanabilir. Tokenizer kullanıldığında token-label alignment yapılmalıdır. Entity-level F1 ve annotation agreement ölçülmelidir.

BERT için veri seti nasıl hazırlanır?

Dataset BERT tokenizer ile tokenization öncesinde temiz raw text olarak hazırlanmalıdır. Classification label schema açık olmalıdır. Train-validation-test leakage güvenli biçimde ayrılmalıdır. Tokenization model checkpoint ile uyumlu tokenizer kullanılarak yapılır. Padding, truncation ve attention mask training pipeline'da uygulanır.

LLM fine-tuning veri seti nasıl hazırlanır?

Instruction, input ve output çiftleri kaliteli ve görev odaklı hazırlanmalıdır. Conversation format gerekiyorsa role yapısı korunmalıdır. LLM-generated yanıtlar human validation'dan geçirilmelidir. Duplicate ve template repetition azaltılmalıdır. Evaluation için training'den bağımsız gerçek kullanıcı prompt seti tutulmalıdır.

Dataset leakage nasıl tespit edilir?

Exact hash overlap, user group overlap ve document ID intersection kontrol edilir. Semantic similarity train ve test arasında yüksek yakınlıkları gösterebilir. Preprocessing pipeline yalnızca train istatistiğiyle fit edilmelidir. Public benchmark contamination ayrıca değerlendirilmelidir. Her dataset release otomatik leakage testinden geçmelidir.

Dataset versioning neden önemlidir?

Versioning hangi modelin hangi veriden üretildiğini gösterir. Label ve split değişiklikleri izlenebilir. Reproducibility ve rollback kolaylaşır. Dataset card ve changelog her release ile güncellenebilir. Model registry dataset revision'a referans verebilir.

Doğal Dil İşleme (NLP) modelleri için özel veri seti nasıl hazırlanır?

NLP modelleri için özel veri seti nasıl hazırlanır sorusunun ilk cevabı veri toplamaya başlamadan görevi ve başarı kriterini tanımlamaktır. Ardından gerçek kullanım senaryosunu temsil eden izinli veri kaynakları seçilir, ham metin temizlenir ve gerekli kişisel bilgiler anonimleştirilir. Label taxonomy ve annotation guideline oluşturulduktan sonra pilot etiketleme yapılıp annotator agreement ölçülmelidir. Ana annotation sonrasında duplicate, leakage, class distribution ve PII kalite kontrolleri çalıştırılmalıdır. Son aşamada veri train, validation ve test split'lerine ayrılır, versionlanır, dataset card hazırlanır ve baseline model üzerinde değerlendirilir.

NLP veri setlerinde veri temizleme, etiketleme ve ön işleme süreçleri nasıl uygulanmalıdır?

Temizleme işlemi teknik gürültüyü azaltmalı ancak dilsel anlamı taşıyan emoji, noktalama veya Türkçe karakterleri gereksiz yere yok etmemelidir. Exact ve semantic duplicate, encoding hatası, HTML kalıntısı ve eksik kayıtlar otomatik pipeline ile kontrol edilebilir. Etiketleme açık guideline, örnekler, agreement ölçümü ve gerektiğinde adjudication ile yürütülmelidir. Tokenization gibi model-specific ön işleme adımları raw dataset'ten ayrı ve yeniden üretilebilir tutulmalıdır. Modern transformer modellerinde aşırı lowercase, stemming veya stop word temizliği varsayılan çözüm olarak kullanılmamalıdır.

Metin sınıflandırma, duygu analizi ve Named Entity Recognition (NER) için veri seti formatı nasıl oluşturulmalıdır?

Metin sınıflandırmada temel schema text ve label alanlarından oluşabilir; multi-label görevlerde label listesi kullanılmalıdır. Duygu analizinde positive, negative ve neutral gibi sınıflar açık guideline ile tanımlanmalı ve ironik veya karışık örnekler ayrıca ele alınmalıdır. NER veri setinde entity sınırları character span veya token-level annotation biçiminde tutulabilir. BIO veya BIOES formatı training export için yaygın çözümdür ve subword tokenizer kullanıldığında token-label alignment yapılmalıdır. Bütün görevlerde source, dataset version ve gerekli metadata alanları kalite ve provenance için saklanmalıdır.

NLP modellerinde veri kalitesi, sınıf dengesi ve eğitim-doğrulama-test ayrımı nasıl yönetilmelidir?

Veri kalitesi missing value, invalid label, duplicate, annotation agreement, PII ve leakage testleriyle düzenli ölçülmelidir. Class imbalance gerçek production dağılımı dikkate alınarak targeted collection, class weight veya kontrollü sentetik veriyle yönetilebilir. Accuracy tek başına yeterli olmadığı için macro F1 ve per-class recall gibi metrikler kullanılmalıdır. Train-validation-test split oluştururken aynı kullanıcı, document veya conversation'ın birden fazla split'e dağılması engellenmelidir. Test set geliştirme kararlarında tekrar tekrar kullanılmamalı ve tarafsız final değerlendirme için korunmalıdır.

NLP için özel veri seti hazırlama ve model geliştirme konusunda yakınımda danışmanlık veya eğitim nerede bulabilirim?

NLP veri seti hazırlama ve yapay zeka danışmanlığı yakınımda şeklinde araştırma yaparken yalnızca model eğitimi sunan değil veri toplama, annotation guideline, kalite ölçümü ve MLOps süreçlerini birlikte ele alan teknik yaklaşım tercih edilmelidir. Diyarbakır'daki yazılım topluluğu, proje ve eğitim çalışmaları hakkında bilgi almak için https://www.diyarbakiryazilim.com.tr/about sayfasını inceleyebilirsiniz. Topluluk tarafından geliştirilen veya paylaşılan proje çalışmalarına https://www.diyarbakiryazilim.com.tr/projects adresinden ulaşabilirsiniz. Özel NLP veri seti hazırlama ve veri etiketleme hizmeti değerlendirilirken veri lisansı, kişisel veri, annotation kalite ölçümü ve dataset versioning gibi başlıkların proje kapsamına dahil edilmesi önemlidir. Küçük bir pilot dataset ile başlayıp baseline model ve error analysis sonucuna göre veri kapsamını büyütmek hem maliyet hem kalite açısından daha kontrollü bir yöntemdir.

Sonuç

Doğal Dil İşleme (NLP) Modelleri İçin Özel Veri Seti Hazırlama, yalnızca veri toplama ve birkaç label ekleme işi değildir. Başarılı süreç görev tanımı, veri provenance, kişisel veri kontrolü, annotation guideline, agreement ölçümü, duplicate temizliği, leakage kontrolü, versioning ve model evaluation aşamalarını tek zincirde birleştirir. Özellikle Türkçe NLP projelerinde karakter yapısı, eklemeli dil özellikleri, günlük dil, code-switching ve sektörel terminoloji dataset tasarımında bilinçli biçimde ele alınmalıdır. Model performansını geliştirmek isteyen ekiplerin daha büyük modele geçmeden önce yanlış label'ları, hard negative örnekleri ve coverage boşluklarını incelemesi çoğu zaman daha etkili sonuç verir. Türkçe NLP, açık kaynak veri setleri ve topluluk tabanlı yapay zeka projeleri üzerine çalışmak için https://www.diyarbakiryazilim.com.tr adresi üzerinden Diyarbakır Yazılım Topluluğu ile bağlantı kurabilirsiniz.

share
share:

İletişim

Birlikte inşa edelim

İşbirliklerine, ilginç sorunlara ve kod, tasarım ile diğer konular hakkında sohbetlere açığız.

bize ulaş→

Bizi başka yerlerde bulun

GitHub
@diyarbakir-yazilim
Twitter
@diyaryazilim
LinkedIn
diyarbakir-yazilim-toplulugu
Instagram
@diyarbakiryazilim
YouTube
@diyarbakiryazilim
Slack
diyarbakiryazilim
WhatsApp
Topluluğa Katıl
Email
info@diyarbakiryazilim.org
Sevgiyle ve kodla inşa ediliyor

© 2026 Diyarbakır Yazılım Topluluğu — Tüm hakları saklıdır.