在Kneser-Ney平滑中,如何处理看不见的单词?


15

从我所看到的,(二阶)Kneser-Ney平滑公式在某种程度上给定为

PKN2(wn|wn1)=max{C(wn1,wn)D,0}wC(wn1,w)+λ(wn1)×Pcont(wn)

归一化因子为λ(wn1)

λ(wn1)=DwC(wn1,w)×N1+(wn1)

和单词w_n的延续概率Pcont(wn)wn

Pcont(wn)=N1+(wn)wN1+(w)

其中N1+(w)是在以下单词中看到的上下文数w,或更简单地,是在给定单词w之前的不同单词\ bullet的数量。据我了解,该公式可以递归应用。w

现在,对于不同的n-gram长度,此方法可以很好地处理未知上下文中的已知单词,但是无法解释的是当词典单词超出单词时该怎么办。我尝试按照此示例进行说明,该示例指出在unigram的递归步骤中,Pcont(/)=PKN0(/)=1V。然后,文档使用这两个引号Chen和Goodman来证明上述公式为PKN1(w)=Pcont(w)

我看不出在存在未知单词w = \ text {unknown}的情况下它是如何工作的w=unknown。在这些情况下,Pcont(unknown)=0something因为显然,未知词对训练集没有任何作用。同样,n-gram的计数将为C(wn1,unknown)=0

此外,如果遇到未知单词序列(例如,OOD单词的三字母组合,整个\ sum_ {w'} C \ left(w_ {n-1},w'\ right)wC(wn1,w)项可能为零。

我想念什么?


我也在KN上挣扎。我认为看不见的二元组P(w1w2)的概率可能会退回到最后一个字母组合w2的延续概率。当您留下看不见的字母组合时,您一无所有。接下来做什么?我不知道。
momobo 2014年

我目前正在尝试自己实施KN,并且遇到了同样的问题。你们两个都设法找到解决方案吗?
jbaiter

我退回到了Good-Turing平滑处理看不见的字母组合(将幂函数拟合到频率和频率),结果却有所不同。
sunside

Answers:


6

Dan Jurafsky发表了有关N-Gram模型章节,其中谈到了这个问题:

在递归结束时,用均匀分布对字母组合进行插值:

PKN(w)=max(cKN(w)d,0)wcKN(w)+λ(ϵ)1|V|

如果我们想包含一个未知单词<UNK>,则将其作为计数为零的常规词汇条目包含在内,因此其可能性为:

λ(ϵ)|V|

我试图找出这意味着什么,但是不确定仅意味着。如果是这种情况,并且您假设随着计数变为零,则会变为,根据:LIM X 0 X λ ε dϵlimx0xλ(ϵ)d

λ(wi1)=dc(wi1)|{w:c(wi1,w)>0}|

那么未知字词仅会获得折扣的一部分,即:

λ(ϵ)|V|=d|V|

我对这个答案完全没有信心,但想把它弄出来,以防它引发更多的想法。

更新: 进一步研究,似乎通常用于表示空字符串(“”),但仍不清楚这如何影响的计算。 仍然是我的最佳猜测ϵλd|V|


2
好的答案,但像您一样,我对它也不是100%自信。我在python中实现了perl脚本research.microsoft.com/en-us/um/redmond/groups/srg/papers/…的一个版本-但意识到,只有当您的词汇量封闭时,它才能按原样工作(0问题) )-即所有测试会标也在训练中。如由Jan建议lagunita.stanford.edu/c4x/Engineering/CS-224N/asset/slp4.pdf我预处理期间替换的每个单词与<UNK>第一个实例。但是,在进行分区时,有一些测试会标不在训练中,例如“ goofedup”。所以我用d / | V | 这里。谢谢!
乔什·莫雷尔

1

<UNK>尽管Jurafsky建议选择训练中很少出现的单词并将其更改为,但是有很多方法可以训练模型<UNK>

然后像往常一样简单地训练概率。

观看此视频,始于3:40 –

https://class.coursera.org/nlp/lecture/19

另一种方法是简单地将单词视为<UNK>第一次在训练中出现,尽管根据我的经验,这种方法将太多的概率分配给<UNK>


0

仅有几点想法,我远不是该问题的专家,所以我不想提供这个问题的答案,而只是对其进行分析。

最简单的事情是计算迫使总和为一。这是合理的,因为在训练集中永远不会看到空字符串(什么也不能预测),并且总和必须为1。如果是这种情况下,λ ε :可以估算 λ ε =λ(ϵ)λ(ϵ)

λ(ϵ)=1wmax(CKN(w)d,0)wCKN(w)
CKN(w)

另一种选择是<unk>使用Randy提到的方法来估计概率,并将其作为常规标记。

λ(ϵ)|V|


答案被认为是实际答案。
Michael R. Chernick
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.