1 puan yazan GN⁺ 2024-11-23 | 1 yorum | WhatsApp'ta paylaş
  • Çoğu LLM satranç oynayamazken yalnızca gpt-3.5-turbo-instruct modelinin özellikle güçlü görünmesi, prompt arayüzü değiştirildiğinde gpt-4o ve gpt-4o-mini modellerinin de belirgin biçimde iyileştiğini gösteren deneylerle kısmen açıklanıyor
  • OpenAI'nin gizlice bir satranç motoru çağırdığı hipotezi zayıf: aynı tahtada bile ulaşılan hamle sırasına göre farklı hamleler yapıyor, prompt değişikliklerine duyarlı ve performansı da bir motor seviyesinde değil, yaklaşık 1750 Elo düzeyinde kalıyor
  • Yalnızca üç kısa in-context örnek ile performans büyük ölçüde arttı; Stockfish'in 100 öz oyunu içinden seçilen örneklerle yapılan fine-tuning sonrasında da iyileşme doğrulandı
  • Buna karşılık mevcut yasal hamleleri vermek performansı ciddi biçimde düşürdü; tüm notasyonu tekrarlayıp ardından sonraki hamleyi ekleyen notasyon tekrarı (regurgitation) yöntemi, chat modelini completion modeli gibi davranmaya yaklaştırarak performansı artırdı
  • Nihai bileşim olan gpt-4o + regurgitation + examples, gpt-3.5-turbo-instruct karşısında 50 partide 10 galibiyet, 5 beraberlik ve 35 mağlubiyet aldı; beyazın avantajı hesaba katıldığında yaklaşık 1540 Elo olarak tahmin ediliyor ve gpt-3.5-turbo-instructın yaklaşık 1750 Elo seviyesine ulaşamıyor

Problem kurulumu: Neden yalnızca gpt-3.5-turbo-instruct satrancı iyi oynuyor?

  • Önceki gözlemin çıkış noktası, çoğu LLM'in satrancı çok kötü oynamasına karşın gpt-3.5-turbo-instructın ileri seviye amatör düzeyinde oynamasıydı
  • Bu model, 1 yıldan daha eski görece küçük bir model olmasına rağmen, satrançta daha yeni modellerden daha iyi görünüyor
  • Olası açıklamalar kabaca dört taneydi
    • Büyük base model satrancı iyi oynuyor olabilir ama instruction tuning'den geçmiş chat modellerinde bu yetenek korunmuyor olabilir
    • gpt-3.5-turbo-instruct daha fazla satranç verisiyle eğitilmiş olabilir
    • Belirli bir LLM mimarisinde özel bir unsur olabilir
    • Satranç verisinin toplam eğitim verisi içinde yeterince büyük bir paya sahip olması gerekebilir
  • Sonraki tartışma, OpenAI'nin satranç motoru çağırma olasılığına, LLM'in gerçekten satranç oynayıp oynamadığına ve base model ile chat model arasındaki farka daraldı

Gizlice satranç motoru kullanma hipotezi ikna edici değil

  • gpt-3.5-turbo-instructın satranç notasyonunu tanıyıp harici bir satranç motoru çağırdığı şüphesi pek olası görünmüyor
  • Gerekçeler birkaç başlığa ayrılıyor
    • OpenAI çalışanları böyle bir işlem yapılmadığını söylüyor
    • Satranç motorları aynı tahta durumunda hamle sırasından bağımsız olarak değerlendirme yapar, ancak gpt-3.5-turbo-instruct aynı tahtada bile ulaşılan hamle sırası farklıysa farklı hamleler yapıyor
    • Satranç amatörü ölçütünde iyi olsa da uzman ölçütünde zayıf ve satranç motorlarıyla karşılaştırıldığında çok düşük performans gösteriyor
    • Prompt değiştirildiğinde oyun tarzı ince biçimde değişiyor
    • Sonraki OpenAI modelleri varsayılan hâlleriyle çok daha kötü oynuyor, ancak uygun promptlarla iyi oynayabiliyor
  • Eğer hile söz konusu olsaydı, bunun dış motor çağrısı gibi görünmesini engelleyip LLM'in hamleyi kendisi seçiyormuş izlenimi verecek kadar çok karmaşık bir yöntem seçilmiş olurdu

LLM yalnızca ezberle oynuyor değil

  • gpt-3.5-turbo-instruct, oyunun ilerleyen bölümünde de yasa dışı hamleleri nadiren öneriyor
  • 1. e4 d5 2. exd5 Qxd5 3. Nc3 gibi bir dizgede son hamlenin yasal olup olmadığını anlamak için satranç kuralları ve durum takibi gerekiyor
  • Gerçek partilerde de gpt-3.5-turbo-instruct, tarihte hiç oluşmamış yeni tahta durumlarında da oldukça iyi oynuyor
  • Bu nedenle açılışları ezberleyip sonrasında rastgele oynadığı açıklaması doğru görünmüyor

