1. 程式人生 > >一文讀懂機器學習、資料科學、深度學習和統計學之間的區別

一文讀懂機器學習、資料科學、深度學習和統計學之間的區別

  明晰了資料科學家所具有的不同角色,以及資料科學與機器學習、深度學習、人工智慧、統計學等領域的區別。這些概念的區別也一直是人工智慧領域熱烈討論的一個話題,Quora、多個技術部落格都曾有過解答。機器之心之前編譯的一篇文章《人工智慧、機器學習、深度學習,三者之間的同心圓關係》也對此問題進行了探討,但似乎業內還未能給出一個權威的、令所有人信服的回答。如果對這篇文章中的觀點不認同,歡迎大家留言討論。

  在這篇文章中,資料科學家與分析師 Vincent Granville 明晰了資料科學家所具有的不同角色,以及資料科學與機器學習、深度學習、人工智慧、統計學、物聯網、運籌學和應用數學等相關領域的比較和重疊。Granville 介紹說,由於資料科學是一個範圍很廣的學科,所以他首先介紹了在業務環境中可能會遇到的資料科學家的型別:你甚至可能會發現你自己原來也是某種資料科學家。和其它任何科學學科一樣,資料科學也可能會從其它相關學科借用技術;當然,我們也已經開發出了自己的技術庫,尤其是讓我們可以以自動化的方式(甚至完全無需人類干預)處理非常大規模的非結構化資料集的技術和演算法,進而實時執行交易或進行預測。

  1. 資料科學傢俱有哪些不同型別?

  要更詳細地瞭解資料科學家的型別,可參閱文章:http://suo.im/28rlX1 和 http://suo.im/3NNUpd。更多有用的資訊可參閱:

  資料科學家與資料架構師:http://suo.im/4bRkRG

  資料科學家與資料工程師:http://suo.im/3mpo6E

  資料科學家與統計學家:http://suo.im/2GGtfG

  資料科學家與業務分析師:http://suo.im/3h0hkX

  而在最近,資料科學家 Ajit Jaokar 則又討論了 A 型資料科學家(分析師)和 B 型資料科學家(建造者)之間的區別:

  A 型資料科學家能夠很好地編寫操作資料的程式碼,但並不一定是一個專家。A 型資料科學家可能是一個實驗設計、預測、建模、統計推理或統計學方面的事情的專家。然而總體而言,一個數據科學家的工作產品並不是「P 值和置信區間」——就像學術界的統計學有時候建議的那樣(而且這常常是為傳統的製藥等等行業工作的)。在谷歌,A 型資料科學家被稱為統計學家、定量分析師、決策支援工程開發分析師,也有一些被稱為資料科學家。

  B 型資料科學家:這裡的 B 是指 Building。B 型資料科學家和 A 型資料科學傢俱有相同的背景,但他們還是很強的程式設計師、甚至經驗豐富的軟體工程師。B 型資料科學家主要關注在生產環境中使用資料。他們構建能與使用者進行互動的模型,通常是提供推薦(產品、可能認識的人、廣告、電影、搜尋結果等)。

  而對於業務處理優化,我也有自己的看法,我將其分成了 ABCD 四個方向,其中 A 表示分析科學(analytics science),B 表示業務科學(business science),C 表示電腦科學(computer science),D 則表示資料科學(data science)。資料科學可能會涉及到程式設計或數學實踐,但也可能不會涉及到。你可以參考 http://suo.im/11bR7o 這篇文章瞭解高階和低端的資料科學的差異。在一家創業公司,資料科學家通常要做很多型別的工作,其扮演的工作角色可能包括:執行、資料探勘師、資料工程師或架構師、研究員、統計學家、建模師(做預測建模等等)和開發人員。

  雖然資料科學家常常被看作是經驗豐富的 R、Python、SQL、Hadoop 程式設計師,而且精通統計學,但這不只不過是冰山一角而已——人們對於資料科學家的這些看法不過是來自於重在教授資料科學的部分元素的資料培訓專案而已。但正如一位實驗室技術人員也可以稱自己為物理學家一樣,真正的物理學家遠不止於此,而且他們的專業領域也是非常多樣化的:天文學、數學物理、核物理、力學、電氣工程、訊號處理(這也是資料科學的一個領域)等等許多。資料科學也是一樣,包含的領域有:生物資訊學、資訊科技、模擬和量化控制、計算金融、流行病學、工業工程、甚至數論。

  對我而言,在過去的十年裡,我專注於機器到機器和裝置到裝置的通訊、開發能自動處理大型資料集的系統、執行自動化交易(比如購買網路流量或自動生成內容)。這意味著需要開發能夠處理非結構化資料的演算法,這也是人工智慧、物聯網和資料科學的交叉領域,也可被稱為深度資料科學(deep data science)。其對數學的需求相對較少,也只涉及到較少的程式設計(大部分是呼叫 API),但其卻是相當資料密集型的(包括構建資料系統),並且基於專門為此背景而設計的全新統計技術。

  在此之前,我的工作是實時的信用卡欺詐檢測。在我事業的早期階段(大約 1990 年),我開發過影象遠端感知技術,其中包括識別衛星影象的模式(形狀和特徵,比如湖泊)和執行影象分割:那段時間我的研究工作被稱為是計算統計學,但在我的母校,隔壁的計算機科學系也在做著幾乎完全一樣的事情,但他們把自己的工作叫做是人工智慧。

  今天,這項工作被稱作資料科學或人工智慧,其子領域包括訊號處理、用於物聯網的計算機視覺等。

  另外,資料科學家也可以在各種各樣的資料科學專案中出現,比如資料收集階段或資料探索階段一直到統計建模和已有系統維護。

  2. 機器學習對比深度學習

  在深入探討資料學習與機器學習之間的區別前,我們先簡單討論下機器學習與深度學習的區別。機器學習一系列在資料集上進行訓練的演算法,來做出預測或採取形同從而對系統進行優化。例如,基於歷史資料,監督分類演算法就被用來分類潛在的客戶或貸款意向。根據給定任務的不同(例如,監督式聚類),用到的技術也不同:樸素貝葉斯、支援向量機、神經網路、ensembles、關聯規則、決策樹、邏輯迴歸或多種方法之間的結合。

  這些都是資料科學的分支。當這些演算法被用於自動化的時候,就像在自動飛行或無人駕駛汽車中,它被稱為人工智慧,更具體的細說,就是深度學習。如果資料收集自感測器,通過網際網路進行傳輸,那就是機器學習或資料科學或深度學習應用到了 IoT 上。

  有些人對深度學習有不同的定義。他們認為深度學習是帶有更多層的神經網路(神經網路是一種機器學習技術)。深度學習與機器學習的區別這一問題在 Quora 上也被問到過,下面對此有詳細的解釋:

  人工智慧是電腦科學的一個子領域,創造於 20 世紀 60 年代,它涉及到解決對人類而言簡單卻對計算機很難的任務。詳細來說,所謂的強人工智慧系統應該是能做人類所能做的任何事。這是相當通用的,包含所有的任務,比如規劃、到處移動、識別物體與聲音、說話、翻譯、完成社會或商業事務、創造性的工作(繪畫、作詩)等。

  自然語言處理只是人工智慧與語言有關的一部分。

  機器學習被認為是人工智慧的一方面:給定一些可用離散術語(例如,在一些行為中,那個行為是正確的)描述的人工智慧問題,並給出關於這個世界的大量資訊,在沒有程式設計師進行程式設計的情況下弄清楚「正確」的行為。典型的是,需要一些外部流程判斷行為是否正確。在數學術語中,也就是函式:饋入輸入,產生正確的輸出。所以整個問題就是以自動化的方式建立該數學函式的模型。在二者進行區分時:如果我寫出的程式聰明到表現出人類行為,它就是人工智慧。但如果它的引數不是自動從資料進行學習,它就不是機器學習。

  深度學習是如今非常流行的一種機器學習。它涉及到一種特殊型別的數學模型,可認為它是特定型別的簡單模組的結合(函式結合),這些模組可被調整從而更好的預測最終輸出。

  3.機器學習與統計學之間的區別

  《Machine Learning Vs. Statistics》這篇文章試圖解答這個問題。這篇文章的作者認為統計學是帶有置信區間(confidence intervals)的機器學習,是為了預測或估計數量。但我不同意,我曾建立過不需要任何數學或統計知識的工程友好的置信區間。

  4. 資料科學對比機器學習

  機器學習和統計學都是資料科學的一部分。機器學習中的學習一詞表示演算法依賴於一些資料(被用作訓練集),來調整模型或演算法的引數。這包含了許多的技術,比如迴歸、樸素貝葉斯或監督聚類。但不是所有的技術都適合機器學習。例如有一種統計和資料科學技術就不適合——無監督聚類,該技術是在沒有任何先驗知識或訓練集的情況下檢測 cluster 和 cluster 結構,從而幫助分類演算法。這種情況需要人來標記 cluster。一些技術是混合的,比如半監督分類。一些模式檢測或密度評估技術適合機器學習。

  資料科學要比機器學習廣泛。資料科學中的資料可能並非來自機器或機器處理(調查資料可能就是手動收集,臨床試驗涉及到專業型別的小資料),就像我剛才所說的,它可能與「學習」沒有任何關係。但主要的區別在於資料科學覆蓋整個資料處理,並非只是演算法的或統計類分支。細說之,資料科學也包括:

  資料整合(data integration)

  分散式架構(distributed architecture)

  自動機器學習(automating machine learning)

  資料視覺化(data visualization)

  dashboards 和 BI

  資料工程(data engineering)

  產品模式中的部署(deployment in production mode)

  自動的、資料驅動的決策(automated, data-driven decisions)

  當然,在許多公司內資料科學家只專注這些流程中的一個。

  對於這篇文章,技術顧問 Suresh Babu 給出了一個評論,機器之心將其編譯整合到了下面:

  這篇文章說明了解使用機器/計算機來處理類似人類決策的任務的統計學習的基本術語是件很麻煩的事。

  但文章中「當這些演算法被用於自動化的時候,就像在自動飛行或無人駕駛汽車中,它被稱為人工智慧,更具體的細說,就是深度學習。」這樣的說話看起來卻有些隨意任性。

  當過去計算機/機器還不夠友好,沒有得到廣泛使用的時候,統計學家和資料科學家的工作和現在這個領域的工作有很大的不同。比如說,當製造業開始使用計算機輔助後,生產速度和量都發生了巨大的變化——但它仍然是製造業。用製造機器來做原本人類做的程式化工作的想法最早來自 19 世紀初 Jacquard 和 Bouchon 等人。而 Jacquard 織布機的工作方式和現在計算機控制的織布機的工作方式基本相同。

  現在的資料科學是一個知識體系,囊括了統計學和計算方法等等(而且在不同的具體領域不同學科的比例也不一樣)。

  機器學習(或使用了其它的術語,比如深度學習、認知計算)是讓機器像人類一樣思考和推理,基本上而言是指通過人工的方法(所以也叫人工智慧)來代替人類天生的自然智慧——涉及到的任務從簡單到複雜都有。比如,無人駕駛汽車(目前)正在模仿人類的駕駛,駕駛條件也是人類在自然情況下會遇到的——我說「目前」是因為也許未來人類將很少能夠直接駕駛機器,「駕駛(drive)」這個詞本身都可能會改變含義。

  這個領域裡面也有些滑稽可笑的事情,比如一些基本的東西(比如一個下國際象棋或圍棋的演算法)被認為可以解釋人腦的工作方式。就我們目前的知識水平而言,光是解釋鳥或魚的大腦的工作方式就已經非常困難了——這說明我們還沒有真正理解學習的機制。為什麼果蠅只需幾百個神經元就能做到這麼多事情?這還是神經科學的一個未解之謎。而認知是什麼以及其在自然環境下是如何工作的也是一個數據科學傲慢地認為自己能解決的重大難題。(不管怎樣,降維是一種無監督學習的方法。)

  在很多方面,工具以及我們使用工具所做的事情自人類誕生以來就在引導著人類的學習。但這就扯遠了。

