130 likes | 323 Views
Probabilistic Neural Network (PNN). 機率神經網路. 機率神經網路 (PNN). 1988 年 D. F. Specht 提出 監督式學習 並非如 Boltzmann machine 一般以機率的方式進行運算 是一個四層的網路結構,能將任一個輸入向量對應到任一個分類 一個輸入層 三個計算層. 機率神經網路 ( 續 ). Outputs. Summation units (one for each class). Pattern units. Inputs. 機率神經網路 ( 續 ).
E N D
機率神經網路(PNN) • 1988年D. F. Specht提出 • 監督式學習 • 並非如Boltzmann machine一般以機率的方式進行運算 • 是一個四層的網路結構,能將任一個輸入向量對應到任一個分類 • 一個輸入層 • 三個計算層
機率神經網路(續) Outputs Summation units (one for each class) Pattern units Inputs
機率神經網路(續) • 學習速度極快(學習時間幾近於0) • 連結權重值採一次設定,直接由training patterns載入所需數據,無epoch的過程 • 缺點 • 所需記憶體較大 • 有多少組training patterns就必須有多少的pattern units • 回想速度較慢
機率神經網路(續) • 原理 • 由機率模式(貝氏分類器,Bayesian classifiers)所啟發 • 一群具有n維輸入向量的訓練範例,可視為一n維空間中的一群樣本點,藉由這些樣本點估計整個樣本空間中各分類的機率密度函數 • 令x為一n維的輸入向量特徵目標,屬於K個可能分類中的一個分類 • 令f1(x), f2(x), …, fK(x)為已知的K個分類的機率密度函數
機率神經網路(續) • 令p1, p2, …, pK為每個特徵向量x所屬正確分類的先驗機率(priori probabilities) • 假令一個決定函數d(x)=Ci , i=1,2,…,K,表示向量x的最佳分類為Ci • 而令L1, L2, …, LK為分類錯誤的損失函數,d(x) Ci , i j 且x Cj • 假若分類正確則其損失為0 • 貝氏決定法則 • 令每一個product的機率為
機率神經網路(續) • 選擇一個符合分類的最大product value • 假如 • 則將x指定為Ci分類 • 先驗機率的pi決定 • 按每個輸入範例所屬每個分類的比例可得 • 假如沒有可供利用的資訊來決定損失函數,則可將其值皆設為相同 • 機率密度函數的評估 n : 輸入向量的維度 ki : 訓練範例在Ci分類的個數 xij : 第j個訓練範例屬於第i個分類 : 平滑參數
機率神經網路(續) • 訓練過程 • 在處理前先將所有的輸入範例正規化(1,-1) • Input層與Pattern層藉權重值進行全連結 • Pattern層共有P個神經元(訓練範例總數) • 權重值的設定依連結的輸入向量值來決定 • Pattern層的各神經元進行輸入向量與權重值向量間的dot運算 • 因而決定第j個pattern-layer的神經元輸出值
機率神經網路(續) • Pattern-layer的輸出被指定連結到Summation-layer原有已知的分類神經元 • Summation-layer實際是相同分類的輸入範例的集合,因此以 計算機率密度函數為其輸出 • 輸出層是一個二元的輸出值,其每個神經元都有兩個輸入連結,Summation-layer與Output-layer之間的權重值以下式決定
機率神經網路(續) UA=1 UB=Ck=-1 • 範例 A B XOR function #1 (-1,-1)0 (Class A) #2 (-1, 1)1 (Class B) #3 ( 1,-1)1 (Class B) #4 ( 1, 1)0 (Class A) #1 #2 #3 #4 -1 -1 –1 1 1 -1 1 1 (-1 -1) (-1 1) ( 1 -1) ( 1 1 )
機率神經網路(續) 假設=1 計算Pattern-layer的輸出 #1 (-1-(-1))2+(-1-(-1))2=0 Output=e-0/2=1 #2 (-1-(-1))2+(-1-1)2=4 Output=e-4/2=0.135 #3 (-1-1)2+(-1-(-1))2=4 Output=e-4/2=0.135 #4 (-1-1)2+(-1-1)2=8 Output=e-8/2=0.018 Class A : (1+0.018)/2=0.509 Class B : (0.135+0.135)/2=0.135 Decision : 0.509*UA+0.135*UB=0.509-0.135=0.374>0 所以分到Class A
機率神經網路(續) • 平滑參數的選定 • Pattern-layer的神經元輸出精確性受平滑參數所控制 • 當平滑參數趨近於0時 • 其機率密度函數=0,分類數=1 • 當平滑參數趨近於無限大時 • 其機率密度函數=1,分類數=盲目分類 • 一般選定範圍為[0.1, 1],通常可取0.5 • 適用於 • 故障診斷、訊號分類