深度學(xué)習(xí)是近十年來人工智能領(lǐng)域取得的重要突破。它在語音識別、自然語言處理、計算機視覺、圖像與視頻分析、多媒體等諸多領(lǐng)域的應(yīng)用取得了巨大成功?,F(xiàn)有的深度學(xué)習(xí)模型屬于神經(jīng)網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)的起源可追溯到20世紀40年代,曾經(jīng)在八九十年代流行。神經(jīng)網(wǎng)絡(luò)試圖通過模擬大腦認知的機理解決各種機器學(xué)習(xí)問題。1986年,魯梅爾哈特(Rumelhart)、欣頓(Hinton)和威廉姆斯(Williams)在《自然》雜志發(fā)表了的反向傳播算法用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),該算法直到今天仍被廣泛應(yīng)用。
深度學(xué)習(xí)有何與眾不同?
深度學(xué)習(xí)和其他機器學(xué)習(xí)方法相比有哪些關(guān)鍵的不同點,它為何能在許多領(lǐng)域取得成功?
特征
深度學(xué)習(xí)與傳統(tǒng)模式識別方法的zui大不同在于它所采用的特征是從大數(shù)據(jù)中自動學(xué)習(xí)得到,而非采用手工設(shè)計。好的特征可以提高模式識別系統(tǒng)的性能。過去幾十年,在模式識別的各種應(yīng)用中,手工設(shè)計的特征一直處于統(tǒng)治地位。手工設(shè)計主要依靠設(shè)計者的先驗知識,很難利用大數(shù)據(jù)的優(yōu)勢。由于依賴手工調(diào)參數(shù),因此特征的設(shè)計中所允許出現(xiàn)的參數(shù)數(shù)量十分有限。深度學(xué)習(xí)可以從大數(shù)據(jù)中自動學(xué)習(xí)特征的表示,可以包含成千上萬的參數(shù)。
采用手工設(shè)計出有效的特征往往需要五到十年時間,而深度學(xué)習(xí)可以針對新的應(yīng)用從訓(xùn)練數(shù)據(jù)中很快學(xué)習(xí)到新的有效的特征表示。
一個模式識別系統(tǒng)包括特征和分類器兩部分。在傳統(tǒng)方法中,特征和分類器的優(yōu)化是分開的。而在神經(jīng)網(wǎng)絡(luò)的框架下,特征表示和分類器是聯(lián)合優(yōu)化的,可以zui大程度地發(fā)揮二者聯(lián)合協(xié)作的性能。
2012年欣頓參加ImageNet比賽所采用的卷積網(wǎng)絡(luò)模型的特征表示包含了從上百萬樣本中學(xué)習(xí)得到的6000萬個參數(shù)。從ImageNet上學(xué)習(xí)得到的特征表示具有非常強的泛化能力,可以成功應(yīng)用到其他數(shù)據(jù)集和任務(wù)中,例如物體的檢測、跟蹤和檢索等。在計算機視覺領(lǐng)域另外一個的競賽是PSACAL VOC。但是它的訓(xùn)練集規(guī)模較小,不適合訓(xùn)練深度學(xué)習(xí)模型。有學(xué)者將ImageNet上學(xué)習(xí)得到的特征表示用于PSACAL VOC上的物體檢測,檢測率提高了20%。
既然特征學(xué)習(xí)如此重要,那么,什么是好的特征呢?一幅圖像中,各種復(fù)雜的因素往往以非線性的方式結(jié)合在一起。例如人臉圖像中就包含了身份、姿態(tài)、年齡、表情、光線等各種信息。深度學(xué)習(xí)的關(guān)鍵就是通過多層非線性映射將這些因素成功分開,例如在深度模型的zui后一個隱含層,不同神經(jīng)元代表了不同因素。如果將這個隱含層當作特征表示,人臉識別、姿態(tài)估計、表情識別、年齡估計就會變得非常簡單,因為各個因素之間變成了簡單的線性關(guān)系,不再彼此干擾。
深層結(jié)構(gòu)的優(yōu)勢
深度學(xué)習(xí)模型的“深”字意味著神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)深,由很多層組成。而支持向量機和Boosting等其他常用的機器學(xué)習(xí)模型都是淺層結(jié)構(gòu)。三層神經(jīng)網(wǎng)絡(luò)模型(包括輸入層、輸出層和一個隱含層)可以近似任何分類函數(shù)。既然如此,為什么需要深層模型呢?
研究表明,針對特定的任務(wù),如果模型的深度不夠,其所需要的計算單元會呈指數(shù)增加。這意味著雖然淺層模型可以表達相同的分類函數(shù),但其需要的參數(shù)和訓(xùn)練樣本要多得多。淺層模型提供的是局部表達。它將高維圖像空間分成若干個局部區(qū)域,每個局部區(qū)域至少存儲一個從訓(xùn)練數(shù)據(jù)中獲得的模板。淺層模型將一個測試樣本和這些模板逐一匹配,根據(jù)匹配的結(jié)果預(yù)測其類別。例如,在支持向量機模型中,模板是支持向量;在zui近鄰分類器中,模板是所有的訓(xùn)練樣本。隨著分類問題復(fù)雜度的增加,需要將圖像空間劃分成越來越多的局部區(qū)域,因而需要越來越多的參數(shù)和訓(xùn)練樣本。盡管目前許多深度模型的參數(shù)量已經(jīng)相當巨大,但如果換成淺層神經(jīng)網(wǎng)絡(luò),其所需要的參數(shù)量要大出多個數(shù)量級才能達到相同的數(shù)據(jù)擬合效果,以至于很難實現(xiàn)。
深度模型之所以能減少參數(shù)的關(guān)鍵在于重復(fù)利用中間層的計算單元。以人臉識別為例,深度學(xué)習(xí)可以針對人臉圖像的分層特征表達進行:zui底層從原始像素開始學(xué)習(xí)濾波器,刻畫局部的邊緣和紋理特征;中層濾波器通過將各種邊緣濾波器進行組合,描述不同類型的人臉器官;zui高層描述的是整個人臉的全局特征。
深度學(xué)習(xí)提供的是分布式的特征表示。在zui高的隱含層,每個神經(jīng)元代表一個屬性分類器,例如性別、人種和頭發(fā)顏色等。每個神經(jīng)元將圖像空間一分為二,N個神經(jīng)元的組合就可以表達2N個局部區(qū)域,而用淺層模型表達這些區(qū)域的劃分至少需要2N個模板。由此可以看出,深度模型的表達能力更強,效率更高。
提取全局特征和上下文信息的能力
深度模型具有強大的學(xué)習(xí)能力和的特征表達能力,更重要的優(yōu)點是從像素級原始數(shù)據(jù)到抽象的語義概念逐層提取信息,這使得它在提取圖像的全局特征和上下文信息方面具有突出的優(yōu)勢,為解決傳統(tǒng)的計算機視覺問題(如圖像分割和關(guān)鍵點檢測)帶來了新的思路。
以人臉的圖像分割為例,為了預(yù)測每個像素屬于哪個臉部器官(眼睛、鼻子、嘴),通常的做法是在該像素周圍取一個小區(qū)域,提取紋理特征(例如局部二值模式),再基于該特征利用支持向量機等淺層模型分類。因為局部區(qū)域包含的信息量有限,往往產(chǎn)生分類錯誤,因此要對分割后的圖像加入平滑和形狀先驗等約束。
人眼即使在存在局部遮擋的情況下也可以根據(jù)臉部其他區(qū)域的信息估計被遮擋部分的標注。由此可知全局和上下文信息對于局部的判斷是非常重要的,而這些信息在基于局部特征的方法中在zui開始階段就丟失了。理想情況下,模型應(yīng)該將整幅圖像作為輸入,直接預(yù)測整幅分割圖。圖像分割可以被看做一個高維數(shù)據(jù)轉(zhuǎn)換的問題來解決。這樣不但利用到了上下文信息,模型在高維數(shù)據(jù)轉(zhuǎn)換過程中也隱式地加入了形狀先驗。但是由于整幅圖像內(nèi)容過于復(fù)雜,淺層模型很難有效地捕捉全局特征。而深度學(xué)習(xí)的出現(xiàn)使這一思路成為可能,在人臉分割、人體分割、人臉圖像配準和人體姿態(tài)估計等各個方面都取得了成功。
聯(lián)合深度學(xué)習(xí)
一些研究計算機視覺的學(xué)者將深度學(xué)習(xí)模型視為黑盒子,這種看法是不全面的。傳統(tǒng)計算機視覺系統(tǒng)和深度學(xué)習(xí)模型存在著密切的,利用這種可以提出新的深度模型和訓(xùn)練方法。用于行人檢測的聯(lián)合深度學(xué)習(xí)就是一個成功的例子。一個計算機視覺系統(tǒng)包含若干個關(guān)鍵的組成模塊。例如,一個行人檢測器包括特征提取、部件檢測器、部件幾何形變建模、部件遮擋推理、分類器等模塊。在聯(lián)合深度學(xué)習(xí)中,深度模型的各個層和視覺系統(tǒng)的各個模塊可以建立對應(yīng)關(guān)系。如果視覺系統(tǒng)中的關(guān)鍵模塊在現(xiàn)有深度學(xué)習(xí)的模型中沒有與之對應(yīng)的層,則它們可以啟發(fā)我們提出新的深度模型。例如,大量物體檢測的研究工作表明,對物體部件的幾何形變建模可以有效提高檢測率,但是在常用的深度模型中沒有與之相對應(yīng)的層,因此聯(lián)合深度學(xué)習(xí)及其后續(xù)的工作都提出了新的形變層和形變池化層來實現(xiàn)這一功能。
從訓(xùn)練方式上看,計算機視覺系統(tǒng)的各個模塊是逐一訓(xùn)練或手工設(shè)計的。在深度模型的預(yù)訓(xùn)練階段,各個層也是逐一訓(xùn)練的。如果我們能夠建立計算機視覺系統(tǒng)和深度模型之間的對應(yīng)關(guān)系,那么在視覺研究中積累的經(jīng)驗就可以對深度模型的預(yù)訓(xùn)練提供指導(dǎo)。這樣預(yù)訓(xùn)練后得到的模型就可以達到與傳統(tǒng)計算機視覺系統(tǒng)可比的結(jié)果。在此基礎(chǔ)上,深度學(xué)習(xí)還會利用反向傳播對所有層進行聯(lián)合優(yōu)化,使它們之間的相互協(xié)作達到*,從而使整個網(wǎng)絡(luò)的性能得到重大提升。