相關推薦

機器學習資料科學深度學習統計學之間區別

  明晰了資料科學家所具有的不同角色,以及資料科學與機器學習、深度學習、人工智慧、統計學等領域的區別。這些概念的區別也一直是人工智慧領域熱烈討論的一個話題,Quora、多個技術部落格都曾有過解答。機器之心之前編譯的一篇文章《人工智慧、機器學習、深度學習,三者之間的同心圓關係》也對此問題進行了探討,但似乎業內

[轉]機器學習科普文章:“機器學習,大資料/自然語言處理/演算法全有了”

       在本篇文章中,我將對機器學習做個概要的介紹。本文的目的是能讓即便完全不瞭解機器學習的人也能瞭解機器學習,並且上手相關的實 踐。這篇文件也算是EasyPR開發的番外篇,從這裡開始,必須對機器學習瞭解才能進一步介紹EasyPR的核心。當然,本文也面對一般讀者,不會對

機器學習,大資料/自然語言處理/演算法全有了……

作者注:本文生動形象,深入淺出的方式介紹了機器學習及其它演算法,適合新人和想更加了解機器學習的讀者閱讀,此文屬於轉載,下面連結是原文出處,我們尊重原作者的版權保護。https://www.cnblogs.com/donaldlee2008/p/5224325.html  在本

