Yapay Zeka Nedir ?

Bu yazıda yapay zekayı, çalışma prensibini ve uygulamalarını bilimsel-teknik açıdan inceleyeceğiz.

Eğer  yapay zekanın nasıl çalıştığından ziyade son yıllardaki yapay zeka tartışmaları, yapay zeka etiği , insan hayatına etkisi  ve gelecekteki rolü gibi başlıklar dikkatinizi çekiyorsa bu yazıyı atlayıp aşağıdaki bağlantıdan yapay zeka tartışmalarını okunmanızı tavsiye ederim

İkinci yazıya gitmek için tıklayın

Yapay zeka Nedir ?

temel olarak insan becerilerini taklit etmeye yönelik algoritmaların ortak çatı adıdır. Yukarda verdiğim örneklerden birisi olarak  Apple’ın Siri’si, insansı bir cevap vermek için üretilmiştir. Ya da siz yapay zekaya karşı satranç oynarken bilgisayar da tıpkı sizin gibi düşünür ve her olasılığa karşı bir hamle yapar.

Peki bu nasıl mümkün olabilir ?

Yapay zekanın, bir çok farklı mantık ile geliştirilen algoritmaların geneline verilen bir isim olduğunu söylemiştik. Bu algoritmaların geliştirilmesinde biyoloji, fizik, matematik biliminden ilham alınmıştır. Yani canlılığın yapı taşını oluşturan temel bilimler, canlılığı taklit etmek için yaratılmış olan yapay zekanın da çekirdeğini oluşturmuştur.

Şimdi, ne olduğunu daha kolay anlamanız için en basit yapay zeka algoritmasını inceleyelim. Bu algoritma, genellikle borsa tahminleri yapmak için kullanılan bir yapay zeka sisteminin ön ayağıdır. Matematik biliminden ilham alınarak geliştirilmiştir. Yapay zeka çatısı altında verilebilecek en basit makine öğrenmesi örneğidir.

Noktaları Gruplayan Yapay Zeka

Şimdi, oluşturacağımız  yapay zekanın ilk görevi bu kartezyen grafikteki kırmızı ve mavi noktaları birbirinden ayıracak çizgiyi çekmek olsun.

Başlangıçta birbirinden çok ayrı iki nokta grubumuz vardı. Y.Z’nın ikisini de ayırmak için dümdüz bir çizgi çekmesi yeterli olacaktır. Bu durum, Lineer Regresyon olarak adlandırılır.

Fakat farklı bir metod olarak, biz grafiğe yeni noktalar ekledikçe dümdüz olan yeşil çizgimiz, kırmızı ve mavi noktaları birbirinden ayırmada yetersiz kalacaktır.

Yani kırmızı noktaların olması gerektiği bölgede mavi, mavilerin olması gerektiği  bölgede de kırmızı noktalar olacaktır. Ki bu (hata payı) yapay zekanın istemediği bir durumdur.

Zira hata payının olması demek, bir şeylerin yeniden hesaplanması ve güncellenmesi gerektiği anlamına gelir. Yapay zeka,  hata payı ve parametreleri kullanarak  bu mavi-kırmızı bölgelerini ayıran yeşil çizgiyi her yeni eklenen veride biraz daha güncelleştirerek daha detaylı hale getirir.

Defalarca veri ekledikten sonra, yapay zekamız yukarıdaki gibi %99 başarı oranına sahip bir fonksiyon elde etmiş gibi görünüyor. Buradan sonrası ise lise matematiğinin parçalı fonksiyonundan ibaret.

Grafiğe yeni bir nokta ekleyecek olalım ve yapay zekadan bu noktanın, grafiğin hangi bölümünde yer alacağını tahmin etmesini isteyelim.

Bunu yapmak için ekleyeceğimiz noktanın X ve Y değerlerini , yapay zekanın ürettiği  (Yeşil sınır çizgisinin matematiksel fonksiyon olarak ifadesi olan) karmaşık fonksiyondan geçiririz.

