房楚堯++夏金杰++趙家培
摘要: 本文的重點是使用上限分析法解決在機器學習系統(tǒng)開發(fā)中無法判斷哪部分最值得優(yōu)化的問題,以便于做出最佳的優(yōu)化決策。以一個簡單的圖像文字識別系統(tǒng)為實例,對其的文字偵測、字符分割、字符識別三個部分使用上限分析法進行模擬,得出各個部分的潛在上升空間,然后比較對3個部分分別進行優(yōu)化對最終預測結果的影響,從而了解該系統(tǒng)中已經達到“最高水平”的部分,做出最佳的優(yōu)化決策,避免開發(fā)中資源的浪費。
關鍵詞: 機器學習; 上限分析; 圖像文字識別; 決策優(yōu)化
中圖分類號:TP181
文獻標志碼:A
文章編號:2095-2163(2017)04-0037-02
0引言
在一個基于機器學習的預測類應用中,通常需要經歷幾個步驟才能得到最終的預測結果,一般來說很難憑直覺去決定優(yōu)化一個機器學習流水線的某個特定部分,在這時就可以使用上限分析法(Ceiling Analysis)[1]來對一機器學習系統(tǒng)進行模擬以找出最佳優(yōu)化的決策。上限分析法是一種評估機器學習流水線中各個部分對整個機器學習系統(tǒng)結果的優(yōu)化影響大小的方法,根據分析所得的結果就可以知道在整個機器學習系統(tǒng)中對哪個部分進行優(yōu)化對最后所得的結果最為有益。這一分析方法與“天花板效應”[2]的概念相關,即在一個系統(tǒng)中的一個獨立變量在達到一定水平后就不再對因變量產生影響。在機器學習系統(tǒng)的優(yōu)化中,這種效應可以看作是因為機器學習系統(tǒng)已經達到“最高水平”而不再可能通過提高某個組成部分的性能(自變量)來改善預測結果(因變量)。
1上限分析法模型
開發(fā)一個機器學習系統(tǒng)時,可能會花費很多資源來嘗試提高某個組成部分的性能,但是卻不會在整個系統(tǒng)中得到很好的效果,這就是要使用上限分析法的一個原因。上限分析可以減少在開發(fā)中資源的花費,明確了解要著重處理的部分,以便在預測結果的準確度上獲得更為顯著的改進;在提出優(yōu)化方法前,就可以確定每個處理部分可能對結果提供的潛在上行空間,進行其理想性能中的每一部分的仿真分析。因此,當模擬每個部分時,就已經使用類似預測精度的度量來確定整個系統(tǒng)的性能的上行空間。圖1即給出了一個由3個部分組成的機器學習流水線和仿真流程的示例,該過程的主要思想是分別模擬每個部分的精度為100%,從而得出每個部分對提高整個系統(tǒng)的性能的能力。模擬是以連續(xù)的方式設計展開的,就是開始從左到右添加模擬部分,直至最終宣告完成。
2上限分析法在圖像文字識別中的應用
[JP3]本文將使用上限分析法對圖像文字識別應用問題進行優(yōu)化,圖像文字識別的常規(guī)處理過程如圖2所示。這個機器學習系統(tǒng)由3個部分組成:文字偵測(Text detection)、字符切分(Character segmentation)和字符分類(Character classification)[3]。[JP]第一個部分是提取更容易找到文字的較小圖像,因為當圖像中大部分是文字時,更容易識別文字。第二部分是將提取出的文字進行分割,為了更好地識別文字。最后一部分是字符分類,用于識別各個文字。當前一個部分結束運行后會將結果輸入到下一個部分,還有一個連接到分類器的訓練部分,則是使用有監(jiān)督學習生成的分類器模型。[JP]
在圖像文字識別這一機器學習系統(tǒng)中,首先要進行文字偵測,旨在選擇出可能找到文字的較小圖像。為了實現(xiàn)這一部分的功能,將訓練一個模型能夠區(qū)分字符與非字符,然后運用滑動窗口技術識別字符[4],繼而再將識別得出的區(qū)域設計生成一定的擴展,而后將重疊的區(qū)域執(zhí)行合并,最后以寬高比作為過濾條件,過濾掉高度比寬度更大的區(qū)域(因為一般單詞的長度大于高度)。第二部分訓練一個多變量邏輯回歸的二分類模型來研究支持將文字分割成一個個字符的處理過程,訓練集是單個字符的圖片和2個相連字符之間的圖片[5]。在達到字符分割目的后,則把分割的字符轉化為18*18像素的圖片送入字符分類部分進行識別。最后一個部分是字符分類階段,將訓練一個BP神經網絡 [6]來識別文字。
在每一部分均將分別手工提供百分之百正確的數(shù)據給下一部分使用,實際上不需要模擬最后一個部分,因為最后的上限為100%。在上限分析中,還需要創(chuàng)建一個表格,即如表1所示。其中指定了當前處理部分在每個階段的上升空間。第一行顯示了沒有加入任何模擬的系統(tǒng)精度,計算出整個系統(tǒng)上升空間的起點,上升空間是用當前部分加入模擬后的精度減去前一個部分加入模擬后的精度。最后,整個模擬過程將顯示哪個部分會提供最大的上升空間,更值得投入精力和時間去實施優(yōu)化,所以上限分析將可看作是以一種可靠的方式來決定哪個部分應該進行更多的優(yōu)化,哪個部分已經不需要優(yōu)化,因為這一過程顯示了改進該要素是否會提高整個系統(tǒng)的精度以及最終將具體提高了多少。
用于此次分析的圖片是來自imagenet上的1 000張彩色照片,圖片中包括了各種大小不一的字體,天氣狀態(tài)也有所不同。1 000張照片被分為3個部分,即訓練集、交叉驗證集和測試集,[JP2]分別占總數(shù)量的60%、20%、20%[7]。[JP2]訓練設定了文字[JP]
[LL]偵測、字符切分、字符識別三個模型后輸入驗證集,得出未加入模擬時整個機器學習系統(tǒng)的結果,然后對3個部分分別進行模擬,得出表2。為了更好地衡量系統(tǒng)的精度,在這里引入F1-socre(可看作是模型準確率和召回率的一種加權平均)。理論上,上限分析時不需要對字符識別部分進行模擬,因為當手工提供100%正確率的字符識別部分預測結果時,準確率就是100%。
根據上限分析表中所得出的結果,可以看出這個圖像文字識別系統(tǒng)中,優(yōu)化文字偵測和字符識別部分對整個系統(tǒng)預測結果的提高有很大幫助,上升空間分別達到了14.2%和10%,而字符切分的部分的水平已經接近到上限,上升空間僅有1.5%,如果花費大量時間來對字符切分進行優(yōu)化,對整個系統(tǒng)的預測精度也不會有很大的提升。
3結束語
本文提出了一種使用上限分析法開發(fā)和分析圖像文字識別的方法,探索了優(yōu)化過程中在研究上應該著重推進的部分,結果說明在開發(fā)這個圖像文字識別應用時文字偵測部分和字符識別部分的潛在上升空間更大,這意味更應該投入精力去優(yōu)化這2部分,對字符切分部分進行優(yōu)化幾乎不能提高整個系統(tǒng)的預測精度。
參考文獻:
[1] WANG Lijuan, ZHANG Zhiyong, MCARDLE J J, et al. Investigating[JP] ceiling effects in longitudinal data analysis[J]. Multivariate Behavioral Research,2008,43(3):476-496.
[2] 盧璟,磨玉峰. “玻璃天花板”效應研究綜述[J]. 商業(yè)時代,2008(34):58-59.
[3] 蔣東玉,田英鑫. 印刷體英文OCR系統(tǒng)的研究與實現(xiàn)[J]. 智能計算機與應用,2014,4(4):111-112,117.
[4] 柴子峰. 基于滑動窗口的弱標記物體檢測方法研究[D]. 哈爾濱:哈爾濱工業(yè)大學,2016.
[5] LI Lianhuan. Research on character segmentation method in image text recognition[J]. Advanced Materials Research,2012,1909(546):1345-1350.
[6] LI Wenjie, ZHANG Jie, TIAN Kelun,et al. The design of the BP neural network character recognition in Matlab environment[J]. Advanced Materials Research,2014,3382(1006):1117-1120.
[7] 范永東. 模型選擇中的交叉驗證方法綜述[D]. 太原:山西大學,2013.[ZK)][FL)]endprint