深度學習機器學習常用損失函數(Loss Function)

back and 們的 wiki 導出 歐氏距離 classes 自變量 關於 最近太忙已經好久沒有寫博客了,今天整理分享一篇關於損失函數的文章吧,以前對損失函數的理解不夠深入,沒有真正理解每個損失函數的特點以及應用範圍,如果文中有任何錯誤,請各位朋友指教,謝謝~

機器學習大殺器XGBoost原理

結構 近似算法 機器 form con gin fff .cn tran http://blog.itpub.net/31542119/viewspace-2199549/ XGBoost是boosting算法的其中一種。Boosting算法的思想是將許多弱分類器集成在

機器學習機器學習常用損失函式

損失函式(loss function)是用來估量模型的預測值f(x)與真實值Y的不一致程度,它是一個非負實值函式,通常使用L(Y, f(x))來表示,損失函式越小,模型的魯棒性就越好。損失函式是經驗風險函式的核心部分,也是結構風險函式重要組成部分。模型的結構風險函式包括了經驗風險項和正則項,通常可以

獨家總結 | 機器學習的“發展歷程” (時間歷程,詳細又充實!)

機器學習是人工智慧AI研究發展到一定階段的必然產物! 二十世紀五十年代~七十年代初,“推理期”:機器的只能體現在具有邏輯推理能力。 二十世紀七十年代中期開始,AI進入“知識期”,希望機器能夠自己學習! 其實,圖靈1950年就曾提到過機器學習的可能 五十年代中後期,基於神經網路的“連線

