摘要: 利用Jupyter開發TensorFLow也是許多數據科學家的首選,可是如何可以快速從零搭建一套這樣的環境,而且配置GPU的使用,同時支持最新的TensorFLow版本, 對於數據科學家來講既是複雜的,同時也是浪費精力的。git
簡介json
TensorFLow是深度學習和機器學習最流行的開源框架,它最初是由Google研究團隊開發的並致力於解決深度神經網絡的機器學習研究,從2015年開源到如今獲得了普遍的應用。特別是Tensorboard這一利器,對於數據科學家有效的工做也是很是有效的利器。服務器
Jupyter notebook是強大的數據分析工具,它可以幫助快速開發而且實現機器學習代碼的共享,是數據科學團隊用來作數據實驗和組內合做的利器,也是機器學習初學者入門這一個領域的好起點。網絡
利用Jupyter開發TensorFLow也是許多數據科學家的首選,可是如何可以快速從零搭建一套這樣的環境,而且配置GPU的使用,同時支持最新的TensorFLow版本, 對於數據科學家來講既是複雜的,同時也是浪費精力的。在阿里雲的Kubernetes集羣上,您能夠經過簡單的按鈕提交建立一套完整的TensorFlow實驗環境,包括Jupyter Notebook開發模型,利用Tensorboard調整模型。app
準備Kubernetes環境框架
阿里雲容器服務Kubernetes 1.9.3目前已經上線,可是購買按量付費的GPU計算型服務器須要申請ECS工單開通。具體建立過程,能夠參考建立Kubernetes集羣。ssh
體驗經過應用目錄部署TensorFlow實驗室機器學習
經過Helm部署MPI的應用,本文以openmpi爲例,向您展現如何快速在容器服務上運行MPI應用。實際上若是須要換成其餘MPI實現只須要替換鏡像便可。工具
2.1 能夠經過應用目錄,點擊ack-tensorflow-dev學習
2.2 點擊參數, 就能夠經過修改參數配置點擊部署
這裏的密碼是tensorflow, 您也能夠改爲您本身設定的密碼
也能夠登陸到Kubernetes master運行如下命令
$ helm install --name tensorflow incubator/ack-tensorflow
2.3 運行結束後能夠登陸到控制檯,查看tensorflow應用啓動的狀態
登陸使用TensorFlow實驗環境
首先經過ssh登陸Kubernetes集羣,查看tensorflow應用列表
$ helm list NAME REVISION UPDATED STATUS CHART NAMESPACE tensorflow 1 Thu Apr 12 07:54:59 2018 DEPLOYED ack-tensorflow-dev-0.1.0 default
利用helm status檢查應用配置
$ helm status tensorflow
LAST DEPLOYED: Thu Apr 12 07:54:59 2018
NAMESPACE: default
STATUS: DEPLOYED
RESOURCES:
==> v1/Service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
tensorflow-ack-tensorflow-dev LoadBalancer 172.19.2.39 10.0.0.1 6006:32483/TCP,80:32431/TCP 13m
==> v1beta2/Deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
tensorflow-ack-tensorflow-dev 1 1 1 1 13m
NOTES:
Get the application URL by running these commands:
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w tensorflow-ack-tensorflow-dev'
export SERVICE_IP=$(kubectl get svc --namespace default tensorflow-ack-tensorflow-dev -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:
這裏能夠看到外部SLB的ip是10.0.0.1, Jupyter Notebook的端口爲80, Tensorboard爲6006。
$ git clone https://code.aliyun.com/kuber...
注意:若是您須要用Tensorboard觀測訓練效果請將日誌記錄到/output/training_logs下。
總結
咱們能夠利用阿里雲Kubernetes容器服務,輕鬆的搭建在雲端搭建TensorFlow的環境,運行深度學習的實驗室,而且利用TensorBoard追蹤訓練效果。歡迎你們使用阿里雲上的GPU容器服務,在使用GPU高效計算的能力同時,比較簡單和快速的開始模型開發工做。