其實是想跟大家介紹上面這個網站,裏面收錄了超多神經網路模型。
我們最近比較常聽到的像是Convolution neural network, Recurrent neural network, Feedforward neural network只是冰山一角罷了!
其實神經網路模型是很特別的,他被證明只要一層的hidden layer就可以模擬所有的數學函數,這樣的特點讓大家對他非常的好奇,而數學家又發現如果讓網路的層數變多,可以大大降低所需要的節點數,可以更容易做出複雜的函數。
既然能夠做出各種不同的數學函數,那也就意味著會有某種神經網路結構跟其他機器學習的方法等價!
也就是其他的機器學習演算法都可以轉成神經網路的版本!
接下來我就來小小介紹一下上面網站裡的模型吧
這估計是最常見的模型,基本上就是跟我們一般認知的網路模型一樣可以有非常多層,他的特色就是前一層只會連到下一層,所以他不會連成其他奇怪的形狀,基本上是full-connected。
再來就是這類網路就是用來做預測的,也就是處理分類問題或是回歸問題,所以是用在supervised方法上。
這類網路的訓練演算法是用前面提到的backpropagation。
這其實是把上面的網路中,activation function換掉,換成我們所熟知的常態分佈,並且每層會去測量每個點離中心點的距離,然後放到常態分佈中轉換成0~1的機率當成一個節點的outcome。
這邊我的解釋並沒有非常清楚,大家可以參考這篇
這是一個特別的網路模型,他的網路結構是每個點都會連結到其他的點上,每個點在一開始都是input,訓練時都是hidden node,而輸出時則都是output node。
他的值通常是1跟-1,所以activation function適用sigmoid function,他的特色在於具有記憶性,他會記得training set中feature的分佈情況並且達到穩定,之後做預測就可以根據記憶做輸出,所以也是一個supervised的模型。
網站上把這markov chain列近來讓我有點意外,因為他根本不是網路模型阿!
大家有在研究機器學習的話應該多多少少聽過所謂的模擬退火法吧!
基本上,gradient-based method無法保證收斂global optima,這時候就有模擬退火法這樣方法出來,時間夠久的話就可以接近global optima。
而這個網路模型就是模擬退火法的神經網路版本,他有一部份是input node,另一部份是hidden node,再訓練的過程中input node也可以作為output node。
這其實是上面的模型的改進版,他把input node跟hidden node整個切開來,不像上面的模型是full-connected,所以使用上就更好訓練了,不會有input node連到其他input node或是hidden node連到其他hidden node的窘境了。
這樣一來就可以用backpropagation做訓練了,不過還是要些微修改演算法才可以適用。
今天先講到這邊吧!