成不了AI高手?由於你根本不懂數據!聽聽這位老教授多年心血練就的最實用統計學

成不了AI高手?由於你根本不懂數據!聽聽這位老教授多年心血練就的最實用統計學

2017-08-20 大數據文摘

著名統計學家、中國人民大學統計學院教授吳喜之教授程序員

 

受權轉載自AI科技大本營算法

ID:rgznai100編程

採訪 | 胡永波,鴿子微信

導讀網絡

機器學習是一門在統計學和計算機科學交叉點上茁壯成長起來的學科。關於數據的學問,全在統計學裏。機器學習

 

在經典統計學中,對於數據性質的研究、偏差的分析、數據質量的判斷、數據模型的創建,有着很是豐富的思想、理論和經驗成果。對於機器學習來講,統計學既是理論基礎,又是思想寶庫。編程語言

 

可是現實世界中,機器學習的實踐者大多出身計算機科學,除了本科學的那一點工科機率論與數理統計,對於統計學,基本上是「隨用隨學,夠用爲止」,所以統計學當中大量的思想資源其實是被閒置的。函數

 

事實上,不管是作人工智能,仍是作商業數據分析,若是可以對統計學有系統的理解,那麼,他對於機器學習的研究和應用便會如虎添翼,登堂入室。工具

 

不過大多數統計學出身的學者推崇數學模型驅動的路子,在他們看來,直接從一堆實際數據出發作預測分析的「野路子」,是登不了學術的大雅之堂的。所以至關多的統計學者並無積極投身機器學習的研究、教學和應用中,與機器學習界的交流也遠遠不夠。post

 

吳喜之教授則走的是一條實用應用之路。

 

吳喜之教授是我國著名的統計學家,退休前在中國人民大學統計學院任統計學教授。吳教授上世紀六十年代就讀於北京大學數學力學系,八十年代出國深造,在美國北卡羅來納大學得到統計學博士學位,是改革開放以後第一批留美並得到統計學博士學位的中國學者。多年來吳教授在國內外數十所高校講授統計學課程,在國內統計學界享有盛譽。

 

早在十多年前,吳教授就第一個在國內大學統計學課堂引入 R 語言,培養了國內第一批 R 語言專家。現在他已古稀之年,仍然孜孜不倦的學習新方法、新工具,而且親自編程實踐,探索不輟。

 

在統計學家當中,他積極擁抱機器學習方法,而且撰寫多部專著,致力於融合統計學和機器學習方法。另外一方面,他對於機器學習,特別是數據性質和質量分析、迴歸與分類,複雜數據統計方法以及時間序列分析,有着統計學家特有的深入思想和豐富實踐,對於機器學習的實踐者,是可貴的明師。

 

所以咱們抓住吳教授在京的寶貴時間,對他進行了一次專訪,請他結合親身實踐經驗,談談機器學習與統計學相互結合促進的問題。在訪談中吳教授介紹了大量的案例,清晰簡明地闡述了他對於機器學習和統計學一些重大問題的見解,是咱們學習數據科學、機器學習和人工智能一份可貴的參考。

 

*如下是訪談的部份內容。

 

作數據就要各領域交叉

AI科技大本營:如今你們都關心人工智能,但咱們AI科技大本營內部在討論的時候就發現,人工智能的關注點更多的是放在算法、模型方面,至於上游的數據蒐集和處理過程,你們關心得並很少。您怎麼看待這一現象呢?

 

吳教授:的確是這樣的,作任何數據分析,首先要有數據。可是怎麼獲得這些數據,就是一個費力不討好的工做了。但這裏的事情必須得幹。好比,人們能經過編程拿到一些網絡數據,可是,拿到數據之後,你怎麼看待這個數據?怎麼處理?用什麼模型?這毫不是一個標準的教科書問題,而是一個集知識、經驗、邏輯及創新能力爲一體的過程。就拿個人書來講,我在書中寫模型,用的雖然都是國外現成的真實數據,但倒是挑選過的,若是對咱們手中的應用數據,直接用書中的模型就未必合適,至少也須要作各類各樣的處理。

 

