Yapay Zekâda “Compactize” Sezgisi

Okuma Süresi: 4 Dakika

Yapay Zekâda “Compactize” Sezgisi

Yazar: Arda Akgür

Üniversite yıllarımda aldığım bir yapay zekâ dersinde hocamız öğrenme algoritmalarını anlatırken oldukça basit ama düşündürücü bir örnek vermişti. Örnekte 100×100 boyutunda bir oyun alanı vardı. Bu alan içerisinde altı adet elmas bulunuyordu ve oyuncu her pozisyonda dört farklı hamle yapabiliyordu: yukarı, aşağı, sağa veya sola gitmek.

Hocamızın anlattığı yaklaşımın özü şuydu: Sistem, her grid pozisyonunu, her elmasın toplanmış ya da toplanmamış olma durumunu ve her pozisyondaki bütün hamle ihtimallerini tek tek değerlendirmeliydi. Yani yapay zekâ, oyundaki tüm olası durumları ve tüm olası eylemleri deneyerek öğrenmeliydi.

Teorik olarak bu yaklaşım anlaşılırdır. Bir öğrenme algoritması, durum uzayını ne kadar geniş şekilde tararsa, hangi durumda hangi eylemin daha avantajlı olduğunu o kadar iyi öğrenebilir. Pekiştirmeli öğrenme literatüründe de bir ajanın çevreyle etkileşime girerek durumlar, eylemler ve ödüller üzerinden politika geliştirdiği kabul edilir (Sutton & Barto, 2018). Benzer şekilde klasik yapay zekâda problem çözme çoğu zaman bir durum uzayında arama problemi olarak modellenir (Russell & Norvig, 2021).

Fakat o gün beni rahatsız eden bir şey vardı.

100×100 boyutunda bir alan, altı elmasın farklı durumları ve her pozisyonda dört hareket ihtimali düşünüldüğünde, ortaya çok büyük bir olasılık kümesi çıkıyordu. Üstelik bu olasılıkların tamamı gerçekten anlamlı değildi. Bazı hamleler oyun kuralları gereği imkânsızdı. Bazı durumlara hiçbir geçerli hamle dizisiyle ulaşılamazdı. Bazı seçenekler ise daha en baştan gereksizdi.

Bu yüzden hocama şu soruyu sormuştum:

“Bazı pozisyonlardaki imkânsız hamleleri baştan eleyemez miyiz?”

Bu soru, o gün sınıf içinde sadece pratik bir itiraz gibi görünebilirdi. Fakat bugün geriye dönüp baktığımda, bunun aslında çok daha temel bir sezgiye dayandığını görüyorum. Yapay zekâda asıl mesele her şeyi ezberlemek ya da her şeyi denemek değildir. Asıl mesele, hangi durumların gerçekten anlamlı olduğunu ayırt edebilmektir.

Bilgisayar bilimlerinde bu problem “kombinatoryal patlama” olarak bilinir. Bir problemin boyutu büyüdükçe olası durumların sayısı çoğu zaman doğrusal değil, üstel veya çok daha hızlı biçimde artar. Bu nedenle, teorik olarak mümkün görünen bir arama yöntemi pratikte uygulanamaz hâle gelebilir (Bellman, 1957). Satranç, Go, rota optimizasyonu, lojistik planlama ve robotik gibi alanlarda bu problem açıkça görülür. Eğer bir sistem tüm olasılıkları körlemesine denemeye çalışırsa, hesaplama süresi ve bellek ihtiyacı hızla yönetilemez hâle gelir.

Bu noktada “eleme” fikri devreye girer.

Klasik yapay zekâ tarihinde bunun en bilinen örneklerinden biri alfa-beta budamadır. Minimax algoritması oyun ağacındaki olası hamleleri değerlendirirken, alfa-beta budama kesin sonucu değiştirmeyecek bazı dalları hesaplamadan eleyerek arama sürecini hızlandırır (Knuth & Moore, 1975). Yani sistem bütün ağacı körlemesine dolaşmak yerine, sonucu etkilemeyecek dalları erken aşamada keser.

Benim “compactize” adını verdiğim sezgi de buna yakın bir düşünceden beslenir.

Compactize, bir sistemi daha küçük göstermek anlamına gelmez. Compactize, sistemin içinden ölü, erişilemez, gereksiz veya anlamsız durumları temizleyerek yalnızca canlı ve işlevsel durumları koruma fikridir. Başka bir ifadeyle, amaç bilgiyi yok etmek değil; bilgi alanını daha anlamlı, daha erişilebilir ve daha verimli hâle getirmektir.

Bu yaklaşım yalnızca teknik bir optimizasyon değildir. Aynı zamanda bir düşünme biçimidir.

Çünkü her problemi çözmenin iki yolu vardır. Birincisi, tüm olasılıkları denemeye çalışmaktır. İkincisi ise önce hangi olasılıkların gerçekten mümkün ve anlamlı olduğunu anlamaktır. Birinci yaklaşım kaba kuvvete dayanır. İkinci yaklaşım ise sezgi, soyutlama ve modelleme gücü gerektirir.

Satranç bunun güzel bir örneğidir. Teorik olarak satranç sonlu bir oyundur. Her pozisyonda yapılabilecek hamleler bellidir ve oyun kuralları kesindir. Bu nedenle mükemmel bir satranç ajanı, tüm olası pozisyonları ve en iyi hamleleri bilseydi yenilmez olurdu. Ancak pratikte satrancın durum uzayı o kadar büyüktür ki, bütün olasılıkları eksiksiz biçimde hesaplamak mümkün değildir. Shannon (1950), satranç oynayan makineler üzerine yaptığı erken çalışmada satrancın hesaplama açısından ne kadar zorlayıcı olduğunu ortaya koymuştur.

