上篇講的是離散型hopfield網路用於聯想記憶,這篇接上篇講利用連續型hopfield網路解tsp問題。
連續型hopfield網路與離散型hopfield網路結構是一致的,唯一區別就是節點取值連續和在時間上也連續。
連續型的hopfield網路一般用乙個電路圖來研究:
這裡感謝周啟航同學對我在電路方面的指導,才讓我看懂了他認為很簡單的這麼個圖。
這是一組放大器電路的結構,神經元的啟用函式由運算放大器來模擬,電壓\(u_i\)為啟用函式的輸入,所併聯的電阻r決定的是各個神經元之間的連線強度,r和電容c模擬神經元輸出的時間常數,而電流i模擬的是閾值,w模擬神經元間的突觸特性。
由這個電路圖可以得到一組動態方程:
\[c_j\frac = \sum_i w_v_i(t) - \frac + i_j \\v_j(t) = g_j(u_j(t))
\]上面的方程描述的其實是電流關係(電流的定義\(i = c\frac\)),這個很容易看出來,第二個方程描述的是啟用函式g。這裡用的是sigmoid函式。
其中w對應的是網路的權重,v是啟用後的節點值,u是啟用前的節點值。
針對tsp問題,其目標函式為最小化能量函式e:
\[e = \frac\sum_i \sum_j \sum_kv_v_ \\ + \frac\sum_i \sum_j \sum_k v_ v_ \\ + \frac (\sum_i\sum_jv_ - n)^2 \\ +\frac \sum_i\sum_j\sum_k w_ v_(v_ + v_)
\]其中v為節點值,\(v_\)代表第i個城市的的訪問順序,\(v_i\)是個one-hot向量。w是任意兩城市間的距離矩陣,a、b、c、d是超參。
第一行的條件使得對任意第i行的元素其所在行的任意兩元素相乘求和最小,最好的情況是最多只有乙個非0元,第二行同理。
第三行使得所有元求和接近n。
第四行是所有路徑求和的表示式,其中需要注意的是k+1如果大於節點數則取1,k-1如果小與1則取n(如果index從1開始的話)。那這個公式咋理解呢?i和j表示第i個和第j個城市,那如果i到j走的話,一定有個k使得\(v_\)為1,第i行的其他元為0,就意味著j的訪問順序要麼是在i之前,要麼在其之後,所以考慮k+1和k-1。
在「theories on the hopfield neural networks」這篇**中對上式又進行了改進,提高了收斂速度。
其改進後的公式為目標函式為:
\[e = \frac\sum_i(\sum_j v_ -1)^2 + \frac\sum_j(\sum_i v_ -1)^2 + \frac\sum_i\sum_j\sum_kw_v_v_
\]改進後的公式更易於理解。前兩項是保證每行每列只有乙個1,最後一項是路程。
由於在初始化階段我們就能確定網路的權重,即任意兩城市之間的距離,也就是權重不需要學習直接可以初始化。那麼優化過程更新的其實是節點,我們先將節點按照如下規則進行初始化:
\[u_ = \fracu_0 ln(n-1)+ \delta_
\]其中\(\delta_\)為-1到+1的隨機值。\(u_0\)為超參。
然後就是怎麼取更新節點了。
節點的更新需要利用下面的公式:
\[\frac} = - \frac}
\]其實對於電壓對時間微分為啥等於右邊我也不是很清楚,很多**直接搬上來的,我無法解釋,所以也直接搬過來。
帶入能量定義式:
\[\frac} = - \frac} = -a(\sum_kv_-1) - a(\sum_kv_-1) - d\sum_kd_v_
\]然後更新節點:
\[u_(t+1) = u_(t) + \frac} \delta t
\]然後sigmoid啟用:
\[v_ = \frac(1+ tanh(\frac}))
\]能量變化:
輸出:
[[0 0 1 0 0 0 0 0]
[1 0 0 0 0 0 0 0]
[0 1 0 0 0 0 0 0]
[0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0]
[0 0 0 0 1 0 0 0]
[0 0 0 0 0 0 1 0]
[0 0 0 0 0 0 0 1]]
1918
深度學習筆記 Hopfield神經網路
hopfield神經網路是一種迴圈神經網路模型,由一組互相連線的神經元組成。其具有如下特徵 hopfield神經網路分為離散型 dhnn 和連續型 chnn hopfield神經網路提出的時間要比bp神經網路要早,其利用動力學演變對輸入進行迭代 迭代的本質是狀態轉移 最終得到乙個穩態值。穩定狀態稱為...
網工學習筆記1
隨著網路硬體效能的不斷提高 成本的不斷降低,目前新建立的校園網基本上都採用了效能先進的千兆網技術,其核心交換機採用三層交換機,它能很好地支援虛擬區域網 vlan 技術,這對方便校園網的管理 保證校園網的高速可靠執行起到了非常重要的作用。什麼是vlan vlan virtual local area ...
神經網路學習之 Hopfield神經網路
1982年,美國加州理工學院的優秀物理學家hopfield提出了hopfield神經網路。hopfield神經網路引用了物理力學的分析方法,把網路作為一種動態系統並研究這種網路動態系統的穩定性。dhnn 離散型hopfield神經網路 這是一種單層全反饋網路,共有n個神經元。其特點是任一神經元的輸出...