神经网络是否学习函数或概率密度函数?


19

这个问题听起来有点奇怪,因为我是统计推理和神经网络的新手。

当使用神经网络进行分类问题时,我们说我们要学习一个函数,它将输入的空间映射到输出的空间:fxy

f(x;θ)=y

我们是否要拟合参数()以建模非线性函数或模型概率密度函数?θ

我真的不知道如何以更好的方式写问题。我已经读过两次(概率密度函数或类似函数),因此感到困惑。

Answers:


15

严格来说,神经网络适合非线性函数。

如果选择了适当的激活函数并且遵守了某些条件,则可以将它们解释为拟合概率密度函数(值必须为正, 1,等等。)。但这是您如何选择解释其输出的问题,而不是他们实际上在做什么。在后台,它们仍然是非线性函数估计器,您可以选择将其应用于PDF估计的特定问题。


3
@sdiabr实际上,如果您想让网络模拟pdf,则不会使用该阈值-因为pdf可以具有除1和0之外的其他值。有了该阈值,它就成为简单的分类器。
Skander H.

2
看看这个正确的方法是,阈值是有问题的外部什么是从网络上了解到。不尊重这种区别会导致将ML应用到现实世界中的问题很多。
马修·德鲁里

1
是的,我了解。因此,忘记阈值,那么我将建模pdf吗?我认为我对阈值感到困惑,因为我读过一些关于建模贝努利分布的知识。但是,没有门槛,那已经是伯努利吧?在我们只有一个具有S型激活函数的输出节点的情况下,它将以概率p或(1-p)输出0或1
sdiabr

1
是的,我再次感到困惑,谢谢@CagdasOzgenc。让我们再试一次:通过在输出层中使用Sigmoid函数,我们可以直接对pdf建模,对吗?遵循其可能会遵循的任何分布。
sdiabr '18年

2
但是,您不是在学习未知系数的概率分布,因此您不是在学习后验预测分布。
垃圾平衡

11

通常,神经网络不用于建模完整的概率密度。他们的重点是仅对分布的均值建模(或者在确定性情况下仅对非线性函数建模)。然而,通过神经网络对完整的概率密度建模是很有可能的。

一种简单的方法来做到这一点是例如对于高斯的情况是从一个输出和方差从所述网络的另一输出发射的平均值,然后最小化的功能的一部分训练过程,而不是常见平方误差。这是神经网络的最大似然过程。logN(y|x;μ,σ)

一旦训练你塞的这个网络每次值作为输入它会给你的μσ,那么可以插整个三重ÿ μ σ的密度˚F Ý | X Ñ μ σ 获得您喜欢的任何y的密度值。在此阶段,您可以根据实际的域损失函数选择要使用的y值。要记住的一件事是,对于μ,输出激活应该不受限制,以便您可以发出-xμσy,μ,σf(y|x)N(μ,σ)yyμ + inf, σ应该是唯一的正激活。inf+infσ

总的来说,除非我们遵循确定性函数,否则神经网络中使用的标准平方损失训练与我上面描述的过程几乎相同。引擎盖下一个分布假设隐含没有关于关心σ和如果仔细检查- Ö Ñ Ý | X ; μ σ 为您提供了平方损失(一种表达的损失高斯最大似然估计器的函数)但是,在这种情况下,不是yGaussianσlogN(y|x;μ,σ)y根据您的喜好值,每次给定新的x值时,您始终会发出μx

对于分类的输出将是一个分布代替ģ 一个ü 小号小号一个Ñ,它有一个单一的参数来发射。如另一个答案中所指定,此参数在01之间,因此应该相应地激活输出。它可以是逻辑功能,也可以是达到相同目的的其他功能。BernoulliGaussian01

一种更复杂的方法是Bishop的混合物密度网络。您可以在以下经常参考的文章中阅读有关它的信息:

https://publications.aston.ac.uk/373/1/NCRG_94_004.pdf


哎呀,你真不敢相信我😀我想引用Bishop的MDN ...还有另一种让神经网络输出pdf的方法,这当然是贝叶斯范式。我会写一个答案。
DeltaIV '18年

关于混合物密度网络的另一篇有趣的论文,用于预测冲浪条件:icml.cc/Conferences/2005/proceedings/papers/…–
马修·德鲁里

应该将“整个三元组y,μ,σ”更改为“整个三元组x,μ,σ”吗?
moh

@moh不。x是给定的,不会出现在密度中。
Cagdas Ozgenc

1

我不同意的答案是,在大多数令人印象深刻的实际应用中(例如那些在媒体上获得最多报道的应用),它既不是功能也不是概率。他们执行随机决策。

表面上看起来NN只是拟合函数,排队通用逼近参考。在某些情况下,当使用某些激活函数和特定假设(例如高斯误差)时,或者在贝叶斯网络上阅读论文时,看来NN可以产生概率分布。

但是,这只是顺便说一句。NN打算做的是对决策建模。当汽车由AI驱动时,其NN不会尝试计算其前方有物体的概率,因此假定存在一个物体来计算其为人的概率。它也没有计算传感器输入到各种对象的映射。不,NN应该根据所有输入做出决策,以进行侧向操纵或继续行驶。它不是在计算概率,而是在告诉汽车要做什么。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.