Dil Modellerinin Sayılarla Sorunu

539 kelime3 dk okuma

Dil modelleri sayıları karakter değil parça (token) olarak görür ve rakamların sırasını zayıf bir konum bilgisiyle takip eder; bu yüzden uzun sayıları, karşılaştırmaları ve taşımalı işlemleri sık karıştırır. Model sayıya “anlam yüklemez”, biçimini ezberler.

Parçalanma: sayı neden tek bir birim değil

Bir dil modeli metni karakterlerle değil, sözlüğündeki parçalarla okur. “1.284.907” gibi bir sayı, modelin sözlüğünde tek bir kayda karşılık gelmez; birkaç parçaya bölünür ve her parça kendi başına bir sembol gibi davranır.

Bu bölünme, sayının değeriyle biçimi arasındaki bağı koparır. Model “284” parçasını görmüş olabilir, ama bu parçanın hangi basamak mertebesinde durduğunu bilmez. Yani sayıyı okumak yerine, parçaların geçmişteki eşlik ettiği cevapları hatırlar.

Küçük sayılar daha az bölündüğü için daha başarılıdır. Model, yüzlerce kez gördüğü “42” ile nadir gördüğü “748.391” arasında tamamen farklı bir deneyim yaşar; biri neredeyse bir kelime gibidir, diğeri anlamsız bir parça dizisidir.

Konum bilgisi neden yetersiz kalıyor

Sayı işlemleri pozisyon ister: hangi rakamın birler, hangi rakamın binler basamağında olduğunu takip etmek gerekir. Modeller konumu, diziye eklenen zayıf bir sinyalle öğrenir; bu sinyal uzun dizilerde ve nadir kombinasyonlarda çözülür.

Taşıma bu yüzden en zor kısmıdır. Bir işlemi kâğıt üzerinde yaparken taşıdığımız rakam, modelde “bir sonraki adımda hangi parçanın geleceği” tahminine dönüşür. Bu tahmin, gördüğü örneklerin istatistiğine dayanır; kurala değil.

Sonuç tuhaf ama tutarlıdır: model doğru adımları atlayıp yanlış sonuca ulaşabilir, ya da sonucu doğru tahmin edip ara adımları uydurabilir. Doğruluk ile muhakeme, sayı işlerinde birbirinden bağımsız iki şeydir.

Karşılaştırma neden bu kadar kırılgan

“69 mu büyük, 96 mı” sorusu bir insan için çocuk oyunudur; bir model için sözlükte iki parçanın hangi bağlamlarda birlikte görüldüğü sorusudur. Rakamlar yer değiştirdiğinde cevap değişmeyebilir, çünkü model biçimi değil kalıbı eşleştirir.

Bu kırılganlık gerçek dünyada pahalıdır. Bir fiyattaki iki basamağın yer değiştirmesi, bir kıyaslamanın yönünü tersine çevirir. Modelin “pahalı ucuz” muhakemesi, rakamların değerinden değil, rakamların ona nasıl göründüğünden gelir.

Çözümler: mimari değil, temsilde

En etkili düzeltmeler eğitimi değil girdiyi değiştirir. Sayıyı binlik ayraçla yazmak, basamakları tek tek ayırmak, hatta kelimeye çevirmek (“yedi yüz kırk sekiz bin”) modeli daha az bölen bir temsile taşır ve hata oranı belirgin biçimde düşer.

İkinci yol, hesabı modele bırakmamaktır. Sağlam sistemler dört işlemi bir çalıştırıcıya devreder, model yalnızca hangi işlemin yapılacağına karar verir. Böylece modelin biçimsel zayıflığı, sistemin doğruluğunu belirlemez.

Üçüncü yol eğitimdir: sayısal veriyi yapay biçimde zenginleştirmek. Bu işe yarar, ancak pahalıdır ve nadir görülen mertebelere genelleme zayıf kalır. Model, ezberlediği aralıkta iyi, dışında tehlikeli derecede kendinden emindir.

Ne zaman güvenilmez

Para, ölçü, tarih, kimlik numarası ve envanter kodu. Hepsi uzun, hepsi biçimi bozulmaya açık, hepsinde tek bir rakam hatası sonucu anlamsız kılar. Model bu alanlarda “yaklaşık doğru” üretir; yaklaşık doğruluğun hiçbir değeri olmadığı yerler vardır.

Kural basit: bir sayının tek bir rakamı sonucu tamamen değiştiriyorsa, o hesap modele bırakılmaz. Model sayıyı okuyabilir, yorumlayabilir, açıklayabilir; üretirken doğrulanması gerekir.

Sık sorulan sorular

Modeller gerçekten sayıları anlıyor mu?

Anladıkları şey biçimdir. Küçük ve sık görülen sayılarda doğru davranır, çünkü kalıbı ezberlemiştir. Nadir veya uzun sayılarda ezber devre dışı kalır ve tahmin devreye girer.

Neden basamak sayısı arttıkça hata artıyor?

Her ek basamak, parça sayısı ve olası kombinasyon anlamına gelir; model bu kombinasyonların çoğunu eğitimde hiç görmemiştir. Hata, görülmemiş olasılığın doğal sonucudur.

Düşünme modu açmak sorunu çözüyor mu?

Kısmen. Uzun muhakeme adımları bölme işlemini takip etmeye zorladığı için hatayı azaltır, ama sonucu yine kendi tahmin eder. Kesinlik ancak bir hesap aracına devredilirse sağlanır.

Kullanıcı olarak ne yapabilirim?

Sayıları ayraçlı veya kelime olarak verin, ondalık ve para birimlerini açıkça yazın, kritik hesapları modelden istemek yerine doğrulatın. En sağlam yöntem, modele hesabı değil kontrol listesi yaptırmaktır.

Kaynakça

  1. Sayısal akıl yürütme ve parçalama hatalarıarXiv
  2. Dil modellerinde aritmetik yeterliliğiMIT Technology Review
  3. Parçalama ve sözlük yapısı üzerine analizGoogle Research

Bu konuyla ilgili haberler