2017年10月23日 星期一

Christopher Olah介紹類神經網路

類神經網路(Neural Networks,簡稱NN)是機器學習的其中一種方法,此colah's blog的作者Christopher Olah提供許多類神經網路原理與應用的介紹,包含了:
  • Neural Networks (General):介紹類神經網路
    • Neural Networks, Manifolds, and Topology:解釋NN如何做分類。裡面的例子為平面上面兩條不交叉的曲線(一紅一藍),NN在學習的時候如何將整個平面做變形,在變形後的空間上讓這兩條線可以用分開。裡面的例子顯示,如果紅藍兩條線捲曲的情況越嚴重,那麼要高維度空間的變形會比較好,也就是說NN裡面hidden layer要更多層會比較好
    • Deep Learning, NLP, and Representations:過去幾年深度學習(deep learning)主宰了pattern recognition的領域、像是圖形辨識、聲音辨識(voice recognition)與處理自然語言(natural language processing, NLP)等等。
      • Word embedding:將一個字對應到一個高維度的向量上,在這個高維度空間裡面,相似意義的詞將會放在接近的位置(文章內的說法就是有相似的representation)。再將一句話的每個字丟到modular metwork裡面,來判斷這句話是不是有意義,或有沒有語意錯誤等。
      • Bilingual word embeddings:將兩個語言的字拿來比較,例如說英文與中文。某些單字會發現被放在高維度空間上面接近的位置,那就可以知道這兩個單字的意思應該差不多。
      • Recursive Neural Networks:將數個獨立的NN用不同的方式組合起來。這個方法可以有效地處理NLP問題
    • Calculus on Computational Graphs: Backpropagation:Backprogapation是NN裡面很重要的一個演算法,讓NN的訓練可以加速百萬倍。簡單的說此方法就是,原本NN裡面的權重(weight)都是由input > output這方向取得、現在是input > output後,再從output > input往回做,藉此調整權重,簡單說明看這個影片
    • Neural Networks, Types, and Functional Programming:圖形化各種類神經網路,如何用程式語言來表達這些網路
      • Encoding recurrent neural networks:一連串的inputs產生一個output
      • Generating recurrent neural networks:一個inputs產生一連串的outputs
      • General recurrent neural networks:一連串的inputs產生一連串的outputs
      • Bidirectional recursive neural networks:一連串的inputs產生一連串的outputs,且現在是兩個方向都可以做輸入輸出
      • Convolutional Neural Networks:一群inputs產生另外一群outputs
      • Recursive neural networks:又稱TreeNets
  • Recurrent Neural Networks (RNN):遞歸神經網絡。Hidden layer會傳東西給自己
    • Understanding LSTM Networks:Long Short Term Memory networks (LSTMs),是一種特殊形式的RNN。 一步一步地介紹LSTM如何運作
    • Attention and Augmented RNN
      • Attentional interfaces:可以用來辨識圖片裡面是否有某些物件,像是一隻躲在床底下等
  • Convolutional Neural Networks (CNN):卷積神經網路
  • Visualizing Neural Networks
  • Miscellaneous
_EOF_

沒有留言:

張貼留言