【问题标题】:Multi-Output Classification using scikit Decision Trees使用 scikit 决策树的多输出分类
【发布时间】:2016-12-03 19:54:03
【问题描述】:

免责声明:我是机器学习领域的新手,尽管在过去的一个月里我做了相当多的研究,但我对这个主题仍然缺乏深入的了解。

我一直在使用 scikit 库,目的是学习如何根据历史信息预测新数据,并对现有信息进行分类。

我正在尝试解决两个可能相关的不同问题:

问题 1

给定一个数据集,其中包含行 R1 ... RN 和特征 F1 ... FN,以及每个 行的目标,确定行 R(N+1) 在哪个组中属于。

现在,目标值不是单数,而是一组值;我能想出的最佳解决方案是将这些值集表示为连接,这会创建一个人工类,并允许我仅使用一个属性来表示多个值。有更好的方法吗?

我期望能够传递全新的行集,并被告知每个行的目标值。

问题 2

给定一个包含行 R1 ... RN 和特征 F1 ... FN 的数据集,根据特征的频率预测 R(N+1) 的值。

这里有一些注意事项:

  1. 大部分特征本质上都是分类的。
  2. 某些特征是日期,因此在进行预测时,日期应该是相对于历史数据的未来。
  3. 频率分析需要按行进行,因为某些值集可能无效。

我的问题是:是否有任何过程/ML 算法,给定历史数据,它能够仅根据参数的频率预测一组新值?

如果您有任何建议,请告诉我。

【问题讨论】:

    标签: python machine-learning scikit-learn


    【解决方案1】:

    关于问题 1,如果您期望目标值的不同组件是独立的,您可以将问题视为为每个组件构建分类器。也就是说,如果特征是F = (F_1, F_2, ..., F_N),目标是Y = (Y_1, Y_2, ..., Y_N),则创建一个具有特征F和目标Y_1的分类器,第二个具有特征F和目标Y_2的分类器,等等。

    关于问题 2,如果您不处理时间序列,IMO 最好的办法就是简单地预测每个特征的最频繁值。

    也就是说,我相信您的问题更适合另一个堆栈交换,例如交叉验证。

    【讨论】:

      猜你喜欢
      • 2016-05-31
      • 2018-05-15
      • 2018-12-31
      • 2017-01-27
      • 2017-05-03
      • 2017-12-30
      • 2021-08-19
      • 2020-01-06
      • 2015-06-15
      相关资源
      最近更新 更多