相對於經典網絡(輸入層,隱藏層,輸出層),ESN(回聲狀態網絡)有三部分組成(輸入層,儲存池,輸出層),ESN通過隨機部署大規模的系數鏈接的神經元構成網絡隱層,一般稱為
“儲存池”,ESN的特點是:
- 包含數目較多的神經元
- 神經元之間的連接關系是隨機產生的
- 神經元之間的連接具有稀疏性
1.什么是稀疏性呢?
解答:稀疏指的是參數或者數據中零的個數,零的個數越多,參數或者數據就越稀疏.
2.網絡結構
- 輸入層(input layer):
輸入向量n * 1
輸入層-->儲存池鏈接權重為:Win m*n維度
特別提醒:Win是不需要訓練的,只需要隨機初始化就可以
- 儲存池(reservoir):
儲存池接受兩個輸入,一個是輸入層U(n),一個是來自儲存池前一個狀態的輸出x(n-1),其中輸入權重矩陣Win和儲存池內部反饋矩陣W^均不需要訓練,由隨機初始狀態決定,所以W^為大型稀疏矩陣,其中的非0元素表示儲存池中被激活的神經元。
Win和W^是通過分析回波狀態屬性而獲得並初始化的。在此階段,重點是采用兩個因素ρ作為遞歸權重矩陣的頻譜半徑(這表示內存長度和儲層動力學程度)和泄漏參數α。一般情況下ρ(W^)<1,ESN才具有回聲狀態屬性,從而確保網絡的狀態和輸入經過足夠長時間后對網絡的影響才會消失。
- 輸出層(readout):
儲存池-->輸出層是線性連接關系,既滿足:
3. ESN算法的實現過程
a.權重參數的初始化,輸入矩陣和儲存池內反饋矩陣初始化
b.訓練過程,
- 收集儲存池狀態和每一個輸出目標值
- 訓練線性輸出
- 離線訓練