CasRel模型介绍

主要分为两部分,subject tagger用来抽取头实体,relation-specific object taggers用来抽取关系和尾实体。

联合抽取的流程

头实体抽取

输入一组句子,利用bert进行编码得到一组序列

h

N

h_N

hN​ 在序列上利用二分类分别识别实体的开头和结尾 利用就近原则匹配得到若干头实体

v

s

u

b

1

,

v

s

u

b

2

,

v

s

u

b

3

.

.

.

v_{sub}^1, v_{sub}^2, v_{sub}^3...

vsub1​,vsub2​,vsub3​... 其中

v

s

u

b

k

v_{sub}^k

vsubk​ 表示的是第k个头实体向量的平均值

关系和尾实体抽取

输入头实体抽取中得到的序列

h

N

h_N

hN​和第k个头实体向量的平均值

v

s

u

b

k

v_{sub}^k

vsubk​ 对每种关系进行尾实体抽取,和抽取头实体的方法一样 利用二分类分别识别实体的开头和结尾,再利用就近原则匹配得到尾实体

CasRel的pytorch实现

代码来源于参考2 期间遇到的坑 1.读文件的编码问题 2.保存文件的路径问题 3.py写文件的问题

总结

跑实际的代码能够帮助理解模型,不过直接用别人的代码,很可能有很多坑,需要慢慢解决。接下来就是进行深入学习,理解模型的原理以及代码的实现。

reference

[1]CasRel [2]CasRelPyTorch

推荐文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: