İçeriğe geç
L'Atelier AI

Yapay Zeka Okuryazarlığı

Sinir Ağları: Bir Çocuğun Anlayacağı Dille

Dr. Gökhan Tahıl 8 dakika okuma

Bu yazıda
  1. Önce isim meselesi: beyinden ilham, ama beyin değil
  2. Tek bir yapay nöron: “Parka gidelim mi?” kararı
  3. Evde deneyin: kendi nöronunuzu kurun
  4. Tek nörondan ağa: katmanlar
  5. Ağ nasıl öğrenir?
  6. Sık sorulan üç soru
  7. Sinir ağları neyi iyi, neyi kötü yapar?
  8. Nerede karşımıza çıkıyor?
  9. Son söz

Yapay zeka haberlerinde sık sık “derin öğrenme” ve “sinir ağı” kelimelerini duyarsınız. Kulağa beyin cerrahisi kadar karmaşık gelebilir. Oysa bir sinir ağının en küçük parçası, bir çocuğun her gün verdiği kararlara çok benzeyen basit bir hesaptır. Bu yazıda o küçük parçadan başlayıp bütün ağa doğru ilerleyeceğiz.

Önce isim meselesi: beyinden ilham, ama beyin değil

Sinir ağları adını beynimizdeki sinir hücrelerinden, yani nöronlardan alır. Beyindeki bir nöron, diğer nöronlardan sinyaller alır ve bu sinyaller yeterince güçlüyse kendisi de bir sinyal gönderir.

Yapay sinir ağları bu fikirden ilham alır, ama beynin bir kopyası değildir. Gerçek nöronlar son derece karmaşık biyolojik hücrelerdir. Yapay nöron ise birkaç çarpma ve toplamadan oluşan basit bir matematik işlemidir. Bu farkı baştan bilmek, “yapay zeka beyin gibi düşünüyor” gibi yanlış fikirlerin önüne geçer.

Tek bir yapay nöron: “Parka gidelim mi?” kararı

Cumartesi sabahı parka gidip gitmeyeceğinize karar vereceğinizi düşünün. Aklınızdan üç soru geçiyor:

  • Hava güneşli mi? (Evet = 1, Hayır = 0)
  • Ödevim bitti mi? (Evet = 1, Hayır = 0)
  • Arkadaşım da geliyor mu? (Evet = 1, Hayır = 0)

Bu sorular girdilerdir. Ama hepsi sizin için aynı derecede önemli değil. Diyelim ki arkadaşınızın gelmesi sizin için çok önemli, hava biraz önemli, ödev ise orta düzeyde önemli. Bu önem derecelerine ağırlık diyoruz:

  • Hava: ağırlık 2
  • Ödev: ağırlık 3
  • Arkadaş: ağırlık 4

Şimdi her girdiyi kendi ağırlığıyla çarpıp topluyoruz. Bugün hava güneşli (1), ödev bitmemiş (0), arkadaş geliyor (1):

(1 x 2) + (0 x 3) + (1 x 4) = 6

Son olarak bir eşik belirleyelim: toplam 5 ya da üzerindeyse parka gidiyoruz. 6, 5’ten büyük olduğu için karar: Gidelim!

İşte bir yapay nöron tam olarak budur:

  1. Girdileri al.
  2. Her birini ağırlığıyla çarp.
  3. Topla.
  4. Sonucu bir kurala göre (burada eşik) bir çıktıya dönüştür.

Gerçek sinir ağlarında eşik yerine genellikle daha yumuşak geçişli aktivasyon fonksiyonları kullanılır ve toplama bir de “sapma” (bias) değeri eklenir, ama temel fikir aynıdır.

Evde deneyin: kendi nöronunuzu kurun

Bir kağıda yukarıdaki gibi bir tablo çizin ve kendi kararınız için bir nöron tasarlayın. Örneğin “Akşam yemeğinden sonra tatlı yiyecek miyim?”

  1. Üç girdi seçin (Yemeğimi bitirdim mi? Evde tatlı var mı? Dişlerimi fırçaladım mı?)
  2. Her birine bir ağırlık verin. Dikkat: ağırlık negatif de olabilir! Dişlerinizi zaten fırçaladıysanız, bu tatlı yeme isteğinizi azaltabilir. O girdiye -3 verebilirsiniz.
  3. Bir eşik belirleyin.
  4. Farklı günler için hesaplayın. Nöronunuz sizin gerçek kararınızla aynı sonucu veriyor mu?

Vermiyorsa ağırlıkları değiştirin. Şu an yaptığınız şey, bir sinir ağının eğitimde yaptığı şeyin elle yapılmış halidir.

Tek nörondan ağa: katmanlar

Tek bir nöron ancak basit kararlar verebilir. Güç, çok sayıda nöronun bir araya gelmesinden doğar. Nöronlar katmanlar halinde dizilir:

  • Girdi katmanı: Veriyi alır. Bir fotoğraf için bu, piksel değerleridir.
  • Gizli katmanlar: Asıl işi yapan ara katmanlardır. Her katman bir öncekinin çıktısını girdi olarak kullanır.
  • Çıktı katmanı: Sonucu verir. Örneğin “yüzde 90 kedi, yüzde 10 köpek”.

Bir fabrika bandı düşünün. İlk istasyondaki işçiler sadece vidaları takar, ikinci istasyondakiler parçaları birleştirir, son istasyonda ürün paketlenir. Kimse ürünün tamamını tek başına yapmaz, ama bant sonunda bitmiş bir ürün çıkar. Sinir ağında da her katman küçük bir iş yapar; birlikte karmaşık bir görevi başarırlar.

