Maximum Likelihood Method最大似然法
最大似然法,英文名称是Maximum Likelihood Method,在统计中应用很广。这个方法的思想最早由高斯提出来,后来由菲舍加以推广并命名。
最大似然法是要解决这样一个问题:给定一组数据和一个参数待定的模型,如何确定模型的参数,使得这个确定参数后的模型在所有模型中产生已知数据的概率最 大。通俗一点讲,就是在什么情况下最有可能发生已知的事件。举个例子,假如有一个罐子,里面有黑白两种颜色的球,数目多少不知,两种颜色的比例也不知。我 们想知道罐中白球和黑球的比例,但我们不能把罐中的球全部拿出来数。现在我们可以每次任意从已经摇匀的罐中拿一个球出来,记录球的颜色,然后把拿出来的球 再放回罐中。这个过程可以重复,我们可以用记录的球的颜色来估计罐中黑白球的比例。假如在前面的一百次重复记录中,有七十次是白球,请问罐中白球所占的比 例最有可能是多少?
我想很多人立马有答案:70%。这个答案是正确的。可是为什么呢?(常识嘛!这还要问?!)其实,在很多常识的背后,都有相应的理论支持。在上面的问题 中,就有最大似然法的支持。
在很久以前的一个下午,自己在图书馆看书,书中讲到了同一独立分布(i.i.d., identical and independent distribution),与概率相关。当时已经听说最大似然法很长时间了,最大似然法在不同场合应用的结论看过不少,但自己还没有真正地学习和应用 过。突然想到了上面的例子(类似的例子在自己以后的阅读很常见,当时没有意识到自己到底以前看过类似的例子没有),决定自己动手算一算。
下面会有一些数学,我知道西河比较深,大牛比较多,看了不要见笑。有意见和建议尽管提。
我们假设罐中白球的比例是p,那么黑球的比例就是1-p。因为每抽一个球出来,在记录颜色之后,我们把抽出的球放回了罐中并摇匀,所以每次抽出来的球的颜 色服从同一独立分布。这里我们把一次抽出来球的颜色称为一次抽样。题目中在一百次抽样中,七十次是白球的概率是P(Data | M),这里Data是所有的数据,M是所给出的模型,表示每次抽出来的球是白色的概率为p。如果第一抽样的结果记为x1,第二抽样的结果记为x2,。。。 那么Data = (x1,x2,...,x100)。这样,
P(Data | M)
= P(x1,x2,...,x100|M)
= P(x1|M)P(x2|M)...P(x100|M)
= p^70(1-p)^30.
那么p在取什么值的时候,P(Data |M)的值最大呢?将p^70(1-p)^30对p求导,并其等于零。
70p^69(1-p)^30-p^70*30(1-p)^29=0。
解方程可以得到p=0.7。
在边界点p=0,1,P(Data|M)=0。所以当p=0.7时,P(Data|M)的值最大。这和我们常识中按抽样中的比例来计算的结果是一样的。
当时,自己推到完这些,心情很高兴,感觉自己理解了最大似然法。接着想到了连续变量。
假如我们有一组连续变量的采样值(x1,x2,...,xn),我们知道这组数据服从正态分布,标准差已知。请问这个正态分布的期望值为多少时,产生这个 已有数据的概率最大?
P(Data | M) = ??
求导,u=(x1+x2+...+xn)/n.这个正态分布的期望值,就是这组数据的均值。在我们的日常生活和工作中,我们经常会用到平均值,这是有道理 的,可以用最大似然法来解释。如果数据服从正态分布,这是最可能的数据。
当我第一次自己推导出这些的时候,心中有一种豁然开朗、恍然大悟的感觉:最大似然法就这样!
最大似然法原理简单,应用很广。举个例子,这样的情况在生活会经常遇到。假如人们会感染一种病毒,有一种测试方法,在被测试者已感染这个病毒时,测试结果 为阳性的概率为95%。在被测试者没有感染这个病毒时,测试结果为阳性的概率为2%。现在,有一个人的测试结果为阳性,问这个人感染了病毒吗?根据最大似 然法,如果一个人感染病毒,95%的测试结果会为阳性;而如果这个人没有感染病毒,只有2%的测试结果会为阳性,所以这个人应该是已经感染病毒了。
最大似然法应用广泛,但是经常会受到一种批评,而且对于这种批评,尤其在数据量比较小的时候,最大似然法的支持者没有很多充分的反驳理由:在最大似然法 中,只考虑了由一个模型产生一个已知数据的概率,而没有考虑模型本身的概率。相对应的考虑了模型本身概率的方法,是贝叶斯方法(Bayesian method)。
在上面测试病毒的例子中,如果我们知道在整体人群中,只有1%人会感染这种病毒,那么,根据贝叶斯方法,这个被测试者只有1/3左右的可能性感染了病毒 {1%*95%/(1%*95%+99%*2%)=32.4%}
在这里,我们看到先验概率对结果的影响很大。
不过,当数据量比较大的时候,先验概率的影响就会减小。比如,人们在被检测出感染了一个严重的病毒后,一般会去其他医院复查。假如同一个人在三家医院进行 了独立的检查,结果都是阳性。那么,这个人真正感染了病毒的概率有多大?在这个人感染病毒时,出现这种检测结果的可能性为95%*95%*95% = 85.7%;而在这个人没有感染病毒时,出现这种检测结果的可能性为2%*2%*2% = 0.000008。根据最大似然法,我们应选择这个人感染了病毒。
根据贝叶斯方法,这个人感染病毒的概率为1%*95%*95%*95%/(1%*95%*95%*95%+99%*2%*2%*2%) = 99.9%。
当然,当时自己主要体会了同一独立分布在最大似然法中的要求。在以后的一个应用中,才对“模型已知,参数未定”这一要求有了进一步的认识。link
from: http://www.zhizhihu.com/html/y2010/1520.html
Maximum Likelihood Method最大似然法的更多相关文章
- 最大似然估计实例 | Fitting a Model by Maximum Likelihood (MLE)
参考:Fitting a Model by Maximum Likelihood 最大似然估计是用于估计模型参数的,首先我们必须选定一个模型,然后比对有给定的数据集,然后构建一个联合概率函数,因为给定 ...
- Maximum Likelihood及Maximum Likelihood Estimation
1.What is Maximum Likelihood? 极大似然是一种找到最可能解释一组观测数据的函数的方法. Maximum Likelihood is a way to find the mo ...
- Linear Regression and Maximum Likelihood Estimation
Imagination is an outcome of what you learned. If you can imagine the world, that means you have lea ...
- 似然函数 | 最大似然估计 | likelihood | maximum likelihood estimation | R代码
学贝叶斯方法时绕不过去的一个问题,现在系统地总结一下. 之前过于纠结字眼,似然和概率到底有什么区别?以及这一个奇妙的对等关系(其实连续才是f,离散就是p). 似然函数 | 似然值 wiki:在数理统计 ...
- MLE vs MAP: the connection between Maximum Likelihood and Maximum A Posteriori Estimation
Reference:MLE vs MAP. Maximum Likelihood Estimation (MLE) and Maximum A Posteriori (MAP), are both a ...
- 最大似然估计(Maximum Likelihood,ML)
先不要想其他的,首先要在大脑里形成概念! 最大似然估计是什么意思?呵呵,完全不懂字面意思,似然是个啥啊?其实似然是likelihood的文言翻译,就是可能性的意思,所以Maximum Likeliho ...
- Maximum likelihood from incomplete data via the EM algorithm (1977)
Maximum likelihood from incomplete data via the EM algorithm (1977)
- 均匀分布(uniform distribution)期望的最大似然估计(maximum likelihood estimation)
maximum estimator method more known as MLE of a uniform distribution [0,θ] 区间上的均匀分布为例,独立同分布地采样样本 x1, ...
- [Bayes] Maximum Likelihood estimates for text classification
Naïve Bayes Classifier. We will use, specifically, the Bernoulli-Dirichlet model for text classifica ...
随机推荐
- Asp.net vNext 学习之路(三)
asp.net vNext 对于构建asp.net 程序带来了一些重大的改变,让我们开发asp.net 程序的时候更加的方便和高效. 1,可以很容易的去管理客户端的包比如jquery,bootstra ...
- Loadrunner参数化如何在记事本中将参数值显示超过100个参数值
Loadrunner参数化如何在记事本中将参数值显示超过100个参数值 1.loadrunner的参数值没有最大的限度, 可以修改C:\Program Files\HP\LoadRunner\conf ...
- linux用户下的.profile文件丢失
登录用户时出现以下问题: #su - wqq-bash-4.1$ -bash-4.1$ 查看时发现环境变量文件丢失造成的 解决方法: # ls -la /etc/skel/ total 36drwx ...
- sqoop遇到的问题
我使用的是CDH版本的 这是我的sqoop脚本 sudo -u hive sqoop import --connect jdbc:mysql://xxxx/rom3 --username xxx -- ...
- Spark入门1(以WordCount为例讲解flatmap和map之间的区别)
package com.test import org.apache.spark.{SparkConf, SparkContext} object WordCount { def main(args: ...
- PHP中双引号引起的命令执行漏洞
前言 在PHP语言中,单引号和双引号都可以表示一个字符串,但是对于双引号来说,可能会对引号内的内容进行二次解释,这就可能会出现安全问题. 正文 举个简单例子 <?php $a = 1; $b = ...
- SpringBoot和微服务
SpringCloud SpringBoot 概念 应用 微服务CAP Consistency(数据强一致性),Availability(服务可用性),Partition-tolerance(分区容错 ...
- Entity Framework Core 入门(2)
安装 EF Core 将 EF Core 添加到不同平台和常用 IDE 中的应用程序的所需步骤汇总. 分步入门教程 无需具备 Entity Framework Core 或任何特定 IDE 的原有知识 ...
- [leetcode DP]53. Maximum Subarray
Find the contiguous subarray within an array (containing at least one number) which has the largest ...
- java线程系列文章之一(线程的安全性)
本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/7421217,转载请注明. 当我们查看JDK API的时候,总会发现一些类 ...