二维正态分布的最大似然估计_交叉熵与最大似然估计

本文介绍了交叉熵损失函数在神经网络中的作用,旨在使网络输出代表类别概率。讨论了二维正态分布的最大似然估计,通过构建似然函数求解最优参数。同时,文章简要提到了神经网络的层级结构和最大似然估计的基本思想。
摘要由CSDN通过智能技术生成

先来看看什么是交叉熵损失函数。考虑在一个含有

个类别的图像分类数据集上面训练神经网络,使用常规的batch SGD训练,记一次迭代(iter)后神经网络的输出向量为
,则
的维度为
的维度为
,代表第i张图片分别属于各类的置信度分;真实的训练标签
向量可以表示为
,其中
范围的整数,代表第i张图片的真实类别。

我们希望神经网络的输出向量能够代表图片属于各类别的概率,但此时的

显然有正有负,所以需要先进行一步
softmax操作,使
的各个分量都变成正的(其实就相当于做了一次指数归一化):

经过softmax后,交叉熵损失可以表示为如下公式,其中第二个等号用到了python语法的特性,可以暂时不管:


上面的定义可能有点懵,下面我再详细解释一下。我们现在来看看
到底是个什么东西。


一层一层拆开来看,首先是

,这个显然是第i张图片的真实标签。那么
又是什么?
是一个长度为
的向量,
代表神经网络认为将第
张图片属于第
类的概率,再进一步,
就是
神经网络将第i张图片分类正确的概率了。此时还是不明白
究竟是什么。


现在换一种方式,记

,那么根据上面的讨论,
代表
这张图片分类正确的概率。
就代表了神经网络将一个批次上的所有batchsize张图片全部分类正确的概率, 而我们训练神经网络的目的就是为了使这个式子的结果接近1!


回想一下极大似然估计在做什么事情:求出一组参数

使得似然函数最大。现在神经网络的训练就是在做这件事,只不过有一点不同的是,神经网络使用迭代法(如SGD,Adam)求解似然函数极值,而概率论课本中通常直接求导得极值点。

构造似然函数为

,再将
代入,最后得到了上面的公式:


至于为什么少了个负号,这是由于神经网络训练中一般规定寻找最小值。因此最后 对似然函数取负号后就得到了交叉熵损失函数

欢迎访问我的博客https://07hyx06.github.io/cv_content.html 目前正在搭建,功能还在完善:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值