Yapay Zeka (AI)

Bilimin özünde deney yani deneme yatar. Toeri’den kurama; kuramdan yasa ’ya geçebilmek için bilim dünyası sürekli olarak deney tasarlar, gözlem yapar ve öğrenir. Bu zamana kadar bu süreç hep bu şekilde olmuştur; ancak AI (yapay zekâ) bu metodu değiştirmeye çoktan başladı bile. Artık, deneyler çok daha hızlı, doğru ve en önemlisi algoritmalar üzerinden gerçekleşiyor…

AI sistemlerinin temel karakteristiği ‘öğrenme, adaptasyon ve yorumlama’ olarak tanımlanabilir. Bunu şöyle açıklayalım. Önceleri expert sistemler üzerinden bilgi alırdık. Look-up table dediğimiz, kısıtlı (poor data) ancak uzman bilgisine dayanan veri tablolarından elde edilen veri setleri üzerinde istatistik bilimi uygulamaları ve oldukça düşük işlem yeteneğine sahip işlemciler (low computing power) üzerinden analiz yapmaya, süreci anlamaya, yorum yapmaya, geleceği ön görmeye çalışırdık. Ancak şimdi AI ile bu konu farklı bir boyuta geçmiştir. Verilerden sadece geçmişi değil gelecekte ne olabileceğini ya da verilerin bilmediğimiz ancak bize faydası olacak başka neler içerdiğini öğrenebiliyoruz. Örneğin, AI sistemleri artık sadece bir masanın yanına sandalye konulması gerektiğini (Context) değil aynı zamanda masanın dört ayağı olduğunu, üzerine bir şeylerin konulabileceğini de yorumlayarak verinin amacı dışında farklı domainlerde de kullanılabilmesinin önünü açmaktadır (Abstraction).

AI sistemlerini genel olarak üç farklı konunun aynı amaç doğrultusunda bir araya gelmesi ile elde edilen; geçmişi açıklayan ve geleceği ön gören, insanların klasik yöntemlerle hem zaman hem de teknik açından elde edilebilmesi pek mümkün olmayan anlamlı bilgilere ulaşmasına ve kullanmasına olanak sağlayan sistemler bütünü olarak yapabiliriz. IoT ile gelen büyük veri geçmişin poor data kavramının sorunlarını ortadan kaldırırken; CPU/GPU alanındaki gelişmeler işlem yapma hızının (computing power) oldukça ötelere gitmesine olanak sağlayarak, algoritmalar üzerinden gerçekleşen öğrenme sürecinin (iterasyon) gerçekleşebilmesine olanak sağlamaktadır. Bir başka ifade ile şu dönemde AI konuşmamızın ana nedeni büyük veri, işlem hızı ve algoritma alanındaki muazzam gelişmelerdir.

