如何用概率输入训练神经网络

时间:2016-06-24 01:43:33

标签: machine-learning neural-network probability-density

您好,感谢您的帮助,

我的问题是我试图解决的长期问题:

  • 如果输入是概率而不是值,我们如何训练神经网络?

使其更直观:

  • 我们假设我们有6个功能,每个功能的值为1或-1。

  • 它们的值是以概率方式确定的,例如特征1可以是1,概率为60%或-1,概率为30%。

如果在每次试验中我们如何训练网络,我们可能会根据每个特征的概率分布得到INPUT值?

2 个答案:

答案 0 :(得分:1)

实际上,答案比你预期的更加紧张,因为许多现有的神经网络实际上都以这种方式进行了训练。你必须做......没事。只需根据您的分布在每次迭代中对您的批次进行抽样,这就是全部。神经网络不需要有限的训练集,因此您可以在“potential ifinite”(样本生成器)上有效地训练它。这正是图像处理中使用图像增强所做的 - 每个批处理包含图像(块)的随机子样本,这些子样本是从非常基本的概率分布中采样的。

@Nagabuhushan建议解决不同的问题 - 你知道每个样本的先验概率,根据问题并非如此:

  

我们可以根据每个特征的概率分布获得INPUT值

另外,即使情况确实如此,NN也不适合乘法,因此可能需要额外调整架构(日志转换)。

答案 1 :(得分:0)

对于您输入网络的值,您应该使用每个特征的概率取值1.您可以使用它们的概率-1,但要保持一致。此外,确定一些特征顺序并分别按顺序排列其概率。

编辑:我想我可能误解了这个问题。您的输入是由概率,还是1和-1组成的?如果是后者,那么一个架构良好的网络应该自己学习分布。请确保将其与您正在评估的相同输入空间进行训练。