Google'ın oyun oynayan yapay zeka (YZ) serisi Alpha, satranç ve Go gibi oyunlarda ustalaşarak her oyunu çözebilecek bir yol bulmuş gibi görünüyordu. Bu YZ'ler, eğitimleri sırasında defalarca kendi kendilerine oynayarak bu seviyeye ulaştılar. Ancak beklenmedik bir durum ortaya çıktı: Bazı Go pozisyonlarında, oyuna yeni başlayan insan oyuncuların kolayca yenebildiği ancak göreceli olarak yeni olan bir Go oynayan YZ'nin zorlandığı durumlar tespit edildi.
Bir YZ'yi masa oyununda yenmek önemsiz gibi görünse de, bu durum YZ'lerin hata modlarını belirlememize ve eğitimlerini iyileştirerek bu tür kör noktaları önlememize yardımcı olabilir. Bu iyileştirmeler, insanların giderek artan sayıda sorun için YZ girdilerine güvendiği günümüzde kritik önem taşıyor.
Yakın zamanda yayımlanan bir makale, AlphaGo ve AlphaChess'i eğitmek için kullanılan yöntemin başarısız olduğu bir oyun kategorisini tanımlıyor. Bu oyunlar şaşırtıcı derecede basit olabilir. Araştırmacıların üzerinde çalıştığı örneklerden biri olan ve iki oyuncunun bir piramit şeklindeki tahtadan kibrit çöplerini sırayla aldığı ve son kalan oyuncunun kazandığı 'Nim' oyunu buna bir örnektir.
Tarafsızlık
Nim oyunu, her bir sıranın bir önceki sıradan iki fazla kibrit çöpü içerdiği ve böylece piramit şeklinde bir tahta oluşturduğu bir dizi kibrit çöpüyle oynanır. İki oyuncu sırayla, herhangi bir satırdan bir veya daha fazla kibrit çöpü alarak tahtadaki kibrit çöplerini azaltır. Oyun, artık yapılabilecek hamle kalmayana kadar devam eder. Bu, çocuklara bile kolayca öğretilebilecek basit bir oyundur.
Aynı zamanda, 'tarafsız oyunlar' olarak adlandırılan bir dizi kuralı tanımlayan kritik bir örnek teşkil eder. Bu oyunlar, satrançtan farklıdır; satrançta her oyuncunun kendi taşları varken, tarafsız oyunlarda iki oyuncu aynı taşları paylaşır ve aynı kurallara tabidir. Nim'in önemi, tarafsız bir oyundaki herhangi bir pozisyonun bir Nim piramidi konfigürasyonuyla temsil edilebileceğini gösteren bir teoremden kaynaklanmaktadır. Bu, eğer Nim için geçerli olan bir şey varsa, tüm tarafsız oyunlar için de geçerli olduğu anlamına gelir.
Nim ve diğer tarafsız oyunların ayırt edici özelliklerinden biri, oyunun herhangi bir noktasında tahtayı değerlendirmenin ve hangi oyuncunun kazanma potansiyeline sahip olduğunu belirlemenin kolay olmasıdır. Başka bir deyişle, tahtayı gözünüzde canlandırabilir ve o andan itibaren optimal hamleleri yaparsanız kazanacağınızı bilirsiniz. Bunu yapmak için tahtanın konfigürasyonunu bir parite fonksiyonuna beslemek yeterlidir; bu fonksiyon, kazanıp kazanmadığınızı söyleyen matematiksel hesaplamaları yapar.
(Elbette, şu anda kazanan kişi suboptimal bir hamle yaparak kaybedebilir. Optimal hamlelerin tam dizisi, rakibin ne yaptığına bağlı olacağından oyunun sonuna kadar belirlenemez.)
Bei Zhou ve Soren Riis tarafından yapılan yeni çalışma, basit bir soru soruyor: Nim oynayan bir YZ geliştirmek için AlphaGo'nun eğitim yaklaşımını kullanırsanız ne olur? Başka bir deyişle, bir YZ'nin yalnızca Nim oynayarak bir parite fonksiyonunun temsilini geliştirebileceğini sordular.
Kendi Kendine Öğrenme Başarısız Olduğunda
Satranç oynayan versiyon olan AlphaZero, yalnızca satranç kurallarından eğitildi. Kendi kendine oynayarak, farklı tahta konfigürasyonlarını kazanma olasılığıyla ilişkilendirebilir. Tıkanmasını önlemek için, yeni alanlar keşfetmesini sağlayan rastgele bir örnekleme öğesi de mevcuttur. Ayrıca, sınırlı sayıda yüksek değerli hamleyi tanımlayabildiğinde, bu hamlelerden doğan gelecekteki olasılıkları daha derinlemesine inceleyebilir. Ne kadar çok oyun oynarsa, verilen bir pozisyondan ortaya çıkabilecek olası tahta konfigürasyonlarına değerler atama olasılığı o kadar artar (ancak yeterli sayıda oynandıktan sonra daha fazla oyundan elde edilen faydalar azalma eğilimindedir).
Nim'de, belirli bir tahta konfigürasyonu için sınırlı sayıda optimal hamle vardır. Bunlardan birini oynamazsanız, kontrolü rakibinize bırakırsınız; rakip, yalnızca optimal hamleleri oynayarak kazanabilir. Ve yine, optimal hamleler matematiksel bir parite fonksiyonu değerlendirilerek belirlenebilir.
Bu nedenle, satranç için işe yarayan eğitim sürecinin Nim için etkili olmayabileceğini düşünmek için nedenler vardır. Sürpriz, aslında ne kadar kötü olduğudur. Zhou ve Riis, beş sıralı bir Nim tahtası için YZ'nin oldukça hızlı bir şekilde iyi hale geldiğini ve 500 eğitim yinelemesinden sonra hala geliştiğini buldular. Ancak sadece bir sıra eklemek, iyileşme oranını dramatik bir şekilde yavaşlattı. Ve yedi sıralı bir tahta için, YZ kendi kendine 500 kez oynadığında performans artışı neredeyse durmuştu.
Sorunu daha iyi açıklamak için araştırmacılar, potansiyel hamleler öneren alt sistemi rastgele çalışan bir alt sistemle değiştirdiler. Yedi sıralı bir Nim tahtasında, eğitilmiş ve rastgeleleştirilmiş sürümlerin performansı 500 eğitim döngüsünde ayırt edilemezdi. Temelde, tahta yeterince büyüdüğünde, sistem oyun sonuçlarını gözlemleyerek öğrenemiyordu. Yedi sıralı konfigürasyonun ilk durumu, hepsinin nihai bir kazançla tutarlı üç potansiyel hamleye sahipti. Ancak sistemin eğitilmiş hamle değerlendiricisine tüm potansiyel hamleleri kontrol etmesi istendiğinde, her birini yaklaşık olarak eşdeğer olarak değerlendirdi.
Araştırmacılar, Nim'in etkili bir şekilde oynamak için parite fonksiyonunu öğrenmeyi gerektirdiği sonucuna varıyorlar. Satranç ve Go için çok iyi çalışan eğitim prosedürü bunu yapamaz.
Sadece Nim Değil
Sonucu görmenin bir yolu, Nim'in (ve dolayısıyla tüm tarafsız oyunların) tuhaf olmasıdır. Ancak Zhou ve Riis, benzer sorunların bu şekilde eğitilmiş satranç oynayan YZ'lerde de ortaya çıkabileceğine dair bazı işaretler buldular. YZ'nin tahta değerlendiricisi tarafından başlangıçta yüksek puan alan birkaç "yanlış" satranç hamlesi (mat atağını kaçıran veya oyun sonunu mahveden) belirlediler. Yalnızca yazılımın birkaç hamle ileriye doğru ek dallar alabilmesi sayesinde bu hatalardan kaçınılabiliyordu.
Birçok Nim tahta konfigürasyonu için, kazanmaya yol açan optimal dalların değerlerini göstermek için oyunun sonuna kadar oynanması gerekir, bu nedenle bu tür bir hata önleme daha zordur. Ve satranç oyuncularının, satranç oynayan yazılımların genellikle tamamen kaçırdığı uzun hamle zincirleri gerektiren mat kombinasyonları bulduğunu kaydettiler. Sorunun satrançta aynı sorunların olmaması değil, Nim benzeri tahta konfigürasyonlarının satrançta genellikle nadir olması olduğunu öne sürüyorlar. Muhtemelen benzer şeyler Go için de geçerlidir; bu oyunda YZ'lerin tuhaf zayıflıklarıyla gösterildiği gibi.
Zhou ve Riis, "AlphaZero, ilişki kurarak öğrenmede mükemmeldir ancak sembolik akıl yürütme gerektiren bir problemde, oyun durumları ve sonuçları arasındaki korelasyondan örtük olarak öğrenilemeyen bir problemde başarısız olur" diyor. Başka bir deyişle, bir oyunun kuralları ne kadar basit karar verme kuralları sağlasa da, Alpha tarzı eğitimin bir YZ'nin bunları belirlemesini sağlayacağını bekleyemeyiz. Sonuç, "somut, feci bir hata modu" olarak adlandırdıkları şeydir.
Bu neden önemlidir? Birçok insan, özellikle sembolik akıl yürütme gerektiren matematik problemleri için YZ'nin faydasını araştırıyor. Bir tahta konfigürasyonundan parite fonksiyonu gibi genel kurallara genelleme yaparken bu tür akıl yürütme önemlidir. Bir YZ'yi bunu yapacak şekilde nasıl eğiteceği açık olmayabilir, ancak hangi yaklaşımların açıkça işe yaramayacağını bilmek faydalı olabilir.