Gizli katman sayısı arttıkça ağ “derinleşir”. Derin öğrenme adı buradan gelir: çok katmanlı sinir ağlarıyla öğrenme.

Ağ nasıl öğrenir?

Parka gitme örneğinde ağırlıkları biz seçtik. Gerçek bir sinir ağında ise milyonlarca, hatta milyarlarca ağırlık vardır. Bunları elle ayarlamak mümkün değildir. Ağ, ağırlıklarını kendisi ayarlar. Süreç şöyle işler:

  1. Tahmin: Ağ bir örneğe bakar ve bir cevap üretir.
  2. Hata ölçümü: Cevap, doğru cevapla karşılaştırılır. Ne kadar uzak olduğu bir sayıyla ifade edilir.
  3. Geriye yayılım: Hata, çıktıdan girdiye doğru geri gönderilir. Her ağırlığın hataya ne kadar katkı yaptığı hesaplanır.
  4. Güncelleme: Her ağırlık, hatayı azaltacak yönde çok küçük bir miktar değiştirilir.
  5. Tekrar: Bu döngü binlerce örnek üzerinde defalarca tekrarlanır.

Üçüncü adımdaki yöntemin adı geri yayılımdır (backpropagation). Dördüncü adımda kullanılan yaklaşım ise gradyan inişi olarak bilinir.

Gradyan inişini sisli bir dağda aşağı inmeye benzetebilirsiniz. Etrafınızı göremiyorsunuz, ama ayağınızın altındaki eğimi hissedebiliyorsunuz. Her adımda en çok aşağı eğimli yöne küçük bir adım atarsınız. Sonunda vadiye, yani hatanın en az olduğu bir noktaya yaklaşırsınız.

Sık sorulan üç soru

Ağın içinde bilgi nerede saklanıyor? Ağırlıklarda. Ağ bir kediyi tanımayı öğrendiğinde, bu bilgi bir yere “kedi” diye yazılmaz; milyonlarca ağırlığın birlikte oluşturduğu bir düzen olarak saklanır.

Daha fazla katman her zaman daha mı iyi? Hayır. Daha büyük ağlar daha karmaşık örüntüleri öğrenebilir, ama daha fazla veri ve daha fazla hesaplama gücü ister. Az veriyle çok büyük bir ağ eğitmek, ağın örnekleri ezberlemesine yol açabilir. Buna aşırı öğrenme denir: ağ eğitim örneklerinde çok başarılı, yeni örneklerde ise zayıf kalır.

Ağ neden bu kadar çok hesaplama gücü ister? Çünkü her tahminde çok sayıda çarpma ve toplama yapılır ve eğitim bu tahminleri milyonlarca kez tekrarlar. Ekran kartları (GPU) aynı anda çok sayıda basit hesabı yapabildiği için bu işe çok uygundur.

Sinir ağları neyi iyi, neyi kötü yapar?

İyi yaptıkları:

  • Görüntülerdeki nesneleri tanımak
  • Konuşmayı yazıya çevirmek
  • Metin üretmek ve çevirmek
  • Büyük verideki karmaşık örüntüleri bulmak

Zorlandıkları:

  • Çok az örnekle öğrenmek
  • Kararının nedenini açıkça anlatmak (bu yüzden bazen “kara kutu” diye anılırlar)
  • Eğitimde hiç görmedikleri türden durumlarla karşılaşmak
  • Eğitim verisindeki önyargılardan kendiliğinden kurtulmak

Özellikle son madde önemli. Ağ, verideki örüntüleri öğrenir; veri dengesizse öğrendiği de dengesiz olur. Bu konuyu veri okuryazarlığı yazımızda da tartışıyoruz.

Nerede karşımıza çıkıyor?

Bugün kullandığımız yapay zeka araçlarının büyük kısmı sinir ağlarına dayanıyor. Görüntü tanıyan uygulamalar (bilgisayarlı görü yazımıza bakabilirsiniz), sesli asistanlar ve ChatGPT gibi sohbet robotları bunların başında geliyor. Sohbet robotlarının arkasındaki özel sinir ağı mimarisini büyük dil modelleri yazımızda anlattık.

Son söz

Bir sinir ağı, çarpma ve toplama yapan küçük karar birimlerinin katmanlar halinde bir araya gelmesidir. Öğrenme, bu birimlerin ağırlıklarını hatayı azaltacak yönde adım adım ayarlamaktır. Bu fikri kağıt üzerinde bir kez deneyen çocuk için “derin öğrenme” artık gizemli bir kelime değil, anlaşılabilir bir mekanizmadır.

L’Atelier AI’da bu tür kavramlar, en fazla 10 kişilik gruplarda proje üzerinden, keşfederek öğreniliyor. İlginizi çektiyse ön kayıt sayfasından bizimle iletişime geçebilirsiniz.

Yazar: Dr. Gökhan Tahıl

L'Atelier AI'ın kurucusu ve mentoru. Galatasaray Üniversitesi Bilgisayar Mühendisliği; Université d'Artois'da yapay zeka doktorası.

Profil
Paylaş:

À toi de jouer.

Önce tanışalım.

Ücretsiz bir deneme oturumunda çocuğunuz atölyeyi görür, siz de mentorle konuşursunuz.