小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn) | 雷鋒網(wǎng)

 梧桐音遠(yuǎn) 2018-06-10

雷鋒網(wǎng) AI 研習(xí)社按:機(jī)器學(xué)習(xí)開(kāi)發(fā)有著遠(yuǎn)超傳統(tǒng)軟件開(kāi)發(fā)的復(fù)雜性和挑戰(zhàn)性,現(xiàn)在,Databricks 開(kāi)源 MLflow 平臺(tái)有望解決其中的四大痛點(diǎn)。

據(jù)雷鋒網(wǎng) AI 研習(xí)社了解,嘗試過(guò)機(jī)器學(xué)習(xí)開(kāi)發(fā)的同學(xué)們都知道,它的復(fù)雜性遠(yuǎn)超軟件開(kāi)發(fā),且伴隨著多種全新的挑戰(zhàn)。在 Databricks,我們與上百家用到機(jī)器學(xué)習(xí)的公司共事,反復(fù)聽(tīng)到如下顧慮:

  1. 五花八門的工具。在機(jī)器學(xué)習(xí)生命周期的每個(gè)階段,從數(shù)據(jù)準(zhǔn)備到模型訓(xùn)練,都有成百上千的開(kāi)源工具。然而,不同于傳統(tǒng)的軟件開(kāi)發(fā)(每個(gè)階段選擇一種工具),在機(jī)器學(xué)習(xí)開(kāi)發(fā)中,你通常想要嘗試每種可用的工具(如算法),看是否能提升實(shí)驗(yàn)結(jié)果。這樣一來(lái),需要使用和產(chǎn)品化許多庫(kù)。

  2. 實(shí)驗(yàn)難以追蹤。機(jī)器學(xué)習(xí)算法中有許多可配置參數(shù),不管你是獨(dú)立開(kāi)發(fā)者還是處于團(tuán)隊(duì)中,都難以追蹤每個(gè)實(shí)驗(yàn)中用于生成模型的參數(shù)、代碼和數(shù)據(jù)。

  3. 實(shí)驗(yàn)結(jié)果難以復(fù)現(xiàn)。由于缺乏精細(xì)的追蹤能力,團(tuán)隊(duì)在使用相同代碼再次實(shí)驗(yàn)時(shí)往往會(huì)陷入困境。不管是數(shù)據(jù)科學(xué)家將訓(xùn)練代碼交給工程師用于生產(chǎn),還是你打算返回到之前的研究對(duì)問(wèn)題進(jìn)行調(diào)試,重現(xiàn)機(jī)器學(xué)習(xí)工作流程都很重要。

  4. 機(jī)器學(xué)習(xí)難以部署。將模型轉(zhuǎn)化為產(chǎn)品極具挑戰(zhàn),因?yàn)椴渴鸸ぞ吆湍P瓦\(yùn)行環(huán)境(如 REST serving、批推理、移動(dòng)端應(yīng)用)太多了。由于沒(méi)有將模型從庫(kù)轉(zhuǎn)移到工具中的標(biāo)準(zhǔn)方法,導(dǎo)致每一次新的部署都伴隨全新風(fēng)險(xiǎn)。

鑒于上述挑戰(zhàn),毫無(wú)疑問(wèn),為了使機(jī)器學(xué)習(xí)開(kāi)發(fā)像傳統(tǒng)軟件開(kāi)發(fā)一樣,具有魯棒性、可預(yù)測(cè)性以及廣泛傳播,它必須得到大幅進(jìn)化。為此,許多組織都開(kāi)始打造內(nèi)部機(jī)器學(xué)習(xí)平臺(tái)來(lái)管理機(jī)器學(xué)習(xí)生命周期。例如,F(xiàn)acebook,Google 和 Uber 已經(jīng)打造 FBLearner Flow,TFX 和 Michelangelo 來(lái)管理數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練和部署。然而,即使是這些內(nèi)部機(jī)器學(xué)習(xí)平臺(tái),也存在限制:只支持少量?jī)?nèi)置算法或者單個(gè) ML 庫(kù),并且綁定的是自家公司的基礎(chǔ)架構(gòu)。用戶不能輕松利用新的 ML 庫(kù),也很難將自己的研究分享到更廣的社群。

在 Databricks,我們相信有更好的方式來(lái)管理機(jī)器學(xué)習(xí)生命周期,基于此我們推出全新的開(kāi)源機(jī)器學(xué)習(xí)平臺(tái) MLflow。目前,alpha 版本已發(fā)布。

MLflow:全新的開(kāi)源機(jī)器學(xué)習(xí)平臺(tái) 

