自動分析工具:數據科學家職業的終結者?
數據科學家的工作的一部分就是把他們的工作自動化。 比如說通過一些預測性的API工具來實現工作的自動化。 然而, 這些API已經在某些領域開始取代數據科學家的工作了。這對這個職業來說可不是什么好事。
我們現在處于大數據2.0時代。 利用機器學習來進行預測性分析的需求越來越強勁。正如InsightsOne的CEO Waqar Hasan指出的那樣“預測分析是大數據時代的‘殺手級應用’。”而麥肯錫也預測說在今后的幾年內,關于機器學習的人才將會出現短缺。 與此同時, 我們也開始看到有一些公司開始針對大眾提供機器學習和預測分析的服務。 例如Apigee在收購了InsightsOne后就推出了預測性分析的API平臺。
我在上大學計算機科學的時候學到的***課就是“我們的工作的***目標就是要讓我們自己沒有工作。”我們的工作就是要讓程序把我們現在的工作做得更快,更好,更可靠。數據科學也是如此。
技術將取代數據科學家
數據科學家的絕大部分工作花在了建立預測模型:選取與預測相關的變量。選擇合適的模型,確定***的參數等等。目前,這類的工作已經能夠有一些自動化的解決方案了。如Emerald Logic的FACET以及Google和Erastz Labs提供的API。這些API把復雜的機器學習模型從數據中抽象出來。用戶可以專注于數據的采集以及清洗,而把數據送給這些API,就能夠生成一個預測模型了。
這些新的工具意味著,在這種新的模式下,不需要數據科學家的參與了,公司里的每個人都能夠參與數據科學的項目。高管確定戰略方向,中層經理們確定分析預測的具體目標,軟件工程師可以專注于項目實施。這里需要每個人都多少懂一些機器學習。不過如果不去深究算法和理論,只關注基本概念和一些具體的應用實例的話,機器學習即使對于非技術人員來說也能夠很快了解。
事實上,如果由具體應用領域的專家來負責機器學習項目的話,往往能夠更好地將應用領域的知識結合到機器學習項目中去,比如能夠更好的選出那些合適的特征變量,從而能夠做出更好的預測模型。
機器學習是“人工智能“的技術。通過數據來建立更好的”智能“。那么我們在人工智能領域還需要手工去進行模型和算法的選擇嗎?我們當然有智能的自動的方式來實現。在人工智能領域有一個趨勢,就是”元人工智能算法(meta AI Algorithm)“,也就是對給定問題,能夠自動的找到合適的人工智能算法和合適的參數。
利用這種方式來進行機器學習的原理就是利用如概率推理來進行參數設定以及對特征變量設定不同權重等等。也可以采用窮舉的方法來進行。今天我們的計算能力已經足以讓我們進行這樣大量的測試。窮舉測試可以采用常規的交叉驗證,或者采用類似于FACET那樣的漸進式技術。
測試可以從對數據的最簡單分析開始,比如如果我們發現數據在二元分類時有明顯的不平衡性時,我們可以試著選擇異常檢測的算法。
數據科學家將來做什么呢?
有人會說, 目前不能自動化的領域太多了。 確實,把所有機器學習領域都自動化是很困難的。 不過, 目前API在預測方面已經能夠比擬那些“傳統“的分析技術了。 這方面API創造的價值巨大。
由于這些新的工具的出現, 數據科學家的角色也在發生變化。現在要成為數據科學家可能要比以前容易了。 由于預測性API的出現, 原來由數據科學家來做的工作變得更加容易了。這些工作可以由數據庫工程師或者軟件工程師來進行了。 這也就是有些人說的“數據科學不是科學”。 而我要說的是, 數據科學正在不斷演進。
在預測API領域,數據科學家依然在團隊里扮演重要角色。 他幫助團隊成員自主地使用這些API。 他們更多地是作為一個主管的角色來指導大家使用,而不像以前那樣需要親自動手。
更重要的是, 數據科學家還需要不斷開發機器學習的自動化工具。例如,出來目前的“監督學習(Supervised Learning “的API外,也開始出現了“強化學習(Reinforcement Learning)“的API。此外, 還需要提供一些工具能夠使得具體應用領域專家能夠把他們的知識更方便地融入到算法中去。