資料科學應用 如何將資料科學應用於生產

2021-10-07 23:31:44 字數 3468 閱讀 3904

資料科學應用

將資料科學應用於生產仍然是乙個巨大的挑戰。 不僅需要頻繁地更新已部署的資料科學,而且可用的資料來源和型別也會swift變化,可用於其分析的方法也會swift變化。 這種可能性的不斷增長使得依靠精心設計和商定的標準或僅在專有工具的框架內工作限制了。

knime一直致力於提供乙個開放平台,通過新增我們自己的擴充套件或提供圍繞新資料來源和工具的包裝來整合最新的資料科學發展。 這使資料科學家可以訪問和合併所有可用的資料儲存庫,並應用其首選工具,不受特定軟體**商的偏愛。 使用knime工作流程進行生產時,當然始終可以訪問相同的資料來源和演算法。 就像許多其他工具一樣,從資料科學建立到資料科學生產的過渡涉及一些中間步驟。

[ 也在infoworld上:今天的人工智慧:什麼是炒作,什麼是真實的 ]

在本文中,我們將介紹knime工作流引擎的最新功能,該功能允許直接在資料科學建立工作流中捕獲生產所需的零件,從而使部署完全自動化,同時仍允許使用資料期間可用的每個模組。科學創造。

乍一看,將資料科學投入生產似乎並不重要:只需在生產伺服器或選定的裝置上執行它即可! 但是通過仔細檢查,可以清楚地看到,在資料科學建立過程中構建的不是正在投入生產的。

我想將其與公尺其林星級餐廳的廚師進行比較,後者在自己的實驗廚房中設計食譜。 通往完美食譜的途徑包括嘗試新的食材並優化引數:數量,烹飪時間等。只有滿足時,最終結果(食材清單,數量,準備菜的程式)才能作為食譜寫入。 此食譜就是「投入生產」的過程,即,可供購買本書的數百萬家庭廚師使用。

這與提出資料科學問題的解決方案非常相似。 在資料科學建立過程中,將研究不同的資料來源。 資料經過混合,彙總和轉換; 然後嘗試並優化具有多種可能引數設定的各種模型(甚至模型的組合)。 我們投入生產的並不是所有的實驗和引數/模型優化,而是所選資料轉換與最終的最佳(一組)學習模型的結合。

這聽起來仍然很容易,但這通常是差距最大的地方。 大多數工具只允許匯出可能模型的一部分。 許多人甚至完全忽略了預處理。 通常,匯出的東西甚至都沒有準備好使用,而僅僅是模型表示或庫,需要先消耗掉或包裝成另乙個工具,然後才能投入生產。 結果,資料科學家或模型操作團隊需要手動新增所選的資料混合和轉換,將其與模型庫**在一起,然後將其全部包裝到另乙個應用程式中,以便可以將其投入生產。消耗服務或應用程式。 很多細節在翻譯中迷失了。

對於我們上面的公尺其林廚師來說,此手動翻譯不是乙個大問題。 她每隔一年只能建立或更新乙個食譜,並且可以花一天的時間將自己的實驗結果轉換成可以在家裡典型廚房中使用的食譜。 對於我們的資料科學團隊來說,這是乙個更大的問題:他們希望能夠在需要時輕鬆地每天甚至每小時地更新模型,部署新工具並在需要時使用新的資料來源。 在兩者之間新增手動步驟,不僅會使爬網過程變慢,而且還會增加許多其他錯誤源。

下圖顯示了資料科學的建立和生產化如何交織在一起。 這受經典crisp-dm週期的啟發,但更強調資料科學部署的連續性以及對不斷進行監視,自動更新以及業務方面不斷改進和優化的反饋的要求。 它還更清楚地區分了兩個不同的活動:建立資料科學並將生成的資料科學過程投入生產。

尼公尺 通常,當人們談論「端到端資料科學」時,他們實際上僅指的是左側的迴圈:一種整合的方法,涵蓋了從資料提取,轉換和建模到編寫某種模型(包括上述注意事項)。 實際使用模型已經需要其他環境,並且在繼續監視和更新模型時,工具格局變得更加分散。 在許多情況下,維護和優化也是非常少見且繁重的手動任務。 附帶說明:我們在此特意避免使用「模型操作」一詞,因為資料科學生產過程(移入「操作」的部分)不僅僅包括模型。

整合部署通過使資料科學家能夠捕獲部署所需的過程部分,從而使資料科學家能夠在同一環境中對建立和生產進行建模,從而消除了資料科學建立與資料科學生產之間的差距。 因此,只要在資料科學建立中進行更改,這些更改也會自動反映在已部署的摘錄中。 從概念上講這很簡單,但實際上卻非常困難。

