使用Scikit决策树的多输出分类



免责声明:我是机器学习领域的新手,即使我在过去一个月中做了相当大的研究,我仍然对此主题缺乏深入的了解。

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

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

问题1

给定一个包含rows r1 ... rn的数据集,具有f1 ... fn,每个 group rows的目标,确定在哪个组中do low r(n 1)属于。

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

我期望能够通过全新的行,并被告知哪个目标值是每个行。

问题2

给定一个包含rows r1 ... rn的数据集,具有f1 ... fn,根据特征的频率预测r(n 1)的值。

这里有一些注意事项:

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

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

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

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

关于问题2,如果您不处理时间序列,IMO可以做的最好的就是简单地预测每个功能的最常见价值。

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

最新更新