让AI去训练AI,autoML、autoKeras、auto-sklearn了解一波

  • 2019 年 10 月 8 日
  • 笔记

点击加入mixlab社区

15000+跨学科人群,机器学习、量化交易、物联网、区块链、产品、建筑设计、服装设计、珠宝设计、音乐、艺术等。

当你有一个idea的时候,好不容易收集好了数据,但是面对一堆的机器学习算法,还有各种参数的调试,这个时候,只能一种一种算法进行尝试,各种参数进行组合试验,此过程非常耗费时间跟精力,是个重复的劳动的过程,这个时候,我们就会想,能不能为此过程也开发一种算法,来自动帮我们完成算法和超参的选择,于是autoML就诞生了。

——让AI去训练AI。

我们先了解下自动化机器学习是什么?

自动化机器学习

Automatic Machine Learning, AutoML

简单来说就是一种自动化任务的方法,包括以下内容:

  • 预处理并清理数据
  • 选择并构建适当的功能
  • 选择合适的模型
  • 优化模型超参数
  • 后处理机器学习模型
  • 批判性地分析所获得的结果

https://www.automl.org/automl

在机器学习自动化方面,谷歌的 AutoML 无疑地位稳固。AutoML 基于谷歌最新的图像识别技术神经架构搜索Neural Architecture Search ,NAS)。NAS 是一种算法,会根据特定数据集搜索最佳神经网络架构,以在该数据集上执行特定任务。

AutoML 则是一套机器学习工具,可以轻松训练高性能深度网络,而无需用户掌握深度学习或 AI 知识,用户值需要标记数据,导入工具即可。然而,谷歌的AutoML是收费的。这边介绍2个开源解决库:

1 AutoKeras

https://autokeras.com

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,自己部署成应用。

以上为全文。