河南省鄭州中學 虞達飛
機器學習方法在圖像分類中的應用
河南省鄭州中學 虞達飛
近年來,隨著硬件技術的發展,尤其是GPU計算能力的提升,機器學習方法在圖像分類領域取得了一系列的進展,特別是卷積神經網絡對于提高圖像分類的效果有著顯著的作用。綜述圖像分類的基本概念,以及近機器學習,深度學習方法在圖像分類領域的進展和典型模型。
機器學習;圖像分類;SVM;深度學習
隨著社會的發展,尤其是智能手機的普及,人們獲取圖像的方式越來越方便、快捷。因此網絡上存儲的圖片數據越來越多,不僅僅給圖像數據的存儲帶來了很大的困難,并且圖像數據中存儲的信息也是十分豐富的,要獲取圖像中的信息也變得越來越重要。圖像中的信息對于我們來說也是非常重要的,這些信息不僅可以幫助我們獲得人們的想法,還為我們提供了很多人類的行為數據。
圖像分類是一個基礎性的工作,它的應用非常廣泛,不僅應用在圖像分類管理和信息提取方面,還應用于目標識別,人臉識別,圖像檢索等方面,并且在其他研究領域有重要的價值和意義。
在進行圖像分類之前,必須對它們進行高效的分類管理,并且,想要讓計算機像人類一樣靈活地對圖像數據進行分類,具有非常大的挑戰性,其中所要面臨的難題不僅是圖像數據的不規則性,還包括圖像的數量級,不同圖像數據的表示方法等等,因此,圖像分類問題向來都是一個具有挑戰性的研究熱點。
Swain和Ballard提出了基于色彩直方圖的方法,通過比較顏色直方圖的不同來分析兩幅圖像之間在顏色分布上的差異,但是由于對于其他的一些特點如形狀等不敏感,因此效果并不是十分的理想。上世紀八十年代Pawlak.Z等人提出的粗糙集理論,通過引入代數中的等價關系來解讀知識,通過對一些知識的處理,從而獲得了更好的分類效果。
另外基于機器學習方法的分類主要由貝葉斯方法和神經網絡方法等。
貝葉斯分類方法的主要過程是:首先計算每一個訓練集的類分布,把這種分布作為每一個類別的概率分布,然后再利用概率論中的貝葉斯定理和數理統計學去估算某個特質樣本屬于那一類的概率大小。貝葉斯方法又可具體分為貝葉斯信念網絡和樸素貝葉斯方法,但是根據目前狀況來看,該方法應用較多的是貝葉斯信念網絡,但是該方法訓練過程復雜,難以選出評估函數,這是現在研究要解決的主要問題。
近年來,深度學習模型在提取圖像高層特征表示方面取得重大突破,在20世紀60年代,在神經生物學家的研究中,人類大腦視覺系統對信息的處理是分級的。這種層次的特性學習模型已經被應用到許多領域,是機器學習領域的一個最新的研究熱點。深度學習的模型就像大腦視覺皮層對信息的分層處理許多個隱含層就與大腦的V1、V2區一樣,能夠形成像素到目標的高層特征表示,傳統的淺層學習結構不具備這種特征。但是,構造多成網絡結構又不能高效地完成訓練,直到2006年,Hinton等人提出采用非監督貪婪逐層訓練算法去解決深度結構的訓練問題,這才引起人們度深度學習的關注,隨后,深度學習模型又得到了改進和優化,如卷積深度置信網絡,去噪自動編碼器,去卷積網絡等。
分類是根據訓練數據集中的數據所表現出來的類特征,給每一類確定一種準確地描述方式,由此生成類描述或模型,并運用這種描述方式對新的數據集進行分類。圖像分類是指針對原始的圖片數據,對數據進行過濾、提取特征等操作,然后根據圖像特征進行分類。
圖像數據的預處理:首先我們需要針對相應的圖像做一部分預處理,這一步的主要目的是處理原始的圖片數據,使其符合我們的模型的需要,有一些對圖像的基礎操作也在這一步驟中進行。比如將圖片裁剪成特定的大小,將彩色圖轉換成灰度圖,將數據處理成統一的格式等。
數據增強:由于我們的數據存在著很大的差異,很多時候我們的訓練數據是非常不足的,但是像是神經網絡這種算法往往需要非常大量的訓練數據,如果訓練數據不足的話,很容易造成網絡的過擬合。這樣模型的泛化誤差就會非常的大,得不到良好的分類效果。因此我們需要對圖像進行一些隨機裁剪,隨機翻轉,旋轉隨機角度等操作,增加數據的復雜性,提高模型的泛化能力。
構建分類模型:首先需要一個類別屬性值已知的數據集作為訓練集,經過特征提取和離散化后,進行訓練樣本集的監督學習,去建立一個分類模型。最后我們的分類模型一般是以規則,決策樹或者數學公式的形式給出。
模型預測:首先運用“測試集”對分類模型進行評估,若模型預測的準確性足夠高,就可以用該模型對未知類別屬性值的圖像進行分類預測
SVM自從提出后,雖然有非常多的不同版本,但是在神經網絡大規模應用之前,一直是效果最好的圖像分類方法之一。
SVM是針對線性可分的問題提出的一種分類算法,首先模型需要保證支持向量與分類標準之間的最大間隔,即在保證所有的樣本都被分類正確的前提下,滿足兩類之間的分類間隔最大。對于圖像分類來說,我們將圖像的每一個像素點都當做是圖像的一個屬性,在SVM中我們將一幅圖像展開成一個向量作為模型的輸入,如果圖像是32*32個像素點的灰度值的話,那么我們的輸入向量的大小就是1024*1大小的矩陣。因此有時候有很多屬性是與我們的預測結果無關的,所以我們如果需要獲得良好的預測結果的話,我們有時候需要使用主成分分析法首先對圖像進行降維,去掉一些無關的屬性,加快訓練速度。然后網絡會根據一些支持向量去選擇分類標準。
另外對于一些線性不可分的數據,可以使用核函數來進行分類,本文不再詳細的描述。
3.2.1 卷積神經網絡介紹
傳統的機器學習方法對于圖像分類來說,雖然已經取得了非常好的效果。但是隨著時代的進步,我們發現,很多優秀的發明都參考了生物界的機理,比如飛機的外形很像鳥一樣。神經網絡也是這樣,參考了人類大腦的構成。從上世紀六十年代開始,以Hubel為代表的一些科學家通過對貓的大腦皮層研究發現,生物的視覺系統是通過一系列的神經元來逐層的傳遞信息,并進一步的對視覺信息進行處理,最終形成了我們所能夠感知到的信息。
我們現在所接觸到的神經網絡算法正是根據這樣一種機理,來一層一層的迭代,不斷地更新信息,最終形成我們所接受到的信息。
3.2.2 MNIST數據集以及LeNet-5
MNIST數據集是Yann LeCun等人建立起來的一個手寫數字的識別數據庫,近些年來在這個數據庫上很多人取得了很多不錯的成果。這個數據主要包括60000個訓練數據以及10000個測試數據,這些數據都是手寫數字,并且標記好了類別。這些數據都是已經做出預處理的數據,然后處理成了相同的大小,并且數字都在圖片的中間位置。
Yann LeCun首次使用反向傳播算法對卷積神經網絡進行迭代,構建了LeNet-5模型,并且在MNIST數據集上獲得了不錯的效果。LeNet-5是第一個卷積神經網絡,與以前的神經網絡不通,卷積神經網絡更多的利用空間信息來提取特征,可以更加有效的提取圖像的邊緣特征,但是由于卷積神經網絡需要非常大的計算量,因此之前一直受到計算資源的限制,沒有大規模應用起來。LeNet-5使用梯度下降算法計算卷積,加快了計算的速度。
由于LeNet-5的測試數據集為MNIST,因此原始網絡的輸入為32*32大小的圖像,然后是6個5*5的卷積核,然后是一個池化層,后面是16個5*5的卷積核,跟一個池化層,最后是三個全連接層,負責將之前卷積層提取出來的特征組合成一維的新的特征,最后根據這些特征來進行預測。網絡結構如圖所示:

