1 poin oleh GN⁺ 2024-12-25 | 1 komentar | Bagikan ke WhatsApp
  • KataGo, yang performa rata-rata permainannya sudah melampaui manusia, tetap runtuh dalam situasi tertentu, dan kebijakan adversarial mencatat tingkat kemenangan lebih dari 97% bahkan pada pengaturan superhuman
  • Penyerang tidak bermain Go dengan baik secara umum, melainkan mengguncang evaluasi KataGo dengan mendorong pass dini dan membiarkan kelompok batu besar berbentuk siklus
  • Pelatihan serangan memakai kurang dari 14% komputasi pelatihan KataGo, dan menunjukkan tingkat kemenangan lebih dari 99% terhadap KataGo tanpa pencarian, 95,7~97,3% terhadap KataGo 4096 visits, serta 72% terhadap KataGo 10⁷ visits
  • Kerentanan yang sama juga ditransfer zero-shot ke AI Go superhuman lain seperti Leela Zero dan ELF OpenGo, dan pakar Go manusia pun mempelajari strateginya tanpa bantuan algoritme lalu mengalahkan beberapa bot
  • Sejumlah kecil pelatihan adversarial mampu menahan penyerang tetap, tetapi kembali ditembus dengan fine-tuning tambahan; performa rata-rata yang tinggi saja sulit menjamin ketahanan kasus terburuk

Serangan kebijakan adversarial terhadap KataGo

  • Dengan AI Go, penelitian ini memverifikasi bahwa sistem AI yang performa rata-ratanya meningkat cepat tetap bisa rentan pada performa kasus terburuk
  • Target serangannya adalah KataGo, AI Go publik terkuat pada saat makalah ditulis
    • KataGo menggunakan self-play dan prosedur pelatihan ala AlphaZero
    • KataGo memakai jaringan saraf dengan policy head dan value head, serta memilih langkah dengan Monte-Carlo Tree Search (MCTS)
    • Jaringan terbarunya dilatih lebih dari 15.000 V100-equivalent GPU days
  • Jika KataGo yang memiliki performa superhuman berhasil ditembus, ini bisa menjadi contoh yang menunjukkan kerentanan sistem AI yang lebih luas
  • Penyerang hanya dapat menaruh batu atau pass seperti pemain biasa, dan tidak memiliki hak khusus atas aturan permainan

Model ancaman dan metode pelatihan

  • Penyerang memiliki akses gray-box yang dapat mengevaluasi jaringan saraf korban pada input sembarang
    • Tidak memiliki akses langsung ke bobot jaringan
    • Kebijakan korban diasumsikan tetap
    • Ini secara alami berlaku ketika AI Go komersial atau open source dapat dijalankan secara lokal
  • Tujuannya bukan sekadar membuat AI Go yang lebih kuat, melainkan mengungkap non-transitivitas (non-transitivity) yang memanfaatkan kelemahan spesifik korban
    • Adversary mengalahkan KataGo
    • KataGo mengalahkan pro manusia
    • Amatir manusia mengalahkan adversary
  • Pelatihan dilakukan dengan victim-play, bukan self-play
    • Adversary dan korban tetap memainkan pertandingan
    • Hanya data pada giliran adversary yang digunakan untuk melatih adversary
  • Para peneliti memperkenalkan Adversarial MCTS(A-MCTS)
    • MCTS biasa memodelkan langkah lawan dengan kebijakannya sendiri
    • A-MCTS menggunakan jaringan korban pada giliran korban untuk memodelkan langkah
    • A-MCTS-S melakukan sampling dari policy head korban
    • A-MCTS-S++ menggunakan rata-rata simetri papan
    • A-MCTS-R memodelkan hingga pencarian korban secara rekursif, tetapi biaya komputasinya besar

