首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在BERT文件中找出如何计算SQuAD任务的损失有困难

在BERT文件中找出如何计算SQuAD任务的损失有困难
EN

Data Science用户
提问于 2019-04-20 01:57:53
回答 1查看 81关注 0票数 3

伯特文件

https://arxiv.org/pdf/1810.04805.pdf

第4.2节介绍了SQuAD培训。

据我所知,这里有两个额外的参数,它们是两个向量,与隐藏的尺寸相同,与BERT中的上下文化嵌入相同。他们是S(代表开始)和E(代表结束)。

对于每一个,一个softmax与S和每一个最终的上下文化嵌入,以获得一个正确的开始位置得分。对于E和正确的末端位置也是一样的。

我开始讲这部分了。但我很难弄清楚标签和最终损失是如何计算的,这在这一段中有描述。

“最大得分跨度作为预测。训练目标是正确的开始和结束位置的逻辑概率。”

他们所说的“最大得分跨度作为预测”是什么意思?

此外,“训练目标是正确的开始和结束位置的逻辑可能性”如何发挥作用?

来文来源:

https://ljvmiranda921.github.io/notebook/2017/08/13/softmax-and-the-negative-log-likelihood/

它说日志的可能性只适用于正确的类。因此,我们只计算正确位置的软件最大值,而不是任何正确的位置。

如果这个解释是正确的,那么损失将是

代码语言:javascript
复制
Loss = -Log( Softmax(S*T(predictedStart) / Sum(S*Ti) ) -Log( Softmax(E*T(predictedEnd) / Sum(S*Ti) )
EN

回答 1

Data Science用户

回答已采纳

发布于 2019-04-20 14:05:02

从您的描述来看,对于输入文本中的每个位置i,模型预测了p_S(i) = \mathbb P(\text{correct start position is } i)p_E(i) = \mathbb P(\text{correct end position is } i).,现在让\hat s = \arg\max_i p_S(i)\hat e = \arg\max_i p_E(i)成为最可能的开始和结束位置(根据模型)。

然后,把“最大评分跨度作为预测”仅仅是指在预测时输出(\hat e, \hat s)

然后,“训练目标是正确开始和结束位置的逻辑可能性”意味着,如果正确的开始和结束位置是s^*e^*,则它们试图最大限度地提高s^*e^*的预测概率。如果起始位置和结束位置是独立的,那么这等于p_S(s^*) p_E(e^*),然后取负日志,损失就变成了

L(e^*, s^*) = -\log p_S(s^*) -\log p_E(e^*).
票数 2
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/49621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档