這是 MIT 出版社 Essential Knowledge 系列中《Machine Learning: The New AI》的第一章何暮。
當(dāng)初讀很有啟發(fā),最近開始重新學(xué) ML铐殃,便用空閑時間翻譯過來海洼。
這篇最有意思的兩點。第一富腊,從計算機(jī)發(fā)展的角度來解釋當(dāng)前這個大數(shù)據(jù)+AI 時代的產(chǎn)生坏逢。比起之前我看一些只是提到 Data + Computation 的直接說法,這無疑更讓人有種豁然開朗的感覺,因為現(xiàn)在這些很熱的詞匯 AI是整,大數(shù)據(jù)肖揣,物聯(lián)網(wǎng)什么,都跟基礎(chǔ)的計算發(fā)展有關(guān)浮入,如果我們了解這些龙优,那么對它們之間的連接也就更直觀,而不是松散的概念事秀。
第二彤断,關(guān)于如何從大腦中獲得智能理論,之后在進(jìn)行不同硬件實現(xiàn)的設(shè)想易迹。腦洞有點大宰衙,挺有意思的。
數(shù)字化的力量
在過去半世紀(jì)里赴蝇,計算與數(shù)字技術(shù)給我們生活帶來巨大轉(zhuǎn)變菩浙。幾世紀(jì)前發(fā)明的工具,設(shè)備和服務(wù)句伶,現(xiàn)在越來越多地被其數(shù)字化的“e-”版本所取代劲蜻,而我們自身也在不斷地適應(yīng)這種數(shù)字環(huán)境。
這種轉(zhuǎn)變非常之快:曾經(jīng)計算機(jī)價格昂貴考余,只有大組織先嬉,如政府,大公司楚堤,大學(xué)能負(fù)擔(dān)得起疫蔓。那時也只有這些組織要計算機(jī)來解決一些難題,還能承擔(dān)得起采購和維護(hù)的高成本身冬。那時衅胀,計算機(jī)“中心”,分布在不同樓層或建筑酥筝,里面容納著耗電量巨大的龐然大物滚躯,在大廳里,磁帶轉(zhuǎn)動嘿歌,卡片打孔掸掏,數(shù)字被咀嚼,Bug (本義蟲子宙帝,又常指程序中的故障) 還是真正的蟲子丧凤。
很快,隨著計算機(jī)越來越廉價步脓,可供更多人使用了愿待,于是其應(yīng)用領(lǐng)域也得到了擴(kuò)大浩螺。一開始計算機(jī)只是個計算器,用來加減乘除數(shù)字呼盆,現(xiàn)在卻花樣百出年扩。或許計算機(jī)技術(shù)的主要驅(qū)動力便是访圃,當(dāng)人們意識到每條信息都可數(shù)字化厨幻。這意味著之前處理數(shù)字的計算機(jī),也能用于處理所有類型的信息(數(shù)字化的)了腿时。
更確切說况脆,計算機(jī)將每個數(shù)字表示為0或1的二進(jìn)制數(shù)(比特)序列,之后這種序列也能表示其他信息批糟。例如格了,“101100”可表示數(shù)字 44,同時也是逗號的代碼; 同樣徽鼎,“1000001”同時是 65 和大寫字母'A'盛末。根據(jù)環(huán)境,計算機(jī)程序用其中一種解釋來操作序列否淤。
事實上悄但,此類比特序列不僅可代表數(shù)字和文本,還能代表其他類型的信息 - 例如石抡,照片的顏色或歌曲的色調(diào)檐嚣,甚至計算機(jī)程序本身就是比特序列。此外啰扛,與這些信息相關(guān)聯(lián)的操作(例如使圖像更亮或在照片中找到面部)也能被轉(zhuǎn)換為操縱比特序列的命令序列嚎京。
計算機(jī)存儲數(shù)據(jù)
計算機(jī)的強(qiáng)大之處在于每條信息都能數(shù)字化表示,并且對于這些表示隐解,都能寫成出計算機(jī)指令來進(jìn)行操作鞍帝。
這就導(dǎo)致了20世紀(jì)60年代數(shù)據(jù)庫的出現(xiàn)。數(shù)據(jù)庫是用于存儲和操縱數(shù)據(jù)的特殊程序煞茫。此外還有些外存儲設(shè)備膜眠,比如磁帶或磁盤,以磁性方式存儲數(shù)據(jù)溜嗜,即使關(guān)機(jī)內(nèi)容也不會被擦除。
有了數(shù)據(jù)庫架谎,計算機(jī)就不再只是處理信息的工具炸宵,更成了數(shù)字化信息的存儲庫。隨著時間推移谷扣,數(shù)字媒體變得越來越快速土全,廉價和可靠捎琐,以至于取代了紙,成了人類信息存儲的主要手段裹匙。
之后瑞凑,微處理器的發(fā)明,以及其小型化和成本減少的并行發(fā)展概页,20世紀(jì)80年代初起籽御,個人計算機(jī)越來越普及。這使得小型企業(yè)也能使用計算機(jī)了惰匙,但最重要的是計算機(jī)體積小且便宜技掏,足以讓其成為日常家用電器了。這讓每個人發(fā)現(xiàn)了值得計算機(jī)處理的任務(wù)项鬼,于是應(yīng)用程序大量增長哑梳,隨后便是數(shù)字技術(shù)民主化時代的到來。
圖形化界面和鼠標(biāo)使計算機(jī)更易使用绘盟。我們不用學(xué)習(xí)編程鸠真,也不用記住各種復(fù)雜的指令。屏幕就是工作環(huán)境的數(shù)字模擬龄毡,有虛擬桌面吠卷,有文件,有圖標(biāo)稚虎,甚至有垃圾桶撤嫩,鼠標(biāo)就是虛擬手,可以用它來選擇蠢终,閱讀或編輯序攘。
同時,軟件也從商業(yè)應(yīng)用轉(zhuǎn)向了個人應(yīng)用寻拂,通過處理更多類型數(shù)據(jù)程奠,讓生活更加數(shù)字化了。我們有文字處理器(Word)來處理信件和其他個人文件祭钉,有電子表格(Excel)來處理家用計算瞄沙,還有音樂或攝影等愛好的軟件;如果想慌核,還能用它來玩游戲距境!計算已經(jīng)成了日常。
用戶界面垮卓,還有各種日常應(yīng)用垫桂,意味著人與計算機(jī)之間的一種和解,過去所熟悉的現(xiàn)實世界和數(shù)字世界的和解粟按。計算機(jī)被編程得更好地適應(yīng)我們的生活诬滩,而我們也慢慢地一點點去適應(yīng)它們霹粥。隨著時間推移,使用電腦已是基本技能疼鸟。
個人計算機(jī)使數(shù)字技術(shù)成為生活中的一個重要部分后控,對于這里要講到的故事而言,最重要的是它讓生活更多地被以數(shù)字方式記錄下來空镜。因此浩淘,它是將我們生活數(shù)據(jù)化中很重要的基石,之后這些數(shù)據(jù)可用來分析和學(xué)習(xí)姑裂。
計算機(jī)交換數(shù)據(jù)
計算機(jī)的下一個重要發(fā)展便是連通性馋袜。雖然,之前有通過數(shù)據(jù)傳輸器連接計算機(jī)交換信息舶斧,但通過電話線或?qū)S镁€路欣鳖,將個人計算機(jī)彼此連接或連接到服務(wù)器的商業(yè)系統(tǒng),卻要等到90年代才普及起來茴厉。
計算機(jī)網(wǎng)絡(luò)意味著計算機(jī)不再是孤立的了泽台,而可以與遠(yuǎn)程的計算機(jī)交換數(shù)據(jù)。用戶不再局限于訪問自己計算機(jī)的數(shù)據(jù)矾缓,還能訪問其他地方的數(shù)據(jù)怀酷,如果想,也能將數(shù)據(jù)分享給其他用戶嗜闻。
計算機(jī)網(wǎng)絡(luò)的發(fā)展很快便在因特網(wǎng)中到達(dá)了頂峰蜕依,因特網(wǎng)是一個覆蓋全球的計算機(jī)網(wǎng)絡(luò)。因特網(wǎng)使世界上任何能用計算機(jī)的人琉雳,都能向其他任何人發(fā)送電子郵件等信息样眠。而且因為所有數(shù)據(jù)和設(shè)備都已數(shù)字化,于是可共享的信息就不僅僅是文本和數(shù)字翠肘;還能是圖像檐束,視頻,音樂以及其他任何東西束倍。
通過計算機(jī)網(wǎng)絡(luò)被丧,數(shù)字化信息能以光速發(fā)給在任何地方的任何人。至此绪妹,計算機(jī)就不再僅僅只是存儲和處理數(shù)據(jù)的機(jī)器甥桂,它也成為了傳輸和共享信息的手段。計算機(jī)網(wǎng)絡(luò)發(fā)展很快邮旷,數(shù)字通信慢慢變得廉價格嘁,快速和可靠,以至于數(shù)字傳輸已取代實體郵件廊移,成了信息傳輸?shù)闹饕绞健?/p>
任何“在線”的人都能在計算機(jī)上通過網(wǎng)絡(luò)向其他人分享數(shù)據(jù)糕簿,這便是萬維網(wǎng)誕生的方式。人們可以在“網(wǎng)上”沖浪狡孔,瀏覽這些共享信息懂诗。很快,通過安全協(xié)議還能共享一些機(jī)密信息苗膝,從而允許通過網(wǎng)絡(luò)進(jìn)行商業(yè)交易殃恒,例如在線購物或銀行業(yè)務(wù)。這種在線連接性進(jìn)一步增加了數(shù)字技術(shù)的滲透辱揭。當(dāng)使用網(wǎng)絡(luò)服務(wù)提供商的“www.”門戶獲得在線服務(wù)時离唐,計算機(jī)就會變成商店,銀行问窃,圖書館或大學(xué)的數(shù)字版本亥鬓;這,反過來域庇,又創(chuàng)造了更多數(shù)據(jù)嵌戈。
移動計算
每十年我們都能看到計算機(jī)變得越來越小,隨著電池技術(shù)的進(jìn)步听皿,在20世紀(jì)90年代中期熟呛,筆記本電腦也開始普及起來; 這開啟了移動計算的新時代。同一時間尉姨,手機(jī)也開始流行起來庵朝。在2005年左右,這兩項技術(shù)又都融入了智能手機(jī)中又厉。
智能手機(jī)是種同時是計算機(jī)的手機(jī)【鸥現(xiàn)在智能手機(jī)越來越智能,以至于手機(jī)最初的打電話功能馋没,如今只是智能手機(jī)上眾多應(yīng)用中的一個昔逗,還很少被用到。傳統(tǒng)手機(jī)是種聲學(xué)設(shè)備:你跟它說話篷朵,同時能聽到另一端的人說話勾怒。而今天的智能手機(jī)更像是個視覺設(shè)備; 它有個大屏幕,我們花更多時間在看屏幕声旺,點擊它笔链,而不是在說話。
智能手機(jī)就是臺始終在線的計算機(jī)腮猖,它允許用戶在移動時訪問互聯(lián)網(wǎng)鉴扫,獲得各種信息。因此澈缺,它擴(kuò)展了我們的連接性坪创,讓我們更容易地連接網(wǎng)絡(luò)炕婶,例如在旅行時訪問其他計算機(jī)上的數(shù)據(jù)。此外莱预,它還讓我們和我們的數(shù)據(jù)更容易被他人訪問了柠掂。
智能手機(jī)的一大特殊在于,它也是種移動傳感設(shè)備依沮,因為它始終在我們身上涯贞,可以不斷記錄我們的信息,特別是位置危喉,并可以提供這些數(shù)據(jù)宋渔。智能手機(jī)讓我們可以被檢測,被追蹤辜限,被記錄皇拣。
計算機(jī)移動性的提高也只是最近的事情。最早計算機(jī)很大列粪,在“計算中心”里审磁;它保持固定,我們需要走到它面前使用岂座。然后态蒂,我們可以坐在終端前使用計算機(jī)。再然后费什,一臺小型計算機(jī)出現(xiàn)在我們部門里钾恢,再然后,一臺較小的計算機(jī)放在我們辦公室或家里的桌子上鸳址,再然后瘩蚪,一臺更小的計算機(jī)出現(xiàn)在我們腿上,而現(xiàn)在稿黍,計算機(jī)已經(jīng)放在我們口袋里疹瘦,天天陪伴我們了。
最早巡球,計算機(jī)很少言沐,可能每千人才有一臺計算機(jī),比如每個公司或校園有臺計算機(jī)酣栈。這種人機(jī)比增加得非诚找龋快,而個人計算機(jī)的目標(biāo)便是為每人配備一臺計算機(jī)矿筝。今天每個人都有很多臺計算機(jī)起便。別不信,其實現(xiàn)在我們所有的設(shè)備都是計算機(jī),或里面有計算機(jī)榆综。你的手機(jī)是臺計算機(jī)妙痹,你的電視也是,你的車內(nèi)有許多計算機(jī)用于不同功能奖年,而你的iPod播放器就如你的相機(jī)或手表一樣是臺特殊的計算機(jī)细诸。智能設(shè)備就是臺計算機(jī),一臺可完成數(shù)字版所需功能的計算機(jī)陋守。
普適計算是一個越來越受歡迎的術(shù)語;它意味著使用計算機(jī)利赋,卻又意識不到在使用計算機(jī)水评。這意味著時刻使用大量計算機(jī)用于各種目的,而無需明確地將其稱為計算機(jī)媚送。數(shù)字版本的功能中燥,具有其通常的優(yōu)點,例如速度塘偎,準(zhǔn)確性和易適應(yīng)性疗涉。而另一個優(yōu)點是,設(shè)備的數(shù)字版本可記錄數(shù)字化的所有數(shù)據(jù)吟秩。此外咱扣,如果它在線,還能與其他在線計算機(jī)交流涵防,并提供其數(shù)據(jù)闹伪。我們稱它們?yōu)椤爸悄芪锛保⑺鼈兊倪B接稱為物聯(lián)網(wǎng)壮池。
社交數(shù)據(jù)
幾千年前偏瓤,如果你想被畫被雕刻,或讓你的故事被記住和傳頌椰憋,你得是神狮暑。一千年前,你需要成為國王或王后忌堂,幾個世紀(jì)前颂暇,你需要成為富商或他的家人。然而現(xiàn)在票编,任何人褪储,甚至湯罐頭也可以被畫。計算和數(shù)據(jù)也發(fā)生了類似的民主化慧域。曾經(jīng)只有大型組織才有值得用計算機(jī)去解決的任務(wù)鲤竹,也只有它們擁有數(shù)據(jù);而從個人計算機(jī)開始,人們甚至是物件也成了數(shù)據(jù)的生成者辛藻。
數(shù)據(jù)一個最近的來源是社交媒體碘橘,它是我們社交互動的數(shù)字化,它取代了過去在集市吱肌,廣場痘拆,市場中的討論;我們可對它的數(shù)據(jù)進(jìn)行收集氮墨,存儲和分析纺蛆。
通過社交媒體,每個人現(xiàn)在都是名人规揪,每個人的生活都值得關(guān)注桥氏,我們是自己的狗仔隊。每次我們在線猛铅,我們就是名人字支。社交媒體允許我們在生活中寫下自己的數(shù)字自傳。在過去奸忽,書籍和報紙價格昂貴堕伪,很少有東西能被記下來,除了那些英雄偉人的故事栗菜。而現(xiàn)在記錄數(shù)據(jù)變得很廉價欠雌,每個人都是自己小小在線領(lǐng)土的國王和王后。今天苛萎,寵愛孩子的父母桨昙,在孩子第一個月產(chǎn)生的數(shù)據(jù),就比荷馬講述完奧德修斯的完整冒險的數(shù)據(jù)還多腌歉。
大數(shù)據(jù):數(shù)據(jù)沖擊
所有由數(shù)字化機(jī)器和服務(wù)產(chǎn)生的數(shù)據(jù)蛙酪,都曾被認(rèn)為是數(shù)字化的副產(chǎn)品。而如今科學(xué)家為了有效地存儲和操作大量數(shù)據(jù)翘盖,已對數(shù)據(jù)庫進(jìn)行大量研究桂塞,存儲數(shù)據(jù)是因為我們需要它。在過去二十年里馍驯,所有這些數(shù)據(jù)都成了一種資源阁危;更多數(shù)據(jù)意味著更好。
設(shè)想一下汰瘫,如果一家超市連鎖店每天向數(shù)百萬客戶銷售數(shù)千種商品狂打,無論是在各地的實體店中,還是通過網(wǎng)上的虛擬商店混弥。銷售點終端都是數(shù)字化的趴乡,并記錄每筆交易的詳細(xì)信息:客戶ID,購買的商品和價格,花費的總金額等等晾捏。這些商店都連接著網(wǎng)絡(luò)蒿涎,于是所有商店中所有終端的數(shù)據(jù)就可以馬上傳輸?shù)街醒霐?shù)據(jù)庫中。這相當(dāng)于每天都有很多(而且最新的)數(shù)據(jù)惦辛。
數(shù)據(jù)開始推動一切劳秋;不再是程序員,而是數(shù)據(jù)本身開始定義下一步該做什么胖齐。
在過去二十多年里玻淑,人們越發(fā)開始問自己,我們可以用這些數(shù)據(jù)做些什么呀伙。有了這個問題岁忘,整個計算機(jī)發(fā)展方向便發(fā)生了逆轉(zhuǎn)。過去区匠,程序處理數(shù)據(jù),又吐出來數(shù)據(jù)——數(shù)據(jù)是被動的帅腌。而現(xiàn)在驰弄,數(shù)據(jù)本身開始推動操作;于是便不再是程序員速客,而是數(shù)據(jù)定義下一步該如何做戚篙。
比如,超市連鎖店總希望知道哪位顧客可能會購買哪種商品溺职。知道這些后岔擂,商店就能更有效地存貨,這將增加銷售和利潤浪耘;還能提高客戶滿意度乱灵,因為客戶能更快,更便捷地找到最符合其需求的產(chǎn)品七冲。
然而這項任務(wù)并不簡單痛倚。我們不知道哪些人可能會購買這種口味冰淇淋,或看這部新電影澜躺。此外客戶行為還會隨時間蝉稳,地理位置而變化。
但我們能知道的是掘鄙,客戶行為并非完全隨機(jī)耘戚。人們不會去超市隨意買東西。當(dāng)他們買啤酒時操漠,也會買薯片收津;他們在夏天買冰淇淋,在冬天買 Glühwein 的香料∨蠼兀客戶行為中存在某些模式蛹稍,這就是數(shù)據(jù)發(fā)揮作用的地方。
雖然我們不了解客戶行為模式部服,但我們希望在收集到的數(shù)據(jù)中看到它們唆姐。如果能在過去的數(shù)據(jù)中找到這種模式,那么就可以假設(shè)未來廓八,至少在不久的將來奉芦,發(fā)生的將與收集到的數(shù)據(jù)沒太大不同,我們可以對其做出預(yù)測剧蹂。
我們或許無法完全一致的發(fā)現(xiàn)背后的行為模式声功,但至少能構(gòu)建出一個良好且有用的近似值。這種近似或許無法解釋所有過程宠叼,但可以解釋部分?jǐn)?shù)據(jù)先巴,檢測到一些模式。之后我們可以用這些模式來進(jìn)行預(yù)測冒冬;它們也能幫助理解完整的行為模式伸蚯。
這被稱為數(shù)據(jù)挖掘。類比自挖礦简烤,從大量泥土中挖掘出少量非常珍貴的材料剂邮。同樣,在數(shù)據(jù)挖掘中横侦,我們處理大量數(shù)據(jù)以構(gòu)造具有使用價值的簡單模型挥萌,比如說有高預(yù)測準(zhǔn)確性的模型。
數(shù)據(jù)挖掘是一種機(jī)器學(xué)習(xí)枉侧。因為我們不知道客戶行為的規(guī)則引瀑,無法編寫程序,但計算機(jī)可以通過從客戶的數(shù)據(jù)中提取出規(guī)則棵逊,來進(jìn)行“學(xué)習(xí)”伤疙。
現(xiàn)在,許多潛在的應(yīng)用存在于我們不知道規(guī)則辆影,但卻有大量數(shù)據(jù)的地方徒像。企業(yè)大量使用計算機(jī)和數(shù)字技術(shù)意味著,各種領(lǐng)域都有大量數(shù)據(jù)蛙讥。個人在日常社交中也總使用計算機(jī)或智能設(shè)備锯蛀,因此我們也有大量相關(guān)數(shù)據(jù)。
除了公司和個人數(shù)據(jù)次慢,另一個數(shù)據(jù)來源是科學(xué)旁涤。隨著更好的傳感器的出現(xiàn)翔曲,可以檢測到更多數(shù)據(jù),比如在天文學(xué)劈愚,生物學(xué)瞳遍,物理學(xué)。我們需要用學(xué)習(xí)算法來理解這些越來越多的數(shù)據(jù)菌羽。
互聯(lián)網(wǎng)本身就是一個巨大的數(shù)據(jù)庫掠械,我們需要智能算法來幫忙找到想要的東西。我們今天擁有的數(shù)據(jù)的一個重要特征是注祖,它是多模態(tài)的猾蒂,對于同一件感興趣的對象或事件,相關(guān)數(shù)據(jù)有文字是晨,圖像肚菠,還有聲音等等各種形式。因此罩缴,現(xiàn)在機(jī)器學(xué)習(xí)的一個大的挑戰(zhàn)是蚊逢,如何結(jié)合這些不同來源的數(shù)據(jù)。例如箫章,在消費者數(shù)據(jù)分析中时捌,除了過去的交易數(shù)據(jù)外,還有 Web 日志炉抒,這些日志也可能很有用。
隨著在日常中使用越來越多的智能設(shè)備稚叹,我們都成為了數(shù)據(jù)的生產(chǎn)者焰薄。每當(dāng)購買產(chǎn)品,租用電影扒袖,訪問網(wǎng)頁塞茅,寫博客或在社交媒體上發(fā)帖時,甚至走路或開車時季率,我們都在生成數(shù)據(jù)野瘦。這些數(shù)據(jù)對于有興趣收集和分析的人來說很有價值,因為客戶們總是對的飒泻。此外數(shù)據(jù)本身也很有趣鞭光。
同時,我們每個人不僅是數(shù)據(jù)生產(chǎn)者泞遗,同時也是數(shù)據(jù)消費者惰许。我們希望得到定制化的產(chǎn)品和服務(wù),希望需求能被理解史辙,興趣能被迎合汹买。這都得靠分析我們過去的數(shù)據(jù)佩伤。
學(xué)習(xí) VS 編程
為了用計算機(jī)解決問題,我們需要算法晦毙。算法就是一系列指令生巡,用來將輸入轉(zhuǎn)為輸出。例如见妒,可以設(shè)計一個用于排序的算法孤荣,輸入是一組數(shù)字,而輸出是這些數(shù)的有序數(shù)列徐鹤。對于相同的任務(wù)垃环,可能存在多個算法,有時可能對最有效的算法感興趣返敬,有時可能對最少指令或內(nèi)存的算法感興趣遂庄,也或者都關(guān)注。
然而劲赠,對某些問題涛目,沒有算法來解決。比如預(yù)測客戶行為凛澎;還有區(qū)分垃圾郵件霹肝。我們知道輸入:電子郵件,最簡單的情況就是文本消息塑煎。我們知道輸出:判斷是否為垃圾郵件沫换。但卻不知道如何將輸入轉(zhuǎn)換為輸出。什么被認(rèn)為是垃圾郵件的標(biāo)準(zhǔn)是隨時間而變化的最铁,而且對于不同人也是不同的讯赏。
這些缺失的知識,就只能從數(shù)據(jù)中尋找了冷尉。我們可以輕松地編譯成千上萬條消息漱挎,其中一些知道是垃圾郵件,其中一些不是雀哨,我們想要的是磕谅,從這些樣本中“學(xué)習(xí)”到什么是垃圾郵件。換句話說雾棺,我們希望計算機(jī)自動提取該任務(wù)的算法膊夹。雖然沒有必要去學(xué)習(xí)排序數(shù)組的算法(已經(jīng)有了),但有很多應(yīng)用我們并沒有算法捌浩,卻有大量數(shù)據(jù)割疾。
人工智能
機(jī)器學(xué)習(xí)不僅只是個數(shù)據(jù)庫或編程問題;它也是人工智能的必要條件嘉栓。一個處于不斷變化環(huán)境中的系統(tǒng)宏榕,應(yīng)具備學(xué)習(xí)能力拓诸;否則很難稱為聰明。如果系統(tǒng)能學(xué)習(xí)并適應(yīng)變化麻昼,系統(tǒng)設(shè)計者就無需預(yù)測奠支,為所有可能情況提供解決方案。
對人類來說抚芦,進(jìn)化就是我們的系統(tǒng)設(shè)計師倍谜,我們身體的形狀,以及內(nèi)在直覺反應(yīng)都發(fā)展了數(shù)百萬年叉抡。我們還學(xué)會了如何在生活中改變自己的行為尔崔,這有助于應(yīng)對進(jìn)化無法預(yù)測的環(huán)境變化。在一個明確定義的環(huán)境中褥民,一個簡單生命可能會內(nèi)置所有行為模式季春,但比起這種對生活中每種模式編碼出一個應(yīng)對方法,進(jìn)化給了我們大腦和其中的學(xué)習(xí)機(jī)制消返,讓我們能通過經(jīng)驗更新自己载弄,適應(yīng)不同的環(huán)境。這就是為什么人類能在非常不同的氣候和條件下撵颊,在全球不同地區(qū)生存繁榮宇攻。當(dāng)我們在某種情況下學(xué)到最佳策略時,知識就會存儲在大腦中倡勇,當(dāng)情況再次出現(xiàn)逞刷,就會回想起合適的策略并采取相應(yīng)的行動。
我們每個人妻熊,甚至說每個動物亲桥,都是數(shù)據(jù)科學(xué)家。我們從傳感器收集數(shù)據(jù)固耘,然后處理數(shù)據(jù)以獲得抽象規(guī)則來認(rèn)知環(huán)境,并控制在該環(huán)境中的行為词身,以最小化疼痛或最大化愉悅厅目。我們可以用記憶將這些規(guī)則存儲在大腦中,然后在需要時回憶并使用法严。并且學(xué)習(xí)是終身的损敷,之后當(dāng)環(huán)境發(fā)生變化,我們會遺忘或修改不再適用的規(guī)則深啤。
然而拗馒,學(xué)習(xí)有其局限性∷萁郑可能有些東西永遠(yuǎn)無法通過大腦有限的能力來學(xué)習(xí)诱桂,就像我們永遠(yuǎn)無法“學(xué)習(xí)“長出第三只手洋丐,或者是腦袋后長出眼睛(這得改變基因構(gòu)成)。粗略地說挥等,遺傳學(xué)定義了能工作上萬代的硬件友绝,而學(xué)習(xí)則定義了在個人生命周期中運行在硬件上的軟件。
人工智能雖然可從大腦獲得啟發(fā)肝劲。比如迁客,認(rèn)知科學(xué)家和神經(jīng)科學(xué)家的為了了解大腦功能,建立了神經(jīng)網(wǎng)絡(luò)模型辞槐,并進(jìn)行模擬研究掷漱。然而,人工智能現(xiàn)在主要是計算機(jī)科學(xué)的一部分榄檬,我們的目標(biāo)是建立有用的系統(tǒng)卜范,如在其他工程領(lǐng)域一樣。因此丙号,雖然大腦給了啟發(fā)先朦,但最終我們并不太關(guān)心所開發(fā)算法的生物合理性。
我們對大腦感興趣犬缨,是因為相信它能幫我們構(gòu)建更好的計算機(jī)系統(tǒng)喳魏。大腦具有很多強(qiáng)大的功能,在許多領(lǐng)域超越了當(dāng)前的工程產(chǎn)品 - 例如視覺怀薛,語音識別和學(xué)習(xí)方面刺彩。如果能在機(jī)器上實施這些,那么這些應(yīng)用將具有非常大的經(jīng)濟(jì)效益枝恋。如果我們能夠理解大腦如何實現(xiàn)這些功能的创倔,就能將這些任務(wù)的解決方案轉(zhuǎn)換成正式算法,并在計算機(jī)上實現(xiàn)焚碌。
計算機(jī)也被稱為“電腦”畦攘,但計算機(jī)和大腦是不同的。計算機(jī)通常具有一個或多個處理器十电,而大腦則由大量的處理單元(神經(jīng)元)組成知押,進(jìn)行并行操作。盡管細(xì)節(jié)尚未太清楚鹃骂,但一般認(rèn)為這些處理單元比計算機(jī)中的一般處理器更簡單和更慢台盯。另一個讓大腦與眾不同,并被認(rèn)為提供其計算能力的特性畏线,是它的超強(qiáng)連接性静盅。大腦中的神經(jīng)元與成千上萬的其他神經(jīng)元用突觸連接,并且并行運行寝殴。在計算機(jī)中蒿叠,處理器是主動一直運行的明垢,而存儲器則是分離和被動的;然而在大腦中的處理器和存儲器栈虚,確是分布在網(wǎng)絡(luò)上的袖外,處理由神經(jīng)元完成,記憶發(fā)生在神經(jīng)元的突觸中魂务。
了解大腦
根據(jù) Marr(1982)的觀點曼验,一個信息處理系統(tǒng)可分為三個層次來理解:
對應(yīng)計算目標(biāo)和任務(wù)抽象定義的計算理論;
表示和算法粘姜,關(guān)于如何表示輸入和輸出鬓照,以及關(guān)于從輸入轉(zhuǎn)換到輸出的算法的規(guī)范;
硬件實現(xiàn)是系統(tǒng)的實際物理實現(xiàn)孤紧。
這背后的思想是豺裆,對于相同計算理論,可能存在多個表示和操縱該表示中符號的算法号显。類似的臭猜,對于任何給定表示和算法,可能存在多個硬件實現(xiàn)押蚤。對于任何理論蔑歌,可用眾多算法中的一個,對于這個算法揽碘,可用多個不同硬件中的一個實現(xiàn)次屠。
舉個例子:'6','VI'和'110'是數(shù)字六的三種表示雳刺;分別是阿拉伯?dāng)?shù)字劫灶,羅馬數(shù)字和二進(jìn)制數(shù)。根據(jù)所用表示掖桦,我們有不同的加法算法本昏。數(shù)字計算機(jī)用二進(jìn)制數(shù),并且用特定電路對它做加法枪汪,這是種特定的硬件實現(xiàn)涌穆。而在算盤上,數(shù)字表示是不同的料饥,而且加法操作也對應(yīng)不同指令集,這是另一種硬件實現(xiàn)朱监。當(dāng)我們在腦袋中加兩個數(shù)時岸啡,會使用另一種表示,和適合于該表示的算法赫编,該算法由神經(jīng)元實現(xiàn)巡蘸。然而奋隶,所有這些硬件實現(xiàn),大腦悦荒,算盤唯欣,計算機(jī),都是為了實現(xiàn)同一個計算理論:加法搬味。
還有一個典型的例子是境氢,自然飛行器和人造飛行器的區(qū)別。一只麻雀拍打翅膀來飛碰纬;而一架飛機(jī)機(jī)翼卻不能拍打萍聊,而是用噴氣式發(fā)動機(jī)。麻雀和飛機(jī)是為不同目的而構(gòu)建的兩種硬件實現(xiàn)悦析,滿足不同約束寿桨。但都實現(xiàn)了相同的理論,即空氣動力學(xué)强戴。
從這個角度亭螟,我們可以說大腦是一種用于學(xué)習(xí)的硬件實現(xiàn)。如果從這個實現(xiàn)中骑歹,能逆向工程提取出所用的表示和算法预烙,然后從中獲得其所實現(xiàn)的計算理論,那么就可以用另一種表示和算法陵刹,用現(xiàn)有的更適合的硬件來實現(xiàn)默伍,并且希望這個實現(xiàn)能更便宜,更快捷衰琐,更準(zhǔn)確也糊。
正如發(fā)現(xiàn)空氣動力學(xué)理論過程一樣,最初大家嘗試建造的飛行器看起來很像鳥類羡宙,因此也能預(yù)期狸剃,最初搭建具有大腦能力的系統(tǒng)時,也會是看起來像是具有大量處理單元網(wǎng)絡(luò)的大腦狗热。在未來钞馁,當(dāng)我們發(fā)現(xiàn)了智能的計算理論時,或許會發(fā)現(xiàn)神經(jīng)元和突觸只不過是實現(xiàn)細(xì)節(jié)匿刮,就像羽毛之于飛行一樣僧凰。
模式識別
在計算機(jī)科學(xué)里,很多任務(wù)我們都試著搭建熟丸,由人工規(guī)則和算法組成的“專家系統(tǒng)”训措。然而幾十年卻只取得了非常有限的成果。這里面涉及到的很多任務(wù),都被認(rèn)為需要一定程度的智能绩鸣。而最近怀大,一個方法讓我們看到了巨大進(jìn)展,那就是在大量數(shù)據(jù)中使用機(jī)器學(xué)習(xí)呀闻。
舉個面孔識別的例子:人類能毫不費力地做到化借,我們每天都看臉或照片來識別家人和朋友,就算姿勢捡多,燈光蓖康,發(fā)型等方面有差異,也能輕松識別出來局服。面部感知對人類很重要钓瞭,因為我們要借來區(qū)分朋友和敵人。除了識別功能淫奔,這和生存也有很大關(guān)系山涡,因為面部相當(dāng)于我們內(nèi)部狀態(tài)的儀表板。從臉上可以讀到諸如快樂唆迁,憤怒鸭丛,驚訝和羞恥之類的感覺,我們進(jìn)化到了不光會展示這些狀態(tài)唐责,也能從別人身上發(fā)現(xiàn)這些狀態(tài)鳞溉。
雖然我們很容易就能做出這樣的識別,但卻是無意識和本能的鼠哥,自己無法解釋是如何做到的熟菲。正因為無法解釋是如何做到的,所以也就無法編寫相應(yīng)計算機(jī)程序朴恳。
而通過分析一個人的不同面部圖像抄罕,一個學(xué)習(xí)系統(tǒng)則會捕獲到特定于該人的模式,之后檢測給定圖像中是否有該模式于颖。這是模式識別的一個例子呆贿。
我們能做到這個是因為,面部圖像就像任何自然圖像一樣森渐,不只是隨機(jī)像素的集合(比如花屏的電視)做入。臉有其結(jié)構(gòu)。它是對稱的同衣,眼睛竟块,鼻子和嘴巴位于臉部的某些部位。每個人的臉耐齐,都是這些部位特定組合的一種模式浪秘。當(dāng)照明或姿勢發(fā)生變化時前弯,當(dāng)頭發(fā)變長或戴上眼鏡時,或當(dāng)我們變老時秫逝,臉部圖像的某些部分會變化,但有些部分卻不會询枚。這類似于客戶行為中定期購買和沖動購買违帆。學(xué)習(xí)算法通過遍歷該一個人的多個圖像,來找到不變的辨別特征金蜀,還有它們?nèi)绾翁囟ńM合來定義這個人的臉刷后。
當(dāng)我們談學(xué)習(xí)的時候都談些什么
在機(jī)器學(xué)習(xí)中,目標(biāo)是構(gòu)建能擬合給定數(shù)據(jù)的程序渊抄。學(xué)習(xí)程序與普通程序不同之處在于尝胆,它是個具有可變參數(shù)的通用模板,并能為這些參數(shù)分配不同的值护桦,來做不同的事情含衔。學(xué)習(xí)算法可以通過調(diào)節(jié)模板(模型)的參數(shù),不斷優(yōu)化在數(shù)據(jù)上定義的性能指標(biāo)二庵。
例如贪染,對于面部識別器,學(xué)習(xí)算法會調(diào)整參數(shù)催享,以使得在一組訓(xùn)練圖像上獲得最高的預(yù)測準(zhǔn)確度杭隙。這種學(xué)習(xí)通常是重復(fù)和漸進(jìn)的。學(xué)習(xí)程序一個個地看大量樣本圖像因妙,對于每個樣本痰憎,參數(shù)都稍微更新一點,以便性能逐漸提高攀涵。就像人的學(xué)習(xí)過程:當(dāng)我們學(xué)習(xí)任務(wù)時铣耘,也是一步步學(xué)習(xí)它,慢慢做得更好汁果,無論是網(wǎng)球涡拘,幾何學(xué)還是外語。
在構(gòu)建學(xué)習(xí)系統(tǒng)時据德,主要需考慮:
應(yīng)記住鳄乏,僅僅擁有大量數(shù)據(jù),并不意味著就有可學(xué)習(xí)的規(guī)則棘利。首先應(yīng)確保底層規(guī)則是存在相關(guān)性橱野,并且收集的數(shù)據(jù)能提供足夠信息,以便能以一定準(zhǔn)確度學(xué)習(xí)它們善玫。假設(shè)有一本包含人名和電話號碼的電話簿水援,那么認(rèn)為名字和電話號碼之間有關(guān)系密强,然后用電話簿(無論多大)進(jìn)行學(xué)習(xí)訓(xùn)練,之后看到新名稱來預(yù)測相應(yīng)電話號碼的行為是完全沒有意義的蜗元。
其次或渤,學(xué)習(xí)算法本身應(yīng)是高效的,因為通常我們會有很多數(shù)據(jù)奕扣,并希望學(xué)習(xí)盡可能快薪鹦,并能有效地使用計算和內(nèi)存資源。還有在許多應(yīng)用中惯豆,問題的隱藏特性可能會隨時間而變化池磁;在這種情況下,先前收集的數(shù)據(jù)會變得過時楷兽,就要用新數(shù)據(jù)來有效地更新訓(xùn)練模型地熄。
最后,一旦學(xué)習(xí)系統(tǒng)被構(gòu)建出芯杀,并開始使用它進(jìn)行預(yù)測端考,它在記憶和計算方面也應(yīng)是高效的。在某些應(yīng)用中揭厚,最終模型的高效性跛梗,可能與其預(yù)測準(zhǔn)確性一樣重要。
歷史
幾乎所有的科學(xué)都是用模型來擬合數(shù)據(jù)棋弥『顺ィ科學(xué)家,如伽利略顽染,牛頓和孟德爾漾岳,他們設(shè)計實驗,然后進(jìn)行觀察并收集數(shù)據(jù)粉寞。之后尼荆,試圖通過設(shè)計理論來提取出知識,即建立模型來解釋觀察到的數(shù)據(jù)唧垦。之后再用這些理論來進(jìn)行預(yù)測捅儒,如果預(yù)測錯誤,就收集更多數(shù)據(jù)并修改理論振亮。這個數(shù)據(jù)收集和理論(模型)構(gòu)建過程一直持續(xù)到他們得到了具有足夠解釋能力的模型為止巧还。
我們現(xiàn)在已經(jīng)到了很難再對這些數(shù)據(jù)進(jìn)行手動分析的地步,因為數(shù)據(jù)量巨大坊秸,難以進(jìn)行人工分析麸祷。而且能進(jìn)行這種分析的人并不多。因此褒搔,人們開始越來越關(guān)注阶牍,能自動分析數(shù)據(jù)喷面,并從中提取信息的計算機(jī)程序,即學(xué)習(xí)系統(tǒng)走孽。
學(xué)習(xí)算法起源于不同的科學(xué)領(lǐng)域惧辈。有時相同或非常相似的算法,通過不同的歷史路徑磕瓷,在不同的領(lǐng)域中獨立發(fā)明出來并不罕見咬像。
機(jī)器學(xué)習(xí)的主要理論來自統(tǒng)計學(xué),其中從特定觀察到一般描述被稱為推理 (inference)生宛,而學(xué)習(xí)被稱為估計(estimation)。分類在統(tǒng)計學(xué)中稱為判別分析肮柜。統(tǒng)計學(xué)家過去常常在小樣本上工作汰扭,而且作為數(shù)學(xué)家彼绷,他們主要研究能用數(shù)學(xué)方法分析的簡單模型。而在工程中,分類被稱為模式識別肾砂,方法更經(jīng)驗主義。
在計算機(jī)科學(xué)中埋合,作為人工智能研究的一部分卧须,也對學(xué)習(xí)算法進(jìn)行了研究;同時有一個平行但幾乎獨立的研究痴晦,被稱為數(shù)據(jù)庫中的知識發(fā)現(xiàn)南吮;在電氣工程中,信號處理的研究誊酌,產(chǎn)生了自適應(yīng)圖像處理和語音識別程序部凑。
在20世紀(jì)80年代中期,人們對各個學(xué)科的人工神經(jīng)網(wǎng)絡(luò)模型產(chǎn)生了巨大的興趣碧浊。這些學(xué)科包括物理學(xué)涂邀,統(tǒng)計學(xué),心理學(xué)箱锐,認(rèn)知科學(xué)比勉,神經(jīng)科學(xué)和語言學(xué),更別說計算機(jī)科學(xué)驹止,電氣工程和自適應(yīng)控制領(lǐng)域浩聋。也許神經(jīng)網(wǎng)絡(luò)研究最重要的貢獻(xiàn)便是這種跨學(xué)科的共同作用,特別是統(tǒng)計學(xué)和計算機(jī)科學(xué)臊恋。始于20世紀(jì)80年代的神經(jīng)網(wǎng)絡(luò)研究并非偶然赡勘。那時,隨著VLSI(超大規(guī)模集成)技術(shù)的進(jìn)步捞镰,我們獲得了構(gòu)建有著數(shù)千個處理器的并行運算硬件的能力闸与,而神經(jīng)網(wǎng)絡(luò)作為一種毙替,可以將計算分布在大量處理單元并行運算的理論,也就引起了大家的興趣践樱。并且厂画,因為可以自我學(xué)習(xí),而不需要人工編程拷邢,大家興趣就更大了袱院。