首页 > 其他分享 >应用数学与机器学习基础 - 最大似然估计篇

应用数学与机器学习基础 - 最大似然估计篇

时间:2024-06-23 11:59:16浏览次数:21  
标签:似然 机器 log text boldsymbol 数学 theta data

序言

最大拟然估计(Maximum Likelihood Estimation, MLE)是统计学和机器学习领域中的一种重要参数估计方法。MLE的核心思想是基于给定的数据,找到一组参数值,使得这组参数生成观测数据的概率(即似然函数)达到最大。这样做的原因在于,如果某组参数能够使得观测数据出现的概率最大,那么这组参数就最有可能是真实的模型参数。

最大拟然估计

  • 我们已经看过常用估计的定义,并分析了它们的性质。但是这些估计是从哪里来的呢?并非猜测某些函数可能是好的估计,然后分析其偏差和方差,我们希望有些准则可以让我们从不同模型中得到特定函数作为好的估计。

  • 最常用的准则是最大似然估计

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

    • 考虑一组含有 m m m个样本的数据集 X = { x ( 1 ) , … , x ( m ) } \mathbb{X}=\{\boldsymbol{x}^{(1)},\dots,\boldsymbol{x}^{(m)}\} X={x(1),…,x(m)},独立地由真正但未知的数据生成分布 p d a t a ( x ) p_{data}(\bold{x}) pdata​(x)生成。
    • 让 p m o d e l ( x ; θ ) p_{model}(\bold{x};\theta) pmodel​(x;θ)是一簇由 θ \theta θ确定在相同空间上的概率分布。换言之, p m o d e l ( x ; θ ) p_{model}(\bold{x};\theta) pmodel​(x;θ)将任意输入 x \boldsymbol{x} x映射到实数去估计真实概率分布 p d a t a ( x ) p_{data}(\boldsymbol{x}) pdata​(x)。
      • θ \theta θ的最大后验估计被定义为:
        { θ ML = arg max ⁡ θ p model ( X ; θ ) = arg max ⁡ θ ∏ i = 1 m p model ( x ( i ) ; θ ) \begin{cases}\begin{array}{l}\theta_{\text{ML}}=\argmax\limits_{\theta} p_{\text{model}}(\mathbb{X};\theta)\\\\\qquad=\argmax\limits_{\theta}\prod\limits_{i=1}^m p_{\text{model}}(\boldsymbol{x^{(i)}};\theta)\end{array}\end{cases} ⎩ ⎧​θML​=θargmax​pmodel​(X;θ)=θargmax​i=1∏m​pmodel​(x(i);θ)​​
      • 很多概率的乘积会因很多原因不方便。例如:很容易出现数值下溢。为了得到一个更方便但是等价的优化问题,我们观察到似然对数不会改变其 arg max ⁡ \argmax argmax,但是便利地将乘积转成了和:
        θ ML = arg max ⁡ θ ∑ i = 1 m log ⁡ p model ( x ( i ) ; θ ) \theta_{\text{ML}}=\argmax\limits_{\theta} \sum\limits_{i=1}^m \log p_{\text{model}}(\boldsymbol{x}^{(i)};\theta) θML​=θargmax​i=1∑m​logpmodel​(x(i);θ)
      • 因为当我们重新缩放损失函数时 arg max ⁡ \argmax argmax不会改变,我们可以除以 m m m得到和训练数据经验分布 p ^ data \hat{p}_{\text{data}} p^​data​相关额期望作为准则:
        θ ML = arg max ⁡ θ E x ∼ p ^ data log ⁡ p model ( x ( i ) ; θ ) \theta_{\text{ML}}=\argmax\limits_{\theta} \mathbb{E}_{\text{x} \sim \hat{p}_{\text{data}}} \log p_{\text{model}}(\boldsymbol{x}^{(i)};\theta) θML​=θargmax​Ex∼p^​data​​logpmodel​(x(i);θ)
      • 解释最大似然估计的一种观点是将它看作最小化训练集上的经验分布 p ^ data \hat{p}_{\text{data}} p^​data​和模型分布之间的差异,两者之间的差异程度可以通过KL散度来度量。
        • KL散度定义为:
          D KL ( p model ∥ p data ) = E x ∼ p ^ data [ log ⁡ p ^ data ( x ) − log ⁡ p data ( x ) ] D_{\text{KL}}(p_{\text{model}} \parallel p_{\text{data}})=\mathbb{E}_{\text{x} \sim \hat{p}_{\text{data}}} \left[\log\hat{p}_{\text{data}}(\boldsymbol{x})-\log p_{\text{data}}(\boldsymbol{x})\right] DKL​(pmodel​∥pdata​)=Ex∼p^​data​​[logp^​data​(x)−logpdata​(x)]
        • 说明:
          • 左边一项仅涉及到数据生成过程,和模型无关。这意味着当我们训练模型最小化KL散度时,我们只需要最小化: − E x ∼ p ^ data [ log ⁡ p data ( x ) ] - \mathbb{E}_{\text{x} \sim \hat{p}_{\text{data}}} \left[\log p_{\text{data}}(\boldsymbol{x})\right] −Ex∼p^​data​​[logpdata​(x)]
      • 最小化KL散度其实就是在最小化分布之间的交叉熵
      • 注意:许多作者使用术语“交叉熵”特定表示伯努利分布softmax分布的负对数似然,但那是用词不当。
      • 任何一个由负对数似然组成的损失都是定义在训练集上的经验分布和定义在模型上的概率分布之间的熵。例如:均方误差经验分布高斯模型之间的交叉熵。
      • 我们可以将最大似然看作是使模型分布尽可能和经验分布 p ^ data \hat{p}_{\text{data}} p^​data​相匹配的尝试。理想情况下,我们希望匹配真实的数据生成分布 p data p_{\text{data}} pdata​,但我们没法直接知道这个分布。
      • 虽然最优 θ \theta θ在最大化似然或是最小化KL散度时是相同的,但是目标函数值是不一样的。在软件中,我们通常将两者都称为最小化损失函数。因此最大化似然变成了最小化负对数似然(NLL),或者等价的是最小化交叉熵。
      • 将最大化似然看作最小化KL散度的视角在这个情况下是有帮助的,因为已知KL散度最小值是零。当 x \boldsymbol{x} x取实数时,负对数似然是负值。
  • 条件对数似然和均方误差(Conditional Log-Likelihood and Mean Squared Error)

    • 最大似然估计很容易扩展到估计条件概率 P ( y ∣ x ; θ ) P(\bold{y}\mid \bold{x};\theta) P(y∣x;θ),即给定 x \bold{x} x时,预测 y \bold{y} y。
    • 实际上,这是最常见的情况,因为这构成了大多数监督学习的基础。
    • 如果 X \boldsymbol{X} X表示所有的输入, Y \boldsymbol{Y} Y表示我们观测到的目标,那么条件最大似然估计: θ ML = arg max ⁡ θ P ( y ∣ X ; θ ) \theta_{\text{ML}}=\argmax\limits_{\theta} P(\bold{y} \mid \bold{X};\theta) θML​=θargmax​P(y∣X;θ)
    • 如果假设样本是独立同分布的,那么这可以分解成: θ ML = arg max ⁡ θ ∑ i = 1 m log ⁡ P ( y ( i ) ∣ x ( i ) ; θ ) \theta_{\text{ML}}=\argmax\limits_{\theta} \sum\limits_{i=1}^m \log P(\boldsymbol{y}^{(i)} \mid \boldsymbol{x}^{(i)};\theta) θML​=θargmax​i=1∑m​logP(y(i)∣x(i);θ)
    • 实例:线性回归作为最大似然(Linear Regression as Maximum Likelihood)
      • 线性回归,可以被看做是最大似然过程。
      • 之前,我们将线性回归作为学习输入 x \boldsymbol{x} x映射到输出 y ^ \hat{y} y^​的算法。从 x \boldsymbol{x} x到 y ^ \hat{y} y^​的映射选自最小化均方误差。
      • 现在,我们以最大似然估计的角度重新审视线性回归。不只是得到一个单独的预测 y ^ \hat{y} y^​,我们希望模型能够得到条件概率 p ( y ∣ x ) p(y \mid \boldsymbol{x}) p(y∣x)。
        • 想象下有一个无限大的训练集,我们可能会观测到几个训练样本有相同的输入 x \boldsymbol{x} x但是不同的 y y y。
        • 现在学习算法的目标是拟合分布 p ( y ∣ x ) p(y \mid \boldsymbol{x}) p(y∣x)到和 x \boldsymbol{x} x相匹配的不同的 y y y。
        • 为了得到我们之前推导出的相同的线性回归算法,我们定义: p ( y ∣ x ) = N ( y ; y ^ ( x ; w ) , σ 2 ) p(y \mid \boldsymbol{x})=\mathcal{N}(y;\hat{y}(\boldsymbol{x};\boldsymbol{w}),\sigma^2) p(y∣x)=N(y;y^​(x;w),σ2)
        • 函数 y ^ ( x ; w ) \hat{y}(\boldsymbol{x};\boldsymbol{w}) y^​(x;w)预测高斯的均值。
      • 在这个例子中,假设方差是用户固定的某个常量 σ 2 \sigma^2 σ2。这种函数形式 p ( y ∣ x ) p(y \mid \boldsymbol{x}) p(y∣x)会使得最大似然估计得出之前得到的相同学习算法。
      • 由于假设样本是独立同分布的,条件对数似然,如下:
        ∑ i = 1 m log ⁡ p ( y ( i ) ∣ x ( i ) ; θ ) = − m log ⁡ σ − m 2 log ⁡ ( 2 π ) − ∑ i = 1 m ∥ y ^ ( i ) − y ( i ) ∥ 2 2 σ 2 \sum\limits_{i=1}^m \log p(\boldsymbol{y}^{(i)} \mid \boldsymbol{x}^{(i)};\theta) = -m \log\sigma - \displaystyle{\frac{m}{2}}\log(2\pi) - \sum\limits_{i=1}^m \frac{\Vert \hat{y}^{(i)}-y^{(i)} \Vert^2}{2\sigma^2} i=1∑m​logp(y(i)∣x(i);θ)=−mlogσ−2m​log(2π)−i=1∑m​2σ2∥y^​(i)−y(i)∥2​
        • 其中 y ^ ( i ) \hat{y}^{(i)} y^​(i)是线性回归在第 i i i个输入 x ( i ) \boldsymbol{x}^{(i)} x(i)上的输出。
        • m m m是训练样本的数目。
        • 对比于均方误差的对数似然: MSE train = 1 m ∑ i = 1 m ∥ y ^ ( i ) − y ( i ) ∥ 2 \text{MSE}_{\text{train}}=\displaystyle{\frac{1}{m}}\sum\limits_{i=1}^m \Vert \hat{y}^{(i)}-y^{(i)} \Vert^2 MSEtrain​=m1​i=1∑m​∥y^​(i)−y(i)∥2
        • 我们立刻可以看出最大化关于 w \boldsymbol{w} w的对数似然和最小化均方误差会得到相同的参数估计 w \boldsymbol{w} w。
        • 但是对于相同的最优 w \boldsymbol{w} w,这两个准则有着不同的值。
        • 这验证了 MSE \text{MSE} MSE可以用于最大似然估计
  • 最大似然的性质(Properties of Maximum Likelihood)

    • 最大似然估计最吸引人的地方在于,它被证明是当样本数目 m → ∞ m \to \infty m→∞时,就收敛率而言最好的渐近估计。
    • 在合适的条件下,最大似然估计具有一致性,意味着训练样本数目趋向于无限大时,参数的最大似然估计收敛到参数的真实值。这些条件是:
      • 真实分布 p data p_{\text{data}} pdata​必须在模型簇 p model ( . ; θ ) p_{\text{model}}(.;\theta) pmodel​(.;θ)中。否则,没有估计可以表示 p data p_{\text{data}} pdata​。
      • 真实分布 p data p_{\text{data}} pdata​必须刚好对应一个 θ \theta θ值。否则,最大似然学习恢复出真实分布 p data p_{\text{data}} pdata​后,也不能决定数据生成过程使用哪个 θ \theta θ。
    • 除了最大似然估计,还有其他的归纳准则,其中许多共享一致估计的性质。然而,一致估计的统计效率(statistical efficiency)可能区别很大。某些一致估计可能会在固定数目的样本上获得一个较低的泛化误差,或者等价地,可能只需要较少的样本就能达到一个固定程度的泛化误差。
    • 通常,统计效率研究于有参情况(parametric case)。例如:线性回归。
    • 一种度量我们和真实参数相差多少的方法是计算均方误差期望,即计算 m m m个从数据生成分布中出来的训练样本上的估计参数和真实参数之间差值的平方。
    • 因为一致性和统计效率这些原因,最大似然通常是机器学习中的首选估计。当样本数目小到会过拟合时,正则化策略如权重衰减可用于获得训练数据有限时方差较小的最大似然有偏版本

总结

首先,MLE作为一种参数估计方法,其基于观测数据最大化似然函数的思想在实际应用中具有广泛的适用性。无论是线性模型、非线性模型,还是离散数据、连续数据,MLE都可以提供有效的参数估计方法。

其次,MLE在实际应用中的一些挑战和限制。例如,当似然函数存在多个局部最大值时,MLE可能陷入局部最优解而非全局最优解。此外,当数据不满足MLE的假设条件(如独立性、正态性等)时,MLE的估计结果可能会受到较大影响。

最后,随着大数据和机器学习技术的不断发展,MLE在处理高维数据、非结构化数据等方面具有更大的潜力。同时,与其他参数估计方法的结合和融合也将成为MLE未来发展的重要方向。

本文涉及知识点查阅往期内容

标签:似然,机器,log,text,boldsymbol,数学,theta,data
From: https://blog.csdn.net/benny_zhou2004/article/details/139825877

相关文章

  • 机器学习Day4
    决策树1.概念决策树是一种用于解决分类问题的算法,希望通过从给定数据训练一个模型用来对新示例进行分类决策树顾名思义是树结构,其结点可以划分为三类:根结点、内部结点、叶结点根节点:一般是区分度最高(基尼指数最小)的属性(纯度最高)内部结点:是父结点下基尼系数最小的结点......
  • 【昆虫识别系统】图像识别Python+卷积神经网络算法+人工智能+深度学习+机器学习+Tenso
    一、介绍昆虫识别系统,使用Python作为主要开发语言。通过TensorFlow搭建ResNet50卷积神经网络算法(CNN)模型。通过对10种常见的昆虫图片数据集('蜜蜂','甲虫','蝴蝶','蝉','蜻蜓','蚱蜢','蛾','蝎子','蜗牛','蜘蛛')进行训练,得到一个识别精度较......
  • 机器学习各个算法的优缺点!(上篇) 建议收藏。
      下篇地址:机器学习各个算法的优缺点!(下篇)建议收藏。-CSDN博客.......纯干货..........回归正则化算法集成算法决策树算法支持向量机降维算法聚类算法贝叶斯算法人工神经网络深度学习感兴趣的朋友可以点赞、转发起来,让更多的朋......
  • 数学一|概统|五、大数定理与中心极限定理
    考试要求了解切比雪夫不等式;了解切比雪夫大数定律、伯努利大数定律和辛钦大数定律(独立同分布随机变量序列的大数定律);了解棣莫弗-拉普拉斯定理(二项分布以正态分布为极限)和列维-林德伯格定理(独立同分布随机变量序列的中心极限定理)1.1马尔可夫和切比雪夫不等式2.1.1马尔可夫......
  • 客服系统接入coze扣子机器人 实现了知识库问答,以及文生图功能
    我发布的抖音视频 https://www.douyin.com/video/7383347226967362826 【视频标题:】 客服系统接入coze扣子机器人实现了知识库问答,以及文生图功能#coze  【视频行业分类:】3C数码  【视频文案】: 我们现在看一下客服系统对接了扣子机器人以后的效果。现在......
  • 算法金 | 统计学的回归和机器学习中的回归有什么差别?
    大侠幸会,在下全网同名「算法金」0基础转AI上岸,多个算法赛Top「日更万日,让更多人享受智能乐趣」统计学中的回归目标:主要用于解释和推断自变量(independentvariables)和因变量(dependentvariables)之间的关系。强调模型的解释性,了解各个自变量对因变量的影响。假设:......
  • 机器学习1——感知机
    1.感知机干什么?求出二元分类的分离超平面,将实例划分为正负两类,属于判别模型。ps:是神经网络和支持向量机的基础。2.感知机是什么?其中x是n维特征向量,对应于输入控件的点,输出y表示实例的类别,为+1或-1。(ps:sign是符号函数)几何解释:w·x+b=0 ——对应于特征空间的一个超......
  • 【离散数学·算法】(复习)
    一、1.算法的属性:1.输入。2.输出。3.正确性。4.有穷性(有限步数)。5.有效性(有限时间内正确执行每个步骤)。6.泛化性。2.指定算法:可用语言or伪代码来描述二、三类问题1.搜索问题:(1)线性搜索:从头到尾一个一个检查。(2) 二分搜索:(假设排列是按递增顺序的)(找到:返回位置;......
  • 【机器人学】4-1.六自由度机器人动力学-开篇-基础知识
        从现在开始进入机器人动力学。前面的正逆解和雅克比矩阵只是开胃小菜,动力学开始进入微观控制层面,难度也比前面的章节难一些,我打算用3个小结带大家入门机器人动力学。在实际的动力学中,质量分布都是已知的,不需要求解。这一章就先到这里,以上4个基础知识足够......
  • 机器学习相关入门零碎知识
    机器学习的学习先后顺序待补充什么是传统机器学习、深度学习、神经网络待补充传统的机器学习与深度学习区别于场景参考:https://cloud.baidu.com/article/2865348在过去的几十年里,机器学习已经取得了长足的进步,从传统的统计学方法到现在的深度学习,其应用范围越来越广泛。然而......