文章目录

  • 引言
  • 参数估计
  • 最大似然估计
    • 似然函数
    • 求解最大似然估计问题
    • 为什么要对似然函数取对数?
    • “似然”与“概率”的区别
  • 机器学习中的应用
  • 参考资料

引言

最大似然估计,就是寻找一组模型参数,使得观测到现有样本出现的概率最大,即这组模型参数,可以使模型拟合的结果最接近实际数据分布。在机器学习领域中,很多求解参数的方法,都可以归结为最大似然估计问题。

最大似然估计是参数估计中点估计的一种,所以我们先复习下参数估计的定义。

参数估计

一般来说,我们假定模型结构是已知的,参数是未知的,数据是已知的。
通过已知数据推出未知的参数,这个参数的点估计就是数据的函数。

如果要估计的不是参数,而是输入和目标变量之间关系,这种类型的点估计称为函数估计。函数估计和估计参数θ类似,函数估计可以看作函数空间中的一个点估计。

最大似然估计

最大似然估计(Maximum Likelihood Estimation, MLE)是一个概率论中常用的估计方法。

假设有一个数据集 X={x1,x2,⋅⋅⋅,xn}X=\{x_1,x_2, ···,x_n\}X={x1​,x2​,⋅⋅⋅,xn​},其真实数据分布未知。数据的概率分布由参数θ确定,用 model(x;θ)model(x;θ)model(x;θ) 表示,可以将任意输入x映射到概率 p(x)p(x)p(x)。当参数θ\thetaθ取不同值时,得到的似然函数值(详见下一小节)不同。当似然函数值最大时,此时的参数θ\thetaθ使样本X出现的概率最大,即找到了使概率最大的参数θ\thetaθ,这就是最大似然估计方法

对于一个似然函数L(θ)=L(x1,x2,...xn;θ),θ^∈ΘL(\theta)=L(x_1,x_2,...x_n;\theta),\hat{\theta}∈\ThetaL(θ)=L(x1​,x2​,...xn​;θ),θ^∈Θ,如果存在一个参数值θ^\hat{\theta}θ^,使得似然函数值达到最大值 L(θ^)=maxθ^∈ΘL(θ)L(\hat{\theta})=max_{\hat{\theta}∈\Theta} {L(\theta)}L(θ^)=maxθ^∈Θ​L(θ),那么这个θ^\hat{\theta}θ^就称为参数θ\thetaθ的最大似然估计量。θ^\hat{\theta}θ^ 与 x1,x2,...xnx_1,x_2,...x_nx1​,x2​,...xn​ 有关,也可以记作 θ^(x1,x2,...xn)\hat{\theta}(x_1,x_2,...x_n)θ^(x1​,x2​,...xn​)。

最大似然估计在生活中的应用是,当人们观察到某种现象,想要判断是哪种原因导致这种现象,就会选择可能性最大的一种原因,这种思想就是最大似然估计。

似然函数

根据离散型、连续型随机变量的划分,似然函数一般定义为:

(1)对于离散型X,其分布律为事件P(X=x)=p(x,θ1,...,θk)P(X=x)=p(x,\theta_1,...,\theta_k)P(X=x)=p(x,θ1​,...,θk​),事件A={X1=x1,X2=x2,...,Xn=xn}=\{X_1=x_1,X_2=x_2,...,X_n=x_n\}={X1​=x1​,X2​=x2​,...,Xn​=xn​},事件A发生的概率记为:
L(x;θ1,...,θk)=∏i=1np(xi,θ1,...,θk)L(x;\theta_1,...,\theta_k)=\prod_{i=1}^n{p(x_i,\theta_1,...,\theta_k)}L(x;θ1​,...,θk​)=i=1∏n​p(xi​,θ1​,...,θk​)则称L(x;θ1,...,θk)L(x;\theta_1,...,\theta_k)L(x;θ1​,...,θk​)为样本的似然函数。