Temel deney: completion modeli ile chat modeli arasındaki fark

  • gpt-3.5-turbo-instruct bir completion modeli olduğu için, sonraki hamle PGN biçimindeki metni devam ettirterek alınıyor
    • Örnek olarak [Event "Shamkir Chess"], oyuncu adları, Elo, sonuç ve 1. e4 e5 2. Nf3 Nc6 3. gibi notasyon veriliyor
  • gpt-4o-mini ve gpt-4o ise chat modelleri olduğundan, system prompt ve user prompt üzerinden yalnızca bir sonraki hamleyi standart cebirsel notasyonla vermeleri isteniyor
  • Stockfish level 1'e karşı her hamlede en fazla 0.01 saniye verilerek 50 partilik ortalama alındı ve oyun sonrasında her turun puanı centipawn cinsinden hesaplandı
    • pawn 100 puan kabul edildi
    • ±1500 galibiyet/mağlubiyete karşılık geliyor
  • Temel promptta gpt-3.5-turbo-instruct güçlü görünürken, gpt-4o ve gpt-4o-mini gibi chat modelleri zayıf kaldı

Prompt bileşimi deneyleri

  • User promptun en üstünde system promptun tekrar edilip edilmeyeceği ve oyuncu adı ile Elo gibi meta verilerin eklenip eklenmeyeceği farklı kombinasyonlarla denendi
  • gpt-4o-mini için büyük bir fark neredeyse görünmedi
  • gpt-4o için system prompt tekrarının biraz yardımcı olduğu, meta verinin ise biraz zararlı göründüğü izlendi; ancak bunun gürültü olma ihtimali de var
  • Sonraki deneylerde sadeleştirme için hem system prompt tekrarı hem de meta veri kapatıldı

Yalnızca üç örnekle performans büyük ölçüde artıyor

  • LLM'lere görev verirken sık kullanılan yöntemlerden biri olarak API üzerinden üç kısa girdi/çıktı örneği verildi
    • girdi 1. → çıktı e4
    • girdi 1. e4 → çıktı d5
    • girdi 1. e4 e5 2. Nf3 Nc6 3. → çıktı Bb5
  • Sadece bu üç örnekle sonuçlar çok daha iyi oldu
  • Daha fazla ya da farklı örneğin daha iyi olup olmayacağı denenmedi; çünkü her grafiği üretmek için çok sayıda sorgu gerekiyordu

Fine-tuning yardımcı oluyor ama örneklerle birleşimi kararsız

  • Hem gpt-4o-mini hem de gpt-4o üzerinde fine-tuning yapıldı
  • Veri üretim yöntemi şöyleydi
    • Stockfish en yüksek zorlukta kendi kendine 100 parti oynadı
    • Her oyundan rastgele bir hamle seçilerek eğitim örneği olarak kullanıldı
    • Ayrı olarak Stockfish'in 100 öz oyunu doğrulama verisi olarak kullanıldı
  • Fine-tuning tek başına performansı iyileştirdi
  • Ancak gpt-4onun ilk fine-tuning sonucu kötü göründüğünden, daha küçük bir step size ile yeniden çalıştırıldı ve bu nokta bir belirsizlik olarak kaldı
  • Örneklerle fine-tuning'i birleştirmek beklendiği kadar tutarlı biçimde iyi sonuç vermedi
    • Yalnızca fine-tuning faydalı
    • Yalnızca örnekler de faydalı
    • Fine-tuning sonrasına örnek eklemek neredeyse hiç etki etmiyor
    • Örneklerin bulunduğu durumda fine-tuning hatta zararlı sonuç verebiliyor

Yasal hamle listesini vermek performansı bozuyor

  • Model zaman zaman yasa dışı hamle verdiği için, mevcut yasal hamleler listesinin notasyonun önüne eklenmesi denendi
  • System prompt da yasal hamleler listesi ve kısmi notasyonu alacak şekilde değiştirildi
  • Sonuç çok kötüydü
    • Sadece kazanma oranı düşmedi, hatalar daha erken turlarda başladı
  • Bu yüzden sonrasında yasal hamle listesi kullanılmadı

Temel fikir: Tüm notasyonu tekrar ettirmek

  • Chat modelleri, special tokenlar ve instruction tuning sayesinde <|SYSTEM|>, <|USER|>, <|ASSISTANT|> gibi diyalog biçimlerinde çalışıyor
  • Base modeller ise metni devam ettiren completion modellerine daha yakın ve PGN notasyonu da bu biçime daha iyi uyuyor
  • OpenAI'nin gpt-4-base modeline doğrudan erişim yok ve gpt-4o da completion mode'da çağrılamıyor; bu yüzden doğrudan karşılaştırma yapılamıyor
  • Bunun yerine gpt-4onun completion modeli gibi davranması için, yalnızca sonraki hamleyi vermesi değil, tüm oyunu tekrar edip sonuna bir hamle daha eklemesi istendi
  • Örneğin girdi 1. e4 e5 2. ise, çıktının 1. e4 e5 2. Nf7 gibi olması talep edildi
  • Bu yöntem gpt-4o-mini ve gpt-4onun satranç performansını iyileştirdi
  • Tüm hamle sırasını tekrar ettirmek, modelin iyi bir hamle seçme olasılığının daha yüksek olduğu bağlamı kendi kendine kurmasına yardımcı oluyor
  • Bu sonuç, erişilemeyen gpt-4-base modeline completion mode'da erişilebilse onun da satrancı oldukça iyi oynayabileceğine dair bir dayanak sağlıyor

