安徽新華學(xué)院大數(shù)據(jù)與人工智能學(xué)院 曹天成
近年來,圖像識別已經(jīng)成為機(jī)器學(xué)習(xí)領(lǐng)域的研究熱點(diǎn),由于當(dāng)前情況下,一張圖片涵蓋了許多的語義內(nèi)容,使得傳統(tǒng)的單標(biāo)簽分類已無法滿足圖像分類需求。為了解決自然場景圖片識別問題,在多標(biāo)簽分類的基礎(chǔ)上,使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取,提出了一種多標(biāo)簽自然場景圖片識別的方法。
隨著互聯(lián)網(wǎng)及其衍生應(yīng)用的不斷普及,一個信息量呈指數(shù)增長的大數(shù)據(jù)時代已然到來,隨之而來的則是計算機(jī)技術(shù)的飛速發(fā)展,其中就包括計算機(jī)視覺[1]與機(jī)器學(xué)習(xí)[2]技術(shù)等領(lǐng)域。這是因?yàn)槿藗儗τ趫D像應(yīng)用的需求的不斷提高,讓各種圖像類研究問題誕生。圖片的識別分類一直是計算機(jī)視覺領(lǐng)域的基礎(chǔ)任務(wù),而以往的單標(biāo)簽圖像識別只能賦予圖像一個標(biāo)簽,而一張圖像一般會包含多種物體與特征,不能滿足現(xiàn)在需求,因此多標(biāo)簽圖像分類的研究是現(xiàn)在的主要方向。在過往的單標(biāo)簽圖像分類的研究中,人工神經(jīng)網(wǎng)絡(luò)有了廣泛的應(yīng)用,其中卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用的效果尤為出色。但現(xiàn)實(shí)生活中的自然場景圖像往往更加復(fù)雜,存在著物體遮擋、光線過強(qiáng)等各種各樣的問題,提高了對于圖像識別分類的難度,而不是再像以前一樣直接使用現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)。因此必須要深入地研究探索卷積神經(jīng)網(wǎng)絡(luò)在多標(biāo)簽圖像分類中的應(yīng)用?;诖?,本文基于CNN 模型進(jìn)行了多標(biāo)簽自然場景圖像的分類,實(shí)驗(yàn)結(jié)果證明該方法有著優(yōu)秀的分類精度,而對于真實(shí)圖片的識別結(jié)果也有著一定的精準(zhǔn)度。
近年來,科技界掀起了一股前所未有的人工智能熱潮。而在人工智能領(lǐng)域有一種說法,認(rèn)為機(jī)器學(xué)習(xí)是人工智能領(lǐng)域中最能夠體現(xiàn)智能的一個分支,也是發(fā)展最快的一個分支。機(jī)器學(xué)習(xí)旨在利用大量數(shù)據(jù)進(jìn)行大量訓(xùn)練,從而讓計算機(jī)獲得與人類類似的學(xué)習(xí)能力,其應(yīng)用遍及人工智能的各個領(lǐng)域。其中,分類問題就是最為典型的機(jī)器學(xué)習(xí)問題。
在傳統(tǒng)的分類框架中,數(shù)據(jù)集中的每個樣本通常只與一個標(biāo)簽關(guān)聯(lián),而在多標(biāo)簽分類問題中,一個樣本通常可能關(guān)聯(lián)多個標(biāo)簽,此種類型的數(shù)據(jù)集被稱為多標(biāo)簽數(shù)據(jù),比如一張照片可能擁有風(fēng)景、人物等多個主題;一張圖片可能包含“樹木”“湖泊”“藍(lán)天”等元素。近十幾年中,多標(biāo)簽分類[3]已經(jīng)成為了機(jī)器學(xué)習(xí)領(lǐng)域的研究熱點(diǎn)之一,吸引了大量研究者的關(guān)注,并在多媒體內(nèi)容自動標(biāo)注、信息檢索、個性化推薦、生物信息學(xué)[4]等多個領(lǐng)域得到了應(yīng)用。
現(xiàn)如今有多種解決多標(biāo)簽問題的方法途徑,其主要分為兩大類:一是基于問題轉(zhuǎn)化的方法,二是基于算法適用的方法?;趩栴}轉(zhuǎn)化的方法就是將其轉(zhuǎn)化為問題數(shù)據(jù),然后再去使用現(xiàn)有的算法;基于算法適用的方法主要是對于設(shè)定的算法去加以擴(kuò)展,然后去處理多標(biāo)記數(shù)據(jù),改進(jìn)算法,適用數(shù)據(jù)。其中問題轉(zhuǎn)化方法通常會將多標(biāo)簽問題轉(zhuǎn)換為它類問題方法,然后利用相關(guān)的模型進(jìn)行處理。其次,由于多標(biāo)簽的標(biāo)簽問題有著巨大的價值,所以根據(jù)標(biāo)簽問題可以劃分為三步走:第一步策略,二步策略和終步策略。第一步時候不考慮樣本與標(biāo)簽的相關(guān)性,第二步時候需要對樣本與標(biāo)簽之間相關(guān)性考慮,而最后一步策略需要對比標(biāo)簽之間關(guān)系進(jìn)行分析,相較于前兩種高階策略具有更強(qiáng)的探索性。
近幾年大數(shù)據(jù)技術(shù)和人工智能迅速發(fā)展,大數(shù)據(jù)時代隨之來臨,為人工智能技術(shù)的發(fā)展提供了無窮無盡的數(shù)據(jù)樣本,而深度學(xué)習(xí)則是新時代人工智能技術(shù)進(jìn)一步發(fā)展的最主要推動力。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一種,是一種無監(jiān)督學(xué)習(xí),它基于一種學(xué)術(shù)假設(shè):即人類對外界環(huán)境的了解過程最終可以歸結(jié)為一種單一算法,而人腦的神經(jīng)元可以通過這種算法分化出識別不同物體的能力,而且整個識別過程完全不需要外界干涉。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)[5]是一類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Networks),是深度學(xué)習(xí)[6]的代表算法之一。卷積神經(jīng)網(wǎng)絡(luò)具有表征學(xué)習(xí)能力,能夠按其階層結(jié)構(gòu)對輸入信息進(jìn)行平移不變分類,因此也被稱為“平移不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò)”。
基礎(chǔ)的CNN 由卷積、激活和池化三種結(jié)構(gòu)組成。CNN輸入的是需要識別的圖像,輸出的結(jié)果是每幅圖像的特定特征空間。在處理圖像分類任務(wù)時,把CNN 輸出的特征空間作為分類算法的輸入,得到圖片到標(biāo)簽的映射,再將訓(xùn)練結(jié)果返回,迭代調(diào)整網(wǎng)絡(luò)權(quán)重,直至獲得最佳的分類效果。
基于此,為了提升前文理論研究的實(shí)際可操作性,本章將自然場景圖片進(jìn)行CNN 算法特征提取后再用基礎(chǔ)的多標(biāo)簽學(xué)習(xí)算法進(jìn)行分類,得到一個端到端的圖像識別。
本章實(shí)驗(yàn)的硬件環(huán)境為Intel(R) Xeon(R) CPU E5-2650 2.60GHz CPU;操作系統(tǒng)為Linux 5.4.0-62-generic。使用TensorFlow[7]搭建卷積神經(jīng)網(wǎng)絡(luò),TensorFlow 是一個基于數(shù)據(jù)流編程的符號數(shù)學(xué)系統(tǒng),被廣泛應(yīng)用于各類機(jī)器學(xué)習(xí)算法的編程實(shí)現(xiàn)。實(shí)驗(yàn)的環(huán)境變量為Python3.6,Numpy1.19,TensorFlow2.0。
為綜合評價本文提出的算法是否真實(shí)有效,我們從錯誤率、精度等多個方面對算法進(jìn)行了評估,評價指標(biāo)選用4 個常用多標(biāo)簽學(xué)習(xí)評價指標(biāo),分別是平均精度(Average Precision,AP)、覆蓋率(Coverage,CV)、漢明損失(Hamming Loss,HL)、1-錯誤率(One-Error,OE)。為方便簡寫為AP↑、CV↓、HL↓、OE↓,其中↑表示數(shù)值越高越好,↓表示數(shù)值越低越好。設(shè)多標(biāo)簽分類器h(·),預(yù)測函數(shù)f(·,·),排序函數(shù)為rankf,多標(biāo)簽數(shù)據(jù)集D={(xi,Yi|1≤i≤n)},以上4 種評價指標(biāo)的詳細(xì)解讀如下:
(1)Average Precision(AP):評估特定標(biāo)簽y∈Yi排列的正確標(biāo)簽的平均分?jǐn)?shù),數(shù)值越高越好。
(2)Coverage (CV):度量平局需要多少步才能遍歷樣本所有的相關(guān)標(biāo)記,數(shù)值越低越好。
(3)Hamming Loss(HL):度量樣本在單個標(biāo)簽情況下的真實(shí)標(biāo)簽和預(yù)測標(biāo)簽的錯誤匹配情況,數(shù)值越低越好。
(4)One-Error(OE):評估對象最高排位標(biāo)簽并非正確標(biāo)簽的次數(shù),數(shù)值越低越好。
諸多研究表明,同類型的圖像數(shù)據(jù)底層特征都具有強(qiáng)相關(guān)性,諸如自然場景中的顏色、紋理等特征,所以,本章使用Image 數(shù)據(jù)集進(jìn)行模型的預(yù)訓(xùn)練。多標(biāo)簽數(shù)據(jù)集Image 選自于數(shù)據(jù)集ImageNet[8],是專門用于多標(biāo)簽分類的自然場景圖像數(shù)據(jù)集,共有5000 張自然場景圖片,包含“沙漠”“山”“湖泊”“晚霞”“樹”5 個標(biāo)簽,如圖1所示是一張Image 數(shù)據(jù)集中的圖片與標(biāo)簽。
圖1 自然場景圖片與標(biāo)簽Fig.1 Nature scene pictures and tags
本章預(yù)訓(xùn)練迭代20 次以達(dá)到收斂,最終結(jié)果截圖如圖2所示。
圖2 CNN-MLNCE 實(shí)驗(yàn)結(jié)果Fig.2 CNN-MLNCE experimental results
將結(jié)果中的HL、AP、OE、RL 指標(biāo)與經(jīng)典的多標(biāo)簽分類算法MLRKELM 算法[9]、MLFE 算法[10]、LIFT 算法[11]進(jìn)行對比,對比結(jié)果如表1所示,占優(yōu)算法加粗表示。
表1 應(yīng)用實(shí)驗(yàn)結(jié)果Tab.1 Application experiment results
實(shí)驗(yàn)結(jié)果表明,由于本文方法的深度學(xué)習(xí)過程,在各項(xiàng)指標(biāo)上都要優(yōu)于其他多標(biāo)簽學(xué)習(xí)算法。證明了本文方法有著較好的分類精度。
為了檢驗(yàn)本文方法的實(shí)際應(yīng)用效果,我們?nèi)斯づ臄z了多張自然場景圖片,使用已預(yù)訓(xùn)練好的本文方法進(jìn)行分類,下面展示部分訓(xùn)練后的分類預(yù)測結(jié)果。
上面列舉了兩張照片與分類結(jié)果(如圖3、圖4所示),照片的識別結(jié)果為“山”“湖泊”,可以看出,算法基本分類準(zhǔn)確,但還有部分的遺漏,因此還有進(jìn)一步改進(jìn)的空間??傮w可以推斷出本文方法對自然場景圖片有著一定的識別能力,并且有較高的準(zhǔn)確度。
圖3 自然場景照片F(xiàn)ig.3 Natural scene photos
圖4 圖片的識別結(jié)果Fig.4 Image recognition results
本章選取CNN 作為預(yù)訓(xùn)練模型進(jìn)行圖像的特征提取,并用多標(biāo)簽分類算法進(jìn)行分類,構(gòu)建了CNN-ML算法進(jìn)行實(shí)際場景的應(yīng)用。結(jié)合目前主流的多標(biāo)記算法進(jìn)行對比試驗(yàn),得到的結(jié)果顯示本文方法具有一定優(yōu)勢。同時,我們使用本文方法對人工拍攝的真實(shí)自然場景圖片進(jìn)行識別,得到了不錯的分類效果。