(2)对于连续型X,若其概率密度为f(x,θ1,...,θk)f(x,\theta_1,...,\theta_k)f(x,θ1​,...,θk​),则样本的似然函数定义为:L(x;θ1,...,θk)=∏i=1nf(xi,θ1,...,θk)L(x;\theta_1,...,\theta_k)=\prod_{i=1}^n{f(x_i,\theta_1,...,\theta_k)}L(x;θ1​,...,θk​)=i=1∏n​f(xi​,θ1​,...,θk​)

似然性是指在已知某些观测结果时,对有关参数进行估计,似然函数取得最大值表示相应的参数能够使统计模型最为合理。

求解最大似然估计问题

求解未知参数θ\thetaθ的最大似然估计问题,就是求似然函数L(x;θ)L(x;\theta)L(x;θ)的最大值点的问题。如果似然函数关于参数 θ\thetaθ 可微时,就能利用微分中求最大值的方法进行求解。计算步骤如下:

  • (1)写出似然函数L(x;θ)=L(x1,x2,...,xn;θ)L(x;\theta)=L(x_1,x_2,...,x_n;\theta)L(x;θ)=L(x1​,x2​,...,xn​;θ)
  • (2)对似然函数或对数似然函数求导,令dL(x;θ)dθ=0\frac{dL(x;\theta)}{d\theta}=0dθdL(x;θ)​=0或dlnL(x;θ)dθ=0\frac{dlnL(x;\theta)}{d\theta}=0dθdlnL(x;θ)​=0,求出θ\thetaθ的最大似然估计。

为什么要对似然函数取对数?

因为 lnL(x;θ)lnL(x;\theta)lnL(x;θ) 是 L(x;θ)L(x;\theta)L(x;θ) 的单调递增函数,所以有相同的极值点。似然函数中的连乘会有丢失精度的缺点,取对数后乘法变成加法,可以规避该问题,更易于计算。

“似然”与“概率”的区别

从形式上看,似然函数也是一种条件概率函数f(x∣θ)f(x|\theta)f(x∣θ),不同的是:

  • 概率密度函数是关于xxx的函数:针对给定参数θ\thetaθ后,预测样本观测值xxx发生的可能性。
  • 似然函数是关于θ\thetaθ的函数:已知数据样本x的情况下,希望知道参数θ\thetaθ是多少。

机器学习中的应用

最大似然估计很容易扩展到估计条件概率 P(y∣x;θ)P(y|x;θ)P(y∣x;θ),从而给定 x 预测 y 。实际上这是最常见的情况,因为这构成了大多数监督学习的基础。如果X表示所有的输入,Y表示我们观测到的目标,那么条件最大似然估计是:
θ=arg max⁡θ(Y∣X;θ)\theta = \argmax_{\theta}(Y|X;\theta) θ=θargmax​(Y∣X;θ)
如果假设样本是独立同分布的,那么上式可以分解成:
θ=arg max⁡θ∑i=1mlogP(yi∣xi;θ)\theta = \argmax_{\theta}\sum_{i=1}^m{logP(y_i|x_i;\theta)} θ=θargmax​i=1∑m​logP(yi​∣xi​;θ)
机器学习的一个基本过程,就是通过更新模型参数来提高整个数据集的似然,其中缺失变量的值是通过后验分布来估计的。例如,使用梯度下降来最大化对数似然函数的方法也有相同的性质。计算对数似然函数的梯度需要对隐藏单元的后验分布求期望。

还有一种解释最大似然估计的观点,是将它看作最小化训练集上的经验分布和模型分布之间的差异,两者之间的差异程度可以通过KL散度度量。

参考资料

《人工智能数学基础》
《深度学习》

