Derin Öğrenmeye Genel Bakış

Bu yazımızda yapay zeka ve derin öğrenme konularını ele alacağız. Son yıllarda sıkça duyduğumuz bu konular pek çok kişiye yabancı ve gizemli gelmekte. Ancak doğru bir anlatımla temel kavramlar anlaşılır hale gelebilir hatta derin öğrenme ve yapay zekayı geliştirmeye siz de katkı sunabilirsiniz. Lafı fazla uzatmadan öğrenmeye başlayalım.

Derin Öğrenme Nedir?

Derin öğrenme popüler bir çok katmanlı nöral ağ tipini anlatmaktadır. Bu yazıda örnek olarak üç katmanlı bir nöral ağ kullanacağız.

Derin öğrenme makine öğrenmenin bir alt kümesidir.

Makine öğrenme ise yapay zekanın alt kümesidir.

Derin öğrenmede dört ana kavram vardır. Bunlar:

  • İleri besleme
  • Global minimum
  • Dereceli alçalma
  • Geri yayılma

Bu kavramlar başta karmaşık ve anlaşılmaz gelebilir. Ancak hepsini uzun ve ayrıntılı örneklerle açıklayacağız.

Bir Örnek

Bir evcil hayvan dükkanınız olduğunu düşünelim. Bir ay önce kediler için yeni bir temizlik ürünü satmaya başladınız. Bu yeni ürünün adı “Kedim Mis!” olsun. Ticari başarınızın önemli bir kısmı yapay zekayı akıllıca kullanmanıza bağlı olabilir. Reklamlarınızı kimlere göndereceğinizi belirlemek için bir derin öğrenme nöral ağı oluşturabilirsiniz.

Gizli silahınız veri kümesidir. “Kedim Mis!” sattığınız geçen ay boyunca evcil hayvan dükkanı müşterilerinize yaptığınız anketler ile veri topladınız. Bu ankette şu soruları sordunuz:

1- Kaka yapan bir kediniz var mı?

2- İthal bira içiyor musunuz?

3- Son bir ayda internet sitemiz kedimmis.com’u ziyaret ettiniz mi?

4- Son bir ayda kaka yapan kediniz için Kedim Mis! satın aldınız mı?

Bu dört soruya aldığınız cevaplar geçmiş müşterilerinizin özelliklerini (karakteristiklerini) meydana getirir.

Önemli soru: Neden yapay zeka çok güçlüdür? Çünkü eski müşteri anketlerinizin cevaplarını alıp kullanarak kendini eğitebilir ve gelecekteki müşterilerinizin satın alma davranışlarını doğru biçimde tahmin edebilir.

İlk olarak nöral ağınızı geçmiş müşterilerinizin ilk üç anket sorusuna verdikleri cevaplarla eğitirsiniz. Ağ bu verileri müşterinin Kedim Mis! alıp almadığını tahmin etmede kullanır. Ağ daha sonra tahminini dördüncü soruya verilen cevapla karşılaştırır. Dördüncü soruya verilen cevaplar ağınızın tahminlerini kıyasladığı gerçeklerdir. Örneğin ağınız ilk üç cevabı analiz ederek “Bu müşteri kesin Kedim Mis! almıştır” tahmininde bulunmuş ve dördüncü soruya verilen cevap gerçekten de “Evet” ise başarılı bir nöral ağınız var demektir.

Ağ kendini deneme yanılma süreci ile eğitir. Ağ tahmin yapar, ardından bu tahminleri dördüncü soruya verilen gerçek cevaplarla kıyaslar. Böylece pek çok yineleme sonrasında hatalarından öğrenerek tahminlerini iyileştirir.

Bir nöral ağın her zaman bir veri kümesi ile çalışarak başka bir veri kümesinde tahminler yaptığını anlamak önemlidir. Ağınız bir kere geçmiş müşteri anketleri üzerinde Kedim Mis! satın alanları tahmin etmede başarılı olduktan sonra yeni bir veri kümesine, yani yeni müşterilere salınabilir.

Örneğin bulunduğunuz bölgedeki bir veterinerden insanların anketin ilk üç sorusuna yanıt verdiği bir veri kümesi elde ederseniz nöral ağınız bu insanlar arasında reklamlarınızı kimlere yollamanız gerektiğini tahmin edebilir. Dahice, değil mi? Peki gerçekten bu nasıl olur?

