首先简单介绍下语言模型的标准评价指标:

1、 混淆度 (Perplexity) 用来衡量一个语言模型在未见过的的字符串S上的表现。对于一个长度为N的字符串S,语言模型给出概率P(S),对应的混淆度 (Perplexity)为 2^{-(1/N) log2 P(S)}。其中字符串长度单位可以是字符 (characters) 也可以是单词 (words).

2、 bits-per-character (bpc),当计算基于字符长度单位的混淆度 (Perplexity)时,Perplexity = 2^bpc.

bpc和ppl值越小越好。

常都遵循着以下规范:
  • 训练集 (Train)/开发集 (dev)/测试集 (test)的标准划分规范
  • 语言模型预测的单位(通常是单词而不是字符)
  • 固定的 word tokenization
  • 处理未在词表中出现的单词 (out-of-vocabulary (OOV))

困惑度ppl(perplexity)

ppl是用在自然语言处理领域(NLP)中,衡量语言模型好坏的指标。它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize,公式为:

S – 当前句子;
N – 句子长度;
p(wi) – 第i个词的概率
p(wi|w1w2w3…wi-1) – 这个表示基于前i-1个词,计算得出第i个词的概率,但有的语言模型是可以利用双向的,不知道是不是会这样计算:p(wi|w1w2w3…wn) ;

ppl越小,p(wi)则越大,也就是说这句话中每个词的概率较高,说明这句话契合的表较好。

bits-per-character (bpc)

参考:https://stats.stackexchange.com/questions/211858/how-to-compute-bits-per-character-bpc。
有计算公式如下:

论文:《Generating Sequences With Recurrent Neural Networks》中指出:当以每个单词为一个字符计算bpc时,存在,

按照实际计算的话,存在:

推导过程如下:

参考:https://chinesenlp.xyz/zh/docs/language_modeling.html

语言模型评价指标 bpc(bits-per-character)和困惑度ppl(perplexity)相关推荐

  1. 困惑度PPL (perplexity)

    PPL是用在自然语言处理领域(NLP)中,衡量语言模型好坏的指标.它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize. PPL越小越好 公式为: S – 当前句子: N – 句 ...

  2. NLP基础知识点:困惑度(Perplexity)

    本篇内容翻译自Speech and Language Processing. Daniel Jurafsky & James H. Martin. 链接:https://web.stanfor ...

  3. 从交叉熵角度理解困惑度(perplexity)

    从交叉熵理解困惑度 我们通常使用困惑度(perplexity)来评价语言模型的好坏.通过理解困惑度,也可以让我们更加深入的理解交叉熵(CrossEntropy)的意义,也可以轻易量化模型的性能. 回顾 ...

  4. LDA主题模型绘制困惑度(perplexity)-主题数曲线——python

    主题建模作为一种基于机器学习的文本内容分析技术,一般用于推断文本文档中隐藏主题的技术.很多研究使用了基于Latent Dirichlet Allocation (LDA)的主题建模算法来处理大规模文档 ...

  5. 技术干货 | 基于MindSpore详解Perplexity语言模型评价指标

    01 原理介绍 在研究生实习时候就做过语言模型的任务,当时让求PPL值,当时只是调包,不求甚解,哈哈哈,当时也没想到现在会开发这个评价指标,那现在我来讲一下我对这个指标的了解,望各位大佬多多指教. 这 ...

  6. 统计语言模型,平滑方法,困惑度

    目录 统计语言模型 零概率问题和平滑方法 拉普拉斯平滑 Add‐One 平滑 Add‐K 平滑 插值平滑 古德-图灵估计 Katz平滑 困惑度(Perplexity) 统计语言模型 统计语言模型的意义 ...

  7. 困惑度 (perplexity)

    困惑度 (perplexity) 在自然语言处理中,对于一个语言模型,一般用困惑度来衡量它的好坏,困惑度越低,说明语言模型面对一句话感到困惑的程度越低,语言模型就越好. 对于LDA模型,最常用的两个评 ...

  8. 自然语言处理 —— 困惑度

    我们通常用困惑度(perplexity)来评估语言模型的好坏.可以探索一下交叉熵损失函数的定义.困惑度是对交叉熵损失函数做指数运算后得到的值.特别地: 最佳情况下,模型总是把标签类别的概率预测为1,此 ...

  9. 深度学习 pytorch 困惑度计算方法

    以下是我 编写的 计算 困惑度 PPL的 代码 根据困惑度的定义:(其定义是其他形式的定义非书本上的定义,实验常用的就是这种形式) 来源解释:https://stackoverflow.com/que ...

最新文章

  1. html游戏源妈简单,最简单的HTML5游戏——贪吃蛇
  2. OpenGL:画三角形程序详解笔记
  3. C# 线程问题之争用条件
  4. 依赖注入在 dotnet core 中实现与使用:2 使用 Extensions DependencyInjection
  5. 二级java题型及分值_2016年全国计算机二级java语言程序设计考试大纲
  6. 朱江洪功成身退 朱董配解体谁主格力(图)
  7. vi 命令 使用方法
  8. 采用Bert进行中文分词
  9. HLG1116-选美大赛
  10. Mac Mysql 基本操作命令
  11. php stacktrace,Laravel:如何在PhpUnit上启用stacktrace错误
  12. html转word 图片格式,html转word处理图片 java
  13. springboot项目logback.xml或者logback-spring.xml中读取不到application.yml或application.properties配置文件中的配置解决办法
  14. umount报错设备繁忙(device is busy)怎么处理?
  15. 拉普拉斯矩阵(Laplacian matrix)及其变体详解
  16. 认识很浅的云南最后的秘境
  17. 批处理 bat cmd 命令大全
  18. Ring 4012PLM 打印机驱动
  19. iOS开发基础知识--碎片37
  20. 激光SLAM建图过程中的问题MessageFilter [target=odom_combined ]:Dropped 100.00% of messages so far.,解决方案

热门文章

  1. python面向对象的学习
  2. python百度地图api经纬度_python3调取百度地图API输出某地点的经纬度信息
  3. VMware NSX原理与实践----NSX防火墙详解(一)
  4. 【数据库连接问题】【靶场访问错误】Table ‘xxx‘ doesn‘t exist,文件‘Not Find‘ 可能是管理软件与终端本身的一个连接问题
  5. 为智慧城市的发展做出重要贡献的智慧楼宇系统及应用场景
  6. 图像处理之-位图(未完待續)
  7. sql学习-with as的使用-分析数据得到结果
  8. 万恶的高强度文件夹加密大师破解之笨办法
  9. 一种递归式的非零自然数全分解方法
  10. Could not get instant cpu stats: cumulative stats decrease