我們日常多多少少都有體驗過辨識相關應用,譬如 google 相簿中圖片的智慧鏡頭,當你使用智慧鏡頭功能時,它可以分析出圖片裡面的文字,這就是一種辨識。而在各種書裡會看到與辨識有關的應用,舉凡車牌辨識、文字辨識,都是辨識的一種實作。
手寫數字辨識系統就是輸入手寫數字圖片,透過數字辨識模型,讓電腦或機器分辨出正確的數字。使用手寫數字做的辨識系統因為有資料集小、問題單純-只要辨識出數字 0~9 等特性,所以在剛進入機器學習的領域時,它是一個很好的學習範例,也因此手寫數字辨識系統算公認學習機器學習的Hello world。
手寫數字辨識系統的處理流程主要可以拆解成三步驟,分別是:
輸入圖的部分(input):輸入一張有手寫數字的圖。可以是別人寫好或現成的手寫數字圖片或資料集,也可以自製手寫輸入介面寫數字並存成檔案,或是可以開啟鏡頭將寫好的數字放到鏡頭前,讓電腦擷取照片等。可以做資料前處理,如將相片灰階或統一調整成 28*28 的大小之類的。這張手寫數字圖我們會把它轉成 0~1 的形式,輸入到數字辨識部分去預測數字結果
圖片來源:https://zjrongxiang.github.io/2018/04/05/2018-04-01-数据科学实践中常用开放数据集介绍/
數字辨識的部分:找一個能辨識出數字或說特徵的方法,如機器學習相關方法。主要看你的目的是什麼,然後選用對此問題來說最合適的方法。這邊又分成兩個部分:
輸出數字結果的部分(output):你的結果(手寫數字0~9)要呈現在哪,需要自己寫介面將答案呈現出來嗎?或是將辨識出的結果存成一個 csv 檔與別人交流?亦或是直接呈現在 console 中即完成?
明天我們先來看看有沒有別人做過的程式,並會將方法做相關的分類整理介紹~