Adaptive Resonance Theory (ART) 自適應共振理論網路
ART 1976年由Carpenter & Grossberg提出 類型 ART1 ART2 ART3 非監督式學習網路的典範 只能用於輸入值為二元值者 ART2 能用於輸入值為連續值者 ART3
ART (續) 允許使用者將相似程度的patterns放置在相同的分類 具有 穩定性 可塑性 新舊事物夠相似, 只修改系統中舊事 當新的事物輸入時,舊事物應適當保留 可塑性 當新的事物輸入時,應迅速學習 新舊事物夠相似, 只修改系統中舊事 物的部分記憶 新舊事物不夠相似, 建立新的記憶
ART (續) ART與其他非監督式學習網路的主要不同點在「警戒值」 網路架構 輸入層 輸出層 網路連結 Output …… bij tij ……………… Input (x1,x2,x3,…,xn) bij : 輸入神經元i到輸出神經元j的權重值 tij : 輸輸出神經元j到輸入神經元i的權重值
ART (續) 輸入訓練範例後,經下列公式計算,取輸出向量中值最高者 然後進行警戒值測試
ART (續) 對贏得勝利的分類單元藉由下列公式調整權重值 L > 1 , 通常設為 L-1=0.5
ART (續) F2 layer (Cluster units) …………… …………………………… F1(b) interface F1(a) input
ART (續) ART1演算法 Step 1 : 設定起始值 L>1,0<1,起始權重值 Step 2 : 當不滿足停止條件時,執行 Step3-14 Step 3 : 對每一個訓練範例執行Step 4-13 Step 4 : 設定所有F2神經元的值為0 設定所有F1(a)神經元的值為 input vector s Step 5 : 計算s 的norm Step 6 : 將輸入訊號從F1(a)傳送到F1(b) Step 7 : If yj-1,then
ART (續) Step 8 : 當reset為真時,執行Step 9-12 Step 9 : 尋找J (yJyj for all nodes j) If yJ=-1,則所有的神經元將變羞怯且 此訓練範例將不被分類 Step 10 : 重新計算F1(b)的 x Step 11 : 計算向量 x 的 norm Step 12 : 測試reset Step 13 : 修正神經元J的權重值 Step 14 : 測試停止條件
ART (續) 範例 1 2 3 4 5 6 n : number of components in an input vector 1 2 3 4 5 6 n : number of components in an input vector m : maximum number of clusters to be formed : vigilance parameter 0< <1 L : parameter used in update of bottom-up weights L>1 L=1.5
ART (續) Step 0 : L=2 , =0.5 , bij(0)=1/7 , tji(0)=1 Step 1 : For the first input vector (1,0,1,0,1,0) s=(1 0 1 0 1 0) ||s||=3 ||x||=(1 0 1 0 1 0) compute net input to each node in the F2 layer Recompute the F1 activation xi=sit1i (J=1) x=(1 0 1 0 1 0) ||x||=3 Test for reset Update the weights for node 1 當輸出均相同時找 i 值較小者
ART (續) Step 2 : For the second input vector (0,1,0,1,0,1) s=(0 1 0 1 0 1) ||s||=3 ||x||=(0 1 0 1 0 1) compute net input to each node in the F2 layer Recompute the F1 activation xi=sit2i (J=2) x=(0 1 0 1 0 1) ||x||=3 Test for reset Update the weights for node 2
ART (續) Step 3 : For the third input vector (1,1,1,0,0,0) s=(1 1 1 0 0 0) ||s||=3 ||x||=(1 1 1 0 0 0) compute net input to each node in the F2 layer Recompute the F1 activation xi=sit1i (J=1) x=(1 0 1 0 0 0) ||x||=2 Test for reset Update the weights for node 1
ART (續) Step 4 : For the fourth input vector (0,0,0,1,1,1) s=(0 0 0 1 1 1) ||s||=3 ||x||=(0 0 0 1 1 1) compute net input to each node in the F2 layer Recompute the F1 activation xi=sit2i (J=2) x=(0 0 0 1 0 1) ||x||=2 Test for reset Update the weights for node 1
ART (續) Step 5 : For the fourth input vector (1,1,0,0,1,1) s=(1 1 0 0 1 1) ||s||=4 ||x||=(1 1 0 0 1 1) compute net input to each node in the F2 layer Recompute the F1 activation xi=sit1i (J=1) x=(1 0 0 0 0 0) ||x||=1 Test for reset Update the weights for node 1
ART (續) Now the value for the F2 layer are Recompute the F1 activation xi=sit2i (J=2) x=(0 0 0 0 0 1) ||x||=1 Test for reset Update the weights for node 1
ART (續) Now the value for the F2 layer are Recompute the F1 activation xi=sit3i (J=3) x=(1 1 0 0 1 1) ||x||=4 Test for reset Update the weights for node 1
ART (續) 停止條件 當F2層的神經元皆inhibited(羞怯) No weight changes No units reset Maximum number of epochs reached 當F2層的神經元皆inhibited(羞怯) 增加更多的聚類神經元 減少警戒值 Pattern不予分類
ART (續) 起始buttom-up權重值倘若給得太大,將導致過多聚類型態的情形 當pattern的相似度不足時,ART不會強迫分類 當vectors 的組成有較少的非0值,或有較少的0時,再比較相似程度時較吃虧 聚類數目太多則降低警戒值,反之,提高警戒值 誤差太大時,應適當提高警戒值
Fuzzy ART 非監督式學習 對類比或二元值的輸入,具有快速且穩定聚類的能力 對任意的輸入向量 I ,以M維的方式展開 I = ( I1, I2, …, IM ) 其每個組成 Ii 的值皆設 定在[0, 1]的區間
Fuzzy ART演算法 Step 1 : 設定起始權重值 wij 1 , i=1 to N , j=1 to M 選擇參數()值 > 0 學習速率()值 [0, 1] 警戒值() [0, 1] (最難決定) Step 2 : 讀入一個新的輸入向量I (二元值或連續值) Step 3 : 對每一個輸出節點計算選擇函數Tj Step 4 : 選擇優勝單元 Step 5 : 共振測試(比較新舊事物的相似度)
Fuzzy ART演算法(續) Step 6 : 沒被選擇的單元進行重置的動作 Set T=-1 and go to Step 4 Step 8 : 重複 : Go to Step 2
Fuzzy ART 的 normalize The ith attribute, xi, of an M-dimensional pattern is scaled between its minimum value, mini, and its maximum value, maxi.
Fuzzy ART 範例 (1, 0, 0.8, 1), (0,1,0,0.9), (1,0.2,1,0.8) wij=1 =0.5 =0.8 =0.5 皆相同,選擇T1,進行共振測試 進行權重值修正
Fuzzy ART 範例(續) 選擇T2,進行共振測試 進行權重值修正
Fuzzy ART 範例(續) 選擇T1,進行共振測試 進行權重值修正