前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的神經網絡中偏置的作用主題范文,僅供參考,歡迎閱讀并收藏。
關鍵詞:學生綜合素質評價;BP神經網絡;算法設計
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)24-6786-03
BP neural Network Based on the Overall Quality of the Student Evaluation of Algorithm Design
ZHANG Wen-sheng
(Xiamen Gongshang Lvyou Xuexiao, Xiamen 3610012,China)
Abstract: In this paper, the overall quality of the students a variety of evaluation methods carried out in-depth analysis to explore the use of BP neural network theory to evaluate the feasibility of the overall quality, and BP neural network based on the overall quality of the student evaluation of algorithm design.
Key words: evaluation of the overall quality of students; BP neural network; algorithm design
學校德育教育是提高學生綜合素質的重要一環,在學校工作中占有舉足輕重的地位。德育涉及大量定性和定量的數據處理,為了體現其科學性和公平性,采用先進的計算機技術進行學生綜合素質量化評估勢在必行。
1 問題的提出
據調查,目前在學校里對學生素質評價的方法,主要有以下幾種:
1) 定性描述法
在學期或學年結束時,班主任根據學生在班級、學校和社會活動中的行為表現,運用文字對學生的綜合素質進行描述,作為對學生的評價。這種方法在評價學生綜合素質時起過一定的作用,但是,由于教師對學生綜合素質評價的內容不明確,要求不統一,帶有一定的主觀片面性和模糊性。
2) 等級劃分法
班主任根據平時對學生的觀察和了解,對學生的綜合素質行為劃分出優、良、中、差四個等級。它只能說明每個學生綜合素質發展的程度,在班集體中所處的地位,但缺乏具體內容,學生對于自己或他人的優點和缺點、以及個人今后的努力方向都不明確。
3) 自我總結法
這種方法是以學生為主,在教師的指導下總結自己的收獲,存在的問題、以及今后的努力方向,并寫成書面材料,然后寫在操行表的自我總結欄內。這種方法是以學生的自我評價為主,它對于提高學生的自我評價能力,具有一定的促進作用。但是,由于沒有老師和同學們參加評價,其評價結果缺乏客觀性。
4) 小組評議法
是以班級小組評議為主。通過開評議會的形式,對全組成員分別進行評議,肯定成績,提出缺點,最后把大家的意見集中起來,作為對學生的評價結果。它具有一定的客觀性,可是,沒有教師參加評議,影響了評價結果的可信度。
上述各種方法的都有一定的長處,也有一定的缺點。例如,對學生的綜合素質的結構,沒有明確統一的規定和具體要求;不能同時吸收各方面的意見參加評價;沒有制定較為符合需要的綜合素質量表和采用科學的測量手段等等。所以,評價的結果往往帶有主觀片面性,評語內容的不確定性,以及處在同一等級的同學之間存在差異的模糊性。于是最近又提出了對學生綜合素質定量進行測量和評價。
5) 定量分數法
將構成學生綜合素質的各種因素數量化,并制定出綜合素質量表。在具體的進行測量和評價時,把學生綜合素質所含每種因素的發展程度分為優、良、中、差四個等級,每個等級分別對應一定的標準值。對不同因素確定不同的權重大小,再綜合學生每個因素所取得的標準值,最后得出學生的綜合素質分。
用定量的方法對學生的綜合素質發展程度進行評價時,不同因素需要確定不同的權重大小。權重的大小對評估結果十分重要,它反映了各指標的相對重要性。由于對不同的因素的權重是人為給定的,而學生綜合素質的各項因素對學生的整體素質存在不可確定的影響程度,因些在對學生的測量和評定過程中必然受到主觀因素及模糊隨機性的影響。并且這種方法需要消耗大量的人力和時間。
為了探討這個問題,我們根據BP神經網絡的基本概念和原理,用神經網絡自我學習的方法,對中學生綜合素質進行測量和評價。BP神經網絡能利用經驗樣本對神經網絡的訓練,達到神經網絡的自我學習,在網絡中自動建立一個多輸入變量與輸出變量間的非線性映射過程,無需建立具體的數學模型和規則,可以處理那些難以用模型或規則描述的過程或系統。神經網絡具有自組織、自學習、自適應的特點,能通過連接權重的不斷調整,克服權重確定的困難,弱化人為因素,自動適應信息、學習新知識,最終通過學習訓練對實際學習樣本提出合理的求解規則,對學生的綜合素質的整體評定具有十分重要的意義。首先我們來了解BP神經網絡的基本原理。
2BP神經網絡的基本原理
1) 神經元網絡基本概念
神經網絡是單個并行處理元素的集合,從生物學神經系統得到啟發。在自然界,網絡功能主要由神經節決定,可以通過改變連接點的權重來訓練神經網絡完成特定的功能。如圖1所示。這里,網絡將根據輸出和目標的比較而進行調整,直到網絡輸出和目標匹配。
2) 神經元網絡結構
圖2所示為一個單標量輸入且無偏置的神經元。
神經元輸出計算公式為:a=f(wp+b)。神經元中的w和b都是可調整的標量參數。可以選擇特定的傳輸函數,通過調整權重 和偏置參量 訓練神經網絡做一定的工作,或者神經網絡自己調整參數以得到想要的結果。
3) BP結構及算法描述
在實際應用中,神經網絡用得最廣泛的是反向傳播網絡(BP網絡),典型的BP網絡是三層網絡,包括輸入層、隱含層和輸出層,各層之間實行全連接。
BP網絡是采用Widrow-Hoff學習算法和非線性可微傳輸函數的多層網絡。網絡的學習過程由正向和反向傳播兩部分組成。在正向傳播過程中,每一層神經元的狀態只影響到下一層神經元網絡,如果輸出層不能得到期望輸出,就是實際輸出值與期望輸出值之間有誤差,那么轉入反向傳播過程,將誤差信號沿原來的連接通路返回,通過修改各層神經元的權值,逐次地向輸入層傳播去進行計算,再經過正向傳播過程,這兩個過程的反復運用,使得誤差信號最小。實際上,誤差達到人們所希望的要求時,網絡的學習過程就結束了。
4) 反向傳播算法
反向傳播學習算法最簡單的應用是沿著性能函數最速增加的方向一梯度的負方向更新權重和偏置。這種遞歸算法可以寫成:
xk+1=xk-ak*gk
這里xk是當前權重和偏置向量,gk是當前梯度,ak是學習速率。在神經元中,學習速度又稱為“學習速率”,它決定每一次循環訓練中所產生的權值變化量(即該值的存在是神經元網絡的一個必須的參數)。大的學習速度可能導致系統的不穩定,但小的學習速度將會導致訓練較長,收斂速度很慢,通常情況下取值在0-01~0,8之間。
3 基于BP神經網絡的學生綜合素質量化評估模型
從上述對神經元網絡基本概念的研究,我們可以看出BP神經網絡主要根據所提供的數據,通過學習和訓練,找出輸入與輸出之間的內在聯系,從而求取問題的解,而不是完全依據對問題的經驗知識和規則,因而具有自適應功能,這對于弱化權重確定中的人為因素是十分有益的;其次能夠處理那些有噪聲或不完全的數據,具有泛化功能和很強的容錯能力;由于實際對學生量化評估往往是非常復雜的,各個因素之間相互影響,呈現出復雜的非線性關系,人工神經網絡為處理這類非線性問題提供了強有力的工具。因此與其它評定方法相比,基于神經網絡的評價方法越來越顯示出它的優越性。結合學校對學生進行綜合素質評估考核的具體問題,我們提出以下設計。
3.1量化評估內容的確定
1) 確定學生的綜合素質結構
學生的綜合素質結構,主要是根據一定歷史階段的社會要求、學校對學生的傳統要求,以及各個不同年齡階段學生心理和生理發展的特征來確定的,它具有一定的社會性、科學性、可行性。以教育部提出的職業學校學生發展目標為依據,評定內容包括:道德品質與公民素養、學習能力、交流與合作能力、運動與健康、審美與表現、職業技能等6個層次。每個層次又包括各種因素,各層次和因素之間又是相互聯系和相互促進的,它既反映了社會的、學校的具體要求,又符合學生綜合素質發展和形成的規律。當然,在實際評價學生中,可以根據學校的實際特點進一步確定各要素,進一步構成學生綜合素質評價的綜合評價指標體系。
2) 學生綜合素質評價的結構設計
用BP神經網絡進行學生綜合素質評價結構的設計如圖3所示。對學生的綜合素質進行量化評估時,從輸入層輸入評價學生綜合素質的n個評價指標因素信息,經隱含層處理后傳入輸入層,其輸出值y即為學生評估結果。這n個評價指標因素的設置,要考慮到能符合學生綜合素質發展和形成的規律,能全面評價學生的綜合素質狀況。
網絡結構的參數選擇十分重要,由于輸入層與隱含層神經元個數的增加會增加網絡的表達能力,不僅會降低系統的性能,同時也會影響其收斂速度和增加噪聲干擾。所以首先必須確定輸入層神經元的數目。為使模型即有理論價值又有可操作性,本例對應于對學生綜合素質考核結構的六個因素,本文采用6個輸入神經元,分別為道德品質與公民素養、學習能力、交流與合作能力、運動與健康、審美與表現、職業技能等評價指標。由于目前隱單元數尚無一般的指導原則,為了兼顧網絡的學習能力和學習速度,隱含層神經元的個數選擇采用試算法,在網絡訓練過程中進行調整。筆者首先選定15,用訓練樣本來學習,然后減少隱含層單元數后再進行學習,通過觀察訓練誤差變化的大小來調整隱單元數。其原則是:若在減少隱單元數進行訓練時過程平衡(即逐步收斂并達到較小的誤差)且誤差無顯著增加,則說明減少隱單元數是合適的;否則表明隱單元數不宜減少,而應增加隱單元數直到滿意為止。選擇一個輸入神經元為學生綜合素質最終評價結果,分別以0、0,5、1對應于學生評議等級的優、良、中三種不同的評價結果。經過多次實驗,最后得到適宜的網絡模型為6-4-1網絡模式。
3.2 量化評估模型
1) 指標體系的規范化處理
根據神經網絡計算規則,為了保證輸出在線性部分,不到兩端去,應保證輸入輸出在0-1之間,反傳達時也一樣,輸出應在0~1之間。因此要將原始數據歸一預處理,變換為[0,1]區間的數值,得到規范化數據,作為輸入輸出節點的樣本數據。原始數據采用我校高一年一個班級的50名學生的學生綜合素質各項指標因素樣本數據,將實際數據分為兩組:前40名學生的各項指標因素成績樣本數據作為學習樣本,后10名學生的成績數據作為測試樣本。
2) 學習算法
本模型采用6-4-1BP神經網絡結構,其中輸入層為6個指標值和一個閾值。模型初始化時對所有的連接權賦予(0,1)上分布的隨機數,閾值取1。權值的修正依據帶慣性因子的delta規則。根據多次試驗的結果,其中,慣性因子α=0.075,學習率η=0.85,將樣本數據40組為一次循環,每次循環記錄40組樣本中最大的學習誤差。經過多次的學習,最后觀察網絡輸入與期望輸出的相對誤差,當誤差小于0.005時,學習結束??梢缘玫饺绻龃髽颖镜膫€數,精度還會進一步提高。
本文探討了神經網絡在學生綜合素質評價上的應用方法,可取得較為理想的結果,它可以解決用傳統統計方法不能或不易解決的問題。但是由于它是一種黑盒方法,無法表達和分析評估系統的輸入與輸出間的關系,因此也難于對所得結果作任何解釋,對求得的結果作統計檢驗;再者,采用神經網絡作評價系統時,由沒有一個便于選定最合適的神經網絡結構的標準方法,只能花大量時間采用湊試法,從許多次實驗中找出“最合適”的一種;還有樣本數據需要足夠的多,才能得到較為理想的結果。
參考文獻:
[1] 高長梅,趙承志,白昆榮.學校德育工作全書(上)[M].北京:人民日報出版社,2005.
[2] 聞新,周露,李翔,張寶偉.MATLAB神經網絡仿真與應用[M].北京:科學出版社,2008.
[3] J.P.Marques de sa,Pattern Recognition―Concepts,Methods and Applications[M].北京:清華大學出版社,2006.
關鍵詞關鍵詞:深度學習;卷積神經網絡;古玩圖片;圖像識別
DOIDOI:10.11907/rjdk.162768
中圖分類號:TP317.4
文獻標識碼:A文章編號文章編號:16727800(2017)005017405
0引言
隨著電子商務的發展,大批藝術品交易網站隨之興起,藏品交易規模也越來越大。而當前的古玩網上交易平臺還不能夠實現對現有藏品圖片的自動分類,客戶在尋找目標藏品時不得不在眾多圖片中一一瀏覽。因此需要一種有效的方法來完成面向圖像內容的分類。
在基于內容的圖像檢索領域,常使用人工設計的特征-如根據花瓶、碗、盤子的不同形態特征:目標輪廓的圓度、質心、寬高比等[1],繼而使用BP神經網絡、SVM分類器等對特征進行學習分類。文獻[2]基于植物葉片的形狀特征,如葉片形狀的狹長度、矩形度、球狀性、圓形度、偏心率、周長直徑比等,利用BP神經網絡實現對植物葉片進行分類。文獻[3]研究印品圖像的各類形狀缺陷,利用圖像缺陷形狀的輪廓長度、面積和圓形度等幾何特征,導入SVM分類器進行訓練,得到分類器模型實現分類。文獻[4]提出了一種基于Zernike矩的水果形狀分類方法,通過提取圖像中具有旋轉不變性的Zernike矩特征,并運用PCA方法確定分類需要的特征數目,最后將這些特征輸入到SVM分類器中,完成水果形狀的分類。上述方法都要求對目標形狀分割的準確性,而分割過程中由于存在目標陰影、目標分割不完整問題,會影響到人工特征的準確選取。除了上述人工特征外,最常用的特征是HOG[5,6]、SIFT[7,8]等。HOG的核心思想是所檢測的局部物體外形能夠被光強梯度或邊緣方向的分布所描述。HOG表示的是邊緣結構特征,因此可以描述局部形狀信息。SIFT在圖像的空間尺度中尋找極值點,并提取出其位置、尺度、旋轉不變量。SIFT特征對于旋轉、尺度縮放、亮度變化保持不變。但是,這兩種特征在實際應用中,描述子生成過程冗長、計算量太大。而且在上述方法征設計需要啟發式的方法和專業知識,很大程度上依靠個人經驗。
卷積神經網絡不需要手動設計提取特征,可以直接將圖片作為輸入,隱式地學習多層次特征,進而實現分類[9]。相比目前常用的人工設計特征然后利用各分類器,具有明顯的優勢。近年來,卷積神經網絡已成為語音、圖像識別領域研究熱點。它的權值共享特點使得網絡復雜度降低,權值數量減少。而且,卷積神經網絡直接將圖片作為輸入,避免了復雜的特征設計和提取,具有一定的平移、縮放和扭曲不變性[10]。本文采用卷積神經網絡對古玩圖片進行分類。首先,將背景分離后的圖片作為網絡的輸入,相比原圖作為輸入,此方法的網絡結構更加簡單。然后,卷積層通過不同的卷積核對輸入圖片進行卷積得到不同特征圖,采樣層進一步對特征圖進行二次提取,最終提取到合適的特征輸入分類器進行分類,而在卷積層、采樣層征圖的大小、數目都會影響到網絡的分類能力。因此,本文通過優化網絡參數,使網絡達到較好的分類效果。
1卷積神經網絡
1989年,LECUN等[11]提出了卷積神經網絡(Convolution Neural Networks,CNN),CNN是一種帶有卷積結構的深度神經網絡,一般至少有2個非線性可訓練的卷積層、2個非線性的固定采樣層和1個全連接層,一共至少5個隱含層[12]。百度于2012年底將深度學習技術成功應用于自然圖像OCR識別和人臉識別,此后深度學習模型被成功應用于一般圖片的識別和理解。從百度經驗來看,深度學習應用于圖像識別不但大大提升了準確性,而且避免了人工特征抽取的時間消耗,從而大大提高了在線計算效率[13]。
卷積神經網絡作為一種高效的深度學習方法[14],在許多圖像識別方面取得了很好的成效[1519]。該網絡作為一種多隱層神經網絡,可以提取圖像的多層次特征進行識別。
卷積神經網絡主要包括卷積層和采樣層,卷積層通過可學習的卷積核對輸入圖片進行卷積得到特征圖,卷積操作即加強了輸入圖片的某種特征,并且降低噪聲。卷積之后的結果通過激活函數(通常選擇Sigmoid函數或Tanh函數)作用輸出構成該層的特征圖。特征圖上的每一個神經元只與輸入圖片的一個局部區域連接,每個神經元提取的是該局部區域的特征,所有神經元綜合起來就得到了全局特征,與神經元相連接的局部區域即為局部感受野[20]。而在卷積層中一般存在多張特征圖,同一張特征圖使用相同的卷積核,不同特征圖使用不同的卷積核[21],此特點稱為權值共享,即同一張特征圖上的所有神經元通過相同的卷積核連接局部感受野。卷積神經網絡的局部感受野和嘀倒蠶硤氐憒蟠蠹跎倭送絡訓練的參數個數,降低了網絡模型的復雜度。
采樣層對卷積層提取到的特征圖進行局部非重疊采樣,即把特征圖分為互不重疊的N×N個子區域,對每個子區域進行采樣。卷積神經網絡的采樣方式一般有兩種:最大值采樣和均值采樣。最大值采樣即選取區域內所有神經元的最大值作為采樣值,均值采樣為區域內所有神經元的平均值作為采樣值。最大值采樣偏向于提取目標的特征信息,而均值采樣偏向于提取背景的特征信息[22]。采樣后的特征平面在保留了區分度高特征的同時大大減少了數據量,它對一定程度的平移、比例縮放和扭曲具有不變性。
卷積神經網絡通過卷積層和采樣層的循環往復提取到圖像由低層次到高層次的特征,最后一般通過全連接層將所有特征圖展開得到一維向量,然后輸入到分類器進行分類。
卷積神經網絡在處理二維圖像時,卷積層中每個神經元的輸入與上一層的局部感受野相連接,并提取該局部的特征,權值共享特點又使得各神經元保持了原來的空間關系,將這些感受不同局部區域的神經元綜合起來就得到了全局信息。采樣層對特征圖進行局部特征提取,不會改變神經元之間的空間關系,即二維圖像經過卷積層、采樣層仍然保持二維形式。因此,卷積神經網絡有利于提取形狀方面的特征。雖然卷積神經網絡的局部感受野、權值共享和子采樣使網絡大大減少了需要訓練參數的個數,但是該網絡作為多隱層神經網絡還是十分復雜的。對于不同的數據庫,為了達到比較好的分類效果,網絡的層數、卷積層特征圖個數以及其它參數的設置都需要探究。
2基于卷積神經網絡的古玩圖片分類
2.1特征提取及傳遞
不同古玩的主要區別在于形狀不同,而花瓶、盤子和碗在古玩中最常見,因此將這3類圖片作為實驗對象,對于其它種類的古玩圖片的分類,該網絡同樣適用。卷積神經網絡采用如下圖所示的5層網絡結構,并對網絡各層的特征圖數目、大小均作了修改。對于網絡的輸入,先將原圖像進行目標與背景分割,然后進行灰度化、統一分辨率的處理,最后輸入到卷積神經網絡。由于訓練卷積神經網絡的根本目的是提取不同古玩的特征,而背景不是目標的一部分,對古玩識別來說并不提供任何有用的信息,反而對特征的提取造成干擾,所以去除背景噪聲后,網絡結構會更加簡單,同時也利于網絡對特征的學習。但是因為進行了去背景的預處理,網絡也失去了對復雜背景下圖片的識別能力,所以使用該網絡進行古玩圖片分類前都要進行目標分割的預處理過程。
卷積神經網絡對古玩圖片的特征提取過程如下:
(1)輸入網絡的圖片為100×100大小的預處理圖,卷積神經網絡的輸入層之后為卷積層,卷積層通過卷積核與輸入圖像進行卷積得到特征平面,卷積核大小為5×5。如圖2所示,特征平面上每個神經元與原圖像5×5大小的局部感受野連接。卷積核移動步長為1個像素,因此卷積層C1的特征平面大小為96×96。這種卷積操作在提取到輸入圖像的某一方面特征時,必然會損失掉圖像的其他特征,而采取多個卷積核卷積圖像得到多個特征平面則會一定程度上彌補這個缺陷。因此,在卷積層C1中使用了6個不同的卷積核與輸入圖像進行卷積,得到6種不同的特征平面圖。如圖3所示,同一張特征圖上的所有神經元共享一個卷積核(權值共享),圖中連接到同一個特征圖的連接線表示同一個卷積核,6個不同的卷積核卷積輸入圖片得到6張不同的特征平面圖。卷積之后的結果并非直接儲存到C1層特征圖中,而是通過激活函數將神經元非線性化,從而使網絡具有更強的特征表達能力。激活函數選擇Sigmoid函數。
卷積層中所使用的卷積核尺寸若過小,就無法提取有效表達的特征,過大則提取到的特征過于復雜。對于卷積層征圖個數的設置,在一定范圍內,特征圖的個數越多,卷積層提取到越多有效表達原目標信息的特征,但是特征圖個數如果過多,會使提取到的特征產生冗余,最終使分類效果變差。卷積層的各平面由式(1)決定: Xlj=f(∑i∈MjXl-1j*klij+blj)(1)
式(1)中,Mj表示選擇輸入的特征圖集合,l是當前層數,f是激活函數,klij表示不同輸入特征圖對應的卷積核,blj為輸出特征圖對應的加性偏置。
(2)卷積層C1后的采樣層S1由6個特征平面組成,采樣層對上一層特征圖進行局部平均和二次特征提取。采樣過程如圖4所示,特征平面上的每個神經元與上一層4×4大小的互不重合的鄰域連接進行均值采樣,最終每個平面的大小為24×24。采樣層的各平面由式(2)決定:
Xlj=f(βljdown(Xl-1j)+blj)(2)
式(2)中,down(.)表示一個下采樣函數,l是當前層數,f是激活函數,βlj表示輸出特征圖對應的乘性偏置,blj為輸出特征圖對應的加性偏置。
(3)卷積層C2與C1層操作方式一樣,唯一區別的是C2層每個特征圖由6個不同的卷積核與上一層6個特征圖分別卷積求和得到,因此C2層一共有6×6個不同的卷積核,卷積核大小為5×5,C2層每個平面大小為20×20,共6個特征平面。
(4)采樣層S2與S1層操作一樣,對上一層4×4大小鄰域進行均值采樣,輸出6個5×5大小的特征平面。本文所用的網絡共包括2個卷積層、2個采樣層、1個全連接層,由于輸入圖片已經過背景分離的預處理,采樣層S2特征圖大小為5×5,所以圖1所示5層網絡已經有很好的表達能力。如果直接將原圖作為輸入,那么網絡的層數以及特征圖的個數將比圖1所示的網絡更加復雜。
(5)全連接層將上一層6個5×5大小的二維平面展開成為1×150大小的一維向量輸入Softmax[23]分類器,輸出層一共有3個神經元(即分類的種類數目),分類器將提取到的特征向量映射到輸出層的3個神經元上,即實現分類。
2.2網絡訓練
訓練方式為有監督地訓練,網絡對盤子、花瓶和碗共三類圖片進行分類,所以分類器輸出一個3維向量,稱為分類標簽。在分類標簽的第k維中1表示分類結果,否則為0。訓練過程主要分為兩個階段:
第一階段:向前傳播A段。
將預處理過的圖片輸入卷積神經網絡計算得到分類標簽。
第二階段:向后傳播階段。
計算輸出的分類標簽和實際分類標簽之間的誤差。根據誤差最小化的原則調整網絡中的各個權值。分類個數為3,共有N個訓練樣本。那么第n個樣本的誤差為:
En=12∑3k=1(tnk-ynk)2(3)
式(3)中,tn表示第n個樣本的網絡輸出標簽,tnk對應標簽的第k維,yn表示第n個樣本的實際分類標簽,ynk對應標簽的第k維。為了使誤差變小,利用權值更新公式(4)更新各層神經元的權值,一直訓練直到網絡誤差曲線收斂。
W(t+1)=W(t)+η?δ(t)?X(t)(4)
式(4)中,W(t)表示算第n個樣本時的權值,W(t+1)表示計算第n+1個樣本的權值,η為學習速率,選取經驗值,δ為神經元的誤差項,X表示神經元的輸入。
3實驗結果及分析
實驗在MatlabR2012a平臺上完成,CPU 2.30GHz,內存4GB,所采用的圖像由相關古玩網站提供,分辨率統一格式化為100×100。由于盤子、花瓶和碗在各種古玩種類中它們之間的形狀差別比較明顯,本文實驗對這三類古玩圖片進行分類。對古玩圖片進行了水平翻轉處理,增加圖片數據量,以加強網絡對古玩圖片分類的魯棒性。實驗數據如表1所示,圖5列出了3類圖片的部分樣本,實驗所用圖片均與圖5所示圖片類似,背景比較單一,少數圖片下方有類似陰影。
為了形象表示網絡各層提取的不同特征,圖6展示了當網絡輸入為盤子時的各層特征圖。卷積層C1中6張特征圖分別提取到了輸入圖片的不同特征,而由于權值共享,同一張特征圖中神經元的空間關系保持不變,所以6張特征圖都抓住了盤子的圓形特征。采樣層S1對C1進行均值采樣,相當于模糊濾波,所以S1層各特征圖看起來模糊了一些。卷積層C2中每張特征圖由6個不同的卷積核卷積S1層各特征圖疊加而成,S2層與S1層處理方式相同。
為了說明將背景分離后的圖片作為輸入的網絡與原圖輸入的網絡之間的差異,設計了如表3所示的兩種網絡結構,網絡CNN4只需要4層網絡層就可以達到0.19%的錯誤率,而原圖作為輸入的CNN8共6層網絡層,在網絡達到收斂的情況下,錯誤率為5.24%。由此可以說明,將背景分離后圖片作為輸入的網絡結構更加簡單。
網絡的訓練采用了批量訓練方式,即將樣本分多批,當一批樣本前向傳播完之后才進行權值更新,每批大小為100,訓練集共2 200張圖片,網絡迭代次數為1時共進行22次權值更新,所以權值更新的計算次數與迭代次數有如下關系:
計算次數=22×迭代次數(5)
圖7為網絡在訓練集上的誤差曲線圖,橫坐標為誤差反向傳播的計算次數,縱坐標為訓練集上的均方誤差。可以看出,當網絡訓練次數達到270次(計算次數約6 000)時,訓練集誤差趨于平緩,網絡已經基本擬合。訓練好的網絡可以用來對測試集圖片進行分類,表4為不同迭代次數下訓練的網絡在測試集上的分類錯誤率,可以看出迭代次數在達到270次后,網絡在測試集的錯誤率收斂,此時只有2張圖片出現分類錯誤。
表5給出了圖像分類算法中常用的人工特征+BP神經網絡、人工特征+SVM分類器以及Hog特征+SVM分類器與CNN方法的性能比較。人工設計的特征包括圖片中目標輪廓的最大長寬比、質心、圓度等特征。從準確率方面來看,CNN方法的準確率高于其他方法,Hog特征方法的準確率遠遠高于人工特征的方法,說明了特征的好壞對圖像分類效果有著很大程度上的影響,CNN提取到的特征比Hog和人工設計的特征更具代表性。從測試時間來看,Hog方法與CNN方法相差不多,采用人工特征的方法時間最長。綜合兩個方面,CNN方法在測試時間和HOG方法相近的情況下,準確率最高。
4結語
針對網上古玩圖片分類問題,為了克服現有算法中人工設計特征困難以及往往依賴個人專業經驗的不足,提出一種基于卷積神經網絡的方法。將背景分離后的目標圖片作為網絡輸入,可以實現自動提取特征進行分類,背景分離后圖片作為網絡輸入使得網絡結構更加簡單,并且設置了合適的特征圖個數以使網絡在古玩圖片集上取得較好的分類準確率。實驗數據表明,該方法能夠解決網上古玩圖片的分類問題,并且分類準確率達到99%,其準確率優于常用的Hog特征以及人工特征方法。另外該方法不僅可以應用于網上古玩圖片,還可應用于鞋類、服裝等其它商品圖像的分類。
參考文獻參考文獻:
[1]K KAVITHA,M.V.SUDHAMANI.Object based image retrieval from database using combined features[C].in Signal and Image Processing (ICSIP),2014.
[2]董紅霞,郭斯羽,一種結合形狀與紋理特征的植物葉片分類方法[J].計算機工程與應用,2014,50(23):185188.
[3]舒文娉,劉全香,基于支持向量機的印品缺陷分類方法[J].包裝工程,2014,35(23):138142.
[4]應義斌,桂江生,饒秀勤,基于Zernike矩的水果形狀分類[J].江蘇大學學報:自然科學版,2007,28(1):3639.
[5]ZHU Q,YEH M C,CHENG K T,et al.Fast human detection using acascade of histograms of oriented gradients[C].Proceedings of the 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,2006.
[6]M VILLAMIZAR,J SCANDALIANS,A SANFELIU bining colorbased invariant gradient detector with Hog descriptors for robust image detection in scenes under cast shadows[C].In Robotics and Automation,ICRA IEEE International Conference on.Barcelona,Spain:IEEE,2009.
[7]CHEN J,LI Q,PENG Q,et al.CSIFT based localityconstrained linear coding for image classification[J].Formal Pattern Analysis & Applications,2015,18(2):441450.
[8]AHMAD YOUSEF K M,ALTABANJAH M,HUDAIB E,et al.SIFT based automatic number plate recognition[C].International Conference on Information and Communication Systems.IEEE,2015.
[9]LAWRENCE S,GLIES C L,TSOI A C,et al.Face recognition:a convolutional neuralnetwork approach[J].IEEE Transactions on Neural Networks,1997,8(1):98113.
[10]TREVOR HASTIE,ROBERT TIBSHIRANI,J FRIEDMAN.The elements of statistical learning[M].New York:Springer,2001.
[11]Y LECUN,L BOUOU,Y BENGIO.Gradientbased learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):22782324.
[12]DAHL J V,KOCH K C,KLEINHANS E,et al.Convolutional networks and applications in vision[C].International Symposium on Circuits and Systems (ISCAS 2010),2010:253256.
[13]余凱,賈磊,陳雨強,等.深度學習的昨天、今天和明天[J].計算機研究與發展,2013(09):17991804.
[14]MAIRAL J,KONIUSZ P,HARCHAOUI Z,et al.Convolutional kernel networks[DB/OL].http:///pdf/1406.3332v2.pdf.
[15]Z世杰,楊東坡與劉金環,基于卷積神經網絡的商品圖像精細分類[J].山東科技大學學報:自然科學版,2014(6):9196.
[16]程文博等,基于卷積神經網絡的注塑制品短射缺陷識別[J].塑料工業,2015(7):3134,38.
[17]鄧柳,汪子杰,基于深度卷積神經網絡的車型識別研究[J].計算機應用研究,2016(4):14.
[18]T JONATAN,S MURPHY,Y LECUN,et al.Realtime continuous pose recovery of human hands using convolutional networks[J].ACM Transaction on Graphics,2014,33(5):3842.
[19]S SKITTANON,A C SURENARAN,J C PLATT,et al.Convolutional networks for speech detection[C].Interspeech.Lisbon,Portugal:ISCA,2004.
[20]HUBEL D H,WIESEL T N.Integrative action in the cat's lateral geniculate body[J].Journal of Physiology,1961,155(2):385398.
[21]JAKE BOUVRIE.Notes on convolutional neural networks[DB/OL].http:///5869/1/cnn_tutorial.pdf.
關鍵詞:數據挖掘;網絡入侵;安全防護系統;信息安全;檢測技術
中圖分類號:TP393文獻標識碼:A文章編號:1009-2374(2010)04-0001-02
隨著信息技術的發展,網絡已經承載了越來越多的公司核心業務。信息安全問題成為了一個業界和用戶必須面對的問題。網絡用戶通常將防火墻當作保障信息安全的手段,而網絡攻擊者也在變換著攻擊的技術和方式,隨著攻擊者的手法與工具日益繁多,對于一些信息敏感的部門來講,只用防火墻已經遠遠不能滿足安全需求。在這種情況下,需要采用具有深度的,多樣化的防護方式來進行網絡安全部署。結合當今越來越復雜的網絡環境,設備的配置需要頻繁升級和維護,系統的操作和管理也為網絡工作人員帶來了較大的工作量,而安全隱患經常產生在管理員疏忽大意的時候。所以,針對網絡入侵的檢測技術和設備越來越受到人們的關注,而且開始在安全需求較高的網絡中發揮關鍵作用。
一、網絡攻擊導致流量異常的分類及特點
可以將網絡入侵行為分為四類,分別是:DOS拒絕服務攻擊、R2L遠程網絡用戶攻擊、U2L用戶獲取超級權限攻擊以及PROBE探測攻擊。和本文相關的(造成網絡流量異常情況的)是以下兩類異常攻擊,現對其特點進行分析:
(一)拒絕服務攻擊
對于拒絕服務攻擊而言,這種攻擊手段嚴重危害網絡安全,其主要模式是利用了網絡和服務器的固有弱點而故意制造許多無意義的數據流量,從而擠占了網絡為正常使用者提供的請求服務。攻擊的手段是將大量ICMP 數據報文、非法的 IP 報文等由攻擊者直接向攻擊目標不間斷發送,導致主機處理能力耗盡。
(二)掃描探測攻擊
這屬于一種很普遍的攻擊行為,比如蠕蟲病毒爆發時首先要進行大量端口掃描或主機掃描,蠕蟲病毒最大的特點是快速繁殖和自動攻擊,結合蠕蟲病毒的攻擊特點與攻擊方式,可以查看網絡主機的SYN 位以及SYN/ACK 位,若發現其報文數量有明顯差異,則可將其作為一個蠕蟲病毒的源頭。本文的入侵檢測也是基于對網絡攻擊特征的總結。
二、基于數據挖掘的網絡防護系統構建
(一)入侵檢測系統整體架構
本文構建的入侵檢測系統的建模依據是網絡上出現異常的數據流量,下面是組成模塊的功能描述。
1.信息采集模塊。此模塊的主要功能是對信息數據進行捕獲,數據來源為網絡應用系統的計算機網卡。模塊將捕獲的信息數據制作一份拷貝,傳輸到已經分配好的緩沖區,這份拷貝是為系統中別的模塊訪問而準備的。入侵檢測系統在網絡中進行配置部署期間便會直接獲取數據信息,因此本模塊的使用時期為入侵檢測系統初步測試期間。當系統一旦正式投運,模塊將不再具備效能。可以看出,此模塊的主要作用是通過數據的提取來為后續的數據挖掘過程提供數據資源。
2.信息整理模塊。模塊的功能是對報文進行處理,并將處理之后的報文信息傳遞到其對應的IP匯聚項。此模塊與數據庫間的連接,使得模塊能夠按照一定的周期向數據庫中傳輸經過匯聚的數據信息,從而為對入侵檢測下一步的流程處理提供了數據源。
3.數據挖掘模塊。本模塊的首要任務是調試神經網絡系統的系統參數,使其盡可能優化,這一步是在離線的情況下完成。通過定時從數據庫將源IP匯聚信息提取出來進行基于神經網絡技術的分析,來判別數據流中是否夾雜著攻擊行為。模塊還可以根據攻擊信息而生成相應的報告。
4.報警記錄模塊。報警模塊的功能是在發生攻擊行為時用對話框產生報警信號,同時向系統管理員提交報警信息。
系統的神經網絡參數可以隨時用人工操作的方式在在線分析時進行調整,從而使參數能夠盡可能的準確和優化。通過模塊所提供的相關功能界面,網絡安全管理員能夠實時監控和配置對整個入侵檢測系統。整個系統模型如圖1所示:
本入侵檢測系統可以分為兩大組成部分,在數據輸入數據庫之前的模塊屬于信息采集和整理,這部分的主要功能是匯聚和手機網絡上的實施數據,傳輸到數據庫中以備進一步的挖掘處理;在數據庫處理后輸出的部分則屬于對匯聚數據進行分析,主要操作為將數據庫中提取出的匯聚信息進行網絡流量異常分析,用數據挖掘的方式來確定數據中是否存在異常的網絡攻擊行為,數據分析模塊的信息數據完全來自數據采集模塊的輸出。
(二)數據挖掘算法的實現
本系統選取一個三層神經網絡結構,將樣本X加入到輸入層中,用NETn表示來自輸入層所有神經元Om的輸入總和,得到輸出結果On。將系統權系數定義為Wmn,采用采用sigmoid函數作為激發函數作用于所有的神經元。
sigmoid函數表示為:f(x)=1/(1-e-x)
以下是具體的算法流程:
1.將權系數初始值進行確定。
2.通過對所有樣本的分析計算,對以下流程進行重復,直到系統收斂為止。
(1) 按照前后順序,對各層單元On進行計算:
NETn=∑Om*Wmn
On=1/(1-e-NETn)
(2) 得出輸出層的δn:
δn=(y-On)*On*(1-On)
(3) 按照從后向前的順序,計算各層的δn值:
δn=On*(1-On)*∑δ1*Wnl
(4)計算各權值修正量,并保存起來。
SWmn(t)=a*SWmn(t-1)+b*δn*Om
最后,對權值進行修正:
Wmn(t+1)=Wmn(t)+SWmn(t)
用以下步驟實現本算法:
系統的權值由隨機數產生并把偏置量置為1,偏置量權值同其他輸入值。
將首個樣本值輸入進神經網絡系統,經過計算處理后求得其輸出值,用實際的分類值作參考與此輸出值進行比較,將其間的差異進行后反向傳遞,從而去調整之前確定的權值,之后到達步驟2;
向神經網絡系統中輸入第二個樣本值,將上一步調整后的權值作為其權值,運算處理的過程則同第一步,從而再次進行權值的調整,之后到達下一步;
繼續將第三個樣本值輸入,其余過程則類似第二步,之后到達下一步;
……
(n)向神經網絡系統中將第 n 個樣本值輸入,調整權值,之后到達下一步;
(n+1)將首個樣本值第2次向神經網絡系統中輸入,調整之前確定的權值,之后到達(n+2)步;
……
有多種方法可以用來停止神經網絡學習,如將權值調整的次數規定為一個特定的值,比如800次;此外,還可以規定一個誤差值,當樣本值在經過神經網絡系統處理后的輸出與實際的分類值的差的絕對值小于這個誤差值時,就停止神經網絡學習。
(三)安全防護系統的應用模式
可以把此系統劃分為數據挖掘模塊和數據采集整理模塊兩大部分。在通常采用的做法中,數據挖掘技術在入侵檢測流程里的角色為:在確定了攻擊行為特征屬性后,以數據流的具體走向為準,向數據挖掘模塊輸入來自數據采集整理模塊的攻擊特征屬性,由數據挖掘模塊判定是否確定出現了具體的網絡攻擊行為。
需要注意的是,雖然在入侵檢測系統里引入數據挖掘技術可以起到明顯的效果,但是數據挖掘的算法本身具有“通用算法”的特點,是基于一般知識的。而將數據挖掘算法應用到信息安全領域時,由于網絡隨時可能產生眾多無意義的信息,因此為了將此類干擾信息降至最低,必須以具有針對性的網絡協議進行約束和過濾。只有在具備了完備的特征屬性的數據輸入的基礎上,數據挖掘技術才能發揮效力,如果由于大量無意義信息的存在而導致產生了不合理的特征屬性,則會對數據挖掘功能造成某種程度的誤導,致使入侵檢測失去效能。
三、結語
網絡上承載著大量的數據和應用,隨之而來的是許多安全審計數據信息。通過對這些信息進行處理和提取,從中萃取出網絡入侵行為的特征量,是網絡安全防范最核心的問題。對安全審計信息的處理和操作即為網絡入侵檢測,數據挖掘技術的引入,能夠幫助系統在在大量數據中迅速判斷提取出隱藏的潛在知識信息,因此數據挖掘在入侵檢測中的應用是一個被廣泛關注的應用問題。
參考文獻
[1]蔣建春,馮登國.網絡入侵檢測原理與技術[M].國防工業出版社,2008.
[2]Rebecca G.Brace.入侵檢測[M].北京:人民郵電出版社,2008.
[3]Axels son S.Research in Intrusion Detection Systems:A Survey Technical Report[R].1998,12(17),Dept.of Computer Eng. Chalmers Univ.of Tech,SE-412 96 Goteborg,Sweden,2006,(12).
關鍵詞:人工神經網絡 盈利能力 評價 預測 上市公司
一、人工神經網絡簡介
人工神經網絡(Artificial Neural Network,以下簡稱ANN),是一種對生物神經網絡的結構與功能進行模仿的數學計算模型。神經網絡依靠大量的人工“神經元”聯結組合而成,每個“神經元”代表一種激勵函數,它屬于一種特定的輸出函數。對每兩個“神經元”間的連接都賦予一個權重(Weight),它代表通過該連接信號的加權值,這與活體生物的神經網絡相類似。網絡的激勵函數、連接方式與權重值的不同決定了網絡輸出的不同。同時,ANN是一種自適應系統,它能根據外界信息的變化改變自身的內部結構,通過對輸入、輸出變量的不同關系的分析,掌握其中的內在規律,建立不同的非線性統計性數據模型,這一建模的過程也被稱為“訓練”。
如圖1所示,a1、a2、……、an為輸入向量的各個分量;W1、W2、……、Wn為神經元各個連接的權重,b為偏置,f為非線性傳遞函數,t為神經元輸出,t=f(WA′+b),其中,W為權向量,A為輸入向量,A′為A向量的轉置。
盈利能力是衡量企業經營業績的重要指標,是為維持企業生存、推動企業發展的根本動力,備受企業的管理者、所有者、債權人、政府監管部門等利益相關者的關注。因此,必須對企業的盈利能力進行準確、合理的評價與預測。由于企業的盈利能力不僅涉及到一系列定量的指標,還包括了大量定性的指標,這些指標本身就非常復雜,再加上會計信息本身所特有的模糊性,對盈利能力的評價與預測造成了很大的難度。ANN具備大量公式同時運行、大量數據同時計算、運算程序分布式存儲、運算結果綜合式處理、自我適應、自我組織與自我學習的能力,它自從被提出以來就在實務界得到廣泛的運用,特別是隨著近年來計算機電子技術的發展與進步,ANN逐步完成了軟件模擬與硬件實現的無縫對接,在信號處理、模式識別、專家系統、優化組合、知識控制、機器人控制等領域發揮著越來越重要的作用。ANN非常適合應用于擁有很多不同的輸入向量(即所要處理的問題需要同時考慮多種條件與因素),且輸入向量具備不精確、模糊性特征的信息處理問題。筆者根據衡量企業盈利能力的各項評價指標的特征,結合ANN的優點,構建了一個ANN企業盈利能力綜合評價與預測模型。
二、基于人工神經網絡的企業盈利能力評價與預測模型設計
(一)指標的選擇
企業盈利能力指標從不同的角度出發可以分為以下幾個方面:第一類是應用最廣泛的商品經營盈利能力分析指標,在計算時以企業的利潤表為分析基礎,包括收入利潤率分析與成本利潤率分析;第二類為資本經營盈利能力分析指標,在計算時不僅要運用企業的利潤表,還涉及到資產負債表,主要是對凈資產收益率的計算、分析與評價;第三類為資產經營盈利能力分析指標,主要是指企業的總資產報酬率指標進行分析和評價。盈利能力評價指標的選取是否科學、合理,與最終所建立的ANN企業盈利能力綜合評價模型的有效性直接相關,因此,評價指標的選擇應堅持科學性、全面性、可行性、可比性、客觀性、重點性等原則。筆者在建立ANN企業盈利能力綜合評價模型時將運用以下幾個指標:銷售凈利率X0,銷售毛利率X1,總資產報酬率X2,凈資產報酬率X3,每股收益X4。
(二)模型設計的原理
將筆者已選擇的幾項企業盈利能力評價指標相應數值作為ANN的輸入矢量:X=(X0,X1,X2,X3,X4)T,網絡的期望輸出t表示企業盈利能力綜合評價結果的相應的分值。發揮ANN所特有的自適應、自組織、自學習能力對該網絡運用大量的樣本進行訓練與學習,不斷降低相對誤差,最終使之符合預定精度,以完成ANN企業盈利能力綜合評價模型的構造。
(三)模型的建立
第一步,選取合適的ANN結構。著名ANN基礎理論專家S.K.Doherty的研究表明,只含有一個隱含層的三層(輸入層、隱含層、輸出層)前饋ANN具備以任意精度逼近任何非線性函數關系的特點。因此本文在對企業的盈利能力進行綜合評價時將建立一個三層前饋型ANN模型,由于筆者選取了5個企業盈利能力綜合評價指標,則輸入層神經元個數就是5。雖然到目前為止,隱含層神經元個數的確定方法在理論界尚未形成統一的意見,但根據以往學者研究的經驗,隱含層神經元個數n與輸入層神經元個數m應滿足如下關系:n>1/2m。故本文的隱含層神經元個數確定為3。輸出層為唯一的神經元――企業盈利能力綜合值。
第二步,網絡參數初始化。為隱含層與輸入層之間的連接賦予權值Wij、閾值(k,輸出層與隱含層之間的連接權值w′ij)、閾值(′k,以較小的隨機數確定)。
第三步,本文的樣本數據均來自國泰安數據庫(下文簡稱CSMAR)。筆者對所選取的樣本數據進行等比例縮放以使所有的盈利能力指標數據落在[0,1]區間內,以便于ANN對數據進行處理,對相互間差異很大的各指標的實際數值進行歸一化處理,有利于神經網絡預測精度的提高與應用范圍的拓展,計算公式為: X′i =(Xi-Xmin)/(Xmax-Xmin)。
第四步,輸入層神經元的輸入X′已給出,計算輸入層的輸出Y′:Y′i= f(xj),其中神經元的激活函數為非線性函數,sigmoid函數最為常用,即 f(u)=1/(1+e-u)(該函數的一個特征為:f′(u)=f(u)[1-f(u)]。
第五步,計算隱含層神經元輸入X′′:X′′j=∑w′ijy′i-θ′j和輸出Y′′:Y′′j= f(X′′j)。
第六步,計算輸出層神經元的輸入X′′′:X′′′k=∑w′iky′k-θ′k和輸出Y′′′:y′′′k=f(X′k)。
第七步,對于給定的一組樣本數據(X,T),計算網絡的誤差uk=(tk-yk)f′k(x′′′k),若該誤差不滿足要求,則計算隱含層的一般誤差Vj=[∑(ukw′jk)]f′j(X′′′j)
第八步,修正權值和閾值:Wjk(N+1)=Wjk(N)+ηWjk(N),其中W′jk(N)=Vj,η為步長。
Wjk(N+1)=W′jk(N)+ηW′jk(N),θ′ k(N+1)=θ′k(N)+θ′ k(N),θj(N+1)=θj(N)+ θi(N)。
第九步,在進行完以上步驟后,取下一個列模式作為輸入信號,把所有的訓練模式運行一遍,若達到了預定精度,則停止訓練,否則重新運行,直到達標為止。
三、基于人工神經網絡的企業盈利能力評價與預測實例分析
本文以滬市52家上市公司為樣本,對其2013年一季報進行分析,數據來自CSMAR數據庫中的“公司研究系列―中國上市公司財務指標分析數據庫―盈利能力”,從中挑選出本文所要用到的五個指標,即輸入層。接著結合模型建立過程與ANN基本理論,確定本次訓練需要使用的各參數,隱藏層到輸出層的權矩陣為(-7.1692,-8.3074,-8.0133)T,輸入層到隱藏層的權矩陣為:
本文以MATLAB7.0作為編制ANN計算程序的應用軟件,以樣本中52家上市公司盈利預測作為網絡的期望輸出。樣本包含52組數據,筆者選取其中的36組作為用于訓練網絡的樣本,其余的16組樣本用于模擬待測評的對象,也可以用來檢驗,把上述52組數據經過歸一化處理到[0,1]區間內后輸入到已編制好的計算機程序中進行訓練和仿真。
各參數設置為:顯示迭代過程為5,訓練精度為le-5,最大訓練次數 25 000,經過52次循環學習后網絡訓練結果與企業的盈利預測基本相似,52家公司的盈利能力預測的相對誤差都控制在了5%以內;同時,在36組訓練樣本運行完畢后,無論是36組訓練樣本還是16組檢驗樣本的模擬仿真結果排序都與期望輸出排序順序達到了高度一致,驗證了ANN系統對企業盈利能力評價與預測結果的準確性。值得注意的是,在實務的具體運用中,通過反復訓練,不斷調整網絡權值與閾值,同時對學習精度進行適當提高,擴大訓練樣本數量的方法,可以實現ANN誤差的進一步降低,精度的進一步提高,從而獲得與實際更加接近的仿真結果?;谝陨线^程構建的ANN企業盈利能力評價模型無疑具有更準確的運行結果與更廣泛的應用空間。
【摘要】2016年是“十三五”的開局之年,也是全面建成小康社會決勝階段的開局之年,設施農業產業將面臨更多的機遇和挑戰。在以往的研究中,針對物聯網對設施農業影響的研究比較多,本文將以人工智能在設施農業領域應用為視角,分析人工智能對設施農業的潛在發展優勢。
施農業是集種植、農業裝備等多領域為一體的系統工程,是一種在人為可控環境下進行的高效農業生產方式,具有成套的生產技術、完整的設施裝備和生產規范[1]。近幾年,隨著信息技術的發展,物聯網技術逐漸被應用到農業生產和科研中,這是現代農業依托新型信息化應用的一次進步[2]。本文結合人工智能研究成果,著重介紹人工智能技術在設施農業種植領域方面的應用前景,根據設施農業產前、產中、產后3個階段,對現有研究成果進行了闡述。
人工智能概述
“人工智能”一詞是1956年在Dartmouth學會上提出。從那以后,研究者們發展了眾多理論和原理,人工智能的概念也隨之擴展。人工智能(Artificial Intelligence),英文縮寫為AI,它是研究用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的新型科學技術[3]。
作為計算機科學的一個重要分支,人工智能技術著眼于探索智能的實質,模擬智能行為,最終制造出能以人類智能相似的方式做出反應的智能機器。著名的美國斯坦福大學人工智能研究中心尼爾遜教授對人工智能下了這樣一個定義:“人工智能是關于知識的學科,即怎樣表示知識以及怎樣獲得知識并使用知識的科學。”而另一位美國麻省理工學院的溫斯頓教授認為:“人工智能就是研究如何使計算機去做過去只有人才能做的智能工作。”@些說法反映了人工智能學科的基本思想和基本內容。人工智能自誕生以來,理論和技術日益成熟,應用領域不斷擴大,可以設想,未來應用了人工智能的科技產品,將會是人類智慧的“容器”。
隨著人工智能技術的日益成熟,人們意識到人類已經具備了設計和建造智慧型設施農業所需的硬件和軟件技術條件,結合設施農業高投入高產出,資金、技術、勞動力密集型的特點,完成工廠化農業生產已經不是夢想[4]。依靠人工智能技術,作物可以在適宜的溫度、濕度、光照、水肥等設施環境下,生產優質、高產的農產品,擺脫對自然環境的依賴,實現設施生產的高度智能化,提高農業生產的效率,降低勞動成本[5]。
人工智能在設施農業領域的應用
人工智能技術在產前階段的應用
在設施農業產前階段,憑借人工智能技術可對土壤、灌溉水量需求、作物品種質量鑒別等方面做出分析和評估,為農民做出科學指導,對后續的農業生產起到很好的保障作用。
土壤分析是農業產前階段最重要的工作之一,是實現定量施肥、宜栽作物選擇、經濟效益分析等工作的重要前提[6]。在土壤分析等農業生產智能分析系統中,應用最廣泛的技術就是人工神經網絡(簡稱ANN)。ANN是模擬人腦神經元連接的,由大量簡單處理單元經廣泛并互連形成的一種網絡系統,它可以實現對人腦系統的簡化、抽象和模擬,具有人腦功能的許多基本特征。目前可以通過該技術分析土壤性質特征,并將其與宜栽作物品種間建立關聯模型。土壤性質特征的探測主要是借助非侵入性的探地雷達成像技術,然后利用神經網絡技術在無人指導的情況下對土壤進行分類研究,進而建立起土壤類別與宜栽作物的關聯關系;土壤表層的黏土含量也可通過人工智能方法預測,該技術通過分析電磁感應土壤傳感器獲取的信號,使用深度加權方法從中提取土壤表層質地信息,然后使用ANN預測土壤表層的黏土含量。
傳統農業對灌溉用水的使用量往往依靠經驗,無法根據環境變化進行精確調節,對多目標灌溉規劃問題也無能為力。人工智能技術可幫助人們選擇合適的水源對作物進行灌溉,保證作物用水量,大大減輕灌溉問題對作物產量造成的不良影響。在美國,有專家研制出一個隱層的反饋前向ANN模型和一個位于科羅拉多州地區阿肯色河流域的消費使用模型,使用它們可勘察區域氣候變化對灌溉用水供應和需求可能產生的影響。在灌溉項目研究中,為了選擇最好的折中灌溉規劃策略,還可基于多目標線性規劃優化,利用神經網絡將非支配的灌溉規劃策略加以分類,將這些策略分為若干個小類別。結果表明,在對多目標灌溉規劃問題加以建模時,綜合模型方法是有效的。
人工智能技術在產中階段的應用
在設施農業產中階段,主要應用是農業專家系統、人工神經網絡技術、農業機器人等。這些技術能夠幫助農民更科學地種植農作物并對溫室大棚進行合理的管理,指導農民科學種植,提高作物產量。這些人工智能技術的使用推進了農業現代化的發展,提高了農業生產的效率,使農業生產更加機械化、自動化、規范化。
專家系統是指應用于某一專門領域,擁有該領域相當數量的專家級知識,能模擬專家的思維,能達到專家級水平,能像專家一樣解決困難和復雜問題的計算機(軟件)系統。國際上農業專家系統的研究始于20世紀70年代末期的美國,1983年日本千葉大學研制出MTCCS(番茄病蟲害診斷專家系統),到了20世紀80年代中期,農業專家系統不再是單一的病蟲害診斷系統,美國、日本、中國等國家也相繼轉向開發涉及農業生產管理、經濟分析、生態環境等方面的農業專家系統。農業科研人員把人工智能中的專家系統技術應用到農業生產中,開發出了農業專家系統。它可代替農業專家走進生產溫室,在各地區具體指導農民科學種植農作物,這是科技普及的一項重大突破。
在設施生產中可以使用機器人來代替農民進行作物采收,不僅可以降低勞動成本,也可以提高工作效率。Wolfgang Heinemann等人研發出的具有獨特設計結構的采收機器人,該機器人可以在無需人類干擾的情況下自動采收白蘆筍。為了保證機器人能夠精確行進,它使用了2個獨立的速度控制輪和級聯控制結構(其中包含了一個內部的定位誤差控制器和一個外部的橫向偏置控制器)。借助PID算法①,機器人系統可以分析自己的運動軌跡,優化驅動電機的控制參數,保證系統能夠穩定自主的運行。
在中國,應用人工智能技術的智能雜草識別噴霧系統已經得到了長足發展。圖像分析系統通過分析田間圖像的顏色模型,根據色差分量②顏色特征實現雜草實時識別,并基于Canny算子對識別到的雜草進行邊緣檢測,提取其特征參數,配合超生測距等技術可以精確控制噴頭位置及用藥量[7]。該技術的應用可以大大提高除草劑的經濟性,對保護環境也大有益處。
人工智能技術在產后階段的應用
人工智能技術在設施農業產后階段也有相當多的應用前景。
在農產品分類方面人工智能技術能提供很好的支持。張嘏偉[8]等提出了一種基于圖像識別的番茄分類方法,該方法根據番茄的表面缺陷、顏色、形狀和大小,使用遺傳算法訓練的多層前饋神經網絡對番茄進行分類,并與BP訓練神經網絡③進行了比較。結果表明,遺傳算法在訓練次數和準確性上都具有優勢。謝靜[9]等對圖像識別分類中的圖像預處理方法進行了研究,包括圖像噪聲去除方法、圖像分割方法、邊緣提取方法等。提出了使用改進的canny算法④和當量直徑法相結合來檢測水果大小的新思路,并使用模糊聚類方法處理gabor濾波器提取水果表面缺陷特征,對水果表面缺陷進行了分類。
隨著社會的發展,人民生活水平的提高,廣大消費者及國家都對食品安全問題越來越重視,農產品質量檢測方法也在不斷進步。圖像識別、電子鼻等技術都應用在了農產品檢測中。李洪濤[10]等利用人工嗅覺裝置,模擬人的嗅覺形成過程分析、識別和檢測農產品在腐敗過程中釋放的不同特征氣體。其制作了小型化的傳感器陣列并利用半導體制冷片搭建了一個PID溫度控制系統,保證傳感器正常工作的溫度及濕度。在當前技術的發展下,科學家們以彩色計算機視覺系統為重要技術手段,綜合運用圖像處理、人工神經網絡、遺傳算法、模擬退火算法以及決策樹、專家系統等人工智能領域的技術,研究出了眾多實現農產品品質檢測和自動分級的新方法。
草莓、葡萄等農產品很容易破損和受傷,依靠人工采摘和搬運,不僅增加了勞動成本,也影響農產品采摘后的品質。結合磁流變(MR)流體技術,工程師們設計出了一種可用于搬運農產品的磁機器人手爪,該手爪經過精確設計,可以搬運胡蘿卜、草莓、西蘭花和葡萄等不同形狀食品,而且不會在食物表面留下任何淤痕和凹陷。為了讓機器人手爪更為快速、準確地工作,在磁流變手爪的基礎上結合力傳感技術開發出了更為靈活、智能的新型手爪。該手爪可在410~530 ms內抓握50~700 g重量的農作物,還能顯著減少細菌的交叉感染。
人工智能發展前景
近年來,人工智能技術已經取得了長足的進步,語音識別、自然語言識別、計算機視覺、自動推理、數據挖掘、機器學習以及機器人學都在蓬勃發展。人工智能的未來就是在智能感知的前提下,結合大數據技術自主學習,橢人們做出決策、代替重復性工作。在農業方面出現全天候全自動平臺,實現農業生產的全自動化[11]。物聯網技術在設施農業中已經得到普及,在溫室大棚中的大量智能傳感器是機器感知的基礎,而感知則是智能實現的前提之一,通過感知,農業數據源源不斷地匯集在一起。云計算的發展為大數據存儲和大規模并行計算提供了可能[12],而數據則是機器學習的書本。設施農業是物聯網、云計算、人工智能三大技術結合應用的領域之一,它們的結合顛覆了傳統農業生產方式。
面對眾多的新技術、新成果,把它們投入到生產中去才是關鍵。如何讓技術能夠適應中國復雜的農業生產環境,同時還要面對不同知識水平的用戶,這些都是人工智能技術、云計算技術等高新技術在農業生產中所面臨的問題。設施農業高產出高投入的特點,正適合應用這些新技術,這樣既可以讓新技術有實踐的機會,又可以讓其他涉農用戶對新技術有直觀的感知,這對技術進步和技術推廣都很有幫助[13]。
人工智能技術雖然前景光明,但其應用的研究才剛剛起步,離目標還很遠。未來,人工智能技術可以更好地為人們服務,改善人們的生活,并帶來巨大的社會和經濟效益[14]。在人工智能的引領下,農業已邁入數字和信息化的嶄新時代,借助其技術優勢來提高農業生產的經濟效益,是全面實現農業生產現代化、智能化、信息化的必由之路。
參考文獻
[1]李雪,肖淑蘭,趙文忠,等.信息技術在農業領域的應用分析[J].東北農業大學學報,2008,39(3):125-128.
[2]施連敏,陳志峰,蓋之華,等.物聯網在智慧農業中的應用[J].農機化研究,2013(6):250-252.
[3]劉現,鄭回勇,施能強,等.人工智能在農業生產中的應用進展[J].福建農業學報,2013,28(6):609-614.
[4]姜芳,曾碧翼.設施農業物聯網技術的應用探討與發展建議[J].農業網絡信息,2013(5):10-12.
[5]陳超,張敏,宋吉軒,等.我國設施農業現狀與發展對策分析[J].河北農業科學,2008,12(11):99-101.
[6]鄒承俊.物聯網技術在蔬菜溫室大棚生產中的應用[J].物聯網技術,2013(8):18-24.
[7]石禮娟.基于可見光/近紅外光譜的稻米質量快速無損檢測研究[D].武漢:華中農業大學,2011.
[8]張嘏偉.計算機視覺系統在番茄品質識別與分類中的研究[D].保定:河北農業大學,2005.
[9]謝靜.基于計算機視覺的蘋果自動分級方法研究[D].合肥:安徽農業大學,2011.
[10]李洪濤.基于農產品品質檢測的專用電子鼻系統的設計與研究[D].杭州:浙江大學,2010.
[11]張震,劉學瑜.我國設施農業發展現狀與對策[J].農業經濟問題,2015(5):64-70.
[12]施連敏.物聯網在智慧農業中的應用[J].農機化研究,2013(6):250-252.
關鍵詞:數據挖掘;無監督學習;有監督學習;半監督學習;遷移學習
中圖分類號:TP274文獻標識碼:A文章編號:1007-9599 (2010) 06-0000-07
Summarization of Data Mining Learning Method
Xu Rui
(Guizhou Mobile Corp. Guiyang550004,China)
Abstract: As a new domain of information technology,data mining takes full advantages of database,statistical analysis and artificial intelligence,etc.It is quit important to be familiar with data mining for decision-makers,since it is a new direction of enterprise informationization.In this article,the author summarized some common learning method of data mining,especially the new domain:transfer learning.Finally,the article briefly described difference among these learning methods.
Keywords:Data mining;Unsupervised learning;Supervised learning;Semi-supervised learning;Transfer learning
企業信息化建設經歷了辦公自動化,信息管理系統,企業資源計劃三個階段,隨著企業數據的快速增長,科學決策的廣泛應用,數據挖掘和商業智能成為企業信息化建設的新的突破點。數據挖掘綜合統計學、人工智能、數據庫技術等多學科知識,從海量的數據中迅速發掘有價值的信息。作為一個新興領域,數據挖掘的研究與應用發展迅速,但數據挖掘并不為企業決策者充分認識。本文將從學習的角度,重點介紹數據挖掘領域常見的算法。
一、引言
數據挖掘算法依據其任務特點,常被分為四類:預測建模、聚類分析、關聯分析以及異常檢測。另一方面,依據算法所適應的問題類型來分,又可以分為無監督學習(Unsupervised Learning)、有監督學習(Supervised Learning)、半監督學習(Semi-supervised Learning)以及遷移學習(Transfer Learning)。比如針對網頁的挖掘,普通用戶關注返回結果與自己需求的相關性以及結果展現的可理解性,會更加希望網絡搜索引擎進一步將相關的結果根據不同的類別分成不同的組(無監督學習);搜索引擎工程師期望借助由專家進行類別標記的網頁,建立準確的引擎,對網頁進行分類(有監督學習);為有效提高搜索結果的準確性,搜索引擎通常還會根據用戶的搜索習慣或者交互式的反饋,對結果進行篩選(半監督學習);而篩選的結果有時還會用來提供給其他具有類似習慣的用戶(遷移學習)。
二、無監督學習
聚類分析通常又被叫做無監督學習。無監督學習可以理解為學習過程中只使用到了訓練樣本的原始屬性,而未涉及到訓練樣本的類別屬性。比如電信行業根據客戶消費信息的相似性,將客戶歸為不同的類別組,并對不同的類別組設計有區別的營銷策略和增值服務,在公司內部編制不同的財務成本計算方法。在這一過程中使用的數據都是各營業廳收集的原始數據,得出的結論主要基于對原始數據的相似性歸類的結果,在這一歸類過程中不輔以任何人為的諸如添加類別標簽等指導。
無監督學習方法,或者說聚類算法,通過研究描述數據的屬性在不同數據間的相似性,將數據劃分為若干有意義的組或者是簇。無監督學習通常要達到兩個目標:1.簇內數據盡可能相似;2.簇間數據盡可能相異。為此,無監督學習方法的設計要關注兩個關鍵點:(1)如何評價數據之間的相似性或者相異性;(2)以及如何同時滿足所要達到的兩個目標。
(一)相似性度量標準
假設用于無監督學習的數據表示形式為X={X1,X2,…},其中X表示用于學習的樣本集。對于每個樣本Xi,又可以表示為一組屬性的集合Xi={xi1,xi2,…,xik},其中k表示描述每個樣本的屬性數量(或者說維度)。相似度(或相異度)的評價即是設計一個樣本之間的距離評價函數d(Xi,Xj)。
對于區間標度類數據,通??梢杂妹魇暇嚯x(式2-1)、歐式距離(式2-1中p為2)、曼哈頓距離(式2-1中p為1)。
(2-1)
對于只有0和1兩種狀態的二元變量,可以根據兩個變量Xi,Xj共同出現時0、1取值的異同,建立距離函數。若令q表示Xi,Xj都取值為1的次數;t表示兩者都取值為0的次數;r表示Xi取值為1,Xj取值為0的次數;s表示Xi取值為0,Xj取值為1的次數。則兩者的距離函數可以設計為如式2-2,計算兩個函數的不匹配率。
(2-2)
但是二元變量常常是非對稱的,意思是人們常常關注與取值為1的情況,而其他情況表示為0。比如疾病診斷中,常常把患者疾病檢測呈陽性標記為1,而結果呈陰性標記為0。這是Xi,Xj都取值為0的情況(負匹配)被認為不重要的,而只關注兩者同時為1的情況(正匹配)。這種情況下通常用Jaccard系數來表示兩者的距離函數,如式2-3。
(2-3)
多元變量是二元變量的推廣,區別在于可以取得多個狀態值。因此,相似地,多元變量的距離函數也通常采用兩個對象之間的不匹配率來計算,即Xi、Xj屬性取值不相同狀態占全部屬性的數目。如果多個狀態值之間有序,比如說比賽的排名次序,狀態的先后次序也是在設計距離函數是非常重要的。這種情況下通常,先將各個取值映射到[0.0,1.0]的區間內,一種簡單的方法就是將[0.0,1.0]劃分為M-1個區間,M為取值的總數目;然后根據每一個排序后的屬性到0.0的區間大小來度量。映射到[0.0,1.0]區間后,可以采用先前介紹的距離函數來進行評價。
由于一個樣本的屬性常常會包含多種變量類型,可能是區間標度的或者二元、多元的,甚至是非對稱的。一種常見的處理方法是將各個屬性首先進行歸一化處理,將每個屬性的取值映射到[0.0,1.0]的區間。比如,區間標量變量,距離函數通過除以最大區間差(屬性最大取值減去屬性最小取值)來實現映射。對于全部歸一化的屬性集合,樣本利用式2-4的方法進行計算。其中,Iij(k)是指示函數,若xik或xjk缺失,或者非對稱二元變量情況下取值同為0,則Iij(k)取值為0;否則取值為1。
(2-4)
文本挖掘中,由于文檔對象較為復雜,切以向量形式表示,依靠傳統的距離度量計算方式不能獲得較好的效果。一種常見的方法是利用描述相似性的余弦度量來建立距離函數,如式2-5。其中XiT表示Xi的轉置,||X||表示X的歐幾里德范數。
(2-5)
(二)學習策略
常見的聚類算法可以劃分為如下幾類:
1.劃分方法(partitioning methods):劃分方法將給定的N個對象構建出數據的k(k≤N)個劃分,要求(1)每個劃分至少包含一個對象且(2)每個對象屬于且只屬于某一組。但是在模糊劃分技術,第二點唯一性要求可以放寬。
常見的劃分方法為K均值(k-means)算法。算法的基本方法是首先初始化K個點作為初始的質心,然后迭代式地將每個點指派到距其最近的質心,形成K個簇,并計算出新的簇的質心;迭代過程持續到質心不再發生變化。
2.層次方法(hierarchical methods):層次方法創建給定數據對象集的層次分解,利用自頂向下或者自底向上的策略不斷的建立簇之間的樹狀關系。
以自底向上策略為例,首先將全部個體點作為獨立的簇,然后迭代式的合并最接近的兩個簇,并更新簇之間的關系矩陣;迭代過程持續到數據最終合并為一個簇。
3.基于密度的方法(density-based methods):基于密度方法設計的核心思想是鄰域中密度較大的點聚集在一起。這種方法可以有效的發現任意形狀的簇,而不僅僅是球狀的簇。
DBSCAN是一種常見的基于密度的方法。算法核心思想是通過檢查每個樣本點半徑不超過ε的鄰域來搜索簇,并利用密度可達關系將密度較大的臨近的簇合并起來。如果一個點的ε的鄰域中包含大于某個閾值的樣本數,則將此樣本作為這個簇的核心對象,而鄰域內的所有點對核心對象來說都是“直接密度可達”的;將直接密度可達的樣本鏈接起來,則說這些點都是密度可達;通過合并密度可達的核心對象所代表的簇,算法最終可以尋找出任意形狀的簇,并剔除噪聲點。
三、有監督學習
有監督學習常被認為是分類的另外一種說法(也有學者認為只是分類過程的第一步),這是因為建立分類模型時,總是要求用來學習的樣本具有完整的類別標簽,來指導(或者說監督)整個學習過程。通常來說,完整的分類過程由兩步組成:(1)對于有類別標簽數據的學習,以及(2)對未知類別標簽數據的預測。根據對訓練集的使用方式,有監督學習一般分為兩大類:模板匹配法和判別函數法。判別函數法依據判別函數的不同,又可以進一步分為概率統計分類法、線性分類法和非線性分類法。
(一)模版匹配法
將待分類的樣本和標準模板進行比較,看與哪個模版匹配程度更相似,從而確定待分類樣本的類別,這就是模版匹配的主要思想。比如K近鄰算法,算法的思想為:對于一個待分類的樣本,首先計算它與訓練集中所有樣本的距離,并以距離從小到大的順序選出從空間上最靠近待分類樣本的K個訓練樣本,最后依據這K個樣本中出現頻率最高的類別作為該待分類樣本的類別。再比如,在模式識別應用中,經常會在后臺數據庫中保存一定量的模版,通過尋找與待分類樣本差異最小的模版,來確定待分類樣本的類別。模版匹配法思想較為簡單,實現起來非常容易,特別是K近鄰算法,經常應用于在線算法(要求算法效率非常高)的分類算法部分。但是模版匹配算法有一個明顯的缺點就是當存儲的訓練模版非常大時,算法的存儲和計算將成為算法提高效率的瓶頸。
(二)概率統計分類法
基于概率統計的方法主要指基于Bayes決策理論的分類算法。算法的核心思想就是依據Bayes后驗概率公式,計算出待分類樣本屬于每一種類別的可能性,并找出最有可能的類別判為待分類樣本的預測類別。
任何決策都有誤判的情況,Bayes決策也不例外,如何做出最合理的判決,常常與具體問題結合。其中最具有代表性的是基于最小錯誤率的Bayes決策以及基于最小風險的Bayes決策。本節將首先介紹Bayes決策理論。
1.Bayes決策理論。
Bayes理論基于樣本中每個類別的先驗概率P(Ci)以及每個類的條件概率密度P(X|Ci)的統計,利用Bayes公式(式2-6)計算待分類樣本分屬各類別的概率(后驗概率),依據X屬于哪個類別具有最高的概率,就把X劃分到哪個類。
(2-6)
公式中,先驗概率P(X)針對某個類別出現的概率而言,可以通過統計訓練集中每個類別所占比例計算;類條件概率密度P(X|Ci)是指在某類別空間中,出現特征向量X的概率,具體應用中一般假設P(X|Ci)服從正態分布,亦即滿足式2-7,其中u為均值向量; 的協方差矩陣。
(2-7)
2.最小錯誤率的Bayes決策。
由Bayes公式可以看出,后驗概率的大小只于先驗概率和類條件概率密度的乘積P(X|Ci)P(Ci)有關。對于每次分類,總錯誤率為當X劃分為某一類時,出錯的可能性的總和。
對于兩類問題,若P(X|+)P(+)>P(X|-)P(-),亦即P(+|X)>P(-|X),可以知道,將X分為“+”類的總錯誤率(1-P(X|+)P(+))將小于將X分為“-”類的總出錯率(1-P(X|-)P(-))。對于多類的問題,依據同樣的道理,可以證明將X分為使P(Ci|X)最高的類別,可以保證決策具有最小的錯誤率。
3.最小風險的Bayes決策。
現實生活中,不一定總錯誤率越小就代表決策越好,比如藥廠判別藥品質量,若將正常藥品判別為劣質藥品,造成的損失遠小過將劣質藥品判為正常藥品的代價。此時需要對每種錯誤賦予一個風險權值,用以評價做出某種決策風險的大小。
對于某一觀測值X,當將其分為Ci類時,總風險可以表示為:
(2-8)
式中,λij表示待分類樣本X實際屬于Cj但將其錯誤分為Ci所帶來的損失。對于X,當計算出每個類別的風險函數后,選擇具有最小風險的類別作為X的分類類別。
相對于最小錯誤率的Bayes決策,最小風險的Bayes決策具有更廣泛的適應面,但是風險權值λij的制定相對較為復雜,需要根據具體問題,權衡各種損失的大小。
4.基于概率統計分類法的其他問題。
在實際應用中,類條件概率密度P(X|Ci)并不一定確切知道,潛在的值必須從可用的數據中估計。有時可能知道概率密度的類型(如高斯分布,t分布等),但不知道具體參數,此時一般采取最大似然估計或者最大后驗概率來估計;另一方面有時可能知道一些估計的參數,比如均值和方差,但是卻不知道具體的分布類型,此時可以采取最大熵估計或者采用著名的EM算法(期望最大算法)來估計類條件概率密度。
(三)線性分類法
Bayes決策分類有其不足的地方,其分類過程依賴于統計,因此更多適應于有統計知識的場合,也就是說服從一定分布的分類問題,但是現實中還有很多問題并不能滿足這個要求,分類問題的研究進而轉向如何采用非統計的方法來進行分類。
任何一個樣本點都可以表示成特征空間的一個點,任何不相同的兩個點之間都有一定距離,如果能夠找到一個面(線性或者非線性)將屬于不同類別的樣本隔開,則表示這個面的函數就可以作為分類的依據。這就是幾何分類法的思想,可以簡單理解為利用幾何方法把特征空間分解為不同類別的子空間。有時為了更好的找劃分空間的函數,常常會利用映射、投影等方法對特征空間進行轉化。
依據劃分子空間的面是否為平面,即決策函數是否為線性,可以將幾何分類方法分為兩類:線性分類法以及非線性分類法。
線性分類就是通過一個或者多個超平面,將特征空間按類別劃分為獨立子空間。用來表示超平面的決策函數可以表示為g(X)=WTX+W0,其中W表示權值向量,W0被稱為偏置(bias)。從圖像上來理解,g(X)表示圖2-1中的斜線。對于g(X)>0的點,即圖中斜線右邊的點,被劃分為正類;相反地,途中斜線左邊的點,被劃分為負類。
從系統實現角度來看,一個線性分類器可以表示成一個具有d個輸入單元,每個單元與結果具有連接權值的一個模型(圖2-2)。每個輸入特征向量乘以相應的權值,并輸出這些乘積的累加和。利用一個Sigmoid函數(圖中的output unit函數),將結果映射到{0,1}或者{-1,1}。
1.線性判別函數的形式。
對于二類問題,直接用g(X)=WTX+w0形成劃分平面,平面兩側各屬于一類,如圖2-1中的例子。
對于多類別問題,情況比較復雜,通常有以下兩種策略。
假設擁有d個類別的問題:
(1)如果對于任何一個類別Ci,利用g(X)=WTX+w0能夠區分屬于Ci以及不屬于Ci的樣本,此時分類的函數就是由每個類別的判別函數組成。此時分類函數總共有d個。若待分類樣本滿足gi(X)>0,則將其分到Ci類。若同時有多個類別使得X滿足gi(X)>0,則選取具有最大函數值的類別作為X的類別。
(2)如果任兩個類別Ci、Cj,可以通過gij(X)=WijTX+wij0區分開,則此時分類函數總共有d(d-1)/2個。對于任意的Cj,若待分類樣本滿足gij(X)>0恒成立,則將其劃分為Ci類。
2.線性判別函數系數的確定。
線性判別函數設計的關鍵問題是權值的確定,也即使判別函數系數的確定。依據一定的評價準則,線性判別函數不斷修正權值的大小,從而達到滿足評價準則的系數值。
最常見的確定線性判別函數的算法包括感知器算法、最小二乘法(LSM)以及支持向量機。
(1)感知器算法:感知器算法的原理是每次依據分錯的樣本(用Y(W)表示),依據式2-8,不斷的調整權值。感知器算法實際上就是單層神經網絡,通過訓練樣本的不斷指導,不斷的修正自己的權值。實際上分錯的樣本越少,則g(X)距離真實的判別邊界越近。
(2-9)
(2)最小二乘法:在某些情況下,盡管線性分類器不是最優的,但其效率和簡單常??梢詮浹a這些問題。因此需要利用最優化的數學方法,計算較優的性能。最小二乘法正是最優化算法在線性分類器中的應用。利用最小二乘的結論公式:W=(XTX)-1XTy,利用矩陣計算的方法解出相應的權值,并使得訓練集樣本距離超平面的均方和最小。
(3)支持向量機:感知器算法可能會收斂到不同的解,但對于要求嚴格的問題中,一個給兩測類別留了更多可自由活動的空間的決策函數顯然產生錯誤的危險更小。支持向量機理論提供了求出這樣平面的方法,通過解決優化問題:
(2-10)
使得超平面兩側擁有最大的間隔。其中滿足|WTX+w0|=1的向量叫做支持向量。
(四)非線性分類法
線性分類器具有簡單、直觀的特點,但是在現實生活中會經常遇到線性不可分的情況,比如最著名的異或(XOR)布爾函數,就無法用一個平面將兩各類別分開。最常見的非線性分類的方法有神經網絡、多項式分類器以及決策樹分類器。
1.神經網絡。
一個簡單的神經網絡由三部分組成:輸入層(input)、隱含層(hidden)以及輸出層(output),如圖2-3。
作為一個可以適應復雜問題的啟發式的統計模式識別技術,神經網絡具有強大的功能,戈爾莫戈羅夫證明只要給出足夠數量的隱含層的神經單元、適當的非線性函數以及權值,任何判決都可以利用三層神經網絡來實現。一個常見的神經網絡的算法就是利用反向傳播算法。限于篇幅,這里只介紹算法的核心思想。
反向傳播算法的基本思想主要分為三步:
第一步,初始化所有權值。
第二步,前向計算:從輸入層開始,從前往后地依次計算每個神經元的輸出,計算方式為帶限界的加權和。
第三步,后向計算與權值修正:依據輸出的結果,從輸出曾開始從后往前地依次計算出來權值修正的大小,并對全部權值進行修正。
反向傳播算法可以對空間進行較為復雜的劃分,并且可以充分利用并行的高性能計算來完成分類的工作。但是人工神經網絡需要較大的訓練集來保證結果的正確性。
2.多項式分類器。
對于一個多項式分類器,其核心思想就是進行樣本空間的轉化,將其轉化為線性分類器問題。比如針對XOR問題,原特征空間可以表示為X=[x1,x2],若引入新的特征空間,令X’=[x1,x2,x1x2]=[y1,y2,y3],則完成了從二維空間到三維空間的轉化。而對于新的空間,可以建立超平面g(x)=y1+y2-2y3-1/4正確區分兩個類別。
然而多項式分類器適用于低維空間的非線性分類問題,對于維度較大的問題,由于產生的新特征空間將過于龐大,增加了計算的復雜性。
3.決策樹。
決策樹算法的核心思想就是利用一系列的查詢來逐步地確定類別,圖2-4展現了一個判斷水果類型的決策樹。
建立一棵決策樹的過程可以看作是從不同的屬性空間,層次性的分開各個類別的數據。建立的過程如下:
(1)首先,選擇一個屬性,對訓練集進行劃分。
(2)其次,對劃分的每一個子訓練集,判斷是否滿足停止準則,比如限制樹的高度,確定根結點的純度等。
(3)最后,如果有子訓練集不滿足停止條件,算法將對該子訓練集重復這三個步驟,直到所有的訓練子集都滿足。
決策樹使用比較簡單,進行規則的匹配和查詢就可以了,而且結果非常直觀。但是對于算法實現的細節,比如停止準則的確定,進行劃分的特征的選擇等會影響分類的結果。限于篇幅,這里就不一一介紹。
四、半監督學習
區別于有監督學習要求訓練集具有完整的類別標簽,半監督學習只需要小部分訓練樣本具有類別標簽,甚至可以通過向外部的指示器(Oracle)交互式地獲得部分樣本的標簽。
同時區別于無監督學習,不要求訓練集具有類別標簽,只是通過研究樣本屬性之間的相似度進行學習,半監督學習通常依靠部分有標簽的樣本進行指導,還可以有效地提高聚類的效果。
通常半監督學習被認為是分類問題的特殊形式,因為半監督學習多關注與如何有效地利用無類別標簽數據來提高分類器的性能。但是半監督學習的研究仍然涉及到聚類、回歸等方面。
最常見的半監督學習方法是產生式模型方法(Generative Models),通常來說數據的分布可以描述為P(X,y)=P(X|y)P(y),該方法假設P(X|y)服從特定的混合分布模型(比如高斯混合分布模型)。通過大量的無標簽樣本,確定組成該混合模型的各個組成部分的參數,利用有標簽樣本的信息,來進一步確定樣本的分布。針對產生式模型的研究,在理論方面集中在以下兩個方面:
1.混合模型可識別性研究:給定某一參數向量,能否可以確定唯一的多分布混合的方式??梢灾赖氖歉咚狗植嫉幕旌夏P褪强勺R別的;與此同時,文獻[11]證明Bernoulli混合模型是不可識別的;文獻[12]在混合模型可識別性方面做了進一步的研究。
2.模型正確性研究:如果對于模型的假設是正確的,可以證明,通過充分學習無標簽的樣本有助于提升分類的精度;但是如果模型估計錯誤,無標簽樣本不會對模型精度帶來提升,甚至導致精度下降。通常會利用組合算法或者樣本降權的策略來減少模型選擇錯誤帶來的風險。在應用方面,常見的方法包括利用EM算法辨別混合組件、利用聚類算法劃分樣本空間并利用有標簽的數據標記各子空間的標簽;應用領域主要包括文本分類、文字對齊、人臉識別等。
自主訓練方法(Self-training)是半監督學習最早的研究方向之一。該方法使用一個有監督學習算法從一小批有標簽樣本開始學習,迭代地給無標簽樣本賦予標簽,并加入到訓練樣本中來。這種思想最早可以追溯到1965年。由于是一種包裹式算法,算法的性能更多依賴于所選擇的有監督學習算法的性能。自主學習方法被用于多種自然語言處理任務中,比如語義歧義的識別甚至是情感識別;同時Rosenberg等人還將自主學習應用到圖像對象識別系統中。
協同訓練(Co-training)最初是Blum和Mitchel針對諸如網頁分類等具有兩個充分冗余的視圖的半監督學習問題提出來的半監督學習算法。最初假設樣本包含兩個充分冗余的視圖,由于這一要求在實際應用中往往無法滿足,Nigam和Ghani在文獻[24]中通過實驗證明,在屬性集充分大時,可以隨機把屬性集劃分為兩個視圖,同樣可以取得不錯的效果。由于充分大屬性集要求過于嚴格,隨機劃分屬性集的效果不是非常穩定,因此,許多研究者試圖尋找不需要充分冗余視圖的協同算法。Goldman和Zhou在文獻[25]的研究建立在噪聲學習理論和統計技術之上,利用不同決策樹分類器劃分樣本空間為若干等價類。每個分類器不斷從樣例空間的等價類內找出最置信的一批樣本給予標簽,提交給另一個分類器作為訓練樣本。他們在文獻[3]中進行了擴展,使該算法可以使用多個不同類型分類器。為了進一步放松約束條件,周志華等人提出了Tri-training算法。該算法首先使用重復取樣的方法訓練三個分類器,然后不斷的利用其中兩個分類器,共同選出高置信的無標簽的樣本進行標記,來更新第三個模型。對比Goldman的方法,Tri-training算法顯著減少了大量耗時的統計測試技術。為進一步減少噪聲的影響,李明等人又在Tri-training的基礎上提出了Co-forest方法,可以更好地發揮協同學習的作用。
直推式支持向量機(Transductive Support Vector Machines,TSVM)又被叫做半監督支持向量機(Semi-Supervised Support Vector Machines,S3VM)目的是利用支持向量機技術,將決策邊界建立在遠離高密度區的空間區域,來建立P(X)與決策邊界的聯系。由于尋找準確的直推式支持向量機的解是NP難問題,許多算法都主要用于發掘近似解。其他類似的避免高密度區域進行判別的算法還包括基于高斯過程的方法(如文獻[18]),以及基于信息論的方法(如文獻[19])。
基于圖的半監督方法(Graph-based semi-supervised methods)通常將數據集描述為一張圖,圖中的結點為數據集中的樣本(有標簽或者無標簽的),結點之間的連線通常定義為樣本之間的相似度。圖方法通常利用矩陣理論或者圖算法,來尋找平滑的函數能夠最大程度上匹配有標簽樣本的分布。圖的半監督學習算法的關鍵在于建圖、以及損失函數的確定。
除了半監督分類算法,其他半監督算法還包括譜聚類(Spectral Clustering),半監督聚類(Semi-supervised Clustering),半監督回歸(Semi-supervised Regression),主動學習(Active Learning),多示例學習(Multi-Instance Learning)等。
五、遷移學習
與半監督學習類似的,遷移學習的提出也是針對訓練樣本不足的分類情況。但是半監督學習依靠具有獨立同分布的訓練樣本和待分類樣本,而遷移學習則通過借助其他領域的訓練樣本來建立分類器,為本領域的待分類樣本進行類別標簽預測。
傳統的學習方法通常依賴各自領域的訓練樣本,建立本領域的知識模型來進行領域內的學習任務,如圖2-5(a)。但是遷移學習的訓練樣本來自其他領域(比如有類別標簽樣本較為豐富的領域),通過該領域樣本的學習,抽取出來相關的知識用于本領域的分類任務,如圖2-5(b)。但是與傳統學習方式相同的是,遷移學習的目標也是分類的經驗風險最小化,只是優化經驗風險時會利用到源領域的知識。
遷移學習依賴于源領域的知識和目標領域知識分布相似,如果兩者的分布不一致,往往會引起分類性能的下降,這種現象叫做負遷移。負遷移成為使用遷移學習的最大風險,為了保證遷移學習的效果,如何降低負遷移成為遷移學習關注的一個領域。
依據有類別標簽的樣本存在的學習領域,文獻[8]將遷移學習領域分為兩類:歸納式遷移學習(Inductive Transfer Learning)和直推式遷移學習(Transductive Transfer Learning)。
(一)歸納式遷移學習
歸納式遷移學習的假設為目標領域包含有部分的帶有類別標簽的樣本。因此該領域的研究重點在于如何遷移其他領域的知識,以更好的利用目標領域中帶有類別標簽的樣本。依據遷移的手段可以分為:
1.樣本遷移:歸納式遷移學習的樣本遷移方法假設目標領域和源領域使用相同的特征空間和標簽集合,通過調整權值和重采樣技術,實現源領域部分樣本的重用。因此,此方式的核心思想是利用目標領域內的帶有類別標簽的樣本指導從源領域進行采樣,使得訓練樣本在分布上與目標領域近似。
以Tradaboost[9]為例,訓練的數據來自于源領域和目標領域,每次訓練結束對訓練結果進行評價。對于目標領域,類似于Adaboost方法提升被分錯的樣本的權值;而對源領域,則降低被分錯樣本的權值。下一輪訓練則利用調整后的樣本權值進行重采樣。最后依據分類的置信度輸出判定的類別標簽。
2.代表特征遷移:歸納式遷移學習的代表特征遷移方式假設源領域和目標領域由于任務的相關性,會共享某些特征。該方法的核心思想為通過空間映射方法(比如特征選擇,特征變換,核空間等)提升目標領域和源領域在特征領域的相似性,同時增強樣本的類別可區分性。利用優化技術,使得目標領域映射、源領域映射、參數矩陣三個角度都達到優化。
3.模型遷移:歸納式遷移學習的模型遷移方式假設由于各個領域之間的任務具有一定相關性,在一定程度上可以共享相互之間模型的參數。學習算法通過改變各個領域學習目標函數,使得各目標函數在形式上類似,甚至具有相同的重要參數,這時通過共享相同模型參數,實現目標領域的學習的優化。
4.關系知識遷移:歸納式遷移學習的關系知識遷移方法假設目標領域和源領域在樣本關系方面具有相似性。該方法首先學習源領域的關系知識,比如學生和導師以及文章三者關系;其次,建立源領域相關對象與目標領域相關對象之間映射關系,比如源領域的學生、導師和文章分別對應目標領域的演員、導演和電影;最后,將從源領域的關系知識直接或者經過變換遷移到目標領域。
該種方法具有一定的針對性,一般用于具有樣本相關性的模型中,通過遷移關系知識,提升目標領域的關系模型建立的效率和性能。
(二)直推式遷移學習
直推式遷移學習的假設為目標領域中不包含任何具有類別標簽的樣本。類似與歸納式遷移學習,直推式遷移學習也包含樣本空間和特征空間兩個研究的角度。
1.樣本遷移:由于目標領域不包含帶有類別標簽的樣本,因此樣本遷移方法是依據源領域和目標領域在分布上的差異,給源領域的樣本賦予不同的權值,盡可能接近目標領域的分布。特別地,一些基于采樣的直推式遷移學習方法假設目標領域和源領域具有相同的后驗概率,通過重采樣方法生成新的訓練集。
2.代表特征遷移:直推式遷移學習中的代表特征遷移方法依然假設目標領域和源領域具有相同的后驗概率。該方法的核心思想是通過找到一組特征能夠減少目標領域和源領域之間的距離。
直推式的代表特征遷移往往只是針對特定的問題。比如具有相同詞典的文本挖掘,文本的屬性向量相同或者類似,并以詞典分布作為依據,通過協同聚類方式遷移類別標簽。
(三)遷移學習相關問題
依據文獻[8],依據目標領域是否具有帶有類別標簽的樣本,遷移學習可以分為歸納式遷移學習(Inductive Transfer Learning)和直推式遷移學習(Transductive Transfer Learning)兩個方向。而根據源領域是否具有類別標簽樣本,以及目標領域和源領域學習任務的相似性,遷移學習還涉及到以下幾類學習問題:
自助學習(Self-taught Learning):該問題假設目標領域和源屬于不同的分布,而且類別標簽集也不相同;特別地,源領域有類別標簽的樣本較少。該方法通過找出共同的屬性集合,來實現目標領域的學習。比如圖像識別里面,各個識別任務可能不一樣,例如識別動物和識別風景。但通過聚類發現識別動物時依據對象邊緣的特征,可以有效地區分不同的動物;將該特征可以遷移到對不同風景的識別中。因此自助學習常常使用協同聚類方法找出可以遷移的特征基。
其他相關的研究方向還有:多任務學習(Multi-task Learning)、無監督遷移學習(Unsupervised Transfer Learning)、領域自適應學習(Domain Adaptation)以及樣本選擇偏差/方差遷移(Sample Selection Bias/Covariance Shift)等。在此不一一介紹。相關領域關系如圖2-6所示。
六、總結
本章從學習角度介紹了數據挖掘領域常見的四類算法。有監督學習和無監督學習是數據挖掘傳統的學習方法,依據樣本是否使用了外在的類別標簽作為指導,分別應用于不同的任務場景。由于現實生活中有類別標簽的數據往往較少或者獲取難度較大,近年來提出了包括半監督學習以及遷移學習等方法,利用無類別標簽樣本或者類似學習任務來提升有監督學習的效果和性能。
有監督學習、半監督學習、遷移學習主要的目的是為了提高分類任務的性能,圖2-7通過犀牛和大象的圖片分類任務來形象的區分了三者的核心思想。有監督學習,如圖2-7(a),通過學習具有類別標簽的大象和犀牛的圖片建立學習模型;半監督學習,如圖2-7(b),利用具有類別標簽的兩中動物的圖片以及不具備類別標簽的兩種動物的圖片建立學習模型;遷移學習,如圖2-7(c),通過學習羊與馬的圖片,建立源領域模型,并遷移到目標領域大象和犀牛的學習問題中。
參考文獻:
[1]Chapelle O,SchÄolkopf B,Zien A. Semi-Supervised Learning.MIT Press,Cambridge.MA,2006
[2]Rosenberg C,Hebert M,Schneiderman H.Semi-supervised self-training of object detection models.in Seventh IEEE Workshop on Applications of Computer Vision,2005
[3]Zhou Y,Goldman S.Democratic co-learning.in Proceedings of the 16th IEEE International Conference on Tools with Artificial Intelligence(ICTAI 2004),2004
[4]Bennett K,Demiriz A. Semi-supervised support vector machines.Advances in Neural Information Processing Systems,1999
[5]Zhu X.Semi-supervised learning with graphs.Ph.D.thesis.Carnegie Mellon University,2005
[6]Zhou Z,Xu J.On the relation between multi-instance learning and semi-supervised learning.in Proceedings of the 24th International Conference on Machine Learning,2007
[7]Duda R,Hart P,Stock D.模式分類(原書第二版).李宏東,姚天翔
[8]Pan J and Yang Q. A Survey on Transfer puter Sciences Technical Report HKUST-CS08-08,2008
[9]Dai W,Yang Q,Xue G,and Yu Y.Boosting for transfer learning.In Proceedings of the 24th International Conference on Machine Learning,2007
[10]Raina R,Battle A,Lee H,etc.Self-taught Learning:Transfer Learning from Unlabeled Data.Proceedings of the 24th International Conference on Machine Learning,2007
[11]McCallum A,Nigam K.A comparison of event models for naive bayes text classification.in AAAI-98 Workshop on Learning for Text Categorization,1998
[12]Corduneanu A,Jaakkola T. Using unlabeled data to improve text classification.Tech.Report AIM-2001-030.MIT AI Memo,2001
[13]Castelli V,Cover T.The relative value of labeled and unlabeled samples in pattern recognition with an unknown mixing parameter.in IEEE Transactions on Information Theory,1996
[14]Nigam K,McCallum A,Thrun S,Mitchell T.Text classification from labeled and unlabeled documents using em.in Machine Learning,2000
[15]Dara R,Kremer S,Stacey D.Clustering unlabeled data with soms improves classification of labeled real-world data. in World Congress on Computational Intelligence(WCCI),2002
[16]Culp M.An iterative algorithm for extending learners to a semi-supervised setting.in The 2007 Joint Statistical Meetings(JSM),2007
[17]Zhou Z,Li M.Tri-training:exploiting unlabeled data using three classifiers. in IEEE Transactions on Knowledge and Data Engineering,2005
[18]Zhu X,Lafferty J,Ghahramani Z.Semi-supervised learning: From gaussian fields to gaussian processes.Tech.Rep.CMU-CS-03-175,Carnegie Mellon University,2003
[19]Szummer M,Jaakkola T.Information regularization with partially labeled data.in Advances in Neural Information Processing Systems,2002
[20]Grira N,Crucianu M,Boujemaa N. Unsupervised and semi-supervised clustering:a brief survey.Tech.Rep.FP6.A Review of Machine Learning Techniques for Processing Multimedia Content,2004
[21]Zhou Z,Li M.Semi-supervised regression with co-training.in International Joint Conference on Artificial Intelligence(IJCAI),2005
[22]McCallum A,Nigam K.Employing em in pool-based active learning for text classification.in Proceedings of the 15th International Conference on Machine Learning,1998
[23]Blum A,Mitchell bining labeled and unlabeled data with co-training.In Proceedings of the Workshop on Computational Learning Theory (COLT),1998
[24]Nigam K,Ghani R.Analyzing the effectiveness and applicability of co-training.in Proceedings of the 9th ACM International Conference on Information and Knowledge Management(CIKM'00),2000
[25]Goldman S,Zhou Y. Enhancing supervised learning with unlabeled data.in Proceeding of the 17th International Conference on Machine Learning(ICML'00),2000
[26]Zhou Z,Li M.Tri-training: exploiting unlabeled data using three classifiers. in IEEE Transactions on Knowledge and Data Engineering,2005