Notasyon tekrarı, örnekler ve fine-tuning kombinasyonu

  • Notasyon tekrarı yönteminde ayrıca yeniden fine-tuning deneyleri yapıldı
    • girdi, önceki gibi kısmi notasyondu
    • istenen çıktı ise giriş notasyonunun tamamının tekrar edilip sonuna sonraki hamlenin eklenmiş biçimiydi
  • Bu yöntemde yapılan fine-tuning'in biraz yardımcı olduğu görüldü
  • Üç örnek de notasyon tekrarı yöntemine göre yeniden kuruldu
    • girdi 1. → çıktı 1. e4
    • girdi 1. d4 → çıktı 1. d4 d5
    • girdi 1. e4 e5 2. Nf3 Nc6 3. → çıktı 1. e4 e5 2. Nf3 Nc6 3. Nf3
  • Az bilgi taşımalarına rağmen örnekler yine büyük etki gösterdi
  • Örneklerle fine-tuning birlikte kullanıldığında tuhaf desen tekrarlandı
    • Fine-tuning üzerine örnek eklemek yardımcı oluyor
    • Ancak yine de yalnızca örnek kullanılan durumdan daha kötü kalıyor

Deney sonuçları ve Elo tahmini

  • Sonuçlar üç kategoriye ayrıldı
    • İyi: notasyon tekrarı, örnekler, örneksiz fine-tuning
    • Belirsiz: meta veri, system prompt tekrarı, örneklerle birlikte kullanılan fine-tuning
    • Kötü: yasal hamle listesi sağlanması
  • Nihai bileşim, notasyon tekrarı ve örneklerin kullanıldığı; diğerlerinin kapatıldığı düzendi
  • gpt-4o + regurgitation + examples oldukça iyi olsa da gpt-3.5-turbo-instruct kadar güçlü değildi
  • İki model 50 parti oynadı ve tüm partilerde gpt-4o beyaz taşları aldı
gpt-4o sonucu Sayı
Galibiyet 10
Beraberlik 5
Mağlubiyet 35
  • Bu sonuç yaklaşık -191 Elo farkıyla uyumlu
  • Beyazın ilk hamle avantajının yaklaşık 35 Elo olduğu bilgisi hesaba katıldığında, gpt-4o + regurgitation + examples için yaklaşık 1750 - 191 - 35/2 ≈ 1540 Elo tahmini yapılıyor
  • Bu da orta seviye amatör düzeyi olarak değerlendiriliyor

Mevcut hipotez: veri ve arayüz birlikte etkili

  • Mevcut hipotez iki parçadan oluşuyor
    • OpenAI'nin base modelleri, açık modellerden daha fazla ya da daha iyi satranç oyun verisi ile eğitilmiş olabilir
    • Daha yeni OpenAI base modelleri completion mode'da satrancı iyi oynayabilir, ancak pratikte erişilebilen chat modelleri bunu yapamıyor olabilir
  • Açık modellerin hem base hem de chat sürümlerinin satrançta kötü olduğu görüldü; bu da mimari sınırlamadan çok veri farkına işaret ediyor olabilir
  • Bir makalenin A.2 bölümünde, GPT-4'ün PGN notasyonlu satranç oyunlarıyla eğitildiği ve yalnızca Elo 1800 üzeri oyuncuların oyunlarını içerecek şekilde filtreleme yapıldığı belirtiliyor
  • gpt-3.5-turbo-instructın aynı veriyi kullandığına dair açık bir doğrulama yok; ancak PGN notasyonuyla satranç oynayıp yaklaşık 1750 Elo ölçülmesi tesadüf gibi görünmüyor
  • Llama gibi açık modellerin eğitiminde ne kadar satranç verisi bulunduğu doğrulanamadı
  • Açık internetten çok sayıda oyun alınmış olabilir, ancak yüksek kaliteli oyunların büyük ölçekte seçildiği bir veritabanı daha iyi sonuç vermiş olabilir
  • Çok fazla düşük beceri düzeyli satranç verisi nedeniyle modelin düşük kaliteli hamleleri tahmin etmeye yatkın hâle gelmesi mümkün; ancak güçlü hamle dizilerinin olduğu konumlarda güçlü oyuncuların sonraki hamlesinin tahmin edilmesi gerektiğinden, bunun ana açıklama olmadığı düşünülüyor