Bolca türev, integral ve ileri düzey matematiksel hesap içeren bu işlemimizin ardından sonuç 0’dan büyükse mavi noktaların olduğu bölge, 0’dan küçük ise de kırmızı noktaların olduğu bölgeye yerleşmesi beklenmektedir.

Şimdi noktayı rengiyle beraber gerçek koordinatlarına yerleştirelim.

(Yukarıdaki grafikte “Hatalı Tahmin” yazısının hemen altındaki mavi nokta, yeşil çizginin yanlış tarafındadır. )

Ancak noktayı koordinatları ve rengiyle birlikte grafiğe yerleştirdiğimizde, yapay zeka fonksiyonunun sonucuna aykırı (yeşil çizgi fonksiyonuna uymayacak) biçimde  grafiğe yerleşiyorsa yapay zeka için bir şeyler yine yanlış demektir. Çünkü tahmin sonucu hatalıdır.

Tekrar hesaplamalar yapılacak ve grafik biraz daha en son eklenen verimizi doğru bölgeye almak için bükülecektir. Bu da daha fazla detaylanma ve hassasiyet demektir.

Bu işlem her yapıldığında bir sonraki eklenen verinin hangi bölgede olacağının doğru tahmin edilmesi ihtimali artar. Bu işleme Yapay  Zekanın Eğitilmesi  yani Makina Öğrenmesi denir. Yapay zeka ise, makina öğrenmesi ile oluşturulmuş ve detaylandırılmış bu yeşil çizgi fonksiyonun kendisidir.

Görüldüğü üzere son eklenen noktamızı da kapsayacak biçimde Y.Z(yeşil çizi) fonksiyonumuz güncellendi.

Ancak burada dikkat edilmesi gereken nokta, hemen ilk aykırı örnekte Y.Z’nın istenen sonucu sağlayacak biçimde iyileşmesini beklememek olacaktır.

Bazen grafikte ufak bir çentik oluşturmak için binlerce yeni nokta eklemeniz gerekir. Grafikteki birim değişim için eklenmesi gereken veri sayısı, grafikteki toplam veri sayısına bağlıdır.

 

Ek olarak yapay zeka tarafından çizilen yeşil çizginin şekli, sizin için pek mantıklı gelmeyebilir. Bazen noktalara ya da kenarlara hiçbir sebep olmaksızın fazla yaklaşabilir ya da uzaklaşabilir.

Grafiğe baktığınızda beyninizin bulduğu çözüm, çoğunlukla en optimum çözümdür. Y.Z’ nın bu çözüme ulaşması milyonlarca nokta eklenmesi sonucu olabilir.

Ancak bu durum yadırganmamalıdır. Siz doğduğunuz andan bu yana, beyniniz bilinç altında bu problemleri milyarlarca defa çözdüğünden bu kadar kolay cevap verebiliyorsunuz.

Eğer bu yapay zekayı milyarlarca farklı problem ve noktalarla eğitseydik, belki o da anında en optimum cevabı verebilirdi.

Yapay Türlerin Yaşam Savaşı: Genetic Algorithm

Yukarıda salt matematiksel tahminden çok ileri gidemeyen bir yapay zeka örneğini incelemiştik. Burada ise nispeten bilinç sahibi olan doğayı örnek alıyoruz.

Doğanın Bilinci ?

Evet, doğanın bir bilinci vardır. Tabii ki bu bahsettiğimiz bilincin ağaçlar, bitkiler ve mistik orman ruhları ile alakası yok. Doğanın bilincini yaşatmak için öldüren bir üst akıl olarak düşünebiliriz.

Daha iyi anlamak için evrim teorisini ele alalım.

Avusturalya kıtasında ilk zürafalar, nereden bakılsa bir eşek boyutundaydı. Ancak ağaçların boyları tropikal iklim yüzünden çok yüksek olduğu için, ağaç yapraklarına ulaşmada sıkıntı çekiyorlardı. Doğanın bilinci burada devreye girdi ve zürafalar daha yüksekteki ağaçlara ulaşmak için uzanmaya başladı.

