歡迎光臨
每天分享高質量文章

谷歌釋出Kubeflow 0.1版本,基於Kubernetes的機器學習工具包

自從 Google 釋出開源容器編排工具——Kubernetes 以來,我們已經見證了其以各種方式遍地開花的景象。隨著 Kubernetes 越來越受歡迎,許多輔助專案也已經發展起來。現在,Google 釋出了Kubeflow 開源工具 0.1 版本,該工具旨在將機器學習帶入 Kubernetes 容器的世界。
雖然 Google 早已將 Kubernetes 遷移入 Cloud Native 計算基金會,但仍在積極參與該專案,釋出 Kubeflow 就是很好的證明。該專案最初只是在去年底奧斯汀舉辦的 Kubecon 上宣佈,但取得了不錯反響。
在 Google 運營 Kubeflow 的 David Aronchick,加入Kubeflow之前,已經帶領了 Kubernetes 團隊兩年半的時間。 他表示,該專案背後的想法是讓資料科學家充分利用在 Kubernetes 叢集上執行機器學習任務的優勢。Kubeflow 可以讓機器學習團隊將現有任務輕鬆放到叢集中執行,而無需作出太多改變。
隨著今天的 0.1 版本的釋出,該專案將開始推進,並將透過部落格公佈里程碑,將穩定性提高到一個新的水平,同時還會增加大量社群一直呼籲的新功能。其中包括為 Jupyter Hub 提供用於機器學習任務的協作和互動式訓練以、Tensorflow 訓練及託管支援等。
Aronchick 強調說,作為一個開源專案,你可以貢獻任何你喜歡的工具,而不僅僅限於 Tensorflow,儘管早期的版本確實包含了對 Google 機器學習工具的支援。隨著專案進一步發展,預計會有更多額外的工具支援。
在專案最初宣佈後的 4 個月內,社群發展迅速,有 70 多個貢獻者,20 多個捐助組織以及 15 個 repositoriy 中的 700 多個提交。可以期待一下,可能今年夏天的某個時候就會釋出 0.2 版本。

Kubeflow 0.1 簡介

Kubeflow 0.1 提供了一套最精簡的軟體開發包,用於開發,訓練和部署 ML。只需幾個命令,就可以獲得:
  • Jupyter Hub:用於機器學習任務的協作和互動式訓練

  • TensorFlow 訓練控制器:支援原生的分散式訓練

  • TensorFlow 服務:用於服務託管

  • Argo:工作流

  • SeldonCore:用於複雜推斷及非 TF 模型

  • Ambassador:反向代理

  • Wiring:可以使 Kubeflow 在任意 Kubernetes 上執行

下麵是入門示例:
# 為 kubeflow 開發環境建立 namespace
NAMESPACE=kubeflow
kubectl create namespace ${NAMESPACE}
VERSION=v0.1.3
# #初始化 ksonnet 應用,設定 namespace 為其預設環境變數
APP_NAME=my-kubeflow
ks init ${APP_NAME}
cd ${APP_NAME}
ks env set default --namespace ${NAMESPACE}
# #安裝 Kubeflow 元件
ks registry add kubeflow github.com/kubeflow/kubeflow/tree/${VERSION}/kubeflow
ks pkg install kubeflow/core@${VERSION}
ks pkg install kubeflow/tf-serving@${VERSION}
ks pkg install kubeflow/tf-job@${VERSION}
# #為核心元件建立模板
ks generate kubeflow-core kubeflow-core
# #部署 Kubeflow
ks apply default -c kubeflow-core
至此,JupyterHub 已部署,我們現在可以使用 Jupyter 開始開發模型。一旦有了 Python 程式碼來構建模型,我們就可以構建一個 Docker 映象並使用 TFJob 運運算元透過執行如下命令來訓練模型:
ks generate tf-job my-tf-job --name=my-tf-job --image=gcr.io/my/image:latest
ks apply default -c my-tf-job
# #下麵部署模型
ks generate tf-serving ${MODEL_COMPONENT} --name=${MODEL_NAME}
ks param set ${MODEL_COMPONENT} modelPath ${MODEL_PATH}
ks apply ${ENV} -c ${MODEL_COMPONENT}
只需要幾個命令,資料科學家和軟體工程師就可以建立更複雜的 ML 解決方案,並專註於他們最擅長的事情:解決核心業務問題。
參考連結:https://techcrunch.com/2018/05/04/google-kubeflow-machine-learning-for-kubernetes-begins-to-take-shape/,https://kubernetes.io/blog/2018/05/04/announcing-kubeflow-0.1/

Kubernetes入門與進階實戰培訓

本次培訓內容包括:Docker基礎、容器技術、Docker映象、資料共享與持久化、Docker三駕馬車、Docker實踐、Kubernetes基礎、Pod基礎與進階、常用物件操作、服務發現、Helm、Kubernetes核心元件原理分析、Kubernetes服務質量保證、排程詳解與應用場景、網路、基於Kubernetes的CI/CD、基於Kubernetes的配置管理等,點選瞭解具體培訓內容

5月11日正式上課,點選閱讀原文連結即可報名。
贊(0)

分享創造快樂