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语言模型中被广泛使用,并在自然语言处理任务中取得了良好的效果。

相关推荐
uncle_ll2 天前
Llama 3 私有化落地全栈实战:从 Ollama 极速部署到 LLaMA Factory LoRA 定制微调
llm·nlp·llama·ollama·大模型微调
墨心@2 天前
阶段 1:一次模型调用
自然语言处理·nlp·agent·codex
阿图灵5 天前
基于 GRU 的 Seq2Seq 中英机器翻译:从 Tatoeba 语料到 BLEU 0.195
深度学习·gru·nlp·机器翻译·seq2seq
网络工程小王5 天前
【HCIE-AI】4.NLP 核心任务与技术演进学习笔记
人工智能·深度学习·自然语言处理·nlp·transformer
Lee_jerome5 天前
python神经网络编程入门(三十五)——Transformer 整体架构——一张图看懂全貌
nlp·transformer·encoder·注意力机制·decoder·交叉注意力·self-attention
Lee_jerome6 天前
python神经网络编程入门(三十三)——多头注意力(Multi-Head Attention)
深度学习·nlp·transformer·注意力机制·多头注意力·self-attention
Lee_jerome9 天前
python神经网络编程入门(三十)——Transformer 从 RNN 到注意力:模型为什么需要“瞄一眼“
rnn·深度学习·nlp·transformer·attention·注意力机制·序列建模
阿图灵9 天前
基于 LSTM 的中文电商评论情感分类:从数据处理到 91% 准确率实战
人工智能·深度学习·分类·nlp·lstm·情感分类
方品11 天前
【无标题】
服务器·人工智能·深度学习·nlp
今日无bug12 天前
用 Prompt 做 NLP 任务开发:几分钟构建一个推理系统
llm·nlp