negative log likelihood

文章目录

  • negative log likelihood
    • 似然函数(likelihood function)
      • Overview
      • Definition
        • 离散型概率分布(Discrete probability distributions)
        • 连续型概率分布(Continuous probability distributions)
    • 最大似然估计(Maximum Likelihood Estimation,MLE)
    • 对数似然(log likelihood)
    • 负对数似然(negative log-likelihood)
      • Reference

似然函数(likelihood function)

Overview

在机器学习中,似然函数是一种关于模型中参数的函数。“似然性(likelihood)”和"概率(probability)"词意相似,但在统计学中它们有着完全不同的含义:概率用于在已知参数的情况下,预测接下来的观测结果;似然性用于根据一些观测结果,估计给定模型的参数可能值。

Probability is used to describe the plausibility of some data, given a value for the parameter. Likelihood is used to describe the plausibility of a value for the parameter, given some data.

​ —from wikipedia[3]^[3][3]

其数学形式表示为:

假设XXX是观测结果序列,它的概率分布fxf_{x}fx​依赖于参数θ\thetaθ,则似然函数表示为

​ L(θ∣x)=fθ(x)=Pθ(X=x)L(\theta|x)=f_{\theta}(x)=P_{\theta}(X=x)L(θ∣x)=fθ​(x)=Pθ​(X=x)

Definition

似然函数针对**离散型概率分布(Discrete probability distributions)连续型概率分布(Continuous probability distributions)**的定义通常不同.

离散型概率分布(Discrete probability distributions)

假设XXX是离散随机变量,其概率质量函数ppp依赖于参数θ\thetaθ,则有

​ L(θ∣x)=pθ(x)=Pθ(X=x)L(\theta|x)=p_{\theta}(x)=P_{\theta}(X=x)L(θ∣x)=pθ​(x)=Pθ​(X=x)

L(θ∣x)L(\theta|x)L(θ∣x)为参数θ\thetaθ的似然函数,xxx为随机变量XXX的输出.

Sometimes the probability of "the value of for the parameter value " is written as P(X = x | θ) or P(X = x; θ).

连续型概率分布(Continuous probability distributions)

假设XXX是连续概率分布的随机变量,其密度函数(density function)fff依赖于参数θ\thetaθ,则有

L(θ∣x)=fθ(x)L(\theta|x)=f_{\theta}(x)L(θ∣x)=fθ​(x)

最大似然估计(Maximum Likelihood Estimation,MLE)

假设每个观测结果xxx是独立同分布的,通过似然函数L(θ∣x)L(\theta|x)L(θ∣x)求使观测结果XXX发生的概率最大的参数θ\thetaθ,即argmaxθf(X;θ)argmax_{\theta}f(X;\theta)argmaxθ​f(X;θ) 。

在“模型已定,参数未知”的情况下,使用最大似然估计算法学习参数是比较普遍的。

对数似然(log likelihood)

由于对数函数具有单调递增的特点,对数函数和似然函数具有同一个最大值点。取对数是为了方便计算极大似然估计,MLE中直接求导比价困难,通常先取对数再求导,找到极值点。

负对数似然(negative log-likelihood)

实践中,softmax函数通常和负对数似然(negative log-likelihood,NLL)一起使用,这个损失函数非常有趣,如果我们将其与softmax的行为相关联起来一起理解.首先,让我们写下我们的损失函数:

L(y)=−log(y)L(y)=-log(y)L(y)=−log(y)

回想一下,当我们训练一个模型时,我们渴望能够找到使得损失函数最小的一组参数(在一个神经网络中,参数指权重weights和偏移biases).

对数函数如下图红线所示:

由于是对概率分布求对数,概率ppp的值为0≤p≤10\leq{p}\leq10≤p≤1,取对数后为红色线条在[0,1][0,1][0,1]区间中的部分,再对其取负数,得到负对数似然函数如下图所示:

我们希望得到的概率越大越好,因此概率越接近于1,则函数整体值越接近于0,即使得损失函数取到最小值。

最大似然估计的一般步骤如下:
(1) 写出似然函数;
(2) 对似然函数取对数,得到对数似然函数;
(3) 求对数似然函数的关于参数组的偏导数,并令其为0,得到似然方程组;
(4) 解似然方程组,得到参数组的值.

Reference

[1]王海良,李卓恒,林旭鸣.智能问答与深度学习[M].北京:电子工业出版社,2019:19-20.

[2]Lj Miranda.Understanding softmax and the negative log-likelihood.2017.

​ [link]https://ljvmiranda921.github.io/notebook/2017/08/13/softmax-and-the-negative-log-likelihood/

[3]wikipedia-likelihood function