Büyük Resim: Nöron ve Sinapslardan oluşan Bir Beyin Benzetmesi

Aşağıda inşa edeceğimiz 3 katmanlı nöral ağın “nöronlar ve sinapslar” formatındaki şeması bulunuyor.

Bu şekil reklam için hedeflemeniz gereken kişileri tahmin etmede kullanacağınız nöral ağı gösteriyor. Üç tabakalı, ileri beslemeli bir nöral ağ söz konusu. Girdi tabakası solda yer alıyor. İlk üç daire nöronları (veya düğümleri ya da özellikleri) temsil ediyor. Yani şemada üç sorudan oluşan sütun bir müşterinin cevaplarını gösteriyor. Örneğin ilk soruya “evet”, ikinci soruya “hayır”, üçüncü soruya “evet” diyen birinde en üstteki daire 1, ortadaki 0 ve en alttaki daire 1 değerini alır.

Sinapslar (daireleri birleştiren çizgiler) ve gizli tabaka nöral ağın beyninin düşünmeyi gerçekleştirdiği yerdir. Sağ tarafta dört sinapsa ilişik olan tek daire ağın tahminini temsil eder. “Bana verilen girdi özelliklerinin kombinasyonuna göre bu müşterinin Kedim Mis! alma (ya da almama) olasılığı şudur” der.

Sağ tarafta tek başına duran ve “y” ile etiketlenmiş daire gerçeği yani her müşterinin dördüncü soruya verdiği yanıtı temsil eder. Bu daire için sadece iki seçenek vardır. “0” “hayır satın almadım” anlamına gelirken “1”, “evet, satın aldım”ı temsil eder. Nöral ağımız bir olasılık tahmininde bulunarak gerçeği ne derece tutturduğunu karşılaştırır ve hatalarından öğrenerek bir sonraki denemede daha başarılı olmaya çalışır. Bu deneme-yanılma süreci saniyeler içinde binlerce kez tekrarlar.

Özetlersek yukarıdaki şema nöral ağları betimlemek için sık kullanılan bir yöntemdir. Özünde ileri beslemenin bir resmidir. İleri besleme dört ana kavramımızdan biriydi. Burada nöronların en önemli kısım olduğunu düşünebilirsiniz fakat öyle değildir. Aslında derin öğrenmenin dört ana kavramını yürüten şey sinapslardır. Yani bu bölümde öğrenmeniz gereken şey tahmin sürecinde sinapsların en önemli faktör olduğudur. Aşağıda bu süreci bir kase içinde yuvarlanan ping pong topu benzetmesi ile açıkladık.

Büyük Resim: Kase ve Top Benzetmesi

Bu kısımda yapay zekanın neden bu kadar güçlü olduğunu açıklayacağız. Yapay zeka olasılığı, bir sonraki tahmininde artırımlı iyileştirmeler yapmak için kullanır. Bu süreç deneme-yanılma ile öğrenmeyi yeni bir aşamaya taşır.

İnsanın nasıl tahmin yaptığını düşünelim. Masanızda eski müşterilerinize ait anket yığını olsun. Hemen yanında ise veterinerden aldığınız, potansiyel yeni müşterilere ait başka bir anket yığını var. Bir insan geçmiş anketleri kullanarak gelecek müşterilerin satın alma davranışlarını nasıl tahmin eder? Belki de şöyle düşündünüz: “Mantığım bana ithal bira içenlerle Kedim Mis! alanlar arasında muhtemelen hiçbir ilişki olmadığını söylüyor. Ayrıca müşteri anketlerine göz gezdirince kedisi olanlar ve internet siteme girenlerin Kedim Mis! alma ihtimalinin daha yüksek olduğunu fark ettim.”

Güzel. Tebrikler. Sadece üç soruluk bir anketi yanıtlayan dört müşteri ile bu tür bir çıkarımda bulunmak zor olmayabilir. Ancak ya 40 soruluk bir anketi cevaplayan 4000 kişi söz konusu ise? O zaman bir insanın doğru tahminler gerçekleştirmeyi sağlayacak anahtar faktörleri belirlemesi çok zor olur.

