我为句子完成实现创建了一个一元语言模型。我有所有单词及其出现次数。
我对如何从这里比较它们感到困惑。我认为我必须计算每个案例的概率并取最大的一个。
因此,如果我有 3 个可以使用的单词,我会比较每个单词的出现次数并取最高的 ? 这是正确的实施吗?
或者我将每个单词的出现次数除以训练集的所有(不同?)单词的数量?
谢谢你。
我为句子完成实现创建了一个一元语言模型。我有所有单词及其出现次数。
我对如何从这里比较它们感到困惑。我认为我必须计算每个案例的概率并取最大的一个。
因此,如果我有 3 个可以使用的单词,我会比较每个单词的出现次数并取最高的 ? 这是正确的实施吗?
或者我将每个单词的出现次数除以训练集的所有(不同?)单词的数量?
谢谢你。
如果您不想使用任何平滑(Turing、Kneser-Ney 等),请将每个单词(表单)的原始计数除以您的语料库(文本)的总字数。这将为您提供每个单词的概率。现在您并不总是选择概率最高的那个,因为您生成的文本如下所示:
'the the the the the the the ...'
相反,你必须根据它们的概率来选择单词(在这里寻找解释)。
顺便说一句,如果你想要改进它的建议,你必须发布代码。