关于RMSE的问题我们以后再谈。
先来看看官方给出的loss函数,我们用ys表示真实值,pred表示预测值(注意,这里是2分类问题):
loss = tf.reduce_mean( -ys*tf.log(pred) - (1-ys)*tf.log(1-pred))
如果你知道接触过交叉熵的话,这里我们能看到第一个求和项-ys*tf.log(pred)就是交叉熵的写法。
这里不必深究,原文后续有多元分类问题,我们再介绍。
这里给出的-log(x)的图像。
至于我们为什么在这里用log去算,其实涉及到信息熵的知识。感兴趣的可以搜索一下相关资料。
正则化:
逻辑回归的渐进性会不断的让损失降低直到为0 ,但是又达不到。从而会使每个指示器的权重变为负无穷或正无穷。
"当有大量罕见的特征组合且每个样本中仅一个时,包含特征组合的高维度数据会出现这种情况。"
我们可以通过以下方法来避免这种情况出现:
1. L2正则化
2. 早停法 (限制学习步数或学习速率)
3. 后面会讲到的L1正则化
4. dropout在这种情况下是否有效,我还不清楚,确定的时候我再写。