Dil modeli nedir?
Dil modeli, daha uzun bir jeton dizisinde bir jetonun veya jeton dizisinin gerçekleşme olasılığını tahmin eder. Bir jeton; kelime, alt kelime (kelimenin bir alt kümesi) veya tek bir karakter olabilir.
Aşağıdaki cümleyi ve onu tamamlayabilecek jetonları göz önünde bulundurun:
When I hear rain on my roof, I _______ in my kitchen.
Bir dil modeli, bu boşluğu doldurmak için farklı jetonların veya jeton dizilerinin olasılıklarını belirler. Örneğin, aşağıdaki olasılık tablosunda olası bazı jetonlar ve olasılıkları tanımlanmaktadır:
| Probability | Jetonlar |
|---|---|
| %9,4 | çorba pişirme |
| %5,2 | su ısıtıcısını ısıtma |
| %3,6 | sinmek |
| %2,5 | kısa uyku |
| %2,2 | rahatlama |
Bazı durumlarda, jeton dizisi tam bir cümle, paragraf veya hatta tam bir makale olabilir.
Bir uygulama, tahmin yapmak için olasılık tablosunu kullanabilir. Tahmin, en yüksek olasılık (örneğin, "çorba pişir") veya olasılığı belirli bir eşiğin üzerinde olan jetonlardan rastgele bir seçim olabilir.
Bir metin dizisindeki boşluğu dolduracak kelimenin olasılığını tahmin etme, aşağıdakiler de dahil olmak üzere daha karmaşık görevlere genişletilebilir:
- Metin oluşturuluyor.
- Metni bir dilden başka bir dile çevirme
- Belgeleri özetleme
Modern dil modelleri, jetonların istatistiksel kalıplarını modelleyerek dilin son derece güçlü dahili temsillerini geliştirir ve makul bir dil oluşturabilir.
N-gram dil modelleri
N-gramlar, dil modelleri oluşturmak için kullanılan sıralı kelime dizileridir. N, dizideki kelime sayısını ifade eder. Örneğin, N 2 olduğunda N-gram'a 2-gram (veya bigram) denir. N 5 olduğunda ise N-gram'a 5-gram denir. Eğitim dokümanında aşağıdaki ifade yer alıyor:
you are very nice
Elde edilen 2 gramlık diziler şunlardır:
- kullanıyorsanız
- çok
- çok hoş
N 3 olduğunda N-gram'a 3-gram (veya trigram) denir. Aynı kelime öbeği verildiğinde ortaya çıkan 3 gramlık kelimeler şunlardır:
- çok
- çok güzel
Giriş olarak iki kelime verildiğinde, 3 grama dayalı bir dil modeli üçüncü kelimenin olasılığını tahmin edebilir. Örneğin, aşağıdaki iki kelime verildiğinde:
orange is
Bir dil modeli, eğitim korpusundan türetilen ve orange is ile başlayan tüm farklı 3 gramları inceleyerek en olası üçüncü kelimeyi belirler.
Yüzlerce üçlü gram, orange is kelimeleriyle başlayabilir ancak yalnızca aşağıdaki iki olasılığa odaklanabilirsiniz:
orange is ripe orange is cheerful
İlk olasılık (orange is ripe) meyve olan portakal, ikinci olasılık (orange is cheerful) ise portakal rengiyle ilgilidir.
Bağlam
İnsanlar, nispeten uzun bağlamları koruyabilir. Bir oyunun 3. perdesini izlerken 1. perdede tanıtılan karakterler hakkındaki bilgilerinizi korursunuz. Benzer şekilde, uzun bir şakanın can alıcı noktası, şakanın bağlamını hatırlayabildiğiniz için sizi güldürür.
Dil modellerinde bağlam, hedef jetondan önce veya sonra gelen faydalı bilgilerdir. Bağlam, bir dil modelinin "turuncu" kelimesinin bir turunçgil meyvesini mi yoksa bir rengi mi ifade ettiğini belirlemesine yardımcı olabilir.
Bağlam, dil modelinin daha iyi tahminler yapmasına yardımcı olabilir ancak 3 gramlık bir bağlam yeterli midir? Üç gramlık birimler yalnızca ilk iki kelimeyi bağlam olarak sunar. Örneğin, iki kelime orange is, dil modelinin üçüncü kelimeyi tahmin etmesi için yeterli bağlamı sağlamaz.
Bağlam eksikliği nedeniyle, 3 grama dayalı dil modelleri çok fazla hata yapar.
Daha uzun N-gramlar, daha kısa N-gramlara kıyasla kesinlikle daha fazla bağlam bilgisi sağlar. Ancak N büyüdükçe her örneğin göreceli oluşumu azalır. N çok büyük olduğunda dil modelinde genellikle N jetonlarının her bir oluşumunun tek bir örneği bulunur. Bu da hedef jetonu tahmin etmede pek yardımcı olmaz.
Yinelemeli nöral ağlar
Tekrarlayan sinir ağları, N-gram'lardan daha fazla bağlam sağlar. Yinelemeli nöral ağ, bir jeton dizisi üzerinde eğitim yapan bir nöral ağ türüdür. Örneğin, yinelemeli bir nöral ağ, bir cümledeki her kelimeden seçilen bağlamı yavaş yavaş öğrenebilir (ve yok saymayı öğrenebilir). Bu, birinin konuşmasını dinlerken yaptığınız şeye benzer. Büyük bir yinelemeli nöral ağ, birkaç cümleden oluşan bir pasajdan bağlam bilgisi edinebilir.
Yinelemeli sinir ağları, N-gram'lardan daha fazla bağlam öğrense de yinelemeli sinir ağlarının sezebileceği yararlı bağlam miktarı nispeten sınırlıdır. Yinelemeli nöral ağlar, bilgileri "jeton jeton" değerlendirir. Buna karşılık, bir sonraki bölümde ele alınacak olan büyük dil modelleri, bağlamın tamamını aynı anda değerlendirebilir.
Uzun bağlamlar için yinelemeli sinir ağlarının eğitilmesinin kaybolan gradyan sorunu nedeniyle sınırlı olduğunu unutmayın.
Alıştırma: Anladıklarınızı kontrol edin
- 6 grama dayalı bir dil modeli
- 5 grama dayalı bir dil modeli