Dua serangan: pass-adversary dan cyclic-adversary

  • pass-adversary adalah serangan yang menipu KataGo tanpa pencarian agar pass terlalu dini
    • Dengan bermain memakai 600 visits, serangan ini mencapai tingkat kemenangan 99,9% terhadap Latest no-search KataGo
    • Pelatihannya memakai 20,4 V100 GPU days, yaitu 0,13% dari anggaran pelatihan Latest
    • Dalam aturan Tromp-Taylor, adversary mendorong KataGo melakukan pass dini saat adversary unggul skor
    • Strategi ini pun kalah dari amatir manusia
  • pass-adversary yang dilatih terhadap korban tanpa pencarian sebagian dapat ditransfer ke korban dengan pencarian sangat rendah
    • Saat memakai A-MCTS-R, tingkat kemenangan 88% melawan Latest 8 visits
    • Saat memakai A-MCTS-S, tingkat kemenangan 15% pada kondisi yang sama
  • cyclic-adversary adalah serangan kedua yang diperoleh dengan kembali menyerang KataGo yang sudah diberi pertahanan terhadap pass
    • Setelah menerapkan pertahanan pass-alive agar korban tidak lagi kalah karena pass dini, model dilatih ulang
    • Melawan Latestdef no-search, hasilnya 1048 kemenangan dari 1048 pertandingan, tingkat kemenangan 100%
    • Melawan Latest no-search tanpa pertahanan juga mencatat 1000 kemenangan dari 1000 pertandingan
    • Pelatihannya memakai 2223,2 V100 GPU days, sekitar 14,0% dari komputasi pelatihan Latest

KataGo superhuman dengan pencarian pun ditembus

  • cyclic-adversary juga menunjukkan tingkat kemenangan tinggi terhadap KataGo yang memakai pencarian
    • Tingkat kemenangan 95,7% berdasarkan 1052 pertandingan melawan Latestdef 4096 visits
    • Tingkat kemenangan 97,3% berdasarkan 1000 pertandingan melawan Latest 4096 visits tanpa pertahanan
    • Tingkat kemenangan 82% berdasarkan 50 pertandingan melawan Latest 10⁶ visits/move
    • Tingkat kemenangan 72% berdasarkan 50 pertandingan melawan Latest 10⁷ visits/move
  • 10⁷ visits adalah level yang memerlukan lebih dari 1 jam untuk mengevaluasi satu langkah bahkan pada perangkat konsumen berperforma tinggi, sehingga sulit menjadi pertahanan praktis dalam banyak aplikasi
  • Semakin besar jumlah pencarian korban, semakin rendah tingkat kemenangan adversary
    • Pencarian dapat menjadi alat untuk meningkatkan ketahanan
    • Namun pencarian saja tidak dapat menghasilkan ketahanan penuh
  • Pencarian di sisi adversary menunjukkan performa terbaik pada 128~600 visits
    • Melebihi 600 visits tidak meningkatkan performa, dan justru bisa memperburuknya
    • A-MCTS-S++ tidak menunjukkan performa lebih baik daripada A-MCTS-S yang lebih murah

Cara kerja kerentanan cyclic

  • cyclic-adversary mendorong KataGo membuat kelompok batu besar berpola lingkaran, lalu menangkap kelompok tersebut untuk membalik skor secara menentukan
  • KataGo sebagai korban memprediksi bahwa dirinya akan menang lebih dari 99% sepanjang sebagian besar permainan, dan baru menyadari kemungkinan kalah tepat sebelum kelompok besar itu tertangkap
    • Dalam sebagian permainan, prediksi tingkat kemenangan berfluktuasi besar selama pertarungan ko, lalu konvergen menjadi keyakinan kalah
    • Prediksi adversary sendiri berubah lebih lambat dan terlihat kurang yakin
  • Dalam analisis nilai aktivasi, perbedaan antara posisi siklik dan posisi nonsiklik yang hampir sama muncul pada layer tertentu
    • Pada layer 25 tidak terlihat perbedaan besar
    • Pada sebagian channel di layer 26 muncul perbedaan yang jelas
    • Perbedaan antara checkpoint cp580 yang dilatih secara adversarial dan Latest juga menunjukkan pola serupa, sehingga channel-channel tersebut kemungkinan terhubung dengan kerentanan siklik
  • Serangan baseline yang di-hardcode tidak bekerja dengan baik terhadap Latestdef
    • Edge baseline menang hampir setengahnya saat bermain sebagai putih melawan Latest tanpa pertahanan
    • Ini menunjukkan bahwa Latestdef lebih tangguh daripada Latest, dan cyclic-adversary mempelajari exploit yang relatif canggih

