根据结果的分布来反推一些参数的设计

    别人博客的一个例子。

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

    很多人马上就有答案了:70%。而其后的理论支撑是什么呢?

    我们假设罐中白球的比例是p,那么黑球的比例就是1-p。因为每抽一个球出来,在记录颜色之后,我们把抽出的球放回了罐中并摇匀,所以每次抽出来的球的颜 色服从同一独立分布。

    这里我们把一次抽出来球的颜色称为一次抽样。题目中在一百次抽样中,七十次是白球的,三十次为黑球事件的概率是P(样本结果|Model)。

    如果第一次抽象的结果记为x1,第二次抽样的结果记为x2….那么样本结果为(x1,x2…..,x100)。这样,我们可以得到如下表达式:

    P(样本结果|Model)

      = P(x1,x2,…,x100|Model)

      = P(x1|Mel)P(x2|M)…P(x100|M)

      = p^70(1-p)^30.

    好的,我们已经有了观察样本结果出现的概率表达式了。那么我们要求的模型的参数,也就是求的式中的p。

    那么我们怎么来求这个p呢?

    不同的p,直接导致P(样本结果|Model)的不同。

    好的,我们的p实际上是有无数多种分布的。如下:

    极大似然估计 - 图1

    那么求出 p^70(1-p)^30为 7.8 * 10^(-31)

    p的分布也可以是如下:

    极大似然估计 - 图2

    那么也可以求出p^70(1-p)^30为2.95* 10^(-27)

    那么问题来了,既然有无数种分布可以选择,极大似然估计应该按照什么原则去选取这个分布呢?

    答:采取的方法是让这个样本结果出现的可能性最大,也就是使得p^70(1-p)^30值最大,那么我们就可以看成是p的方程,求导即可!

    那么既然事情已经发生了,为什么不让这个出现的结果的可能性最大呢?这也就是最大似然估计的核心。

    我们想办法让观察样本出现的概率最大,转换为数学问题就是使得:

    p^70(1-p)^30最大,这太简单了,未知数只有一个p,我们令其导数为0,即可求出p为70%,与我们一开始认为的70%是一致的。其中蕴含着我们的数学思想在里面。

    类比到CRF的训练过程
    感觉就类似的用到了这个方法

    CRF里的各种参数实际上就是为了最大化正确序列的出现概率
    (也对应着上文的已经观察到的70%白球的实际情况,类比就是正确的序列,这个情况可能有很多的概率分布,在参数选择里需要参数使得这个概率最大,也就是CRF的训练过程)