楊怡濱 林科浩



摘要:本文提出了一種基于自動機器學習(Automatic Machine Learning)框架AUTO-SKLEARN的圖像識別算法。通過邏輯回歸、K-近鄰、SVM、多層感知神經網絡、AUTO-SKLEARN構建了5個圖像識別模型,進而以準確率、精確率、召回率,混淆矩陣、F1值為基準進行不同模型的性能評價。經反復的實例論證和理論測算,該框架相較于傳統機器學習,平均精確率達到了0.98以上,能夠在節省參數調節時間的基礎之上,獲得更優秀的效果。
關鍵詞:圖像識別? AutoML? AUTO-SKLEARN? 自動機器學習
中圖分類號:TP3? ? ? ? ?文獻標識碼:A
Abstract:This paper proposes an image recognition algorithm based on AUTO-SKLEARN, an automatic machine learning framework. Five image recognition models were constructed by logistic regression, K-nearest neighbor, SVM, multi-layer perceptual neural network and AUTO-SKLEARN, and the performance of different models was calculated based on accuracy, accuracy, recall rate, confusion matrix and F1 value. Evaluation. Through repeated case studies and theoretical calculations, the framework has an average accuracy of 0.99 or more compared to traditional machine learning, and can achieve better results on the basis of saving parameter adjustment time.
1.引言
圖像識別技術主要利用計算機的功能來對圖像信息進行處理、分析、理解,基于計算機得出的結果即可判斷不同屬性的目標。在某種程度上,圖像識別技術即是模仿、強化人類本身對圖像信息識別的機能,能夠通過計算機功能代替人類去自動處理、分辨圖像物理信息,同時能夠對人類難以識別、觀察的信息進行處理,以此降低人工作業的負擔。在現代的技術水平之下,圖像識別技術又屬于人工智能化技術的范疇,其能夠針對每個圖像的特征進行分析,并對在進行圖像識別時產生的眼動進行表明。圖像識別技術的原理是根據技術的信息識別結果,在自身數據存儲庫中尋找相似性的數據原型,進而來對圖像進行識別。[1]
常用的圖像識別方法有六種,分別是統計模式識別法、模板匹配法、模型識別法、句法識別法、神經網絡識別法、模糊集識別法[2]。其中模型識別法使用的模型多數為機器學習相關的模型,例如SVM,樸素貝葉斯算法等。
2.基礎算法
2.1自動機器學習
機器學習是一個復雜的過程,包括數據預處理,特征工程[3],模型選擇,模型參數調優,模型評估,結果分析等。其中各個部分主要包含內容如下:
(1)數據預處理包括了數據合并,缺失值處理,異常值處理等[4]。
(2)特征工程包括特征選擇,特征構建,特征變換等。
(3)模型選擇包括根據數據選擇合適的模型,模型組合等。
(4)模型參數調優包括了超參數優化,模型優化等。
(5)模型評估包括了混淆矩陣,ROC曲線,AUC值,精確率(Precision),召回率(Recall)等[3]。
(6)結果分析包括了結果展現,結果可視化,結果應用等。
自動機器學習是將機器學習流程自動化的過程,貫穿了機器學習的整個過程。在典型的機器學習應用程序中,機器學習工程師需要根據實際應用場景,對每個步驟做出調整,工作量巨大[6]。為解決這一困境,自動機器學習應運而生。
自動機器學習借鑒了諸多機器學習的知識,例如貝葉斯優化(Bayesian optimization),元學習(Meta learning),遷移學習(Transfer learning)等。
2.2AUTO-SKLEARN
AUTO-SKLEARN是Frank Hutter團隊開發的工具包[7]。AUTO-SKLEARN采用貝葉斯優化方法對機器學習庫中的各種算法進行超參數優化,并以元學習的方式在貝葉斯優化前縮小優化空間,除此之外,還生成了機器學習集成模型,以這種集成學習的方式增強學習和識別性能。
2.2.1貝葉斯優化
美國學者Pelikan等在2002年提出了貝葉斯優化算法[8]。這種算法首先隨機產生了初始種群;然后從當前種群中選擇(可以采用進化算法的各種選擇方法)出候選解;繼而對選擇后的種群建立貝葉斯網絡;之后,新的候選解就從貝葉斯網絡的采樣中獲取;最后,將采樣得到的解重新加入到原來的種群中,甚至可以用新的解代替原來的所有的解;重復這個過程,直到滿足終止條件。終止條件可以是算法已經收斂找到了最優解,或者是種群失去了多樣性,又或者是算法無法收斂不太可能找到更優的解[9]。貝葉斯優化算法的算法流程如下:
在最優化采集函數的前提下,貝葉斯優化能夠在理論上保證最終收斂。直觀上,這是因為迭代過程中每次迭代都采樣最有“價值”的點進行評估,只要保證足量的迭代次數,算法最終一定會收斂到全局最優解[10]。
2.2.2元學習
在20世紀90年代,Wolpert等提出了的NFL定理:如果對具體學習任務的本質不作任何先驗假設,則沒有任何理由認定某種學習算法比另外一種更好;如果某種算法對某個特定的問題看上去比另外一種算法更好,則僅僅是它更適合這一特定的學習任務,而并非泛泛地說該算法是“優越”的[11]。同時,有學者意識到算法選擇可被視作學習任務。兩相結合,算法選擇在機器學習學科中逐漸發展,漸而形成了元學習分支。近年來,元學習逐漸成為了一種典型的通過大數據指導樣本數據的學習方法,成為了機器學習領域繼增強學習(Reinforcement Learning)之后又一個重要的領域[12]。
在常規的機器學習任務中,資深機器學習工程師了解各類算法的性能,能夠在諸多算法中選擇出有優勢的數據處理與識別算法。元學習通過不同算法的性能進行推理,以模仿這種策略。在初始階段,評估每個候選算法在各個數據集上性能,并提取這些數據的元特征,構成元數據;然后采用適當的元算法對元數據進行元學習,獲得數據集特征與算法性能間的映射關系,形成元知識庫[13]。算法的選擇需要依靠元知識的指導,當新的數據集加入時,可先對該數據集進行特征提取,然后根據與元知識庫的特征匹配程度,選擇最優的算法[14]。在AUTO-SKLEARN中采用該方法來縮小CASH(Combined Algorithm Selection and Hyperparameter optimization)問題的搜索范圍,這樣一來,就大大縮小了算法選擇與超參數優化的搜索范圍,顯著提高效率[7]。
3.實驗與結果分析
本次實驗使用的數據采用digits數據集。該數據集是一個大型數據庫的手寫數字是通常用于訓練各種圖像處理系統[15][16]。數據集含1797張8*8像素的手寫字體圖片。
在上述數據的基礎之上,在k折交叉驗證時以75%的數據作為訓練集,25%的數據作為測試集,使用AUTO-SKLEARN進行模型訓練,而后使用精確率(Precision),召回率(Recall),F1值(F1-Score)評估模型。同時,為了進一步驗證模型結果,使用了準確率,精確率,召回率用于對比人工調節參數的模型和AUTO-SKLEARN自動機器學習模型的對比。
3.1AUTO-SKLEARN識別失流故障
使用AUTO-SKLEARN構建失流故障模型得出該模型在0-9這10個手寫字體的精確率,召回率,F1值及其均值,如表 1所示。
由上述兩張表可知,基于AUTO-SKLEARN的圖像識別模型性能非常突出,整體的精確率,召回率,F1值均達到0.98,充分表明模型的有效性及適用性。但同時也需要注意由于圖像樣本基數相對小,過分追求準確率單一指標容易造成過擬合。
3.2對比分析
為驗證AUTO-SKLEARN構建的模型的效果,使用K-近鄰,邏輯回歸、支持向量機(SVM)、多層感知神經網絡4種算法與之進行對比,得到算法結果如表4所示。
4.結語
本文應用了AUTO-SKLEARN自動機器學習框架。使用digits數據集,選擇K-近鄰,邏輯回歸、支持向量機(SVM)、多層感知神經網絡和AUTO-SKLEARN構建的模型進行對比,最終證明相比于其他機器學習算法具有更好的診斷效果。該框架的不足之處在于其目前只能在Linux或Unix系統中進行部署,通用性有待加強,同時模型的訓練無法以模型效果作為依據。
參? 考? 文? 獻
[1]孫瑜陽 . 深度學習及其在圖像分類識別中的研究綜述 [J]. 信息技術與信息化 ,2018(1):138-140.
[2]于筱川. 基于機器學習的車輛目標識別方法[D].西安電子科技大學,2009.
[3]王玨, 周志華, 周傲英. 機器學習及其應用[M]. 清華大學出版社, 2006.
[4]Pang-Ning Tan, Michael Steinbach, Vipin Kumar. 數據挖掘導論[M]. 人民郵電出版社, 2011.
[5]Pudi V. Data Mining: Concepts and Techniques[M]. Oxford University Press, 2009.
[6]Thornton C, Hutter F, Hoos H H, et al. Auto-WEKA: combined selection and hyperparameter optimization of classification algorithms[J]. Computer Science, 2012:847-855.
[7]Feurer M, Klein A, Eggensperger K, et al. Efficient and robust automated machine learning[C].Advances in Neural Information Processing Systems. 2015: 2962-2970.
[8]Pelikan M.bayesian optimization algorithm: from single level to hierarchy[D].Dissertation from the Dept of Com-puter Science at the University of Illinois at Urbana-Cham-paign,2002.
[9]江敏, 陳一民. 貝葉斯優化算法的發展綜述[J]. 計算機工程與設計, 2010, 31(14):3254-3259.
[10]崔佳旭, 楊博. 貝葉斯優化方法和應用綜述[J]. 軟件學報.
[11]Wolpert D H, Macready W G. No free lunch theorems for search[J]. IEEE Trans on EvolutionaryComputation, 1997, 1(1): 67-82.
[12]涂同珩, 金煒東. 基于自動機器學習流程優化的雷達輻射源信號識別[J]. 計算機應用研究, 2019(1).
[13]Vilalta R, Giraud-Carrier C G, Brazdil P, et al. Using Meta-Learning to Support Data Mining[J]. IJCSA, 2004, 1(1): 31-45.
[14]曾子林, 張宏軍, 張睿, 等. 基于元學習思想的算法選擇問題綜述[J]. 控制與決策, 2014, 29(6): 961-968.
[15]Support vector machines speed pattern recognition - Vision Systems Design. Vision Systems Design. Retrieved 17 August 2013.
[16]Gangaputra, Sachin. Handwritten digit database. Retrieved 17 August 2013.