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

平方损失函数:

python 交叉熵损失函数实现_召回率

       平方损失函数较为容易理解,它直接测量机器学习模型的输出与实际结果之间的距离,

python 交叉熵损失函数实现_python 交叉熵损失函数实现_02

为学习模型的输出,

python 交叉熵损失函数实现_召回率_03

为实际结果。

交叉熵损失函数:

python 交叉熵损失函数实现_召回率_04

        交叉熵是用来评估当前训练得到的概率分布与真实分布的差异情况,减少交叉熵损失就是在提高模型的预测准确率。

python 交叉熵损失函数实现_损失函数_05

是真实分布的概率,

python 交叉熵损失函数实现_python 交叉熵损失函数实现_06

是模型通过数据计算出来的概率估计。

交叉熵损失函数只和分类正确的预测结果有关。而平方损失函数还和错误的分类有关,该损失函数除了让正确分类尽量变大,还会让错误分类都变得更加平均,但实际中后面的这个调整使没必要的。但是对于回归问题这样的考虑就显得重要了,因而回归问题上使用交叉熵损失函数并不适合。

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

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

python 交叉熵损失函数实现_人工智能_07

 

首先先引入真正例、假正例、假反例、真反例的概念。

预测结果



真实情况


TP(真正例)

FN(假反例)


FP(假正例)

TN(真反例)

精确率:

python 交叉熵损失函数实现_损失函数_08

python 交叉熵损失函数实现_深度学习_09

python 交叉熵损失函数实现_深度学习_10

召回率:

python 交叉熵损失函数实现_深度学习_11

python 交叉熵损失函数实现_深度学习_12

python 交叉熵损失函数实现_损失函数_13

F值:(综合评价指标):   F值是精确率和召回率的加权调和平均。

python 交叉熵损失函数实现_深度学习_14

当参数α=1时,就是最常见的F1。

python 交叉熵损失函数实现_损失函数_15

python 交叉熵损失函数实现_损失函数_16

python 交叉熵损失函数实现_python 交叉熵损失函数实现_17

宏平均:(每一类性能指标的算术平均):
宏查准率:

python 交叉熵损失函数实现_python 交叉熵损失函数实现_18

宏查全率:

python 交叉熵损失函数实现_深度学习_19

F1:

python 交叉熵损失函数实现_损失函数_20

微平均:

python 交叉熵损失函数实现_深度学习_21

python 交叉熵损失函数实现_损失函数_22

python 交叉熵损失函数实现_python 交叉熵损失函数实现_23

总结:学会了为什么平方损失函数不适用于分类问题 , 交叉熵损失函数不适用于回归问题和如何计算模型的精确率、召回率、F1值以及它们的宏平均和微平均,更多的学习使用csdn编辑功能,受益匪浅