Eksperimen pertahanan dan batasannya

  • Pada pertengahan Desember 2022, pelatihan terdistribusi resmi KataGo memasukkan 0,08% game self-play yang dimulai dari posisi saat cyclic exploit sedang berlangsung
    • Ini adalah bentuk lemah dari pelatihan adversarial untuk meningkatkan pemahaman posisi siklik sambil mempertahankan kekuatan permainan normal
  • Setelah pertahanan ini, performa cyclic-adversary yang ada menurun secara bertahap
    • 0 kemenangan dari 50 pertandingan melawan b60-s7702m 32 visits KataGo
    • 119 kemenangan dari 2050 pertandingan melawan b60-s7702m 1 visit
  • Namun ketika cyclic-adversary di-fine-tune tambahan selama 1154,9 V100 GPU days terhadap jaringan yang telah dilatih secara adversarial, daya serangnya sebagian pulih
    • Tingkat kemenangan 47% berdasarkan 400 pertandingan melawan b60-s7702m 4096 visits
    • Tingkat kemenangan 17,5% berdasarkan 40 pertandingan melawan b60-s7702m 100.000 visits
    • Cara menangnya masih mengandalkan cyclic exploit, tetapi dilakukan dengan cara yang sedikit berbeda
  • Sejumlah kecil pelatihan pada posisi adversarial dapat menahan penyerang tetap, tetapi pertahanan itu tidak tergeneralisasi
  • Masih ada kemungkinan pelatihan adversarial yang lebih banyak dapat membuat exploit terhadap KataGo secara komputasi menjadi infeasible, tetapi untuk memastikannya diperlukan scaling law yang lebih presisi

Transfer ke AI Go lain dan pemain manusia

  • cyclic-adversary hanya dilatih terhadap KataGo, tetapi ditransfer zero-shot ke AI Go superhuman lain
    • Tingkat kemenangan 6,1% melawan Leela Zero
    • Tingkat kemenangan 3,5% melawan ELF OpenGo
    • Karena A-MCTS memodelkan lawan sebagai KataGo, ini adalah kondisi sulit di mana langkah Leela atau ELF terus muncul di luar perkiraan
  • Seorang pakar Go di antara penulis makalah mempelajari serangan dari rekaman pertandingan adversary tanpa bantuan algoritme
    • Di server Go KGS, ia memperoleh tingkat kemenangan lebih dari 90% melawan bot KataGo papan atas yang tidak terkait dengan para penulis
    • Ia menang meski memberi handicap 9 batu
    • Ia juga menang dalam kondisi KataGo dan Leela Zero masing-masing bermain dengan 100k visits
  • Setelah itu, manusia lain juga memakai cyclic attack untuk mengalahkan berbagai AI Go papan atas seperti KataGo, ELF OpenGo, FineArt, Leela Zero, dan Sai
  • Penyerang dapat melakukan transfer tanpa bobot model target, output kebijakan, atau banyak catatan permainan
    • Ini mengisyaratkan bahwa serangan yang dipelajari pada sistem open source dapat ditransfer ke model tertutup

Reproduksibilitas dan kesimpulan

  • Kode, lingkungan eksekusi terkontainerisasi, dan instruksi eksekusi dipublikasikan di GitHub
  • Contoh permainan tersedia di goattack.far.ai
  • Di server Go KGS, bot Adversary0 yang menjalankan checkpoint terbaru cyclic-adversary tersedia untuk publik selama satu bulan
  • Hasil utama direproduksi dengan berbagai cara
    • David Wu, pengembang KataGo, secara independen mengonfirmasi kerentanan passing attack dan cyclic attack
    • Beberapa orang di komunitas computer Go mengonfirmasi kerentanan cyclic
    • Dalam permainan umum melawan bot KGS, kerentanan cyclic dan hasil bahwa novice human play mengalahkan adversary berhasil direproduksi
    • Hasil bahwa manusia menggunakan cyclic attack untuk mengalahkan KataGo dan beberapa AI Go lain juga direproduksi
  • Kegagalan AI Go superhuman adalah contoh yang menarik, tetapi jika kegagalan serupa terjadi pada sistem penting bagi keselamatan seperti perdagangan finansial otomatis atau mobil otonom, dampaknya bisa serius
  • Peningkatan performa tidak otomatis menghasilkan ketahanan yang memadai, dan diperlukan investasi pada pembelajaran yang tangguh serta teknik pertahanan adversarial

