NeuroSolutions神经网络软.ppt

上传人:小飞机 文档编号:5441328 上传时间:2023-07-07 格式:PPT 页数:81 大小:1.21MB
返回 下载 相关 举报
NeuroSolutions神经网络软.ppt_第1页
第1页 / 共81页
NeuroSolutions神经网络软.ppt_第2页
第2页 / 共81页
NeuroSolutions神经网络软.ppt_第3页
第3页 / 共81页
NeuroSolutions神经网络软.ppt_第4页
第4页 / 共81页
NeuroSolutions神经网络软.ppt_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《NeuroSolutions神经网络软.ppt》由会员分享,可在线阅读,更多相关《NeuroSolutions神经网络软.ppt(81页珍藏版)》请在三一办公上搜索。

1、NeuroSolutions類神經網路模擬介紹,決策分析研究室,何謂類神經網路,類神經網路的靈感源自於腦神經學,其基本概念是希望透過模擬人腦結構的方式來建立新一代的電腦處理模式。(中山大學 機電系 嚴成文教授)運用電腦(軟、硬體)來模擬生物大腦神經的人工智慧系統,並將此應用於辨識、決策、控制、預測,等等。(真理大學工管系 邱寬旭教授)類神經網路(Neural Network,NN)類似人類神經結構,是一種基於腦與神經系統研究,所啟發的資訊處理技術。具有人腦功能基本特性:學習、記憶和歸納。(輔仁大學統計資訊學系 謝邦昌教授),何謂類神經網路,類神經網路並不需要瞭解系統的數學模型,直接以神經網路取

2、代系統的模型,一樣可以得到輸入與輸出之間的關係。類神經網路和迴歸分析不同,沒有任何假設的機率分佈,是模式識別和誤差最小化的過程,在每一次經驗中提取和學習資訊。類神經網路可以處理連續型和類別型的資料,對資料進行預測。,Neural Network Model,Brain Neuron(生物神經元)Artificial neuron(人工神經元)人工神經網路為一系列的處理單元,處理單元透過神經樹之連結藉以調整連結強度(權重)來輸出。,人工類神經介紹,神經元狀態分成興奮及抑制二種,以1代表興奮,以0代表抑制神經元與其他神經元間以神經節連結,可用加權值代表神經節之連結強度神經元之狀態會透過神經節輸出至

3、其他神經元,而成為其他神經元之狀態輸入,Artificial neuron(人工神經元),類神經網路的架構,類神經網路主要結構是由神經元(neuron)、層(layer)和網路(network)三個部份所組成。整個類神經網路包含一系列基本的神經元,通過權重(weight)相互連接。這些單元以層的方式組織,每一層的每個神經元和前一層、後一層的神經元連接。,圓圈的部分代表神經元,類神經網路的架構,類神經網路的分為輸入層、輸出層和隱藏層,三層連結形成一個神經網路。輸入層只從外部環境接收資訊,該層的每個神經元相當於自變數,不完成任何計算,只為下一層傳遞資訊。輸出層生成最終結果,為網路送給外部系統的結果

4、值。,類神經網路的架構,隱藏層介於輸入層和輸出層之間,這些層完全用於分析,其函數聯繫輸入層變數和輸出層變數,使其更配適(fit)資料。目前尚沒有統一的標準方法可以計算神經網路的最佳層數。一層加權神經元的網路稱單層感知器,多層加權神經元的網路稱多層感知器(multi-layer perceptrons)。,MP(MultiLayer Perceptron)模型公式:,Yj=f(net j)Yj處理單元函數net j=Wij Xi jWij=連結強度Xi=神經元i所傳來之訊號j=神經元j之閥值 f=轉換函數,通常為階梯函數(Step function)f(x)=Wij=Xi Xj:學習速率,控制權

