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