从极大似然估计的角度理解深度学习中loss函数

为了理解这一概念,首先回顾下最大似然估计的概念:
最大似然估计常用于利用已知的样本结果,反推最有可能导致这一结果产生的参数值,往往模型结果已经确定,用于反推模型中的参数.即在参数空间中选择最有可能导致样本结果发生的参数.因为结果已知,则某一参数使得结果产生的概率最大,则该参数为最优参数.
似然函数:\[ l(\theta) = p(x_1,x_2,...,x_N|\theta) = \prod_{i=1}^{N}{p(x_i|\theta)}\]
为了便于分析和计算,常使用对数似然函数:\[ H(\theta) = ln[l(\theta)]\]

1. logistics regression中常用的loss function:

在logistic regression中常定义的loss function为:\[ l(w) = -(ylog\hat y+(1-y)log(1-\hat y))\]
为什么选择这个函数作为loss function? 一个原因是相比于误差平方和函数的非凸性,交叉熵函数是凸的,因此可以通过梯度下降法求得全局最优点,详细原理请参考凸优化相关理论.
此处重点介绍另一个原因,即从最大似然估计得的角度来理解loss function的选择,Andrew Ng 也是从这个角度进行解释的.对于logsitic regression问题,我们实际上做出了如下假设,即训练样本(x,y)服从以下分布:
\[ P(x,y|\theta) = \begin{cases}\sigma(z),&y=1 \\ 1-\sigma(z),&y=0\end{cases}\]
其中,\(z = w^Tx+b\),意思是,在参数\(\theta\)下,训练样本(x,y)出现的概率为\(P(x,y|\theta)\).

上面的概率分布函数也可以写为整体的形式:
\[p(x,y|\theta) = \sigma(z)^y(1-\sigma(z))^{1-y}\]

对于极大似然估计而言,我们的目的就是在参数空间中,寻找使得\(p(x,y|\theta)\)取得最大的w和b,因为因为训练样本(x,y)已经经过采样得到了,所以使得他们出现概率最大(越接近1)的参数就是最优的参数.

  • 对于单个样本\((x_i,y_i)\),其对应的对数似然函数为\(ln[p(x_i,y_i|\theta)]= y_iln(\sigma(z_i))+(1-y_i)ln(1-\sigma(z_i))\)(即在参数\(\theta(w,b)\)下,\((x_i,y_i)\)出现的概率),其中,\(\sigma(z_i)=w^Tx_i+b\).
    因为cost function 一般向小的方向优化,所以在似然函数前加上负号,就变为loss function
  • 对于整个样本集来说,对应的似然函数为\[ln(\prod_{i=1}^{N} p(x_i,y_i|\theta)) = \sum_{i=1}^N{y_iln(\sigma(z_i))+(1-y_i)ln(1-\sigma(z_i))}\]

2. softmax regression中常用的loss function:

softmax regression中常使用如下loss函数:
\[ l(w) = -\sum_{i=1}^{C}y_ilog\hat y_i\]
此处,C指的是样本y的维度(分类的数目),\(y_i\)指的是样本标签第i个分量,\(\hat y_i\)同义.
接下来,同样从最大似然估计的角度进行理解.对于softmax regression,我们实际上也做出了假设,即训练样本(x,y)服从以下分布:\[P(x,y|\theta) = \hat y_l = \sum_{i=1}^{C}y_i\hat y_i\],其中l是样本标签y中唯一为1的序号

  • 对于单个训练样本,其对数似然函数为\(ln[p(x_i,y_i|\theta)] = ln(\sum_{i=1}^{C}y_i\hat y_i)\),可以进一步写为\(ln[p(x_i,y_i|\theta)] = \sum_{i=1}^{C}y_iln(\hat y_i)\),因为y中只有唯一的一个维度等于1,其余全为0,通过简单的推理就可以得到化简后的结果.取负号后,得到单样本的loss函数.
  • 对于整个训练样本集而言,其对数似然函数为\[ln(\prod_{i=1}^{N} p(x_i,y_i|\theta)) =\sum_{j=1}^{m}\sum_{i=1}^{C}y_i^{(j)}ln(\hat y_i^{(j)})\]
    其中,\(y_i^{(j)}\)指的是训练样本集中第j个训练样本标签的第i个维度的值,\(\hat y_i^{(j)}\)同理.取负号求平均后,得到整个训练样本集的coss函数.

最新文章

  1. Android Weekly Notes Issue #232
  2. 如何应对ISP乱插广告(案例分析)
  3. Javascript运用函数计算正方形的面积
  4. 搭建Hadoop2.5.2+Eclipse开发调试环境
  5. webpack的几个使用方法
  6. 关于ucosII系统的软件系统裁剪性
  7. hdu 1284完全背包
  8. redis3.0 集群实战2 - 集群功能实战
  9. 【php】使用gdb调试php程序
  10. linux 操作
  11. zoj 3351 Bloodsucker(概率 dp)
  12. How to create XML validator(验证器;验证程序) from XML schema
  13. js关闭 window.open 打开的页面
  14. Joomla3.1.1在64位win7下安装
  15. 为什么要html语义化?
  16. 一个人的旅行HDU 2066 floyd
  17. YII 多表联查 纵表
  18. 20165226 学习基础和C语言基础调查
  19. 让你分分钟理解 JavaScript 闭包
  20. zoj 3195(LCA加强版)

热门文章

  1. APM技术原理
  2. 第5章分布式系统模式 使用服务器激活对象通过 .NET Remoting 实现 Broker
  3. SQL Server将数据导出到SQL脚本文件
  4. mysql 主从错误情况与原因
  5. 查看linux机器cpu、内存环境信息
  6. 03--实例讲解虚拟机3种网络模式(桥接、nat、Host-only)
  7. (转)基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
  8. node——express框架
  9. 网络教程(10)回顾ARP和ping数据包
  10. 使用Ansible安装部署nginx+php+mysql之安装mysql(3)