1 - AutoML
AutoML(自動化機器學習)是將機器學習應用於現實問題的端到端流程自動化的過程。html
AutoML定義
簡單來講就是一種自動化任務的方法:git
- 預處理並清理數據。
- 選擇並構建適當的功能。
- 選擇合適的模型系列。
- 優化模型超參數。
- 後處理機器學習模型。
- 批判性地分析所得到的結果。
AutoML優勢
- 自動化重複的任務,如管道建立和超參數調整等,讓數據科學家在實際中能夠可以更多地關注業務問題而不是模型
- 自動化ML管道中的步驟,在只需最少人力的狀況下仍保持模型的性能,有助於避免可能因手動引入的錯誤
- 不一樣知識背景的人都能使用機器學習的功能來解決複雜的場景
簡而言之,AutoML下降進入機器學習和深度學習的門檻,可以以最小的領域知識或實際數據來應用算法和訓練模型,只需不多的努力便可實現最早進的性能。github
automl.org
2 - auto-sklearn
auto-sklearn基於sklearn庫,具有專業並強大的模型庫和數據/特徵預處理庫。
熟悉sklearn的開發者很容易切換到Auto-Sklearn。
一般被用於迴歸和分類任務,計算量較少,所以實現成本較低。算法
auto-sklearn與常規ML framework的對比

常規 ML framework主要的環節包括 :導入數據---》數據清洗---》特徵工程---》分類器--》輸出預測值
auto-sklearn增長的部分:api
- 自動學習樣本數據:meta-learning,學習樣本數據,自動推薦合適的模型。
- 自動調超參:貝葉斯優化(Bayesian optimizer)
- 自動模型集成:build-ensemble,模型集成,多個模型組合成一個更強更大的模型,提升預測準確性。
auto-sklearn一些特性
- 支持設置單次訓練時間和整體訓練時間,使得工具既能限制訓練時間,又能充分利用時間和算力。
- 支持切分訓練/測試集的方式,也支持使用交叉驗證。從而減小了訓練模型的代碼量和程序的複雜程度。
- 支持加入擴展模型以及擴展預測處理方法。
一些說明:網絡
- 暫不支持深度學習
- 耗時較長,計算時長每每一個小時以上
- 在數據清洗環節,還須要人爲參與,目前對非數值型數據不友好
auto-sklearn官網信息
3 - H2O簡介
Automatic Machine Learning for the Enterprise. Driverless AI automates feature engineering, model building, visualization and interpretability.多線程
- H2O是企業級機器學習框架、開源的預測引擎,提供了一站式自動建模平臺DAI(Driverless AI)。
- H2O其實是經過增長一個專有超參數調整和功能工程層 Driverless AI,從而使性能獲得提高。
- H2O是商業程序,價格昂貴,目前提供試用期:(Driverless AI 21-Day Free Trial)。
H2O一些特性
- H2O框架的核心代碼由Java編寫,數據和模型經過分佈式的key/value存儲在各個集羣節點的內存中,算法使用Map/Reduce框架實現,並使用了Java中的Fork/Join機制來實現多線程。
- 支持深度學習、梯度推動(Gradient Boosting)、隨機森林(Random Forest)、廣義線性模型(即邏輯迴歸,彈性網絡)等各類機器學習算法。
- 支持多語言Python、Java、Scala、R等
- 多種數據接口:HDFS, S3, SQL and NoSQL
- 界面簡潔,易於擴展和長期維護

H2O官網信息
4 - AutoKeras簡介
能夠視爲Google AutoML(https://cloud.google.com/automl/)的替代品。
使用Auto-Keras實現自動化深度學習,自動訓練模型,幾乎不須要干預,但一般是一個很是耗時的過程。
AutoKeras一些特性
- AutoKeras是一個由易用深度學習庫Keras編寫的開源Python包。
- 安裝快速,運行簡單,案例豐富,易於修改。
- 可經過 pip install autokeras快速安裝,而後就能夠在準備好在的數據集上作本身專屬的架構搜索。
AutoKeras不只能幫助開發人員快速準確地建立模型,並且容許研究人員深刻研究架構搜索。
AutoKeras使用神經架構搜索(Efficient Neural Architecture Search,ENAS)爲給定的學習任務搜索最佳的神經網絡架構
AutoKeras官網信息
5 - 參考信息