好比過去,我參與過稅務總局的一個項目,但願把數據中會逃稅的那些人給找出來,但數據並未指明哪些人逃稅。按照機器學習的術語,這屬於"無監督學習",對這個具體數據,沒有教科書或文獻給出任何的方法。具體的數據沒有哪兩個是同樣的,這就要有獨特的處理方法,你必須考慮基於什麼樣的偷稅漏稅機理和背景來創建模型,你總不能說你們都在偷稅漏稅,而的目的是要把最有可能偷稅漏稅的人找出來,因此你就要了解企業避稅方面的思惟方式和可能採用的方法。

 

這就是說,你既要有相關應用領域的知識,又得知道怎麼來處理數據,還要會編程什麼的……全部的東西你都會了,才能作好。這就是數據科學比較複雜、比較費勁的地方,須要有較強的跨學科能力。

 

AI科技大本營:那通常企業在數據處理上的問題多出在哪裏呢?解決這裏的問題須要什麼樣的能力?

 

吳教授:處理數據還在其次,他們不少沒有處理數據最起碼的條件,只能作一些很簡單的事情。記得在90年代,我去過一些比較落後的工廠:像是當時的天津汽車廠,生產雁牌輕型貨車,從零件到成品沒有完整的記錄,基本上沒有多少有關質量的數據;還有一個生產鎳氫電池的工廠,他們但願改進質量,但缺少關鍵的數據……這一類的問題有好多,你就很難作。由於到具體單位解決問題時,你但願他有什麼數據,他可能就是沒有,要想作好事情得從頭開始干預。這說明企業生產線上的問題沒有那麼簡單,不是你想拿什麼就能拿到什麼。但在生產實踐上,偏偏須要這方面的數據來作質量控制,企業本身意識不強,你就很難越俎代庖。

 

AI科技大本營:當下機器學習很是火熱,在它落地到這些具體的應用場景時,應該怎麼面對這裏的數據呢?

 

吳教授:如今專業編程的人比較多,但真正明白這個數據,理解咱們須要從數據獲得什麼知識的很少。因此,一開始很難泛泛回答。

 

就說前面稅務總局的項目,我剛過去時並不清楚,就讓他們先給我講那個問題,我思考以後,就有了一個大致的概念。這些東西很難說是某一個領域的知識,它是一些領域的知識加上經驗、加上數據知識……相互關聯起來,而後纔有進一步怎麼去作的打算。

 

這不是簡單靠幾本書、幾個模型就能解決的。並且,書上的模型通常比較固定,例子也相對簡單,畢竟書上只能介紹那點東西。好比說迴歸,通常回歸書上大部分篇幅寫的都是一百年前的線性最小二乘迴歸,但在最近十幾年中就發展了大量基於算法的新迴歸方法。僅我寫的書中介紹的機器學習迴歸就有不少種,好比基於決策樹的有隨機森林、bagging、boosting,還有支持向量機及較早就發展的神經網絡,它們都可以作迴歸,每每都比線性最小二乘迴歸強大……但你必需要挑一個最好的,因此就須要你把這些數據拿過來作交叉驗證,要讓數據本身來講話,來肯定哪一個模型好,哪一個模型壞。而經典統計上肯定模型的優劣方法嚴重依賴於對數據的沒法證實的衆多數學假定。

 

在機器學習方面,很重要的一點就是交叉驗證,就是用一部分數據來創建一個模型,而後用另一塊數據來驗證這個模型好很差。可是在經典統計裏就沒有這種東西。

 

以經典最小二乘迴歸爲例,作了不少沒法驗證的數學假定,好比模型及偏差的線性形式假定,樣本點的獨立同分布假定,分佈的正態性(或大樣本)假定,對損失函數的二次形式的假定等等,而後根據各類檢驗統計量獲得p值,再按照p值大小獲得結論(每每不加區別地認爲p值小於0.05就顯著)。

 

