Derin öğrenme, ChatGPT veya görsel üretim araçları hakkında konuştuğumuzda, arka planda çoğu zaman bir yapay sinir ağı bulunuyor. Günümüzde kullanılan yapay zeka sistemlerinin önemli bir bölümü bu yapı üzerine kuruluyor. İsmi ilk duyulduğunda karmaşık görünse de temel mantığını parçalara ayırdığımızda aslında oldukça anlaşılır bir fikirle karşılaşıyoruz.
Beyinden ilham alan bir yaklaşım
İnsan beyninde yaklaşık 86 milyar nöron bulunuyor. Her nöron çevresindeki diğer nöronlardan sinyaller alıyor. Gelen sinyaller belirli bir seviyeye ulaştığında nöron aktif hale geliyor ve aldığı bilgiyi diğer nöronlara iletiyor.
Zekanın nasıl ortaya çıktığını hâlâ tam olarak çözememiş olsak da milyarlarca küçük birimin birbiriyle iletişim kurması bu sürecin temel parçalarından biri.
Yapay zeka araştırmacıları da bu fikirden ilham alarak bunun oldukça basitleştirilmiş matematiksel bir modelini geliştirdi. Buna yapay sinir ağı adı veriliyor.
Burada “ilham” kelimesinin altını çizmek gerekiyor. Yapay sinir ağı dijital bir beyin değil. Gerçek nöronların çalışma biçimini birebir taklit etmiyor. Yalnızca birbirine bağlı birimlerin sinyal iletmesi fikrinden yararlanıyor. Gerçek nöronlar ve biyolojik sinir sistemleri bundan çok daha karmaşık.
Yapay bir nöron ne yapar?
Tek bir yapay nöron aslında oldukça basit bir hesaplama yapıyor.
Kendisine bazı sayısal girdiler geliyor. Her girdiye bir ağırlık veriliyor. Bu ağırlık, ilgili girdinin sonuç üzerindeki etkisinin ne kadar önemli olduğunu belirliyor. Daha sonra bu değerler bir araya getiriliyor ve bir çıktı üretiliyor.
Temel olarak yaptığı işlem bundan ibaret.
Asıl güç tek bir nöronda değil, binlerce hatta milyonlarca nöronun birbirine bağlanmasından ortaya çıkıyor.
Nöronları katmanlar halinde birleştirmek
Yapay sinir ağlarında nöronlar genellikle katmanlar halinde düzenleniyor. Bilgi bir katmandan diğerine doğru ilerliyor.
Girdi katmanı, sisteme verilen ham veriyi alıyor. Örneğin bir fotoğrafı ele alıyorsak buradaki pikseller sayısal değerler olarak sisteme aktarılıyor.
Gizli katmanlar, verinin asıl işlendiği bölümü oluşturuyor. Her katman kendisine gelen bilgiyi dönüştürüyor ve bir sonraki katmana aktarıyor.
Çıktı katmanı ise ağın ürettiği son sonucu veriyor. Örneğin fotoğrafın bir kediye ait olduğunu belirtebiliyor.
Bunu bir yüz tanıma sistemi üzerinden düşünelim.
İlk katmanlardan biri görüntüdeki basit çizgileri ve kenarları fark edebilir. Sonraki katmanlar bu çizgileri bir araya getirerek köşeler, eğriler ve daha karmaşık şekiller oluşturabilir. Daha ilerideki katmanlar bu şekilleri birleştirerek göz, burun veya ağız gibi yüz özelliklerini ayırt edebilir.
Sistemin ilerleyen katmanlarında artık tek tek piksellerden çok daha anlamlı özellikler ortaya çıkar. Sonunda ağ, tüm bu bilgileri bir araya getirerek görüntünün tanıdığı bir kişiye ait olup olmadığına karar verebilir.
Her katman kendisinden önce gelen katmanın oluşturduğu bilginin üzerine yeni bir anlam katmanı ekler.
Öğrenme nerede gerçekleşiyor?
Biraz önce bahsettiğimiz ağırlıklar, yapay sinir ağlarının öğrenme sürecinin merkezinde bulunuyor.
Ağ eğitilirken nöronların yerleri değişmiyor veya ağ baştan aşağı yeniden kurulmuş olmuyor. Bunun yerine milyonlarca ağırlık küçük adımlarla güncelleniyor.
Amaç, ağın ürettiği sonuçları giderek daha doğru hale getirmek.
Önceki yazıda bahsettiğimiz tahmin etme, hatayı ölçme ve kendini ayarlama döngüsü burada çok daha büyük bir ölçekte gerçekleşiyor. Ağ, birbirine bağlı çok sayıda nöron ve bu bağlantıları belirleyen milyonlarca ağırlık üzerinden sürekli olarak kendisini güncelliyor.
Bu açıdan eğitilmiş bir yapay sinir ağını, girdileri anlamlı sonuçlara dönüştüren belirli bir ağırlıklar bütünü olarak düşünebiliriz.
Peki neden “derin” öğrenme?
Çok sayıda gizli katmanın üst üste eklenmesiyle oluşturulan sinir ağlarına derin sinir ağları deniyor. Bu ağların eğitilmesi ise derin öğrenmenin temelini oluşturuyor.
Daha fazla katman, modelin daha karmaşık ve daha soyut örüntüleri öğrenmesine imkan tanıyor. Bu özellikle görüntüler, sesler ve doğal dil gibi karmaşık verilerle çalışırken büyük önem taşıyor.
Bir görüntüdeki basit çizgilerden başlayıp şekillere, nesnelere ve sonunda anlamlı bir sonuca ulaşabilmek bu katmanlı yapının en önemli avantajlarından biri.
Ancak her yapay sinir ağı aynı şekilde çalışmıyor. Farklı problemler farklı ağ yapılarını gerektirebiliyor. Görüntü işleme, metin analizi veya zaman içinde değişen veriler için farklı mimariler kullanılabiliyor.
Bir sonraki aşamada bu özel mimarilere daha yakından bakacağız.