分类|深度学习(李宏毅)(二)
一、生成模型
假设有两个类别
二、计算某一类样本的高斯分布
根据已有的标签数据可以求得每一类均值和方差的估计,由于该类样本服从高斯分布,则其似然如下:
求解可得:
三、逻辑回归(判别模型)推导
这里的推导假设
后验概率
另外
其中
同理
因为前面假设
则
在使用生成模型时需要估计
四、逻辑回归的损失函数
1. 交叉熵损失函数
令
上式中
上式即为交叉熵损失函数:
接下来对参数进行求导:
所以
更新梯度
2. 均方误差损失函数
接下来对参数进行求导:
由于上式红色部分的存在会导致当
交叉熵与均方误差的图像如下:
3. 总结
关于为什么使用交叉熵而不使用均方误差,总结如下:
-
神经网络中如果预测值与实际值的误差越大,那么在反向传播训练的过程中,各种参数调整的幅度就要更大,从而使训练更快收敛,如果预测值与实际值的误差小,各种参数调整的幅度就要小,从而减少震荡。
-
使用平方误差损失函数,误差增大参数的梯度会增大,但是当误差很大时,参数的梯度就会又减小了。
-
使用交叉熵损失是函数,误差越大参数的梯度也越大,能够快速收敛。
五、判别模型 vs 生成模型
判别模型会直接估计
生成模型会估计
一般情况下两种
生成模型的优点:
-
因为生成模型有一个先验的假设,所以需要更少的训练数据,而且对噪声有更高的鲁棒性。
-
先验分布和类别依赖的概率分布可以从不同的来源估计。