使用 BERT 对单词位置进行序列标记

Sequence labeling with BERT for words position

如果我有一组句子,在这些句子中,单词之间存在一些依赖关系。 我想训练 BERT 来预测哪些词与其他词有依赖关系。

例如,如果我有这句话:

We were moving around in Paris, which is the capital of France.

0------1-------2-------3------4----5------6-----7---8-----9----10---11 (words indices)

我想让 BERT 预测单词 ParisFrance 的位置。所以,把任务塑造成序列标注任务。

如果该词与句子中的任何其他词或其他词的索引之间没有关系,则该词的标签可以为-1;对于我们上面的例子,Paris word 应该有 11 作为 word France.

的索引

将索引作为标签放置是否正确?

没有。问题是每个句子的位置索引都有完全不同的含义,因此网络学习该做什么非常困难。您可以将最终投影中的参数矩阵想象为目标 classes 的嵌入,并将 classification 想象为测量来自 class 嵌入的输出状态的相似性。

我建议做 classification 类似于人们有时在依赖解析器中做的事情,即 对于每对单词, classify 如果它们之间存在关系词与否.

BERT 为您提供了一个矩阵,其中包含每个句子的上下文嵌入。从中创建一个 3D 张量,其中位置 [i, j] 包含单词 ij 的串联表示。然后,class将这些对中的每一对定义为 true/false,判断这两个词之间是否存在依存关系 link。