AI sistemini çok genel olarak altı ana bileşen altında irdeleyebiliriz.

  1. Veri (Data): Sensorlar ya da diğer veri kaynaklarından gelen yapılandırılmış veya yapılandırılmamış veriler. Verilerin 90% si yapılandırılmamış kategoridedir. Ancak, AI uygulamalarında değer katan sonuçların 90% ‘ı hemen hemen 10% kısmı oluşturan yapılandırılmış verilerden elde edilir.
  2. Veri hazırlama (Data Preparation): AI sistemlerinde veri setleri aynen excel tabloları gibi satı ve sütunlardan oluşurlar. Veri analizinde vektör, matris ve tensorlerin kullanılması için bu düzen gereklidir. Ancak, aynı zamanda verilerin etkin/hızlı bir şekilde işlenebilmesi, matematiksel modelin doğru oluşturulabilmesi için veri setleri üzerinde hummalı çalışmaların yapılması gerekir (AI uygulamalarında en uzun zamanı bu aşama alır). Verilerin güvenilir, doğru olmasının yanı sıra veri boyutun azaltılması (PCA: Principle Component Analysis) konusu bu aşamada oldukça önemlidir. Zira, makine öğrenmesi süreci gerçekte bu aşamadan sonra başlar. Bu amaç doğrultusunda calculus ve istatistik bilimimin birçok teori ve kuramından faydalanılır. Örneğin; Covariance matrix, veri setleri arasında korelasyon olanları elimine ederek, aralarında ilişki olmayan veri setlerini dikkate alarak veri setinde boyut indirgemesi yapan bir tekniktir. Tabi bununla da iş bitmemektedir. Verilerin normalize edilmesi, outlier eliminasyonu, boş verilerin doldurulması, text verilerin rakamlara dönüştürülmesi gibi birçok şeyin bu aşamada yapılması gerekir. Zira işlem yapma hem maliyetli hem de uzun zaman alan süreçtir. AI sistemine ne girerseniz onu elde edersiniz (garbage in garbage out).
  3. Modelleme (Algorithms): Algoritmalar sürecin beynidir dersek yanılmayız. Intelligence ya da öğrenebilme süreci algoritmalar olmadan gerçekleşemez. Yapay Zekâ (AI) dediğimiz unsurun temelinde ‘deneme (iteration) & öğrenme (learning)’ unsuru yatar. Öğrenme yeteneği (Intelligence) yani birçok girdi verisi ile çıktı atasında matematiksel ilişki kurabilmek (veriyi modelleyebilmek), modellenen veri üzerinden tahminde bulunabilme yetisi AI’ın en temel karakteristiğidir (Machine Learning).  Bunun için AI’ın öncelikle verileri anlamlı bir fonksiyona dönüştürmesi (y= f {x1, x2…, xn}, AI is function aproximation); bu işi gerçekleştirebilmesi için de binlerce hatta bazen milyonlarca defa deneme (iterasyon) yapması gerekir. İterasyon yaparak, hata (error) fonksiyonunu minimize eden matematiksel modeli bulmak ve bulduğu model üzerinden tahmin gerçekleştirmek AI dan beklenen ana işlevdir. Algoritma alanında birçok yeni teknik/metot geliştirilmektedir. Ancak, Lineer cebir ve calculus bilmeden AI sistemleri için algoritma geliştirebilmek pek mümkün değildir. Bu konuda AI sistemlerine referans teşkil eden en eski algoritma perceptron learning algoritmasıdır (+backpropogation). Halen dahi neural networklerde kullanılan bu algoritma (Multi Layer Perceptron) ile support vector machine, random forest, KNN, Lineer Regression gibi birçok farklı algoritma yine farklı amaçlar için AI uygulamalarında kullanılmaktadır.
  4. Knowledge (Human & Machine Teaming). Elbette ki insan ve makine arasında temel farklılıklar vardır. Sürecin basit ve ölçeğin yüksek olması durumunda makineler avantajlı iken; kompleks ve düşük ölçekli süreçlerde insan faktörü halen en doğru çözümü sunabilmektedir. AI konusu Narrow AI ve General AI olarak iki kısımda incelenmektedir. Belirli bir amaç doğrultusunda tasarlanan (ses tanıma, görüntü tanıma, vs.,) AI sistemler narrow AI olarak tanımlanırlar. Tam otonomiye (full autonomy) olarak tanımlanan ki henüz tam mevcut değil general AI olarak tanımlanırlar. AI konusu yukarıda belirttiğimiz gibi binlerce girdi verisi ile çıktı verisi arasındaki ilişkiyi matematiksel olarak modellemek olarak da tanımlanabilir. Veri olmadan (doğru veri) AI sistemi sonuç üretemez. Bu aşamada insan/makine arasında iş bölümünün yapılması gerekir.
  5. Etkileşim (Interact with user). AI sistemleri ile verileri sınıflandırma (classification), gruplama (clustering), geleceği tahminleme (estimation/prediction), keşfetme (searching), optimizasyon ya da farklı çıkarımlar (inference) elde edebiliyoruz. Ancak, bilmek tek başına fayda sağlamıyor; bilgiyi kullanmak da gerekiyor. Etkileşim AI sistemlerinin ürettiği çıktının kullanıcılar tarafından kullanılması sürecidir.
  6. İşlem yeteneği (Computing Power). AI’ın gündemde olmasında işlem yapma hızının oldukça etkisi var. İterasyon süreci her ne kadar veri boyutu, algoritma yeteneğine bağlı olsa da işlem hızının da o denli önemi var. AI, desktop seviyesinde (CPU level) işlem hızı kısıtları nedeniyle sınırlı alanlarda yapılabiliyor. Google, Amazon, Facebook bir devler dil, görüntü, ses işleme, otonom sürüş gibi alanlarda çok güçlü ve hızlı farklı işlemciler (GPU level) kullanıyorlar. Ancak, yine de AI üzerinden istedikleri her şeye henüz ulaşamıyorlar ancak bu konuda çalışmalar üç yönlü yapılıyor: veriyi boyutunu küçültme, daha akıllı algoritmalar ve işlem hızı çok yüksek, daha düşük enerji gereksinimi olan, mevcuda göre çok daha güçlü süper bilgisayarlar. Fizik, kimya, biyoloji ve malzeme alanının ortak çalışmaları sonucu gelişecek olan Quantum Computing (super position) bu eksikliği dolduracak ve yakın bir zamanda bizi Quantum AI çağına itecek gibi duruyor…

