Hyperopt-sklearn scikitlearn 的参数优化工具

程序名称:Hyperopt-sklearn

授权协议: BSD-3-Clause

操作系统: 跨平台

开发语言: Python

Hyperopt-sklearn 介绍

Hyperopt-sklearn是基于scikit-
learn
项目的一个子集,其全称是:Hyper-parameter optimization for scikit-learn,即针对scikit-
learn项目的超级参数优化工具。由于scikit-learn是基于Python的机器学习开源框架,因此Hyperopt-
sklearn也基于Python语言。

Hyperopt-
sklearn的文档称:对于开发者而言,针对不同的训练数据挑选一个合适的分类器(classifier)通常是困难的。而且即使选好了分类器,后面的参数调试过程也相当乏味和耗时。更严重的是,还有许多情况是开发者好不容易调试好了选定的分类器,却发现一开始的选择本身就是错误的,这本身就浪费了大量的精力和时间。针对该问题,Hyperopt-
sklearn提供了一种解决方案。

Hyperopt-sklearn支持各种不同的搜索算法(包括随机搜索、Tree of Parzen
Estimators、Annealing等),可以搜索所有支持的分类器(KNeightborsClassifier、KNeightborsClassifier、SGDClassifier等)或者在给定的分类器下搜索所有可能的参数配置,并评估最优选择。并且Hyperopt-
sklearn还支持多种预处理流程,包括TfidfVectorizer,Normalzier和OneHotEncoder等。

那么Hyperopt-sklearn的实际效果究竟如何?下表分别展示了使用scikit-learn默认参数和Hyperopt-
sklearn优化参数运行的分类器的F-score分数,数据源来自20个不同的新闻组稿件。可以看到,经过优化的分类器的平均得分都要高于默认参数的情况。

另外,Hyperopt-sklearn的编码量也很小,并且维护团队还提供了丰富的参考样例。

Hyperopt-sklearn 官网

https://github.com/hyperopt/hyperopt-sklearn

相关编程语言

欧盟第7框架计划(FP7)的LarKC项目的目标是开发大规模...
Salad 是一种有效且灵活的实现著名的异常检测方法回...
multilanguage 是一个多语开发工具包,用于缓存多语...
go-cortex 是一个服务,通过倾听你的句子,并视图理...
DKPro Core 是基于 Apache UIMA 框架之上的自然语言...
NLTK 会被自然地看作是具有栈结构的一系列层,这些层...