​ [link]https://en.wikipedia.org/wiki/Likelihood_function#Log-likelihood

负对数似然(negative log-likelihood)相关推荐

  1. 负对数似然(negative log-likelihood, NLL)

    目录 1. 似然 2. 最大似然估计 3. 对数似然 4. 负对数似然 5. 补充说明 Reference 1. 似然 似然与概率不同.概率是指一个事件发生的可能性,描述的是对象是事件:似然是指影响事 ...

  2. 损失函数-负对数似然和交叉熵(Pytorch中的应用)

    文章目录 1.负对数似然损失函数 1.1.似然 1.2.似然函数 1.3.极大似然估计 1.4.对数似然 1.5.负对数似然 1.6.pytorch中的应用 2.交叉熵损失函数 2.1.信息量 2.2 ...

  3. 损失函数——负对数似然

    阅读本文可以了解如下内容: 似然 似然估计 对数似然 负对数似然 1. 似然 在开始之前需要区分一个知识:似然(likelihood)和概率(probability).概率是一个事件发生的可能性,而似 ...

  4. 极大似然估计(Maximum Likelihood Estimattion Theory)是什么?极大似然估计的本质思想是什么?为什么极大似然可以作为损失函数使用?负对数似然损失函数(Negative

    极大似然估计(Maximum Likelihood Estimattion Theory)是什么?极大似然估计的本质思想是什么?为什么极大似然可以作为损失函数使用?负对数似然损失函数(Negative ...

  5. 交叉熵损失函数、修正Huber损失、极大似然估计、负对数似然、似然与交叉熵、KL散度

    交叉熵损失函数.修正Huber损失.极大似然估计.负对数似然.似然与交叉熵.KL散度 目录

  6. 最大似然估计log likelihood

    log likelihood--对数似然函数值 在参数估计中有一类方法叫做"最大似然估计",因为涉及到的估计函数往往是是指数型族,取对数后不影响它的单调性但会让计算过程变得简单,所 ...

  7. 负对数似然 交叉熵 mse mae的区别

    交叉熵的介绍见https://blog.csdn.net/jzwei023/article/details/115496906?spm=1001.2014.3001.5501 交叉熵 vs 二阶Los ...

  8. 负对数似然函数的推导

    似然函数的理解 概率用于在已知一些参数的情况下,预测接下来的观测所得到的结果.参数->结果 似然性则是用于在已知某些观测所得到的结果时,对有关事物的性质的参数进行估计.结果->参数 举个例 ...

  9. 深入理解Pytorch负对数似然函数(torch.nn.NLLLoss)和交叉熵损失函数(torch.nn.CrossEntropyLoss)

    在看Pytorch的交叉熵损失函数torch.nn.CrossEntropyLoss官方文档介绍中,给出的表达式如下.不免有点疑惑为何交叉熵损失的表达式是这个样子的 loss ⁡ ( y , clas ...

最新文章

  1. 关于随机验证码的一些小见解。
  2. 使用ffmpeg合并视频文件的三种方法
  3. LinkedList 方法知识点
  4. linux中特殊符号分割,Shell_Linux Shell 中实现字符串切割的几种方法
  5. mysql lamp 配置命令总结
  6. 3.1.3、控制结构
  7. W3Cschool导航条练习
  8. 使用PG处理地图数据偏移问题
  9. MIKE与SMS网格的区别——个人感受
  10. phpQuery乱码解决经验分享
  11. Android 稳定性面试一文通
  12. VS2022解决方案及项目重命名
  13. Java对象的生命周期与垃圾回收以及四种引用
  14. ISM频段ZigBee传输距离的估算
  15. android studio 魅族真机 flyme6 下logcat 打印自定义日志
  16. AM4379 EDMA相关总结
  17. glob.glob()函数
  18. 人工客服 计算机英语怎么说,人工服务用英文怎么说? 电话上的。。。谢谢
  19. 时尚星球_时尚和科技属于一起吗?
  20. 分数问题的各种语言描述

热门文章

  1. python运维系统开发_Python系统运维开发实战
  2. tp6字符串解析为HTML,6.字符串 · ThinkPHP5从入门到努力之入门实践 · 看云
  3. Using a password on the command line interface can be insecure.
  4. oracle查询结果加上总计
  5. codeforces1375G Tree Modification
  6. 【专题5: 硬件设计】 之 【9.案例一:门控开关,制作BOM表和成本核算】
  7. Java多功能计算器小程序
  8. 记录Mybatis报Mapped Statements collection already contains value for 的错误的原因
  9. 巴西龟饲养日志----黑壳虾吃的很欢实
  10. 树莓派挂载和卸载U盘或移动硬盘