1 komentar

 
GN⁺ 2024-12-25
Komentar Hacker News
  • Sebagai catatan, ini adalah makalah Juli 2023, dan makalah pertahanan dari September 2024 adalah https://arxiv.org/abs/2406.12843

    • Kesimpulannya: “Sebagian dari metode pertahanan ini memang mencegah serangan yang sudah ditemukan sebelumnya, tetapi tidak satu pun mampu bertahan terhadap adversary yang baru dilatih
  • Sekilas terlihat luar biasa, tetapi meski saya sedikit tahu tentang Go dan AI Go, serta cukup banyak tahu tentang catur dan AI catur, makalahnya cukup sulit dipahami
    Rasanya mereka hanya melakukan upaya minimal untuk menjelaskan apa yang dilakukan dan bagaimana itu bisa bekerja, dan pesan utamanya tertutup oleh istilah teknis tanpa penjelasan
    Saya merasa ide yang tersembunyi itu sebenarnya mungkin mengejutkan dan sederhana, tetapi belum benar-benar terlihat

    • https://slideslive.com/39006680/adversarial-policies-beat-su... tampaknya bahan pengantar yang bagus
      Dalam Go ada fase yang sangat panjang yang saya sebut sebagai kondisi berjalan lama meski sudah mati. Sekumpulan batu bisa saja sudah mati pada langkah ke-30, tetapi lawan baru benar-benar menangkapnya setelah langkah ke-150
      Jika lawan sudah mengetahui kebenarannya sejak langkah ke-30 sementara saya digiring ke jalur yang salah selama ratusan langkah setelah itu, saya hampir pasti kalah
      AI adversarial ini menipu AlphaGo/KataGo agar masuk ke situasi seperti itu, lalu alih-alih langsung mengambil keuntungannya, ia berfokus mempertahankan tipu daya agar KataGo terus salah memahami situasi. Dengan kata lain, jika langkah terbaik dapat membuat KataGo menyadari kesalahpahamannya, lebih baik memainkan langkah kedua terbaik agar KataGo tetap berada dalam kondisi buggy
      Bahkan dengan adversarial training, yaitu ketika KataGo mempelajari cacat ini, cacatnya tetap ada dan alasannya tidak jelas
      Bug kelompok batu yang melingkar ini tampaknya cukup mudah dipahami bahkan oleh amatir. Saya kira-kira 10 kyu, dengan kemampuan yang saya perkirakan setara tingkat usaha sekitar 1500 Elo catur, jadi saya pernah berlatih sampai taraf tertentu tetapi tidak istimewa
      Jadi tampaknya bahkan saya sebagai manusia, di level 10 kyu dengan sedikit latihan, bisa mengalahkan AlphaGo/KataGo
    • Untuk membuat komunikasi antarahli efisien, sejumlah jargon memang diperlukan, tetapi pembahasan ini mengingatkan saya pada konsep sistem imun budaya yang seingat saya diperkenalkan Pirsig dalam buku keduanya, “Lila”
      Jargon, seperti hampir segala hal, punya fungsi utilitas; jika tujuannya menyampaikan informasi sejelas mungkin, setelah melewati titik belok tertentu nilai keluarannya justru tampak menurun. Kalau tujuannya berbeda, fungsi utilitasnya mungkin bisa tumbuh secara eksponensial
  • Dalam catur juga ada kasus batas seperti ini yang disebut posisi benteng. Tiga yang pertama bernilai “0.0” dan yang keempat menang untuk hitam
    8/8/8/1Pk5/2Pn3p/5BbP/6P1/5K1R w - - 0 1 putih tidak bisa membebaskan bentengnya
    1B4r1/1p6/pPp5/P1Pp1k2/3Pp3/4Pp1p/5P1P/5K2 b - - 0 1 benteng tidak bisa masuk ke kubu putih
    kqb5/1p6/1Pp5/p1Pp4/P2Pp1p1/K3PpPp/5P1B/R7 b - - 0 1 jika benteng pergi ke h1 dan raja ke g1, menteri tidak bisa masuk lewat a6
    2nnkn2/2nnnn2/2nnnn2/8/8/8/3QQQ2/3QKQ2 w - - 0 1 para kuda maju seperti blok sehingga kuda yang diserang terlindungi dua kali
    Pada posisi pertama, Stockfish dan Lc0 sama-sama menilai putih sedikit lebih baik. Pada posisi kedua dan ketiga, mereka menilai hitam menang. Posisi keempat dipahami Lc0, tetapi tidak dipahami Stockfish

  • Dalam Go, bermain melawan amatir total kadang bisa merepotkan. Langkah-langkahnya terlalu tak terduga dan bentuknya terlalu jauh dari normal. Permainan yang sangat aneh kadang bisa berhasil

    • Tidak begitu
      Saya 4 dan Eropa, dan apa pun langkah non-standar yang dimainkan pemain lemah, saya akan menyapu papan. Demikian pula, terhadap pemain yang lebih kuat dari saya, jika saya memilih langkah aneh, biasanya saya dihancurkan lebih cepat dari biasanya. Ini mungkin hanya berhasil di kisaran kyu dua digit
    • Merepotkan dalam arti harus memecahkan sendiri posisi yang tidak familier. Tetapi bukan sulit dalam arti mungkin kalah dalam permainan
    • Magnus Carlsen sering melakukan hal seperti ini dalam catur. Ia mendorong lawan ke wilayah tak dikenal dengan pembukaan baru atau kurang dikenal, lalu dengan cepat membuat posisi menjadi rumit
      Dengan begitu permainan berubah menjadi pertarungan taktis, dan pada akhirnya lawan masuk ke endgame yang buruk. Kebetulan lawannya adalah Magnus
  • Ini makalah 2022 yang direvisi pada 2023, jadi mungkin saya pernah melihatnya lalu lupa. Cukup menarik, dan saya penasaran seberapa baik pendekatan ini bekerja melawan engine catur, setidaknya engine bergaya Leela

  • Saya teringat bagaimana setelah Deep Blue pun para pemain catur mempelajari strategi anti-komputer yang lebih baik. Ruang keadaan Go jauh lebih besar, jadi kemungkinan ada jauh lebih banyak strategi anti-komputer seperti ini
    Pada dasarnya mereka menyerang fungsi evaluasi dengan cara yang sama
    Seperti dalam catur, komputasi yang lebih besar pada akhirnya akan menang, dan itu sudah tampak terbukti. Perlu diingat bahwa Elo mengukur menang-kalah, bukan tingkat kesulitan. Jika keduanya dicampuradukkan, penalarannya menjadi buruk

    • Karena Elo juga memperhitungkan kekuatan lawan, ia juga merupakan proksi yang cukup baik untuk tingkat kesulitan
  • Sebagai referensi, diskusi dari akhir 2022 tentang serangan ini ada di [1]. Di dalamnya ada diskusi panjang yang melibatkan hexahedron / lightvector, pengembang KataGo, yang tampaknya merupakan AI Go superhuman yang paling banyak dipakai
    Tautannya mengarah ke bagian tengah thread karena revisi berikutnya lebih menarik daripada versi awal makalahnya
    [1] https://forums.online-go.com/t/potential-rank-inflation-on-o...

  • Jika seseorang bisa merancang jebakan yang canggih, tampaknya itu berarti ia juga punya pengetahuan pada tingkat serupa tentang permainan tersebut, dan saya kira AI yang sangat terampil akan secara implisit mencakup strategi adversarial juga. Hasil yang menarik

    • Alasan KataGo ada dan menjadi lebih kuat daripada AlphaGo / AlphaZero adalah karena para pemain Go mengetahui bahwa AlphaGo tidak bisa melihat shicho
      Shicho adalah pola sederhana yang bahkan amatir kasual yang ingin mencapai kyu terendah pun harus pelajari
      KataGo mengenali cacat ini dan memiliki pemecah shicho eksplisit yang ditulis dengan kode tradisional. Tampaknya neural network tidak akan pernah bisa menemukan shicho. Tidak jelas mengapa deep neural network gagal menangkap pola sesederhana ini
      Jadi tidak mengherankan jika masih ada pola yang lebih dalam yang terlewatkan oleh AI-AI ini