Kusuruma bakmayın, bu yapay zeka dizisi uzuyor ama gördüğüm kadarıyla ilgi de çekiyor. Bugün, biraz lafı uzatmak pahasına, konuyu en temelden anlatmaya başlamalıyım.
Algoritma, hepimizin gündelik hayatımızda sık sık duyduğumuz bir matematik kavramı haline geldi.
Aslında algoritma, çok basitçe her hangi bir işi yaparken o işi yapma sıramız demek. Sıralamanın kendisi çok önemli çünkü.
Örneğin önce ayakkabımızı giyip sonra çorap giymeye kalkışamayız. Farkında olarak veya olmayarak hepimiz işlerimizi belli bir sırayla yaparız. Bulaşık yıkarken örneğin, önce kirli bulaşıkları makinaya koyar, sonra deterjan ilave eder ve en son kapağı kapatıp düğmelere basarız. Önce makinayı çalıştırıp sonra bulaşıkları içine koyamazsınız.
Algoritma işte bu demek. İşlemleri bir mantık dizgesi içinde ardı ardına yapmak. Üç haneli rakamları toplarken örneğin, önce birler, sonra onlar, sonra yüzler hanelerini toplarız. Toplama işleminin algoritması budur çünkü.
Algoritma, insan dünyada var olalı beri var olan bir şey. Baktığınızda neredeyse bütün hayvanların da beyinlerinde işlemleri sıraya dizdiğini, yani algoritma kullandığını görürsünüz. Doğanın düzeni de bu.
Algoritmalar sayesinde epey eski zamandan beri robotlarımız var. Bulaşık makinesi örneğini verdim. Hepimizin mutfağındaki robotlardan biri bu. Çamaşır makinası da öyle. Fabrikalardaki otomasyon yine algoritma sayesinde olan bir şey.
Kol emeğinin yerine algoritmayla çalışan robotların gelmesi en azından 120 yıllık bir fikir. Henry Ford, fabrikasında bu robotlaşmayı ilk geliştirip otomobil fiyatını çok ucuzlattığında, Türkiye'de Nazım Hikmet bile şiirini yazmış, bu yeni insanlık halini eleştirmişti: "Makinalaşmak istiyorum."
Peki matematik yapan robotlarımız olamaz mıydı Bu işe ilk olarak bir İngiliz mühendis 19. yüzyılda kalkıştı. "Babbage Makinesi" olarak bilinen bu hesap makinesini bir türlü yapamadı ama ona bu çabasında yardımcı olan Ada Lovelace isimli olağanüstü kadın sayesinde bugün de kullandığımız bilgisayar dili ortaya çıktı.
2. Dünya Savaşı sırasında, İngilizler, Nazi Almanyası'nın "Enigma" adını verdiği karmaşık şifreleme klavyesini çözmeye, yani Nazi şifrelerini okumaya çalışıyordu. Alman Donanma Komutanlığı her sabah denizaltılarına o günkü hava durumunu bildiren mesajlar yolluyordu ve şifreyle. Eh, hava durumunu İngilizler de üç aşağı beş yukarı biliyordu, bu sayede şifreli mesajı okumaya, onu okuyunca da daha sonra gidecek diğer mesajları okumanın anahtarını bulmaya çalışıyorlardı.
Bu amaçla ülkenin en iyi matematikçi ve dil bilimcileri bir araya gelmiş çalışıyordu. İşlerinin önemli bölümü tekrara dayalıydı ve zamana karşı yarışıyorlardı, çünkü Nazi'ler şifre anahtarını her gün değiştiriyordu. Yani bugün şifreyi çözmek bir anlam ifade etmiyordu, yarın sabah yeniden sıfırdan başlanıyordu.
Alan Turing adlı efsanevi matematikçi, bu şifre çözümünü hızlandırmak için tarihin ilk bilgisayarını yaptı. Konuştuğumuz, yazdığımız dili matematiğe çevirdi, bilgisayarına da matematiksel işlemleri yaptırdı. Algoritma sayesinde bunu başardı.
Alan Turing bunu yaparken bir bilim insanı olarak elbette ileriye doğru fikri bir sıçrama da yaptı, bilgisayarların bugün bile kullandığımız matematiksel temelini bir teorem olarak ortaya koydu. Turing, yaptığı teorinin "düşünen makine" olduğunu düşünüyordu, o zamanın ilkel elektronik şartlarına rağmen bir gün bilgisayarların insanları tam olarak taklit edebilecek güce erişip erişemeyeceğini merak etti, hatta bu amaçla "Turing Testi" denen insanla makineyi ayırt etme testini de düşündü.
Bugün kullandığımız modern bilgisayarın atası Alan Turing'le birlikte Macar kökenli Amerikalı dev isim John von Neumann'dır. Von Neumann, bugün dahil kullandığımız "bilgisayar mimarisini" yani aslında bütün mikroişlemcilerin içindeki algoritmanın temel kurallarını yazan insandır.
Von Neumann'ın mimarisi, mantık gereği ve kaçınılmaz biçimde bir "huni ağzı" yaratır. Son kertede bilgisayar bir belirli anda sadece bir işlem yapabilir, çünkü bütün mantık dizgeleri nihayetinde bize iki olası cevaptan birini, 0 veya 1'i verir.
Bu huni ağzı, ister istemez işi yavaşlatır. Onu hızlandırmanın yolu, daha küçük bir alana daha fazla mikroişlemci sığdırmaktır. Bugün elinizde taşıdığınız Apple marka akıllı telefonun içinde 4,5 milyar tane böyle işlemci var. Nvidia'nın geçen yıl piyasaya çıkardığı Blackwell işlemcilerin içinde tam 208 milyar tane işlemci var. Bu, aynı anda 208 milyar tane işlem demek.
Bu hikayeyi anlattım, bilgisayarların hızlanmasını anlatabilmek için. Şimdi bilgisayarlarımız da hızlandığına göre, algoritmalarımızı nasıl hızlandırabiliriz, ona bakalım.
Kapitalizm, hepimiz biliyoruz, daha fazla satmak, daha fazla tüketmek üzerine kurulu bir ekonomik düzen. Bütün şirketleri örnek olarak kullanabilirim ama daha kolay anlatmak için ben Netflix'i seçtim.
Pek çok kişi gibi ben de Netflix abonesiyim. Ben bu platformda film ve dizi izliyorum, platform da beni izliyor. Çünkü her davranışım orada iz bırakıyor. Ve platform benim bıraktığım bu izleri bana daha fazla film ve dizi izletmek için, yani pazarlama yapmak için kullanıyor. Bana sürekli, daha önce izlediğim filmlere, dizilere benzer şeyler öneriyor.
Bunu nasıl yapıyor "Öğrenen algoritmalar" sayesinde. Eskiden bu teorik olarak mümkündü ama pratikte mümkün değildi. Şimdi işlemci kapasitesinin artması, yani bilgisayarların hızlanması sayesinde artık mümkün.
Peki ama algoritma nasıl öğreniyor Bunu da muazzam bilgi biriktirme ve sonra da o bilgiyi yeniden işleme kapasitesi sayesinde ve yazılımcıların bazı dahiyane çözümleri sayesinde yapıyor. Sizinle ilgili biriktirdiği bilgiyi sürekli taze tutuyor.
Pazarlama dünyasında kullanılan bu öğrenen algoritmalar acaba daha genel hale getirilebilir, mesela bizimle sanki insanmış gibi sohbet eden robotlar yapılabilir mi
90'lı yılların sonlarında üç matematikçi, bugün adına "yapay zeka" dediğimiz çok gelişmiş algoritmaları ortaya koyan teoriyi geliştirdi. Bu "makine öğrenmesi" adı verilen yöntemdi.
Nasıl Netflix'in makinesi benim sevdiğim ve sevmediğim dizileri filmleri öğrenebiliyorsa, bir başka makine bu kadar da spesifik olmayan alanlarda, çok daha genel alanlarda bir sürü şeyi "öğrenebilir"di.
İşte, Google tarafından satın alınan İngiltere'deki müthiş (ve artık Nobel ödüllü) yapay zeka şirketi DeepMind ilk çıkışını, birkaç günde satranç öğrenen ve sonra da zamanın dünya şampiyonu Gary Kasparov'u yenen programıyla yapmıştı.
'Makine öğrenmesi' bu. Herhangi bir konuyu insana göre çok kısa sürede öğrenebiliyor makinalar.
Sonra birileri makinelerin konuştuğumuz dili öğrenmesine kafa yormaya başladı.
Burada karıştırmamamız gereken önemli bir konu var, sonrası için gerekli diye burada yazıyorum: Bir insanın bir şeyi "öğrenmesi" ile makinenin öğrenmesi aynı şey değil. Biz okuyarak veya görerek öğrenirken kelimelerin "anlam"larına yoğunlaşır, anlamlar arasında bağ kurar ve öyle öğreniriz. Oysa makinenin kelimenin "anlam"ını anlamasına imkan yoktur. Bunu ona biz dikte ederiz.
Gabriel Garcia Marquez'in "Yüzyıllık Yalnızlık" romanında müthiş bir bölüm vardır. Macondo kasabasına sürekli yağmur yağmaya başlar ve insanlar yağmur tıkırtısından yavaşça delirirler, neredeyse her şeyi unutmaya başlarlar. Bunun üzerine mesela kapıların üzerine "kapı", masanın üzerine "masa" yazılarak insanların "anlam"ları unutmasının önüne geçmeye çalışırlar.
Bugün adına Geniş Dil Modeli (LLM) denen devasa veri tabanları aynen Marquez'in romanındaki yöntemle çalışır. Bu modelin içindeki her kelime, o kelimenin anlamını ifade eden bir de "etiket"e sahiptir. O sayede bilgisayar kelimeler ve onların anlamları arasında, bizim kendi beynimizde otomatik olarak kurduğumuz ilişkiyi kurar ve "konuşur."