Atlas’ta ara

Keşfetmeye buradan başla

Öğren/Tahmin

Bir dağılımdan kelime seçmenin yolları

Greedy, örnekleme, sıcaklık, top-k ve top-p: aynı olasılık dağılımından farklı kurallarla seçim yapmanın etkisi ve sınırları.

ÖN BİLGİ

Bu yazıyı rahat izlemek için şunlara önce bakmış olman iyi olur:

01Dağılım hazır; seçim kuralı ayrı bir karar#

Transformer anlatımında gördüğün gibi, model her adımda sözlükteki her token için bir olasılık üretir. Bu dağılımın kendisi seçimi yapmaz; bir seçim kuralı gerekir. İki uç nokta: greedy decoding, her zaman en yüksek olasılıklı tokenı alır. Örnekleme, dağılıma göre rastgele seçer; düşük olasılıklı bir token da, nadiren de olsa, seçilebilir.

01

Sıradaki token ne olabilir?

Hesaplanan · temsili girdiler
Güneş?
Daha keskin dağılımDaha düz dağılım
parlıyor
55.1%
batıyor
22.4%
doğuyor
15.0%
ısıtıyor
7.5%

Sıcaklık sıralamayı değiştirmez; olasılıkları değiştirir. Örneklemede en olası token her zaman seçilmez.

Logitleri ve formülü gör

pᵢ = exp(zᵢ / T) / Σⱼ exp(zⱼ / T). Başlangıç logitleri: [2.8, 1.9, 1.5, 0.8]. İkinci adım: [2.6, 1.6, 1.1, 0.9]. Sözlüğümüz yalnızca dört adaydan oluşur; gerçek modeller çok daha geniş bir sözlük üzerinde dağılım üretir.

Dört aday ve logitleri elle seçilmiştir. Softmax ile örnekleme gerçektir; dil modeli çalışmaz. İkinci adımın skorları önceki seçime göre yeniden hesaplanmaz, sabit bir öğretim örneğidir.

Aynı dağılım üzerinde “En olasıyı seç” ile “Dağılımdan örnekle” düğmelerini sırayla dene. Greedy her zaman aynı sonucu verir. Örnekleme ise sıcaklığa ve o anki rastgele sayıya bağlı olarak değişebilir. Sıcaklık sıralamayı değiştirmez; yalnızca olasılıkları birbirine yaklaştırır veya birbirinden uzaklaştırır.

02Adayları önceden eleyen kurallar#

Saf örnekleme, çok düşük olasılıklı bir adayı da teorik olarak seçime açık bırakır. Uygulamada bunu sınırlamak için iki yaygın yöntem kullanılır. Yukarıdaki diyagramın ilk turundaki gerçek sayılarla göster:

AdayLogitOlasılık (T=1)Kümülatif
parlıyor2.8%55.1%55.1
batıyor1.9%22.4%77.5
doğuyor1.5%15.0%92.5
ısıtıyor0.8%7.5%100.0

Top-k örnekleme, en yüksek olasılıklı sabit sayıda adayı tutar, gerisini atar. k=2 seçilirse yalnızca “parlıyor” ve “batıyor” kalır; bu iki olasılık toplam %77,5’i oluşturduğu için örnekleme öncesi yeniden ölçeklenip %71,1 ve %28,9 yapılır. Top-p (nükleer) örnekleme ise sabit bir aday sayısı değil, sabit bir kümülatif olasılık eşiği kullanır. p=0,9 seçilirse, kümülatif toplam %90’ı geçene kadar sırayla aday eklenir: burada ilk üç aday (%92,5) yeterli olur, “ısıtıyor” dışarıda kalır.

Diyagramın ikinci turundaki dağılım daha düzdür (logitler 2.6 / 1.6 / 1.1 / 0.9). Orada ilk üç adayın kümülatif toplamı yalnızca %89,7’dir; p=0,9 eşiğini geçmek için dördüncü aday da gerekir. Bu, top-k ile top-p arasındaki asıl farkı gösterir: top-k her zaman aynı sayıda adayı tutar, top-p dağılımın ne kadar keskin veya düz olduğuna göre aday sayısını kendisi değiştirir. Üretim stratejileri karşılaştırması ↗

03Hiçbir seçim kuralı doğruluğu garanti etmez#

Greedy decoding bazen aynı ifadeyi tekrarlayan, sıkışmış bir metne yol açabilir; çünkü en olası tek adayı seçmek, bağlamda tekrar eden bir örüntüyü güçlendirebilir. Örnekleme çeşitliliği artırır ama rastgeleliği de getirir: aynı girdi, aynı modelle, farklı bir çıkış üretebilir. Top-k ve top-p bu rastgeleliği sınırlar; ortadan kaldırmaz.

Seçilen her token, bir sonraki adımın bağlamına eklenir; sonraki dağılım bu genişlemiş bağlamdan yeniden hesaplanır. Üretim böylece tek bir karar değil, birbirini izleyen küçük seçimlerden oluşur. Her birinde aynı soruyla karşılaşırsın: en olası olanı mı almalı, yoksa dağılıma güvenip örnekleme mi yapmalı?

Hiçbir seçim kuralının çözemediği bir soru var: bu akıcı metin, doğru mu? Üretimin neden yavaşladığını Dil modeli neden yavaşlar? yazısında, ham bir modelin nasıl bir asistana dönüştüğünü Ham dil modeli, asistana nasıl dönüşür? yazısında görebilirsin. Sınırların tamamı ise yolculuğun son durağında: Bir model ne zaman yanılır?

KENDİNİ SINA

Bu yazıyı bitirdiğinde:

  • Olasılık dağılımı ile seçim kuralının ayrı kararlar olduğunu anlatabilirsin.
  • Sıcaklık, top-k ve top-p’nin neyi değiştirdiğini açıklayabilirsin.
  • Hiçbir örnekleme kuralının doğruluğu garanti etmediğini söyleyebilirsin.

Cümlelerden birini kendi sözlerinle anlatamıyorsan, ilgili bölüme dön ve demoyu yeniden dene.

İlerleme yalnızca bu tarayıcıda saklanır.
BAĞLANTILI KAVRAMLAR

Bir fikri diğerine bağla.

Rotanı gör: sıradaki adım ne? Bütün dersler