【问题标题】:How to combine binary classification and regression problems如何结合二元分类和回归问题
【发布时间】:2020-01-14 23:03:35
【问题描述】:

我正在尝试解决这个问题:

一个人可能喜欢也可能不喜欢牛排,但这在统计上取决于这个人的年龄、种族、性别等。喜欢牛排的人可能喜欢他们的牛排,从 0% 熟到 100% 熟,并用任意量调味盐。所有这些还取决于人的年龄、种族、性别等。

我希望 ML 预测以下内容:

考虑到一个人的年龄、种族、性别等,这个人是否会喜欢牛排。如果他们喜欢牛排,他们希望牛排如何烹制,以及他们想在牛排上放多少盐。

我意识到我可以将这个问题分解为两个神经网络,一个二元分类和一个多维回归。

第一个网络会回答这个人是否喜欢牛排。如果这个人根本不喜欢牛排,那么为第二个网络生成输出是没有意义的。但如果答案是肯定的,我可以将数据集的子集提供给第二个网络,然后它会回答什么。

但是,我不明白的是:

  1. 是否可以将两个网络链接在一起形成一个网络?从某种意义上说,输出包含是/否答案以及回归网络的答案。

  2. 如果答案是肯定的,考虑到第二个网络的数据集可能更小,它是否比运行两个单独的网络更快?

  3. 同样,如果答案是肯定的,我该如何实施呢?使用 2 个具有不同损失函数的隐藏层?每层有多少个节点?每一层的激活函数是什么?

【问题讨论】:

    标签: machine-learning neural-network classification regression


    【解决方案1】:

    我自己还没有尝试过,但是您可以尝试让我们知道它是否会起作用。

    因为肉可以从 0% 烹饪到 100%(虽然不确定谁会生吃牛排),但我会使用回归来估计牛排的 -1 到 100,其中 -1 表示根本不喜欢牛排其他数字他们想煮多少

    【讨论】:

      【解决方案2】:

      嗯,有趣的问题。

      这不是两个分类+回归问题,而是一个分类+优化模型。

      你需要建立一个能够预测他是否喜欢牛排的模型。然后,您将尝试最大化他喜欢牛排的概率,方法是使用上述机器学习作为您通过调整变量(烹饪水平、香料等)的函数。这可以是通用的蛮力或适当的优化问题。

      【讨论】:

      • 对不起,我没有关注。我对机器学习很陌生。几天前才开始。回归与优化有什么区别?
      【解决方案3】:

      回答你的问题:

      1. 在您的情况下,您最好使用管道,其中包含两种算法:首先是二进制分类算法,然后是预测算法。在可能的情况下,将问题分成两个不同的部分是一种很好的做法,并且可以提供更好的结果。

      这里有几点要标记:

      • 首先,神经网络并不适用于所有机器学习问题。例如,您应该更好地使用其他算法。
      • 对于二元分类(即喜欢或不喜欢牛排),我不会使用神经网络,而是使用 SVMLogistic Regression(SVM 适合二进制分类)。
      • 对于第二部分,您需要找到值(即人们使用多少盐,他们喜欢烹饪的百分比),因此您应该使用预测算法,而不是使用分类算法的神经网络。尝试在此处应用线性回归

      有关详细信息,请参阅 Coursera here 上的 ML 课程,请参阅第 5 周和第 9 周。

      【讨论】:

      • 我认为是否使用神经网络取决于数据集对吧?例如,年龄与熟度水平的数据集可以如下所示:很多老年人喜欢牛排熟透,而很多年轻人喜欢牛排很少熟。但是一半的中年人喜欢他们的牛排稀有,一半的人喜欢他们的牛排做得很好。但是,例如,无论年龄大小,女性一般都更喜欢熟而不熟的牛排。这变成了一个非线性函数,所以不确定线性回归是否适用。
      • 我明白你说的。但实际上,您提到的(年龄、性别等)是特征,如果我理解得很好,您的数据集是在矩阵中,列上有特征,行上有样本,对吗?一般来说,线性/非线性不涉及数据集或特征,而是算法以及将数据集转换为模型的方式。您提到了功能,但它们可以以线性和非线性方式进行解析。
      • 如果您想一步完成学习模型,您将丢失不喜欢牛排的样本的数据,您将不得不处理丢失的数据,从而使您的问题复杂化。另一方面,使用或不使用 NN 不仅取决于数据集,还取决于你想用它做什么。这里首先有一个二元分类问题,最好的、公认的解决方案是 SVM。
      • 这里有趣的是,缺少的不是训练数据,而是结果标签。这意味着完整的输入在那里。缺少数据的输出总是可以用一些常数来表示。
      • 我用一些参考资料更新了我的答案。正如我所说,您最好使用管道。我看你无论如何都希望一步到位。如果您坚持就这样做,但在您的情况下这不是很好的做法。在这种情况下,请注意您的常数与数据集中的另一个常数不会有歧义。祝你好运!
      猜你喜欢
      • 2021-11-04
      • 2016-10-05
      • 2020-03-22
      • 2016-12-13
      • 1970-01-01
      • 2021-05-07
      • 2016-09-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多