AI konusu önümüzdeki yıllara damga vuracak gibi. Bu alanda çalışacak uzman veri bilimcilerine ve yapay zekâ mühendislerine olan gereksinim daha da artacak gibi duruyor. Genç arkadaşlara bu konuyu dikkate almalarını öneririm.

Yakın Gelecek | Quantum AI (New Machine Age)

Çok yakın bir zaman içinde yeni bir devrim ile karşı karşıya kalacak gibiyiz. Quantum AI…

AI ve Quantum Computing ile konvansiyonel teknolojiler üzerinden yapılamayan birçok şey yapılabilir duruma gelecek ve yapmakta olduğumuz birçok aktif faaliyet makinelere devredilecek gibi gözüküyor:

AI, epeydir bilinmesine rağmen gerekli koşullar oluşmadığı için gündemimize alamadığımız bir konuydu. Ancak, şimdi 1) Big Data (IoT), 2) Computing Power, ve 3) Algoritma alanındaki gelişmeler sayesinde etkisini hemen her alanda artırarak hissettiriyor. Geçmiş verilerden (Supervised / Un-supervised Learning) ya da deneyimlerden (reinforcement learning) öğrenerek model oluşturmak ve oluşturduğu model üzerinden geleceği tahminleme (regression), verileri sınıflandırma (classification), gruplandırma (clustering) işlemlerini yapabilmek AI’ın yetileri arasında. AI ‘daki Intelligence kavramı modelleme yapabilme özelliğinden (function aproximation); modelleme yeteneği öğrenebilme karekteristiğinden (learning ability); öğrenebilme yeteneği iterasyon hızından (computing power); iterasyon hızı ise algoritma (math & stats) ve büyük veriden (IoT) geliyor. Yani işin özünde: büyük veri, işlem hızı ve algoritmalar var.

AI, desktop seviyesinde (CPU level) işlem hızı kısıtları nedeniyle sınırlı alanlarda yapılabiliyor. Google, Amazon, Facebook bir devler dil, görüntü, ses işleme, otonom sürüş gibi alanlarda çok güçlü ve hızlı farklı işlemciler (GPU level) kullanıyorlar. Ancak, yine de AI üzerinden istedikleri her şeye henüz ulaşamıyorlar. Veri ve algoritma alanında çok temel sorunlar olmasa da ana sorun Computing Power ya da Iterasyon hızı (işlem ya da hesaplama hızı). AI, veri hazırlama süreçlerinde çok yüksek boyutlu büyük veri paketlerini hızlı bir şekilde çözümleyebilmek için mevcut durumda filtreleme, temizleme, örnek alma ya da özellik azaltma/birleştirme gibi teknikler kullanılsa dahi hayal edilen kurguya ulaşabilmek için işlem hızı çok yüksek, daha düşük enerji gereksinimi olan, mevcuda göre çok daha güçlü süper bilgisayarlara gereksinim var. Fizik, kimya, biyoloji ve malzeme alanının ortak çalışmaları sonucu gelişecek olan Quantum Computing (super position) bu eksikliği dolduracak ve yakın bir zamanda bizi Quantum AI çağına itecek gibi duruyor…

Quntum CPU’lar ile işlem yapabilme yetisi çok farklı bir boyuta geçecek ve şu an hayal edilen ve yapılamayan birçok şeyin makineler tarafından yapılabildiğini göreceğiz. Belki de tarihin tekerrür etmesi gibi yeni bir makine çağına gireceğiz.