Top-k Örnekleme

Top-k, bir dil modelinin bir sonraki token'ını yalnızca en yüksek tahmin olasılığına sahip k aday arasından seçmesini sağlayan bir örnekleme parametresidir: model bu kısa listeyi yeniden normalize eder ve içinden örnekler. İlk k'nın dışında kalan her şey, olasılık kütlesinin nasıl dağıldığına bakılmaksızın doğrudan elenir. Top-p'nin (nucleus sampling) daha yalın kuzenidir: top-p kümülatif bir olasılık eşiğine ulaşmak için kaç token gerekiyorsa onu tutarken, top-k sabit bir sayı tutar ve dağılımın biçimini bütünüyle yok sayar. Aralarındaki tüm tartışma bu farktan doğar. Model kendinden eminse ve olasılığın çoğunu tek bir token taşıyorsa, 50'lik sabit bir k asla değerlendirilmemesi gereken 49 adayı içeri sürükler; model gerçekten çok sayıda makul devam arasında kararsızsa, aynı k hak eden seçenekleri kesip atabilir. Top-p'nin ikisi arasında daha uyarlanabilir sayılmasının nedeni budur — her adımda dağılımın ne kadar sivri ya da düz olduğuna tepki verir — yine de hiçbiri mutlak anlamda üstün değildir; ikisi de aynı sorunu farklı yoldan çözer. Top-k'nın maliyet üzerinde doğrudan etkisi yoktur: hangi token'ın seçileceğini değiştirir, kaç token'ın işlendiğini veya faturalandırıldığını değil. Etkisi karakter üzerinedir. Çok düşük bir k çıktı çeşitliliğini daraltır ve üretilen metni tekrarlı, mekanik hissettirir — ki bu bazen tam da istediğiniz şeydir; çok yüksek bir k ise kısıtsız örneklemeye yaklaşır ve budamanın var olma nedeni olan düşük olasılıklı uzun kuyruğu geri getirir. SaaS geliştiricileri için pratik yönerge, aynı anda tek bir örnekleme düğmesini oynatmak ve özel bir gerekçeniz yoksa top-k'yı sağlayıcının varsayılanında bırakmaktır; top-k, top-p ve yüksek bir sıcaklığı birlikte ayarlamak, yaratıcılığı ince ayarladığınızı sanırken bozuk çıktı üretmenin yaygın yoludur. Birçok API top-k'yı bazı model ailelerinde sunar, bazılarında sunmaz; bu yüzden sağlayıcılar arasında taşımayı planladığınız her istem yapılandırmasında onu bir taşınabilirlik riski olarak görün. Top-k ile top-p'nin sıklıkla aynı anda etkin olduğunu ve sırayla uygulandığını da bilmekte fayda var: kısa liste hem sayıya hem de kümülatif olasılığa göre budanır ve hangi kısıt önce devreye girerse o kazanır. Bu birleşim, ikisi de varsayılanlarına yakınken zararsızdır; ikisi birden agresif ayarlandığında ise sessizce yıkıcı olur, çünkü her biri tek başına makulken kesişimleri modele seçecek neredeyse hiç alan bırakmaz. Arıza belirtisi, tuhaf biçimde katılaşmış ya da döngüye girmiş bir model görüntüsüdür ve bunu bir yapılandırma sorunu yerine model kalitesi sorunu sanmak çok kolaydır. Tekrarlı veya bozuk üretimde hata ayıklıyorsanız, önce bütün örnekleme parametrelerini varsayılana döndürün ve teker teker geri getirin. Budamanın yapamayacağı şeyi de unutmayın: bu parametrelerin hiçbiri modeli daha doğru yapmaz. Yalnızca modelin kendi aday devamlarından hangilerinin uygun sayılacağını biçimlendirirler; dolayısıyla dağılımın tepesinde oturan olgusal bir hata, seçtiğiniz her k değerinde seçilecektir. Halüsinasyonu azaltmak bir örnekleme değil, bir temellendirme ve getirim (retrieval) meselesidir.

İlgili terimler

Daha fazla Temel Yapay Zeka terimi