NNDL 作业1:第二章课后题

 习题 2-1 分析为什么平方损失函数不适用于分类问题 , 交叉熵损失函数不适用于回归问题.

平方损失函数的定义是L(x)=\frac{1}{N}\sum_{i=1}^{N}(y_{i}-t_{i})^2机器学习模型的输出为y_{i},实际的结果为t_{i}

从这个定义来看平方损失函数对每一个输出结果都非常看重。而分类问题中我们只关心模型对数据的真实类别的预测概率而不关注对其他类别的预测概率。所以平方损失函数不适用于分类问题。

交叉熵损失函数的定义是H(p,q)=-\sum_{i=1}^{N}p(x_{i})log(q(x_{i}))

在机器学习训练网络时,输入数据与标签常常已经确定,那么真实概率分布P ( x ) 也就确定下来了,所以信息熵在这里就是一个常量。由于KL散度的值表示真实概率分布P ( x ) 与预测概率分布Q ( x ) 之间的差异,值越小表示预测的结果越好,所以需要最小化KL散度,而交叉熵等于KL散度加上一个常量(信息熵),且公式相比KL散度更加容易计算,所以在机器学习中常常使用交叉熵损失函数来计算loss就行了。所以交叉熵损失函数适用于分类而不是回归问题。


习题 2-12 对于一个三分类问题 , 数据集的真实标签和模型的预测标签如下 :

分别计算模型的精确率、召回率、F1值以及它们的宏平均和微平均.  

格式要求:使用公式编辑器,在博客上正确书写公式。

相对于二分类的任务体来说,多分类任务就是考虑某个类别的时候,其余的类别均被视为负类。如此,在多分类场景中,可以得到每个类别的精确率和召回率的值。

精确率:也叫精度或查准率,类别c的查准率是所有预测为类别c的样本中预测正确的比例。

P_{1}=\frac{TP_{1}}{TP_{1}+FP_{1}}=\frac{1}{1+1}=\frac{1}{2}

P_{2}=\frac{TP_{2}}{TP_{2}+FP_{2}}=\frac{2}{2+2}=\frac{1}{2}

P_{3}=\frac{TP_{3}}{TP_{3}+FP_{3}}=\frac{2}{2+1}=\frac{2}{3}

召回率:也叫查全率,类别c的查全率是所有真实标签为类别c的样本中预测正确的比例。

R_{1}=\frac{TP_{1}}{TP_{1}+FN_{1}}=\frac{1}{1+1}=\frac{1}{2}

R_{2}=\frac{TP_{2}}{TP_{2}+FN_{2}}=\frac{2}{2+1}=\frac{2}{3}

R_{3}=\frac{TP_{3}}{TP_{3}+FN_{3}}=\frac{2}{2+2}=\frac{1}{2}

F值:精确率和召回率的调和平均。

F_{c}=\frac{(1+\beta ^{2})*P_{c}R_{c}}{\beta^{2}*P_{c}+R_{c}}其中β用于平衡精确率和召回率的重要性,一般取值为1.β=1时的F值被称为F1值。

F_{1}=\frac{1}{2}

F_{2}=\frac{4}{7}

F_{3}=\frac{4}{7}

宏平均:每一类的性能指标的算术平均值。

P_{macro}=\frac{1}{C}\sum_{c=1}^{C}P_{c}=\frac{1}{3}(\frac{1}{2}+\frac{1}{2}+\frac{2}{3})=\frac{5}{9}

R_{macro}=\frac{1}{C}\sum_{c=1}^{C}R_{c}=\frac{1}{3}(\frac{1}{2}+\frac{2}{3}+\frac{1}{2})=\frac{5}{9}

F1_{macro}=\frac{2*P_{macro}*R_{macro}}{P_{macro}+R_{macro}}=\frac{1}{C}\sum_{c=1}^{C}F1_{c}=\frac{1}{3}(\frac{1}{2}+\frac{4}{7}+\frac{4}{7})=\frac{23}{72}

微平均:每一个样本的性能指标的算术平均值。

P_{micro}=\frac{\sum_{i=1}^{c}TP_{c}}{\sum_{i=1}^{c}TP_{c}+\sum_{i=1}^{c}FP_{i}}=\frac{1+2+2}{(1+2+2)+(1+1+1)}=\frac{5}{8}

P_{micro}=\frac{\sum_{i=1}^{c}TP_{c}}{\sum_{i=1}^{c}TP_{c}+\sum_{i=1}^{c}FN_{i}}=\frac{1+2+2}{(1+2+2)+(1+1+2)}=\frac{5}{9}

F_{micro}=\frac{2\times P_{micro}\times R_{micro}}{P_{micro}+R_{micro}}=\frac{2*\frac{5}{8}*\frac{5}{9}}{\frac{5}{8}+\frac{5}{9}}=\frac{10}{17}

你可能感兴趣的:(神经网络与深度学习,深度学习,人工智能)