你能让特定数据比其他数据更能影响神经网络吗?

人工智能 神经网络 数据集
2021-11-10 17:56:17

我的数据集中有很多空值,所以我想让我的神经网络在没有空值的行上“了解更多”,因为这些行更重要。

有没有办法做到这一点?

1个回答

是的,您可以对每个示例的损失函数进行加权,这样您的成本函数就不是

Ĵ=一世大号(是的一世,是的^一世)

这将是

Ĵ=一世w一世大号(是的一世,是的^一世)

在哪里一世迭代您的数据集,大号是您正在使用的损失函数,是的一世是每个示例的基本事实,并且是的^一世是每个例子的预测。

您可以根据示例和您的数据集/目标,根据您喜欢的任何标准设置相关性权重。因此,例如,您可以将其设置为1.0完整的例子和0.1对于不完整的例子。根据您的 NN 框架,它可能已经提供了每个示例的权重,即使没有,自动微分也意味着您通常只需将前向逻辑实现到每个小批量的成本函数中,并且将应用权重无需更多工作即可正确渐变。如果确实需要自己实现梯度计算,只需将每个示例的初始梯度乘以示例的权重即可w一世.

一旦你做出这样的改变,你需要注意如何设置和解释你的测试集。当您的模型用于生产时,如果仍然存在缺少细节的输入,您可能不想以相同的方式对指标(例如准确度评级)进行加权,而是针对正确采样的数据集按原样报告它来自预期投入人口的看不见的例子。