Kendiyle Oynama (Self-Play)
Araç kavramlarıKendiyle Oynama nedir?
Self-play (kendiyle oynama), bir modelin rakip olarak kendi kopyalarını kullanarak öğrenmesidir. Ajan hem kendi hamlelerini yapar hem de karşısındaki oyuncu olarak yine kendisidir. Her oyunun sonucu bir eğitim sinyaline dönüşür; kazanan hamleler pekiştirilir, kaybeden hamleler zayıflatılır. İnsan maçlarından oluşan devasa bir veri setine ihtiyaç kalmaz.
Nasıl çalışır?
Ajan rastgele ya da zayıf bir seviyeden başlar. Kendine karşı milyonlarca oyun oynar. Her oyunun sonucu (kazandı/kaybetti) pekiştirmeli öğrenme (reinforcement learning) döngüsüne beslenir; model kendi politikasını (policy) ve durum değerini (value) günceller. Kritik nokta şudur: rakip de kendisi olduğu için, model güçlendikçe rakibi de otomatik güçlenir. Böylece hep "kendi seviyesinde" bir rakiple karşılaşır — ne çok kolay ne çok zor. Bu doğal müfredat (curriculum) sayesinde ajan kademe kademe, sınır tanımadan yükselir. AlphaGo Zero ve AlphaZero bu prensibi Monte Carlo ağaç aramasıyla (Monte Carlo tree search) birleştirerek insan üstü seviyeye ulaştı.
Neden önemli?
Self-play, "insan verisi olmadan uzmanlık" fikrinin en çarpıcı kanıtıdır. İnsan oyunlarını taklit eden modeller insan seviyesinde tavan yapar; kendiyle oynayan modeller insanın hiç düşünmediği stratejiler keşfeder. Ayrıca veri toplama darboğazını ortadan kaldırır: ortam kurallı olduğu sürece model sonsuz eğitim verisini kendi üretir (synthetic data'nın bir biçimi).
Kullanım alanları
En bilinen örnekleri Go, satranç ve shogi gibi oyunlarda insan üstü seviye. Bunun ötesinde robotik simülasyonlarda, çok ajanlı (multi-agent) müzakere ve rekabet senaryolarında, hatta dil modellerinin muhakeme yeteneğini kendi ürettiği çözümlerle güçlendirmede self-play fikri kullanılıyor.
Ilgili terimler