Bu nedenle başarılı satranç motorları yalnızca hamle ezberleyen sistemler değildir. Aynı zamanda arama derinliği, değerlendirme fonksiyonları, budama teknikleri ve pozisyonel sezgiler kullanan sistemlerdir. Modern satranç motorları ve AlphaZero gibi sistemler, yalnızca tüm hamleleri denemeye değil, anlamlı hamleleri daha etkili biçimde değerlendirmeye dayanır (Silver et al., 2018).

Buradan günümüz yapay zekâ modellerine geçebiliriz.

Büyük dil modelleri, çok büyük veri kümeleri üzerinde eğitildikleri için etkileyici bir örüntü tanıma ve dil üretme kapasitesine sahiptir. Bu modeller birçok alanda güçlü sonuçlar üretir; çünkü insan dilindeki örüntüleri, kavramsal ilişkileri ve bağlamsal ipuçlarını büyük ölçekte öğrenebilirler (Brown et al., 2020). Ancak bu durum onların insan gibi “anladığı” anlamına gelmez. Büyük dil modelleri güçlü bir istatistiksel öğrenme ve genelleme kapasitesine sahiptir; fakat bu kapasiteyi bilinç, niyet veya gerçek dünyaya doğrudan bağlı muhakeme ile karıştırmamak gerekir (Bender et al., 2021).

Bu ayrım önemlidir.

Çünkü yapay zekânın başarısını yalnızca “daha fazla veri” veya “daha fazla hesaplama” ile açıklamak eksik olur. Elbette veri ve hesaplama gücü önemlidir. Ancak verinin nasıl temsil edildiği, hangi durumların dikkate alındığı, hangi ihtimallerin elendiği ve modelin problemi hangi soyutlama düzeyinde kavradığı da en az onlar kadar önemlidir.

İnsan öğrenmesi de böyledir.

Hocalarımızın öğrettiklerini öğrenmek zorundayız. Bilimsel temel olmadan sezgi tek başına yeterli değildir. Bir mühendisin, bilgisayar bilimcinin ya da hukuk-bilişim alanında düşünen bir araştırmacının önce klasik yöntemleri anlaması gerekir. Çünkü klasik yöntemler, bugünkü problemlerin hangi tarihsel ve teorik zeminden geldiğini gösterir.

Fakat yalnızca öğretileni tekrar etmek de yeterli değildir.

Bilim ve teknoloji, çoğu zaman bir öğrencinin “Peki bunu başka türlü yapamaz mıyız?” sorusuyla ilerler. Bazen sınıfta sorulan basit bir soru, yıllar sonra yeni bir kavrama dönüşür. Benim için “compactize” böyle bir kavramdır. O gün hissettiğim rahatsızlık, aslında gereksiz hesaplamaya karşı duyulan mühendislik refleksiydi.

Bugün yapay zekâ sistemleri, hukuk teknolojileri, lojistik optimizasyonu, otonom ajanlar ve karar destek sistemleri giderek daha karmaşık hâle geliyor. Bu karmaşıklık içinde asıl değer, her şeyi sisteme doldurmakta değil; sistemi gereksiz yüklerden arındırmakta yatıyor.

Çünkü zeki sistem, her şeyi deneyen sistem değildir.

Zeki sistem, neyi denemeye değmeyeceğini bilen sistemdir.

Bu nedenle yapay zekâ çağında belki de en önemli becerilerden biri şudur: Büyük problemi daha da büyütmek yerine, onu anlamlı parçalara ayırmak; imkânsızları elemek; ölü durumları temizlemek; yaşayan bilgiyi korumak.

Yani problemi compactize etmek.

Yazar: Arda Akgür

CTO, Yüksi

 

Kaynakça

Bellman, R. (1957). Dynamic programming. Princeton University Press.

Bender, E. M., Gebru, T., McMillan-Major, A., & Shmitchell, S. (2021). On the dangers of stochastic parrots: Can language models be too big? In Proceedings of the 2021 ACM Conference on Fairness, Accountability, and Transparency (pp. 610–623). Association for Computing Machinery.

Brown, T. B., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., Neelakantan, A., Shyam, P., Sastry, G., Askell, A., Agarwal, S., Herbert-Voss, A., Krueger, G., Henighan, T., Child, R., Ramesh, A., Ziegler, D. M., Wu, J., Winter, C., … Amodei, D. (2020). Language models are few-shot learners. In Advances in Neural Information Processing Systems, 33, 1877–1901.

Knuth, D. E., & Moore, R. W. (1975). An analysis of alpha-beta pruning. Artificial Intelligence, 6(4), 293–326.

Russell, S., & Norvig, P. (2021). Artificial intelligence: A modern approach (4th ed.). Pearson.

Shannon, C. E. (1950). Programming a computer for playing chess. Philosophical Magazine, 41(314), 256–275.

Silver, D., Hubert, T., Schrittwieser, J., Antonoglou, I., Lai, M., Guez, A., Lanctot, M., Sifre, L., Kumaran, D., Graepel, T., Lillicrap, T., Simonyan, K., & Hassabis, D. (2018). A general reinforcement learning algorithm that masters chess, shogi, and Go through self-play. Science, 362(6419), 1140–1144.

Sutton, R. S., & Barto, A. G. (2018). Reinforcement learning: An introduction (2nd ed.). MIT Press.