使用 ANN 预测几个属性

数据挖掘 机器学习 神经网络 深度学习
2022-03-04 09:11:13

假设我有数以万计的数据集(行),每列包含 300 列整数、双精度和字符串(无图像,无音频)。其中五个目标列代表我要预测的每个数据集(行)表示的产品的有趣结果属性(整数)。

我目前的想法是为每个目标列创建类并组合这些类:column1 有 1-5 类,column2 也有 1-5 类……所以我得到了“11111”、“15312”、“43151”形式的组合目标类”、“55555”。现在,对于每个可能是 ANN 输出的数据集(行),我只有一个目标“标签”。这种方法至少有两个缺点:

  1. 一些组合类只有少量数据集,并且
  2. 仅在五个类别中对每列进行分箱会降低精度。

如果我增加每列的类数,我会在某些组合类中得到更少的数据集。

所以我的问题是我应该继续采用这种方法还是有更好的想法?可以使用 ANN 同时预测多个属性(即类)吗?

1个回答

这是一个相当奇怪的问题,至少对我来说......按照你的方法你最终会得到55类,这是典型神经网络的一个棘手问题。你可以访问这篇论文,它展示了一个数学严谨的解决方案:

我还将公开三种可能的幼稚解决方案,以供遇到类似问题的人注意:

  • 将您的 5 列转换为二进制列(5 级 3 位)并将问题视为具有 15 个类别的多标签分类https://en.wikipedia.org/wiki/Multi-label_classification

  • 您可以为每列拟合 5 个多类模型(分而治之的海军方法,这似乎是最先进的 phylosohpy)

  • 我从未尝试过 beta 回归,但它是有道理的:您可以将目标标签转换为出现频率,考虑以非常低的概率修剪目标。然后,您可以执行初步的 beta 回归来预测发生目标。此外,您可能还有其他分类模型,具体取决于 beta 回归器给出的概率,比如说 0-10%、10-20% 等目标的 5 个模型......

  • 将您的问题视为回归问题,但会出现一些问题:您的数据集中的“11111”真的接近“11112”吗?即你的标签是有序的吗?

所以我的问题是我应该继续采用这种方法还是有更好的想法?是否可以使用 ANN 同时预测多个属性(即类)?

是的,一个 ANN 可以为一个样本输出多个类(但不会在如此大的范围内工作):