NNI使用體驗

2021-09-12 11:51:40 字數 2330 閱讀 9184

在機器學習建模時,除了準備資料,最耗時耗力的就是嘗試各種超參組合,找到最佳模型的過程了。對於初學者來說,常常是無從下手。即使是對於有經驗的演算法工程師和資料科學家,也是很難把握所有的規律,只能多次嘗試,找到較好的超參組合。而自動機器學習這兩年成為了熱門領域,它將機器學習過程中包括自動特徵提取、模型選擇、引數調節等過程自動化地學習,使學習過程在給定資料和任務上學習和泛化能力非常強大。nni (neural network intelligence) 是微軟開源的自動機器學習工具包,與當前的各種自動機器學習服務或工具相比,有非常獨特的價值。nni著力解決超參除錯過程的挑戰,通過內建的超參選擇演算法、算力的強大支援和便捷的互動方式來加速和簡化超參搜尋的過程。

使用者只需要三步即可完成實驗準備,(1)定義搜尋空間(search space);(2)上傳**(codes);(3)定義實驗 ,使用者可以使用一行命令列即可開始實驗,並可使用webui在網頁端實時檢視實驗程序和結果。

nni的使用場景包括:

建議平台: linux(ubuntu 16.04以及更高版本) 、macos(10.14.1以及更高版本)、python >= 3.5

體驗版本:nni v0.5.2

體驗環境:ubuntu 14.04.5 + python3.6.5+ tensorflow 1.11.0(雖然版本比官方建議稍低一些,但是目前還是沒什麼問題,但是還是建議按照官方版本要求來,這樣問題少些)

安裝指令:

一步就成功安裝好了nni,激動。

安裝體驗nni的安裝對軟硬體配置有一定要求,這樣可以避免後續的很多麻煩,但是安裝步驟其實是很簡單的,主要是tensorflow 和python需要匹配版本這邊較為麻煩,其餘就是自己本身缺少的一些包,按著操作來也比較容易,官方還有faq檢視。

安裝完成後

使用者只需要三步即可完成實驗準備:

(1)定義搜尋空間(search space);

(2)上傳**(codes);

(3)定義實驗配置(experiment) ;

可在-/nni/example/trials/mnist目錄中看到目錄結構:

clone完了之後去nni目錄下找到mnist資料集的配置檔案並進行配置

然後用vim config.yml來編輯,為了讓速度更快一些我把trialconcurrency改為5,表示並行實驗數為5。

開始訓練——一句命令:

$ nnictl create --config nni/examples/trials/mnist/config.yml

然後就會顯示下圖的 successfully started experiment! 說明這個例子已經開始跑啦。

檢視訓練結果

開啟web ui urls (這裡是終端返回nni解析的實驗資訊以及實驗結果)如下圖:

這裡可以看到所有訓練資訊以及其具體的超參組合,並支援對回傳結果排序。

完成後,需要手動停止實驗;

nnictl top #實時顯示當前例項的實驗情況。

nnictl stop #停止實驗(到達config.yml中設定的停止條件後不會自動停止實驗,需要手動停止,否則占用當前webui使用的埠)

使用過程體會nni整體的使用也是比較簡單的,主要就是三步:

(1)定義搜尋空間;

(2)上傳**;

(3)定義實驗配置;

GVIM VIM使用體驗

現在全面轉戰linux,雖然使用ubuntu,雖然早就有了rhcsa證書.好吧,面臨的頭一件大事就是搞定linux下的編譯環境,早就在使用vim,但是都得不到最夠的時間對vim進行系統的配置,每天回到家裡就會發現精力會被各種事物吸引。很悲催。所以說環境才是硬道理。這篇帖子是乙個總覽,用來索引我以後發...

Docker for windows 使用體驗

用這個 剛開始報錯說我開了hvt 關了重啟就好了 然後又啟動報錯 running pre create checks default no default boot2docker iso found locally,downloading the latest release 載入本地tar.7z檔...

Playstation VR 使用體驗

是的,從上周末拿到vr已經過去一周了,是時候發個體驗報告了。作為miss了第一次發售預定的ps4使用者,其實第二次天貓開放預定搶購並沒有抱多大期望能搶到,不過事情就這樣發生了。發貨時間也超乎預期了,天貓預定標註的發貨時間是10月30日前,作為乙個經歷了太多的玩家,對於廠家給出的日期是存疑的,不過這次...