請問文字辨識使用NN的前處理觀念? |
尚未結案
|
ddaken
一般會員 發表:39 回覆:33 積分:19 註冊:2005-01-21 發送簡訊給我 |
請問各位
如果我想做數字0~9的辨識(所以有10張圖)分別是0.bmp 1.bmp ....9.bmp
使用倒傳遞演算法來做 首先我拿了5組0~9的圖來做訓練(所以共有50張圖)
那麼~我該怎麼訓練呢? 是不是把這50張圖拿來將是0的全部放在一起
1的放在一起.......9的放在一起
-->所以輸入神經該有10個(而一個的資料維度是5)
然後輸出神經只有1個 其值該怎麼取?(假設以已經正規化過)
是不是可以假設輸入是0~就設特徵值是0
輸入是1~就設特徵值是1
-------------------------------------------
相同~輸出想要是0~所以如果輸入是0而輸出不是0就得訓練?
|
bio
一般會員 發表:42 回覆:36 積分:20 註冊:2003-03-05 發送簡訊給我 |
你可以先有一個這樣的概念
(字元資料庫)→輸入字元→字元二值化→字元雜訊過濾→字元特徵抽取→網路訓練→MSRE(Mean square root error)<終止條件 if yes→訓練完畢 else goto 輸入字元再重新跑一遍流程。
我想你的問提應該是在怎麼做字元特徵抽取吧,至於怎麼取字元特徵值,相信你查一下全國碩博士論文做辨識方面的會找到很多方法,但重要的是無論如何抽取,做後要輸入網路訓練的特徵值需為-1~1之間的值。
----------------------------------------------------------
是不是把這50張圖拿來將是0的全部放在一起
1的放在一起.......9的放在一起
My suggestion:
應該不是直接將圖直接輸入網路喔,而是要做一些上述處理,做字元特徵抽取喔
----------------------------------------------------------
是不是把這50張圖拿來將是0的全部放在一起
1的放在一起.......9的放在一起
-->所以輸入神經該有10個(而一個的資料維度是5)
然後輸出神經只有1個
-----
My suggestion:
這方面是 若你要輸入的有10個樣本,當然輸入的也會有10個input,輸出也是0~9 10個output,而中間的隱藏曾有兩種方法
1.隱藏層個數=(input output)/2 →(10 10)/2=10
2.隱藏層個數=(input*output)開耕號 →10
---------------------------------------------------------
其值該怎麼取?(假設以已經正規化過)
是不是可以假設輸入是0~就設特徵值是0
輸入是1~就設特徵值是1 My suggestion:(假設你對到傳遞網路已了解情況下)
假設網路正在訓練0,那網路的目標輸出則為1 0 0 0 0 0 0 0 0 0 0
假設網路正在訓練1,那網路的目標輸出則為0 1 0 0 0 0 0 0 0 0 0
假設網路正在訓練2,那網路的目標輸出則為0 0 1 0 0 0 0 0 0 0 0
...
假設網路正在訓練9,那網路的目標輸出則為0 0 0 0 0 0 0 0 0 0 1
---------------------------------------------------------------
相同~輸出想要是0~所以如果輸入是0而輸出不是0就得訓練?
My suggestion:
原則上是,但應該是說當時在訓練0時,若MSRE 小於 誤差值則表示0這個樣本已達到訓練程度了,若不是的話,則網路需要一直訓練,直到所有的patterns的MSRE 都<誤差值。當然阿,要讓網路訓練完成,有人也有用適用訓練次數來達到
網路終止條件拉。
|
ddaken
一般會員 發表:39 回覆:33 積分:19 註冊:2005-01-21 發送簡訊給我 |
首先~先謝謝bio大大的回答摟~~
看完了有了初步的了解~
不過還是有一問題想問一下>
1>最後要輸入網路訓練的特徵值需為-1~1之間的值
-------------------------------------------
假設目前有10張圖分別代表數字0~9!
而其特徵值也都取好了
如果依特徵值的rule~我從每張圖取出5個特徵
也就是假設0有
|
bio
一般會員 發表:42 回覆:36 積分:20 註冊:2003-03-05 發送簡訊給我 |
不過還是有一問題想問一下>
1>最後要輸入網路訓練的特徵值需為-1~1之間的值
-----------------------------------------------
這是書上寫的,我當初做實驗時也遵照這rule做的 所以~我現在的輸入神經元是不是只要5個就好了?
然後分別把這10組資料帶入訓練?
--------------------------------------------------
是的每一次你的輸入端就是輸入5個你抽取出來正規化後的特徵值
去做訓練,訓練的方法是比如從0 pattern set開始訓練整個0 set訓練完後,亦即MSRE<終止條件,則0 set 才算訓練完,1 set 也如此,...,但若是訓練到5 set時,若某個字元5不條件,則須連之前已經訓練過的0.1.2.3.4的字元集都要再訓練檢查,直到所有的字元集都都符合MSRE<終止條件,那整個網路訓練才算完成。
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |