Linux中國

嘗試 H2o 做機器學習

我目前正在參加一個機器學習班,雖然工作量很瘋狂,但我非常喜歡。我最初計劃使用 R 來訓練我的資料庫,但老師建議我使用一個 FOSS 機器學習框架 H2o

起初我有點懷疑,因為我已經對 R 掌握得不錯了,但後來我發現你可以簡單地將 H2o 作為 R 庫導入。H2o 將大多數 R 函數替換為其自己的並行化函數,以減少處理時間(不再需要 doParallel 調用),並且使用「外部」服務端來運行,而不是直接調用 R。

![H2o Flow gradient boosting model](/data/attachment/album/201804/07/234426skv3kwpwrjy50hjr.png "H2o Flow gradient boosting model")

直到我真正在實際中開始在 H2o 中使用 R 時,我對這種情況都非常滿意。我在使用非常大的資料庫時,庫變得笨重,我幾乎不能做任何有用得事情。大多數時候,我最後只是得到一個很長的 Java 回溯調用。

我相信正確地將 H2o 作為一個庫使用將非常強大,但可惜的是,它似乎在我的 R 技能中無效。

![H2o Flow variable importance weights](/data/attachment/album/201804/07/234426lmf4erfcmbd64mr1.png "H2o Flow variable importance weights")

我生了一整天的氣 —— 無法實現我想做的事 —— 直到我意識到 H2o 有一個名為 Flow 的 WebUI。我通常不喜歡使用 web 來完成重要的工作,比如編寫代碼,但是 Flow 簡直太不可思議了。

自動繪圖功能,運行資源密集模型時集成 ETA(預計剩餘時間),每個模型參數的描述(這些參數甚至會根據您熟悉的統計模型分成不同部分),Flow 似乎擁有所有功能。我很快就能夠運行 3 種基本的機器學習模型並獲得實際可解釋的結果。

所以,如果你一直渴望使用最先進的機器學習模型分析非常大的資料庫,我會推薦使用 H2o。首先嘗試使用 Flow,而不是 Python 或 R 的鉤子,來看看它能做什麼。

唯一缺點是,H2o 是用 Java 編寫的,並依賴 Java 1.7 來運行。並且需要警告的是:它需要非常強大的處理器和大量的內存。即使有 10 個可用的內核和 10Gb 的 RAM,我可憐的伺服器也苦苦掙扎了一段時間。

via: https://veronneau.org/playing-with-water.html

作者:Louis-Philippe Véronneau 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國