Nöral ağ müşterinin Kedim Mis! alıp almadığına dair ilk tahminini yaparken kendini “1: Evet” veya “2: Hayır” gibi siyah-beyaz sonuçlarla sınırlamaz. Bunun yerine sıfırdan bire devamlılık gösteren spektrumda bir sayı belirler. Örneğin 0,67, “Bu müşterinin Kedim Mis! alma ihtimali %67″ demektir. 0,13 ise satın alma olasılığının %13 olduğu anlamına gelir.

Sıfır ile bir arasında bir olasılık belirlendiğinde bilgisayarın ilk tahmininin çok kötü olması önemsizleşir. Önemli olan bilgisayar tahminini gerçekle kıyaslar. Örneğin 0,13 değerini gerçek sonuç olan 1 ile karşılaştırır. Nöral ağ tahmininin 0,87 miktarında yani büyük oranda hatalı olduğunu görünce düzeltmeler yapar. Nöral ağ bir sonraki tahminin daha doğru olmasını sağlayacak doğru kombinasyonu bulmak için bazı değerleri arttırabilir veya azaltabilir. On binlerce tekrarın sonunda bilgisayarın tahmini ile gerçek arasındaki fark sıfıra yaklaşır. Bu noktada nöral ağın artık doğru tahminde bulunduğu söylenebilir.

Derin öğrenme nöral ağlarını güçlü kılan şey olasılık ve deneme-yanılma sürecini kullanarak bir sonraki tahmininde artımlı iyileştirmeler yapabilmesidir.

Ağın deneme-yanılma ile öğrenme süreci bir kasenin kenarından yuvarlanarak en sonunda dipte duran bir ping pong topunun hareketine benzetilebilir. Burada kasenin dibi mükemmel doğru tahmini temsil eder. İlk tahmin, topun kenardan harekete başladığı yerdir. İkinci tahminde top kenardan biraz aşağı kayarak nihai istirahat noktasına yaklaşmıştır. Üçüncü tahminde top biraz daha aşağı kaymıştır ve bu böyle devam eder. Her tahminle top kasenin dibindeki mükemmel noktaya biraz daha yaklaşır.

Topun yuvarlanarak mükemmel noktada durması aslında dört adım içerir. Bu dört adımı kısaca açıklayalım:

1- İleri Besleme: 1960’larda oda büyüklüğündeki eski IBM bilgisayarlarını düşünün. Veri kartları makineye bir ucundan verilirdi ve diğer uçtan mucizevi sonuçlar çıkardı. Ağımız da anketin ilk üç sorusundan verileri alır ve bilgisayarı besleyerek bir tahmin üretir.

2- Global Minimum: Yukarıdaki kasenin bir masada durduğunu hayal edin. Masanın yüzeyi neredeyse sıfır hata içeren mükemmel tahmini temsil eder. Kasenin dibi bu mükemmel tahmine en yakın yerdir. Kasenin tüm yüzeyine (global yüzey) kıyasla dip noktası mükemmele en yakın yerdir. Burası hata açısından “global minumum”dur.

Ağ daha iyi tahminde bulundukça top kasenin kenarından aşağı yuvarlanır ve dipteki global minimum hata noktasına yaklaşır. Her tahmin sonrası ağ, tahmini dördüncü sorunun gerçeği ile kıyaslar. Bu belli bir anda topun dip noktadan ne kadar uzak olduğunu ölçmek gibidir. Tahmin ile gerçek arasındaki farkı ölçmek hata bulmak olarak adlandırılır. Ağın her tahminle beraber amacı bu hatayı global minimuma getirmektir.

3- Geri Yayılma: Farklı büyüklük ve ağırlıktaki 16 lobutla gösteri yapan bir jonglörü düşünün. Lobutların ağırlığını ve büyüklüğünü daha havada iken tahmin edebildiği için düşürmeden hepsini havada tutabilir. Tahmin yaptıktan sonra ağ önceki tahmin sürecine geri döner ve bir sonraki tahminde hangi değişikliklerin hatayı azaltacağını görmek için çalışır.

4- Dereceli Alçalma: Yukarıdaki kasede topun global minimum noktasına inişini hayal edin. Dereceli alçalma tahmin topunun kase yüzeyinde aşağı yuvarlanmasına benzetilebilir.

