Yapay zekanın gizemleri!
Yapay zeka nedir, insan beynini nasıl taklit edebiliyor? İşte yapay zekanın temelleri...
Dünyanın en karmaşık bilgisayarını taşıyoruz:
Beynimiz. İnanılmaz işlere imza atan bu mucizevi
bilgisayar, masaüstümüzde ya da cebimizde taşıdığımız bilgisayarlar
kadar hızlı işlem yapamasa da çok daha güçlü.
Yüksek frekansta, hızla ve sırayla sayısız matematik işlem
yapabilen CPU'lar, insan beyninin yaptıklarını
yapamıyor. İnsanoğlu, henüz gibi düşünebilen bilgisayarlar yapmayı
başaramasa da bu alanda çalışmalar sürüyor.
Silikon tabanlı bilgisayarlara, esneklik
kazandırmak ve insan gibi karar alabilmelerini sağlamak için
yazılımdan, yapay zekadan faydalanılıyor. Peki yapay zeka nasıl
çalışıyor? İnsan beyninin yetenekleri, insan algısı ve karar alma
mekanizmasının esnekliği bilgisayarlara nasıl kazandırılmaya
çalışıyor?
İşte bu makalemizde bu ilginç konunun temellerine
iniyoruz...
Hayatın her alanında
Yapay zeka günümüzde bilgisayar oyunlarından,
tüketici elektroniği ürünlerine kadar her yerde var. Elbette
yapay zekanın çeşitleri var ama bunlar başka bir
makalenin konusu. Yapay zeka derin bir konu ve biz bu makalede işin
bir yüzüne ve temeline bakacağız.
Artık neredeyse herkesin sahip olduğu dijital
kameralarda yer alan yüz tanıma özelliği, bunun çok temel
bir örneği. Gülümsendiğinde bunu algılayabilen ve görüntüyü
odaklayan, otomatik çekim yapan kameralar yapay zekadan
yararlanıyor. Sadece kameralar değil, ses tanıma yazılımları,
görselleri analiz eden ve resim içerisindeki
harfleri, sayıları algılayıp dönüştürebilen yazılımlar ve daha pek
çok örnek var.
Bu alandaki çalışmalar zaman zaman yavaşlasa da hız kesmeden
sürüyor. İnsan beynindeki sinir hücrelerinin
birlikte kolayca yapabildiği işi, silikon
devrelere yaptırmak hiç de kolay değil. İş programlamaya bakıyor
ama sadece hangi koşulda ne yapılacağını programlamaya değil.
Standart programlar, önceden belirtilen koşulda, önceden belirlenen
kararları alabiliyor. Oysa insan öğrenebiliyor ve karar
alabiliyor.
Bir sinir hücresinin yapısı
Peki programlar nasıl karar alabilir? Bunu anlamak için
öncelikle insan beyninin temeli olan sinir
hücrelerini az da olsa tanımak gerekiyor.
İnsan beyninde yer alan sinir hücrelerinin yani
nöronların yapısına baktığımızda br gövde, bir
kuyruk ve de saçaklar görüyoruz. Ana gövdenin adı soma ve o
saçaklar da dendritler. Uzun kuyruğun adı akson ve aksonun ucunda
yer alan saçaklar ise sinapslar.
Bu organik bir devre, dendritlerden gelen sinyaller ölçülüyor,
işleniyor, aktarılıyor ve de depolanıyor. Eğer sinyal sayısı
yeterliyse oluşan voltaj farkı, aksonun sinyal
yollamasına sebep oluyor. Buradan da diğer sinir hücrelerine uyarı
gidiyor. Böylece hücreler uyarılıyor, elektrk sinyalleri
iletiliyor ve beyin çalışıyor.
Organik olmayan devrelerde de bu prensipler, çalışma biçimi taklit
edilmeye çalışıyor. Henüz tek bir sinir hücresi bile tam
olarak taklit edilebilmiş değil. Ancak ilerlemeler var,
birebir olmasa dafarklı yöntemler ile sonuç
alınıyor.
İnsan beyninin sırları
Sayı yaşa ya da cinsiyete göre değişse de insan
beyninde 20 milyar nörön var.
Her nörön aşağı yukarı 10.000 kadar başka nöröna
bağlı. Yani insanın karar alma mekanizması,
hafızası ve beynin bütün işlemleri inanılmaz
paralellikte ve karmaşıklıkta bir
bilgisayar içinde gerçekleşiyor.
Bu karmaşık ağın yapısı ve esnekliği,
bağlantıların oluşturduğu kombinasyonlar da kolay kolay taklit
edilemeyecek miktarda. En azından günümüz için bu böyle, zira çok
çekirdekli masaüstü işlemcilerdeki transistör sayısı 2 milyara
yaklaştı. Bunu daha da arttırmak, çekirdek sayısını arttırarak
mümkün. Ancak sayı 20 milyar da olsa yapı çok
farklı. Mimari, amaca göre transistör sayısından
daha önemlidir. Bütün bunların çalışması için gereken
yazılım ise bambaşka bir makale.
Makineler belirli açılardan insan beynini geçse de, insan beyninin
bütün sırlarının çözülmesine daha çok var.
Sanal nöron: Perceptron
İnsan beyninin tamamının çalışma şeklini çözmek ve kopyalamak
bir yana, nörönun işini bilgisayara yaptırmak bir
mesele.
Daha 1957 yılında Fran Rosenblatt bu işi yapmak
için tek bir nörön modeli hazırladı: Perceptron.
Algılayıcı, fark edici gibi anlamlara gelen Perceptron, biçim
algılamak için hazırlandı. Biçim dediğimiz sade
objelerin şekli değil, düzeni. Yani tekrar eden,
benzerlik gösteren özelliklerin algılanabilmesi
demek.
Bir insana birkaç tane resim gösterip ortak nokta
sorduğunuzda pek çok şey algılayabilir. Örneğin resimlerdeki ortak
rengi, objenin ismini, kişilerin cinsiyetini ya da da başka bir
ortak noktayı bulabilir. İşte mesele bilgisayarlara bunu
yaptırabilmekte yatıyor.
Kendisi amacına ulaşamasa, başarısız olsa da Perceptron'un
tasarımını, meseleyi derinlemesine anlayabilmek
için bilmek gerekiyor.
Perceptron nasıl çalışıyor?
Perceptron'un tasarımı gayet basit, veriler
giriyor ve her verinin bir ağırlığı var. Veri
temel olarak 1 ve 0 olsa da taşıdığı ek bir değer olan ağırlık ile
çarpılarak hesaplanıyor.
Sonuçlar ortaya konuyor ve sonuç değerler belirli
bir aktivasyon eşiğini aşıyorsa 1 yani doğru,
aşmıyorsa 0 yani yanlış sinyali gönderiliyor. Böylece bilgisayar
sadece doğru ve yanlış veri girişi değil, gelen verilerin
doğruluk oranını da hesaba katmış oluyor. Tam
aradığını bulamasa da, en yakın sonucu
buluyor.
Bu işleme yardımcı olmak için başa bir de eğilim
katılıyor. Eğilim de sonuçları daha doğru hale getirmek için sabit
bir değer. Bu değer sayesinde perceptronun
kararsız kalması engelleniyor ve ya 1 ya 0 bir
sonuç iletiliyor.
Elbette akla ağırlıkların nereden geldiği sorusu
geliyor. Ağırlıklar da önceden hesaplanmış sonuçlara göre
belirleniyor. Biraz detaya inelim...
Eğitimin önemi
Burada eğitim setleri devreye giriyor. 1 ve 1
verisi 1 sonucunu, 0 ve 1 verisi 0'ı, 0 ve 0 verisi 0'ı, 1 ve 0
verisi de 0 sonucunu veriyorsa, burada sonuçların çoğu 0 olacaktır.
Yani ağırlık 0'dır, bu şekilde belirlenen ağırlık, 4 kombinasyondan
3'ünde doğru sonuç verecektir. Bu eğitim seti 1
hata üretecektir.
Ağırlıklar bu hatayı da hesaba katacak şekilde
değiştirilir. 0 ve 1 arasında bir sabit belirlenir, bunun adı da
öğrenme oranıdır. Bu teoride işe yarasa da tek
katmanlı perceptron başarılı olamamıştır. İşte bu yüzden
çok katmanlı sisteme geçilmiştir.
İlk sistem ileri doğru veri ileten nöral ağ iken, çok
katmanlı sistemde en az üç katman vardır ve daha iyi
sonuçlar alınmaktadır. Girdi katmanı, gizli katman
ve çıktı katmanından gizli ve çıktı katmanları birer perceptrondur.
Gizli katman örnekte üç adet perceptrondan olur ama bu sayı
artabilir. Bu sayı arttıkça başarı artar. Örneğin 10 tane olursa
10'luk sayı sistemindeki rakamlar, görsel olarak
tanımlanabilir.
Sorunun çözümü
Bu tür ağların esas sorunu eğitim setlerinin gerekmesidir. Sinir
ağını eğitmek için geri-yayılım algoritması
geliştirilmiştir.
Perceptron'un çıktısını 0 ya da 1 yerine 0 ve 1 arasında bir değer
olarak belirleyen bilim adamları bu sayede daha
esnek ve adım adım gelişen sonuçlar verebilen bir
sistem elde etmiştir.
Kullanılan standart bir fonksiyon: f(x) =
1/(1+e-x) şeklindedir. Başka algoritmalar hiperbolik
tanjantı ve hata fonksiyonunu da işin içine dahil etmiştir.
Ağırlıklı girdiler yoğun olduğunda 1'e yakın, çok
az olduğunda 0.5'e, çok büyük ve negatif olduğunda
ise 0'a yakın bir sonuç verilmektedir.
Bu sayede ağ artık daha iyi hesaplama yapabilir,
hassasiyet arttırılmış ve hata oranı
düşürülmüştür. Bu daha da geliştirilmiştir ancak detaylar gittikçe
daha karmaşık bir hal almaktadır.
Yapay zekanın gelişimi
Başarılı benzerlik algılama algoritmaları için
büyük eğitim setleri gerekmektedir. Yani önceden hesaplanmış
sonuçların, birbirine benzer olduğu bilinen büyük
katalogların sisteme yüklenmesi gerekiyor.
Hesaplanan ağırlıklar sayesinde yapay zekanın benzer
olanı bulması son derece kolaylaşmaktadır.
Ancak bu iş pek de kolay değildir, dev miktarda
emek gerektirmektedir. Hassasiyeti arttırmak için
kullanılması gereken veri miktarı da katlanarak
artar. İşte bu yüzden bu yöntemin verimliliği de kısıtlıdır. Yine
de günümüzdeki veri birikimi ve bunu işlemeye harcanan
kaynaklar, başarılı yüz tanıma hatta görsel arama
teknolojilerinin günlük hayatta kullanılabilir
hale gelmesine yetecek denli gelişmiştir.
Yapay zekanın geliştirilmesi, hem algoritmaların, hem de uygun
farklı donanımın geliştirilmesiyle yakından alakalı. Günümüzde
büyük miktarda veri karşılaştırması yapabilen başarılı
algoritmaların ticari değeri büyük. Bu yüzden
açıkladığımız temeller üzerine gelişmeler devam
edecek.
Yapay zekanın gizemleri!
Bu makalemizde yapay zekanın, insan beynini nasıl taklit
ettiğini açıkladık. Ancak ileride bu temellerin de değişmesi, kendi
kendine öğrenen yapay zekanın farklı donanım ve
yazılım temelleri üzerine oturtulması da
mümkün.
Bu konu çok derin ve tıpkı nöronlar gibi dallanıp
budaklanarak, kendisine benzer en az 10.000 konuya
bağlanıyor. İşte bu yüzden, En azından sadece bu makalede konunun
ancak oldukça küçük, ama bir o kadar önemli bir
kısmıyla yetiniyoruz.
Bugün bebeklik çağında olan, bol bol bilgi ve
örnek beslenmesini gerektiren yapay zekanın yapısı henüz bilinç
kazanmasına imkan tanıyacak denli gelişmedi. Ama gelecekte ne
olacağını kimse bilemez...