【问题标题】:How can I use AutoML in GCP to predict rare event?如何在 GCP 中使用 AutoML 来预测罕见事件?
【发布时间】:2021-09-27 08:25:22
【问题描述】:

作为标题,我尝试在 Google Cloud Platform 中使用 AutoML 来预测一些罕见的结果。 例如,假设我有 5 种类型的自变量:年龄、居住面积、收入、家庭规模和性别。我想预测一个称为“购买”的罕见事件。 购买非常罕见,因为对于 10,000 个数据点,我只会获得 3-4 次购买。幸运的是,我得到的负载不仅仅是 10,000 个数据点。 (我有 1 亿个数据点)

我曾尝试使用 AutoML 对最佳组合进行建模,但由于这是一个罕见的结果,因此该模型仅为我预测这 5 个类别中所有类型组合的购买次数为 0。请问我如何在 AutoML 中解决这个问题?

【问题讨论】:

  • 我认为这里的问题在于您的数据而不是 AutoML。因此,在这种情况下,缺少“购买”变量的数据基本上是无用的,而对于可用的数据,它可能是有偏差的数据。 AutoML 不进行数据处理或特征工程,因此您必须了解如何改进数据。
  • 哦,对不起,也许我应该更清楚上面的内容。 “购买”根本没有丢失,只是很少发生,即人们购买的机会只有 0.03%。
  • 所以购买是二进制的?并且只有 0.03% 的客户进行了购买?如果你给我你的自变量并且我返回 0,我会在 99.7% 的时间里是对的吗?如果是这样的话,我认为你不需要 ML。

标签: machine-learning google-cloud-platform automl


【解决方案1】:

在 Cloud AutoML 中,模型预测和模型评估指标取决于设置的置信度阈值。默认情况下,在 Cloud AutoML 中,置信度阈值为 0.5。可以在“模型”部分的“评估”选项卡中更改此值。要评估您的模型,请更改置信度阈值以查看准确率和召回率受到的影响。最佳置信度阈值取决于您的用例。 Here 是一些示例场景,用于了解如何使用评估指标。在您的情况下,必须最大化召回指标(这将导致更少的假阴性)才能正确预测购买列。

此外,训练数据必须由目标变量中每个类别的相当数量的示例组成,这样模型才能以更高的置信度预测值。由于您的训练数据高度偏斜,因此必须执行数据预处理(例如重新采样)以处理偏斜。

【讨论】:

  • 感谢您的建议维夏尔!我将自己研究最大化召回指标和重采样。再次感谢您的帮助