如何用 Python 存储和分析分类结果?

数据挖掘 机器学习 Python 分类
2021-09-29 02:42:22

我正在使用 sklearn/pandas 将 ML 应用于 Python 中的分类任务。我将尝试各种事情以获得最佳结果,我想知道如何有效地存储和分析分类的所有参数和结果?参数包括:

  1. 训练示例的数量(可以随着我获得更多标记数据而扩展)。
  2. 一组功能。
  3. 分类算法。
  4. 算法超参数。

结果包括:

  1. 每个类的精度/召回率。
  2. 整体精度/召回率。
  3. 支持每个班级等

当然,我每次都可以手动将参数和结果复制到 Excel 电子表格中,但这不是最佳解决方案。是否有任何 Python 库(或 sklearn/pandas 模块)可以轻松存储和显示参数和结果以供以后分析?你如何解决这个任务?

2个回答

Sacred是由IDSIA 实验室开发的Python 库,“促进自动化和可重复的实验研究”。它可以通过 pip as 获得sacred

有关相关讨论,请参见reddit

我最终使用了Feature Forge,它是一个 Python 库,“提供了一组可在许多机器学习应用程序(分类、聚类、回归等)中有用的工具,如果您使用 scikit-learn(尽管如果您有不同的算法,这可以工作)”。

我之所以选择它,是因为它似乎是一种比 Sacred 更具体的机器学习工具,而 Sacred 似乎是一种更通用的工具。Feature Forge 还提供了一个方便的框架,用于以可扩展和可重用的基于类的方式描述特性。它还具有将实验结果存储在 Mongo 数据库中的功能。

感谢 @Emre 指向reddit 讨论,其中提到了 featureforge。

更新

我编写了一个基于 Feature Forge 的库来支持完整的机器学习实验管道:

  • 分类器配置管理
  • 功能描述
  • 训练/测试分类器
  • 存储/分析结果。

随意贡献:https ://github.com/goldan/machinery