- Ortalama oyun performansı insanüstü olan KataGo bile belirli durumlarda çöktü; düşmanca politika ise insanüstü ayarlarda bile %97’nin üzerinde kazanma oranı elde etti
- Saldırgan, genel olarak daha iyi Go oynamaktan ziyade erken pas ve döngüsel biçimde büyük taş gruplarının ihmal edilmesini tetikleyerek KataGo’nun değerlendirmesini bozdu
- Saldırı eğitimi için, KataGo’nun eğitim hesaplamasının %14’ünden azı kullanıldı; no-search KataGo’ya karşı %99’un üzerinde, 4096 visits’li KataGo’ya karşı %95,7~%97,3 ve 10⁷ visits’li KataGo’ya karşı bile %72 kazanma oranı gösterildi
- Aynı zafiyet, Leela Zero ve ELF OpenGo gibi diğer insanüstü Go yapay zekalarına da sıfır örnekli aktarım (zero-shot) ile taşındı; insan Go uzmanları da algoritmik yardım almadan stratejiyi öğrenip birçok botu yendi
- Az miktarda düşmanca eğitim sabit bir saldırganı engelledi, ancak ek ince ayarla yeniden aşıldı; yüksek ortalama performans tek başına en kötü durum dayanıklılığını garanti etmiyor
KataGo’ya yönelik düşmanca politika saldırısı
- Ortalama performansı hızla yükselen yapay zeka sistemlerinin en kötü durum performansı açısından kırılgan olabileceği, Go yapay zekası üzerinden doğrulandı
- Hedef alınan saldırı, makalenin yazıldığı sıradaki en güçlü açık Go yapay zekası olan KataGo idi
- KataGo, self-play ve AlphaZero tarzı öğrenme prosedürü kullanır
- Politika başlığı ve değer başlığı olan bir sinir ağı kullanır ve hamleleri Monte-Carlo Tree Search (MCTS) ile seçer
- En güncel ağlar 15.000 V100-equivalent GPU gününden fazla eğitildi
- İnsanüstü performansa sahip KataGo saldırıyla başarılı biçimde aşılabiliyorsa, bu daha geniş yapay zeka sistemlerinin kırılganlığına dair bir örnek olabilir
- Saldırgan yalnızca normal bir oyuncu gibi taş koyabilir veya pas geçebilir; özel oyun kuralı yetkileri yoktur
Tehdit modeli ve öğrenme yöntemi
- Saldırgan, kurban ajanının sinir ağını keyfi girdiler üzerinde değerlendirebilen bir gray-box erişime sahiptir
- Ağ ağırlıklarına doğrudan erişmez
- Kurban politikasının sabit olduğu varsayılır
- Ticari ya da açık kaynak Go yapay zekasını yerelde çalıştırabilen durumlar için doğal bir modeldir
- Amaç yalnızca daha güçlü bir Go yapay zekası üretmek değil, kurbanın belirli zayıflıklarını kullanan geçişsizliği (non-transitivity) ortaya koymaktır
- Düşmanca ajan KataGo’yu yener
- KataGo insan profesyonelleri yener
- İnsan amatörler düşmanca ajanı yener
- Eğitim, self-play yerine victim-play ile yürütülür
- Düşmanca ajan ile sabit kurban oyun oynar
- Düşmanca ajan yalnızca kendi sırasındaki verilerle eğitilir
- Araştırmacılar Adversarial MCTS (A-MCTS) yöntemini sundu
- Normal MCTS, rakibin hamlesini kendi politikasıyla modeller
- A-MCTS, kurbanın sırası geldiğinde hamleyi kurban ağını kullanarak modeller
- A-MCTS-S, kurbanın politika başlığından örnekleme yapar
- A-MCTS-S++, tahta simetrilerinin ortalamasını kullanır
- A-MCTS-R, kurbanın aramasını da özyinelemeli biçimde modeller ancak hesaplama maliyeti yüksektir
İki saldırı: pass-adversary ve cyclic-adversary
- pass-adversary, no-search KataGo’yu çok erken pas geçmeye kandıran bir saldırıdır
- 600 visits ile oynayıp Latest no-search KataGo’ya karşı %99,9 kazanma oranına ulaştı
- Eğitimde 20,4 V100 GPU günü kullanıldı; bu, Latest eğitim bütçesinin %0,13’üdür
- Tromp-Taylor kurallarında, düşmanca ajan skor olarak öndeyken KataGo’nun erken pas geçmesini tetikler
- Bu strateji insan amatörlere karşı da kaybeder
- no-search kurban üzerinde eğitilen pass-adversary, çok düşük arama kullanan kurbanlara kısmen aktarılabildi
- A-MCTS-R kullanıldığında Latest 8 visits’e karşı %88 kazanma oranı
- A-MCTS-S kullanıldığında aynı koşulda %15 kazanma oranı
- cyclic-adversary, pass savunması uygulanmış KataGo’yu yeniden hedef alarak elde edilen ikinci saldırıdır
- Kurbanın artık erken pas nedeniyle kaybetmemesi için pass-alive savunması uygulandıktan sonra yeniden eğitildi
- Latestdef no-search’e karşı 1048 oyunda 1048 galibiyet, yani %100 kazanma oranı gösterdi
- Savunmasız Latest no-search’e karşı da 1000 oyunda 1000 galibiyet aldı
- Eğitimde 2223,2 V100 GPU günü kullanıldı; bu, Latest eğitim hesaplamasının yaklaşık %14,0’ına denk geliyor
Arama kullanan insanüstü KataGo da aşılabiliyor
- cyclic-adversary, arama kullanan KataGo’ya karşı da yüksek kazanma oranı gösterdi
- Latestdef 4096 visits’e karşı 1052 oyun bazında %95,7 kazanma oranı
- Savunmasız Latest 4096 visits’e karşı 1000 oyun bazında %97,3 kazanma oranı
- Latest 10⁶ visits/hamle’ye karşı 50 oyun bazında %82 kazanma oranı
- Latest 10⁷ visits/hamle’ye karşı 50 oyun bazında %72 kazanma oranı
- 10⁷ visits seviyesi, yüksek performanslı tüketici donanımında bile tek hamle değerlendirmesinin 1 saatten uzun sürdüğü bir düzey olduğundan, birçok uygulamada pratik bir savunma sayılmıyor
- Kurbanın arama miktarı arttıkça düşmanca ajanın kazanma oranı azalıyor
- Arama, dayanıklılığı artıran bir araç olabilir
- Ancak yalnızca arama, tam dayanıklılık sağlamıyor
- Saldırgan tarafın araması 128~600 visits aralığında en iyi performansı gösterdi
- 600 visits’in üzerine çıkmak performansı artırmadı, hatta kötüleştirebildi
- A-MCTS-S++, daha ucuz olan A-MCTS-S’den daha iyi performans göstermedi
Döngüsel zafiyetin çalışma biçimi
- cyclic-adversary, KataGo’yu dairesel desenli büyük taş grupları oluşturmaya yönlendirir ve ardından bu grupları alarak skoru belirleyici biçimde tersine çevirir
- Kurban KataGo, oyunun büyük bölümünde kendisinin %99’dan fazla kazanacağını öngörür; ancak büyük grubun alınmasından hemen önce yenilme olasılığını fark eder
- Bazı oyunlarda ko savaşı sırasında kazanma oranı tahmini büyük dalgalanmalar gösterdikten sonra yenilgi kesinliğine yakınsar
- Düşmanca ajanın kendi tahmini daha yavaş değişir ve daha az kesin görünür
- Aktivasyon analizi, döngüsel konum ile ona çok benzeyen döngüsel olmayan konum arasındaki farkın belirli katmanlarda ortaya çıktığını gösterdi
- layer 25’te büyük bir fark görünmüyor
- layer 26’nın bazı kanallarında belirgin farklar ortaya çıkıyor
- Düşmanca eğitimli checkpoint cp580 ile Latest arasındaki fark da benzer bir örüntü gösteriyor; bu da ilgili kanalların döngüsel zafiyetle bağlantılı olabileceğini düşündürüyor
- Elle kodlanmış baseline saldırılar Latestdef üzerinde iyi çalışmadı
- Edge baseline, savunmasız Latest’e karşı siyah yerine beyaz oynadığında neredeyse yarıya yakın kazandı
- Bu, Latestdef’in Latest’ten daha dayanıklı olduğunu ve cyclic-adversary’nin görece daha sofistike bir exploit öğrendiğini gösteriyor
Savunma deneyleri ve sınırlar
- 2022 Aralık ortasında KataGo’nun resmî dağıtık eğitimine, cyclic exploit’in ilerlemekte olduğu konumlardan başlayan self-play oyunlarının %0,08’i dahil edildi
- Bu, normal oyun gücünü korurken döngüsel konumları anlama becerisini artırmayı amaçlayan zayıf bir düşmanca eğitim biçimidir
- Bu savunmadan sonra mevcut cyclic-adversary’nin performansı kademeli olarak düştü
- b60-s7702m 32 visits KataGo’ya karşı 50 oyunda 0 galibiyet
- b60-s7702m 1 visit’e karşı 2050 oyunda 119 galibiyet
- Ancak cyclic-adversary, düşmanca eğitim uygulanmış ağa karşı ek 1154,9 V100 GPU günü ince ayar aldıktan sonra saldırı gücünü kısmen geri kazandı
- b60-s7702m 4096 visits’e karşı 400 oyun bazında %47 kazanma oranı
- b60-s7702m 100,000 visits’e karşı 40 oyun bazında %17,5 kazanma oranı
- Kazanma biçimi hâlâ cyclic exploit’e dayanıyor, ancak biraz farklı bir uygulamayla
- Az miktarda düşmanca konum eğitimi sabit bir saldırganı durdurabiliyor, ancak bu savunma genelleşmedi
- Daha fazla düşmanca eğitimin KataGo exploit’ini hesaplama açısından uygulanamaz hâle getirmesi mümkün olabilir, ancak bunu doğrulamak için daha hassas scaling law’lara ihtiyaç var
Diğer Go yapay zekalarına ve insan oyunculara aktarım
- cyclic-adversary yalnızca KataGo üzerinde eğitildi, ancak diğer insanüstü Go yapay zekalarına da sıfır örnekli aktarım yaptı
- Leela Zero’ya karşı %6,1 kazanma oranı
- ELF OpenGo’ya karşı %3,5 kazanma oranı
- A-MCTS rakibi KataGo olarak modellediğinden, Leela ya da ELF’nin hamlelerini sürekli beklenmedik biçimde görmek zorunda kaldığı zor bir koşul söz konusu
- Makalenin yazarları arasındaki Go uzmanı, düşmanca ajanın oyun kayıtlarını inceleyip algoritmik yardım almadan saldırıyı öğrendi
- KGS Go sunucusunda, yazarlarla ilgisi olmayan üst düzey KataGo botlarına karşı %90’ın üzerinde kazanma oranı elde etti
- 9 taş handikap vererek de kazandı
- KataGo ve Leela Zero’nun ayrı ayrı 100k visits ile oynadığı koşullarda da kazandı
- Daha sonra başka insanlar da cyclic attack kullanarak KataGo, ELF OpenGo, FineArt, Leela Zero, Sai gibi birçok üst düzey Go yapay zekasını yendi
- Saldırgan, hedef modelin ağırlıkları, politika çıktıları veya çok sayıda oyun kaydı olmadan da aktarım gerçekleştirebildi
- Bu, açık kaynak sistemlerde öğrenilen saldırıların kapalı modellere de aktarılabileceğini düşündürüyor
Yeniden üretilebilirlik ve sonuç
- Kod, konteynerleştirilmiş çalışma ortamı ve çalıştırma talimatları GitHub’da açıklandı
- Örnek oyunlar goattack.far.ai adresinde sunuluyor
- KGS Go sunucusunda, cyclic-adversary’nin en güncel checkpoint’ini çalıştıran Adversary0 botu bir ay boyunca herkese açık tutuldu
- Ana sonuçlar çeşitli şekillerde yeniden üretildi
- KataGo geliştiricisi David Wu, passing attack ve cyclic attack zafiyetlerini bağımsız olarak doğruladı
- Bilgisayarlı Go topluluğundan birçok kişi cyclic zafiyetini doğruladı
- KGS botuna karşı sıradan oyunlarda cyclic zafiyetin ve acemi insan oyununun düşmanca ajanı yenmesi sonucu yeniden üretildi
- İnsanların cyclic attack kullanarak KataGo’yu ve çeşitli diğer Go yapay zekalarını yenmesi de yeniden üretildi
- İnsanüstü Go yapay zekasının başarısızlığı ilgi çekici bir örnek olsa da, benzer başarısızlıklar otomatik finansal alım satım ya da otonom araçlar gibi güvenlik açısından kritik sistemlerde yaşanırsa ciddi sonuçlar doğabilir
- Performans artışı tek başına yeterli dayanıklılık anlamına gelmez; sağlam öğrenme ve düşmanca savunma tekniklerine yatırım gerekir
1 yorum
Hacker News yorumları
Not olarak, bu Temmuz 2023 tarihli bir makale; Eylül 2024 tarihli savunma makalesi ise https://arxiv.org/abs/2406.12843
İlk bakışta çok etkileyici görünüyor; ancak Go ve Go yapay zekası hakkında biraz, satranç ve satranç yapay zekası hakkında ise epey bilgi sahibi olmama rağmen makaleyi anlamak oldukça zor
Ne yaptıklarını ve bunun nasıl işe yarayabileceğini açıklamak için yalnızca asgari çabayı göstermiş gibiler; açıklanmayan uzman terimleriyle ana mesajı perdeledikleri hissi var
Gizlenen fikrin aslında şaşırtıcı derecede basit olabileceği hissine kapılıyorum, ama tam olarak görünmüyor
Go’da benim ölü hâlde uzun süre yürümek dediğim durumların özellikle uzun sürdüğü bölümler var. 30. hamlede taş grubunuz çoktan ölmüş olabilir, ama rakibin o grubu fiilen yakalaması 150. hamleden sonra olabilir
Rakip 30. hamleden itibaren gerçeği biliyorsa ve ben bundan sonraki yüzlerce hamle boyunca yanlış yola yönlendiriliyorsam neredeyse kesin kaybederim
Bu adversarial yapay zeka AlphaGo/KataGo’yu böyle bir duruma kandırıyor ve avantajı hemen almak yerine KataGo’nun durumu yanlış anlamaya devam etmesini sağlamak için aldatmacayı sürdürmeye odaklanıyor. Yani en iyi hamle KataGo’nun yanılgısını fark etmesine neden olacaksa, ikinci en iyi hamleyi oynayıp KataGo’yu bug’lı durumda tutmak daha iyi demek
Adversarial eğitimde, yani KataGo bu kusuru öğrense bile kusur kalıyor ve nedeni açık değil
Bu döngüsel taş grubu bug’ı amatörlerin bile anlayabileceği kadar kolay görünüyor. Ben yaklaşık 10 kyu seviyesindeyim; satrançta 1500 Elo civarı emek düzeyine denk geldiğini tahmin ettiğim bir güç, yani biraz pratik yaptım ama özel bir şey değil
Bu yüzden insan olarak ben de 10 kyu seviyesinde biraz pratikle AlphaGo/KataGo’yu yenebilirmişim gibi görünüyor
Uzman terimlerinin de neredeyse her şey gibi bir fayda fonksiyonu var; amaç bilgiyi olabildiğince açık aktarmaksa, belirli bir kırılma noktasından sonra çıktı değeri tersine azalıyor gibi. Hedef farklıysa fayda fonksiyonu üstel olarak büyüyebilir tabii
Satrançta da bu tür kale pozisyonları denen sınır durumları var. İlk üçü “0.0”, dördüncüsü ise siyah kazanır
8/8/8/1Pk5/2Pn3p/5BbP/6P1/5K1R w - - 0 1konumunda beyaz kaleyi serbest bırakamaz1B4r1/1p6/pPp5/P1Pp1k2/3Pp3/4Pp1p/5P1P/5K2 b - - 0 1konumunda kale beyazın alanına giremezkqb5/1p6/1Pp5/p1Pp4/P2Pp1p1/K3PpPp/5P1B/R7 b - - 0 1konumunda kale h1’e, şah g1’e giderse vezir a6 üzerinden içeri giremez2nnkn2/2nnnn2/2nnnn2/8/8/8/3QQQ2/3QKQ2 w - - 0 1konumunda atlar blok gibi ilerler ve saldırı altındaki at iki kez korunurİlkinde Stockfish ve Lc0 ikisi de beyazı biraz daha iyi görüyor. İkinci ve üçüncüde siyahın kazandığını düşünüyorlar. Dördüncüyü Lc0 anlıyor, ama Stockfish anlamıyor
https://lichess.org/analysis/standard/8/8/8/1Pk5/2Pn3p/5BbP/...
https://lichess.org/analysis/fromPosition/1B4r1/1p6/pPp5/P1P...
https://lichess.org/analysis/fromPosition/kqb5/1p6/1Pp5/p1Pp...
https://lichess.org/analysis/fromPosition/2nnkn2/2nnnn2/2nnn...
Go’da tamamen amatör biriyle oynamak bazen zorlayıcı olabilir. Hamleleri çok öngörülemezdir ve şekiller normalden çok uzaktır. Çok tuhaf oyunlar bazen işe de yarayabilir
Ben Avrupa 4 dan’ım; zayıf bir oyuncu ne kadar sıra dışı hamle yaparsa yapsın tahtayı süpürürüm. Aynı şekilde benden güçlü bir oyuncuya karşı garip hamleler seçersem genellikle normalden daha hızlı ezilirim. Bu ancak iki haneli kyu seviyelerinde işe yarayabilir
Böylece oyun taktik savaşına dönüşür ve sonunda rakip kötü bir oyunsonuna girer. Üstelik karşısındaki kişi Magnus’tur
2022 tarihli bir makale olup 2023’te revize edilmiş; daha önce görüp unutmuş olabilirim. Oldukça ilginç ve bu yaklaşımın satranç motorlarına, en azından Leela tarzı motorlara karşı ne kadar işe yarayacağını merak ediyorum
Deep Blue’dan sonra bile satranç oyuncularının daha iyi bilgisayara karşı stratejiler öğrendiği dönemi hatırlatıyor. Go’nun durum uzayı çok daha büyük olduğu için böyle bilgisayara karşı stratejilerin çok daha fazla olması muhtemel
Bir anlamda değerlendirme fonksiyonuna aynı şekilde saldırıyorsunuz
Satrançta olduğu gibi daha fazla hesaplama gücü sonunda kazanacaktır; zaten bunun böyle olduğu görülmüş durumda. Elo’nun zorluğu değil, kazanma-kaybetmeyi ölçtüğünü hatırlamak gerek. İkisini karıştırmak muhakemeyi bozar
Bu saldırıyla ilgili 2022 sonundaki tartışma [1]’de var. Özellikle en yaygın kullanılan insanüstü Go yapay zekası gibi görünen KataGo’nun geliştiricisi hexahedron / lightvector’ın uzun uzun katıldığı bir tartışma içeriyor
Bağlantının başlığın ortasına verilmesinin nedeni, makalenin ilk sürümüne göre sonraki revizyonun daha ilginç olması
[1] https://forums.online-go.com/t/potential-rank-inflation-on-o...
Sofistike tuzaklar tasarlayabiliyorsanız, bu oyuna dair benzer düzeyde bilgiye de sahipsiniz gibi görünür; ayrıca çok yüksek becerili bir yapay zekanın adversarial stratejileri de örtük olarak içereceğini sanırdım. İlginç bir sonuç
Merdiven, en düşük kyu seviyesine ulaşmak isteyen hafif amatörlerin bile öğrenmesi gereken basit bir formdur
KataGo bu kusuru fark ediyor ve geleneksel kodla yazılmış açık bir merdiven çözücüsüne sahip. Sinir ağları merdivenleri asla çözemeyecekmiş gibi görünüyor. Derin sinir ağlarının bu kadar basit bir deseni neden yakalayamadığı açık değil
Bu yüzden bu yapay zekaların kaçırdığı daha derin bir desen daha varsa şaşırtıcı olmaz