人工智能實戰2019_第七次做業(1)_藺立萱

項目 內容
課程連接 人工智能實戰 2019(北京航空航天大學)
第七次做業要求 第七次做業:學習OpenPAI和NNI的使用
個人課程目標 熟練掌握python語言,神經網絡相關應用,實操項目
本次做業的幫助 學習OpenPAI和NNI的使用
個人github帳戶 linlixuan

一、題目

1.學習OpenPAI的使用:
學習文檔,並提交OpenPAI job,將體驗心得造成博客,選題方向能夠是:python

  1. 介紹OpenPAI,以及使用心得體會,給出文檔或者功能等方面的意見和建議
  2. 將OpenPAI與其餘機器學習平臺進行對比或評測

2.學習NNI的使用
學習文檔,並使用NNI進行調參或架構調整,將體驗心得造成博客,選題方向能夠是:git

  1. 介紹NNI,本身的心得體會,爲NNI提建議或問題,包括文檔功能等
  2. 將NNI與本身瞭解的其餘自動機器學習工具比較或評測

二、OpenPAI

隨着人工智能技術的快速發展,各類深度學習框架層出不窮,爲了提升效率,更好地讓人工智能快速落地,不少企業都很關注深度學習訓練的平臺化問題。例如,如何提高GPU等硬件資源的利用率,如何節省硬件投入成本,如何支持算法工程師更方便的應用各種深度學習技術,從繁雜的環境運維等工做中解脫出來。OpenPAI爲深度學習提供一個深度定製和優化的人工智能集羣管理平臺,讓人工智能堆棧變得簡單、快速、可擴展。github

● 爲深度學習量身定作,可擴展支撐更多AI和大數據框架算法

經過創新的PAI運行環境支持,幾乎全部深度學習框架如CNTK、TensorFlow、PyTorch等無需修改便可運行;其基於Docker的架構則讓用戶能夠方便地擴展更多AI與大數據框架。docker

● 容器與微服務化,讓AI流水線實現DevOps服務器

OpenPAI 100%基於微服務架構,讓AI平臺以及開發便於實現DevOps的開發運維模式。網絡

● 支持GPU多租,可統籌集羣資源調度與服務管理能力架構

在深度學習負載下,GPU逐漸成爲資源調度的一等公民,OpenPAI提供了針對GPU優化的調度算法,豐富的端口管理,支持Virtual Cluster多租機制,可經過Launcher Server爲服務做業的運行保駕護航。框架

● 提供豐富的運營、監控、調試功能,下降運維複雜度運維

PAI爲運營人員提供了硬件、服務、做業的多級監控,同時開發者還能夠經過日誌、SSH等方便調試做業。

● OpenPAI的架構以下:用戶經過Web Portal調用REST Server的API提交做業(Job)和監控集羣,其它第三方工具也可經過該API進行任務管理。隨後Web Portal與Launcher交互,以執行各類做業,再由Launcher Server處理做業請求並將其提交至Hadoop YARN進行資源分配與調度。能夠看到,OpenPAI給YARN添加了GPU支持,使其能將GPU做爲可計算資源調度,助力深度學習。其中,YARN負責做業的管理,其它靜態資源(下圖藍色方框所示)則由Kubernetes進行管理。

● OpenPAI平臺操做簡單,可是對於沒有提供好集羣IP的用戶來講須要用docker安裝PAI,過程稍複雜。線上訓練須要排隊,掉線後沒法及時準確恢復。


三、NNI

NNI (Neurol Network Intelligence) 是微軟開源的自動機器學習工具。與當前的各類自動機器學習服務或工具相比,有很是獨特的價值。

● NNI 支持私有部署。整個部署也很簡單,使用 pip 便可完成安裝。
支持私有部署。雲服務中的自動機器學習直接提供了自動機器學習的服務,不只包含了自動機器學習的功能,也包含了算力。若是團隊或我的已經有了很強的算力資源,就須要支持私有部署的自動學習工具了。

● 分佈式調度。NNI 能夠在單機上完成試驗,也支持如下兩種分佈式調度方案:

GPU 遠程服務器。經過 SSH 控制多臺 GPU 服務器協同完成試驗,並可以計劃每一個試驗所須要的 GPU 的數量。
OpenPAI。經過 OpenPAI,NNI 的試驗能夠在獨立的 Docker 中運行,支持多樣的實驗環境。在計算資源規劃上,不只能指定 GPU 資源,還能制定 CPU,內存資源。
超參搜索的直接支持。當前,大部分自動機器學習服務與工具都是在某個任務上使用,好比圖片分類。這樣的好處是,普通用戶只要有標記數據,就能訓練出一個高質量的平臺,不須要任何模型訓練方面的知識。但這須要對每一個訓練任務進行定製,將模型訓練的複雜性包裝起來。

● 與大部分現有的自動機器學習服務與工具不一樣,NNI 須要用戶提供訓練代碼,並指定超參的搜索範圍。這樣的好處在於,NNI 幾乎是通用的工具,任何訓練任務均可以使用 NNI 來進行超參搜索。但另外一方面,NNI 的通用性,也帶來了必定的使用門檻,使用 NNI 須要有基本的模型訓練的經驗。

相關文章
相關標籤/搜索