如果資料科學環境是程式語言或指令碼語言,那麼您必須詳盡地詳細介紹如何為整個過程的各個方面建立合適的子例程,這些子例程可能對部署有用,並且還要確保在這兩者之間正確傳遞了所需的引數。**庫。 實際上,您必須同時編寫兩個程式,確保始終遵守兩個程式之間的所有依賴關係。 容易遺漏少量資料轉換或正確應用模型所需的引數。

使用視覺資料科學環境可以使這一過程更加直觀。 knime的新整合部署節點擴充套件允許框架化或捕獲部署中還需要的那些工作流。 之所以如此簡單,是因為這些部分自然是建立工作流程的一部分。 這是因為,首先,在模型訓練期間需要完全相同的變換部分,其次,在微調期間需要對模型進行評估。 下圖顯示了乙個非常簡單的示例,說明實際情況:

尼公尺 紫色框捕獲了資料科學建立過程中部署所需的部分。 現在,我們不必新增它們,也不必經歷明確的「匯出模型」步驟,現在只需新增capture-start / capture-end節點來構圖相關片段,然後使用workflow-combiner將這些片段放在一起。 生成的自動建立的工作流程如下所示:

尼公尺 workflow-writer節點具有不同的形狀,可用於所有可能的部署方式。 他們正好按照其名字的含義進行操作:寫出工作流程供其他人用作起點。 但是更強大的功能是可以使用workflow-deploy節點,該節點自動將生成的工作流作為rest服務或分析應用程式上傳到knime server或將其部署為容器-通過使用適當的workflow-deploy節點可以實現所有這些。

許多資料科學解決方案都承諾端到端資料科學,完整的模型操作以及「完全部署」的其他形式。 以下是涵蓋典型限制的清單。

本文的目的不是詳細描述技術方面。 不過,必須指出的是,這種捕獲和部署機制適用於knime中的所有節點,這些節點提供對本機資料轉換和建模技術的訪問權,以及包裝其他庫(如tensorflow,r,python,weka, spark,以及knime,社群或合作夥伴網路提供的所有其他第三方擴充套件。

通過新的整合部署擴充套件,knime工作流變成了完整的資料科學建立和生產環境。 建立工作流以嘗試使用內建或打包技術的資料科學家可以捕獲工作流,以便在同一工作流中直接部署。 這是第一次使直接從用於建立該過程的環境中即時部署完整的資料科學過程成為可能。

michael berthold是開源資料分析公司knime的首席執行官兼聯合創始人。

他在資料科學領域擁有超過25年的經驗,曾在學術界工作,最近在konstanz大學(德國)擔任正式教授,此前在加利福尼亞大學(伯克利分校)和carnegie mellon擔任過正式教授,還曾在intel的神經網路小組從事行業研究,烏托邦和tripos。

michael在資料分析,機器學習和人工智慧方面發表了廣泛的著作。

在twitter , linkedin和knime部落格上關注michael。

新技術論壇提供了乙個以前所未有的深度和廣度探索和討論新興企業技術的場所。選擇是主觀的,是基於我們選擇的技術,我們認為這些技術對infoworld讀者來說是重要的,也是他們最感興趣的。將所有查詢傳送到[email protected]

翻譯自:

資料科學應

將devop應用於資料科學和機器學習

資料科學家與軟體開發人員有一些共同的實踐和需求。資料科學家和軟體工程師都計畫,構造,編碼,迭代,測試和部署 以實現其目標。對於軟體開發人員來說,這通常意味著定製編碼應用程式和微服務。資料科學家與dataops進行資料整合,通過分析模型進行 並建立儀表板以幫助終端使用者瀏覽結果。希望實現運營工程師自動...

資料科學 什麼是資料科學?

資料是現實世界運轉留下的痕跡。這些痕跡如何展示出來,則取決於我們採用什麼樣的資料收集和樣本採集方法。將具象的資料轉化為抽象的資料,過程是絕對主觀的。統計推斷 關注的是如何從隨機過程產生的資料中提取資訊。關於建模資料即資訊,不需要模型,了解相關性就夠了。anderson 這是錯誤的想法。什麼是模型 模...

如何將科學技術轉化為財富

我們身邊,充斥著各種各樣的商機,只是很多人視而不見,很多人壓根就看不見。一朋友 這朋友感覺聯絡不上了,大概是歸隱了吧 就做了個聲音放大器,在老家就沒出來了。自己畫板子,自己貼片,現在也買房買車了吧!科學是神奇的,但是我們發了半輩子去學那些公式定理,去做那些專家拿著我們的錢,想出來的亂七八糟的題目。似...