深度学习日志可能性

时间:2018-09-20 20:15:50

标签: machine-learning deep-learning log-likelihood

我是深度学习领域的新手,我使用对数似然法比较MSE指标。任何人都可以展示如何计算以下2个预测输出示例以及每个3个输出神经元。谢谢

yt = [[1,0,0],[0,0,1]]

yp = [[0.9,0.2,0.2],[0.2,0.8,0.3]]

1 个答案:

答案 0 :(得分:0)

MSE or Mean Squared Error 只是预测和地面真相标签之间平方差的期望值,表示为

\text{MSE}(\hat{\theta}) = E\left[(\hat{\theta} - \theta)^2\right]

其中 theta 是地面真相标签,而 theta ^ hat 是预测标签

我不确定您确切指的是什么,例如理论问题或代码的一部分

作为 Python 实现

def mean_squared_error(A, B):    
     return np.square(np.subtract(A,B)).mean()

yt = [[1,0,0],[0,0,1]] 
yp = [[0.9, 0.2,0.2], [0.2,0.8,0.3]]

mse = mean_squared_error(yt, yp) 
print(mse)

这将给出0.21

的值

如果您正在使用像 TensorFlow 这样的DL框架之一,那么它们已经提供了function来计算张量之间的mse损耗

tf.losses.mean_squared_error

其中

tf.losses.mean_squared_error(
    labels,
    predictions,
    weights=1.0,
    scope=None,
    loss_collection=tf.GraphKeys.LOSSES,
    reduction=Reduction.SUM_BY_NONZERO_WEIGHTS
)
  

Args:

     

标签:地面实况输出张量,与“预测”的尺寸相同。

     

预测:预测的输出。

     

权重:可选的Tensor,其秩为0,或与标签具有相同的秩,并且必须可广播到标签(即所有尺寸)   必须为1,或与相应的损失维度相同)。

     

范围:用于计算损失的操作范围。

     

loss_collection :将向其中添加损失的集合。

     

减少额:适用于损失的减少额类型。

     

返回:

     

加权损失浮动张量。如果减少为NONE,则具有相同的   形状作为标签;否则,它是标量。