auto-sklearn简介
来自官网首页
auto-sklearn是什么?
auto-sklearn是一个自动化机器学习的工具包,其基于sklearn编写.
>>> import autosklearn.classification
>>> cls = autosklearn.classification.AutoSklearnClassifier()
>>> cls.fit(X_train, y_train)
>>> predictions = cls.predict(X_test)
auto-sklearn可以进行机器学习算法的自动选择与超参数的自动优化,它使用的技术包括贝叶斯优化,元学习,以及集成机构?(ensemble construction).你可以通过这篇文章,NIPS 2015来学习关于更多auto-sklearn背后的原理与技术.
例子
>>> import autosklearn.classification
>>> import sklearn.model_selection
>>> import sklearn.datasets
>>> import sklearn.metrics
>>> X, y = sklearn.datasets.load_digits(return_X_y=True)
>>> X_train, X_test, y_train, y_test = \
sklearn.model_selection.train_test_split(X, y, random_state=1)
>>> automl = autosklearn.classification.AutoSklearnClassifier()
>>> automl.fit(X_train, y_train)
>>> y_hat = automl.predict(X_test)
>>> print("Accuracy score", sklearn.metrics.accuracy_score(y_test, y_hat))
如果将上面的代码运行一个小时,那么其精度将会高于0.98.
手册
手册中文翻译
许可证
auto-sklearn与scikit-sklearn的许可证一样,即都为三条款的BSD许可
援引auto-sklearn
如果你在科学出版物上使用auto-sklearn,我们将感激不尽
Efficient and Robust Automated Machine Learning, Feurer et al., Advances in Neural Information Processing Systems 28 (NIPS 2015).
Bibtex entry:
@incollection{NIPS2015_5872,
title = {Efficient and Robust Automated Machine Learning},
author = {Feurer, Matthias and Klein, Aaron and Eggensperger, Katharina and
Springenberg, Jost and Blum, Manuel and Hutter, Frank},
booktitle = {Advances in Neural Information Processing Systems 28},
editor = {C. Cortes and N. D. Lawrence and D. D. Lee and M. Sugiyama and R. Garnett},
pages = {2962--2970},
year = {2015},
publisher = {Curran Associates, Inc.},
url = {http://papers.nips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf}
}
贡献
我们感谢所有对auto-sklearn做出贡献的人,无论你是写的bug报告还是文档,亦或是新的贡献.同时如果你想要贡献代码.你可以使用issue tracker
同时为了项目合并前避免重复的工作,强烈建议你在进行工作前与我们的工作人员在(github issues)[https://github.com/automl/auto-sklearn/issues]上进行联系
同时建议你在开发新的功能时,请先创建新的发展分支,同时在所有的测试结束并通过后,进行项目合并.