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

一、定义

最大似然估计 是一种参数估计方法,其核心思想是:
选择能使观测数据出现概率最大的参数值作为估计值
具体来说,假设数据 D = x 1 , x 2 , … , x n D={x_1,x_2,…,x_n} D=x1,x2,,xn独立且服从某个概率分布 P ( x ∣ θ ) P(x∣θ) P(xθ),则通过最大化似然函数 L ( θ ∣ D ) \mathcal{L}(\theta \mid \mathcal{D}) L(θD)来求解参数 θ θ θ

二、公式推导
  1. 似然函数
    数据独立时,似然函数为各数据点概率的乘积:
    L ( θ ∣ D ) = ∏ i = 1 n P ( x i ∣ θ ) \mathcal{L}(\theta \mid \mathcal{D})=\prod_{i=1}^{n} P\left(x_{i} \mid \theta\right) L(θD)=i=1nP(xiθ)

  2. 对数似然:
    为简化计算,取自然对数(乘积变加法):
    L ( θ ∣ D ) = ∏ i = 1 n P ( x i ∣ θ ) \mathcal{L}(\theta \mid \mathcal{D})=\prod_{i=1}^{n} P\left(x_{i} \mid \theta\right) L(θD)=i=1nP(xiθ)

  3. 最大化目标:
    求解使对数似然最大的参数 θ ∗ θ^∗ θ
    θ ∗ = arg ⁡ max ⁡ θ ∑ i = 1 n ln ⁡ P ( x i ∣ θ ) \theta^*=\arg \max _\theta \sum_{i=1}^n \ln P\left(x_i \mid \theta\right) θ=argmaxθi=1nlnP(xiθ)

  4. 求解方法:
    对 θ 求导并令导数为零,或使用梯度下降等优化算法。

三、经典例子
例1:估计正态分布的均值和方差

假设数据 D = x 1 ​ , x 2 ​ , … , x n ​ \mathcal{D}={x_1​,x_2​,…,x_n​} D=x1,x2,,xn服从正态分布 N ( μ , σ 2 ) \mathcal{N}\left(\mu, \sigma^2\right) N(μ,σ2),求 μ \mu μ σ 2 \sigma^2 σ2估计。

  1. 似然函数:
    L ( μ , σ 2 ) = ∏ i = 1 n 1 2 π σ 2 e − ( x i − μ ) 2 2 σ 2 \mathcal{L}\left(\mu, \sigma^2\right)=\prod_{i=1}^n \frac{1}{\sqrt{2 \pi \sigma^2}} e^{-\frac{\left(x_i-\mu\right)^2}{2\sigma^2}} L(μ,σ2)=i=1n2πσ2 1e2σ2(xiμ)2

  2. 对数似然:

ln ⁡ L = − n 2 ln ⁡ ( 2 π ) − n 2 ln ⁡ σ 2 − 1 2 σ 2 ∑ i = 1 n ( x i − μ ) 2 \ln \mathcal{L}=-\frac{n}{2} \ln (2 \pi)-\frac{n}{2} \ln \sigma^2-\frac{1}{2 \sigma^2} \sum_{i=1}^n(x_i-\mu)^2 lnL=2nln(2π)2nlnσ22σ21i=1n(xiμ)2
3. 求导解方程:
μ μ μ 求导:
∂ ln ⁡ L ∂ μ = 1 σ 2 ∑ i = 1 n ( x i − μ ) = 0 ⇒ μ ∗ = 1 n ∑ i = 1 n x i \frac{\partial \ln \mathcal{L}}{\partial \mu}=\frac{1}{\sigma^2} \sum_{i=1}^n\left(x_i-\mu\right)=0 \Rightarrow \quad \mu^*=\frac{1}{n} \sum_{i=1}^n x_i μlnL=σ21i=1n(xiμ)=0μ=n1i=1nxi
σ 2 \sigma^2 σ2求导:
∂ ln ⁡ L ∂ σ 2 = − n 2 σ 2 + 1 2 σ 4 ∑ i = 1 n ( x i − μ ) 2 = 0 ⇒ σ 2 ∗ = 1 n ∑ i = 1 n ( x i − μ ∗ ) 2 \frac{\partial \ln \mathcal{L}}{\partial \sigma^2}=-\frac{n}{2 \sigma^2}+\frac{1}{2 \sigma^4} \sum_{i=1}^n\left(x_i-\mu\right)^2=0 \Rightarrow \quad \sigma^{2 *}=\frac{1}{n} \sum_{i=1}^n\left(x_i-\mu^*\right)^2 σ2lnL=2σ2n+2σ41i=1n(xiμ)2=0σ2=n1i=1n(xiμ)2

  1. 结论
    μ ∗ \mu^* μ是样本均值, σ 2 ∗ \sigma^{2 *} σ2是样本方差(但分母为 n,有偏估计)。