MLflow 從現(xiàn)有 ML 平臺(tái)中得到靈感,在設(shè)計(jì)上擁有以下兩項(xiàng)開(kāi)放理念:

  1. 開(kāi)放的交互界面:MLflow 被設(shè)計(jì)成支持所有 ML 庫(kù)、算法、部署工具和語(yǔ)言,它圍繞 REST API 和可以從多種工具中應(yīng)用的簡(jiǎn)單數(shù)據(jù)格式(如將模型看作 lambda 函數(shù) )建立,而不是僅支持少量?jī)?nèi)建功能。這帶來(lái)一個(gè)立竿見(jiàn)影的好處:可以輕易將 MLflow 加入現(xiàn)有代碼中,同時(shí),在組內(nèi)分享可執(zhí)行的使用任意 ML 庫(kù)的代碼也變得簡(jiǎn)單。

  2. 開(kāi)源:MLflow 是一個(gè)開(kāi)源項(xiàng)目,用戶和工具庫(kù)開(kāi)發(fā)者能對(duì)其進(jìn)行擴(kuò)展。另外,如果你希望開(kāi)源自己的代碼,得益于 MLflow 的開(kāi)放格式,在組織間共享工作流步驟和模型十分簡(jiǎn)單。

MLflow 現(xiàn)在仍為 alpha 版,但是我們認(rèn)為該版本在處理 ML 代碼上已非常有用,我們也樂(lè)意收到大家的反饋。接下來(lái)是對(duì) MLflow 以及相關(guān)組件的詳細(xì)介紹。

組件 

MLflow alpha 版由以下 3 個(gè)組件構(gòu)成:

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

MLflow Tracking

MLflow Tracking 是一個(gè) API,當(dāng)你在運(yùn)行機(jī)器學(xué)習(xí)代碼打算后續(xù)可視化時(shí),它是展示參數(shù)記錄、代碼版本、metric 和輸出文件的 UI。只需幾行簡(jiǎn)單的代碼,你就能夠追蹤參數(shù),metric 和 artifact:

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

你可以在任何環(huán)境(獨(dú)立腳本、notebook 等)下使用 MLflow Tracking 將結(jié)果記錄到本地文件或者服務(wù)器,之后再將多次操作進(jìn)行對(duì)比。借助網(wǎng)頁(yè) UI,你可以查看和對(duì)比多次輸出。團(tuán)隊(duì)也能使用這些工具來(lái)比較不同用戶的實(shí)驗(yàn)結(jié)果。

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

圖:MLflow Tracking UI

MLflow Projects

MLflow Projects 提供打包可重用代碼的標(biāo)準(zhǔn)格式。每個(gè) project 只是一個(gè)代碼目錄或 Git 庫(kù),使用一個(gè) descriptor 文件來(lái)說(shuō)明其依賴關(guān)系以及如何運(yùn)行代碼。MLflow Project 由一個(gè)簡(jiǎn)單的 YAML 文件(MLproject)定義。

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

project 能借助 Conda 環(huán)境來(lái)說(shuō)明其依賴關(guān)系。一個(gè) project 可能存在多個(gè)調(diào)用程序的 entry 點(diǎn)(已經(jīng)指定參數(shù))。你可以使用 mlflow run 命令工具運(yùn)行來(lái)自本地文件或 Git 庫(kù)中的 project。

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

MLflow 將自動(dòng)為 project 設(shè)置正確的環(huán)境并運(yùn)行。另外,如果你在 project 中使用 Tracking API,MLflow 將會(huì)記住執(zhí)行的 project 版本和參數(shù)。你能夠輕松再運(yùn)行相同的代碼。

project 格式使得分享可重用的代碼變得更加簡(jiǎn)單。配合 MLflow Tracking,MLflow Project 可以為你提供在復(fù)現(xiàn)、擴(kuò)展和實(shí)驗(yàn)中極其好用的工具。

MLflow Model

MLflow Model 是一種約定,它將機(jī)器學(xué)習(xí)模型打包成多種格式(稱為 flavor)。MLflow 提供多種工具來(lái)幫助你部署不同 flavor。每個(gè) MLflow Model 作為一個(gè)目錄保存,包含 arbitrary 文件和一個(gè) MLmodel descriptor 文件(該文件中列出了它適用的 flavor)。

Databricks 開(kāi)源 MLflow 平臺(tái),解決機(jī)器學(xué)習(xí)開(kāi)發(fā)四大難點(diǎn)

在上面這個(gè)例子中,該模型可與支持 sklearn 和 python_function 模型 flavor 的工具一起使用。

MLflow 提供將常見(jiàn)模型部署到不同平臺(tái)上的工具。例如,任何支持 python_function flavor 的模型都能部署到基于 Docker 的 REST 服務(wù)器或 Azure ML、AWS SageMaker 等云平臺(tái)上。

開(kāi)始使用 MLflow

按照 的使用說(shuō)明,或前往 GitHub 查看已經(jīng)發(fā)布的代碼。期待大家的反饋。

下一步

MLflow 才剛剛起步,所以還有不少工作要做。除了 project 的更新,我們還計(jì)劃介紹重要的全新組件(如 Monitoring)、庫(kù)集成和我們已經(jīng)發(fā)布的擴(kuò)展功能(如對(duì)更多環(huán)境的支持等)。大家可關(guān)注我們的博客以獲取更多信息。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多