區塊鏈vs.DAG, 區別到底是什麼? 燒腦的資料結構之爭

作者 | 劉春明 DAG(有向無環圖)是一種非線性資料結構,可以替代區塊鏈,用於分散式賬本的儲存。這種結構在併發的場景下有更好的效能表現,但在實際應用中會面臨更多的技術挑戰。 其中,最大的挑戰在於,基於DAG結構實現智慧合約,要比基於區塊鏈結構困難得多。 本文將討論DAG和

比特幣私鑰公鑰錢包地址的來歷關係

對比特幣熟悉的朋友一定都知道,買賣比特幣最後都是通過一個錢包地址來實現的,就像我們日常使用的銀行卡卡號,我們隨便找一個比特幣的錢包地址,大家看一下:1QCXRuoxWo5Bya9NxHaVBArBQYhatHJrU7但是當談到比特幣的錢包地址是如何算出來的時候,可能就很少有人

貝葉斯推理問題:MCMC方法變分推斷

全文共6415字,預計學習時長20分鐘或更長 圖片來源:pexels.com/@lum3n-com-44775 貝葉斯推理

深度學習機器學習的差異

作者:oschina 如果你經常想讓自己弄清楚機器學習和深度學習的區別,閱讀該文章,我將用通俗易懂的語言為你介紹他們之間的差別。機器學習和深度學習變得越來越火。突然之間,不管是瞭解的還是不瞭解的,所有人都在談論機器學習和深度學習。無論你是否主動關注過資料科學,你

