機(jī)器學(xué)習(xí)的發(fā)展歷史介紹
機(jī)器學(xué)習(xí)已經(jīng)成為了當(dāng)今的熱門話題,但是從機(jī)器學(xué)習(xí)這個(gè)概念的誕生到機(jī)器學(xué)習(xí)技術(shù)的普遍應(yīng)用經(jīng)過了漫長(zhǎng)的過程。在機(jī)器學(xué)習(xí)發(fā)展的歷史長(zhǎng)河中,眾多優(yōu)秀的學(xué)者為推動(dòng)機(jī)器學(xué)習(xí)的發(fā)展做出了巨大的貢獻(xiàn)。
從1642年Pascal發(fā)明的手搖式計(jì)算機(jī),到1949年Donald Hebb提出的赫布理論——解釋學(xué)習(xí)過程中大腦神經(jīng)元所發(fā)生的變化,都蘊(yùn)含著機(jī)器學(xué)習(xí)思想的萌芽。
事實(shí)上,1950年圖靈在關(guān)于圖靈測(cè)試的文章中就已提及機(jī)器學(xué)習(xí)的概念。到了1952年,IBM的亞瑟·塞繆爾(Arthur Samuel,被譽(yù)為“機(jī)器學(xué)習(xí)之父”)設(shè)計(jì)了一款可以學(xué)習(xí)的西洋跳棋程序。它能夠通過觀察棋子的走位來構(gòu)建新的模型,用來提高自己的下棋技巧。塞繆爾和這個(gè)程序進(jìn)行多場(chǎng)對(duì)弈后發(fā)現(xiàn),隨著時(shí)間的推移,程序的棋藝變得越來越好[1]。塞繆爾用這個(gè)程序推翻了以往“機(jī)器無法超越人類,不能像人一樣寫代碼和學(xué)習(xí)”這一傳統(tǒng)認(rèn)識(shí),并在1956年正式提出了“機(jī)器學(xué)習(xí)”這一概念。他認(rèn)為“機(jī)器學(xué)習(xí)是在不直接針對(duì)問題進(jìn)行編程的情況下,賦予計(jì)算機(jī)學(xué)習(xí)能力的一個(gè)研究領(lǐng)域”。
對(duì)機(jī)器學(xué)習(xí)的認(rèn)識(shí)可以從多個(gè)方面進(jìn)行,有著“全球機(jī)器學(xué)習(xí)教父”之稱的Tom Mitchell則將機(jī)器學(xué)習(xí)定義為:對(duì)于某類任務(wù)T和性能度量P,如果計(jì)算機(jī)程序在T上以P衡量的性能隨著經(jīng)驗(yàn)E而自我完善,就稱這個(gè)計(jì)算機(jī)程序從經(jīng)驗(yàn)E學(xué)習(xí)。這些定義都比較簡(jiǎn)單抽象,但是隨著對(duì)機(jī)器學(xué)習(xí)了解的深入,我們會(huì)發(fā)現(xiàn)隨著時(shí)間的變遷,機(jī)器學(xué)習(xí)的內(nèi)涵和外延在不斷地變化。因?yàn)樯婕暗降念I(lǐng)域和應(yīng)用很廣,發(fā)展和變化也相當(dāng)迅速,簡(jiǎn)單明了地給出“機(jī)器學(xué)習(xí)”這一概念的定義并不是那么容易。
普遍認(rèn)為,機(jī)器學(xué)習(xí)(Machine Learning,常簡(jiǎn)稱為ML)的處理系統(tǒng)和算法是主要通過找出數(shù)據(jù)里隱藏的模式進(jìn)而做出預(yù)測(cè)的識(shí)別模式,它是人工智能(Artificial Intelligence,常簡(jiǎn)稱為AI)的一個(gè)重要子領(lǐng)域,而人工智能又與更廣泛的數(shù)據(jù)挖掘(Data Mining,常簡(jiǎn)稱為DM)和知識(shí)發(fā)現(xiàn)(Knowledge Discovery in Database,常簡(jiǎn)稱為KDD)領(lǐng)域相交叉。
1956年機(jī)器學(xué)習(xí)的概念由Arthur Samuel正式提出。
1965年,James William Cooley和John Tukey設(shè)計(jì)了快速傅里葉變換(FFT)算法,用于計(jì)算由多個(gè)簡(jiǎn)單函數(shù)組合而成的原始信號(hào)的正弦曲線的幅度、相位和頻率,該算法被廣泛應(yīng)用于各類工程、科學(xué)和數(shù)學(xué)問題中。
1980年,Kunihiko Fukushima發(fā)明了neocognitron,它是一個(gè)分層的多層人工神經(jīng)網(wǎng)絡(luò),它的出現(xiàn)直接導(dǎo)致了后期卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,通常簡(jiǎn)稱為CNN)的發(fā)明。
1993年,免費(fèi)的、非商業(yè)化機(jī)器學(xué)習(xí)以及數(shù)據(jù)挖掘軟件WEKA面世,它是由新西蘭懷卡托大學(xué)研發(fā)的[6]。WEKA作為一個(gè)公開的數(shù)據(jù)挖掘工作平臺(tái),集合了大量能承擔(dān)數(shù)據(jù)挖掘任務(wù)的機(jī)器學(xué)習(xí)算法,包括對(duì)數(shù)據(jù)進(jìn)行預(yù)處理、分類、回歸、聚類、關(guān)聯(lián)規(guī)則以及在新的交互式界面上的可視化,它的出現(xiàn)極大地降低了學(xué)習(xí)機(jī)器學(xué)習(xí)的門檻。
1995年,貝爾實(shí)驗(yàn)室的Tin Kam Ho利用隨機(jī)子空間方法創(chuàng)建隨機(jī)決策森林(Random Decision Forests)算法,該算法既可以用于回歸也可以用于分類任務(wù),并且很容易查看模型輸入特征的相對(duì)重要性,是一個(gè)高度靈活并且應(yīng)用廣泛的算法。
2010年,Kaggle由其聯(lián)合創(chuàng)始人、首席執(zhí)行官Anthony Goldbloom在墨爾本創(chuàng)立,主要為開發(fā)商和數(shù)據(jù)科學(xué)家提供舉辦機(jī)器學(xué)習(xí)競(jìng)賽、托管數(shù)據(jù)庫、編寫和分享代碼的平臺(tái)。該平臺(tái)已經(jīng)吸引了80萬名數(shù)據(jù)科學(xué)家的關(guān)注,極大地推動(dòng)了機(jī)器學(xué)習(xí)在全球的推廣。
2011年,IBM的認(rèn)知計(jì)算系統(tǒng)Watson橫空出世,在問答節(jié)目中首次擊敗了人類。當(dāng)年,Watson身價(jià)大漲逐漸成為了IBM乃至全球AI項(xiàng)目的代表。Watson當(dāng)年的成功向人們預(yù)示著一個(gè)新時(shí)代似乎就要開始了。
2012年,Andrew Ng團(tuán)隊(duì)和Jeff Dean團(tuán)隊(duì)通過深度學(xué)習(xí)技術(shù),讓16000個(gè)中央處理器核心在學(xué)習(xí)了1000萬張圖片后,成功在YouTube視頻中認(rèn)出了貓的圖像,這在當(dāng)時(shí)業(yè)界引起了極大的轟動(dòng)。
2015年,由Google旗下DeepMind公司戴密斯·哈薩比斯領(lǐng)銜的團(tuán)隊(duì)開發(fā)的阿爾法圍棋AlphaGo,成為了第一個(gè)擊敗人類職業(yè)圍棋選手、第一個(gè)戰(zhàn)勝圍棋世界冠軍的人工智能機(jī)器人。其主要工作原理是“深度學(xué)習(xí)”,其成功使得“深度學(xué)習(xí)”概念深入人心,并在機(jī)器學(xué)習(xí)的更多廣泛領(lǐng)域得到了應(yīng)用。
2016年,Evans data的大數(shù)據(jù)和高級(jí)分析調(diào)查發(fā)現(xiàn),超過三分之一的開發(fā)者表示他們?cè)诖髷?shù)據(jù)和高級(jí)分析項(xiàng)目中使用了機(jī)器學(xué)習(xí)技術(shù)。微軟團(tuán)隊(duì)開發(fā)了一套能像人類一樣識(shí)別談話內(nèi)容的系統(tǒng)。該團(tuán)隊(duì)曾使用卷積(Convolutional)和長(zhǎng)短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)開發(fā)出Microsoft Cognitive Toolkit(CNTK)。Google Brain團(tuán)隊(duì)公布了Google Neural Machine Translation System,這個(gè)基于深度學(xué)習(xí)的系統(tǒng)目前每天被用于處理1800萬次翻譯請(qǐng)求。