您的位置:首页 > 其它

自然语言处理基础(4)--数据平滑技术

2017-06-21 09:05 363 查看
        n元语法模型中,在统计结果中出现了零概率事件反映语言的规律性,即这种现象本来就不该出现,但更多的时候是由于语言模型的训练文本T的规模以及其分布存在着一定的局限性和片面性。这就是所谓的“数据稀疏”问题。

        所谓“数据平滑技术”,是指为了产生更准确的概率来调整最大似然估计的技术,基本思想就是提高低概率(如零概率),降低低概率,尽量使概率分布趋于平均。

     1.Laplace法则

        每个实例(分子)的出现次数都加1(或者其他数值),从而所有实例出现次数都不会为0,,为了保证所有实例的概率总和为1,将分母增加实例的种类数;即:

                                                                    


      2.Good-Turing估计

        基本思想是:对于任何一个发生r次的n-gram,都假设它发生r*次,即:

                                                                                                                       


      3.绝对折扣和线性折扣

        在绝对折扣找你哥,所有的非零MLE概率用一个小的常数折扣,由此得到的概率被均匀分配到未知事件上。

        与绝对折扣不同,线性折扣中,所有的非零MLE频率的折扣量与其自身的频率值成线性关系

      4.Witten-Bell平滑算法

        这个算法的思想是:如果测试过程中的一个实例在训练语料中未出现,那么,它就是一个新事物,也就是说,这是它第一次出现,可以用在训练语料中看到新实例的概率来代替未出现实例的概率。

      5.扣留估计算法

        这个算法的思想是:把训练数据分成两部分,一部分建立最初的模型,然后另一部分来精炼这个模型,具体公式见《自然语言处理基本理论和方法》

      6.交叉校验算法

        扣留估计算法有个缺点,就是最初的训练数据比较少的时候,得到的概率估计是不可靠的

        交叉校验的思想在于,训练数据的每一部分既作为最初训练数据,又作为留存数据,对这两部分数据分别训练和平滑,然后根据n0相对于n1的比率进行加权,具体公式见《自然语言处理基本理论和方法》

      7.删除插值法和Katz回退算法

        如果两对词同时出现0次:C(send the) = C(send thou) = 0,按照之前任何一个平滑方法都得到两个概率相等,但是明显前者要大于后者的。

        删除插值法是这样做的

                                     


         可以说,删除插值和Katz回退法都使用低阶分布的信息来确定计数为0的n元语法的概率;不同的是:在Katz回退中,只有高阶计数为0时才启用低阶计数,而删除插值中,高阶计数和低阶计数同时起作用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: