機(jī)器學(xué)習(xí)是人工智能在近期最重要的發(fā)展之一。機(jī)器學(xué)習(xí)的理念是,不將智能看作是給機(jī)器傳授東西,而是機(jī)器會(huì)自己學(xué)習(xí)東西。這樣一來,機(jī)器就可以直接從經(jīng)驗(yàn)(或數(shù)據(jù))中學(xué)習(xí)如何處理復(fù)雜的任務(wù)。
隨著計(jì)算速度和用于編程的算法的巨大進(jìn)步與發(fā)展,機(jī)器學(xué)習(xí)成長迅速。由此產(chǎn)生的算法對(duì)我們的生活開始產(chǎn)生重大影響,而且它們的表現(xiàn)往往勝過人類。那么,機(jī)器學(xué)習(xí)是如何工作的呢?
在機(jī)器學(xué)習(xí)系統(tǒng)中,計(jì)算機(jī)通常是通過在相同任務(wù)的大型數(shù)據(jù)庫中進(jìn)行訓(xùn)練,然后自己編寫代碼去執(zhí)行一項(xiàng)任務(wù)。其中很大一部分涉及到識(shí)別這些任務(wù)中的模式,然后根據(jù)這些模式做出決策。
舉個(gè)例子,假設(shè)一家公司正要招聘一名新員工,在招聘廣告登出之后有1000個(gè)人申請,每個(gè)人都投了簡歷。如果要親自一個(gè)個(gè)篩選,這實(shí)在太多了,所以你想訓(xùn)練一臺(tái)機(jī)器來完成這項(xiàng)任務(wù)。
為了做到這一點(diǎn),你需要把公司過往的許多應(yīng)聘者的簡歷都記錄下來。對(duì)于每一份簡歷,你都有記錄表明這個(gè)人是否最終被聘用了。為了訓(xùn)練機(jī)器,你拿出一半的簡歷,讓機(jī)器通過學(xué)習(xí)這些簡歷最終是否成功地申請到了一份工作來找出其中的模式。
這樣一來,當(dāng)機(jī)器收收到一份簡歷時(shí),它就可以對(duì)這個(gè)人是否適合被雇傭做出判斷。訓(xùn)練完畢,就可以接著用另一半簡歷來對(duì)機(jī)器進(jìn)行測試。如果它的成功率足夠高,也就是機(jī)器做出正確判斷的概率夠高,那么你就可以安心地讓機(jī)器根據(jù)一個(gè)人的簡歷來判斷他是否適合被聘用。在任何階段都不需要人的判斷。
為了更清楚地理解機(jī)器學(xué)習(xí)的過程,我們將以開發(fā)能夠識(shí)別手寫數(shù)字的機(jī)器為具體例子來考慮模式識(shí)別的問題。這樣的機(jī)器應(yīng)該能夠準(zhǔn)確識(shí)別一個(gè)字符所代表的數(shù)字,而無論它的書寫格式如何變化。
數(shù)字識(shí)別的過程分為兩個(gè)階段。首先,我們必須能夠?qū)⑹謱憯?shù)字的圖像掃描到機(jī)器中,并從這張(數(shù)字)圖像中提取出有意義的數(shù)據(jù)。這通常是通過主成分分析(PCA)的統(tǒng)計(jì)方法實(shí)現(xiàn)的,這種方法會(huì)自動(dòng)提取圖像中的主要特征,例如圖像的長度、寬度、線條的交點(diǎn)等。這個(gè)過程與求解矩陣的本征值和本征向量的過程密切相關(guān),也與谷歌用來在萬維網(wǎng)上搜索信息的過程非常相似。
然后,我們想訓(xùn)練機(jī)器從這些提取的特征中識(shí)別數(shù)字。一種非常主流的用來訓(xùn)練機(jī)器的方法是神經(jīng)網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)算法的最初靈感來源是我們認(rèn)為的人類大腦的工作方式,但并不嚴(yán)格地建立在我們認(rèn)為的人類大腦的工作方式之上。
隨著訓(xùn)練數(shù)據(jù)的增加,算法會(huì)更新其選擇的直線。(圖片來源:University of Bath)
首先要?jiǎng)?chuàng)建一組“神經(jīng)元”,并將它們連接起來,它們可以相互發(fā)送消息。接下來,讓神經(jīng)網(wǎng)絡(luò)去解決大量已經(jīng)知道結(jié)果的問題,這樣做能讓算法“學(xué)習(xí)”到應(yīng)該如何確定神經(jīng)元之間的連接,以便能成功地識(shí)別出數(shù)據(jù)中的哪些模式導(dǎo)致了正確的結(jié)果。
將許多感知機(jī)耦合在一起就可以進(jìn)行更多的計(jì)算,但這一發(fā)展必須等待更強(qiáng)大的計(jì)算機(jī)的出現(xiàn)。當(dāng)多層感知機(jī)耦合起來形成一個(gè)神經(jīng)網(wǎng)絡(luò)時(shí),這一重大突破就出現(xiàn)了。這種神經(jīng)網(wǎng)絡(luò)的典型結(jié)構(gòu)如下圖所示,它包括輸入層、隱藏層和輸出層。在這種情況下,輸入會(huì)組合起來以觸發(fā)感知機(jī)的第一層神經(jīng)元,由此產(chǎn)生的輸出也會(huì)組合起來以觸發(fā)下一層神經(jīng)元,最后,這些組合起來給出最終的輸出。
層數(shù)越多,神經(jīng)網(wǎng)絡(luò)就越“深”。(圖片來源:University of Bath)
然后,這樣一個(gè)神經(jīng)網(wǎng)絡(luò)就會(huì)通過為上面的神經(jīng)元之間的每個(gè)連接分配加權(quán)而得到訓(xùn)練。這個(gè)過程是為了模仿大腦神經(jīng)通路強(qiáng)化或衰減的方式。深度學(xué)習(xí)描述了訓(xùn)練這樣一個(gè)神經(jīng)網(wǎng)絡(luò)的過程。
神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的過程有多種形式。在監(jiān)督學(xué)習(xí)中,用戶會(huì)事先提供一組成對(duì)的實(shí)例,也就是輸入和輸出。然后,學(xué)習(xí)的目標(biāo)是找到一個(gè)給出的輸出能與實(shí)例匹配的神經(jīng)網(wǎng)絡(luò)。通常,用來比較神經(jīng)網(wǎng)絡(luò)的輸出與實(shí)例的輸出的方法是計(jì)算兩者的均方誤差;然后對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,讓這一誤差對(duì)所有訓(xùn)練數(shù)據(jù)集最小化。這種方法的一個(gè)非常標(biāo)準(zhǔn)的應(yīng)用是在統(tǒng)計(jì)學(xué)中使用的曲線擬合,它對(duì)手寫數(shù)字和其他的模式識(shí)別問題都有很好的效果。
在強(qiáng)化學(xué)習(xí)中,數(shù)據(jù)不會(huì)由用戶事先給出,而是由神經(jīng)網(wǎng)絡(luò)控制的機(jī)器與環(huán)境交互作用時(shí)生成的。機(jī)器會(huì)在每個(gè)時(shí)間點(diǎn)上對(duì)環(huán)境執(zhí)行一個(gè)操作,由此生成一個(gè)觀察結(jié)果,以及這個(gè)操作的成本。然后訓(xùn)練這個(gè)神經(jīng)網(wǎng)絡(luò)去選擇那些將總體成本降至最低的操作。在許多方面,這個(gè)過程類似于人類學(xué)習(xí)的方式。
機(jī)器學(xué)習(xí)進(jìn)展迅速,在更快的訓(xùn)練算法和越來越多的數(shù)據(jù)的驅(qū)動(dòng)下,發(fā)展更復(fù)雜、更深層神經(jīng)網(wǎng)絡(luò)的趨勢越來越明顯。
關(guān)注【深圳科普】微信公眾號(hào),在對(duì)話框:
回復(fù)【最新活動(dòng)】,了解近期科普活動(dòng)
回復(fù)【科普行】,了解最新深圳科普行活動(dòng)
回復(fù)【研學(xué)營】,了解最新科普研學(xué)營
回復(fù)【科普課堂】,了解最新科普課堂
回復(fù)【科普書籍】,了解最新科普書籍
回復(fù)【團(tuán)體定制】,了解最新團(tuán)體定制活動(dòng)
回復(fù)【科普基地】,了解深圳科普基地詳情
回復(fù)【觀鳥知識(shí)】,學(xué)習(xí)觀鳥相關(guān)科普知識(shí)