這些基於百年前的知識結構產生的內容就要安排學生們花一個學期來學,即便這樣古老的課程還有許多原則性錯誤出現於教科書中,而數據科學所須要的最有用的內容卻每每被忽略。因此我常講經典統計的數學式教學方法和模型驅動的思惟方式誤人子弟,這天然會得罪很多人。

 

通常來講統計專業出身的人對模型比較重視,但對數據感受不夠,甚至不敢觸動陌生結構的數據(若是不是懼怕的話),搞機器學習必須既瞭解模型又樂於和數據打交道。因此學統計的若是不跟搞計算機的合做就什麼也幹不成,這一點應該讓你們都知道。

 

AI科技大本營:那反過來像程序員這種學計算機的人,他們應該怎麼跟統計學結合呢?

 

吳教授:統計學對課程基礎的要求比較高,沒有辦法速成。咱們知道,單純的編程比較容易學,他們最好是在應用中學習統計的批判性思惟,須要什麼學什麼,這樣可以保持興趣和學習動力,學的也較快。

 

但統計專業中,至關部分統計教授都不會編程,更不熟悉實際的數據分析,這還包括某些博導,他們見到稍微複雜的數據就蒙了。他們能夠假定出一個模型,而後就說他們的模型怎麼怎麼好,但這是在很強的假定之下,好比數據必定要知足什麼數學條件……必定要在這個條件下他們的模型才很好,他們最苦惱的就是尋找符合他們條件的數據(爲了發表文章),但實際上只有老天爺才知道是否存在這樣知足他們條件的數據。

 

統計學的兩種文化

北大時期的吳喜之教授

 

AI科技大本營:您是怎麼開始作機器學習的?

 

吳教授:由於教學生,我要了解最新的方法,只要能用的、好用的,我就要教給學生去用。要想當好老師就須要不斷學習新的知識。機器學習這塊跟計算機編程直接相連,我學了之後,用機器學習的方法來解決問題,我以爲比經典統計要好用得多,真的不是一個數量級。

 

AI科技大本營不是一個數量級,這該怎麼講呢?

 

吳教授這是一種比方,而不是嚴格的術語。不過簡單來形容的話,對於不少複雜的數據,用機器學習的預測偏差若是隻是1%、2%左右的話,那用經典統計就可能有百分之十幾以上,差異就很大。固然,對於比較簡單的數據,經典統計也可能表現不錯,這不能一律而論。儘管從數學上,那些經典的東西看起來很漂亮,很吸引人(特別是對數學背景的),但面對複雜的現實世界,必需要改變思想,無論方法漂亮與否,關鍵是可以解決問題。許多機器學習方法也很美,但不是數學公式漂亮,而是其思惟及邏輯的美。如今都有飛機了,你還靠拉着板車在那走,那就是你的問題了。

 

AI科技大本營:那您是何時開始用機器學習的?

 

吳教授:這個是在非典的時候,03年吧,是用R語言。在中國,我大概是頭一個在正式課堂上教R語言的。

 

在那之前,我已經在教S-Plus了,S-Plus跟R很像,都是編程語言。但當時多數老師教統計是不用編程語言的,他們會用盜版的SPSS及SAS等點鼠標式傻瓜軟件,不只侵犯版權,還會讓學生產生依賴性。因此國內的學生不懂計算機編程,跟這一點關係很大。老師本身都不會編程,只能教學生用盜版軟件。只學點鼠標確定是學不會編程、也看不懂代碼的。

 

我開始教R語言的那一級的學生,有些在數據領域中比較出名,好比李艦和劉思喆,比我要強多了。

 

