五分鐘技術(shù)趣談 | 機器學習的前世今生
Part 01
機器學習是什么?
實現(xiàn)人工智能的方法我們稱之為“機器學習”,在1956年的美國達特茅斯會議上,Arthur Samuel正式提出了“Machine Learning”這個概念。機器學習是人工智能的一個重要子領(lǐng)域,它專門研究計算機怎樣模擬或?qū)崿F(xiàn)人類的學習行為,通過大量的數(shù)據(jù)和樣本,獲取新的知識或技能,對已有的知識結(jié)構(gòu)進行重組,使之改善自身的性能。通俗的講,就像人類一樣通過學習大量的歷史資料,對這個世界產(chǎn)生一定的認知,從而獲取到新知識,提升自己。
圖1 輸入到輸出的映射圖
最常見的機器學習是一種學習如何從A得到B的人工智能,也就是“輸入”到“輸出”的映射,這種機器學習被稱為監(jiān)督學習。假設(shè)輸入A是一封電子郵件,輸出B表示“是”或“不是”垃圾郵件,那么我們得先訓(xùn)練一個模型,讓它具有自動識別垃圾郵件的功能。首先我們先將一些郵件及其所具有的標簽,一起輸入模型進行訓(xùn)練,例如,我們告訴機器第一封是垃圾郵件,第二封不是垃圾郵件,第三封也不是垃圾郵件,以此類推。模型不斷捕捉郵件和這些標簽之間的聯(lián)系,進而進行調(diào)整和完善,當模型學習的差不多了,人工輸入一些不帶標簽的新郵件,該模型就能夠?qū)π锣]件做出判斷是否為垃圾郵件。除此之外,生活中常見的監(jiān)督學習還有語音識別、無人駕駛、工業(yè)質(zhì)檢等。
圖1 智能家居客訴故障分類
Part 02
神經(jīng)網(wǎng)絡(luò)模型
提到神經(jīng)網(wǎng)絡(luò),大家第一反應(yīng)會想到什么呢?是不是想到了中學時期生物課上學過的神經(jīng)網(wǎng)絡(luò),比如大腦神經(jīng)網(wǎng)絡(luò)中樞,脊柱神經(jīng)網(wǎng)絡(luò)中樞等等。但這里的神經(jīng)網(wǎng)絡(luò)并不是我們生物課上所學的神經(jīng)網(wǎng)絡(luò),而是人工智能中的神經(jīng)網(wǎng)絡(luò),也叫做人工神經(jīng)網(wǎng)絡(luò),它是一種模仿生物神經(jīng)網(wǎng)絡(luò)行為特征,進行分布式并行信息處理的算法數(shù)學模型。
圖2 神經(jīng)元結(jié)構(gòu)圖
人類的大腦神經(jīng)系統(tǒng)包含了860億個神經(jīng)元,每個神經(jīng)元上有上千個突觸與其他神經(jīng)元相連,神經(jīng)元可以接受其他神經(jīng)元的信息,也可以發(fā)送信息給其他神經(jīng)元,神經(jīng)元越多,層數(shù)就越多,構(gòu)成的神經(jīng)網(wǎng)絡(luò)就越復(fù)雜。這樣復(fù)雜的生物神經(jīng)網(wǎng)絡(luò)具有強大的功能,使我們可以通過觸覺、聽覺、視覺等來感知這個世界,通過思考來進行決策等等。人工神經(jīng)網(wǎng)絡(luò)不是被憑空創(chuàng)造出來的,而是科學家從中受到了啟發(fā),用數(shù)學和計算機模擬的,最初科學家們設(shè)計出的人工神經(jīng)網(wǎng)絡(luò)非常簡單,但經(jīng)過多年的演變發(fā)展到了多層的復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu),然后從復(fù)雜網(wǎng)絡(luò)發(fā)展到更復(fù)雜的人工神經(jīng)網(wǎng)絡(luò),就像建樓房一樣越建越高,越建越密,但在AI領(lǐng)域中稱之為越來越深。
圖3 神經(jīng)網(wǎng)絡(luò)模型圖
目前為止,幾乎所有由神經(jīng)網(wǎng)絡(luò)創(chuàng)造出的價值都基于一種機器學習,就是上文提到的“監(jiān)督學習”。在監(jiān)督學習過程中,輸入“A”,學習得到一個函數(shù),就能映射得到輸出“B”,將這個監(jiān)督學習過的組件嵌入到更大型的系統(tǒng)中,就能應(yīng)用在很多人工智能領(lǐng)域。除了相對標準的神經(jīng)網(wǎng)絡(luò)外,還有更深層的神經(jīng)網(wǎng)絡(luò),但它被賦予了一個全新的名字——深度學習。
Part 03
深度學習
2006年,加拿大多倫多大學教授、機器學習領(lǐng)域泰斗、神經(jīng)網(wǎng)絡(luò)之父—— Geoffrey Hinton 和他的學生 Ruslan Salakhutdinov 在頂尖學術(shù)刊物《科學》上發(fā)表了一篇文章,該文章提出了深層網(wǎng)絡(luò)訓(xùn)練中梯度消失問題的解決方案:無監(jiān)督預(yù)訓(xùn)練對權(quán)值進行初始化+有監(jiān)督訓(xùn)練微調(diào)。斯坦福大學、紐約大學、加拿大蒙特利爾大學等成為研究深度學習的重鎮(zhèn),至此開啟了深度學習在學術(shù)界和工業(yè)界的浪潮。
最早的神經(jīng)網(wǎng)絡(luò)實際應(yīng)用時,因訓(xùn)練速度慢、容易過擬合、經(jīng)常出現(xiàn)梯度消失以及在網(wǎng)絡(luò)層次比較少的情況下效果并不比其他算法更優(yōu)等原因,實際應(yīng)用的很少。中間很長一段時間神經(jīng)網(wǎng)絡(luò)算法的研究一直處于停滯狀態(tài)。直到Geoffrey Hinton提出了新的解決方法——無監(jiān)督預(yù)訓(xùn)練對權(quán)值進行初始化+有監(jiān)督訓(xùn)練微調(diào)。其與神經(jīng)網(wǎng)絡(luò)最大的不同點就是不需要標簽數(shù)據(jù)、有更多的隱藏層,以及自下上升非監(jiān)督學習,結(jié)合自頂向下的監(jiān)督學習的方式。不僅如此,它還能利用空間相對關(guān)系,減少參數(shù)數(shù)目以提高訓(xùn)練性能。如卷積神經(jīng)網(wǎng)絡(luò),長短時記憶網(wǎng)絡(luò),深度殘差網(wǎng)絡(luò)等都屬于深度學習,其中深度殘差網(wǎng)絡(luò)的深度可以到達1000層,甚至更多。深層的網(wǎng)絡(luò)有助于挖掘數(shù)據(jù)中深層的特征,可以使得網(wǎng)絡(luò)擁有更強大的性能。
Part 04
總結(jié)
機器學習是一種實現(xiàn)AI的方法,也是一門研究如何實現(xiàn)AI的學科,它最主要的一門技術(shù)是深度學習,而深度學習又是在神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上發(fā)展起來的,關(guān)系如下圖所示。
圖4 機器學習關(guān)系圖
深度學習給機器學習帶來了一個新浪潮,受到從學術(shù)界到工業(yè)界的廣泛重視。在應(yīng)用方面,深度學習使得語音圖像的智能識別取得驚人進展。如果未來能在理論、建模方面,突破深度學習技術(shù)面臨的一系列難題,將加速推進人工智能發(fā)展。