實現數據科學的民主化

麻省理工學院的研究人員希望通過一種針對非統計人員的新工具來推動數據科學的民主化,該工具會自動生成用於分析原始數據的模型。

數據科學民主化的概念是,只要提供足夠的數據和用戶友好的分析工具,幾乎沒有專業知識的人都可以從事數據科學。支持該想法的新工具將攝取數據集並生成複雜的統計模型,通常由專家用來分析,解釋和預測數據的基本模式。

該工具當前位於Jupyter Notebook(一個開源Web框架)上,該框架允許用戶在其瀏覽器中交互運行程序。用戶只需要編寫幾行代碼即可發現有關財務趨勢,航空旅行,投票方式,疾病傳播和其他趨勢的見解。

在本週的ACM SIGPLAN編程語言原理研討會上發表的一篇論文中,研究人員表明,他們的工具可以準確地提取模式並從實際數據集中進行預測,甚至在某些數據分析任務中甚至勝過手動構建的模型。

第一作者Feras Saad ’15,MEng ’16,電機工程學系的博士學位學生和“財神娛樂城 計算機科學(EECS)。 “人們周圍有很多數據集,我們的目標是建立一個系統,使人們可以自動獲取可用於詢問有關數據的模型。”

共同作者Vikash Mansinghka ’05,MEng ’09,PhD ’09是大​​腦和認知科學系(BCS)的研究員,負責概率計算項目,它最終解決了數據科學領域的瓶頸。他說:“認識到如何很好地建模數據的人才短缺。” “這在政府,非營利部門以及人們負擔不起數據科學家的地方都是一個問題。”

該論文的其他共同作者是EECS博士學位學生Marco Cusumano-Towner。 Ulrich Schaechtle,概率計算項目的BCS博士後; EECS教授和計算機科學與人工智能實驗室的研究員Martin Rinard。

貝葉斯建模

這項工作使用貝葉斯建模,這是一種統計方法,可在有關變量的更多信息可用時不斷更新變量的概率。例如,統計學家和作家Nate Silver在其流行的網站FiveThirtyEight中使用基於貝葉斯模型。在進行總統大選之前,該網站的模型根據各種民意調查以及其他經濟和人口統計數據,初步預測其中一名候選人將獲勝。該預測是變量。在選舉日,模型會使用該信息並權衡即將到來的選票和其他數據,以不斷更新候選人獲勝潛力的可能性。

更一般而言,貝葉斯模型可用於“預測”(預測數據集中的未知值)並揭示數據中的模式以及變量之間的關係。在他們的工作中,研究人員專注於兩種類型的數據集:時間序列,按時間順序排列的數據點序列;以及和表格數據,其中每一行代表一個感興趣的實體,每一列代表一個屬性。

例如,時間序列數據集可用於預測未來幾個月或幾年內的航空公司客流量。概率模型處理歷史交通數據的分數,並生成時間線圖,並沿線繪製未來的交通模式。該模型還可以揭示與其他變量(例如一年中的時間)相關的周期性波動。

另一方面炫海娛樂城,用於社會學研究的表格數據集可線上麻將連線能包含數百到數百萬行,每行代表娛樂城推薦派遣一個個人,並帶有代表職業,薪水,家庭住址和調查問題答案的變量。概率模型可用於填寫缺失的變量,例如根據職業和位置預測某人的薪水,或識別可相互告知的變量,例如發現某人的年齡和職業可以預測其薪水。

統計學家將貝葉斯建模視為從數據構建模型的黃金標準。但是,貝葉斯建模非常耗時且富有挑戰性。統計人員首先根據他們對問題和數據的一般了解對必要的模型結構和參數進行有根據的猜測。然後,統計學家使用R這樣的統計編程環境,可以構建模型,擬合參數,檢查結果並重複該過程,直到進行權衡性能的權衡,從而權衡模型的複雜性和模型質量。

研究人員的工具可自動執行此過程的關鍵部分。曼辛卡說:“我們正在給軟件系統提供一份您將由初級統計學家或數據科學家擔任的工作。” “該軟件可以從數據中自動回答問題-預測預測或告訴您結構是什麼-並且可以嚴格執行,報告不確定性的定量度量。”如果我們要使數據科學更易於訪問,則這種自動化程度和嚴格性非常重要。”

貝葉斯綜合

使用新方法,用戶可以編寫一行代碼,詳細說明原始數據的位置。該工具加載該數據並創建多個概率程序,每個概率程序代表數據的貝葉斯模型。所有這些自動生成的模型都是使用針對特定領域的概率編程語言(針對特定應用開發的編碼語言)編寫的,這些語言已針對錶示特定數據類型的貝葉斯模型進行了優化。

該工具使用稱為“程序綜合”的技術的修改版本工作,該技術會自動創建完美娛樂城 計算機程序提供了數據和可以使用的六合彩中獎金額語言。該技術基本上是相反的計算機編程:給定一組輸入-輸出示例,程序合成向後進行,填補空白以構造基於示例輸入生成示例輸出的算法。

該方法在兩個方面不同於普通程序綜合。首先,該工具綜合了表示貝葉斯數據模型的概率程序,而傳統方法生成的程序根本不對數據建模。其次,該工具同時合成多個程序,而傳統方法一次只能生成一個。用戶可以選擇最適合其應用的模型。

“當系統建立模型時,它會散發出用一種特定於領域的概率編程語言編寫的代碼……人們可以理解和解釋,” Mansinghka說。 “例如,用戶可以通過閱讀代碼來檢查時間序列數據集(如航空公司流量)是否具有季節性變化,這與黑匣子機器學習和統計方法不同,用戶必須信任模型的預測娛樂城賺錢ns,但無法閱讀以了解其結構。”

概率編程是編程語言,人工智能和統計技術交匯處的一個新興領域。今年,麻省理工學院舉辦了首屆概率性編程國際會議,有200多人參加,其中包括概率性編程的領先行業參與者,例如Microsoft,Uber和Google。

“我在Google AI的團隊在TensorFlow的基礎上構建了概率編程工具。概率編程是Google的重要領域,時間序列建模是一個有前途的應用領域,在Google和Google用戶中都有很多用例,” Ryan M. Rifkin ’94,SM ’97,PhD ’02,Google研究人員誰沒有參與研究。研究人員的論文“展示瞭如何應用概率編程來解決這個重要問題,並通過展示概率程序可以如何減少入門工作量。台灣娛樂城 由數據合成,而不是由人編寫。”

本文已從麻省理工學院提供的材料中重新發布。注意:材料的長度和內容可能已被編輯。有關更多信息,請聯繫引用的來源。

參考:Saad,F.A.,Cusumano-Towner,M.F.,Schaechtle,U.,Rinard,M.C.,&Mansinghka,V.K.(2019)。用於自動數據建模的概率程序的貝葉斯綜合。進程ACM程序。語言,3(POPL),37:1–37:32。 https://doi.org/10.1145/3290350