999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于BP神經網絡的手寫數字識別

2017-06-01 12:35:01賈書瑞山東省臨沂第一中學
科學中國人 2017年15期
關鍵詞:計算機

賈書瑞山東省臨沂第一中學

基于BP神經網絡的手寫數字識別

賈書瑞
山東省臨沂第一中學

隨著計算機硬件的不斷發展,以前需要大計算量的BP神經網絡算法所需時間已經變得可以接受。本文就BP神經網絡算法最富代表性的應用之一——手寫數字識別進行了一些探究。

手寫數字識別;bp算法;神經網絡

一、背景

1.字符識別概述

光學字符識別是一種模式識別技術。它能將通過光學采集設備采集的圖像上的字符等信息“摳”出來轉換為計算機能識別的編碼,從而方便計算機進行管理和維護等操作。這種方法一方面可以有效縮減存儲這些信息所需的空間,另一方面還能省下大量人力物力。

2.研究現狀概述

光學字符識別有一個分支研究方向——手寫數字識別。它的任務是在非鍵盤輸入的情況(比如圖像輸入)下,對手寫數字(從0到9)進行預處理,并存儲到計算機中。以往只有人眼才能分辨的手寫字符,現在可以由計算機高效地“代勞”。20世紀50年代,隨著計算機的問世和發展,真正意義上的字符識別技術才緩緩進入科學家們的視野。漸漸地,越來越多的研究人員開始涉足于此。在字符識別大發展時期(1990年后),研究者們對字符識別進行了探索和研究,并發展出了許多至今仍是科研熱點的識別工具(如BP神經網絡,支持向量機)。

二、BP神經網絡

1.簡介

BP(Back Propagation)神經網絡是一種在1986年由以Rumelhart和McCelland為首的科學家小組提出的按誤差逆傳播算法訓練的多層前饋網絡。同時它也是目前應用最廣泛的神經網絡模型之一。它的神奇之處在于可以通過反向傳播不斷地調整網絡的權值和閥值來降低網絡的誤差平方和,從而無需事前揭示映射關系的數學方程便可學習和存儲大量的輸入輸出模式映射關系。

2.BP神經網絡的基本結構

BP神經網絡的基本結構是神經元。一個神經元有三個屬性:輸入值I,輸出值O和自身的偏置值θ。一定數目的神經元組成了BP神經網絡的三層:輸入層、隱藏層和輸出層。層與層之間有大量的神經元連接,每個連接都被賦予了一個可改變的權值。

3.BP神經網絡工作的基本原理

BP神經網絡的運行分為兩個階段:向前傳播和反向傳播。(1)向前傳播

向前傳播,可以感性地理解為每一層神經元接受了上一層的訊號然后作非線性變換(常用Sigmoid函數)然后得到輸出。代碼實現如下:

inline double BP::f(const double&x){

return 1.0/(1+exp(-x)); } inline void BP::FeedForward(){//前向傳輸

int i,j;

for(j=1;j<=HN;++j){

neuron&p=HiddenNeurons[j];

for(i=1,p.I=0;i<=IN;++i)

p.I+=WeightIH[i][j]*InputNeurons[i].O;

p.O=f(p.I+=p.theta);

}

for(j=1;j<=ON;++j){

neuron&p=OutputNeurons[j];

for(i=1,p.I=0;i<=HN;++i)

p.I+=WeightHO[i][j]*HiddenNeurons[i].O;

p.O=f(p.I+=p.theta);

}

}

(2)反向傳播

這是BP神經網絡最精彩的部分。由于向前傳播的訊號到達了輸出層,現在輸出層同時擁有實際結果和計算結果(我們是在對網絡進行訓練)。我們的目的,就是使實際結果和計算結果盡量接近。而計算結果,其實就是一個多元函數,外加多層嵌套。問題轉化為求這個函數的最小值。我們知道,函數導數(偏導)值為0是在該處取極值的必要條件。于是經過數學推導,以下代碼可以調整變量(就是神經元之間的連接的權值和它本身的偏置值)從而使得我們的學習效果越好(離期望輸出越近)。

inline void BP::BackPropagation(const vector<double>&T){//T是期望輸出

int i,j,k;

for(i=1;i<=ON;++i)e[i]=T[i]-OutputNeurons[i].O;

for(k=1;k<=ON;++k)for(j=1;j<=HN;++j){

WeightHO[j][k]+=lambda*e[k]*HiddenNeurons[j].O;

}

for(k=1;k<=ON;++k)OutputNeurons[k].theta+=lambda*e [k];

for(j=1;j<=HN;++j){

double sum;

for(k=1,sum=0;k<=ON;++k)sum+=e[k]*WeightHO[j] [k];

for(i=1;i<=IN;++i){

WeightIH[i][j]+=

lambda*HiddenNeurons[j].O*(1-HiddenNeurons[j].O)*InputNeurons[i].O*sum;

}

HiddenNeurons[j].theta+=lambda*HiddenNeurons[j].O*(1-HiddenNeurons[j].O)*sum;

}

}

4.實驗過程及結果

(1)輸入數據處理

該程序的訓練集是42000個784維向量,每個向量就是一個28*28灰度點陣圖像的展開。我們將每個像素看做是該圖片的一個特征,則每張圖片就有784個特征。將其全部輸入該程序。另外還要進行歸一化處理,本問題中,因輸入是0到255的整數,所以輸入時要除以255。

(2)輸出數據處理

由于該程序輸出層有十個神經元(代表0到9),每個神經元的輸出是一個在(0,1)中的實數。進行投票,輸出實數最高的那個將其標號作為輸出。這里選用十個神經元,是為了增強網絡的容錯性和擴展性。