Böylece zürafaların boyun kısmı zamanla uzadı ve yapraklara daha kolay ulaştıkları için yaşam şanslarını arttırdılar. Boyun kısmı uzayamayanlar ise daha düşük besin, daha düşük yaşam şansı ve dolayısıyla daha az sayıda üremeyle nesillerini devam ettirdiler.

Uzun yıllar sonra, kıtada kısa boyunlu bir zürafa dahi kalmamıştı. Ancak doğanın zekası burada bitmiyordu. Bu kadim zekanın işlevi sadece boyun uzatmak değil , düşünülmeyen detayları da  tamamlayarak adaptasyonu her koşula uyumlu ,kusursuz, hale getirmekti.

Boyun uzunluğunun artması demek, kanın beyine ulaşmasını ciddi oranda güçleştiriyordu. Doğa bilinci bu ihtiyacı gidermek için  zürafaların kalp kaslarını da güçlendirdi ki bu sayede de uzun boyunlarından geçen kan beyine ulaşabiliyordu.

Ancak bir sıkıntı daha vardı.

Uzun boyunlar zürafaların besine ulaşmasında çok büyük rol oynuyordu. Ancak tüm su kaynağı nehirlerdeydi. Zürafalar, su içmek için başlarını aniden su kaynağına eğdiklerinde yukarıdaki boyunu aşıp beyine ulaşması amacıyla aşırı basınçla kalpten çıkan kan, su içmek için aşağı indirilmiş beyine ulaştığında olması gerekenden kat kat daha yüksek bir basınçla hücum ediyor ve beyin damarlarını tehdit ediyordu

Bu durumda doğa bilincinin hata payı vardı. Bu yüzden doğa, bir kesim zürafada başlarını eğdiklerinde kan basıncını bir anda düşürecek bir boyun kilidi mekanizması geliştirdi.

Daha sonra bu mekanizmayı onların genetiğine işledi ve baskın gen haline getirdi. Bu gene sahip olmayanlar ölürken sahip olanlar neslini devam ettirdi ve bir süre sonra kıtadaki tüm zürafalar bu boyun mekanizmasına sahip olmuştu.

Böylece zürafaların kazandığı uzun boyun özelliği, artık kusursuz hale gelmişti.

Genetic Algorithm türü yapay zeka, evrimi taklit ediyor

Şimdi, bilgisayar ortamında bir habitat ve bir de canlı türü oluşturduğumuzu varsayalım.

Sonra da bu  canlıların bir koşula uyum sağlaması, sağlayanların üremesi ve sağlayamayanların da ölmesini hedefleyecek bir doğa bilinci geliştirelim.

Hedefimiz kusursuz Flappy Bird oynayan yapay bir canlı yaratmak olsun. Bu canlılara da Flapian diyelim.

Doğa bilincimiz, Flappy Bird oyununda en fazla skor yapan Flapianların üremesini sağlayıp diğerlerini de eleyerek her yeni nesilde Flapianların oyundaki başarısını arttırmaya çalışacaktır.

Tüm bunların olması için ilk önce Flapianların kendi davranış biçimlerini genetik bilgi olarak depolayacağı ve gelecek nesillere aktarabileceği bir veri tabanı sistemine ihtiyacı var.

Böylece Flapian organizması, bir koşul ile karşılaşıldığında veri tabanındaki verileri analiz ederek ne yapılması gerektiğine karar verebilecektir. Bu veri tabanı, tıpkı canlı hücrelerde olduğu gibi kromozomlardır.

Flapianımız için bir kromozom-Gen veri tabanı oluşturduk. Buradaki 0 ve 1 rakamlarının her biri , Flapian’ımızın davranışlarını kontrol edecek.

