NNDL 作业1:第二章课后题

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

答:

(1)平方损失函数经常用在预测标签y ,y为实数值的任务中,定义为:

MSE=\frac{1}{2n}\sum_{i=1}^{n}\left ( y-y^{'} \right )^{2}

从概率的角度看问题,线性回归中求解最优参数w中使用最大似然估计和最小二乘法的解相同,而此处的最大似然估计的是对于高斯分布而言的,既然求解参数效果相同,那么若使用平方损失函数就类似于假设了高斯先验,高斯分布不太适合用在分类问题中,那么平方损失函数自然不适用于分类问题。
在实际的分类问题中,在Softmax激活函数的作用下,若使用平方损失函数,离散型分布逼近于正态分布的损失会放大损失越大导数反而越小,学习速率则会很慢。

(2)交叉熵(Cross Entry)是用来评估当前训练得到的概率分布与真实分布的差异情况,减少交叉熵损失就是在提高模型的预测准确率。其离散函数形式

L=-\sum_{i=1}^{n}p(x_{i})log(q(x_{i}))
交叉熵的损失函数只和分类正确的预测结果有关系,而MSE的损失函数还和错误的分类有关系,该分类函数除了让正确的分类尽量变大,还会让错误的分类变得平均,但实际在分类问题中这个调整是没有必要的。但是对于回归问题来说,这样的考虑就显得很重要了。所以,回归问题熵使用交叉上并不合适。
习题 2-12 对于一个三分类问题 , 数据集的真实标签和模型的预测标签如下 :

真实标签 1 1 2 2 2 3 3 3 3
预测标签 1 2 2 2 3 3 3 1 2

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

答:

真实情况 预测为真 预测为假
真正例TP 假反例FN
假正例FP 真反例TN

精准率:

P=\frac{TP}{TP+FP}

代入数据可得:

P_{1}=\frac{1}{2}P_{2}=\frac{1}{2}P_{3}=\frac{2}{3}

召回率:

R=\frac{TP}{TP+FN}

代入数据可得:

 R_{1}=\frac{1}{2} ,R_{2}=\frac{2}{3} , R_{3}=\frac{1}{2}

F值:

F=\frac{(1+\beta ^{2})P*R}{\beta ^{2}\left ( P+R \right )}

\beta=1即得到F1,代入数据可得:

F1_{1}=\frac{1}{2} ,F1_{2}=\frac{4}{7}F1_{3}=\frac{4}{7}

 宏平均:

宏查准率: 

P_{macro}=\frac{1}{n}\sum_{i=1}^{n}P_{i}=\frac{1}{3}*(\frac{1}{2}+\frac{1}{2}+\frac{2}{3})=\frac{5}{9}

宏查全率: 

R_{macro}=\frac{1}{n}\sum_{i=1}^{n}R_{i}=\frac{1}{3}*(\frac{1}{2}+\frac{2}{3}+\frac{1}{2})=\frac{5}{9}
F1:

F1_{macro}=\frac{2*P_{macro}*R_{macro}}{P_{macro}+R_{macro}}=\frac{2*\frac{5}{9}*\frac{5}{9}}{\frac{5}{9}+\frac{5}{9}}=\frac{5}{9}

微平均:

P_{micro}=\frac{\sum _{i=1}^{n}TP_{i}}{\sum _{i=1}^{n}TP_{i}+\sum _{i=1}^{n}FP_{i}}=\frac{1+2+2}{1+2+2+1+2+1}=\frac{5}{9}

R_{micro}=\frac{\sum _{i=1}^{n}TP_{i}}{\sum _{i=1}^{n}TP_{i}+\sum _{i=1}^{n}FN_{i}}=\frac{1+2+2}{1+2+2+1+1+2}=\frac{5}{9}

F1_{micro}=\frac{2*P_{micro}*R_{micro}}{\beta ^{2}*P_{micro}*R_{micro}}=\frac{2*\frac{5}{9}*\frac{5}{9}}{\frac{5}{9}+\frac{5}{9}}=\frac{5}{9}

总结:学会了如何在csdn书写公式,虽然有点麻烦,但还是很有成就感的,并且学会了计算模型的精确率、召回率、F1值以及它们的宏平均和微平均

你可能感兴趣的:(深度学习,人工智能)