例2:二项分布的参数估计

假设抛硬币 n 次,正面朝上 k 次,估计正面概率 p。

  1. 似然函数:
    $\mathcal{L}§ = \binom{n}{k} p^k (1-p)^{n-k} $

  2. 对数似然:

$\ln \mathcal{L} = \ln \binom{n}{k} + k \ln p + (n - k) \ln (1 - p) $
3. 求导解方程:
$\frac{\partial \ln \mathcal{L}}{\partial p} = \frac{k}{p} - \frac{n-k}{1-p} = 0 \implies p^* = \frac{k}{n} $

结论:正面概率的 MLE 估计是观测频率 k n \frac{k}{n} nk

 

四、MLE 与大模型的关系

在大模型(如 GPT、BERT、ResNet)中,MLE 是训练目标的数学基础,但需结合工程技巧扩展:

  1. 损失函数设计

    • 交叉熵损失:分类任务中,最小化交叉熵等价于最大化对数似然。
      例如,语言模型预测下一个词的概率分布时,损失函数为:

      L = − ∑ t = 1 T ln ⁡ P ( w t ∣ w < t , θ ) \mathcal{L} = - \sum_{t=1}^{T} \ln P(w_t|w_{<t}, \theta) L=t=1TlnP(wtw<t,θ)

    • 均方误差(MSE):回归任务中,MSE 等价于假设数据服从高斯分布时的 MLE。

  2. 正则化与贝叶斯扩展

    • MLE 容易过拟合,大模型常加入正则化项(如 L2 正则),这等价于最大后验估计(MAP,贝叶斯框架下的 MLE 扩展)。

    • 贝叶斯神经网络将 MLE 推广为后验分布推断(如变分推断)。

  3. 优化算法

    • 大模型参数规模巨大(如 GPT-3 有 1750 亿参数),直接求解 MLE 不可行,需使用 随机梯度下降(SGD) 或其变体(如 Adam)近似优化。
  4. 生成模型中的应用

    • 生成对抗网络(GAN)和扩散模型中,生成器的训练隐式地最大化数据的似然。

    • 自回归模型(如 Transformer)显式地通过 MLE 学习序列数据的分布。

五、MLE 的局限性及应对
  1. 过拟合风险

    • 问题:MLE 倾向于拟合训练数据噪声。

    • 解决方案:加入正则化项,或使用贝叶斯方法引入先验。

  2. 数据稀疏性

    • 问题:小数据场景下,MLE 估计可能不准确。

    • 解决方案:数据增强、预训练(如 BERT 的 MLM 任务)。

  3. 非凸优化

    • 问题:复杂模型的似然函数可能非凸,陷入局部最优。

    • 解决方案:随机初始化、动量优化、学习率调度。


六、总结
  • 核心公式 θ ∗ = arg ⁡ max ⁡ θ ∑ i = 1 n ln ⁡ P ( x i ∣ θ ) \theta^*=\arg \max _\theta \sum_{i=1}^n \ln P\left(x_i \mid \theta\right) θ=argmaxθi=1nlnP(xiθ)

  • 应用场景:从经典统计到深度学习,MLE 是参数估计的基石。

  • 大模型中的角色

    • 直接指导损失函数设计(如交叉熵)。

    • 结合正则化和优化算法解决高维问题。

    • 生成模型和自回归模型的核心训练目标。

  • 哲学意义:MLE 体现了“让数据自己说话”的思想,但需通过技术手段平衡拟合与泛化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/diannao/84319.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用go从零构建写一个RPC(3)--异步调用+多路复用实现

在前两个版本中&#xff0c;我们实现了基础的客户端-服务端通信、连接池、序列化等关键模块。为了进一步提升吞吐量和并发性能&#xff0c;本版本新增了 异步发送机制 和 多路复用支持&#xff0c;旨在减少资源消耗、提升连接利用率。 代码地址&#xff1a;https://github.com/…

FFmpeg 安装包全攻略:gpl、lgpl、shared、master 区别详解

这些 FFmpeg 安装包有很多版本和变种&#xff0c;主要区别在于以下几个方面&#xff1a; ✅ 一、从名称中看出的关键参数&#xff1a; 1. 版本号 master&#xff1a;开发版&#xff0c;最新功能&#xff0c;但可能不稳定。n6.1 / n7.1&#xff1a;正式版本&#xff0c;更稳定…

深度学习实战:从图像分类到文本生成的完整案例解析

1 图像分类案例 1.1 CIFAR10数据集介绍 cifar数据是torchvision第三方包提供的数据集 训练集5w 测试集1w y标签 10个类别 10分类问题 一张图形状 (32, 32, 3) import torch import torch.nn as nn from torchvision.datasets import CIFAR10 from torchvision.transforms i…

Android 添加系统服务的完整流程

[应用程序] (应用进程)│↓ 调用简单API [SoundManager] │ ├─ 代理模式门面模式&#xff08;应用进程&#xff09;│ ├─ 缓存数据 ←─ 装饰器模式&#xff08;应用进程&#xff09;│ └─ 转换异常 ←─ 适配器模式&#xff08;应用进程&#xff09;│↓ 通过Bind…

wan2.1代码笔记

GPU内存不够&#xff0c;可以先运行umt5&#xff0c;然后再运行wanpipeline&#xff0c;参考FLUX.1代码笔记&#xff0c;或者使用ComfyUI。 下面使用随机数代替umt5 embedding。 import torch from diffusers.utils import export_to_video from diffusers import Autoencoder…

环境搭建与工具配置

3.1 本地环境搭建 3.1.1 WAMP环境搭建漏洞靶场&#xff08;一、二&#xff09; WAMP&#xff08;Windows Apache MySQL PHP&#xff09;是搭建本地Web漏洞靶场的基础环境。 安装步骤&#xff1a; Apache&#xff1a;下载并安装最新版Apache HTTP Server&#xff0c;配置监…

STM32F446主时钟失效时DAC输出异常现象解析与解决方案

—### 现象概述 在STM32F446微控制器应用中&#xff0c;若主时钟&#xff08;HSE&#xff09;的晶体信号对地短路&#xff0c;但DAC&#xff08;数模转换器&#xff09;仍能输出变化信号&#xff0c;这一现象看似矛盾&#xff0c;实则与系统时钟切换机制密切相关。本文将从硬件…

React 如何封装一个可复用的 Ant Design 组件

文章目录 前言一、为什么需要封装组件&#xff1f;二、 仿antd组件的Button按钮三、封装一个可复用的表格组件 (实战)1. 明确需求2. 设计组件 API3. 实现组件代码4. 使用组件 三、封装组件的最佳实践四、进阶优化 总结 前言 作为一名前端开发工程师&#xff0c;在日常项目中&a…

STC89C52RC/LE52RC

STC89C52RC 芯片手册原理图扩展版原理图 功能示例LED灯LED灯的常亮效果LED灯的闪烁LED灯的跑马灯效果&#xff1a;从左到右&#xff0c;从右到左 数码管静态数码管数码管计数mian.cApp.cApp.hCom.cCom.hDir.cDir.hInt.cInt.hMid.cMid.h 模板mian.cApp.cApp.hCom.cCom.hDir.cDir…

踩坑记录:RecyclerView 局部刷新notifyItemChanged多次调用只触发一次 onBindViewHolder 的原因

1. 问题背景 在做项目的时候&#xff0c;RecyclerView需要使用局部刷新&#xff0c;使用 notifyItemChanged(position, payload) 实现局部刷新&#xff0c;但发现调用多次只执行了一次&#xff0c;第二个刷新不生效。 2. 错误示例&#xff08;只处理 payloads.get(0)&#xff…

OpenLayers 加载鹰眼控件

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图控件是一些用来与地图进行简单交互的工具&#xff0c;地图库预先封装好&#xff0c;可以供开发者直接使用。OpenLayers具有大部分常用的控件&#x…

WPF···

设置启动页 默认最后一个窗口关闭,程序退出,可以设置 修改窗体的icon图标 修改项目exe图标 双击项目名会看到代码 其他 在A窗体点击按钮打开B窗体,在B窗体设置WindowStartupLocation=“CenterOwner” 在A窗体的代码设置 B.Owner = this; B.Show(); B窗体生成在A窗体中间…

github公开项目爬取

import requestsdef search_github_repositories(keyword, tokenNone, languageNone, max_results1000):"""通过 GitHub API 搜索仓库&#xff0c;支持分页获取所有结果&#xff08;最多 1000 条&#xff09;:param keyword: 搜索关键词:param token: GitHub To…

防震基座在半导体晶圆制造设备抛光机详细应用案例-江苏泊苏系统集成有限公司

在半导体制造领域&#xff0c;晶圆抛光作为关键工序&#xff0c;对设备稳定性要求近乎苛刻。哪怕极其细微的振动&#xff0c;都可能对晶圆表面质量产生严重影响&#xff0c;进而左右芯片制造的成败。以下为您呈现一个防震基座在半导体晶圆制造设备抛光机上的经典应用案例。 企…

S32K开发环境搭建详细教程(一、S32K IDE安装注册)

一、S32K IDE安装注册 1、进入恩智浦官网https://www.nxp.com.cn/&#xff08;需要在官网注册一个账号&#xff09; 2、直接搜索 “Standard Software”&#xff0c;找到S32K3 Standard Software&#xff0c;点击进入 3、下载 (1)Automotive SW - S32K3 - S32 Design Studio…

Spring Cloud Gateway 微服务网关实战指南

上篇文章简单介绍了SpringCloud系列OpenFeign的基本用法以及Demo搭建&#xff08;Spring Cloud实战&#xff1a;OpenFeign远程调用与服务治理-CSDN博客&#xff09;&#xff0c;今天继续讲解下SpringCloud Gateway实战指南&#xff01;在分享之前继续回顾下本次SpringCloud的专…

MSP430G2553 USCI模块串口通信

1.前言 最近需要利用msp430连接蓝牙模块传递数据&#xff0c;于是死磕了一段时间串口&#xff0c;在这里记录一下 2.msp430串口模块 msp430的串口模块可以有USCI模块提供 在异步模式中&#xff0c; USCI_Ax 模块通过两个外部引脚&#xff0c; UCAxRXD 和 UCAxTXD&#xff0…

【产品经理从0到1】用户端产品设计与用户画像

思考 xx新闻的第一个版本应该做哪些事情呢&#xff1f; 用户端核心功能 用户端通用页面设计 思考 回想一下&#xff0c;大家在第一次使用一个新下载的App的时候会看到一些什么样的页面?这样的页面一般都是展示了一些什么内容? 引导页 概念 第一次安装App或者更新App后第…

多场景游戏AI新突破!Divide-Fuse-Conquer如何激发大模型“顿悟时刻“?

多场景游戏AI新突破&#xff01;Divide-Fuse-Conquer如何激发大模型"顿悟时刻"&#xff1f; 大语言模型在强化学习中偶现的"顿悟时刻"引人关注&#xff0c;但多场景游戏中训练不稳定、泛化能力差等问题亟待解决。Divide-Fuse-Conquer方法&#xff0c;通过…

佰力博科技与您探讨压电材料的原理与压电效应的应用

压电材料的原理基于正压电效应和逆压电效应&#xff0c;即机械能与电能之间的双向转换特性。 压电材料的原理源于其独特的晶体结构和电-机械耦合效应&#xff0c;具体可分为以下核心要点&#xff1a; 1. ‌正压电效应与逆压电效应的定义‌ ‌正压电效应‌&#xff1a;当压电…