首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

NLP中对困惑感到困惑?

炼丹笔记干货 作者:时晴 困惑(Perplexity)在NLP中是个最流行的评估指标,它用于评估语言模型学的到底有多好.但是很多炼丹师可能至今对"困惑"依然感到困惑,这篇就把这个讲清楚.假设我们要做个对话机器人...那就是困惑度了,它衡量了模型对自己预估结果的不确定性.低困惑说明模型对自己很自信,但是不一定准确,但是又和最后任务的表现紧密相关.然后它又计算起来非常简单,用概率分布就可以计算. 困惑如何算?...上式让我们联想到了信息熵, unigram的熵就是6 * (1/6 * 2.64) = 2.64: 知道上式困惑就很好算了,就是熵的指数: 最终我们算出困惑约等于6.这不就是我们vocabulary...低困惑不能保证模型更好.首先,正如我们在计算部分所看到的,模型最糟糕的困惑是由语言的词汇量决定的。...第二,也是更重要的一点,困惑和所有内部评估一样,不提供任何形式的理智检查,同困惑的模型也是有好有坏的。

1.1K10

通俗讲解语言模型的评价指标-困惑

本文主要介绍语言模型的评价指标困惑(perplexity)。...语言模型简单来说就是计算句子的概率值,通常认定测试集中的句子为模拟真实生产环境中的正常句子,因此在训练数据集上训练好的语言模型,计算在测试集中的正常句子的概率值越高说明语言模型的越好,而这正是困惑(perplexity...困惑是语言模型效果好坏的常用评价指标,计算困惑的公式如下: 在测试集上得到的困惑越低,说明语言模型的效果越好。...通过上面的公式也可以看出,困惑实际上是计算每一个单词得到的概率导数的几何平均,因此困惑可以理解为平均分支系数(average branching factor),即模型预测下一个单词时的平均可选择的单词数量...image.png 上面都是在计算一个句子的困惑,如果测试集中有n个句子,只需要计算出这n句子的困惑,然后将n个困惑累加取平均,最终的结果作为训练好的语言模型的困惑

2.5K20
您找到你想要的搜索结果了吗?
是的
没有找到

Python最令人困惑的操作符

可变元组 03 您很可能熟悉Python中的元组和列表数据结构。这是Python中两种不同类型的可迭代一维数组,它们之间只有一个键差。元组是不可变的结构,这意味着一旦定义,元组就不能被更改。...然而,Python仍然具有试图改变不可变类型时可能会出现的抛出。考虑到这个功能,我们可以预期下面的代码会显示一个错误,说明元组是不可变的。...Python的有趣之处在于,在基类内部的数据类型和我们可能在基类外部使用的数据类型之间基本上没有关键区别。这意味着我们实际上可以用纯Python重写这些类型。...信不信由你,这种类型错误和元组可变性是Python的特性,而不是bug。乍一看,这里似乎犯了某种错误,但考虑到Python的方法学,这一切在某种程度上确实是有意义的。...这一切都与Python如何处理数据有关,更重要的是,plus-equals如何处理不同的数据类型。这就是为什么正等号这么棒的部分原因!

64510

令人困惑的TensorFlow!

选自jacobbuckman.com 作者:Jacob Buckman 机器之心编译 虽然对于大多数人来说 TensorFlow 的开发语言是 Python,但它并不是一个标准的 Python 库。...但让我没想到的是,学习曲线相当的陡峭,甚至在加入该项目几个月后,我还偶尔对如何使用 TensorFlow 代码来实现想法感到困惑。...理解 TensorFlow TensorFlow 不是一个标准的 Python 库 大多数 Python 库被编写为 Python 的自然扩展形式。...会话有着那样令人困惑的殊荣是因为其反直觉的命名却又普遍存在—几乎每个 TensorFlow 呈现都至少一次明确地调用 tf.Session()。...令人困惑的是,tf.Print 实际上是一种具有输出和副作用的 Tensorflow 节点!它有两个必需参数:要复制的节点和要打印的内容列表。

1.2K30
领券