我很难知道神经网络的损失函数是什么。对于二进制分类问题,它是否意味着平方误差,如下面的视频中所述:https://www.youtube.com/watch?v=5u0jaA3qAGk&t=59s或者是否是此处定义的交叉熵http://work.caltech.edu/slides/slides09.pdf以及为什么?
此外,在多分类的情况下,我认为有类似softmax的东西,但我真的不知道它是如何工作的。有人可以正确解释我吗?
谢谢!
答案 0 :(得分:3)
理论上,您可以使用任何损失函数构建神经网络。您可以使用均方误差或交叉熵损失函数。它归结为最有效的东西。最有效的是,我的意思是:什么可以让您更快速和/或更准确地学习参数。
在实践中,大多数神经网络倾向于使用交叉熵。很多初学者的神经网络课程和教程都会显示你的均方误差,因为它起初可能更直观,更容易理解。
这article更详细地解释了它,但让我引用一下:
我们什么时候应该使用交叉熵而不是二次成本?在 事实上,交叉熵几乎总是更好的选择 输出神经元是乙状结肠神经元
关于softmax功能。你可能知道,每个神经元都有一个激活功能。通常,该函数是一个sigmoid函数。 softmax函数是另一种激活函数,通常用于神经网络的最后一层。 softmax功能具有独特的属性。输出将是从0到1的值,并且层中每个神经元的所有输出的总和将等于1.有效地指示概率。这使得它非常适合多类分类,因为它将为您提供每个类的概率,并且您可以选择具有最高概率的类。