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