Geniş dil modellerinin (LLM’ler) ortaya çıkışı, endüstrilerin yapay zekayı operasyonları ve hizmetleri geliştirmek için nasıl kullandığında önemli bir değişim yaratmıştır. Rutin görevlerin otomatikleştirilmesi ve süreçlerin sadeleştirilmesi sayesinde LLM’ler, insan kaynaklarını daha stratejik işler için serbest bırakarak genel etkinlik ve verimliliği artırmaktadır.
LLM’lerin yüksek doğrulukla eğitilmesi ve özelleştirilmesi, öncelikle yüksek kaliteli verilere bağımlılıkları nedeniyle zorluklarla doludur. Zayıf veri kalitesi ve yetersiz veri hacmi, model doğruluğunu önemli ölçüde azaltabilir. Bu yüzden veri seti hazırlama, yapay zeka geliştiricileri için kritik bir görev haline gelmektedir.
Veri setleri genellikle tekrar eden belgeler, kişisel kimlik bilgileri (PII) ve formatlama sorunları içermektedir. Bazı veri setleri, kullanıcılar için risk oluşturabilecek toksik veya zararlı bilgiler barındırabilir. Bu tür veri setleri üzerinde uygun işleme yapılmadan eğitim yapmak, yüksek eğitim süreleri ve düşük model kalitesi ile sonuçlanabilir. Ayrıca, veri kıtlığı da büyük bir sorun teşkil etmektedir. Model geliştiriciler, eğitim için kamuya açık veri kaynaklarının azalması nedeniyle sık sık üçüncü taraf tedarikçilere yönelmekte ya da gelişmiş LLM’ler kullanarak yapay veri üretmeye çalışmaktadırlar.
Bu yazıda, LLM performansını optimize etmek için veri kalitesini artırmaya yönelik veri işleme teknikleri ve en iyi uygulamaları anlatacağız. NVIDIA NeMo Curator’ın bu zorlukları nasıl ele aldığını göstererek, gerçek dünya veri işleme örneklerini sunacağız.
Metin İşleme Süreçleri ve En İyi Uygulamalar
Büyük veri ön işleme oldukça karmaşık bir süreçtir, özellikle veri setinin büyük ölçüde web tarama ile elde edilmesi durumunda, bu verilerin çoğu düşük kaliteli ve kötü formatlanmış olabilir.
Şekil 1, veri setinin indirilmesinden harmanlama ve karıştırmaya kadar olan aşamaları içeren kapsamlı bir metin işleme sürecini yüksek seviyede göstermektedir:
- Veri setini kaynaktan indirin ve JSONL gibi istenen bir formata çıkarın.
- Ön temizlik uygulayın; örneğin, Unicode düzeltmeler ve dil ayrımı yapın.
- Belirli kalite kriterlerine göre standart ve özelleştirilmiş filtreler uygulayın.
- Çeşitli deduplike seviyelerini (tam, bulanık ve anlamsal) gerçekleştirin.
- İleri düzey kalite filtrelemeleri uygulayın; model tabanlı kalite filtrelemesi, PII redaksiyonu gibi yöntemlerle.
- Birleştirilmiş veri kaynaklarından harmanlanmış bir veri seti oluşturun.
Veri İndirme ve Çıkarma
Veri düzenleme sürecinin ilk adımı, Common Crawl, arXiv ve PubMed gibi yaygın kaynaklardan veya özel veri setlerinden veri indirmek ve bunları hazırlamaktır. Bu aşama, depolama formatlarına ve çıkarma yöntemlerine dikkat edilerek gerçekleştirilmelidir, çünkü kamusal olarak barındırılan veri setleri genellikle sıkıştırılmış formatlarda gelir ve daha yönetilebilir formatlara dönüştürülmelidir.
Ön Temizlik İşlemleri
Veri düzenleme sürecinde, Unicode düzeltmeleri ve dil tanımlaması gibi işlemler önemli rol oynamaktadır. Özellikle büyük ölçekli web tarama ile elde edilmiş metinler üzerinde çalışırken, yanlış kodlanmış Unicode karakterleri ve çoklu dillerin bulunması gibi zorluklar ile karşılaşılır.
Unicode sorunları genellikle yanlış karakter kodlamasından kaynaklanır. Temiz, doğru kodlanmış metin ile belirlenen dillerin belirlenmesi bu aşamada kritik öneme sahiptir.
Heuristik Filtreleme
Heuristik filtreleme, düşük kaliteli içerikleri belirleyip çıkarmak için kural tabanlı ölçütler ve istatistiksel yöntemler kullanır.
Doküman uzunluğu, tekrarlama kalıpları, noktalama işareti dağılımı gibi birçok kalite boyutunu değerlendirir. Yaygın heuristik filtreler şunlardır:
- Kelimeler Arası Filtre: Anlamlı olmayan ya da aşırı uzun olan içerikleri filtreler.
- Boş Şablon Filtre: Aşırı şablon içeren metinleri belirleyip çıkarır.
- N-gram Tekrar Filtre: Farklı uzunluklardaki tekrar eden ifadeleri belirler.
Deduplication (Tekilleştirme)
Deduplike işlemi, model eğitim verimliliğini artırmak ve hesaplama maliyetlerini düşürmek için gereklidir. Tekilleştirme işlemi, tam, bulanık ve anlamsal olmak üzere üç ana yaklaşımla uygulanabilir.
Tam Deduplike
Tam deduplike, tamamen aynı belgeleri belirleyip çıkarır. Bu yöntem, her belgenin hash imzalarını üretir ve belgeleri hash’lerine göre gruplar. Ancak, benzer anlamsal içeriği tam olarak tespit edemeyebilir.
Bulanık Deduplike
Bulanık deduplike, benzer içerikleri bulmak için MinHash imzaları ve Yerel-Duyarlı Hashing kullanır. Bu işlem, içeriği daha etkili bir şekilde analiz etmek için esneklik sağlar.
Anlamsal Deduplike
Anlamsal deduplike, gelişmiş gömme modelleri kullanarak anlamsal benzerliği yakalar. Bu yöntem, paraphrased içerikler ve benzer bilgilerin tespiti için etkili bir yöntemdir.
Model Tabanlı Kalite Filtreleme
Model tabanlı kalite filtreleme, içerik kalitesini değerlendirmek için farklı model türlerini kullanır. Kalite filtreleme için uygun model seçimi, etkililiği ve gereken hesaplama kaynaklarını etkiler.
Farklı model türleri arasında:
- N-gram Tabanlı Sınıflayıcılar: Verimlilik ve pratiklik açısından en basit yaklaşımdır.
- BERT Tarzı Sınıflayıcılar: Daha karmaşık dil kalıplarını ve bağlamsal ilişkileri yakalar.
- LLM’ler: Kalite değerlendirme kapasitesinde en üst düzeyde bir anlayış sunar.
- Ödül Modelleri: Konversasyonel veri kalitesini değerlendirmek için tasarlanmıştır.
PII Redaksiyonu
Kişisel Kimlik Bilgileri (PII) redaksiyonu, veri setlerinden hassas bilgilerin belirlenip çıkarılması sürecidir. Bu, gerçek bireylerin korunması ve veri koruma düzenlemelerine uyum sağlamak için kritik öneme sahiptir.
Dağıtık Veri Sınıflandırması
Veri sınıflandırması, veri düzenlemenin temel bir parçasıdır. Veri setlerinin çeşitli özelliklere göre organize edilmesini ve sınıflandırılmasını sağlar. Dağıtık veri sınıflandırması, büyük veri setlerinde karşılaşılabilecek zaman ve bilgi yükünü hafifletmek için gerçekleştirilir.
Görev Kontaminasyonun Temizlenmesi
Eğitim sonrası LLM’lerin performansının değerlendirilmesi aşamasında, özel test verileriyle potansiyel leaklerin tespit edilmesi gereklidir. Bu süreç, test verilerinin eğitim setlerine sızmasını engellemek amacıyla gerçekleştirilir.
Harmanlama ve Karıştırma
Veri harmanlama ve karıştırma, veri düzenleme sürecinin son adımlarını temsil eder. Birden fazla veri setinin birleştirilmesi ve uygun rastgelelikle karıştırılması, model eğitimine destek olur.
Yapay Veri Üretimi
Ön işleme aşamasını başarıyla geçtikten sonra, LLM geliştirme alanında önemli bir zorluk olan veri kıtlığıyla karşılaşılır. LLM’lerin geniş veri setlerine olan ihtiyacı çoğu zaman mevcut olan veri miktarını aşar. Bu noktada, yapay veri üretimi (*synthetic data generation – SDG*), LLM’lerin gerçek veri özelliklerini taklit eden yapay veri setleri oluşturmasına yardımcı olur.
Veri İşleme ile Yerel LLM’ler Oluşturma
Open-source LLM’ler genellikle İngilizce’de başarılı olurken, Güneydoğu Asya dilleri gibi diğer dillerde zorlanmaktadırlar. Eğitim verilerinin yetersizliği, yerel kültürlerin yeterince anlaşılmaması gibi unsurlar, bu durumun sebebidir. Örneğin, NeMo Curator kullanarak Viettel Solutions, yüksek kaliteli Vietnamese verisini işleyerek doğruluğu %10 artırmayı başarmıştır.
NVIDIA NeMo Curator ile Veri Kalitesini Artırma
Veri kalitesinin, LLM’lerin doğruluğunu artırmadaki önemini tartıştık. Geliştiriciler, bu teknikleri doğrudan NeMo Curator aracılığıyla deneyimleyebilir. NeMo Curator, geliştiricilerin üzerine kurabileceği özelleştirilebilir ve modüler bir arayüz sunar.
NeMo Curator, NVIDIA RAPIDS GPU hızlandırmalı kütüphaneleri kullanarak iş yüklerini hızlandırır ve gerektiğinde ölçeklendirme işlemi gerçekleştirir. Örneğin, GPU’lar kullanarak veri işleme süreçlerini hızlandıran Zyphra, toplam sahip olma maliyetini %50 ve veri işleme süresini 3 haftadan 2 güne sıfırlamayı başarmıştır.
Detaylar için NVIDIA/NeMo-Curator GitHub deposunu ve çeşitli veri düzenleme iş akışlarını kapsayan mevcut örnekleri keşfedebilirsiniz.