【E問E答】什么是數(shù)據(jù)科學、機器學習和AI?它們有啥區(qū)別?
當我進行以數(shù)據(jù)科學家進行自我介紹時,經(jīng)常會被問道:“數(shù)據(jù)科學和機器學習有什么區(qū)別?”或者“這是不是意味著你在研究人工智能?”所以我將通過本文進行回答。
本文引用地址:http://www.ex-cimer.com/article/201801/374798.htm這些領域確實有很多重疊的地方,但它們并不是一個領域:即使很難用語言表達,這些領域的大多數(shù)專家也都能直觀的理解特定的工作是如何被分類為數(shù)據(jù)科學、機器學習或人工智能的。
所以在這篇文章中,我提出了關于這三個領域差異的簡化定義:
·數(shù)據(jù)科學產(chǎn)生洞察力。
·機器學習做出預測。
·人工智能生成行為。
顯然,這不是一個充分條件:不是所有符合該定義的東西都是該領域的一部分。(算命先生做出預言,但我們不會說他們在做機器學習!)這也不是一個確定某人角色或者職位頭銜的好方法(我是數(shù)據(jù)科學家嗎?)。
但是我認為這個定義對區(qū)分這三種工作是非常有效方法,并且可以避免你談論它的時候聽起來很傻。
數(shù)據(jù)科學生成洞察力
數(shù)據(jù)科學與其他兩個領域非常不同,因為它的目標同時也是人類的一個目標:獲得洞察力和理解能力。Jeff Leek對數(shù)據(jù)科學能夠達到的洞察類型有一個很好的定義,包括描述性(“平均客戶端更新的幾率為70%”)探索性(不同的銷售人員有不同的更新率)和因果關系。
同樣,并不是所有產(chǎn)生洞察力的都有資格成為數(shù)據(jù)科學,數(shù)據(jù)科學的經(jīng)典定義是它涉及了統(tǒng)計學,軟件工程和領域?qū)I(yè)知識的組合。但是我們可以利用這個定義來區(qū)分它和ML、AI。它們最主要的區(qū)別在于,在數(shù)據(jù)科學循環(huán)過程中總需要人參與:由人理解洞察結(jié)果,了解大體輪廓,或者從結(jié)論中獲益。所以像“下棋算法使用數(shù)據(jù)科學來選擇下一步”或者“谷歌地圖使用數(shù)據(jù)科學來推薦駕駛方向”這些說法都是毫無意義的。
因此,數(shù)據(jù)科學的定義強調(diào):
·統(tǒng)計推斷
·數(shù)據(jù)可視化
·實驗設計
·領域知識
·通訊
數(shù)據(jù)科學家可以使用一些非常簡單的工具:他們可以獲得百分比,并根據(jù)SQL查詢結(jié)果繪制線形圖。也可以使用非常復雜的方法:他們能夠與分散的數(shù)據(jù)倉庫合作,分析數(shù)以萬億計的記錄,從而開發(fā)最前沿的統(tǒng)計技術(shù),建立交互式可視化。但是不管他們使用什么,目的都是為了更好地理解他們的數(shù)據(jù)。
機器學習做出預測
我認為機器學習屬于預測領域:“給出具有特定特征的實例X,推測Y”。這些預測可能是關于未來的(預測這個病人是否會進入敗血癥),也可能是關于預測對計算機來說不那么明顯的特性(預測這個圖像是否會有鳥)。幾乎所有的Kaggle競賽都可以被認為是機器學習相關的問題:他們提供一些訓練數(shù)據(jù),然后看看競賽者能否對新的例子做出準確的預測。
數(shù)據(jù)科學和機器學習有很多的重疊之處。例如,都可以用邏輯回歸來獲取對有關關系的見解(越富裕的人越有可能購買我們的產(chǎn)品,所以我們應該改變我們的營銷策略)并且可以做出預測(該用戶有53%的幾率購買我們的產(chǎn)品,所以我們應該多向他們推銷)。
像隨機森林(random forests)這樣的模型,其可解釋性稍差,所以更適合“機器學習”的描述,而深度學習等方法則是難以解釋的。如果你的目標是獲取真知灼見,而不是做出預測,那么這可能會妨礙你。因此,我們可以想象一個數(shù)據(jù)科學和機器學習的“光譜”,有更多的可解釋模型傾向于數(shù)據(jù)科學方面,而更多的是機器學習方面的“黑匣子”模型。
大多數(shù)的從業(yè)者能夠非常自在的在兩個領域之間來回切換。我在工作中就同時使用了機器學習和數(shù)據(jù)學習:我可以在Stack Overflow流量數(shù)據(jù)上安裝一個模型,以確定哪些用戶可能正在尋找工作(機器學習),然后構(gòu)建總結(jié)和可視化來檢驗模型的工作原理(數(shù)據(jù)科學)。這是發(fā)現(xiàn)模型缺陷的一個重要方法,也是解決算法偏差的重要方法。這是數(shù)據(jù)科學家常常負責開發(fā)產(chǎn)品的機器學習組件的原因之一。
人工智能生成行為
人工智能是迄今為止這三種標識中最古老也是最廣為人知的,因此定義它最具有挑戰(zhàn)性。這個術(shù)語已經(jīng)被炒作泛濫,這要歸功于研究人員,記者以及尋求金錢或者關注的創(chuàng)業(yè)公司。
·當你籌備資金時,這是人工智能
·當你招聘時,就是ML
·當你正在執(zhí)行時,這就是線性回歸
·當你調(diào)試時,就是printf()
讓我沮喪的是這引起了強烈的反彈,因為這意味著一些應該被稱為人工智能的工作卻沒有得到相應的描述。一些研究人員甚至還抱怨人工智能的影響:“人工智能是我們目前還做不到的”。那么我們可以用AI來描述什么工作呢?
“人工智能”定義中的一個共同點是自主代理人執(zhí)行或推薦操作,一些我認為應該描述為AI的系統(tǒng)包括:
·游戲規(guī)則(深藍,AlphaGo)
·機器人與控制理論(運動規(guī)劃,行走兩足機器人)
·優(yōu)化(谷歌地圖選擇路線)
·自然語言處理(bots2)
·強化學習
同樣,我們可以看到它與其他領域有很多重疊之處。而深度學習橫跨了ML和AI兩個領域,這非常有趣。典型的用例是對數(shù)據(jù)進行訓練,然后生成預測,但在AlphaGo這樣的博弈算法中卻取得了巨大的成功。(這與早期的游戲系統(tǒng)不同,比如深藍,它更專注于探索和優(yōu)化未來的解決方案空間)。
但也有區(qū)別。如果我分析一些銷售數(shù)據(jù)并發(fā)現(xiàn)某個特定行業(yè)的客戶比其他行業(yè)的客戶更新的更多,那么輸出的是一些數(shù)字和圖形,而不是指定操作。
請不要將那些訓練算法的人描述為“利用了人工智能的力量”。
- Dave Gershgorn (@davegershgorn) 2017年9月18日。
人工智能和機器學習之間的區(qū)別更加微妙,歷史上的ML經(jīng)常被認為是人工智能的一個分支(特別是計算機視覺,其實它是一個典型的人工智能問題)。但我認為,ML領域很大程度上是由人工智能“中斷”的,部分原因是上面描述的反彈:大多數(shù)從事預測問題的人不喜歡把自己描述為人工智能研究員。(它能通過統(tǒng)計數(shù)據(jù)幫助許多ML實現(xiàn)重大突破,而這些數(shù)據(jù)在人工智能的其他領域卻沒有那么大的影響力)。這意味著如果你可以用“Y預測X”來描述一個問題,那么我建議你避免使用AI這個詞。
案例研究:如何一起使用這三者?
假設我們正在制造一輛自動駕駛汽車,并且正在研究如何在停車標記處自動停車的具體問題。那么我們將需要使用這三個領域的技能。
機器學習:汽車必須能夠通過攝像頭識別停車標志。我們構(gòu)建了數(shù)據(jù)集,其中包含數(shù)以百萬計的街邊對象的照片,并訓練一種算法來預測哪些有停止標志。
人工智能:一旦我們的汽車能夠識別停車標志了,就需要決定什么時候執(zhí)行剎車動作。太早太晚都非常危險,而且我們需要它能應對不同的路況(例如,它要能意識到在濕滑路面上剎車不會快速減速),這是一個控制理論的問題。
數(shù)據(jù)科學:在街頭測試中,我們發(fā)現(xiàn)車輛性能不夠好,因為總會略過一些停車標志。通過對街頭測試數(shù)據(jù)的分析,我們得出了結(jié)論:在日出之前和日落之后,更容易錯過停車標志。這讓我們意識到,我們大部分的訓練數(shù)據(jù)只包含白天的影像,所以我們構(gòu)造了一個包括了夜間圖像的更好的數(shù)據(jù)集,然后重新回到機器學習步驟進行研究測試。
我們常說的“機器人”指的是解釋自然語言,然后以實物回應的系統(tǒng)。這可以從文本挖掘中區(qū)分出來,其目標是提取見解(數(shù)據(jù)科學)或文本分類,其目標是對文檔進行分類(機器學習)。
評論