负对数似然(negative log-likelihood)

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]

其数学形式表示为:

假设X XX是观测结果序列,它的概率分布fx f_{x}f
x

依赖于参数θ \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)
假设X XX是离散随机变量,其概率质量函数p pp依赖于参数θ \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θ的似然函数,x xx为随机变量X XX的输出.

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

连续型概率分布(Continuous probability distributions)
假设X XX是连续概率分布的随机变量,其密度函数(density function)f ff依赖于参数θ \thetaθ,则有

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

(x)

最大似然估计(Maximum Likelihood Estimation,MLE)
假设每个观测结果x xx是独立同分布的,通过似然函数L(θ∣x) L(\theta|x)L(θ∣x)求使观测结果X XX发生的概率最大的参数θ \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).

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

由于是对概率分布求对数,概率p pp的值为0≤p≤1 0\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
---------------------
作者:不一样的雅兰酱
来源:CSDN
原文:https://blog.csdn.net/silver1225/article/details/88914652
版权声明:本文为博主原创文章,转载请附上博文链接!

### log-likelihood 的作用及意义 #### 一、log-likelihood 的定义及其在统计学中的意义 在统计学中,似然函数是一种关于模型参数的函数。它描述了在一组观察到的数据下,不同参数取值的可能性大小[^3]。具体来说,“似然性”表示某一特定参数值能够解释所观察到数据的概率有多大。 对于最大似然估计 (Maximum Likelihood Estimation, MLE),目标是最小化负对数似然Negative Log-Likelihood, NLL)。这是因为最大化原始似然函数可能会涉及复杂的乘法运算,而通过对数转换将其转化为加法规则后更易于处理。因此,在实践中通常会最小化负对数似然来间接实现最大化似然的目的。 #### 二、log-likelihood 越大越好的原因分析 1. **从理论角度理解** 当我们说希望 `log-likelihood` 值尽可能高时,实际上是在寻找那些最有可能生成当前训练集中样本分布的一组参数配置。较高的 `log-likelihood` 表明我们的假设模型更加贴近真实的潜在机制,即这些参数使得观测事件发生的可能性更大。 2. **数值稳定性考虑** 在实际应用过程中由于直接操作极大值可能导致溢出等问题,所以转而采用其自然对数形式——这就是所谓的“Logarithmic Transformation”。这种变换不仅简化了计算过程还提高了算法运行效率并增强了系统的鲁棒性和可靠性[^1]。 3. **优化目标设定** 很多时候我们会把问题建模成一个损失函数的形式来进行求解,其中就包含了上述提到过的交叉熵损失(Cross Entropy Loss)或者说是它的特殊版本之一—Binary CrossEntropy(BCE) 。而对于分类任务而言,BCE本质上就是基于Softmax激活后的输出再套上NLL公式得到的结果。由此可见两者之间存在着密切联系:都是为了找到那个能让预测结果接近实际情况的最佳权重组合! #### 三、代码示例展示如何利用Python库Sklearn计算multi-class log-loss 下面给出了一段简单的Python脚本用来演示前面讨论的内容是如何被应用于现实场景当中去解决具体的业务需求: ```python from sklearn.metrics import log_loss y_true = [0, 2, 1, 2] y_pred = [ [0.9 , 0.05, 0.05], [0.1 , 0.1 , 0.8 ], [0.2 , 0.7 , 0.1 ], [0.05, 0.1 , 0.85] ] loss = log_loss(y_true, y_pred) print(f"Multi-class Log-Likelihood Loss: {loss}") ``` 此程序片段展示了通过调用Scikit Learn提供的接口快速便捷地获取指定条件下对应的评估指标得分情况的方法论思路。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值