zoukankan      html  css  js  c++  java
  • 最大似然 (maximum likelihood estimation) MLE

    似然与概率

      在统计中,似然函数(likelihood function)通常简写为似然( likelihood)。在非正式场合似然和概率(Probability)几乎是同义词,但在统计学中,似然和概率却是两个不同的概念。概率是在特定环境下某件事情发生的可能性,也就是结果没有产生之前依据环境所对应的参数来预测某件事情发生的可能性,似然是在确定的结果下去推测产生这个结果的可能环境(参数)。比如抛硬币任何一面朝上的可能性均为50%,这个概率只有在抛硬币之前才是有意义的,抛完硬币后的结果便是确定的;假设我们随机抛掷一枚硬币1,000次,结果500次人头朝上,500次数字朝上,由此判断这是一枚标准的硬币,这个过程就是运用出现的结果来判断这个事情本身的性质(参数),也就是似然。

      结果和参数相互对应的时候,似然和概率在数值上是相等的。如果用 θ 表示环境对应的参数, x 表示结果,那么概率可以表示为:Ρ(x|θ);相应的似然可以表示为: L(θ|x)。

    L(θ|x) 可以理解为已知结果为 x ,参数为 θ 对应的概率 (θ 是变量)。Ρ(x|θ) 和 L(θ|x) 似然两者在数值上相等,在意义并不相同。Ρ(x|θ) 关于 x 的函数,而  L(θ|x) 关于 θ 的函数,两者从不同的角度描述同一件事情。

     

    以伯努利分布(Bernoulli distribution,又叫做两点分布或0-1分布)为例:1if x=0

     

     也可以写成:f(x; p) = px (1-p)1-x   for x ∈ {0, 1}

     

    f(x;p)=px(1p)1xfor x{0,1}

    注意 f(x; p) 与条件概率的区别:分号后的 p 仅表示 f 依赖于 p 的值, p 并不是 f 的前置条件,而只是这个概率分布的一个参数而已。

    这个分布也可以省略引号后的内容: f(x) = px (1-p)1-x   for x ∈ {0, 1},当 p = 0.5 时,f(x) = 0.5。

    p = 0.5,n = 100 可以画出 n 重伯努利概型函数图像,

    代码为:

    View Code

    图形为:

     

     

     

     

    从似然的角度出发,假设抛硬币 100 次, 观测到正面的次数是 x = 50,即某一面朝上的概率是50%,可以得到似然函数: L(p|x=50) = 0.5.

    n = 100, x = 50 时,可画出对应似然函数的图形,

    代码为:

     

    View Code

     

    图形为:

     

     

     

    与概率分布图不同的是,似然函数是一个(0, 1)内连续的函数,所以得到的图也是连续的.很容易看出似然函数的极值(也是最大值)在 p =0.5 处得到,通常不需要做图来观察极值,令似然函数的偏导数为零即可求得极值条件。似然函数里的 p 描述的是硬币的性质而非事件发生的概率(比如 p = 0.5 描述的是一枚两面均匀的硬币)。

    为了避免混淆,可以用其他字母来表示这个性质,如果 π 来表示,那么似然函数就可以写成: L( π |x=50) = 0.5。

     

    似然函数的最大值

      似然函数的最大值意味着什么?概率描述的是在一定条件下某个事件发生的可能性,概率越大说明这件事情越可能会发生;而似然描述的是结果已知的情况下,该事件在不同条件下发生的可能性,似然函数的值越大说明该事件在对应的条件下发生的可能性越大。

    对于抛硬币的例子: π(硬币的性质)就是事件发生的条件, L( π |x=50)  描述的是抛性质不同的硬币 100 次,正面向上的 50 次的可能性有多大。

      在很多实际问题中,比如机器学习领域,我们更关注的是似然函数的最大值,我们需要根据已知事件来找出产生这种结果最有可能的条件,目的当然是根据这个最有可能的条件去推测未知事件的概率。在抛 100 硬币的事件中,π 可以取 [0, 1] 内的所有值,这由硬币的性质所决定的,显然 π = 0.5 (均匀)的币最有可能产生在 100 次抛掷中正面向上 50 次的结果。

    对数化的似然函数

      实际问题往往要比抛一次硬币复杂得多,会涉及到多个独立事件,在似然函数的表达式中通常都会出现连乘:

    对多项乘积的求导往往非常复杂,但是对于多项求和的求导却要简单的多,对数函数不改变原函数的单调性和极值位置,而且根据对数函数的性质可以将乘积转换为加减式,这可以大大简化求导的过程:

    举例说明:

      假如有一个罐子,里面有黑白两种颜色的球,数目多少不知,两种颜色的比例也不知。我 们想知道罐中白球和黑球的比例,但我们不能把罐中的球全部拿出来数。现在我们可以每次任意从已经摇匀的罐中拿一个球出来,记录球的颜色,然后把拿出来的球再放回罐中。这个过程可以重复,我们可以用记录的球的颜色来估计罐中黑白球的比例。假如在前面的一百次重复记录中,有七十次是白球,请问罐中白球所占的比例最有可能是多少?很多人马上就有答案了:70%。而其后的理论支撑是什么呢?

    我们假设罐中白球的比例是 p,那么黑球的比例就是1-p。
    因为每抽一个球出来,在记录颜色之后,我们把抽出的球放回了罐中并摇匀,所以每次抽出来的球的颜色服从同一独立分布。
    把一次抽出来球的记录颜色称为一次抽样。
    在一百次抽样中,七十次是白球的概率是 P(Data|M)。
    其中,Data 是每次取出球是白色的数量所有的数据,M 是所给出的模型(可以认为由 p 值唯一决定)。 如果第一抽样的结果记为 x1,第二抽样的结果记为x2... 那么 Data = (x1,x2,…,x100),x1,x2,…,x100 ∈ {0, 1}。
    可有古典概型计算 P(Data|M)=
    (待续……)

     

    最大似然估计的一般求解过程:1) 写出似然函数;2) 对似然函数取对数;3) 求导数 ;4) 解似然方程

     

    参考文章:https://blog.csdn.net/u014182497/article/details/82252456

  • 相关阅读:
    脏读 幻读 不可重复读
    按位与、或、异或等运算方法
    java适配器模式
    servlet/filter/listener/interceptor区别与联系
    Struts2、SpringMVC、Servlet(Jsp)性能对比 测试
    Struts2的优点与Struts1的区别:
    ITOO 第一个任务,新建界面
    导出word使用模版
    【Web前端】---js调用本地应用程序
    JQuery经典小例子——可编辑的表格
  • 原文地址:https://www.cnblogs.com/shanger/p/13021780.html
Copyright © 2011-2022 走看看