Skip to main content
QUICK REVIEW

[论文解读] A tale of two toolkits, report the first: benchmarking time series classification algorithms for correctness and efficiency

Anthony Bagnall, Franz J. Király|arXiv (Cornell University)|Sep 12, 2019
Time Series Analysis and Forecasting参考文献 26被引用 7
一句话总结

本文在开源 Python 工具包 sktime 中基准测试了六种时间序列分类(TSC)算法,与 tsml 中的 Java 实现进行对比,展示了高度一致的准确性,并揭示了显著的效率差异。主要贡献在于对 sktime 实现的全面正确性与性能评估,验证了其算法实现的准确性,同时指出了两个工具包在优化方面的改进机会。

ABSTRACT

sktime is an open source, Python based, sklearn compatible toolkit for time series analysis developed by researchers at the University of East Anglia (UEA), University College London and the Alan Turing Institute. A key initial goal for sktime was to provide time series classification functionality equivalent to that available in a related java package, tsml, also developed at UEA. We describe the implementation of six such classifiers in sktime and compare them to their tsml equivalents. We demonstrate correctness through equivalence of accuracy on a range of standard test problems and compare the build time of the different implementations. We find that there is significant difference in accuracy on only one of the six algorithms we look at (Proximity Forest). This difference is causing us some pain in debugging. We found a much wider range of difference in efficiency. Again, this was not unexpected, but it does highlight ways both toolkits could be improved.

研究动机与目标

  • 通过将 sktime 中实现的时间序列分类(TSC)算法与成熟的 tsml Java 工具包中的对应实现进行比较,验证 sktime 实现的正确性。
  • 评估并比较 sktime 和 tsml 在六种 TSC 算法上的计算效率(构建与预测时间)。
  • 识别在准确性与性能方面存在的差异,以指导 sktime 和 tsml 的改进。
  • 通过提供一个通用的开源框架用于算法比较,支持时间序列分类研究的可复现性与透明性。
  • 通过识别关键优化与扩展方向(如多变量和不等长时间序列支持),为 sktime 的未来发展提供指导。

提出的方法

  • 在 sktime 中实现六种 TSC 算法——时间序列森林(TSF)、RISE、BOSS、形状子变换分类器、弹性集成(EE)和邻近森林(PF)——采用与 scikit-learn 兼容的 API。
  • 通过在标准时间序列基准数据集上比较 sktime 与 tsml 实现的模型准确性,验证正确性。
  • 测量并分析训练与预测运行时间,以评估两个工具包的计算效率。
  • 通过 sktime 的 contrib 模块使用标准化的数据加载与评估流水线,确保结果的可复现性。
  • 利用 sktime 的模块化架构,包括转换器、距离度量和集成流水线,实现并组合分类器。
  • 评估直接实现(如 tsf.py)与基于复合流水线的版本(如通过 Pipeline 和 FeatureUnion 实现)之间的性能权衡。

实验结果

研究问题

  • RQ1sktime 中的 TSC 算法实现与 tsml 对应实现相比,在分类准确性方面是否功能等价?
  • RQ2sktime 与 tsml 实现之间在训练与预测效率方面存在哪些性能差异?
  • RQ3为何 sktime 中基于复合流水线的 Time Series Forest 实现显著慢于直接实现?
  • RQ4能否通过算法或实现优化提升 sktime 中 RISE 和 BOSS 的效率?
  • RQ5在两个工具包中,ElasticEnsemble 和 Proximity Forest 等集成方法在准确率与速度方面如何比较?

主要发现

  • 在标准基准数据集上,sktime 中六种 TSC 算法的准确性与 tsml 对应实现基本一致,但 Proximity Forest 表现出显著的准确性差异。
  • Proximity Forest 在 sktime 与 tsml 中表现出显著的准确性差异,表明可能存在错误或实现不一致,需进一步调试。
  • 所有算法均观察到显著的效率差异,sktime 实现普遍慢于 tsml,尤其在复合流水线配置下更为明显。
  • sktime 中基于复合流水线的 Time Series Forest 实现显著慢于直接实现,表明流水线组合或特征转换流水线中存在效率问题。
  • 性能差异揭示了在 RISE(基于频率)和 BOSS(基于词典)实现中,sktime 与 tsml 均存在优化空间。
  • 本研究证实,sktime 为 TSC 研究提供了正确且可互操作的基础,明确了性能改进路径与未来算法集成的可行方向。

更好的研究,从现在开始

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

无需绑定信用卡

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