霍普菲爾德神經網絡

霍普菲爾德神經網絡(Hopfield neural network)是一種循環神經網絡,由約翰·霍普菲爾德在1982年發明。Hopfield網絡是一種結合存儲系統和二元系統的神經網絡。它保證了向局部極小的收斂,但收斂到錯誤的局部極小值(local minimum),而非全局極小(global minimum)的情況也可能發生。霍普菲爾德網絡也提供了模擬人類記憶的模型。

構造

 
一個有四個節點的Hopfiled網絡。

霍普菲爾德網絡的單元是二元的(binary),即這些單元只能接受兩個不同的值,並且值取決於輸入的大小是否達到閾值。Hopfield網絡通常接受值為-1或1,也可以是0或者1。輸入是由sigmoid函數處理得到的。 sigmoid函數定義為:

 

用於將輸入化簡為兩個極值。

每一對霍普菲爾德網絡的單元ij間都有一對以一定權重(weight)的連接 。因此,霍普菲爾德網絡可被描述為一個完整的無向圖 ,其中 人工神經元集合。

霍普菲爾德網絡的連接有以下特徵:

  •   (沒有神經元和自身相連)
  •   (連接權重是對稱的)

權重對稱的要求是一個重要特徵,因為它保證了能量方程(稱向函數某一點收斂的過程為勢能轉化為能量)在神經元激活時單調遞減,而不對稱的權重可能導致周期性的遞增或者噪聲。然而,霍普菲爾德網絡也證明噪聲過程會被局限在很小的範圍,並且並不影響網絡的最終性能。

更新

使用下述公式更新霍普菲爾德中節點的值:

 

公式中:

  •   是節點j到節點i的權重。
  •   節點i的值(狀態s).
  •   節點i的閾值,常為0.

霍普菲爾德的更新有兩種方式:

  • 異步: 每個更新一個節點。此節點可以是隨機選中的,也可是按照預設順序選中的。
  • 同步: 同時更新所有節點的狀態。這種更新方式要求系統中具有中央時鐘以便維持同步。這種方式被認為是不太現實的,因為在生物或物理系統中常常沒有中央時鐘(用於保持同步狀態,即各個節點常常是自行其是的。)

參見

參考文獻

  • J. J. Hopfield, "Neural networks and physical systems with emergent collective computational abilities", Proceedings of the National Academy of Sciences of the USA, vol. 79 no. 8 pp. 2554–2558, April 1982.
  • Hebb, D.O. (1949). Organization of behavior. New York: Wiley
  • Hertz, J., Krogh, A., & Palmer, R.G. (1991). Introduction to the theory of neural computation. Redwood City, CA: Addison-Wesley.
  • McCullough, W.S., & Pitts, W.H. (1943). A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics,5, 115-133
  • Polyn, S.M., & Kahana, M.J. (2008). Memory search and the neural representation of context. Trends in Cognitive Sciences, 12, 24-30.
  • Rizzuto, D.S., & Kahana, M.J. (2001). An autoassociative neural network model of paired-associate learning. Neural Computation, 13, 2075-2092.
  • Kruse, Borgelt, Klawonn, Moewes, Russ, Steinbrecher (2011). Computational Intelligence.

外部連結