早在2016年的時(shí)候,彭博社報(bào)道過,初創(chuàng)公司就已經(jīng)開始營(yíng)銷私人助理機(jī)器人——埃米·英格拉姆(Amy Ingram)。公司對(duì)外宣稱這款機(jī)器人是“能夠?yàn)槟惆才艜?huì)議的私人助理”!你只要將電子郵箱發(fā)送給埃米,埃米就能以非常甜美的語氣開始自己的私人助理工作。
當(dāng)時(shí)人們一度認(rèn)為,埃米確實(shí)比人類更適合這項(xiàng)工作。
但是,經(jīng)歷過一次又一次AI騙局之后,我們才慢慢弄明白,原來AI也是有假?,F(xiàn)在我們?cè)诳纯窗C?,如果仔?xì)觀察其廣告細(xì)則,就會(huì)發(fā)現(xiàn)人類可以隨意介入這個(gè)“人工智能”系統(tǒng)。營(yíng)銷這個(gè)機(jī)器人的公司在背后利用全天候工作的人來操控埃米。
當(dāng)然,還有比這個(gè)更早的自動(dòng)機(jī)騙局。
1770年,一個(gè)酷似真人的機(jī)械裝置——“土耳其人”,戰(zhàn)勝了絕大多數(shù)人類棋手,成為國(guó)際象棋高手。公眾對(duì)于這款機(jī)器的癡迷要遠(yuǎn)遠(yuǎn)高于之前的沃康松發(fā)明長(zhǎng)笛演奏者。有人懷疑機(jī)器里面是不是有一個(gè)小孩,但是每當(dāng)打開機(jī)器內(nèi)部,就能夠發(fā)現(xiàn)里面有很多機(jī)械齒輪在運(yùn)作,并沒有發(fā)現(xiàn)有小孩藏在里面。
“土耳其人”機(jī)器人
歷任主人對(duì)這款國(guó)際象棋高手機(jī)器的工作原理始終諱莫如深,外界對(duì)“土耳其人”歷經(jīng)多年的猜測(cè),卻還是無法揭示這款自動(dòng)機(jī)的工作原理。“土耳其人”被創(chuàng)作出的84年后,一場(chǎng)大火燒掉了“土耳其人”。后一任主人的兒子覺得保守秘密也沒有意義,于是公布了“土耳其人”的工作原理。
事實(shí)上,“土耳其人”就是一個(gè)巨大的木偶人,利用巧妙的機(jī)關(guān)構(gòu)成對(duì)觀眾的欺騙。
這些例子表明,我們不應(yīng)該接受“它采用了深度神經(jīng)網(wǎng)絡(luò)”的回答,來掩蓋所謂“人工智能”系統(tǒng)的工作原理。因?yàn)槿绻贿@樣,會(huì)讓我們陷入到一些毫無根據(jù)的人工智能炒作之中。事實(shí)上,這種“粗心”的想法讓我們輕信了像“土耳其人”這樣的騙局。
確保我們不會(huì)落入騙局和“甜蜜營(yíng)銷”陷阱的方法之一是仔細(xì)研究這些裝置背后的細(xì)節(jié)和工作原理。
在2006年之后的10年時(shí)間內(nèi),計(jì)算機(jī)識(shí)別圖像、語音等的能力已經(jīng)得到顯著地提升。甚至從某種角度上說,計(jì)算機(jī)已經(jīng)超過人類在圖像識(shí)別方面的能力,而這得益于一種叫做“深度神經(jīng)網(wǎng)絡(luò)”的技術(shù)。不僅僅如此,深度神經(jīng)網(wǎng)絡(luò)還能針對(duì)一副圖片創(chuàng)造出逼真的渲染效果。
深度神經(jīng)網(wǎng)絡(luò)本質(zhì)上就是一種輸入和輸出之間的映射關(guān)系。一旦網(wǎng)絡(luò)參數(shù)訓(xùn)練完畢,深度神經(jīng)網(wǎng)絡(luò)是一個(gè)可以預(yù)測(cè)的,是一個(gè)確定性的函數(shù)。只要隱藏層足夠多,深度神經(jīng)網(wǎng)絡(luò)理論上是可以表達(dá)任意函數(shù)。而且只要我們仔細(xì)研究,就會(huì)發(fā)現(xiàn),深度神經(jīng)網(wǎng)絡(luò)就是一個(gè)分類器。
但是了解了這些,我們還是無法知道深度神經(jīng)網(wǎng)絡(luò)在了解世界的內(nèi)部表達(dá)是什么樣,還是不知道深度神經(jīng)網(wǎng)絡(luò)在那些時(shí)候會(huì)表現(xiàn)比較差?要想了解深度神經(jīng)網(wǎng)絡(luò)的能力和局限,我們只能去了解深度神經(jīng)網(wǎng)絡(luò)背后的細(xì)節(jié)。
這里以“深度神經(jīng)網(wǎng)絡(luò)識(shí)別圖像中的狗”為例,說明深度神經(jīng)網(wǎng)絡(luò)的工作原理。
首先,需要準(zhǔn)備讓深度神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)的圖片。這些“訓(xùn)練樣例”有包含狗的圖片,也有不包含狗的圖片。而且,為了深度神經(jīng)網(wǎng)絡(luò)理解這些圖片,需要對(duì)樣例進(jìn)行數(shù)字編碼,這樣就能夠用數(shù)字來表達(dá)像素的顏色,從而用數(shù)字來描述圖片。
因?yàn)椴噬珗D片中,每個(gè)像素有三種顏色(紅、綠、藍(lán))因此,對(duì)于640×480大小的圖片,需要921600(640×480×3)個(gè)數(shù)字來表達(dá)。一旦將網(wǎng)絡(luò)的輸入設(shè)置為這些數(shù)字的時(shí)候,就可以開始運(yùn)行設(shè)計(jì)好的深度神經(jīng)網(wǎng)絡(luò)框架。這些數(shù)字會(huì)一層層地激活,直到在末端產(chǎn)生一個(gè)輸出。
可以把神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元想象成一個(gè)個(gè)打開或關(guān)閉的小燈泡。而且,當(dāng)網(wǎng)絡(luò)中神經(jīng)元的激勵(lì)水平越高,小燈泡的亮度就會(huì)越大。一旦網(wǎng)絡(luò)運(yùn)行,網(wǎng)絡(luò)中的一些神經(jīng)元就會(huì)變亮,另一些則會(huì)變暗。在深度神經(jīng)網(wǎng)絡(luò)識(shí)別狗的過程中,我們更關(guān)注網(wǎng)絡(luò)輸出的神經(jīng)元有多亮。
含有兩個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò)
假設(shè)我們?cè)O(shè)計(jì)的網(wǎng)絡(luò)的輸出層只有一個(gè)神經(jīng)元,我們稱之為“狗神經(jīng)元”。如果“狗神經(jīng)元”亮,則說明圖片中含有“狗”,反之則不含。如果亮度不暗也不亮,則認(rèn)為圖片中可能有狗,可能沒有狗。同樣,我們對(duì)“訓(xùn)練樣例”的標(biāo)簽也做數(shù)字編碼處理,通過人工標(biāo)注的方式,有狗則為“1”,無狗則為“0”。
之后,我們就需要將輸出的亮度和“訓(xùn)練樣例”的標(biāo)簽進(jìn)行對(duì)比,一個(gè)輸入的末端神經(jīng)元亮,且該輸入的標(biāo)簽為“1”,則認(rèn)為網(wǎng)絡(luò)的預(yù)測(cè)是正確。然后,根據(jù)預(yù)測(cè)結(jié)果來評(píng)估網(wǎng)絡(luò)的誤差有多大。并將誤差反向傳遞給網(wǎng)絡(luò),從而調(diào)節(jié)每個(gè)神經(jīng)元之間的權(quán)重,以便下一次預(yù)測(cè)誤差會(huì)變小。直到網(wǎng)絡(luò)預(yù)測(cè)完全正確或者絕大部分都正確,則不再調(diào)整網(wǎng)絡(luò)參數(shù)。
隨著時(shí)間的推移,網(wǎng)絡(luò)會(huì)變得越來越準(zhǔn)確。原因就在于,我們就是將預(yù)測(cè)不斷逼近我們的訓(xùn)練標(biāo)簽(真值)。這就是很多標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方式,盡管很簡(jiǎn)單,但也直到20世紀(jì)七八十年代才被人們真正理,而神經(jīng)網(wǎng)絡(luò)此前已經(jīng)存在了幾十年。
神經(jīng)網(wǎng)絡(luò)的挑戰(zhàn)就是過擬合問題。我們會(huì)經(jīng)常發(fā)現(xiàn),訓(xùn)練好的深度神經(jīng)網(wǎng)絡(luò),能夠很好應(yīng)對(duì)與訓(xùn)練樣例類似的情況,但是對(duì)于訓(xùn)練樣例中沒有出現(xiàn)的對(duì)象,深度神經(jīng)網(wǎng)絡(luò)就會(huì)表現(xiàn)得比較差。盡管它很好地匹配了訓(xùn)練數(shù)據(jù),但它不太可能很好地解釋新數(shù)據(jù),這就是過擬合的問題。
過擬合問題說明
一旦神經(jīng)網(wǎng)絡(luò)函數(shù)無線逼近訓(xùn)練樣本,模型的復(fù)雜度就會(huì)上升,其泛化能力自然變得非常差。
通常,避免過擬合問題,有兩種解決辦法:一是使用更簡(jiǎn)單的模型,即使用可調(diào)旋鈕比較少的模型;二是把更多數(shù)據(jù)用于復(fù)雜模型。目前,研究人員傾向于將這兩種辦法結(jié)合起來,使用盡可能多的數(shù)據(jù)來訓(xùn)練旋鈕較少的網(wǎng)絡(luò)。
說起更多數(shù)據(jù),不得不提一下,斯坦福大學(xué)李飛飛教授的ImageNet數(shù)據(jù)集。李飛飛之所以出名,一定程度上在于她制作了大量標(biāo)注良好的圖片。當(dāng)認(rèn)識(shí)到數(shù)據(jù)對(duì)于網(wǎng)絡(luò)訓(xùn)練會(huì)產(chǎn)生巨大作用后,李飛飛和同事開始了一個(gè)宏大的項(xiàng)目——ImageNet。到目前,這個(gè)ImageNet擁有1400萬張高分辨率的圖片,標(biāo)注的類別超過2.2萬個(gè)。
李飛飛與ImageNet數(shù)據(jù)集
這個(gè)數(shù)據(jù)集比當(dāng)時(shí)其他數(shù)據(jù)集要多出一個(gè)數(shù)量級(jí)的標(biāo)注圖片,而且還有很多細(xì)粒度標(biāo)簽,比如有達(dá)爾馬提亞犬、荷蘭毛獅犬和迷你雪納瑞犬。2010年,李飛飛組織了一場(chǎng)名為“ImageNet大規(guī)模視覺識(shí)別挑戰(zhàn)賽”的比賽,數(shù)據(jù)集采用1000個(gè)類別的140萬張圖片。比賽的前兩年,識(shí)別錯(cuò)誤率從2010年的28%下降到2011年的26%。
但是在2010年的時(shí)候,一個(gè)不被看好的成功——深度神經(jīng)網(wǎng)絡(luò),成為挑戰(zhàn)賽不可爭(zhēng)議的贏家,錯(cuò)誤率達(dá)到16%,遠(yuǎn)低于之前的26%。這個(gè)轉(zhuǎn)變思維模式的深度神經(jīng)網(wǎng)絡(luò)被稱為AlexNet,這個(gè)模型之所以表現(xiàn)出色,在于用大量的數(shù)據(jù)來訓(xùn)練不太多需要調(diào)整權(quán)重的網(wǎng)絡(luò)。
AlexNet是一個(gè)卷積神經(jīng)網(wǎng)絡(luò),通過一系列卷積層(5層),然后一系列全連接層(3層)。那么,這種網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)到底有什么奇特之處呢?
簡(jiǎn)單來說,卷積層就是通過查找圖片中的物體來轉(zhuǎn)化圖片。每個(gè)卷積層都有一組過濾器,用于查找圖片中的不同對(duì)象,比如貓、狗等。如果貓過濾器映射出的圖片都是暗的,則表示沒有找到貓。但對(duì)于第一個(gè)卷積層的過濾器來說,一般都不會(huì)識(shí)別出很復(fù)雜的物體,部分原因在于第一層的過濾器通常比較小。
AlexNet神經(jīng)網(wǎng)絡(luò)架構(gòu)
AlexNet的第一層的過濾器在11×11的像素塊中查找對(duì)象,而且采用大約100個(gè)過濾器,意味著擁有100個(gè)神奇的物體探測(cè)器。這些過濾器被稱為“邊緣探測(cè)器”,因?yàn)樗鼈兤ヅ漭敵龅氖菆D片的邊緣或者其他簡(jiǎn)單模型。AlexNet另外4個(gè)卷積層中每層都有幾百個(gè)過濾器。每一個(gè)連續(xù)的卷積層都使用前一層的過濾器作為基本構(gòu)件,將其組合成更加復(fù)雜的模式。
隨著網(wǎng)絡(luò)的不斷深入,過濾器捕捉到的成分越來越復(fù)雜。慢慢地,你可以開始分辨出物體的連貫部分,有些像毛發(fā),有些甚至像人臉。一旦穿過第5個(gè)卷積層,就開始3個(gè)全連接層。網(wǎng)絡(luò)的輸出有 1000個(gè)不同的神經(jīng)元,分別對(duì)應(yīng)ImageNet挑戰(zhàn)中的每一個(gè)類別。
激活網(wǎng)絡(luò)輸出層神經(jīng)元的圖像塊,左為大白鯊,右為沙漏
后,不出所料,點(diǎn)亮大白鯊神經(jīng)元的圖像塊似乎有大白鯊,點(diǎn)亮沙漏神經(jīng)元的圖像塊似乎有沙漏。但是這些圖片中物體并非來自任何一張圖片,而是網(wǎng)絡(luò)自己生成,以反映每個(gè)神經(jīng)元找到的內(nèi)容。
盡管目前,AlexNet并不是和高效的,但是其應(yīng)對(duì)過擬合的思維卻影響著后續(xù)神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)。
是什么讓深度神經(jīng)網(wǎng)絡(luò),尤其是AlexNet,在ImageNet比賽中表現(xiàn)得如此出色?AlexNet的網(wǎng)絡(luò)架構(gòu)真的非常完美嗎?事實(shí)上,從理論上說,一個(gè)隱藏層就能夠表達(dá)任意復(fù)雜函數(shù),那么,網(wǎng)絡(luò)真的需要這樣深嗎?
如果只有一個(gè)隱藏層,那么對(duì)于復(fù)雜問題,我們網(wǎng)絡(luò)的隱藏層將會(huì)變得非常龐大、非常寬。這就需要更多的數(shù)據(jù)來調(diào)整更多的網(wǎng)絡(luò)神經(jīng)元權(quán)重,否則就會(huì)出現(xiàn)過擬合的情況。根據(jù)《On the Number of Linear Regions of Deep Neural Networks》這篇文章的理論表明,通過讓隱藏層更深而不是更寬,能夠更加有效地表達(dá)復(fù)雜的函數(shù)。
換句話說,神經(jīng)元越少,需要學(xué)習(xí)的權(quán)重就越少!
卷積層之所以強(qiáng)大,在于其使用分布式表達(dá)來處理圖像。
卷積神經(jīng)網(wǎng)絡(luò)
那么,為什么深度比寬度有效?這個(gè)其實(shí)很好理解。通過一些基本的、少量的共享特征,比如眼睛、耳朵、眉毛、嘴巴、膚色等,可以構(gòu)建出不同的人種。這樣,前幾層就可以專注于尋找基本組件,后幾層則專注于如何組合這些基本組件。這種做法自然比一次識(shí)別出不同形象(更寬的隱藏層)要來得高效。
2012之后,很多ImageNet比賽都開始采用深度神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)思路。目前,ImageNet挑戰(zhàn)賽中的錯(cuò)誤率已經(jīng)達(dá)到2.3%,與AlexNet的16%更是精進(jìn)許多,已經(jīng)超過了人類的圖像識(shí)別能力。但是,我們也能發(fā)現(xiàn),目前很多深度神經(jīng)網(wǎng)絡(luò)的深度已經(jīng)變得越來越深,甚至達(dá)到看似荒謬的程度。
Inception v2:用兩個(gè) 3×3卷積替代 5×5
但是,谷歌曾推出22層的Inception Network,為什么沒有因?yàn)樯疃榷萑脒^擬合?原因在于谷歌研發(fā)人員發(fā)現(xiàn),卷積層的神經(jīng)元過于簡(jiǎn)單,因此采用更多復(fù)雜的微型網(wǎng)絡(luò)取而代之。更重要的是,讓每一層使用更少的參數(shù)。(例如,兩個(gè)3×3過濾器和一個(gè)1×1過濾器,以及將它們組合起來的3個(gè)權(quán)重,總共需要22個(gè)參數(shù),而一個(gè)5×5過濾器則有25個(gè)參數(shù))
之后,還有更多改善網(wǎng)絡(luò)的辦法,比如在不相鄰的卷積層之間增加連接,能夠提高網(wǎng)絡(luò)性能。比如讓神經(jīng)元在網(wǎng)絡(luò)一層內(nèi)相互加強(qiáng),比如找到了狗耳朵,就會(huì)讓其他部分更加注重尋找狗尾巴和狗腿。
總而言之,隨著科技技術(shù)的不斷發(fā)展,深度神經(jīng)網(wǎng)絡(luò)也會(huì)變得越來越有效。
目前,市面上有很多宣稱是基于深度神經(jīng)網(wǎng)絡(luò)的人工智能項(xiàng)目,但真假也的確難辨。要想分清真假人工智能系統(tǒng),需要更多關(guān)注項(xiàng)目背后的細(xì)節(jié)。
本文從深度神經(jīng)網(wǎng)絡(luò)如何識(shí)別圖像的過程入手,介紹了一個(gè)標(biāo)準(zhǔn)的深度神經(jīng)網(wǎng)絡(luò)的工作原理。之后針對(duì)深度神經(jīng)網(wǎng)絡(luò)極易出現(xiàn)的過擬合問題,說明解決過擬合問題可以用“大量的數(shù)據(jù)來訓(xùn)練不太多需要調(diào)整權(quán)重的網(wǎng)絡(luò)”的思路。
后,本文分析了為什么深度神經(jīng)網(wǎng)絡(luò)會(huì)變得如此有效,原因在于網(wǎng)絡(luò)的深度比寬度更有效。但是,即使網(wǎng)絡(luò)再深,也需要盡可能減少網(wǎng)絡(luò)需要調(diào)整的參數(shù),從而避免過擬合問題。
未來,深度神經(jīng)網(wǎng)絡(luò)必將出現(xiàn)更多更有效的網(wǎng)絡(luò)模型,要想分辨真假,只能從細(xì)節(jié)入手!你們?cè)趺纯创斯ぶ悄苡屑俚膯栴},歡迎在下方留言評(píng)論。
上一篇: 防爆電油汀使用小常識(shí)
下一篇: 高低壓配電裝置的安裝與維修
違法和不良信息舉報(bào)投訴電話:0377-62377728 舉報(bào)郵箱:fbypt@m.4729d.com
網(wǎng)絡(luò)警察提醒你 a>
中國(guó)互聯(lián)網(wǎng)舉報(bào)中心
網(wǎng)絡(luò)舉報(bào)APP下載
掃黃打非網(wǎng)舉報(bào)專區(qū)