首页 > 其他分享 >:)语言模型的评价-PPL迷惑度-从语言模型说起-|

:)语言模型的评价-PPL迷惑度-从语言模型说起-|

时间:2023-03-31 16:24:32浏览次数:42  
标签:似然 10 概率 语言 模型 PPL 句子

语言模型的评价-PPL迷惑度-从语言模型说起

一语言模型

1.1语言模型概念:

  1 计算一个句子的概率模型

  2 也就是能够判断一个句子是否是人类语言,输出其概率。

 

1.2推导

 

 1.3它的概率表示为:

 

 1.4存在两个缺陷:

1、參数空间过大:条件概率P(wn|w1,w2,..,wn-1)的可能性太多,无法估算,不可能有用;
通俗的解释为,w1到wn-1个词的组合很多,很多情况后面都会接 wn词。

2、数据稀疏严重:对于非常多词对的组合,在语料库中都没有出现,依据最大似然估计得到的概率将会是0。
通俗解释为,汉语中词组太多,词表中不一定都包含,所以计算结果可能为0.

  

1.5 最大似然估计

最大似然估计是一种用于估计模型参数的统计方法。

应用 的是 似然函数,求对数(乘法变加法), 然后 求导,获取最大值。

作用:最大似然估计 就是为了求这个连乘函数的结果即 概率值。

 1.6 解决缺陷

为了解决參数空间过大的问题。引入了马尔科夫假设:随意一个词出现的概率只与它前面出现的有限的一个或者几个词有关。

引出 一元语言模型  二元语言模型

 

 

 

 

 

 

二 评价语言模型

原理

参考链接:如何评价语言模型的好坏——困惑度、混淆度 (Perplexity) | Sentiment Mining (sentiment-mining.blogspot.com)

迷惑度基本思想:对 测试集中的句子,给出高概率值的 语言模型就是 性能较好的模型。

  测试集中的句子都是正常的句子。

猜想:一个对话模型怎么测试, 句子输入,第一个字,给到模型,输出第二个字的概率,,然后前两个字输入 给出第三个字的概率,一直到最后一个字。那么会得到n-1个p,加权或其他计算,得到的值 应该越大越好。

 

由公式, 概率越大越好, 迷惑度越小越好。

更直观的理解:

Perplexity其实表示的是average branch factor,大概可以翻译为平均分支系数。即平均来说,我们预测下一个词时有多少种选择。 举个例子来说,对于一个长度为N的,由0-9这10个数字随机组成的序列。由于这10个数字随机出现,所以每个数字出现的概率是<span id="MathJax-Span-196" class="mrow"><span id="MathJax-Span-197" class="mfrac"><span id="MathJax-Span-198" class="mn">1<span id="MathJax-Span-199" class="mn">10。也就是,在每个点,我们都有10个等概率的候选答案供我们选择,于是我们的perplexity就是10(有10个合理的答案)。 于是,在看到一个语言模型报告其perplexity是109时,我们就可以直观的理解为,平均情况下,这个语言模型预测下一个词时,其认为有109个词等可能地可以作为下一个词的合理选择。

 代码实现

(45条消息) 深度学习 pytorch 困惑度计算方法_一如年少模样丶的博客-CSDN博客

 

 

 

参考:

参考链接: 从语言模型说起:深入浅出讲解语言模型 - 知乎 (zhihu.com)

最大似然估计:参数估计(二).最大似然估计 - 知乎 (zhihu.com)

语言模型评价指标:通俗解释困惑度 (Perplexity)-评价语言模型的好坏 - 知乎 (zhihu.com)

标签:似然,10,概率,语言,模型,PPL,句子
From: https://www.cnblogs.com/lx63blog/p/17275840.html

相关文章

  • 逍遥自在学C语言 | 第一个C语言程序 九层之台起于垒土
    一、人物简介第一位闪亮登场,有请今后会一直教我们C语言的老师——自在。第二位上场的是和我们一起学习的小白程序猿——逍遥。二、C语言简介C语言是一种高级语言,运行效率仅次于汇编,支持跨平台C语言是学习其他高级语言的基础,如C++、Java和Python三、编程环......
  • 马科维兹资产组合选择模型
    组合构造问题可以归纳为多个风险资产和一个无风险资产的情况。在两风险资产的例子中,该问题可分为三步:首先,确定可行集的风险收益权衡;然后,通过计算使资本配置线斜率最大的个资产权重权重确定最优风险组合;最后确认最合适的投资组合,由无风险资产和最优风险组合构成。投资者面临的......
  • C语言编程练习_查找数组中不重复的数字
    题目描述:给定一个整形数组空间arr,数据中包含两个一样的数字若干,只有一个数字是单独一个。设计一个函数把这个出现一次的数字返回出来。 解决方案一:穷举法:假设arr数组中的每个元素都是重复的。也可能是不重复的(效率差)#include<stdio.h>intfun1(intarr[],intlen){  ......
  • 微信小程序i18n文件夹新增语言文件报:module is not defined
    背景:微信开发者工具的版本:1.06.2303060Stable 解决步骤:1.首先需要排除的是代码逻辑层面没有问题,对应要require的js文件也存在。2.升级微信开发者工具到最新版本3.打开详情=》本地设置,把“将JS编译成ES5”的去掉勾选后再次选择4.重新打开项目......
  • perl语言
    读取文件  文件操作时候,"<"表示读取,">"表示写入,“>>”表示追加  如果读取成功,就返回一个不为0的数字,作为判断依据。正则匹配逐行读取文件,并进行正则匹配。  使用while(<文件句柄>)对文件进行逐行读取  每一行的值会自动保存在一个$_的特殊变量中  获取该行......
  • 好饭不怕晚,Google基于人工智能AI大语言对话模型Bard测试和API调用(Python3.10)
    谷歌(Google)作为开源过著名深度学习框架Tensorflow的超级大厂,是人工智能领域一股不可忽视的中坚力量,旗下新产品Bard已经公布测试了一段时间,毁誉参半,很多人把Google的Bard和OpenAI的ChatGPT进行对比,GoogleBard在ChatGPT面前似乎有些技不如人。事实上,GoogleBard并非对标ChatGPT......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-自然语言智能获取颜色从0到1快速入门——官网
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • 快来玩AI画图!StableDiffusion模型搭建与使用入门~
    前言最近AI很火......
  • C语言 特殊例子及说明
    #include<stdio.h>main(){charc;c=0345;printf("%d\n",c);}16进制:每个16进制转成4位2进制,分组计算8进制345:转2进制,每个8进制转成3位2进制2进制:011100101229:1286432168421补码:11......
  • 三菱FX3U,用ST语言与梯形图,混合编写的16仓位的配方程序,程序大小约12984步
    三菱FX3U,用ST语言与梯形图,混合编写的16仓位的配方程序,程序大小约12984步,可以配1到16种不同的产品,16种配方可以根据自己的需求随意设置配方数量与产品数量,可以用条形码设置配方数据与生产数量,也可以使用触摸屏手动设置,共使用了两台秤同时工作,一台秤配8个仓位的配料,使用FX3U485ADP走......