用于罕见事件的无监督深度人工神经网络分类器
Unsupervised deep artificial neural network classifier for rare occurrences of an event
我构建并训练了一个无监督的深度人工神经网络来检测大型数据集中的高阶特征。
数据由每日天气测量值组成,我的深度网络最后一层的输出是 4 个神经元宽,这有望代表高阶特征。
现在我想检测一个非常罕见的事件(例如龙卷风)的概率。
我挑出了导致龙卷风的数据点,但它们很少,大约 10,000 out of 5,000,000
个数据点。
What's the best design for my tornado classifier?
- 创建一个仅由 10,000 个
tornado
数据点组成的训练集,每次输出 1?
- 创建一个由所有 5,000,000 个数据点组成的训练集,没有龙卷风时期望输出为 0,有龙卷风时为 1?但这可能永远无法预测龙卷风。
- 其他解决方案?
我不明白你为什么要使用无监督学习。这听起来像是一个纯粹的监督学习任务。
您不应该为了预测罕见事件而丢弃数据。如果一个事件非常罕见,那么网络当然会预测它的概率非常低。因为它确实如此。这叫做"bias"。然而,网络的其余部分仍然应该尽最大努力学习区分正面和负面的例子。
如果您不喜欢,可以尝试不同的损失函数。也许是一种损失函数,它比负面例子更能惩罚缺失的正面例子。或者您可以通过向数据集添加更多正例副本来改变网络偏差。
顺便问一下 Data Science Stack Exchange 会更好:https://datascience.stackexchange.com/
我构建并训练了一个无监督的深度人工神经网络来检测大型数据集中的高阶特征。
数据由每日天气测量值组成,我的深度网络最后一层的输出是 4 个神经元宽,这有望代表高阶特征。
现在我想检测一个非常罕见的事件(例如龙卷风)的概率。
我挑出了导致龙卷风的数据点,但它们很少,大约 10,000 out of 5,000,000
个数据点。
What's the best design for my tornado classifier?
- 创建一个仅由 10,000 个
tornado
数据点组成的训练集,每次输出 1? - 创建一个由所有 5,000,000 个数据点组成的训练集,没有龙卷风时期望输出为 0,有龙卷风时为 1?但这可能永远无法预测龙卷风。
- 其他解决方案?
我不明白你为什么要使用无监督学习。这听起来像是一个纯粹的监督学习任务。
您不应该为了预测罕见事件而丢弃数据。如果一个事件非常罕见,那么网络当然会预测它的概率非常低。因为它确实如此。这叫做"bias"。然而,网络的其余部分仍然应该尽最大努力学习区分正面和负面的例子。
如果您不喜欢,可以尝试不同的损失函数。也许是一种损失函数,它比负面例子更能惩罚缺失的正面例子。或者您可以通过向数据集添加更多正例副本来改变网络偏差。
顺便问一下 Data Science Stack Exchange 会更好:https://datascience.stackexchange.com/