Kneser-Ney平滑(Kneser-Ney smoothing)简介

Chat-GPT 3.5给的答案,先记在这里,后面有机会深入了解再补充。

Kneser-Ney平滑(Kneser-Ney smoothing)是一种用于解决语言模型中零概率问题的平滑技术。它是由Kneser和Ney在1995年提出的,被广泛应用于n-gram语言模型中。

在语言模型中,n-gram是指由n个连续的词组成的序列。n-gram语言模型的目标是计算给定一个上下文的情况下,下一个词的概率。然而,当模型遇到未在训练数据中出现的n-gram时,概率会变为零,这会导致模型在生成或评估文本时出现问题。

Kneser-Ney平滑通过引入一个调整因子来解决零概率问题。它的基本思想是利用n-gram的上下文信息来估计未见n-gram的概率。具体来说,Kneser-Ney平滑使用两个概率值:补充概率(continuation probability)和回退概率(discounted probability)。

  • 补充概率:补充概率表示给定上下文中下一个词的概率。它通过计算给定上下文的n-gram数量和包含该n-gram的不同上下文数量之比来估计。补充概率提供了一个对未见n-gram的概率估计。
  • 回退概率:回退概率表示在给定上下文中下一个词的概率。它通过计算给定上下文的n-1 gram数量和包含该n-1
    gram的不同上下文数量之比来估计。回退概率提供了一个对已见n-gram的概率估计。

Kneser-Ney平滑的计算过程 如下:

(1)统计训练数据中每个n-gram的出现次数和不同上下文的数量。

计算补充概率和回退概率。

(2)在计算概率时,使用补充概率和回退概率来调整未见和已见n-gram的概率。

(3)Kneser-Ney平滑通过利用上下文信息来提高语言模型的性能,尤其是在处理未见n-gram时。它在n-gram语言模型中被广泛使用,并在自然语言处理任务中取得了良好的效果。

相关推荐
fly-974 小时前
LLM大模型微调入门Lora(LlamaFactory)
chatgpt·nlp
小森( ﹡ˆoˆ﹡ )1 天前
词嵌入方法(Word Embedding)
人工智能·机器学习·自然语言处理·nlp·word·embedding
人工智障调包侠2 天前
Pytorch从0复现worc2vec skipgram模型及fasttext训练维基百科语料词向量演示
人工智能·pytorch·自然语言处理·nlp·word2vec·词向量·skipgram
Power20246663 天前
NLP论文速读(NeurIPS 2024)|大语言模型在评估的时候更倾向于自己生成的内容
人工智能·深度学习·机器学习·计算机视觉·语言模型·自然语言处理·nlp
Jacob_AI3 天前
P-tuning、Prompt-tuning和Prefix-tuning区别是什么?
语言模型·nlp·prompt·transformer
医学小达人5 天前
Python 分子图分类,GNN Model for HIV Molecules Classification,HIV 分子图分类模型;整图分类问题,代码实战
nlp·图神经网络·gnn·图计算·分子图分类·整图分类模型·hiv分子图分类
Power20246666 天前
NLP论文速读|LongReward:基于AI反馈来提升长上下文大语言模型
人工智能·深度学习·机器学习·自然语言处理·nlp
angleboy88 天前
【LLM Agents体验 1】Dify框架的安装指南
人工智能·语言模型·大模型·nlp
龙的爹23338 天前
论文 | Evaluating the Robustness of Discrete Prompts
人工智能·gpt·自然语言处理·nlp·prompt·agi
Watermelo61710 天前
从模糊搜索到语义搜索的进化之路——探索 Chroma 在大模型中的应用价值
python·机器学习·搜索引擎·语言模型·自然语言处理·数据挖掘·nlp