在圖像分類的問題中,我們在最后預測圖像是屬于哪一類的時候,通常使用one-hot編碼來實現,尤其是在神經網絡中,網絡的最后一層通常表示著模型的輸出層,加入我們有十個類別,那么最后一層就有十個輸出,每一個輸出分別代表著屬于每一類的概率,為0-1之間的值。因此對于一個十分類的問題來說,網絡最后會得到十個不同的輸出,每一個輸出代表著屬于每一類的概率值,最后只要選出最大的一個值,就是我們所要預測的最終結果。那么如何衡量機器學習方法的好壞就成了我們目前的問題。
當我們獲得了模型最后的輸出后的首要目標就是要判斷預測的結果是否是我們預期的結果,準確率便成了一個最好的選擇。準確率是指模型預測的結果與真實結果的比值,假設我們的測試集有100張圖片,最后又97張被分類正確了,那么我們的準確率就是97%。
當前最為標準的圖像分類的比賽ImageNet采用多個準確率的評估標準,如top1和top5,top5是指我們在最后的預測結果中選擇最大的5個概率值與我們真是的類別去比較,如果有一個被分類正確了,那么我們就認為模型的結果是正確的。這樣的話,就更接近人類去做這樣的事情了,會降低一些誤判的情況。top1就是選擇最大的那一個。
對于經典的二分類問題,對于一張圖像只有被分類為正類和負類的情況。但是在實際的分類中可能會出現四種不同的情況:
當一張圖像本身是正類的時候,模型也預測為正類的時候,我們稱這種情況為真正率(TP)
當一張圖像本身為正類,但是被預測為負類的時候,我們稱這種情況為假負類(FN)
當一張圖像本身是負類,但是被預測正類的時候,我們稱這種情況為假正類(FP)
當一張圖像本身是負類的時候,模型也預測為負類的時候,我們稱這種情況為真負類(TN)
真正類率TPR以如下的方式定義:
TPR=TP/TP+FN
代表著模型的預測結果中是真正的正類的概率占所有正類的比例,有的論文中稱之為sensitivity。
負正類率FPR以如下的方式定義:
FPR = FP/ FP + TN
代表著模型的預測結果中預測為正類的負類的數量占所有負類的比例。
ROC曲線以FPR為橫軸,TPR為縱軸。因此在ROC曲線中,曲線覆蓋的面積越大代表我們的模型越好。
如今是信息化的時代,圖像分類在我們的日常生活中不可缺少,使得機器學習成為現今信息技術領域中的重要研究方向,機器學習可以幫助人們高效地分類管理圖片,更加方便快捷地獲取圖片信息內容,同時圖像分類還應用于目標識別,人臉識別,圖像檢索等方面,具有相當廣泛的研究前景。
本文主要介紹了圖像分類的背景,意義,當前的研究現狀,以及圖像分類的概念和分類方法,從支持向量機,卷積神經網絡等方面總結了近年來圖像分類研究的重要方法。
但是,圖像分類器還存在著很多問題,包括:1)目前的圖像分類方法還沒有完全解決這類問題;2)不能很好的可視化圖像中的特征。
[1]高錦.基于SVM圖像分類[M].2010.
[2]周俊宇,趙艷明.卷積神經網絡在圖像分類和目標檢測應用綜述[J].計算機工程與應用,2017:34.
[3]李莉.醫學影像數據分類方法研究綜述[J].中國醫學物理學雜志,2011.
[4]Yann LeCun.Gradient-Based Learning Applied to Document Recognition.
[5]Alex Krizhevsky.ImageNet Classification with Deep Convolutional Neural Networks.
[6]Yann LeCun.OverFeat:Integrated Recognition,Localization and Detection using Convolutional Networks.
[7]Harry Zhang.The Optimality of Naive Bayes.
虞達飛(2000—),男,河南鄭州人,現就讀于河南省鄭州中學高中,研究方向:機器學習。