Olasılıksal Anlaşma Kontrolü, daha küçük bir "taslak" modelin ürettiği jetonların daha büyük bir taban modelinin çıkış dağılımı ile hizalanmasını sağlayarak spekülatif kod çözmede önemli bir rol oynar. Bu işlem, spekülatif kod çözme ile sunulan verimlilik kazanımlarından yararlanırken, oluşturulan metnin kalitesini ve tutarlılığını korumak için gereklidir.
Spekülatif kod çözmeye genel bakış
Spekülatif kod çözme, sonraki birkaç jetonu bir sırada tahmin etmek için genellikle spekülatör veya taslak model olarak adlandırılan daha küçük bir model kullanmayı içerir. Bu tahminler daha sonra temel modelin dağılımına göre makul olduklarından emin olmak için daha büyük, daha doğru bir modelin (temel model) çıktısına karşı doğrulanır [1] [4]. Bu doğrulama adımı, olasılıksal anlaşma kontrolünün devreye girdiği yerdir.
Olasılıksal Anlaşma Kontrolü
1. Doğrulama işlemi: Taslak model bir jeton oluşturduktan sonra, bir sonraki belirteci tahmin etmek için aynı giriş taban modeline beslenir. Taslak model tarafından üretilen jeton olasılığı, temel model tarafından atanan olasılıkla karşılaştırılır. Taslak modelin jetonunun temel modelin atanan olasılığından daha az veya daha düşük bir olasılığı varsa, kabul edilir; Aksi takdirde reddedilir [1].
2. Olasılıksal Hizalama: Amaç, taslak modelin çıktılarının temel modelin dağılımı ile uyumlu olmasını sağlamaktır. Bu hizalama çok önemlidir, çünkü temel model tarafından kabul edilmesi muhtemel jetonların üretilmesine ve böylece çıkarım sürecini hızlandırırken çıktının kalitesini korumak için spekülatif kod çözmeye izin verir [1] [4].
3. Verimlilik ve kalite dengesi: Olasılıksal anlaşma kontrolü, verimliliğin ve kalitenin dengelenmesine yardımcı olur. Temel modele göre muhtemel belirteçleri kabul ederek, spekülatif kod çözme, çıkış kalitesinden ödün vermeden paralel olarak birden fazla jeton üretebilir. Bu yaklaşım, jeton üreten geleneksel otoregresif modellere kıyasla gecikmeyi önemli ölçüde azaltır [4] [5].
4. Farklı senaryolara uyum: Çok örnek çıkarım senaryolarında, olasılıksal anlaşma kontrolü, paralel üretim yollarında fikir birliğinden yararlanacak şekilde uyarlanabilir. Yapısal kalıpları analiz ederek ve konsensüs belirteç dizilerini toplayarak, spekülatif kod çözme, harici modeller veya veritabanları gerektirmeden taslak kabul oranlarını iyileştirebilir ve gecikmeyi azaltabilir [2].
Çözüm
Özetle, olasılıksal anlaşma kontrolü, spekülatif kod çözmenin hayati bir bileşenidir ve paralel işlemeden elde edilen verimlilik kazanımlarının üretilen metnin kalitesinden ödün vermemesini sağlar. Taslak model çıktılarının temel modelin dağılımı ile hizalanmasını doğrulayarak, spekülatif kod çözme, çıkış kalitesini korurken önemli hız iyileştirmeleri sağlayabilir.
Alıntılar:
[1] https://blog.codingconfessions.com/p/a-sective-survey-of-speculative-decoding
[2] https://arxiv.org/html/2503.05330v1
[3] https://arxiv.org/html/2412.10418v2
[4] https://www.linkedin.com/posts/maxbuckley_what-is-speculative-decoding-peculative-activity-728642287185643776-sngb
[5] https://mlops.substack.com/p/speculative-decoding-for-llm
[6] https://openreview.net/pdf?id=wsqpnemvlu
[7] https://philkrav.com/posts/speculative/
[8] https://www.reddit.com/r/localllamama/comments/1iu8f7s/speculative_decoding_can_identify_broken_quants/