如何理解「最大似然估计」?参数估计、似然函数、最大似然估计相关推荐

  1. 【机器学习笔记(十)】之通俗易懂理解到底最大似然估计是什么?

    本文章由公号[开发小鸽]发布!欢迎关注!!! 老规矩–妹妹镇楼: 导言: 咱们学习概率论的时候,一定学习过最大似然估计这个概念,但是大家可能都只是学习了如何求解最大似然估计,而不太清楚什么叫似然估计? ...

  2. 【数学基础】参数估计之极大似然估计

    背景 先来看看几个小例子: 猎人师傅和徒弟一同去打猎,遇到一只兔子,师傅和徒弟同时放枪,兔子被击中一枪,那么是师傅打中的,还是徒弟打中的? 一个袋子中总共有黑白两种颜色100个球,其中一种颜色90个, ...

  3. 参数估计:最大似然估计MLE

    http://blog.csdn.net/pipisorry/article/details/51461997 最大似然估计MLE 顾名思义,当然是要找到一个参数,使得L最大,为什么要使得它最大呢,因 ...

  4. 算法 | 动画+解析,轻松理解「Trie树」

    Trie这个名字取自"retrieval",检索,因为Trie可以只用一个前缀便可以在一部字典中找到想要的单词. 虽然发音与「Tree」一致,但为了将这种 字典树 与 普通二叉树 ...

  5. 看动画轻松理解「Trie树」

    作者 | 程序员小吴 责编 | 胡巍巍 扎心!"我学了半年 Python,还是找不到工作" https://edu.csdn.net/topic/python115?utm_sou ...

  6. 全方位理解「元宇宙」:一切才刚刚开始

    撰文:DappRadar 编辑:南风 自从全球市值排名第六的 Facebook 宣布将公司品牌更名为 Meta 以来,元宇宙(Metaverse) 的概念已经成为主流.事实上,元宇宙并不是什么新鲜事. ...

  7. 如何理解「数据驱动业务」?

    "数据驱动"描述了一种业务状态,在这种状态中,数据被用于实时有效地推动决策和其他相关活动.对于企业来说,达到数据驱动的状态就像是开车和骑马旅行的区别.数据驱动的业务能够更快.更高效 ...

  8. 如何理解「异或」的含义?

    或 异或 异或,英文为exclusive OR,缩写成xor 异或(eor)是一个数学运算符.它应用于逻辑运算.异或的数学符号为"⊕",计算机符号为"eor". ...

  9. Redis的一点理解「基本类型」「淘汰策略」

    文章目录 前言 一.基本类型 String Hash List Set ZSet Hyperloglog 二.淘汰策略 LFU && LRU TTL淘汰 Random淘汰: 前言 Re ...

最新文章

  1. 分布式环境下,互斥性与幂等性问题,分析与解决思路
  2. 推荐几个(抖音/阿里/腾讯)年薪100W大佬的硬核公众号
  3. Javaweb环境配置,使用2014MyEclipse全过程详解!搭建JDK环境,Tomcat环境!破解2014MyEclipse。
  4. 《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.1节模式:Ubiquitous Language...
  5. mysql优化概述4
  6. Linux设备驱动模型之platform总线
  7. Android初级教程Activity小案例(计算器乘法运算)
  8. 通用权限管理系统组件 (GPM - General Permissions Manager) - 支持请求
  9. Java IO: 文件
  10. canvas绘制竖排的数字_大佬教你用Python Tkinter实现数字猜谜小游戏
  11. 谷歌补丁Android官网,谷歌已发布 19年12月 Android 安全补丁
  12. 更新fielddata为true_关于ElasticSearch的聚类时出现fielddata=true问题
  13. 深度学习与硬件GPU,软件框架关系及相关概念解析
  14. MariaDB忘记root密码
  15. 华硕aura完全卸载_更快,更信仰,华硕RTX 2070电竞显卡
  16. 天正多条线段长度lisp下载_如何快速计算cad中多条多段线的总长
  17. PS图层模式详细讲解
  18. vsftpd 虚拟用户
  19. Hive Load装载数据与HDFS的关系
  20. 免费思维导图软件, 简单脑图工具,支持导出图片

热门文章

  1. PMAC应用五-运动学
  2. 数据作为一种新型生产要素,早已成为推动国经济质量发展的重要动能
  3. 英雄联盟云顶之弈知识图谱构建
  4. Linux配置irun环境
  5. pandas.core.base.SpecificationError: nested renamer is not supported
  6. 二进制转十进制(c语言)
  7. mysql大于、等于、小于语法大全
  8. 消息队列(MQ)到底能干什么?
  9. python字符串添加元素_python 中字符串处理
  10. 顶点着色器-经过的空间变换