taishan1994 / pytorch_triple_extraction

基于pytorch的中文三元组提取(命名实体识别+关系抽取)
330 stars 41 forks source link

如何构建"实体-属性-属性值"的三元组 #26

Open leibaio opened 1 year ago

leibaio commented 1 year ago

作者您好!

  我刚刚接触知识图谱不久,非常感谢您的详细注释和方案解析可以让我对相关知识了解更多。

  通过您的方法可以构建出"实体1-关系-实体2"的三元组,我想增加"实体-属性-属性值"的三元组。想请教您,这个问题通过您的模型可以解决吗? 或者麻烦您可以提供一个大概思路吗? 
taishan1994 commented 1 year ago

通过您的方法可以构建出"实体1-关系-实体2"的三元组,我想增加"实体-属性-属性值"的三元组。想请教您,这个问题通过您的模型可以解决吗? 或者麻烦您可以提供一个大概思路吗?

能给出一个具体的例子吗

leibaio commented 1 year ago

非常感谢您的回复。比如"姚明出生于上海,身高2.26米,司职中锋,他在NBA和麦迪是队友"。

可以构建出"姚明-队友-麦迪"这样的三元组,可以再增加"姚明-出生地-上海"这样的三元组。

此外,还想请问下作者,我看你的分类分为"主体“和"客体",实体类型如何加入呢?比如"姚明”,"麦迪“是人名,"中锋"是篮球阵容位置,"上海"是个地点。

taishan1994 commented 1 year ago

非常感谢您的回复。比如"姚明出生于上海,身高2.26米,司职中锋,他在NBA和麦迪是队友"。

可以构建出"姚明-队友-麦迪"这样的三元组,可以再增加"姚明-出生地-上海"这样的三元组。

此外,还想请问下作者,我看你的分类分为"主体“和"客体",实体类型如何加入呢?比如"姚明”,"麦迪“是人名,"中锋"是篮球阵容位置,"上海"是个地点。

你可以再加一个实体类型识别的实体识别,最后将结果进行整合。

leibaio commented 1 year ago

作者您好,很抱歉又打扰您!

image 上周运行时,NER在自己的数据集可以正常运行,确定数据格式没问题后,增加了自己的数据,但运行NER文件夹里main.py会出现图片里提到的错误RuntimeError: Trying to resize storage that is not resizable。想问问作者这个该如何解决呢?

此外,给定最大长度都为512,在preprocess.py 运行后,之前的attention_mask会进行填充0。代码没有改动,增加数据后,再运行没有就进行补全,这会不会是导致上面的原因? image image

麻烦作者可以看下嘛

taishan1994 commented 1 year ago

没补全。

看看是不是transformers版本的问题,transformers==4.5.0

RuntimeError: Trying to resize storage that is not resizable

先看数据预处理还有问题没,没有再将DataLoader里面num_workers设置为1,再有错就是数据集的问题,再检查看看。

leibaio commented 1 year ago

作者,把transformers换为4.5.0后,可以补全了,数据预处理应该是没啥问题了,谢谢。 image

但运行main时会有出现维度不等,我再检查下数据集,再次向您表示感谢! image

shui-di-star commented 1 year ago

你好,可以分享提示一下加入实体分类和属性的代码吗?

taishan1994 commented 1 year ago

你好,可以分享提示一下加入实体分类和属性的代码吗?

参考主页的另外一个关系抽取的。

paihuaiz commented 10 months ago

作者您好,我在跑ner下的main文件时,test函数148行pred_label = np.append(pred_label, batch_output, axis=0)会报下面的错,有啥解决方法吗

image
taishan1994 commented 10 months ago

可以参考pytorch_bert_bilstm_crf那个仓库改一改。