5、重修正幅度,T目標輸出量Y推論輸出量差距量,用來修正權重差距量=目標輸出量 推論輸出量=j=Tj Yj權重改變量=Wij=jXi輸出單元閥值改變量=j=-j總錯誤率=誤分類案例總數/範例種數,BPN原理簡單介紹,提供範例資料給神經網路神經網路運算後產生輸出資料神經網路運算後產生輸出資料並比較滿意值修正網路中之權重以降低誤差,範例資料輸入,網路權重w,修正權重參數,訓練演算法,誤差,差異,目標值,輸出值與目標值比較,產生輸出資料,Neural Networks的要求,神經網路學習是透過範例來讓網路收斂,因此輸入資料必須為:-擁有足夠範例資料來讓神經網路作適當之歸納。-適度的訓練-資料中的關係變數

6、無絕對之影響變數-針對監督式學習需要有期望輸出值(目標值)訓練,輸入值為其關鍵,信賴度,Neural networks are very powerful對於神經網路之是基於訓練之資料上。若資料不足則沒辦法修正權重作業。透過充分資料之訓練的神經網路,是可信賴的。,類神經網路的應用-工業應用,控制器設計與系統鑑別產品品質分析(例:汽水瓶裝蓋與填充監測、珍珠分級)機電設備診斷(例:數值電路診斷、類比IC診斷、汽車引擎診斷)化工程序診斷(例:化工廠製程故障診斷)實驗資料模型建立(例:複合材料行為模型建立)工程分析與設計(例:鋼樑結構、道路鋪面狀況評級),類神經網路的應用-商業應用,股票投資(例:大盤

7、基本分析、大盤技術分析、個股技術分析)債券投資(例:債券分級、美國國庫券利率預測)期貨、選擇權、外匯投資(例:期貨投資、選擇權投資、外匯投資)商業信用評估(例:貸款信用審核、信用卡信用審核)其他商業應用(例:直銷顧客篩選、不動產鑑價),類神經網路的應用-管理應用,策略管理(例:市場需求量預測方法之選擇、雇工人數規畫)時程管理(例:排程策略選擇、工作排程)品質管理(例:管制圖判讀、半導體製造過程所需蝕刻時間估計),類神經網路的應用-資訊應用,影像辨識系統(例:指紋識別、衛星遙測影像分析、醫學影像識別)訊號分類其他資訊應用(例:雷達訊號分類、聲納訊號分類),類神經網路的應用-科學應用,醫學(例:皮

8、膚病診斷、頭痛疾病診斷、心臟病診斷、基因分類)化學(例:化合物化學結構識別、蛋白質結構分析)其他科學應用(例:體操選手運動傷害分析、時間數列分析方法選擇),類神經網路的優點,類神經網路可以建構非線性的模型,模型的準確度高。類神經網路有良好的推廣性,對於未知的輸入亦可得到正確的輸出。類神經網路可以接受不同種類的變數作為輸入,適應性強。類神經網路可應用的領域相當廣泛,模型建構能力強。類神經網路具模糊推論能力,允許輸出入變數具模糊性,歸納學習較難具備此能力。,類神經網路的缺點,類神經網路的隱藏層可為以1-2層,數目可設為任意數目,且有學習速率等參數需設定,工作相當費時。類神經網路以迭代方式更新閥值,

9、計算量大,相當耗費電腦資源。類神經網路的解有無限多組,無法得知哪一組的解為最佳解。訓練過程中無法得知需要的神經元個數,太多或太少的神經元均會影響系統的準確性,常以試誤方式得到適當神經元個數。類神經網路是以建立數值結構(含加權值的網路)來學習,其知識結構是隱性的,缺乏解釋能力。,NeuroSolution案例介紹,台灣加權指數預測,前言,想要運用類神經來作為解決問題之工具,必須要先了解類神經的流程步驟,其流程如下:訂定目標資料收集與資料處理(包含資料篩選、資料清理、屬性資料分析與歸類)建立模型訓練模型模型測試與分析結果評比實際應用,類神經網路製作流程,確認目標,資料整理,建立類神經網路模型,神經

10、網路訓練,神經網路測試與分析,網路結果評估,網路應用,實驗與資料收集,訂定目標,台灣加權指數預測,目標:台灣加權指數預測,在此我們舉一般常見而且可以輕易取得資料的案子為說明範例,而其中以國內的加權指數資料取得容易,也因此成為典型的分析範例。首先從網站上去下載股市10年資料對於想運用類神經網路來作為分析工具來說,資料取得非常重要,在這邊以金融業之台灣加權指數的預測範例,是提供一個參考方式。若您是其他領域的專家,想運用類神經來協助你進行分析工作,那麼您的第一步也是資料蒐集。,資料收集,從網路上下載有關台股指數之資料載此選擇台灣加權指數為測試目標,資料收集注意事項:,儘可能收集您要作為分析的資料若是

11、您的資料是從實驗中求得,那麼你所作的實驗的樣本數也要儘可能地多,因為越多的資料,對類神經而言,可以讓它作適度之歸納。若您的資料量本身不是很多,您可以複製多筆資料來作為訓練之用,但是有可能造成類神經網路的信賴度會不夠。根據您的目的Target來收集資料,因此您必須了解資料的結構、屬性以及特性,這些就是所謂Domain。唯有了解這一個領域的人,才知道他要做的是什麼、所需要的是什麼資料,這些資料未來會有何用處。,資料整理,台灣加權指數預測之目的:預測收盤價,資料整理,影響類神經網路之精確度的主要變數有兩個,一個是資料、另一個就是訓練的長度。資料收集與整理時,唯有了解該領域(Domain)的人,才知道

12、他要整理哪些數性的資料會影響到目標值的變化。由於良好可信賴之類神經網路,都是藉由訓練而來,而訓練的資料品質是好的、所提供的資料屬性是對目標值是有貢獻的話,則網路訓練出來就會比較好。訓練良好的類神經網路,其適用性才會廣,才會較為準確。資料整理變成為類神經之製作的前一步重要課題。,訓練資料及測試資料分類,在資料收集之後,經過整理,會將資料分成訓練之用與測試之用等資料檔案2種。訓練資料是用來網路訓練之用,藉由訓練來收斂網路權重。測試資料則是用於網路測試之用,用來測試網路是否準確,是否有經過充分訓練,是否可以應付未來所要發生之問題。,台灣加權指數之資料處理,經由下載之後,我們開啟檔案,發現在檔案裡頭中

13、,總共有幾個欄位,分別為Date(日期)、Open(開盤價)、Close(收盤價)、Value(成交量)。日期對我們在類神經中可能用處不大,因此我們可以省略。而我們主要目的是要預測收盤價,因此可以用的參數只有開盤價(Open)、成交量(Value),只有兩個變數對類神經網路來說,可能會太少,因此使用者可以再將再財務金融所學到的一些Index運用進來。因此,我們再自己新增一個五日均線值,以作為預測之指標值之一。,資料前處理,製作五日平均收盤價,資料前處理,將前五筆資料予以省略將資料複製貼到記事本中,並建立檔名為Input。,資料前處理,建立訓練對照目標值,並將檔案存成Desired。將資料蒐集完

14、畢,並存成檔案後,就可以開始進行建立類神經模型。,檔案分類(訓練用 or 測試用),在檔案分割時,可以將全部檔案的4/5用為訓練之用,另外的1/5的資料作為測試之用。並將檔案分別存檔如下圖:,建立類神經網路模型,建立模型,首先點選NeuralBuilder圖形工具,啟動NeuralBuilder對話視窗選擇Multilayer Percepton(多層感知機)模型,設定訓練檔案(1),進入了訓練資料設定畫面之後,點選Browse鍵之後會出現檔案選擇對話框,選擇所要作為訓練之輸入資料。,設定訓練檔案(2),當訓練之輸入資料設定完畢,則會將訓練Domain資料欄,列舉對話框之中若是資料欄位,有些資

15、料不是作為輸入之資料,可以在資料欄位中用滑鼠點選,並選擇Skip鍵,Example,在Training Data中,選擇檔案時,會出現Prediction之選項,此時可以設定是否此網路要作為預測之用。一般要作為預測之用的話,建議預測之目標值也要與變數放置在同一檔案之中。假設設定了Prediction之選項,則會出現Delta的設定,Delta主要是要用前幾筆資料,來預測下一筆資料。假設現在是1/15,那麼要預測1/16的資料,那麼他會用1/15,1/14,1/13,1/7,1/6的資料來作為預測之參考資料。,Training Data之對話框說明,Training Data之對話框說明,當載入

16、檔案之後,勾選的Prediction檔案之後,並設定Delta值點選要作為預測之目標值的欄位,將之點選設定為Predict。,Training Data之對話框說明,GA選項在Training Data的對話框中,輸入資料的項目前面,可以看到GA的選項一般狀態是不會設定是否要執行GA(基因演算法)若勾選GA選項之後,則後續會加入基因演算法來進行最佳化搜尋。,Training Data之對話框說明,Input:設定該欄位為訓練資料之輸入Desire/Predict:設定該欄位為訓練目標對應值Symbol:設定該欄位為符號型態Skip:跳過,不處理,設定Desired Response檔案(1),

17、在這邊要設定對照目標檔案,亦即期望輸出對照值點選Browser鍵,啟動開啟檔案對話視窗。點選開啟Disired檔案。,設定Desired Response檔案(2),在開啟之後,則所設定作為Desired之資料會列於表中。若訓練之Input資料也同列於其中(亦即input-Desired同列於其中)可以將input資料項SKIP(省略)。另外亦可以進行資料刪除及資料型態進行編制符號、文字皆須運用Symbol來標註資料型態當設定完成之後,進行下一步設定。,交叉驗證及測試資料之設定,何謂交叉驗證資料Cross Validation Data Set:一般類神經網路中,很少會提到交叉驗證資料,但是會

18、提到過度訓練Overfit或是Over TrainingNeuroSolutions提供CV的方式作為檢測網路是否有過度訓練之現象。,交叉驗證及測試資料之設定,交叉驗證資料主要目的在於當網路訓練完成一個週期時,會計算出MSE值,之後先暫停訓練,將CV資料丟入,看MSE值是多少,以作為參考,如此可以檢測網路是否有過度訓練現象。測試資料:測試資料主要是用來測試網路經過訓練之後,是否可以應付未發生過之事件,運用測試資料,來測試網路是否精確或是可否拿來作為實際應用之參考。,交叉驗證及測試資料之設定,在Cross Val.&Test Data的對話框中之設定,分為兩個部分:上面設定(1):主要是已經是先

19、將檔案進行分類Input CV:選擇要作為CV的輸入資料檔案Desired CV:選擇要作為CV的目標資料檔案Input Test:選擇要作為測試之資料檔案Desired Test:測試資料之目標值對應檔案,交叉驗證及測試資料之設定,下方設定(2):並無將檔案令作分類歸檔,而是直接要將檔案切割,以作為CV&Test資料。設定要切割幾%的資料作為CV所用之資料。另外要切割幾%的資料作為測試資料設定完成後,點選 往下一步動作。,Multilayer隱藏層數量設定,Multiplayer主要是要設定隱藏層數量。隱藏層主要目的在於數值交互作用隱藏層多不一定代表比較好,因此適當很重要。一般隱藏層數量1層

20、或2層,即可以達到不錯的效果。設定完成後,點選 進入下一個設定。,隱藏層#1之設定說明,在隱藏層設定中,Processing Elements(Neuron)主要是設定神經元之數量。一般系統會根據輸入之資料比數進行換算最佳之建議數量。Transfer設定轉換函數之使用種類:可以設定如雙曲函數元件Sigmoid 或是雙曲正切函數TanbAxon,或是其他元件。系統初始設定會以TanbAxon為主,隱藏層#1之設定說明,學習法則之設定Learning Rule:可以設定為Momentum、Step共六種。如果設定是Momentum學習法則,則可以自行修改Step Size及Moment

21、um Rate設定。系統初始設定為MomentumStep Size及Momentum Rate為系統初始設定值。,Supervised Learning設定,Supervised Learning為監督式學習網路,監督式學習網路通常會也輸入值及目標值,且需要設定學習長度(Epochs)。Maximums Epochs最大學習長度,一般稱為迭代或是訓練次數。最大迭代範圍設定,主要是指定要重複運算多少次,這個沒有一個界定之標準。誤差主要是用來作為權重參數之變更,因此MSE也作為訓練之終結的條件。,Supervised Learning設定說明,Termination所指的是終止條件之設定。MSE

22、:均方差Threshold:門檻值終止條件一般是以均方差為參考,因此設定均方差之門檻值,如10-4次方,若經運 算之後,均方差的小數點達到門檻值,小於10的-4次方時,則訓練就會終止。訓練終止條件之成立只要Epochs達到,或是達到Threshold門檻值界定標準就會終止訓練。,Supervised Learning設定說明,Load Best on Test在經過訓練完成之後,假設有設定網路測試,此時會以最佳之權重值來作為測試之用。On-Line&Batch主要是權重值更新的方式。On-Line權重更新方式,只要每一筆範例資料經過換算之後即顯示其更新狀態。Batch會經過全部範例都運算之才呈

23、現其權重更新狀態。,Supervised Learning設定說明,一般終止條件會有兩個。一個為Epochs(迭代)設定,另一個為門檻值設定。兩者其一達到及停止訓練。終止條件之門檻值設定,一般需要設定為10的-4次方時或10的-6次方。若您沒設的門檻值得話,一般是以10的-2次方。這樣在訓練時,會因為門檻值一下子就到達而導致訓練停止。,Probe配置說明,Probe主要是設定監測物件Input:在輸入端放置監測物件,若有需要,在Training Set前面方格勾選,則會自動放入所選擇之間測物件。Output:輸出端設定監測物件Desired:在對應目標物件設定監測物件Error在評估誤差上設定

24、監測物件。,Probe配置說明,Performance Measure:列舉MSE、NMSE、r、%Error等網路評估指標。General主要是列出評估網路之相關指標Confusion matrix:是一種分類的結果顯示之方法Receiver Operating Characteristic(ROC)接受端作業特徵:用來設定檢查對錯誤偵查的一種警示方式。,Build Your Model,在以上都設定完成之後,點選Build,開始建立你的類神經模型,則系統會自動根據你設定的參數進行自動建模。,自動建模,在自動建模之後,你還是可以根據自己需要,在進行物件置換與新增。,自訂權重Probe物件,權

25、重值在類神經網路是非常重要的,一般為通道之抑制或興奮之用。因此,在建立網路後,系統會自動設定連結權重值的初始值。但是,因為沒有設定監測物件,所以我們看不出權重值。之前介紹過,Synapse(神經樹)主要就是連結權重設定之地方,因此,我們可以透過監測物件,來顯示出權重之數值。,1.點選Probe物件中的MatrixView物件,2.將滑鼠移動到Synapse物件上,3.再點選滑鼠左鍵將MatrixView物 件放置到Synapse物件上,自訂權重Probe物件,在右邊的矩陣圖,就是第一層隱藏層的權重值。一般來說,權重值之初始化由系統隨機產生,因此好的權重初始值有些時候就會影響到結果。但是權重的初

26、始值好壞一開始無法判定,因此許多時候會運用GA基因演算法則來協助搜尋。,4.用滑鼠連續點選MatrixView物件2次,就會開啟Synapse的權重矩陣圖了。,輸入層,第一層隱藏層,第二層隱藏層,輸出層,網路訓練,執行網路訓練,在執行網路模擬之前,首先要了解網路模擬之啟動的控制鍵,啟動模擬,停止模擬,重置Reset,數值歸零,迭代依次運算,範例依次運算,案例依次投入運算,網路權重隨機產生,改變所有網路權重值,隱藏視窗,啟動模擬,點選Start鍵,啟動模擬。啟動之後,我們可以看到Simulation Progress的對話框正在進行運算。而Active Performance對話框則是顯示誤差狀

27、況。另外打開權重矩陣對話框石,可以見到權重值一直在變化,變化中的權重矩陣,當模擬執行的時候,權重會因為誤差值一直進行修正。,訓練完成,當訓練條件完成時,系統會自動停止。在訓練玩後,一邊先進行權重儲存。,權重儲存(1),首先,將滑鼠移動Controller物件上,點選下方黃色Controller物件按滑鼠右鍵,會出現功能選項,這時點選Properties點選之後,即出現StaticControl Inspector的對話框,權重儲存(2),在進入StaticControl Inspector的對話框之後,點選Weights的分類頁選擇之後,點選Save鍵,將權重進行儲存。在選擇Save鍵之後,會

28、出現另存新檔的對話框將第一次的訓練權重儲存設為TrainingWeight_1名稱設定完畢後儲存。,權重儲存(3),一般來說,同樣的資料,訓練次數會作5次,從這5次之中選擇MSE最小的權重值,作為測試之用。在經過確認後,可以發現第一次所訓練出來之MSE最低,因此我們將以此次之權重作為測試資料之用。另外一方面,您也可以將每一次的權重都做一次測試資料,再將最小的MSE的權重作為實際應用之用。,模型測試,模型測試之前置動作,首先在資料處理時,就要將資料檔案先分為訓練資料及測試資料檔案。(參考前章資料整理)在整理好之後將檔案分別儲存成TestInput跟TestDesired。必須將之前所訓練好之神經

29、網路檔案及網路之權重先進行儲存,避免因為操作錯誤導致得重新訓練。,執行Testing Wizard,點選Testing Wizard,啟動網路測試精靈啟動之後,會進入Testing Wizard介紹畫面,點選Next,到下一頁。,Testing Wizard之檔案設定,首先要確定您要測試之型態(DataSet to Test)是要測試,還是要應用(實際應用),若您是要設定測試檔案,則選擇Test;若您是實際應用案例,則選擇Production。,Testing Data檔案之設定,選擇設定Input File欄位之Browser選項,設定所要輸入之測試檔再來點選所要測試檔案之目標輸出值(Des

30、ired檔案)設定完成,點選Next。,Testing Wizard之輸出設定,在測試輸出方式,可以選擇顯示在NeuroSolutions的視窗畫面上,或者是輸出成檔案等兩個選項,在此我們將檔案輸出成檔案方式。在輸出時,下面有一個選項,勾選後,會將原來的目標值也一起列出,以方便跟測試資料的輸出值方便比較。設定完成後,點選Next。,Test檔案檢查,在運算後,會以txt檔案格式來儲存輸出檔案開啟之後,會發現目標值與測試輸出值會一起列出。可以進一步到Excel進行比對。,應用篇,實際應用,在測試完後,若類神經網路是可以應用了,這時還是會應用Testing Wizard來進行資料預測。點選Testing Wizard,開啟Testing Wizard視窗。,設定為Production功能,點選設定Dataset to Test為Production功能選項實際去下載資料,製作成檔案,並將之輸入到Input file裡頭。,輸出結果,在設定好後,我們選擇將結果輸出到NeuroSolutions畫面中之後點選Next。之後會再出現程序設定檢查畫面,點選Finish,參考資料,NeuroSolutions類神經網路模擬介紹/皮托科技股份有限公司/黃家祚中華資料採礦會 http:/,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号