數據科學是對大數據或物聯網(IoT)環境進行的任何分析練習的核心。數據科學涉及廣泛的技術,業務和機器學習算法。數據科學的目的不僅是做機器學習或統計分析,而且還可以從沒有統計知識的用戶理解的數據中得出洞察。
在諸如大數據和物聯網等快節奏的環境中,數據類型可能隨時間而變化,變得難以每次都維護和重新建立模型。這個差距需要一種自動化的方式來管理這些環境中的數據科學算法。數據科學的興起旨在將我們從基于規則的系統轉移到機器自身學習規則的系統中。機器學習使數據科學固有地部分自動化。需要手動干預的數據科學的一半仍然是自動化的。然而,這些領域涉及到人們的經驗和智慧:數據科學家,商業專家,軟件開發人員,數據集成商,目前有助于使數據科學項目運作的人。這使得數據科學的各個方面都難以實現自動化。但是,我們可以將數據科學自動化視為兩級架構,其中:
不同的數據科學學科/組件是自動化的
所有單獨的自動化組件都是互連的,以形成一個連貫的數據科學系統
我們可以將數據科學系統視為自動化,只要它們足夠能夠在我們拋出數據集時解決我們的問題。此外,應該足夠聰明地向我們提供我們可以理解的語言中的所有可能的解決方案。
數據準備,機器學習,領域知識和結果解釋是成功執行數據科學項目所需的四個主要任務。所有這些任務都必須轉換為自動化模塊,以創建一個自動化的數據科學系統(圖1)。
數據準備自動化
數據準備是每次創建模型時必須完成的重復任務。數據提取,數據清理和數據轉換(例如估算空值和算法特定轉換)是屬于此類別的一些任務。許多組織將這些任務自動化,并將引擎標記為數據科學自動化工具。但是,大多數這些工具使用基于規則的邏輯來自動執行數據預處理任務。這是正確的做法嗎?我們是否需要基于規則的系統來自動化數據科學,這是終止基于規則的系統誕生的?不,我們需要通過機器學習自動進行數據預處理。例如,關于什么預處理功能必須應用于問題的數據的決定是由機器本身做出的。
特征工程是需要自動化的另一個數據準備領域。特征工程是將原始數據轉換為屬性/預測變量的技術,可提高機器學習項目的準確性。特征工程自動化仍處于初級階段,也是一個積極的研究領域。麻省理工學院的數據科學家正在開發一種能夠從原始數據生成特征的“深度特征綜合”算法取得了令人難以置信的進步。
自動機器學習/統計
這是統計程序自動化的數據科學自動化領域。系統根據提供的數據集執行最佳算法。它隱藏了用戶的復雜性和算法的數學復雜性,使其向群眾提供。用戶需要向自動統計學家提供數據。它了解數據,創建不同的數學模型,并根據最能說明數據的模型返回結果。自動統計學家是一個復雜的科學,因為它需要系統學習輸入數據模式,找到最佳擬合值,并使用幾種統計和機器學習算法自我優化其參數。這需要各種算法約束的推廣和巨大的計算能力。
通過利用基于云的服務器來管理高計算能力的需求,自動機器學習逐漸成熟。創建數據產品的組織逐漸包括諸如元學習的功能,基于數據集的元數據自動選擇合適的機器學習算法的過程。像H2O.ai這樣的組織通過引入幾個內置功能來推廣模型構建過程,并提供了許多模型調整選項,可以更好地控制算法。此外,他們已經將超參數調優作為幾乎所有算法的特征,使數據科學家免于使用不同參數測試模型的繁瑣過程。超參數調整是使機器學習模型重新運行多次的自動化嘗試和錯誤的過程,以確定數據集上的模型的適當參數。
洞察產生自動化
數據科學項目的結果直到和除非業務用戶或沒有統計知識的觀眾理解它才有用。數據科學活動的奶油是講故事的部分,數據科學家以全面透明的方式向人們解釋結果。自動化此任務需要從統計學家友好的結果自動生成用戶友好的文本。自然語言生成(NLG)是當前的前沿框架,可以幫助將語言翻譯成自然語言。 Nlgserv和simplenlg是我們可以用于此任務的兩個NLG框架。此外,我們可以使用馬爾科夫鏈自動生成句子和制作故事。
數據科學自動化的創新已經開始,并將在未來幾年逐漸演變。我們目前正處于一個階段,我們已經開始處理個別數據科學模塊的自動化。從這里,我們需要轉移到更通用的數據科學平臺,所有模塊都自動化并集成在一起。這是一個變化的開始,就像房間大小的計算機被轉換為信用卡大小的計算機一樣。