AutoEncoder temelli Derin Öğrenme

Bu yazımda Autoencoder tabanlı Derin öğrenmenin ne olduğu anlatmaya çalışacağım. Autoencoder yaklaşımı yapay sinir ağlarının bir türevi olarak ortaya çıkmıştır. İlk olarak 1980 yıllarda ortaya çıkmış ve 2006 yılında derin öğrenme alanındaki önemli konularında biri olmuştur.Özellikle ses ve görüntü veri setlerindeki gürültü giderme ve boyut düşürme konusunda başarılı sonuçlar almıştır.

Autoencoderlar giriş ve çıkış katmanları aynı veri setine sahip çok katmanlı algılayıcıdırlar.Genellikle üç katmandan oluşurlar. Gizli katmandaki nöron sayısı giriş ve çıkış katmanındaki nöron sayısından az olmalıdır.Yapı itibariyle veri setinden sınıf bilgisi içeren etiketlere ihtiyaç duymaz . Bu özelliği ile denetimsiz öğrenme yöntemidir. Ağ, giriş veri setini çıkışta verilen aynı veri setine uydurmak amacıyla eğitim sırasında geri yayılım algoritmasını kullanarak en uygun ağırlık değerlerini belirler. Bu nedenle yöntem öğreticisi
olmayan geri yayılım algoritması olarak da anılmaktadır.Kısacası autoencoder, gizli katmanından elde edilen veri aslında giriş katmanındaki verinin daha düşük boyutlu bir uzaya iz düşürülmüş halidir.Bir çok autocoder yığın şeklinde arka arkaya bağlayarak derin öğrenme mimarisi oluşturulur.

Bu mimarinin son katmanına denetimli veya denetimsiz öğrenme katmanın eklenmesiyle autoencoder derin öğrenme makinası oluşturulmuş olur.

Aslına bakarsanız autoencoder sınıflandırma işlemi yapmaz. Temel amacı n boyutlu bir özellik vektörünü daha küçük bir boyutlu vektöre en az kayıp ile düşürmektir.

Yukardaki eşitlikte, x_j girdi katmanındaki j’inci nöronun değerini, y_i gizli katmanındaki i’inci nörona aktarılan değeri, n girdi katmanındaki nöron sayısını, w_ji girdi katmanındaki j’inci nörondan gizli katmandaki i’inci nörona giden ağırlığı, f ise aktivasyon fonksiyonunu(softmax,sigmoud vs) temsil etmektedir.

İlk seviyeden sonra elde edilen değerler aşağıdaki eşitlikte gösterildiği gibi çıktı katmanına aktarılır. Eşitlikte x_j çıktı katmanındaki j’inci nöronu, y_i gizli katmandaki i’inci nöronu, w_i_j gizli katmanındaki i’inci nörondan çıkan katmanındaki j’inci nörona giden ağırlığı, m gizli katmandaki nöron sayısını , f ise herzamanki gibi aktivasyon fonksiyonu temsil etmektedir.

Autoencoder yaklaşımındaki amaç ilk iki aşamada elde edilen x_jˆ’ değerini , girdi katmanındaki x_j değerine benzer bir değer gelmesidir. Bu iki değerin birbirine yakın gelmesi için ise ağırlıkların geri yayılım algoritması ile hesaplanarak sürekli güncellenmesi ile olur.Geri yayılım algoritması ise aşağıdaki eşitlikte göründüğü gibi iki değer arasındaki farkın karesini minimize ederek olur.

Diğer tüm derin öğrenme mimarilerinde olduğu gibi autoencoder öğrenme mimarisinde çözülmesi gereken problemlerden biri ağın aşırı eğitilmesidir.Aşırı eğitim durumu, bir modelin eğitim seti için büyük başarılar elde etmesi olanak sağlarken, eğitim seti dışında yeni bir eğitim seti için düşük bir başarı oranı elde edilmesi demektir.Bunun sorunun çözülmesi için yapılması gereken biri eğitim verisinin bir kısmını doğrulama verisi olarak kullanıp eğitim verilerindeki hata oranı azalırken benzer şekilde geçerlilik verisindeki hata oranın kontrol edilip ağırlıkları günceleyerek eğitime tekrardan başlanabilir.

sürç i lisan ettiysek affola.