Şimdi habitatımızın içinde binlerce Flapian oluşturduğumuzu düşünelim. Bunların her birinin genetik veri tabanı ise tamamen rastgele verilerle oluşturulacaktır (Bu, sadece ilk jenerasyon Flapianlar için geçerlidir.)

Örneğin A1 satırında en sağdaki 0 rakamı, Flapian’ın sürekli zıplamasına sebep olan bir gen olsun.  Eğer Flappy Bird oyunundaki kuş hiç durmadan sürekli zıplarsa doğal olarak duvara çarpacak ve bir skor bile elde edemeden kaydedecektir.

Oysa bu geni ‘0’ olan bir başka flapian, en azından sürekli zıplamadığı için ilk flapiandan daha uzun süre dayanacaktır.

(Burada yapay zekayı  yapay zeka yapan husus şudur, siz Flapian’a sadece rastgele değerlerle oluşturulmuş 0 ve 1 lerden oluşan bir tablo verirsiniz. Hangi genin hangi işlemden sorumlu olduğu, hangi verinin nerede depolanacağı yapay zeka tarafından otomatik olarak belirlenecektir.)

Böylece [A6] geni 1 olan flapianlar ölecek, 0 olanlar ise çoğalacaktır. Ancak tabii ki olay bu kadar basit değildir. [A6] geni 0 olanlar da zamanla başka Flapianlara kaybedebilir.

Bu nedenle üreme eşeysiz olursa sadece ölüm ve yaşam ile kusursuz Flapian’ın doğması imkansıza yakındır. Bu teknikle yalnızca ilk jenerasyonun en iyisi (şampiyonu) belirlenebilir (ki bu da bir çeşit yapay zeka algoritmasıdır)

Bu yüzden her jenerasyonun nispeten başarılı (üreme şansı elde etmiş) Flapianları, birbirleriyle rastgele genlerini takaslayarak (Crossing Over) ürerler. Gen takası sonrası yeni doğmuş olan Flapian daha başarılı ya da başarısız olabilir.

Eğer yeni doğan Flapian daha başarılı ise bu defa onu meydana getiren ebeveynleri habitatın çağ eğrisinden dolayı ölecektir. Daha başarısız ise de ebeveynleri hayatta kalacak ve kendisi ölecektir. Böylece saçma jenerasyonların üretimine sebep olacak gen takasının önüne geçilerek her yeni jenerasyonda başarının arttırılması sağlanır.

Fakat bu gen takası ile erişilen çeşitlilikte bile başarı oranı bir noktada tıkanıp kalabilir. Bu durumda da Mutasyon mekanizması devreye girer. Mutasyon, gen takası sonrasında rastgele bir genin rastgele bir değerle değiştirilmesidir.

Bu işlem sanal habitat tarafından yapılır

Böylece er ya da geç, Kusursuz Flappy Bird oynayan Flapian doğmuş olur. Yukarıdaki bilgileri kavradığımıza göre, tüm bu süreci canlandıran aşağıdaki videoyu izlemenizi tavsiye ederim.

(Videoda Genetik Algoritmaya ek olarak Yapay Sinir Ağlarıda kullanılmış ancak yapay sinir ağı sadece hareket mekaniği kısmında kullanılmış.  Bu yüzden Flapianlarımız için iyi bir örnek)

 

En Gelişmiş Model: Yapay Sinir Ağları

Yapay sinir ağları, insan beyninin nöron – sinaps lerinin taklit edilmesiyle geliştirilen bir Y.Z modeli ve Y.Z algoritmaları arasında en önemli olanı. Çok uzun bir yazı olacağından Yapay Sinir Ağlarını (Neural Networks) ayrı bir başlık altında anlatacağım.

İkinci yazıya gitmek için tıklayın: Yapay Zeka Tartışmaları

Daha Fazla Kişiye Ulaşması İçin Bu İçeriği Paylaşabilirsiniz :

“Yapay Zeka Nedir ?” için bir yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir