?? readme2.txt
字號:
四.實例學習
實例:教會"神經網絡"學會計算機中的“或”運算。
(注:此例指令存在 test1.cs中,你可以用loadcs指令調入)
什么是"或運算"?
"或運算"要求有兩個邏輯輸入值(真或假),只要兩上輸入值中的一個或一個以上為真,
即為真,否則為假。輸出值只有一個,即"真"或"假"
如下表:
輸入1 輸入2 輸出
=======================================
假 假 假
真 假 真
假 真 真
真 真 真
好,我們先假設0.2為假,0.8為真,讓這個“人工大腦”來學習。
(注,此模型有所有輸入,輸出值均只能在0-1之間,如果是其它數據
請用正態分布函數等數學工具化為0-1之間)
Let's go:
add(回車)
Command No.1
Mode 0.Learning 1.Process
Choose:0 "學習"選0
Data 1:0.2 輸入"假"
Data 2:0.2 輸入"假"
Data 3:0 不需要,輸入0
Data 4:0 不需要,輸入0
Supervise Data1:0.2 輸入導師信號"假"
Supervise Data2:0 不需要,輸入0
O.K.
.........
不斷地輸入樣本,共種情況四個,最后打
list(回車)
Num Status Data 1 Data 2 Data 3 Data 4 SData 1 SData 2
==========================================================================
1 Learn 0.200 0.200 0.000 0.000 0.200 0.000 假,假得假
2 Learn 0.200 0.800 0.000 0.000 0.800 0.000 假,真得真
3 Learn 0.800 0.200 0.000 0.000 0.800 0.000 真,假得真
4 Learn 0.800 0.800 0.000 0.000 0.800 0.000 真,真得真
run(回車) 讓神經網絡學習吧!
L: Time:100001 Error:1.45% Out1:0.200680 Out2:0.017024
L: Time:127 Error:1.0% Out1:0.785945 Out2:0.001250
L: Time:0 Error:0.01% Out1:0.801008 Out2:0.001196
L: Time:717 Error:0.97% Out1:0.813945 Out2:0.000335
看看結果,哇,誤差率(Error rate)好大,學習次數(time)也好多再,繼續學習吧...
run(回車)
L: Time:34879 Error:1.0% Out1:0.200518 Out2:0.014133
L: Time:117 Error:0.98% Out1:0.786038 Out2:0.000680
L: Time:42 Error:0.98% Out1:0.786013 Out2:0.000736
L: Time:648 Error:1.0% Out1:0.814138 Out2:0.000140
嗯,第一條命令的學習time從100001降到了34879,誤差也為1%了,當然還不行......
要所有的time都為只有幾百(當然越小越好),誤差率都小于等于1%才行.....
run (不斷地執行學習指令,每次都有進步)
......
run
......
run (好!執行了8,9次后,結果出來了)
L: Time:796 Error:1.0% Out1:0.209552 Out2:0.010427
L: Time:172 Error:1.0% Out1:0.785902 Out2:0.000505
L: Time:173 Error:1.0% Out1:0.785903 Out2:0.000896
L: Time:244 Error:0.99% Out1:0.814060 Out2:0.000477
不錯!
下面,添加一條"處理"指令還考考"神經網絡",看它學得怎么樣?
add(回車)
Command No.5
Mode 0.Learning 1.Process
Choose:1 選1,處理指令
Data 1:0.2 輸入假0.2
Data 2:0.8 輸入真0.8
Data 3:0
Data 4:0
O.K.
list(回車) 看一看吧
Num Status Data 1 Data 2 Data 3 Data 4 SData 1 SData 2
==========================================================================
1 Learn 0.200 0.200 0.000 0.000 0.200 0.000
2 Learn 0.200 0.800 0.000 0.000 0.800 0.000
3 Learn 0.800 0.200 0.000 0.000 0.800 0.000
4 Learn 0.800 0.800 0.000 0.000 0.800 0.000
5 Process 0.200 0.800 0.000 0.000 None None
(看,第5條是新加的處理指令,用at指令來執行它吧)
at(回車)
Input Command Num:5 (輸入指令號5)
P: Out1: 0.777334 Out2: 0.000506
看!結果出來了,為out1: 0.777334 近似0.8為真!(out2的值沒有用,近似為0,即無)
好了!至此,"神經網絡"已經學會"與運算"了!怎么樣?神奇吧!
你可以充分地發揮你自己的想像力,只要給出自變量X(最多四元),和一些正確的導師
信號Y(最多二元),此實驗系統能自動推出其近似關系的!
已經有科學工作者用人工神經網絡來進行股票的預測了!你有興趣也來試試!本系統
會祝你一臂之力的!
-----------------
如何存放學習結果?
-----------------
學習完后,打savebn指令:
Input Brain filename:aaa.bn 輸入要存放的"人工神經網絡"的文件名
此例中存為aaa.bn
CopyRight Information:Made By Tom 2001 輸入你自己的信息
Brain saved!
O.K.
好了,這樣就ok了!學會了嗎?
===============================================================================
五.實用程序cal2的使用
cal2是一個計算工具,你給出已經完成的"神經網絡"文件,它就能快速計算了,十分方便。
其在操作系統下的運行格式為:
cal2.exe [bp文件名]
例:就以上述的"與運算"存的"人工神經網絡",aaa.bn為例吧
C>cal2 aaa.bn (dos下鍵入 cal2.exe [bp文件名])
===============================================
Neural Network Test System Version 1.0
Calculate Tools
=============== Shen Qi, USST , China 2001 ==
[Well Trained Brain Copyright Information]
Made By Tom 2001 (顯示此人工神經網絡的相關信息)
Data 1:0.2 (輸入假 0.2)
Data 2:0.2 (輸入假 0.2)
Data 3:0
Data 4:0
P: Out1: 0.228821 Out2: 0.009963
(輸出為假 近似0.2)
C>(回到dos)
怎么樣?會了嗎?
---------------------------------------------------------------------------------
六.后 記
這是我做的第二個"人工神經網絡"實驗系統模型,可以說,這第二個系統比第一個系統
要成熟得多。當然,它們的功能是各異的。第一個阿爾法版,可用于進行智能分類識別。而
本系統貝吉塔塔可用來自動推導x->y的近似函數。
有朋友來信問我,如何才能開始學習"人工智能"?我想,這是一個很普遍的問題。在此,
我想說的是,人工智能的學習必需有許多前修的基礎課程作基礎。主要都是涉及計算機科學
與數學的課程,例如:《高等數學》,《線性代數》,《離散數學》,《數據結構》,
《圖論》,學包括《線性規劃》《動態規劃》等。這些都是很基礎的,且不得不學的內容。
當我在寫此稿的時候,此"人工神經網絡實驗系統"系列的第3款已經在研制中了,它將
會把"遺傳算法"溶入到BP算法中,給工程項目中的最優化系數求解等廣泛領域提供強有利的
科學推斷的實驗手段。敬請期待。
最后,我想說,由于我個人學識水平的限制(我剛完成大學一年級的學習)。盡管我已做
出了較大的努力,但還有些錯誤或不足的地方,請這此領域從事研究的專家前輩給于指點。
不勝感激!
沈琦
2001.7.13
作者聯系方式:
E-mail: shenqi@shenqisoft.com
我開的<人工智能>的網站:
http://www.shenqisoft.com/ai/
===================================================================================
~~~~~~~我思故我在~~~~~~~我思故我在~~~~~~~我思故我在~~~~~~~我思故我在~~~~~~~我思
故我在~~~~~~~我思故我在~~~~~~~我思故我在~~~~~~~我思故我在~~~~~~~我思故我在~~~~~
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -