讓AI去訓練AI,autoML、autoKeras、auto-sklearn了解一波
- 2019 年 10 月 8 日
- 筆記
↑ 點擊加入mixlab社區
15000+跨學科人群,機器學習、量化交易、物聯網、區塊鏈、產品、建築設計、服裝設計、珠寶設計、音樂、藝術等。
當你有一個idea的時候,好不容易收集好了數據,但是面對一堆的機器學習演算法,還有各種參數的調試,這個時候,只能一種一種演算法進行嘗試,各種參數進行組合試驗,此過程非常耗費時間跟精力,是個重複的勞動的過程,這個時候,我們就會想,能不能為此過程也開發一種演算法,來自動幫我們完成演算法和超參的選擇,於是autoML就誕生了。
——讓AI去訓練AI。
我們先了解下自動化機器學習是什麼?
Automatic Machine Learning, AutoML
簡單來說就是一種自動化任務的方法,包括以下內容:
- 預處理並清理數據
- 選擇並構建適當的功能
- 選擇合適的模型
- 優化模型超參數
- 後處理機器學習模型
- 批判性地分析所獲得的結果
在機器學習自動化方面,Google的 AutoML 無疑地位穩固。AutoML 基於Google最新的影像識別技術神經架構搜索( Neural Architecture Search ,NAS)。NAS 是一種演算法,會根據特定數據集搜索最佳神經網路架構,以在該數據集上執行特定任務。
AutoML 則是一套機器學習工具,可以輕鬆訓練高性能深度網路,而無需用戶掌握深度學習或 AI 知識,用戶值需要標記數據,導入工具即可。然而,Google的AutoML是收費的。這邊介紹2個開源解決庫:
1 AutoKeras
AutoKeras 是一個用於自動化機器學習的開源軟體庫,提供自動搜索深度學習模型的架構和超參數的功能。
安裝相當簡單:
pip install autokeras
4行即可實現影像分類:
import autokeras as ak cls = ak.ImageClassifier() cls.fit(X_train, y_train) predictions = cls.predict(X_test)
2 Auto-sklearn
http://automl.github.io/auto-sklearn
跟Auto-Keras類似,Auto-sklearn是基於sklearn的。
同樣,也是4行程式碼:
import autosklearn.classification cls = autosklearn.classification.AutoSklearnClassifier() cls.fit(X_train, y_train) predictions = cls.predict(X_test)
有機會可以嘗試下以上2個AI訓練AI的開源庫~
也許某一天AI會自己收集數據,自己訓練AI,自己部署成應用。
以上為全文。