後來我讀了一篇頗有名的文章,《統計建模:兩種文化》(Statistical Modeling: The Two Cultures, 2001),做者是Leo Breiman,加州大學伯克利一個頗有名的教授(CART決策樹、bagging及隨機森林的發明者),他去世後我纔讀到他的這篇文章。他在文章中狠批了把數據限制在假定模型中的經典統計學界,而後大力推廣他在商業諮詢中用機器學習作算法模型的有效經驗,這一點我感同身受。

 

機器學習圈子意識到數據的生成過程是複雜和未知的,這一點符合實際,學完以後就能用出來,因此我就本身去推廣。可是在國內推廣很難,只能本身去教、去寫書,把機器學習的東西寫進書裏,讓更多的人掌握。

 

用機器學習來改造統計學

AI科技大本營:那我可不能夠這樣理解,你如今更多的但願,實際上是想把機器學習的一些思想注入到統計學這個學科裏邊,對吧?

 

吳教授:我是但願改變統計學,用機器學習這個思想來改造統計學。機器學習的思惟方式就是科學的思惟方式。整個統計學界的問題太多,因此就須要改造。把它從數學假定主導的思惟方式改造過來,從模型驅動改變成數據驅動或問題驅動,機器學習是實現這種改造的一個最佳方式。

 

其實我一直都對處理實際的數據感興趣,儘可能從數據出發來作統計,問題驅動的思惟一直都有。九幾年還在南開的時候,我就不斷倡導這個事情。如今統計學作的不少東西都跟實際數據沒什麼關係,這種作法不過是把人禁錮在本身的模型裏作夢。脫離實際的統計不可是無用的,並且是有害的。

 

Breiman的這篇文章使個人思惟更加清晰,目的更加明確,Breiman的文章對我近年來走過的路程有着無可比擬的指導意義。

 

AI科技大本營:咱們應該怎麼基於問題驅動的思惟來學習呢,吳老師您在這方面都是怎麼作的?

 

吳教授:搞數據科學應該是問題驅動,學習知識也應該是問題驅動。我不喜歡完整地看大部頭的統計書,由於整本整本地看下來,目的不明,被做者牽着走,效果確定很差……必定要有感興趣的問題來引導,纔好鑽研進去。學東西必定要問題驅動。好多新方法,我都是從R語言裏面學來的:首先看那些軟件包能解決什麼問題;若是對這些問題感興趣我就看它的方法;若是想知道方法裏面是什麼原理、用的什麼數學、爲何這樣作,就去進一步看參考文獻……這一套下來我天然就學會了;相對於打基礎式的學習方法來講,這是相反的學習方法,是拉動式學習方法。

 

若是被老師限制住,你就算再聰明也能學傻了。因此必定不能死學,必定要有個目標,要有一個感興趣的目的。好比,你的目標是把這個數據分析好,你必須考慮用什麼方法來解決,怎麼來編程……這裏面的興趣天然而然就來了。若是你只是爲了編程而編程,把語法1、2、3、四背下來,你就沒有一個載體把它們串起來。這是我最討厭的學習方式,學生爲了打基礎,盲目地先看這本書,再看那本書,一堆書看完以後就徹底迷失了,若是記憶力好會記一些東西,但絕對不會有助於增長動手能力。

 

反過來,爲了解一個問題,你須要什麼東西就去看什麼,主動權在你手中掌握,這種拉動式的方式就讓你有動機去學,並且學到的東西都是有用的。這是個人經驗,你要是讓我從頭至尾去看一本書,我確定是看不下去的。

 

AI科技大本營那您在教學生的時候是怎樣的,是如何讓學生也能把你這套東西用起來的?

 

吳教授:對通常學生來講,我多是有點像趕鴨子上架,如同魔鬼訓練。在每一個學校,我都給每一個學生一個或者兩個國外的數據網址,沒有兩個學生數據相同,而後給他們講解一些包括機器學習在內的數據分析方法及編程初步,而且給他們一些我本身編的程序模板,目的是讓他們獲得任何從數據能夠獲得的結論。期末每一個學生要上交數據、代碼及PPT或Word文件,而且上臺在必定時間內向你們講解數據的意義、所用的模型、計算過程及結論。這以後,學生就不再懼怕數據了。前年在雲南的大理大學我就是這樣作的,學生的基礎雖然不如一些重點大學好,但都作出來了,並且許多人把我給的做業做爲畢業論文。

 

前些天我看到他們本科畢業論文中有三我的還得了優秀論文獎。以前我在雲南師大教課也同樣,他們學起來也挺苦的,不事後來其中有幾我的參加前年的全國大學生統計建模大賽,還拿到了一等獎。

 

固然,他們中的一些人在作完做業,甚至得獎之後,也可能仍是不那麼明白裏面的道理,也可能只是會用現成的工具,但已經有了飛躍的進步,最重要的是他們有了信心。由於一開始他們真是什麼程序都不會,掌握的統計方法也頗有限,要現教R語言及各類統計方法才能把課上下去。他們老師原來教的最可能是Excel。我曾經看到一本教學生怎麼用Excel來解決問題的很不錯的書。我看了這書之後,花了半天功夫寫了大約一頁R程序,把那一本書的問題全給解決了,這說明R程序語言的簡潔及強大的能力。

 

總之,一個結果就是給學生一種新的眼界及新的體驗,讓他們有信心來把事情作下去。

 

實際上,零基礎的人也能夠學機器學習,好比雲南的一個菸草公司,我給他們一線的員工講過幾天統計,裏面有人仍是外語專業出身的,連統計的基本概念都不清楚,我就這樣給他們講,講完給他們不一樣的網站數據去作,結果包括外語專業在內的絕大部分學員都作完了所分配的數據分析。

 

剛開始學習的時候,你不可能什麼都學、什麼都知道。你要從基礎的模型開始,去理解它背後是怎麼想的,爲何要這麼編程序、這麼去處理,這樣作的好處是什麼、能避免什麼樣的問題,背後這些東西弄清楚了,你就能弄清楚本身的問題是怎麼出的。這樣你就能學會怎麼去用這些模型,甚至發展本身的一些新東西出來。

 

其實弄懂機器學習背後的機理並不難,也不須要事先讀不少專業書。即便是Breiman那幾個天才的發明,他背後的思惟方式及編程原則並不複雜,若是把這些弄清楚,你對統計學的理解就能進一大步。

 

吳喜之教授親自編寫程序解決問題

 

AI科技大本營:這麼說來,咱們學機器學習、學數據科學,其實首先就是要有一種由問題來驅動的數據思惟,用上這種思惟就是對統計學的改造,咱們能這樣理解嗎?

 

吳教授:一百年來,因爲沒有計算機,數據量有限,因而由數學家發展的經典統計引入了大量的數學假定來彌補數據信息的不足,這就給統計打上了很深的數學烙印,而且致使了不少統計學家模型驅動的錯誤思惟方式。在計算技術飛速發展以及數據膨脹的新時代,若是還把本身束縛在這種模型驅動的思惟方式中,就會被時代所拋棄。機器學習是典型的數據驅動的思惟方式,它從數據出發,經過各類計算方法來理解數據,並創建適當的算法模型來擬合數據並獲得結論。不只在應用中,並且要在統計教學中大量引入機器學習方法是很是必要的,目的是還統計以數據驅動或問題驅動的原本面目。

 

 深度學習與計算機視覺 

 

稀牛學院最新線上課程,帶你瞭解人工智能領域中,計算機視覺的理論基礎前沿應用!不只有完善的班級管理,更是首次承諾足量GPU的培訓課程! 

 

將來已至,AI不遠!

快掃碼與時代互動吧!

往期精彩文章

點擊圖片閱讀

DOTA2中戰勝Dendi的AI如何煉出?OpenAI公佈兩週集訓細節(含實戰視頻)

 

內容轉載自公衆號

AI科技大本營
AI科技大本營
瞭解更多
 
 

微信掃一掃關注該公衆號

相關文章
相關標籤/搜索