摘 要:科技的不斷發展進步使得數字識別在越來越多的技術領域得以采用:大到辦公自動化、車牌識別、文獻檢索,小到表格錄入、郵政編碼、銀行或超市票據、個人名片信息等,都與數字識別技術密不可分。 作為最熱門的智能算法,機器學習極大地促進了數字識別技術的發展。 本文介紹了機器學習中的一種支持向量機算法,將其應用到數字識別技術中并利用該算法成功地進行了樣本訓練和測試,取得了較好的效果。
關鍵詞:支持向量機;數字識別;機器學習;
一、數字識別技術
字符信息處理一般來說分為兩大類:文字信息處理和數字信息處理,前者主要是處理各種文本信息,目前這方面的技術已經比較成熟并推出了不少產品, 例如具有文字識別功能的知網閱讀器等各種軟件; 后者主要是阿拉伯數字等。距離商業應用還有很大的差距。
(一)數字識別技術常用方法
數字識別技術在學科上屬于模式識別和人工智能的范疇,人們主要是通過獲取數字的關鍵特征來進行識別。提取數字特征的手段主要分為兩大類:全局分析和結構分析,二者的主要區別在于所采用的數字特征不同。
(二)數字識別技術研究現狀
2004年,王永乾等利用BP神經網絡技術進行手寫字體識別,首先對數字字符進行分割、細化等預處理來生成數字樣本,隨后再利用大量的樣本進行樣本訓練,最后利用訓練好的模型進行識別,取得95%的正確率 [2]。2005年,周開利等人采用MATLAB提供的神經網絡工具箱,詳細闡述了各種模型的結構、原理、有關算法,以實例說明了各種神經網絡模型的MATLAB仿真程序設計方法[3]。
二、支持向量機
支持向量機方法是建立在統計學習理論的VC維理論和結構風險最小原理基礎上的,根據有限的樣本信息在模型的復雜性和學習能力之間尋求最佳折中,以求獲得最好的推廣能力。
假設有非線性映射 將輸入空間的樣本映射到高維的特征空間H中。無需知道變換Φ的具體形式。這些特殊的函數 稱為核函數。此時,目標函數可以寫為
判別函數為
支持向量機實現步驟分為訓練和分類兩部進行,具體步驟如下:
(1)支持向量機訓練
1.輸入兩類訓練樣品向量
2.指定核函數類型
3.利用二次規劃的方法求解目標函數式(1)的最優解(拉格朗日乘子)
4.利用樣本庫中的一個支持向量代入式(2),左值為其類別值,得到偏差值
(2)支持向量機分類
1.輸入待測樣品
2.利用訓練好的模型(拉格朗日乘子,偏差值以及核函數)求解判別函數的值
3.根據判別函數的值,輸出類別
三、支持向量機數字識別實例
由于支持向量機是針適用于小樣本訓練,同時為了簡單敘述,本實例只針對數字1和9進行識別。本實例采用該算法對402張原始圖像(其中1的圖像198張,9的圖像204張)數據進行訓練。模型訓練結束之后,利用另外隨機的186張數字圖像(其中1的圖像97張,9的圖像89張)作為測試樣本測試模型的準確性。將圖像1的判別函數值定義為1,圖像9的判別函數值定義為-1。
首先進行樣本訓練,采用支持向量機對402張原始圖像數據進行訓練得到訓練模型,最優解拉格朗日乘子向量,然后利用另外隨機的186張數字圖像作為測試樣本對訓練模型進行測試,訓練樣本如圖2所示:
測試結果圖像1 和圖像9分別出現一個錯誤數字,即總共出現2個錯誤,模型正確率高達98.9%,很好地實現了數字識別的目的。
四、結論
基于數字識別的發展需求,本文介紹了機器學習中的一種支持向量機算法,通過利用輸入空間的核函數取代高維特征空間的內積運算,解決了算法可能導致的“維數災難”問題;并利用該算法成功地進行數字識別的樣本訓練和樣本測試,取得了正確率98.4%的良好效果。
參考文獻:
[1]鄔建瓴 .數字識別及其應用 [D]. 華中科技大學, 2006. DOI:10.7666/d.d047270.
[2]王永乾 .基于BP網絡的手寫體數字識別方法 [J]. 山東電子,2004,3:24-26.
[3]周開利 .神經網絡模型及其MATLAB仿真程序設計 [M]. 北京:清華大學出版社,2005.
作者簡介:
劉曉紅,女,山東煙臺人,山東女子學院信息技術學院本科在讀。endprint