8

给定:

在此处输入图像描述

以及以下内容:

在此处输入图像描述

为了 :

q(runs | the, dog) = 0.5

这不应该1q(runs | the, dog): xi=runs , xi-2=the , xi-1=dog

概率是(wi 已被交换为 xi):

在此处输入图像描述

所以 :

count(the dog runs) / count(the dog) = 1 / 1 = 1

但在上面的示例中,该值为 0.5 。0.5是怎么来的?

基于http://files.asimihsan.com/courses/nlp-coursera-2013/notes/nlp.html#markov-processes-part-1

4

1 回答 1

1

数字 0.5 根本没有“到达”;作者只是为了说明而取了一个任意数字。

任何 n-gram 语言模型都由两部分组成:词汇和转换概率。并且模型“不关心”这些概率是如何得出的。唯一的要求是概率是自洽的(即,对于任何前缀,所有可能延续的概率总和为 1)。对于上面的模型,它是正确的:例如p(runs|the, dog) + p(STOP|the,dog)=1

当然,在实际应用中,我们确实对如何从一些文本语料库中“学习”模型参数感兴趣。您可以计算出您的特定语言模型可以生成以下文本:

the           # with 0.5  probability
the dog       # with 0.25 probability
the dog runs  # with 0.25 probability

根据这一观察,我们可以对训练语料库进行“逆向工程”:它可能由 4 个句子组成:

the
the
the dog
the dog runs

如果您计算该语料库中的所有三元组并将计数标准化,您会看到生成的相对频率等于屏幕截图中的概率。特别是,有1个句子以“the dog”结尾,1个句子“the dog”后跟“runs”。这就是概率 0.5 ( =1/(1+1)) 的出现方式。

于 2020-04-14T12:48:29.290 回答