構造算法

構造算法

構造算法大致可以分為三類:理論收斂法、啟發式最優算法、數據驅動法,但各類之間有時會有交叉。

基本介紹

  • 中文名:構造算法
  • 外文名:construction algorithm
  • 分類:理論收斂、啟發式最優、數據驅動
  • 系統:計算機
  • 算法特徵:算法之間會有交叉
  • 套用學科:計算機原理
理論收斂法,啟發式最優算法,數據驅動法,

理論收斂法

理論收斂法常用於布爾型網路,網路訓練的方法是在現有結構的基礎上,通過調整網路輸出,使錯誤率達到最小。網路輸出值的調整可以採用增加節點或隱層的手段,使正確類樣本點數量增加,重複運算直至問題解決。Frean提出了一種簡單的遞歸法規,改進感知器算法。當樣本點足夠多時,可對各單一輸出進行訓練,使它們達到正確類。然後創建兩個子節點,可分別向父節點提供正、負輸入。由於採用了線性閾值節點,則所有的非正確類樣本點均可由這兩個節點調整。繼續產生更多的子節點,直到所有的樣本均被正確分類。

啟發式最優算法

啟發式最優算法與理論收斂法相似,它們均需要訓練網路,使其錯誤率達到最小,同時增添新的節點以進一步減小誤差。它們之間的主要區別是,啟發式最優算法適用於具有連續值的網路,因此,不斷地增加新節點數未必能保證網路性能更優。Cascade—Correlation學習算法(CC)就屬於這種構造方法。
它有兩個重要特點:
1、一旦隱節點被添加到網路中後,就不再改變;
2、結構學習算法創建新的隱節點。每添加一個新的隱節點,都會最大化輸出與新節點之間的相關程度,並消去餘下的錯誤信號。
構造算法
CC結構算法的實現步驟為:
(1)從一個僅含輸入輸出層的小網路開始。輸入輸出層間進行全連線,含可調權重。同時還包含偏好節點,設為常量1。考慮到輸出為實數,因而採用線性輸出節點。
(2)採用快速傳播的學習算法.訓練所有指向輸出層的連線,直至網路錯誤率不再改變時停止訓練。
(3)如果訓練後的網路滿足規定精度,計算停止。此時,由於網路中沒有隱層,因而處理的問題實質上是線性問題。
Cascade—Correlation方法其實可以用於檢測待處理問題是否確實是非線性問題。用神經控制器去解決線性或可線性化的問題並無益處。如果用神經網路來解決線性問題,反而會延長計算時間,降低控制器性能。
(4)如果訓練後的網路性能並不令人滿意,也就是說,待處理問題是非線性的,則挑選新節點。將待選節點與所有輸入節點及已存在的隱節點進行連線,但與輸出節點不進行連線。
(5)最大化待選節點間的相關程度,通過對所有到待選節點的連線進行訓練,消除網路新增的錯誤。當相關性無法再提高時,停止訓練。
(6)選擇具有最大相關性的待選節點作為新增節點,將其作為隱節點添加進網路中,建立新節點與所有輸出節點之間的連線。返回到步驟(2)。

數據驅動法

數據驅動法是基於統計原理和神經網路技術的模式識別方法。它直接利用樣本數據來識別參數或是決定系統處理下一步驟。
數據驅動是指在系統處理的每一步,當考慮下一步該做什麼時,需要根據此前所掌握的數據內容(也稱事實)來決定。它強調的是數據的主動性和重要性,擺脫了傳統從運算元方法中數據主要是被動地用來驗證人們在許多假設條件下導出運算元的正確性,這與現代資訊理論的發展觀點相吻合。
這類構造算法是最含糊的一類。但也是極有發展潛力的一類,數據驅動算法可以根據外部環境的變化來調整自己的結構,這點類似於自適應學習控制。網路誤差函式由網路所在的環境所決定,在數據驅動算法中,首先估計與實際任務相符的表現結構,考慮到偏差/方差兩難現象,力圖事先獲得更多有關目標的信息,“目標”指過程輔助函式,即控制器

相關詞條

熱門詞條

聯絡我們