Yukarıdaki kavramları farklı cümlelerle tekrar tanımlayalım. Dereceli alçalma, daha doğru olana kadar ağın deneme-yanılma ile tahminlerini düzeltme sürecidir. İleri besleme tahmin yapma anlamına gelir. Tahmin, topun belli bir anda kasenin neresinde olduğunu gösteren bir fotoğraf karesi gibi düşünülebilir. Global minimum mükemmellik noktasıdır. Kasenin dibinde hata payı olmayan noktadır. Hedef kasenin dip noktasına ulaşmaktır. Ağ, tahminini gerçekle kıyaslayarak hatasını ölçer. Geri yayılma önceki tahmine doğru çalışarak neyin yanlış gittiğini bulma ve düzeltme işlemidir. Topun mevcut konumdan kasenin dibine nasıl daha fazla yaklaşacağını bulma anlamına gelir.

Burada kavramları genel hatları ile tarif ediyoruz. Bu nedenle anlamadığınız şeyler olması çok normal. Yukarıdaki kase benzetmesi nöral ağ eğitimi sürecinin dört adımını gösterebiliyor fakat fazla basit. Top basit bir kasede dibe doğru tek ve düz bir rotada aşağı iniyor. Bu “Kediniz var mı?” gibi tek bir sorudan oluşan anketi temsil edebilir ancak gerçekler genelde daha karmaşıktır. Anketimizde en iyi tahmin için üç sorunun en iyi kombinasyonunu bulmak istiyoruz. Bu şekilde farklı sorular içeren bir anketi temsil eden kase pek çok çukur ve tümsek barındıran yumrulu bir şekle sahip olur.

Yukarıdaki kırmızı kasenin ciddi çukur ve tümsekleri var. Peki neden? Şekle bakınca kırmızı kasenin plastikten oluştuğunu sanabilirsiniz. Aslında milyonlarca kırmızı noktadan meydana geliyor. Her nokta X, Y ve Z eksenli üç boyutlu uzayda bir yere karşılık geliyor. Her nokta anket sorularımızın olası bir kombinasyonudur.  Aynı zamanda ağın tahmin yaparken hangi soruları önceleyeceğine dair muhtemel bir hiyerarşi sağlar. Bu yumrulu kase dört soruluk bir anketin gerçeği tahmin etmede sağladığı olası permütasyonların manzarasını temsil etmektedir.

Kırmızı kasenin tüm olası permütasyonların manzarası veya peyzajı olduğunu unutmayın. Bu her olası permütasyonu tamamen içermez çünkü bunları hesaplamak çok fazla bilgisayar işlem gücü gerektirir. Bunun yerine olasılık topunu rastgele düşürdüğünüz yerden başlar ve global minimumu oluşturan vadi tabanına kadar gider.

Şekilde sağ üst köşedeki kesikli beyaz çizginin tepesi ağın ilk tahminine karşılık gelir. Kesikli çizgi ağın dipteki global minimuma ulaşmak için yapacağı tahminleri temsil eder. Topumuz çok sayıda tahminle bu çizgi boyunca ilerleyerek tahmindeki minimum hata ve maksimum doğruluğa ulaşır.

Peki tahmin topunun izlediği beyaz çizgili yol neden eğri büğrü? Bu yamuk yol ağın hangi soruları kombine etmemiz gerektiğini bulmak için yaptığı sürekli denemelerden gelir. Daha az hata için hangi sorunun ne kadar ağırlıklandırılması (vurgulanması) gerektiği bulunur. Ağın amacı hataları mümkün olduğunca hızlı azaltmaktır. Bunun için tahmin topunun bulunduğu noktadan aşağıya doğru en dik iniş yönünü belirler. Eğim sürekli değiştiği için yol kıvrımlıdır.

İlk bakışta “Kediniz var mı?” ve “İnternet sitemizi ziyaret ettiniz mi?” sorularının tahminlerimizi temellendirmede en belirleyici olduğunu söyleyebiliriz. Peki hangi soru kedi hijyen ürününü kimin aldığını tahmin etmede daha büyük bir faktördür? Kedi sahibi olmak daha büyük bir belirleyici midir? İki sorunun ağırlığı 50/50 midir?