Kalan belirsizlikler ve pratik izlenim

  • Eğer gpt-4o chat mode'da gpt-4-base completion mode'dan daha zayıfsa, sebebin chat interface, instruction tuning ya da ikisinin birlikte olup olmadığı bilinmiyor
  • gpt-4-basei chat mode gibi simüle etmek iyi sonuç verir mi, ya da gpt-4o completion mode'da çağrılabilse iyi oynar mı, deneyle sınanamıyor
  • gpt-4odan daha iyi davranış çıkarmanın başka yolları olması muhtemel
  • Prompt, örnekler ve fine-tuning için en iyi kombinasyonu bulmak çok zor
    • Arama uzayı büyük
    • Kolay bir soyutlama yok
    • LLM'ler öngörülmesi zor ve kırılgan
    • Deneyler yavaş ve maliyetli
  • Aynı nihai tarif gpt-4e uygulandığında satrancı iyi oynayamıyor
  • Bulunan kombinasyon gpt-4oya özgü olabilir; gpt-4 için farklı promptlar, daha fazla örnek ya da fine-tuning gerekebilir
  • Bu süreç, mühendislikten çok büyü formülü bulmaya daha yakın hissettiriyor; çünkü modellere göre hassasiyet çok yüksek

1 yorum

 
GN⁺ 2024-11-23
Hacker News yorumları
  • gpt-3.5-turbo-instruct’un gerçekten satrancı anlayıp anlamadığını görmek için, mat olmayan 1000 rastgele yasal pozisyonda bir sonraki hamleyi yapmasını istemek yeterli
    Bu pozisyonlar https://github.com/tromp/ChessPositionRanking ile üretilebilir; eğitim verilerinde görmüş olabileceği normal oyunlardan tamamen farklıdır ve çoğu zaman yasal hamle seçenekleri de çok sınırlıdır
    Bir sonraki hamlenin yasallığını test etmek için iyidir, ama genellikle taraflardan biri ezici biçimde üstün olduğundan hamlenin kalitesini ayırt etmek için daha az kullanışlıdır

    • Bir satranç canlı yayınında duyduğum ilginç bir nokta şu: insan süper büyükustalar bile mantıklı bir açılış-oyun ortası-oyun sonu akışından çıkmamış, aşırı tuhaf pozisyonları değerlendirmekte ya da çözmekte çok zorlanıyor
      Hikaru’nun bir pozisyona bakıp en başından itibaren “canlı yorum” yapar gibi o pozisyona nasıl gelindiğini göstermesi şaşırtıcıydı; ama aynı videoda, tuhaf rastgele satranç bulmacalarında bu yaklaşımın neredeyse hiç işe yaramadığını açıklıyordu
      Gerçek oyunlardan çıkan bulmacalar, rastgele üretilen bulmacalardan çok daha iyi ve en üst düzey insanlar için de daha anlamlı
    • Sistemin satrancı anladığı iddia edilirken, yazının aşağılarında 10 denemede bile yasal hamle alınamadığı için rastgele bir hamleyle değiştirildiğinin söylenmesi oldukça tuhaf
      Satrancı iyi anlayan biri, örneğin Elo 1800 seviyesinde biri, ilk denemede yasal hamle üretememeyi fiilen hiç yaşamaz
    • Bu noktada LLM’lerin genel anlamda söylenen akıl yürütmeyi başaramadığı çok açık görünüyor
      Gerçek akıl yürütmenin sembolik mantık ve soyutlama gerektirdiği söylenebilir; LLM’ler ise sonraki token tahminleyicileridir
    • Sadece o test bunu kanıtlamaya yeter mi? LLM yalnızca yasal hamle kümeleriyle eğitildiyse, gerçekten akıl yürütmeden de her taşın nasıl hareket edebileceğini işlevsel olarak öğrenmiş olabilir
      Örneğin filin her zaman yalnızca çapraz hareket ettiğini gördüğü için sadece bu hamleleri dikkate alabilir; ama yasal/yasadışı hamle kavramını çıkarsamış olmayabilir
    • Sorun, LLM’nin herhangi bir pozisyonda hamle yapmayı öğrenmesi değil; internet arşivlerinde genellikle yalnızca oyun kayıtlarının bulunması
      İçeride pozisyonu temsil eden bir şey oluşturabilir, ama kodlanmış bir satranç pozisyonu verildiğinde bu temsil otomatik olarak etkinleşmeyebilir
  • gpt-3.5-turbo-instruct’un satrancı “anladığı”, “akıl yürüttüğü” ve “gerçek mantık” yürüttüğü iddia ediliyorsa, yazıda sözü edilen ileri seviye amatör satranç oyuncuları arasında yasa dışı hamle yapan birini bulmalarını söylemek isterim
    Satrancı bilen biri, bunun neredeyse hiç yaşanmadığını doğrulayabilir
    Yasa dışı hamle yapılmış oyun bağlantıları olup olmadığını da merak ediyorum

    • Uzman seviyesinde bir satranç oyuncusuyum; benim seviyeme yakın birkaç kişinin çevrimdışı klasik zaman kontrollü oyunlarda yasa dışı hamle yaptığını gördüm
      Benden çok daha yüksek seviyedeki yayıncıların da arayüzün hamleyi yasa dışı olduğu için reddettiğini fark edene kadar tekrar tekrar yasa dışı hamle denediklerini gördüm
    • “Satrancı bilen kişi yasa dışı hamle yapmaz” ifadesi biraz hatalı
      YouTube’da sadece “GM illegal moves” diye aratınca bile büyükustaların yasa dışı hamle yaptığı yeterince örnek derleme olarak çıkıyor
      Örnek: https://www.youtube.com/watch?v=m5WVJu154F0 — Vidit vs Hikaru örneği özellikle çarpıcı; Vidit kendi şahıyla Hikaru’nun şahına saldırıyor
    • Sorun şu ki LLM araştırmacıları, LLM’lerin içinde gerçekte nasıl çalıştığını inceleme meselesinden neredeyse vazgeçmiş durumda
      LLM bir kara kutu olduğu sürece, kuralları izleyerek akıl yürütüp yasal hamleyi mi anladığını, yoksa yalnızca çok fazla yasal hamle verisi öğrenip yasal hamle üretmeyi mi öğrendiğini bilemeyiz
      Gerçeğin hangisi olduğunu iddia edebilirsiniz, ama LLM’nin ne “düşündüğünü” gerçekten anlamanın hiçbir yolu yok
    • LLM yalnızca hamle dizisini alıp pozisyonu almıyorsa, fiilen körleme satranç oynuyor demektir
      Körleme satrançta asla yasa dışı hamle yapmamak için epey iyi olmak gerekir
    • Bu başlıktaki tartışma şaşırtıcı
      İnsanlar, hatta kendi alanlarında tanınmış uzmanlar bile çok hata yapar; bazen de kendi uzmanlık alanlarında çok pahalı ve geriye dönüp bakınca bariz görünen hatalar yaparlar
      Ama insan aptallıklarıyla dolu bir derlem üzerinde eğitilmiş bir LLM satrançta yasa dışı hamle yapınca beyin hemen “Ben satrançta yasa dışı hamle yapmıyorum; bilgisayar bunu yapıyorsa nasıl satranç oynuyor olabilir?” diye tepki veriyor
      En azından üstbilişsel önyargı ve temel yükleme hatasının kusursuz bir örneği gibi görünüyor
  • Bu yazıda da önceki yazıyla aynı sorun var. Yazar yasa dışı hamle sıklığına dair hiç veri sunmuyor
    Bu yüzden anlamlı bir sonuca varılamıyor
    Bu, LLM’in uzman bir doktor olduğunu iddia edip, hatalı tıbbi tavsiye verdiği tüm vakaları veriden ayıklamaya benziyor

    • Bunun çok merkezi bir nokta olduğunu düşünmüyorum
      Yasa dışı hamle denemelerinin sayısı yaklaşımlar arasında anlamlı biçimde farklı olsaydı ve özellikle bu fark yasa dışı hamleler çıkarıldıktan sonraki performansla korele olmasaydı ilginç olurdu; ama yazının sonucunu baştan aşağı sarsmaz
      Yasal hamle kümesinden rastgele seçim yapmak gerçekten berbat bir satranç oyuncusu üretir; dolayısıyla LLM çıktısından örnekleme yapıldığında çok daha iyi oynuyorsa, LLM’in bir şey kattığı açıktır
      Yasa dışı hamle denemelerinin hepsini yenilgi saymak gerektiğini söyleyip LLM’in tek başına yeteneğinin tanımı üzerine tartışmak, asıl noktadan uzaklaşıyormuş gibi geliyor
    • Yasa dışı satranç hamlelerini hesaplamalı olarak tespit etmek trivial olduğundan, hatalı tıbbi tavsiyeleri ayıklamakla hiç aynı şey değil
    • Hatalı tıbbi tavsiyeleri otomatik olarak kaldıran bir script yazabiliyorsanız, benzetme doğru olabilir
      O zaman gerçekten de “LLM+script” uzman doktor haline gelmiş olurdu; ama bu satrançtaki yasa dışı hamleler için mümkün olsa da tıbbi tavsiye değerlendirmesi için elbette mümkün değil
    • 3-turbo-instruct’ta 8205 hamle içinde yasa dışı hamle sayısı kabaca 5 veya daha az
      Burada yok ama turbo instruct daha önce değerlendirilmişti
      https://github.com/adamkarvonen/chess_gpt_eval
    • Keskin bir gözlem. Benzer şekilde Andrew Ng ve Stanford University ekibi de Nature Medicine’da yayımlanan, kardiyolog düzeyiyle ilgili ünlü makalelerinde aynı eğitim-test oranı aşırı uyumu numarasını yaptı
      Eğitim oranı %99’un üzerinde, test ise %1’in altında olduğu için yapay zeka doğrulamasının temel şartlarını bile geçmiyor
      Çoğu yapay zeka konferansında ayakta kalması zor bir makale olurdu; ama etki faktörü çok yüksek Nature Medicine’da yayımlandı ve tıbbi yapay zeka alanında çokça atıf aldı
      https://www.nature.com/articles/s41591-018-0268-3
  • “Birçok açıdan mühendislikten çok bir büyü sözünü bulma işine benziyor” ifadesi hâlâ genel olarak LLM’lere dair izlenimimle aynı
    Çalışıyor olması şaşırtıcı, ama umarım bir sonraki teknolojik yenilik her seferinde kendimizi kötü bir bilimkurgu filminin içinde hissettirmez

  • “Herkes yanıldı” denemez bence
    Bu noktayı söyleyen tek kişi ben de değildim; bu teorinin listede olmamasına şaşırdım, çünkü 7 gün önce de şöyle yazmıştım: https://news.ycombinator.com/item?id=42145710
    “Herkese açık bir benchmark haline gelen her şeyin eğitim sırasında özel olarak hedeflendiğini varsaymak gerekir.”
    Bu, yazıda değinilip çürütülen “hile/LLM çıktısını ikame etme” teorisinden farklı
    Devam yazısı bu tahmini güçlendiriyor. OpenAI, temel modeli açık modellerden daha fazla ve daha iyi satranç oyunu verisiyle eğitti; ayrıca bir makalenin A.2 bölümünde OpenAI yazarları, GPT-4’ün Elo 1800 üzeri oyuncuların PGN notasyonlu satranç oyunlarıyla eğitildiğini belirtiyor
    OpenAI’ın, insanların gerçekten denemek isteyebileceği görevlerin verileriyle eğitim verisini takviye etmesi tamamen mantıklı
    Bu etik dışı da değil. Hiçbir veri kümesi gerçekten “tarafsız” olmadığından, zaten bir seçim yapmak gerekiyorsa potansiyel olarak yararlı yanıtları iyi verecek şekilde eğitmemek için bir neden yok

    • Matematik ve kod öğrenmenin mantıksal düşünmenin başka yönlerini de iyileştirmesi gibi, satrancı iyi oynayacak şekilde eğitmenin genel zekaya yardımcı olup olmadığını görmek için modeli eğitmiş olabileceklerini önermiştim
      Ne de olsa OpenAI’ın oyun yapay zekası konusunda çok deneyimi var
      https://news.ycombinator.com/item?id=42145215
    • Bu biraz paranoyakça görünüyor
      Bir blog yazarının tesadüfen 1800 Elo düzeyinde acemi bir performans keşfedip tweet atmasını umarak, devasa veri kümeleriyle aşırı pahalı büyük LLM’ler eğitilmez
      Satranç, Goodhart hedefi olacak kadar standart bir LLM benchmark’ı da değil; OpenAI da genel olarak kestirme yollardan veya hileden çok problemleri doğru yöntemle çözmeye çalıştı
      GPT serisi standart benchmark’lara veya karşı örneklere kolayca aşırı uyum sağlayabilirdi ve bunun tanıtım değeri de çok daha büyük olurdu; buna rağmen ciddi biçimde aşırı uyum göstermedi. Örneğin “çilek problemi” gibi bir şeye eğitmek çok kolay olurdu
      Buna karşılık bazı diğer LLM sağlayıcılarının puanları ezberlemeyi önleme makalesinde çok daha fazla düşüyor
      Ayrıca söz konusu veri kümesini anan makalenin kendisinde açık bir araştırma amacı var; satranç, oracle kullanılabildiği için LLM’lerin denetimini ve dünya modellemesini analiz etmeye yarayan bir model organizma olarak ilgi çekiyor
      DeepMind’ın süre sıkışmalı satranç LLM makalesi de Gemini’ın satranç becerisini olduğundan iyi gösterip GCP pazarlamasında kullanmaya yönelik sinsi bir planın parçası değil
    • OpenAI’ın eğitim hedefini değiştirdiği açıklaması en basit ve en mantıklı olanı
      Başta satrancın havalı olduğunu düşünmüş olabilirler; yarın da Go ya da şiir yazma becerisinin havalı olduğunu düşünebilirler
    • Bu yaklaşımın daha pratik başka alanlarda da kullanıldığını görmek isterdim
      Alan fark etmeksizin eğitim verisine “amatör” içerikten çok uzman içeriği koymak gibi
  • Promptta “oyunu kazanmaya çalış” denmiyor ama sonuç, LLM’in ne kadar kazandığıyla ölçülüyor.
    Bu, “Sen bir satranç büyükustasısın” promptunun içinde örtük olarak var mı?
    LLM eğitiminde bir yerlerde “oyunsa her zaman kazanmaya çalışılır” diye bir örüntü mü var?
    Sadece kazanması söylenirse kazanma oranı artabilir mi?

    • Niyete fazla ağırlık veriliyor gibi. LLM’in niyeti yok; en olası çıktıyı üretmek üzere eğitilmiş matematiksel bir model.
      Satranç partisi örnekleri ve açıklamalarında neredeyse her zaman oyuncular kazanmaya çalıştığı için, kazandıran hamleyi oynamak yalnızca en mantıklı çıktıdır.
      Bu yüzden promptta açıkça kazanması söylense bile performansın çok artacağını sanmıyorum.
      Tersine, kaybettiren ya da kötü hamle yapması söylenirse ne olacağı ilginç. Bunu etkili biçimde yapabiliyor mu ve hamleler hâlâ çoğunlukla yasal mı; bunlara bakmak, daha önce gördüğü kavramlara ne kadar dayandığını daha iyi gösterebilir.
    • “Sen bir satranç büyükustasısın” promptunda bunun kesinlikle örtük olarak yer aldığını düşünüyorum.
      O cümle, mümkün olan en iyi hamle token’larını üretme olasılığını artıracaktır.
    • Prompta eklense de muhtemelen süsten pek öteye geçmez.
      Modelin satranç dizisi üretme becerisi, eğitim verisindeki parti havuzunda bulunan uzmanlıkla sınırlı.
      Bazı oyuncuların bilerek kaybetmeye çalıştığı partiler karışmış olsa bile bu muhtemelen çok azdır; ayrıca satranç partilerinde oyuncu niyeti açıklama olarak yazılmadığından, kazan ya da kaybet diye promptlamak LLM’in bunu ayırt edip yakalamasını sağlayamaz.
      LLM’e bilerek kaybetmesini söyleyerek bunu görebilirsiniz. Benim deneyimime göre ChatGPT kendini Scholar’s Mate’e düşecek şekilde ayarlamaya çalışıyor; ama rakip bunu kabul etmezse, örtük olarak kazanmaya çalışıyormuş gibi rakibin savunmasız taşlarını almaya başlıyor.
      “Neden?” diye sorulunca da her zamanki gibi sonradan gerekçelendirme sunuyor.
    • Kod üretimi isterken de sadece “Sen bir Python uzmanısın ve işte kod” demekle kalmayıp istenen sonuç yönünü söylediğinizde genelde daha iyi sonuç çıkar.
      Bu yüzden “ve kazan” ya da “siyah kazanır” gibi bir ifade olmaması beni şaşırttı.
    • Üstelik promptta “en iyi hamle” de değil, “sonraki hamleyi seç” deniyor.
      Pekiştirmeli öğrenme yüzünden LLM, insan oyunu kaybedip kötü hissetmesin diye bunu özellikle kaçınıyorsa epey komik olurdu.
  • Promptu iyileştirmeleri iyi olmuş, ama hâlâ çok büyük iki iyileştirme olasılığını atlıyorlar.
    Birincisi, hamle önermeden önce mevcut tahta konumunu ve ileriye dönük planını açıklatmak. Bu, modelin gerçekten daha fazla düşünmesini sağlar; o1’e benzer ama burada daha odaklı bir işlemeyi garanti edebilir.
    İkincisi, her adımda gerçekten bir ASCII tahta çizdirmek. Tahta+hamle biçimi, 20 hamleyi listelemekten daha kararlı işlenebilir ve yasal hamle sayısını artırabilir.

    • ASCII tahta çizdirmenin büyük fark yaratacağını sanmıyorum.
      ASCII art gibi iki boyutlu “grafikler” dil modellerine yabancı; model metni, satır sonları dahil bir token akışı olarak algıladığı için satırlar arasındaki “dikey” ilişki insanlara göründüğü kadar açık değildir.
      Bağlam penceresinde bir tahta diyagramı olsa bile, modelin partiyi akıl yürütmesine pek yardımcı olmama olasılığı yüksek.
      Bunun yerine “c5’te siyah at” gibi her taşın konumunu düz metinle listeletmek, konum farkındalığını güçlendirmek için daha uygun olabilir.
      1. madde, başkalarının zaten söylediği nedenlerden dolayı yardımcı olacak gibi görünmüyor.
      2. madde kesinlikle denemeye değer; ayrıca modele göre işe yarayan başka varyasyonlar da var.
        Anthropic modellerinde dokümantasyon, girdinin önemli kısımlarını XML gösterimiyle etiketleyip sınıflandırmayı öneriyor. Bu tür yumuşak bir yapı Claude model sonuçlarını iyileştiriyor gibi görünüyor ve muhtemelen model bunu tanıyacak şekilde özel olarak eğitilmiştir.
        Referans: https://docs.anthropic.com/en/docs/build-with-claude/prompt-...
        Bir Anthropic modeli için son prompt şöyle olabilir: “Bir satranç büyükustasısın. Etiketler içindeki tamamlanmamış partiye bak, tüm partiyi tekrar et, ardından standart cebirsel gösterimle tek bir yeni hamle ver ve yeni notasyonu vermeden önce etiket bloğu içinde akıl yürütmeni açıkla.”
        Bu tür bir prompt, Anthropic modellerinde belirgin iyileştirme sağlayacak şekilde tasarlanmış.
        İronik biçimde, Claude 3.5 Sonnet’i aylarca yoğun kullandıktan sonra bunu ancak birkaç hafta önce keşfettim. RTFM hâlâ faydalı bir beceri.
        OpenAI modellerinde de benzer şekilde basit ama pek bilinmeyen affordance’lar olabilir.
    • Düşünce zinciri birçok problemde yardımcı olur, ama GPT’nin satranç performansını aksine ciddi biçimde düşürür.
      1,5 yıl önceki satranç deneylerimde tüm hamle dizisini tekrar etme hilesi, ince ayar olmadan en iyi teknikti.
    • Bu ifade eğitim verisinde görece nadir olduğu için yanıtı iyileştirmekten çok kötüleştirme olasılığı yüksek.
      Sonucu görmek isterim, ama iyileşirse epey şaşırırım.
    • Şimdiye kadarki tüm hamleler tekrar ettirildiğinde görülen iyileşmenin, LLM’e düşünmesi için daha fazla zaman ve alan verilmesinden kaynaklandığını düşünüyorum.
      Başka yollarla da daha fazla zaman ve alan verilirse performansın daha da iyileşebileceği hipotezi var.
      Örneğin mevcut tahta konumunu gösterip konum analizi, temel zayıflıklar ve güçlü yönler listesi, olası stratejiler listesi, bunlardan bir strateji seçimi ve son olarak hamle seçimi yaptırmak gibi.
      Yani hamleyi doğrudan tükürtmek yerine gerçekten düşündürmek. Burada örnekler kilit nokta olacaktır.
      Bu fikirlerin ReAct makalesi ve düşünce zinciri makalesinde iyi çalıştığı gösterildi; buna, N kez tekrarlayıp çoğunluk cevabı çıktığında durma yöntemi de eklenebilir. Bu da düşünce zinciri öz-tutarlılığı makalesinden alınmış bir fikir.
  • “İnce ayar yardımcı olur ve örnekler de yardımcı olur; ama ince ayarı gereksiz kılan şey örneklerdir, tersi değil” kısmı çok ilginç.
    Bu özel örnekte, sadece örnek sağlamak ince ayarla eşdeğer.
    Benim için büyük bir keşif; bundan sonra örnekleri daha sık kullanmayı düşünüyorum.

    • Sezgisel olarak çok doğru geliyor.
      Nedenini açıklamak zor, ama ince ayarın hep abartıldığına dair bir sezgim vardı.
      Bir nedeni, örneklerin “tam orada” olması ve ince ayar yapılmış nöronlara kıyasla örtük olarak çok daha yüksek ağırlık alması olabilir.
    • Örnek sağlamanın ince ayardan daha yararlı olduğu içgörüsüne katılıyorum.
      Bu oyuncak örnekte çok önemli değil, ama girdide sağlanan her örneğin, ince ayara kıyasla tahmin süresini ve maliyetini artırdığını unutmamak gerekir.
  • Ticari LLM’lerle karanlıkta el yordamıyla yapılan türden deneyleri artık bırakmak gerekiyor
    Bu meselenin temeline inmek için LLM’i yalnızca satranç oyunlarıyla eğitmeyi denemek ilginç olurdu. Stockfish’i kendi kendine oynatarak sonsuz miktarda sentetik veri üretilebilir; ayrıca satranç yorumları ve “tahtada kaç piyon var?”, “kalem nerede?”, “tahtayı çiz” gibi satranç diyalogu örnekleri biraz karıştırılarak modelin tahta temsiline sahip olup olmadığı gösterilebilir
    “Ortaya çıkan özelliklerin” ya da genel dil yeteneğinin, hatta yetenekliymiş gibi yapma becerisinin satranç oynamak için gerekli olduğuna inanmıyorum. Satrançta iyi olmak başka konularda da zeki olmak anlamına gelmez; tersi de geçerlidir
    Böyle bir deney benim yanıldığımı da kanıtlayabilir
    Yaklaşık bir hafta önce çıkan makale https://arxiv.org/pdf/2411.06655 ince ayarlı Llama ile iyi sonuçlar elde ediyor gibi görünüyor
    Satranç yorumu becerisini ele alan şu makaleyi de beğeniyorum: https://arxiv.org/abs/2410.20811

    • Uzman satranç politikasının bir sonraki hamlesini tahmin etmek, iyi çalışılmış taklit öğrenmesinden ibaret
      Kalan ödülü ekleyerek ağın iyi ve kötü oyunlarda hangi hamlelerin geldiğini öğrenmesini de sağlayabilirsiniz; bu da Decision Transformer gibi çevrimdışı pekiştirmeli öğrenme çerçevesine dönüşür
      Satranç becerisinin genel LLM’ler için tamamen yararsız olduğunu ve bir ortaya çıkış olgusu olmadığını; yalnızca bu havalı numara uğruna gradyan bant genişliği ve parametre uzayı tükettiğini düşünüyorum
      Satranç için özel olarak eğitilmemiş LLM’lerin satrancı iyi oynayamaması bunu açıkça gösteriyor
  • Satranç hamlesi gösterimine optimize edilmiş bir tokenizer oluşturup Stockfish oyunlarıyla bir LLM’i sıfırdan eğitmek ilginç olabilir
    Özel tokenizer kullanılırsa aynı model boyutunda kalite artacaktır
    Kodlama ve kod çözme için çok sayıda katmanı boşa harcamak gerekmez; “doğal” gizil temsil de daha sezgisel olabilir