詳解人工智能芯片 CPU/GPU/FPGA有何差異?
在深度學(xué)習(xí)的領(lǐng)域里,最重要的是數(shù)據(jù)和運(yùn)算。誰的數(shù)據(jù)更多,誰的運(yùn)算更快,誰就會(huì)占據(jù)優(yōu)勢。因此,在處理器的選擇上,可以用于通用基礎(chǔ)計(jì)算且運(yùn)算速率更快的GPU迅速成為人工智能計(jì)算的主流芯片??梢哉f,在過去的幾年,尤其是2015年以來,人工智能大爆發(fā)就是由于英偉達(dá)公司的GPU得到廣泛應(yīng)用……
本文引用地址:http://butianyuan.cn/article/201704/346122.htm一、人工智能與深度學(xué)習(xí)
2016年,AlphaGo與李世石九段的圍棋對(duì)決無疑掀起了全世界對(duì)人工智能領(lǐng)域的新一輪關(guān)注。在與李世石對(duì)戰(zhàn)的5個(gè)月之前,AlphaGo因擊敗歐洲圍棋冠軍樊麾二段,圍棋等級(jí)分上升至3168分,而當(dāng)時(shí)排名世界第二的李世石是3532分。按照這個(gè)等級(jí)分?jǐn)?shù)對(duì)弈,AlphaGo每盤的勝算只有約11%,而結(jié)果是3個(gè)月之后它在與李世石對(duì)戰(zhàn)中以4比1大勝。AlphaGo的學(xué)習(xí)能力之快,讓人惶恐。
1.人工智能:讓機(jī)器像人一樣思考
自AlphaGo之后,“人工智能”成為2016年的熱詞,但早在1956年,幾個(gè)計(jì)算機(jī)科學(xué)家就在達(dá)特茅斯會(huì)議上首次提出了此概念。他們夢想著用當(dāng)時(shí)剛剛出現(xiàn)的計(jì)算機(jī)來構(gòu)造復(fù)雜的、擁有與人類智慧同樣本質(zhì)特性的機(jī)器,也就是我們今日所說的“強(qiáng)人工智能”。這個(gè)無所不能的機(jī)器,它有著我們所有的感知、所有的理性,甚至可以像我們一樣思考。
人們?cè)陔娪袄镆部偸强吹竭@樣的機(jī)器:友好的,像星球大戰(zhàn)中的C-3PO;邪惡的,如終結(jié)者。強(qiáng)人工智能目前還只存在于電影和科幻小說中,原因不難理解,我們還沒法實(shí)現(xiàn)它們,至少目前還不行。
我們目前能實(shí)現(xiàn)的,一般被稱為“弱人工智能”。弱人工智能是能夠與人一樣,甚至比人更好地執(zhí)行特定任務(wù)的技術(shù)。例如,Pinterest上的圖像分類,或者Facebook的人臉識(shí)別。這些人工智能技術(shù)實(shí)現(xiàn)的方法就是“機(jī)器學(xué)習(xí)”。
2.機(jī)器學(xué)習(xí):使人工智能真實(shí)發(fā)生
人工智能的核心就是通過不斷地機(jī)器學(xué)習(xí),而讓自己變得更加智能。機(jī)器學(xué)習(xí)最基本的做法,是使用算法來解析數(shù)據(jù)、從中學(xué)習(xí),然后對(duì)真實(shí)世界中的事件做出決策和預(yù)測。與傳統(tǒng)的為解決特定任務(wù)、硬編碼的軟件程序不同,機(jī)器學(xué)習(xí)是用大量的數(shù)據(jù)來“訓(xùn)練”,通過各種算法從數(shù)據(jù)中學(xué)習(xí)如何完成任務(wù)。
機(jī)器學(xué)習(xí)最成功的應(yīng)用領(lǐng)域是計(jì)算機(jī)視覺,雖然也還是需要大量的手工編碼來完成工作。以識(shí)別停止標(biāo)志牌為例:人們需要手工編寫形狀檢測程序來判斷檢測對(duì)象是不是有八條邊;寫分類器來識(shí)別字母“S-T-O-P”。使用以上這些手工編寫的分類器與邊緣檢測濾波器,人們總算可以開發(fā)算法來識(shí)別標(biāo)志牌從哪里開始、到哪里結(jié)束,從而感知圖像,判斷圖像是不是一個(gè)停止標(biāo)志牌。
這個(gè)結(jié)果還算不錯(cuò),但并不是那種能讓人為之一振的成功。特別是遇到霧霾天,標(biāo)志牌變得不是那么清晰可見,又或者被樹遮擋一部分,算法就難以成功了。這就是為什么很長一段時(shí)間,計(jì)算機(jī)視覺的性能一直無法接近到人的能力。它太僵化,太容易受環(huán)境條件的干擾。
3.人工神經(jīng)網(wǎng)絡(luò):賦予機(jī)器學(xué)習(xí)以深度
人工神經(jīng)網(wǎng)絡(luò)是早期機(jī)器學(xué)習(xí)中的一個(gè)重要的算法,歷經(jīng)數(shù)十年風(fēng)風(fēng)雨雨。神經(jīng)網(wǎng)絡(luò)的原理是受我們大腦的生理結(jié)構(gòu)——互相交叉相連的神經(jīng)元啟發(fā)。但與大腦中一個(gè)神經(jīng)元可以連接一定距離內(nèi)的任意神經(jīng)元不同,人工神經(jīng)網(wǎng)絡(luò)具有離散的層,每一次只連接符合數(shù)據(jù)傳播方向的其它層。
例如,我們可以把一幅圖像切分成圖像塊,輸入到神經(jīng)網(wǎng)絡(luò)的第一層。在第一層的每一個(gè)神經(jīng)元都把數(shù)據(jù)傳遞到第二層。第二層的神經(jīng)元也是完成類似的工作,把數(shù)據(jù)傳遞到第三層,以此類推,直到最后一層,然后生成結(jié)果。
每一個(gè)神經(jīng)元都為它的輸入分配權(quán)重,這個(gè)權(quán)重的正確與否與其執(zhí)行的任務(wù)直接相關(guān)。最終的輸出由這些權(quán)重加總來決定。
我們?nèi)砸酝V箻?biāo)志牌為例:將一個(gè)停止標(biāo)志牌圖像的所有元素都打碎,然后用神經(jīng)元進(jìn)行“檢查”:八邊形的外形、救火車般的紅顏色、鮮明突出的字母、交通標(biāo)志的典型尺寸和靜止不動(dòng)運(yùn)動(dòng)特性等等。神經(jīng)網(wǎng)絡(luò)的任務(wù)就是給出結(jié)論,它到底是不是一個(gè)停止標(biāo)志牌。神經(jīng)網(wǎng)絡(luò)會(huì)根據(jù)所有權(quán)重,給出一個(gè)經(jīng)過深思熟慮的猜測——“概率向量”。
這個(gè)例子里,系統(tǒng)可能會(huì)給出這樣的結(jié)果:86%可能是一個(gè)停止標(biāo)志牌;7%的可能是一個(gè)限速標(biāo)志牌;5%的可能是一個(gè)風(fēng)箏掛在樹上等等。然后網(wǎng)絡(luò)結(jié)構(gòu)告知神經(jīng)網(wǎng)絡(luò),它的結(jié)論是否正確。
即使是這個(gè)例子,也算是比較超前了。直到前不久,神經(jīng)網(wǎng)絡(luò)也還是為人工智能圈所淡忘。其實(shí)在人工智能出現(xiàn)的早期,神經(jīng)網(wǎng)絡(luò)就已經(jīng)存在了,但神經(jīng)網(wǎng)絡(luò)對(duì)于“智能”的貢獻(xiàn)微乎其微。主要問題是,即使是最基本的神經(jīng)網(wǎng)絡(luò),也需要大量的運(yùn)算,而這種運(yùn)算需求難以得到滿足。
4.深度學(xué)習(xí):剔除神經(jīng)網(wǎng)絡(luò)之誤差
深度學(xué)習(xí)由人工神經(jīng)網(wǎng)絡(luò)衍生而來,是一種需要訓(xùn)練的具有大型神經(jīng)網(wǎng)絡(luò)的多隱層層次結(jié)構(gòu),其每層相當(dāng)于一個(gè)可以解決問題不同方面的機(jī)器學(xué)習(xí)。利用這種深層非線性的網(wǎng)絡(luò)結(jié)構(gòu),深度學(xué)習(xí)可以實(shí)現(xiàn)復(fù)雜函數(shù)的逼近,將表征輸入數(shù)據(jù)分布式表示,繼而展現(xiàn)強(qiáng)大的從少數(shù)樣本集中學(xué)習(xí)數(shù)據(jù)集本質(zhì)特征的能力,并使概率向量更加收斂。
簡單來說,深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)對(duì)數(shù)據(jù)的處理方式和學(xué)習(xí)方式與人類大腦的神經(jīng)元更加相似,比傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)更準(zhǔn)確。
我們回過頭來看這個(gè)停止標(biāo)志識(shí)別的例子:深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)從成百上千甚至幾百萬張停止標(biāo)志圖像中提取表征數(shù)據(jù),通過重復(fù)訓(xùn)練將神經(jīng)元輸入的權(quán)重調(diào)制得更加精確,無論是否有霧,晴天還是雨天,每次都能得到正確的結(jié)果。只有這個(gè)時(shí)候,我們才可以說神經(jīng)網(wǎng)絡(luò)成功地自學(xué)習(xí)到一個(gè)停止標(biāo)志的樣子。
Google的AlphaGo也是先學(xué)會(huì)了如何下圍棋,然后通過不斷地與自己下棋,訓(xùn)練自己的神經(jīng)網(wǎng)絡(luò),這種訓(xùn)練使得AlphaGo成功在三個(gè)月后擊敗了等級(jí)分?jǐn)?shù)更高的李世石。
二、深度學(xué)習(xí)的實(shí)現(xiàn)
深度學(xué)習(xí)仿若機(jī)器學(xué)習(xí)最頂端的鉆石,賦予人工智能更璀璨的未來。其摧枯拉朽般地實(shí)現(xiàn)了各種我們?cè)?jīng)想都不敢想的任務(wù),使得幾乎所有的機(jī)器輔助功能都變?yōu)榭赡?。更好的電影推薦、智能穿戴,甚至無人駕駛汽車、預(yù)防性醫(yī)療保健,都近在眼前,或者即將實(shí)現(xiàn)。人工智能就在現(xiàn)在,就在明天。你的C-3PO我拿走了,你有你的終結(jié)者就好。
但是正如前面提到的,人工神經(jīng)網(wǎng)絡(luò),即深度學(xué)習(xí)的前身,已經(jīng)存在了近三十年,但直到最近的5到10年才再次興起,這又是因?yàn)槭裁?
1.突破局限的學(xué)習(xí)算法
20世紀(jì)90年代,包括支撐向量機(jī)(SVM)與最大熵方法(LR)在內(nèi)的眾多淺層機(jī)器學(xué)習(xí)算法相繼提出,使得基于反向傳播算法(BP)的人工神經(jīng)網(wǎng)絡(luò)因難以彌補(bǔ)的劣勢漸漸淡出人們的視線。直到 2006年,加拿大多倫多大學(xué)教授、機(jī)器學(xué)習(xí)領(lǐng)域的泰斗 Geoffrey Hinton 和他的學(xué)生在《科學(xué)》上發(fā)表了一篇文章,解決了反向傳播算法存在的過擬合與難訓(xùn)練的問題,從而開啟了深度學(xué)習(xí)在學(xué)術(shù)界和工業(yè)界的浪潮。
深度學(xué)習(xí)的實(shí)質(zhì),是通過構(gòu)建具有很多隱層的機(jī)器學(xué)習(xí)模型和海量的訓(xùn)練數(shù)據(jù),來學(xué)習(xí)更有用的特征,從而最終提升分類或預(yù)測的準(zhǔn)確性。因此,“深度模型”是手段,“特征學(xué)習(xí)”是目的。區(qū)別于傳統(tǒng)的淺層學(xué)習(xí),深度學(xué)習(xí)的不同在于:
·強(qiáng)調(diào)了模型結(jié)構(gòu)的深度,通常有5層、6層,甚至10多層的隱層節(jié)點(diǎn);
·明確突出了特征學(xué)習(xí)的重要性,也就是說,通過逐層特征變換,將樣本在原空間的特征表示變換到一個(gè)新特征空間,從而使分類或預(yù)測更加容易。
這種算法的差別提升了對(duì)訓(xùn)練數(shù)據(jù)量和并行計(jì)算能力的需求,而在當(dāng)時(shí),移動(dòng)設(shè)備尚未普及,這使得非結(jié)構(gòu)化數(shù)據(jù)的采集并不是那么容易。
評(píng)論