Ağ bu iki sorunun pek çok farklı ağırlıklandırması ile deney yapar. Böylece hangi kombinasyonun daha doğru tahmine yaradığını bulur. Kırmızı kasede gördüğümüz her tümsek bu soruların yanlış ağırlıklandırıldığı denemeleri temsil eder. Çünkü tümsekler topu dipteki global minimumdan uzaklaştırır. Her çukur ise doğru yöndeki bir ağırlıklandırmayı temsil eder çünkü çukurlar topu dibe yaklaştırır. Her çukur lokal minimum olarak adlandırılır. Dereceli alçalmadaki problemlerden biri lokal minimumlar ile global minimumu birbirinden ayırmaktır. Bu problem sıklıkla “momentum” denilen bir işlemle ifade edilir. Momentum bu yazının kapsamını aşmaktadır.

Peki ya ağımız soruların mükemmel ağırlıklandırmasını bulmuşsa ancak tahminleri yine de örneğin %60 civarında doğruluk içeriyorsa ne yapacağız? Ağımızın bu durumda kullandığı bir araç daha vardır: çıkarım korelasyonları.

Çıkarım korelasyonunu anlamak için ithal bira içme sorusuna geri dönelim. Ağlar sürekli farklı kombinasyonda soruları dener. Örneğin zengin insanlar ithal bira alacak daha çok paraya sahip olabilir. Kedi sahipleri de evcil hayvan zevki mükemmel olan zengin insanlar olma eğilimindedirler, değil mi? Bu nedenle ithal bira içme ve kedi sahibi olma soruları kombine edilerek ağın hesaplamalarında ağırlıkları arttırılabilir ve tahminler iyileşebilir. Çıkarım korelasyonu burada şudur: “Zengin insanlar Kedim Mis! almaya daha eğilimlidir”

Tahmin topumuz nöral ağımız zengin insanların Kedim Mis! aldığı çıkarım korelasyonunu yaparken bir tümseğe rastlayabilir. Bunun anlamı zengin müşterilerle ilgili çıkarım korelasyonunun tahmin doğruluğunu arttırmaya yardım etmediğidir. Bunun nedeni Kedim Mis!’in lüks bir üründen ziyade kağıt havlu veya çorap gibi ihtiyaç ürünü olması olabilir. Bu durumda sonraki denemelerde tahmin topu tümsekten, zengin müşterilerle alakalı yararsız çıkarım korelasyonundan uzağa yuvarlanacaktır. Ancak topu dibe yaklaştıran yararlı çıkarım korelasyonlarını ise kullanacaktır.

Yukarıdaki örnek çıkarım korelasyonlarının doğru tahmin için yararlarının nasıl test edildiğini göstermek içindi. İnsanlar çıkarım korelasyonlarını araştırırken mantıklarını kullanır fakat ağ olası her permütasyonu dener. Eğer deney öncekinden biraz daha iyi sonuç vermişse tutulur. Eğer daha kötü sonuç vermişse elenir.

Özetlemek gerekirse yumrulu kırmızı kase yüzeyini oluşturan her nokta ağın soruların belli bir kombinasyonu ve ağırlığı ile yaptığı deneyi temsil eder. Her çukur doğru yöndeki adıma karşılık gelir. Ağ bu adımları korur. Her tümsek ise yanlış yöndeki bir harekettir. Ağ bunları eler. Tahmin topunun rotası, top tümseklerden kaçınıp çukurları ararken biraz kavis çizebilir. Beyaz çizgili yol topun iyileştirme üzerine iyileştirme ile tüm olası sonuçlar içinde en doğru tahmine ulaşmak için izlediği en verimli rotadır.

Yazının Devamı

Kaynak

Uzman Doktor Deniz Doğan
Mecburi hizmetini Silopi Devlet Hastanesi’nde yapmıştır. Şu anda Gaziosmanpaşa Eğitim ve Araştırma Hastanesi’nde çalışmaktadır. Uzm. Dr. Deniz Doğan tıp fakültesi eğitimini 2010 yılında Hacettepe Üniversitesi Tıp Fakültesi’nde tamamlamıştır. Tıpta uzmanlık eğitimini 2015 yılında Trakya Üniversitesi’nde tamamlamıştır.