Spring Boot微服務架構資料治理三者之間的故事

微服務架構 微服務的誕生並非偶然,它是在網際網路高速發展,技術日新月異的變化以及傳統架構無法適應快速變化等多重因素的推動下誕生的產物。網際網路時代的產品通常有兩類特點:需求變化快和使用者群體龐大,在這種情況下,如何從系統架構的角度出發,構建靈活、易擴充套件的系統,快速應對需求的變化;同時,隨著使用者的增加,如

機器學習機器學習Top10演算法,教你選擇最合適的那一個!ML中的解析解與數值解...

在機器學習領域裡,不存在一種萬能的演算法可以完美解決所有問題,尤其是像預測建模的監督學習裡。比方

雲端計算資料人工智慧

最近我們和美國的“貿易戰”打的是如火如荼,這位“推特治國”的川普總統總是給人一種“政治嬰兒,商業天才”的感覺,貿易戰的目的有很大一部分被認為是遏制“中國製造2025”。中國製造2025是一系列巨集偉的計劃,能夠使中國完成民族復興,其中重點發展領域就是資訊科技相關的創新產業,具

監督學習無監督學習半監督學習強化學習這四種深度學習方式

 一般說來,訓練深度學習網路的方式主要有四種:監督、無監督、半監督和強化學習。在接下來的文章中,計算機視覺戰隊將逐個解釋這些方法背後所蘊含的理論知識。除此之外,計算機視覺戰隊將分享文獻中經常碰到的術語,並提供與數學相關的更多資源。 監督學習(Supervised

Spring Boot微服務架構資料治理之間的故事

微服務架構 微服務的誕生並非偶然,它是在網際網路高速發展,技術日新月異的變化以及傳統架構無法適應快速變化等多重因素的推動下誕生的產

機器學習分類演算法常用評價指標

評價指標是針對將相同的資料,輸入不同的演算法模型,或者輸入不同引數的同一種演算法模型,而給出這個演算法或者引數好壞的定量指標。 在模型評估過程中,往往需要使用多種不同的指標進行評估,在諸多的評價指標中,大部分指標只能片面的反應模型的一部分效能,如果不能合理的運用評估指標,不僅不能發現模型本身的問題,而且會得出

Spring Boot微服務架構大數據治理之間的故事

Springboot微服務架構 微服務的誕生並非偶然,它是在互聯網高速發展,技術日新月異的變化以及傳統架構無法適應快速變化等多重因素的推動下誕生的產物。互聯網時代的產品通常有兩類特點:需求變化快和用戶群體龐大,在這種情況下,如何從系統架構的角度出發,構建靈活、易擴展的系統,快速應對需求的變化;同時,隨著用戶的

阻塞非阻塞同步異步IO

UC max register class 掃描 基本 角度 cloud 問題: 介紹 在談及網絡IO的時候總避不開阻塞、非阻塞、同步、異步、IO多路復用、select、poll、epoll等這幾個詞語。在面試的時候也會被經常問到這幾個的區別。本文就來講一下這幾個詞

資料技術驅動的銀行客戶畫像

2018年上半年我國GDP增速6.8%,在貿易戰和去槓桿的影響下,雖然金融市場震盪明顯,但銀行受到網際網路、移動計算到雲端計算、大資料、物聯網、人工智慧等技術變革的影響,仍舊保持了較好盈利。在採取了業務轉型與創新、同業業務從線下向線上轉移、資產結構的進一步優化等諸多調整措施的過程中,“手機銀行、P2