学习和验证曲线的简易绘图包装器

sk_modelcurves的Python项目详细描述


SK模型曲线

为软件工程师和研究人员构建的python包装器 从scikit learn轻松创建学习和验证曲线图

本模块旨在补充您在SciKit中的工作流程学习和简化 评估模型的过程

该模块包括许多生活质量功能,应该可以为您节省宝贵的 每当您想绘制学习曲线以检查偏差/方差或 绘制验证曲线以查看优化超参数的效果。

背景

对于那些不熟悉学习曲线的人来说,看看Andrew Ng的优秀。 讨论它们在http://cs229.stanford.edu/materials/ML-advice.pdf

在写许多研究论文和建立许多模型的过程中,我 我发现自己使用的样板代码几乎每一个 每当我想绘制学习曲线或验证曲线时 评估模型。

希望这个模块每次需要绘制时都能节省您几分钟的时间 一个学习或验证曲线,这样你就可以专注于其他事情。

安装

python的pip是推荐的安装方法。从终端:

$ pip install sk_modelcurves

示例用法

使用精度作为度量和5倍交叉验证生成学习曲线。

假设一个称为knn的sklearn估计器,训练数据矩阵称为X和 培训标签称为y:

$ from sk_modelcurves.learning_curve import draw_learning_curve
$ draw_learning_curve(knn, X, y, scoring='accuracy', cv=5)
$ plt.show()

用f1得分作为一个估计量,为多个估计量生成多条学习曲线 度量、5倍交叉验证和每个估计器的名称。

假设3个sklearn估计量称为knn2,knn20,knn40,训练数据矩阵 呼叫X和培训标签呼叫Y:

$ from sk_modelcurves.learning_curve import draw_learning_curve
$ draw_learning_curve([knn2, knn20, knn40], X, y, scoring='f1', cv=5,
  estimator_titles=['2 Neighbors', '20 Neighbors', '40 Neighbors'])
$ plt.show()

还有很多其他的选择查看源代码docstrings或 即将发布的文档。

依赖关系

经过测试,sk modelcurves适用于python 2.6和python2.7。python 3.3+有 未经测试,在测试前假定不起作用

必需的依赖项包括scikit learn(当然!),numpy>;=1.6.1, 而matplotlib>;=1.1.1。

要运行测试,您需要nose>;=1.1.2。

贡献

欢迎任何人!

如果你发现一个bug或者想讨论一个潜在的特性,请提交一个 先发布

测试

安装后,可以从源代码外部启动测试套件 目录(您需要安装nosepackage):

$ nosetests -v sk_modelcurves

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android深度链接的java模式匹配   jstl在JSP中添加外部资源(CSS/JavaScript/images等)   Java开关环路中断故障   java Appengine通道API开发服务器vs生产   java断言等于Junit中的两个列表   java用“真实数据”建立测试系统   Java中使用番石榴BiMap的词典   java试图在圆周上绘制位图,在实现中找到一些偏移   json Java curl响应   java使用hibernate或JPA获取过程输出的列名   java从Android移动应用程序获取电话号码   java访问嵌套的JsonNode元素,并用逗号分隔   未使用注释的java未经检查或不安全操作   控制台中的java输出为空   java使用Android应用程序的自定义适配器将项目动态添加到列表视图   java如何解决对接口中静态方法的需求?   尝试从其他活动调用数组字符串时发生java错误   仅设备上的java Android NDK致命信号11(SIGSEGV)