【人工智能实验】运用贝叶斯决策理论实现手写数字识别
目錄
?
實(shí)驗(yàn)二 運(yùn)用貝葉斯決策理論實(shí)現(xiàn)手寫數(shù)字識(shí)別
一、實(shí)驗(yàn)?zāi)康?/p>
二、實(shí)驗(yàn)原理
1、分類器原理
2、實(shí)現(xiàn)手寫數(shù)字識(shí)別算法原理
三、實(shí)驗(yàn)結(jié)果
四、實(shí)驗(yàn)總結(jié)
1、實(shí)驗(yàn)流程
2、分析不同模板對(duì)于實(shí)驗(yàn)結(jié)果的影響。
3、分析同一模板下不同閾值對(duì)于實(shí)驗(yàn)結(jié)果的影響。
4、分析同一模板下相同閾值下各數(shù)字識(shí)別的準(zhǔn)確性情況。
5、分析程序中的P矩陣。
6、實(shí)驗(yàn)心得體會(huì)
參考代碼數(shù)據(jù)集
推薦文章
實(shí)驗(yàn)二 運(yùn)用貝葉斯決策理論實(shí)現(xiàn)手寫數(shù)字識(shí)別
一、實(shí)驗(yàn)?zāi)康?/h2>
熟悉和掌握貝葉斯決策理論,并利用貝葉斯決策理論的相關(guān)知識(shí)實(shí)現(xiàn)手寫數(shù)字的識(shí)別算法,并分析主要參數(shù)變化對(duì)于識(shí)別結(jié)果的影響。
二、實(shí)驗(yàn)原理
1、分類器原理
貝葉斯分類是一類分類算法的總稱,這類算法以貝葉斯定理為基礎(chǔ),故統(tǒng)稱為貝葉斯分類算法,它是一類利用概率統(tǒng)計(jì)知識(shí)進(jìn)行分類的算法。貝葉斯分類器是一種最優(yōu)分類器,利用此分類方法得到的結(jié)果產(chǎn)生的誤差總是最低。此方法的基礎(chǔ)是貝葉斯公式,可以計(jì)算出該樣品分屬各類別的概率,也稱為后驗(yàn)概率。
其主要思想為:對(duì)于給出的待分類項(xiàng),求解在此項(xiàng)出現(xiàn)的條件下各個(gè)類別出現(xiàn)的概率,所得到的最大值對(duì)應(yīng)的類,就認(rèn)為此待分類項(xiàng)屬于這個(gè)類別。
2、實(shí)現(xiàn)手寫數(shù)字識(shí)別算法原理
?? 對(duì)于給定的樣本集,訓(xùn)練庫(kù)60000張手寫數(shù)字圖像,測(cè)試庫(kù)有10000張基于上述分類器,基于貝葉斯決策理論設(shè)計(jì)手寫數(shù)字識(shí)別分類器。
?
????????
圖2.2.1 手寫數(shù)字“0”部分樣例 ????????圖2.2.1 手寫數(shù)字“8”部分樣例
三、實(shí)驗(yàn)結(jié)果
對(duì)于選取不同的閾值,以及綜合考慮圖像模板和算法實(shí)際效率的基礎(chǔ)上,選用4*4模板,采取閾值(此處閾值指的是模板內(nèi)像素值為非0元素的總個(gè)數(shù))為4其最終平均正確率為75.6%。采用不同閾值下,各類樣本的正確率見(jiàn)下表3-3.
?
表3.1 4*4模板下不同閾值識(shí)別手寫數(shù)字的結(jié)果比較
| ?? 閾值 類別 | 3 | 4 | 5 |
| 0 | 86.9% | 86.2% | 84.0% |
| 1 | 94.9% | 94.6% | 94.4% |
| 2 | 75.0% | 71.8% | 68.2% |
| 3 | 74.0% | 76.9% | 76.6% |
| 4 | 71.0% | 73.0% | 72.3% |
| 5 | 53.0% | 55.7% | 55.0% |
| 6 | 83.1% | 81.4% | 79.1% |
| 7 | 78.3% | 79.0% | 80.4% |
| 8 | 62.1% | 62.4% | 60.8% |
| 9 | 74.4% | 75.6% | 73.0% |
| 平均 | 74.4% | 75.6% | 73.0% |
四、實(shí)驗(yàn)總結(jié)
1、實(shí)驗(yàn)流程
首先將下載得到的minst.mat文件數(shù)據(jù)進(jìn)行二值化處理,非0元素設(shè)置為1,其余像素點(diǎn)為0.根據(jù)流程圖4.1所示,手寫數(shù)字識(shí)別算法實(shí)現(xiàn)步驟如下:
- 根據(jù)訓(xùn)練樣本,由各類樣本的樣本數(shù)和樣本總數(shù)近似計(jì)算先驗(yàn)概率:
??i=0,1,2,…,9,其中Ni為數(shù)字i的樣品數(shù),N為樣品總數(shù)。
- 根據(jù)訓(xùn)練樣本,計(jì)算Pj(Wi),再計(jì)算類條件概率P(X|Wi):
?? j=0,1,2,…,49,即在X屬于Wi類的條件下,X的第j個(gè)分量為1的概率估計(jì)值。
- 對(duì)于測(cè)試樣本集中的每一個(gè)樣本X,求出條件概率為:
- 利用貝葉斯公式求后驗(yàn)概率:
- 后驗(yàn)概率的最大值的類別(0~9)就是測(cè)試數(shù)據(jù)手寫X的類別。
圖4.1 手寫數(shù)字識(shí)別流程圖
2、分析不同模板對(duì)于實(shí)驗(yàn)結(jié)果的影響。
?? 下載的單個(gè)樣本圖片初始大小為28*28,我們可以采用大小分別為2*2、4*4、7*7的模板進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)發(fā)現(xiàn)當(dāng)選取2*2模板識(shí)別效果雖然好,正確率可以達(dá)到82%,但是運(yùn)行時(shí)間過(guò)長(zhǎng),選取4*4模板,合適閾值下正確率最高為75.6%,當(dāng)選取7*7模板時(shí),正確率低于50%,所以不考慮。
3、分析同一模板下不同閾值對(duì)于實(shí)驗(yàn)結(jié)果的影響。
?? 在選用4*4模板的前提下,通過(guò)選取不同的閾值,如圖4.3.1所示,數(shù)字“0”降維后的圖片顯示,當(dāng) Threshold分別3,4,5,6,如下圖4.3.1所示,我們通過(guò)對(duì)比發(fā)現(xiàn)當(dāng)選取閾值為4時(shí),正確率取得最大值75.6%。
圖4.3.1(1) 閾值為4????????????? 圖4.3.1(2) 閾值為5?
圖4.3.1數(shù)字“0”降維后的效果
圖4.3.2 不同閾值對(duì)于實(shí)驗(yàn)結(jié)果的影響
?
4、分析同一模板下相同閾值下各數(shù)字識(shí)別的準(zhǔn)確性情況。
?? 在選取4*4模板,閾值為4的前提下,如下圖4.4所示,我們可以發(fā)現(xiàn)不同數(shù)字的識(shí)別正確率是不同的。數(shù)字“1”被識(shí)別的正確率最高,為94.6%,數(shù)字“5”被識(shí)別的正確率最低,僅為55.7%。
圖4.4 不同數(shù)字被識(shí)別的正確率情況
5、分析程序中的P矩陣。
P矩陣是根據(jù)訓(xùn)練集的特征向量進(jìn)行求取得到的,在4*4的模板下,樣本單個(gè)圖片被降維為7*7,最后得到的P矩陣大小為10*49.P矩陣中記錄了該樣本在7*7個(gè)像素點(diǎn)的位置所對(duì)應(yīng)的為1的概率。例如P(i,j)表示的就是對(duì)于i類樣本,在第j個(gè)像素點(diǎn)為1的概率。P矩陣大致元素如下表4.5所示:
表4.5 P矩陣部分展示
| i?????????????? j | 1 | 10 | 20 | 30 | 40 |
| 0 | 1.69E-04 | 8.29E-01 | 2.23E-02 | 7.41E-01 | 9.55E-02 |
| 1 | 1.48E-04 | 5.09E-01 | 1.48E-04 | 2.75E-01 | 4.45E-03 |
| 2 | 1.68E-04 | 9.02E-01 | 1.68E-04 | 8.77E-01 | 3.44E-01 |
| 3 | 1.63E-04 | 9.54E-01 | 1.63E-04 | 1.81E-01 | 1.14E-01 |
| 4 | 1.71E-04 | 2.11E-01 | 3.76E-03 | 6.28E-01 | 7.15E-02 |
| 5 | 1.84E-04 | 6.43E-01 | 5.77E-02 | 2.97E-01 | 1.08E-01 |
| 6 | 1.69E-04 | 7.18E-01 | 1.35E-03 | 9.74E-01 | 3.58E-02 |
| 7 | 1.60E-04 | 3.74E-01 | 2.23E-03 | 1.01E-01 | 1.10E-02 |
| 8 | 1.71E-04 | 8.75E-01 | 3.04E-02 | 7.95E-01 | 8.10E-02 |
| 9 | 1.68E-04 | 6.51E-01 | 1.18E-03 | 4.18E-01 | 6.02E-02 |
通過(guò)P矩陣我們可以看出,在不同的列,也就是不同的像素位置,同一類樣本為1的概率值是不同的,縱向?qū)Ρ?#xff0c;對(duì)于同一個(gè)位置的像素點(diǎn),不同類樣本的概率也是不同的,這就說(shuō)明不同樣本對(duì)應(yīng)的特征向量的取值是不同的,這也正是我們實(shí)現(xiàn)本次程序的關(guān)鍵所在。
6、實(shí)驗(yàn)心得體會(huì)
????本次實(shí)驗(yàn)花費(fèi)了很長(zhǎng)時(shí)間,對(duì)于實(shí)驗(yàn)代碼的編程,因?yàn)殛P(guān)于貝葉斯的理論知識(shí)感覺(jué)已經(jīng)基本掌握,當(dāng)時(shí)在和同學(xué)商量之后,決定不看老師提供的代碼,獨(dú)立編程。但是,在編程的過(guò)程中出現(xiàn)了各種各樣的問(wèn)題,首先就是數(shù)據(jù)集的大小沒(méi)有理解清楚,盲目處理,最后努力編寫出的代碼運(yùn)行結(jié)果正確率很低。后來(lái)請(qǐng)教他人后,才知道下載的數(shù)據(jù)集是按照一行一個(gè)樣本存儲(chǔ)的。另外,在編寫降維以及計(jì)算概率的時(shí)候,對(duì)于一些python的矩陣運(yùn)算函數(shù)自己之前根本沒(méi)有了解過(guò),嵌套了一些for循環(huán)語(yǔ)句,導(dǎo)致自己的程序運(yùn)行效率很低。這也說(shuō)明了自己在這方面有待提高。同時(shí),在老師的指導(dǎo)下,明白了如何分析各個(gè)參數(shù)對(duì)于實(shí)驗(yàn)結(jié)果的影響,并注意書寫的規(guī)范性。最后,順利完成了本次實(shí)驗(yàn),雖然花費(fèi)了很長(zhǎng)時(shí)間,但是付出總有回報(bào),自己在獲得知識(shí)的同時(shí),更加磨練了自己面對(duì)難題時(shí)的意志。
參考代碼數(shù)據(jù)集
下載鏈接:https://download.csdn.net/download/weixin_43442778/16016855
推薦文章
- 700套個(gè)人簡(jiǎn)歷模板(考研保研工作):https://blog.csdn.net/weixin_43442778/article/details/114280230
- 人工智能2019年秋季學(xué)期期末復(fù)習(xí)知識(shí)點(diǎn)整理:https://blog.csdn.net/weixin_43442778?spm=1003.2018.3001.5343
- Fisher線性分類器的設(shè)計(jì)與實(shí)現(xiàn),感知器算法的設(shè)計(jì)實(shí)現(xiàn):https://download.csdn.net/download/weixin_43442778/16017212
歡迎大家關(guān)注【小果果學(xué)長(zhǎng)】微信公眾號(hào),獲取更多資料和源碼,期待你的點(diǎn)贊和支持!
總結(jié)
以上是生活随笔為你收集整理的【人工智能实验】运用贝叶斯决策理论实现手写数字识别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。