学习笔记三十:极大似然估计

1. 参数估计与极大似然

1.1 从类条件概率到参数估计

  • 任务背景 :在分类问题中,我们需要估计类条件概率分布 P(x∣c)P(x\mid c)P(x∣c)。
  • 参数化假设 :先假定 P(x∣c)P(x\mid c)P(x∣c) 具有某种确定的概率分布形式,其形状由一个参数向量 θc\theta_cθc 决定,记作 P(x∣θc)P(x\mid\theta_c)P(x∣θc)。
  • 训练目标 :利用训练集 DDD 来估计未知的参数 θc\theta_cθc,这个过程称为参数估计

1.2 频率派与贝叶斯派的视角

  • 频率主义:认为参数虽然未知,但客观存在,可以通过优化某个准则来"确定"它的取值;极大似然估计属于这一派的经典方法。
  • 贝叶斯派 :把参数看成随机变量,对其假设一个先验分布,然后基于观测数据计算参数的后验分布

2. 极大似然估计方法

2.1 基本思想

令 DcD_cDc 表示训练集 DDD 中属于第 ccc 类的样本集合,假设这些样本是独立同分布的。

似然函数 :给定参数 θc\theta_cθc,观测到数据集 DcD_cDc 的概率,等于所有样本概率的乘积。

极大似然估计的思想 :在所有可能的 θc\theta_cθc 中,选择那个能使"已经观测到的这批数据 DcD_cDc"出现的概率最大的参数。

2.2 对数似然

直接对大量小概率相乘容易造成数值下溢,因此通常对似然取对数,得到对数似然。由于对数函数是单调递增的,最大化对数似然与最大化似然等价。

参数的极大似然估计为:

θ^c=arg⁡max⁡θcLL(θc)\hat{\theta}c = \arg\max{\theta_c} LL(\theta_c)θ^c=argθcmaxLL(θc)

求解步骤

  1. 在给定的概率分布假设下写出对数似然函数;
  2. 对参数求偏导并令导数为 0,解出候选解;
  3. 检查该解是否对应对数似然的最大值点。

3. 正态分布下的极大似然估计

3.1 模型假设

在连续属性情形下,若假设类条件概率密度服从正态分布 N(μc,σc2)\mathcal{N}(\mu_c,\sigma_c^2)N(μc,σc2),则需要估计的参数为均值 μc\mu_cμc 和方差 σc2\sigma_c^2σc2。

3.2 MLE 结果

对属于第 ccc 类的样本集合 DcD_cDc,极大似然估计得到:

  • 均值参数 :就是该类样本的样本均值(所有样本的平均值)
  • 方差参数 :就是样本关于均值的平方偏差的平均值(样本方差)

在离散属性情形下,采用类似思路:每个取值的概率的极大似然估计就是"该取值出现的频数 / 样本总数"。

4. 方法特点与注意事项

  • 优点:给定分布形式后,通过优化明确的目标函数即可得到参数,计算相对简单。
  • 局限:估计结果高度依赖于事先假定的概率分布形式;如果假设与真实数据分布相差较大,估计结果可能偏离真实值。
  • 实践启示:需要在建模之前充分利用对任务本身的经验知识来选择分布形式,而不是完全凭"猜测"。

5. 小结

  • 本质:频率主义框架下的参数估计方法,通过最大化观测数据的似然(或对数似然)来选取参数。
  • 操作:写出似然 → 取对数 → 对参数求导并令导数为 0 → 得到极大似然解。
  • 直观结果:在正态分布等常见模型中,极大似然给出样本均值、样本方差等统计量。
  • 关键前提:分布形式假设是否合理,往往比后续求解过程本身更重要。
相关推荐
唐樽6 小时前
C++ 竞赛学习路线笔记
c++·笔记·学习
handsomestWei7 小时前
scikit-learn数据预处理模块
python·机器学习·scikit-learn
计算机毕业设计指导7 小时前
基于机器学习和深度学习的恶意WebURL检测系统实战详解
人工智能·深度学习·机器学习·网络安全
w_t_y_y7 小时前
机器学习常用的python包(二)工具箱scikit-learn
python·机器学习·scikit-learn
志栋智能7 小时前
超自动化巡检:实现运维“事前预防”的关键拼图
大数据·运维·网络·人工智能·机器学习·自动化
枫叶林FYL7 小时前
【自然语言处理 NLP】7.2 红队测试与对抗鲁棒性(Red Teaming & Adversarial Robustness)
人工智能·算法·机器学习
sensen_kiss7 小时前
CAN302 Technologies for E-Commerce 电子商务技术 Pt.6 市场营销与SEO(搜索引擎优化)
android·学习·搜索引擎
我的xiaodoujiao7 小时前
API 接口自动化测试详细图文教程学习系列9--Requests模块
python·学习·测试工具·pytest
乐园游梦记7 小时前
机器学习:监督学习与无监督学习由浅入深全解析
人工智能·深度学习·学习·机器学习
bobasyu7 小时前
Claude Code 源码笔记 -- queryLoop
java·笔记·spring