(3)參數對訓練集正確率的影響

本程序中,有兩個常量對學習效果有影響:隱藏層神經元數目B和學習率λ。以下是二者對識別訓練集準確度的影響:

100,0.2 72.28% B,λ正確率10,0.3 73.00% 50,0.3 69.52% 10,0.5 71.73% 28,0.2 78.20% 40,0.2 80.02%

總結

該程序經訓練集訓練后,在隱藏層神經元數目為40,lambda(學習率)為0.2時,識別訓練集的準確率可達80.02%,識別測試集的準確率可達78.35%。

BP神經網絡識別正確率主要取決于隱藏層神經元個數和學習率。和ANN(人工神經網絡)優化可達91%相比,BP神經網絡還需要在這兩個參數的優化上進一步嘗試。

[1]訓練集來自https://www.kaggle.com/c/digit-recognizer/download/train.csv

[2]測試集來自https://www.kaggle.com/c/digit-recognizer/download/test.csv

[3]獲取全部代碼http://blog.csdn.net/ZMOIYNLP/article/details/ 54743473

[4]BP神經網絡算法http://blog.csdn.net/hp910315/article/details/50550923

[5]光學字符識別http://baike.baidu.com/link?url=pmpKkr-FfjAibMfXFSrg4F9im4VC9m3JcyZXab0UTgvZIFzb1jI9CwSE-jGuK6TpYhbQRG0fGfiZ8bq-hBXJCra

[6]BP神經網絡http://blog.csdn.net/acdreamers/article/details/ 44657439

[7]BP神經網絡優化方程式的推導https://zhuanlan.zhihu.com/ p/22399223

[8]BP神經網絡原理詳解http://blog.sina.com.cn/s/blog_ 88f0497e0102v79c.html

本人自幼對計算機感興趣,高中時曾連續兩次獲得全國青少年信息學奧林匹克聯賽(NOIP)一等獎,學習成績始終位于年級前列。

猜你喜歡
計算機
計算機操作系統
穿裙子的“計算機”
趣味(數學)(2020年9期)2020-06-09 05:35:08
基于LabVIEW的計算機聯鎖仿真系統
基于計算機自然語言處理的機器翻譯技術應用與簡介
科技傳播(2019年22期)2020-01-14 03:06:34
計算機多媒體技術應用初探
科技傳播(2019年22期)2020-01-14 03:06:30
信息系統審計中計算機審計的應用
消費導刊(2017年20期)2018-01-03 06:26:40
計算機應用軟件開發技術的幾點探討
電子制作(2017年14期)2017-12-18 07:08:10
計算機網絡安全
iLOCK型計算機聯鎖開發中的需求開發管理
計算機聯鎖系統配置軟件設計與實現
主站蜘蛛池模板: 日本a级免费| 无码高潮喷水在线观看| 国产日韩欧美成人| 免费人成视频在线观看网站| 色综合综合网| 久久久久夜色精品波多野结衣| 亚洲精品无码不卡在线播放| 欧美日韩午夜| 国产欧美又粗又猛又爽老| 亚洲成人77777| 精品无码一区二区三区电影| 日本免费一区视频| 久久久久国色AV免费观看性色| 久久一级电影| 国内精自线i品一区202| 人妻91无码色偷偷色噜噜噜| 国产成人91精品| 天天做天天爱夜夜爽毛片毛片| 97人妻精品专区久久久久| 日本免费a视频| 欧美第一页在线| 夜夜操天天摸| 国产中文一区a级毛片视频| 日本午夜三级| 毛片免费高清免费| 香蕉网久久| 久久精品日日躁夜夜躁欧美| 青青草原偷拍视频| 欧美性久久久久| 丁香亚洲综合五月天婷婷| 免费看一级毛片波多结衣| 国内自拍久第一页| 国产美女91视频| 国产成人亚洲无吗淙合青草| 欧美中文字幕无线码视频| 三级视频中文字幕| 日韩毛片在线视频| 日韩乱码免费一区二区三区| 久久久波多野结衣av一区二区| 国产精品成人第一区| 日韩无码白| 日韩欧美国产另类| 日韩av手机在线| 国产一区二区丝袜高跟鞋| 久久美女精品国产精品亚洲| 毛片手机在线看| 欧美午夜视频在线| 国产亚洲成AⅤ人片在线观看| 欧美日韩动态图| 亚洲 欧美 偷自乱 图片 | 在线毛片免费| аv天堂最新中文在线| 日韩美毛片| 亚洲一区色| 日本伊人色综合网| 小说区 亚洲 自拍 另类| 欧洲亚洲一区| 91久久国产综合精品女同我| 中文字幕在线欧美| 在线观看热码亚洲av每日更新| 狠狠色狠狠综合久久| 亚洲精品国产成人7777| 九九香蕉视频| 亚洲精品动漫在线观看| 免费国产高清精品一区在线| 国产成人久视频免费| 不卡午夜视频| 一级毛片基地| 国产一级精品毛片基地| 国产综合无码一区二区色蜜蜜| 67194亚洲无码| 婷婷色婷婷| 日韩在线播放中文字幕| 国产福利一区二区在线观看| 日韩精品免费在线视频| 精品综合久久久久久97超人该| 亚洲人成影院午夜网站| 狠狠ⅴ日韩v欧美v天堂| 国产91熟女高潮一区二区| 亚洲国产一区在线观看| 国产成人免费手机在线观看视频| 亚洲人精品亚洲人成在线|