şükela:  tümü | bugün
  • unsupervised learning problemi için kullanılan çok yönlü algoritma. image denoising, compression, classification gibi makine öğrenmesinin temel konularında oldukça işlevseldir. ana amacı çıktıyı girdiye eşleyerek parametre öğrenmek.

    katmanları stackleyerek derin ağ da oluşturabilirsiniz, özellikle daha dip öznitelik öğrenmek için birebir.

    compression konusunda eğer katman girdi-çıktısı lineerse pca'den farksızdır ama katman sayısı arttıkça çok daha detaylı ve lineer olmayan verileri de kaliteli bir şekilde compressleyebiliyor. bu arada söylemekte fayda var, autoencoderla image compression yapmaz kimse. çok daha iyiler var çünkü.

    sıkıntılı yanına gelecek olursak time series problemini pek iyi çözemiyor içinde hafıza barındırmadığı için ve parametre sayısı oldukça yüksek kalıyor çoğu zaman. fully connected layerlardan değil de convolutional neural networksten oluşan bir autoencoder bu problemi çözecektir ama onun da artı eksisi bulunmakta tabii yine.
  • amaci aslinda yuksek-boyutlu uzaydaki ornekleri (resimler gibi) dusuk boyutlu alt-uzaya (manifold) dusurmektir. alt-uzaya projeksiyon ve yuksek boyutlu uzayda yeniden olusturma model parametrelerini egitmek icin minimum bozulma fonksiyonu (reconstruction loss) optimize edilir.
    resimlerde gurultu temizligi: gurultu eger yuksek uzayda butun boyutlara dagitilmissa, ornekleri alt-uzaya dusurunce gurultunun buyuk kismi silinir.
    compression : ornekleri dusuk boyutlu uzayda daha kucuk bir vektor ile betimlenebilir
    siniflandirma (classification) ornekleri alt-uzaya minimum bozulmaya dusurelim ki, makine ogrenmesi ornekleri daha verimli kullanalim
  • son iki ay boyunca fazlasıyla başımı ağritan neural network. vibrasyon sinyalinde anomali arayan patronumun aklına tüküreyim...
  • yapay sinir ağları ile uygulanan bir yöntem. fully connected veya convolutional neural network fark etmeksizin uygulanabilmektedir. amacımız kum saatine ya da ince belli çay bardağının şekline benzeyen önce ufalan sonra genişleyen simetrik bir ağ yapısı kurmak.

    ağı ortadan ikiye bölersek soldaki kısma autoencoder, sağdaki kısma da autodecoder diyoruz.

    geleneksel makine öğrenimi problemlerinden farklı olarak burada elimizde etiket olmayacak. ağa ne girdi verirsek çıktımız da aynı veri seti olacak. ağın çıktısından girdiyi makul bir kayıpla yeniden üretebilmeyi bekleyeceğiz. örneğin girdimiz 28x28 boyutunda bir 7 resmi ise çıktımız da 28x28 boyutunda bir 7 olacak. çıktıdaki 7'yi gözle okuyabiliyorsak bu bizim için yeterli.

    eğer makul bir kayıpla girdiyi tekrar üretbilmişsek ince belli bardağın en ince noktasına denk gelen katmandaki veri girdimizin kayıplı da olsa özetini içerecek.

    peki bu bize ne işimize yarayacak? girdi setimizin boyutunu indirgemiş olduk. bu özet veri üzerinde k-means gibi unsupervised learning algoritmaları koşturabiliriz. aslında k-means'i boyutu indirgenmemiş girdi için de koşturabilirdik ama bitmek bilmeyecekti. oysa ki verinin özeti ile çok daha makul sürelerde clustering yapabileceğiz.

    (bkz: generative adversarial networks)
  • bir çeşit boyut düşürme algoritması. kayıplı sıkıştırmada diyebiliriz. auto kendi kendini ifade etmektir. yani kendi içinde bağlantı bulmaktır zaman serilerindeki autocorralation autocovariance gibi kavramlar gibi sadece kendi içindeki değerler arasında bağlatı bulmaya yanı patternler bulmaya çalışır. yani veri uzayını daha düşük bir pattern uzayından inşaa etmek üzere kullanır. dct ya ya wavelet compressionlar gibidir. ama onlarda patternler cosinusı dalgası wavelet gibi sabit matematiksel fonksiyon iken burada patternlerler kendi kendine öğrenlen fonksiyonlardır. yani bir çeşit unsuperwised learning dir.

    veri uzayınız büyükse eğer mesela 1024*1024 pixel siyah beyaz bir görüntü düşünün bu 1024x1024 boyutlu bir uzaydır. her nokta 0-1 arasında ısık değeri ile ifade edilen bu uzayı isterseniz 100 boyuta indirebilirsiniz isterseniz ister 1000 . işte o 100 boyut aslında veri uzayını 100 farklı sablon ile ifade etmektedir. mesela diyelimki ben 8x8 pattern boyutu seçtim. böylece 1024/8= 128 ve çözüm uzayımı 128x128x10 bir uzaya düşürmüş olurum. yani ana görütüyü yakın oluşturmak için bu 10 farklı 8x8 görüntüden belirli ağırlıkla toplayarak bulurum. öğrenmede işte bu resimlerde bu 10 adet 8x8 goruntüyü(patterni) bulmaktır.

    tabi ki bu birden fazla örnek için yapılır. mesela elinizde 1000 tane kedi resmi bulursanız eğer auto encoder vereceğiniz boyuta göre bu resimlerden 8x8 patternleri öğrenir ve elinizdeki görüntüleri daha küçük bir uzayda temsil etme olanağı sunar.

    zaten convolution networkde bu patternlerden pooling yapılıp ölçek sıkışması yapılarak boyutu biraz daha düşürerek n. networkü besler.
hesabın var mı? giriş yap