1.65k likes | 2.92k Views
類神經網路簡介. 類神經網路. 類神經網路( Artificial Neural Networks) 又名: 分散式處理器( parallel distributed processors) 適應系統( adaptive systems) 自我組織系統( self-organizing systems) 神經計算機( neurocomputers) 連接機構( connectionism) 神經網路( neural networks). 何謂類神經網路?. 類神經網路是指利用電腦來模仿生物神經網路的處理系統。
E N D
類神經網路 • 類神經網路(Artificial Neural Networks)又名: • 分散式處理器(parallel distributed processors) • 適應系統(adaptive systems) • 自我組織系統(self-organizing systems) • 神經計算機(neurocomputers) • 連接機構(connectionism) • 神經網路(neural networks)
何謂類神經網路? • 類神經網路是指利用電腦來模仿生物神經網路的處理系統。 • 更精確的說﹕類神經網路是一種計算系統,包括軟體與硬體,它使用大量簡單的相連人工神經元來模仿生物神經網路的能力。
類神經網路定義 • 『類神經網路是一種計算系統,包括硬體與軟體,它使用大量簡單的相連人工神經元來模仿生物神經網路的能力。人工神經元是生物神經元的簡單模擬,它從外界環境或其它的人工神經元取得資訊,並加以非常簡單的運算,而後輸出其結果到外界環境或其它人工神經元。』
神經元 (Neuron) (輸出) 細胞核 (輸入) 神經鍵(Weights)
類神經元 (Artificial Neuron) I1 W1 I2 W2 x>T ? Y Wn In 輸出(Output) 輸入(Inputs)
類神經網路 (Artificial Neural Networks) Input 1 Input 2 Output Input 3 Input N
人腦 眼睛看 動物辨識 形狀 大小 輪廓 速度
借款人每月收入 借款人每月房屋貸款須付金額 借款人每月汽車貸款須付金額 借款人每月其他支出 是否合乎借款條件 銀行信用貸款實例 輸入 (Inputs) 輸出 (Output)
類神經網路範圍 • 類神經網路的理論衍生自各個不同科學,其中,包含心理學、數學、神經科學、物理學、計算機科學、生物學、工程科學、哲學等。僅管這些領域的研究方向不盡相同,但它們的目標確是一致的:都是為了建立一個智慧型的系統,以滿足各方面的需求。
嚴謹的數學基礎 平行處理的本質 容忍錯誤的能力 自我調適的能力 非線性的運算 翰入輿輸出的對映 具有學習的能力 圖形辦識的能力 分散式聯想記憶(Associative Memory) 解決最佳化(Optimisation)問題 超大型積體電路實現(VLSI Implementation) 類神經網路特性
工業與工程方面應用 • 資料分析(例如礦床探測訊號分析) 、 • 故障診斷(例如飛機、汽車引擎診斷) 、 • 決策諮詢(例如自來水廠水質處理操作、材料選用) 、 • 製程監控(例如化工、鋼鐵製程監控) 、 • 最適化問題求解。
商業金融方面應用 • 商業決策(期貨交易決策、債券分級、保單審核) 、 • 商業預測(股票預測、利率預測) 、 • 商業分析(財務分析、稅務分析)。
科學與資訊方面應用 • 醫學疾病診斷、 • 氣象預測、 • 電腦輔助教學、 • 電腦音樂...等。
類神經網路架構 • 輸入層 • 隱藏層 • 輸出層
類神經網路學習 • 監督式學習網路(Supervised Learning Network)。 • 無監督式學習網路(Unsupervised Learning Network)。 • 混合式學習網路(Hybrid Learning Network)。 • 聯想式學習網路(Associate Learning Network)。 • 最適化學習網路(Optimization Application Network) 。
監督式學習網路 • 從問題領域中提供訓練範例,包含輸入資料輿翰出資料。 • 網路從中學習輸入資料與輸出資料的內在對映規則。 • 有如老師指導學生對問題做正確的回答。 • 常應用於圖形辨認和預測領域。 • 如倒傳遞神經網路。
無監督式學習網路 • 只從問題領域中取得只有輸入資料的訓練範例。 • 網路從中學習輸入資料的內在聚類規則,以應用於新的案例。 • 有如腦神經細胞有『物以類聚』的特性。 • 如自組織映射圖網路(Self-Organizing Map,SOM)、自適應共振理論網路(Adaptive Resonance Theory Network, ART)。
混合式學習網路 • 結合無監督式學習與監督式學習 • 學習過程分成兩階段: • 第一階段以無監督式學習調整輸入層與隱藏層間的連結加權值,達到將訓練範例聚類到隱藏層單元的目的,如SOM。 • 第二階段以監督式學習調整隱藏層與輸出層問的鏈結加權值,達到學習訓練範例輸入向量對映輸出向量內在規則的目的,如Counter Propagation。
聯想式學習網路 • 以狀態變數值為訓練範例,並從中學習範例的記憶規則,然後應用於只有不完整狀態值,而需推論完整狀態的新案例,這種網路可以應用於擷取應用與雜訊過濾。 • 霍普非爾網路(Hopfield Neural Network)以及雙向記憶網路(Bi-directional Associative Memory)等屬之。
類神經網路的分類 • 前向式架構(Feed Forward Network) • Perceptrons • Back Propagation Network • Linear Associate Memory • Hamming Network • Clustering Network • Counter Propagation Network • Self Organizing Network
類神經網路的分類 • 回饋式架構(Recurrent Network) • Auto-associative Memory • Bi-directional Associative Memory • Gradient-type Network • Temporal Associative Memory • MAXNET • Adaptive Resonance Theory Network
類神經網路常遇到的問題 • 區域極小值 (Local Minimum)。 • 過度訓練(Over Training)或訓練不足(Under Training)。 • 隱藏層數目及神經元數目的決定。 • 無法收斂。
區域極小值 (Local Minimum) • 類神經網路在尋找整體最小值(Global Minimum)之解時,所採用的方法乃是坡度遞降(Gradient Decent)法。 • 坡度遞降法的缺點是所找出的解可能只是區域的極小值,而非整體最小值。
過度訓練或訓練不足 • 若對輸入訓練的資料學習過度,可能會將資料中的雜訊學習進去,造成過度訓練,對新資料的預測反而有不良的效果。 • 若學習不足,亦無法作出太好預測,也就是訓練不足。 • 一般較重視的是過度訓練的問題,因為若能收斂,表示已有相當的學習。
如何知道過度訓練 • 除了訓練範例之外,另外準備一組測試範例。 • 當網路對訓練範例收斂時,測試範例是否也跟著收斂。 • 解決過度訓練的方法之一是更改誤差的容忍度。
隱藏層數目及神經元數目 • 層數越多,計算就越複雜,也就容易有區域極小值的問題出現。 • 一般認為至多只要二層隱藏層即可處理任何問題。 • 隱藏層內的神經元數,一般皆採用嘗試錯誤法(Try Error Method)找出最佳處理單元數。通常介於輸入層神經元數與輸出層神經元數和的一半,到輸入層神經元數的兩倍間。
造成無法收斂的原因 • 輸入訓練的資料內有極端狀況或互相矛盾。 • 輸入訓練的資料其排列順序問題。 • 所設定之誤差容忍度太小。 • 隱藏層內處理單元數目太少。 • 學習率太大所產生的震盪現象。
倒傳遞神經網路 • 倒傳遞類神經網路是目前類神經網路學習模式中最具代表性,應用實務最普遍的模式。 • 1957年感知機模式被提出,此一模式缺乏隱藏層,它的學習能力受到相當大的限制。 • 1985年P. Werbos, D. Parker, G. E. Hinton, 等提出了隱藏層的學習演算法,才使得倒傳遞神經網路進入新的一頁。
倒傳遞類神經網路 • 屬於監督式學習網路,因而適合診斷、預測等應用。 • 由許多單層網路所連結,而每一層的網路,則由數個神經元(Neuron),或稱節點(Node)所組成。 • 在網路中某一個神經元的的基本架構,每一個神經元的輸出,都乘上其相對應的加權連結值(Weights)再加總,再透過激發函數(Activation function)的計算產生輸出訊號。
倒傳遞類神經網路架構 • 輸入層:在輸入層的神經元,用以表現網路的輸入變數,沒有計算能力,其輸入變數的個數視處理問題的狀況而定,輸入的資料型態需先做正規化處理,使用線性轉換函數,如F(X)=X。
倒傳遞類神經網路架構 • 隱藏層:在隱藏層中的神經元稱為隱藏元,用以處理輸入單元送來的資料,使用線性轉換函數。
倒傳遞類神經網路架構 • 輸出層:用以表現網路的輸出變數,當網路在訓練時,此輸出為一訓值,將訓練值和實際值的誤差回饋互連接權值(Connect Weight),以調整權值至最佳狀態,直至網路收斂為止。其處理單元的個數亦視問題而定,使用的是非線性轉換函數。
非線性激發函數 • 雙彎曲函數(Sigmoid function) • 高斯主動函數(Gauss action function) • 雙曲線正切函數(Hyperbolic tangent function) • 片段線性函數(Piecewise-linear function) • 雙極性函數(Bipolar function)
Feedforward學習過程 • 輸入層: • 其中,xpi為訓練範例p(pth pattern)第i個輸入層節點。 opi為第i個輸入層神經元的輸出。
Feedforward學習過程 • 隱藏層: • 其中,oph為第h個隱藏層節點輸出,netph為第h個隱藏層節點淨輸入值,而h為第h個隱藏層節點的偏權值,whi是第h個隱藏層節點對第i個輸入層節點的鏈結權重值, f(netph) 為網路之激發函數。
Feedforward學習過程 • 輸出層: • 其中,為opk第k個輸出層節點輸出, netpk為第k個輸出層節點的淨輸入值,而k為第k個輸出層節點的偏權值,是wkh第k個輸出層節點對第h個隱藏層節點的鏈結權重值, f(netpk)為網路之激發函數。
坡度遞降法(Gradient Decent Method) • 定義成本函數E(Cost function) • 其中,Ep為各訓練範例輸出的誤差,E為所有訓練範例的總輸出誤差,dpk為第k個輸出層節點目標值,k為輸出節點數,而p為訓練範例的個數。
坡度遞降法(Gradient Decent Method) • 為了要降低成本函數E可經由節點與節點之間的連結權重值調整來達成,即: • 其中,W為節點與節點之間的連結權重值修正量。
坡度遞降法(Gradient Decent Method) • 故對成本函數作二個結點之間的連結全重值的偏為分為: • k定義為:
坡度遞降法(Gradient Decent Method) • 相同的,從隱藏層到輸入層,將成本函數對此層的連結權重值的偏微分為: • 而
坡度遞降法(Gradient Decent Method) • 在得到節點與節點之間的權重值的修正量後,便可帶入修正公式 • 其中,i、h和k為輸入層、隱藏層、輸出層節點數,η為學習速率(Learning rate)表示控制每次以坡度遞降法最小化誤差函數的調幅,β為動量係數(Momentum coefficient),而t為網路訓練過程的訓練次數(epoch、iteration)。