Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nlp 愚蠢的回退实现澄清_Nlp_Smoothing - Fatal编程技术网

Nlp 愚蠢的回退实现澄清

Nlp 愚蠢的回退实现澄清,nlp,smoothing,Nlp,Smoothing,大家好,我正在为一个项目实施(第2页,等式5)平滑技术,我对它的实施有一个问题。这是NLP中使用的一种平滑算法,我想良好的图灵是最著名的类似算法 该算法的简要说明如下: 当试图找出单词出现在句子中的概率时,它将首先在n-gram级别查找单词的上下文,如果没有该大小的n-gram,它将递归到(n-1)-gram,并将其分数乘以0.4。递归在单位格处停止 因此,如果我想在“晴朗的一天”的上下文中找到“一天”的概率,首先要看看语料库中是否存在三元组“晴朗的一天”,如果不存在的话,它会尝试使用二元组“晴

大家好,我正在为一个项目实施(第2页,等式5)平滑技术,我对它的实施有一个问题。这是NLP中使用的一种平滑算法,我想良好的图灵是最著名的类似算法

该算法的简要说明如下: 当试图找出单词出现在句子中的概率时,它将首先在n-gram级别查找单词的上下文,如果没有该大小的n-gram,它将递归到(n-1)-gram,并将其分数乘以0.4。递归在单位格处停止

因此,如果我想在“晴朗的一天”的上下文中找到“一天”的概率,首先要看看语料库中是否存在三元组“晴朗的一天”,如果不存在的话,它会尝试使用二元组“晴朗的一天”,最后只会得到“一天”的频率除以语料库大小(训练数据中的单词总数)

我的问题是:我是否每次减小n-gram的大小时都将分数乘以0.4

因此,在上述示例中,如果我们无法找到三克或双克,则最终得分为:

0.4*0.4*频率(天)/语料库大小


或者我只是在最后一级乘以一次,所以不管我要做多少次退避,我只是将最终分数乘以0.4?

基本上,我阅读了你在上面的数学中描述的等式5

因此,对于没有观测到任何实例的“晴天”,您可以计算S(“天”|“晴天”)。如果找不到“晴朗的一天”这三元图,你可以在等式5中选择第二种情况,并将S(“day”|“a sunny”)估计为alpha*S(“day”|“sunny”)

如果您再次没有记录“晴天”的观测值,则将S(“日”|“晴天”)近似为alpha*S(“日”),即终端情况f(“日”)/N(观测到的单位格数)

通过将alpha设置为0.4,您可以得到上面所写的内容

希望这有帮助


-bms20

是的,由于找不到搜索的短语,每次向下移动到较低的n-gram模型时,都需要乘以0.4


根据公式,每次0.4乘以“愚蠢的退避”分数。

是的,每次乘以