成本函数
与线性回归或逻辑回归类似,要使用神经网络对训练数据进行拟合时,需要有成本函数。这样只要针对训练数据,求解成本函数的最小值即可得出神经网络模型参数。
针对 K 类分类问题的神经网络的输出层
其中 K 是输出层的的单元个数,K >= 3。因为如果 K < 3 则可以直接用一个单元表示。其成本函数是:
其中 h(i)k=hΘ(x(i))k 是输出层的第 kth 个输出值。 L 是神经网络的层数,
!!! warnning “MathJax 的缺陷”
这个公式我写了 20 分钟。它已经复杂到我不得不把 h(i)k 独立写出来了,如果全部写一个公式里,公式将无法正确显示。不服的人可以试看看。
怎么理解神经网络的成本公式
实际上不需要记住这么复杂的公式,但可以结合逻辑回归算法的成本公式来理解神经网络的成本公式。我们知道,神经网络中间层和输出层的每个神经元,都和其前面一层的神经网络的神经元构成逻辑回归关系。这个是神经网络的定义。而逻辑回归算法的成本函数是:
跟神经网络成本函数对比,你会发现神经网络输出层有 K 个神经元。所以计算成本函数时,需要把输出层 K 个神经元的逻辑回归成本累加起来。
怎么理解正则项呢?
正则项有三个累加器,最前面那个是层累加器,典型地,对 3 层神经网络模型 L=3 ,正则项简化为: