神经网络模型的效果以及优化的目标是通过损失函数(loss function)来定义的。下面主要介绍适用于分类问题和回归问题的经典损失函数,并通过TensoFlow实现这些损失函数。
分类问题请参考:【分类问题损失函数——交叉熵】
回归问题解决的是对具体数值的预测,比如房价预测、销量预测等等,解决回归问题的神经网络一般只有一个输出节点,这个节点的输出值就是预测值。本文主要介绍回归问题下的损失函数——均方误差(MSE,mean squared error)。
它的定义如下: M S E ( y , y ′ ) = ∑ i = 1 n ( y i − y i ′ ) 2 n MSE(y,y’)=\frac{\sum^n_{i=1}(y_i-y_i’)^2}{n} MSE(y,y′)=n∑i=1n(yi−yi′)2 其中, y i y_i yi为一个batch中第 i 个数据的正确答案, y i ′ y’_i yi′为神经网络给出的预测值。
下面代码展示如何用Tensor实现均方差损失函数:
mse = tf.reduce_mean(tf.square(y_ - y))
tf.reduce_mean
:所有元素的均值。
y_
:标准答案
y
:神经网络输出的答案
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。