Perplexity 是一个与自然语言处理相关的指标。
首先,文章提到作者因项目需要关注 transformer 相关进展,并计划从算法(包括 NLP、CV、多模态下的 transformer 网络结构)、训练(transformer 的分布式训练)、部署(transformer 的 tvm 量化与推理)五个方面介绍 transformer,本系列的第一篇侧重介绍 NLP 中常用的 perplexity 指标的含义。
文中会先从熟悉的 entropy 指标开始,逐步介绍针对自然语言的改进版 N-gram Entropy 指标,最后介绍 perplexity 指标。
关于 perplexity 指标是否越低越好,在 XLNet 论文中提到越低的 perplexity 可能会损害下游任务的精度,而在 RoBERTa 论文中则指出对于像 RoBERTa 这样 encoder-only 结果的网络,perplexity 越低在 NLU 任务表现就越好。因此,perplexity 是不错的引领性指标,但最终的判别标准还是得结合下游任务表现一起考察。
总的来说,Perplexity、Cross-Entropy、Bits Per Character 都是围绕熵来刻画语言模型的信息量和复杂度。最后作者强烈推荐阅读《Evaluation Metrics for Language Modeling》,并表示自己刚上手 transformer 相关内容,难免有错,欢迎指正。如果想了解更多关于 transformer 的知识,可以关注作者。
关联流派:Ambient,Progressive Rock,Classical●Disarming定义/描述:Disarming指的是解除武装和令人放松的音乐风格,通常具有温暖和亲和的特质。典型使用:用于表现亲切和温暖情感的音乐作品。示例:Norah Jones的《Don't Know Why》。关联流派:Jazz,Folk,Singer-Songwriter●Discerning定义/描述:Discerning指的是有眼光和鉴赏力的音乐风格,通常具有高雅和复杂的特质。典型使用:用于表现精致和复杂情感的音乐作品。示例:Miles Davis的《Kind of Blue》。关联流派:Jazz,Classical,Progressive Rock●Dischordant定义/描述:Dischordant指的是不和谐和刺耳的音乐风格,通常具有冲突和不稳定的音效。典型使用:用于表现紧张和冲突情感的音乐作品。示例:Schoenberg的《五首管弦乐作品》。关联流派:Modern Classical,Avant-garde,Experimental●Discrete定义/描述:Discrete指的是离散和独立的音乐风格,通常具有清晰和独立的音符和音效。典型使用:用于表现清晰和独立情感的音乐作品。示例:Philip Glass的极简主义作品。关联流派:Minimalism,Electronic,Classical●Disjunct定义/描述:Disjunct指的是不连续和跳跃的音乐风格,通常具有突兀和不连贯的旋律。典型使用:用于表现不规则和跳跃情感的音乐作品。
大家好,我是aaronxic,大家可以叫我小A。最近由于项目需要开始关注transformer相关的进展,结果眼花缭乱的工作让大脑计算存储都严重溢出。围绕transformer相关的进展日新月异,难怪陆奇都说都有点赶不上大模型时代的狂飙速度。网上不乏大量优秀文章介绍transformer的方方面面,观点非常有insight,分析也极尽的详实。但是从新手角度看仍然希望有这样的transformer上手资料内容覆盖相对较全。能把transformer相关的算法、训练和部署方法一齐串讲,让新手快速建立该领域的know-how详略得当,兼顾bottom-up和top-down。对容易被大部分文章忽略的细节bottom-up详细理清逻辑链,对大量看似独立但又相互关联的知识进行top-down梳理。笔者小A从自己实际入坑的经验出发,尝试总结梳理出新手友好的transformer入坑指南。一方面能倒逼自己理清知识脉络,另一方面希望能让后面的新同学少走弯路,更快拿到自己想要的知识。本系列计划从以下五个方面对transformer进行介绍算法1:NLP中的transformer网络结构算法2:CV中的transformer网络结构算法3:多模态下的transformer网络结构训练:transformer的分布式训练部署:transformer的tvm量化与推理由于笔者小A并没有亲手撸过上述内容的所有细节,大部分是通过研究代码和精读优秀文章的方式总结而来,本质上是个拾人牙慧的知识搬运工,所以终究是纸上谈兵。因此希望各方有实际经验的大佬猛锤,思维碰撞才生火花,真理越辩越明。每个方面可能由若干篇文章组成,如果对某些部分感兴趣可以关注小A,后续会逐步更新相应章节。接下来是本系列的第一篇,侧重介绍NLP中最常用的perplexity指标究竟是什么含义本文会先从大家熟悉的entropy指标开始,逐步介绍针对自然语言的改进版N-gram Entropy指标,最后介绍基于此改进的perplexity指标。
上一节回答了问题1中如何计算LM的熵,那我们追求更低的Perplexity就一定有好处吗?在XLNet论文里面说越低的perlexity可能会损害下游任务的精度RoBERTa论文里面说对于像RoBERTa这样encoder-only结果的网络,perplexity越低那么在NLU任务表现就越好因此可见perlexity是不错的引领性指标,但最终的判别标准还是得结合下游任务表现一起考察[heading2]结尾[content]总的来说Perplexity/Cross-Entropy/Bits Per Character都是类似的东西,他们都是围绕熵来刻画LM的信息量和复杂度。最后强烈推荐阅读[Evaluation Metrics for Language Modeling](https://link.zhihu.com/?target=https%3A//thegradient.pub/understanding-evaluation-metrics-for-language-models/),配合本文食用效果更佳。此外由于笔者小A刚上手transformer相关内容,难免有错的地方,还请大佬们指正。如果后续想了解transformer在NLP/CV/多模态的算法知识,分布式训练的知识,以及如何在TVM上做PTQ量化和部署,可以关注aaronxic哦~[知乎个人主页](https://www.zhihu.com/people/aaronxic)