Skip to main content
QUICK REVIEW

[论文解读] Scikit-Multiflow: A Multi-output Streaming Framework

Jacob Montiel, Jesse Read|arXiv (Cornell University)|Jul 12, 2018
Data Stream Mining Techniques参考文献 7被引用 277
一句话总结

scikit-multiflow 是一个用于多输出/多标签和流数据挖掘的 Python 框架,整合了前沿方法、流生成器和评估器,以支持流学习研究与实验。

ABSTRACT

Scikit-multiflow is a multi-output/multi-label and stream data mining framework for the Python programming language. Conceived to serve as a platform to encourage democratization of stream learning research, it provides multiple state of the art methods for stream learning, stream generators and evaluators. scikit-multiflow builds upon popular open source frameworks including scikit-learn, MOA and MEKA. Development follows the FOSS principles and quality is enforced by complying with PEP8 guidelines and using continuous integration and automatic testing. The source code is publicly available at https://github.com/scikit-multiflow/scikit-multiflow.

研究动机与目标

  • 为一个基于 Python 的流学习框架填补空缺,该框架能够与 scikit-learn 交互并扩展针对流的数据的前沿方法。
  • 提供工具,促进流学习研究的开发与评估。
  • 通过在 Python 数据科学生态系统中提供可访问的工具,促进流学习的民主化。

提出的方法

  • 具有 fit、partial_fit、predict 和 predict_proba 方法的基础 StreamModel 类。
  • Stream 对象提供连续数据流;StreamEvaluator 负责数据查询、训练/测试以及性能跟踪。
  • 将前瞻评估(交错的测试-训练)作为流的核心评估方法。
  • 支持流生成器、学习器、变更检测器和评估方法(前瞻评估和留出评估)。
  • 与现有框架(如 scikit-learn、MOA 和 MEKA)集成,受它们的接口和方法学启发。
  • BSD 许可证开源,提供文档、持续集成和公开仓库。

实验结果

研究问题

  • RQ1一个 Python 框架如何在增量训练下支持多输出/多标签的流式学习?
  • RQ2scikit-multiflow 是否能够提供一个共同的基础,将 scikit-learn、MOA 和 MEKA 桥接起来用于流学习研究?
  • RQ3需要哪些工具(生成器、学习器、检测器、评估器)来促进流学习方法的开发与评估?
  • RQ4在该框架中,前瞻评估如何运作以随时间评估模型性能?

主要发现

  • 该框架提供适用于多输出学习的流生成器、学习者、变更检测器和评估器。
  • 它支持二分类/多类以及多标签/多输出场景,具备增量训练。
  • 它能够在流式环境中实现前瞻评估和留出评估以跟踪性能。
  • 该项目通过在 Python 中提供可访问的工具并与 scikit-learn 互操作,强调流学习的民主化。
  • 代码在 BSD 许可证下开源,具有持续集成和公开托管。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。