yuanxiaosc/Multiple-Relations-Extraction-Only-Look-Once

subject_predicate_object_predict_output.json生成后SPO_lIST全部为空 如下所示

cronousbaby opened this issue · 6 comments

{"text": "《不是所有时光都微笑》是2012年7月1日光明日报出版社出版的书籍,作者是蓝瞳", "spo_list": null}
{"text": "《鬼影实录2》是托德·威廉姆斯执导,布赖恩·波兰德主演的恐怖片", "spo_list": null}
{"text": "”这是明朝天启年间的首辅大学士叶向高为纪念尤溪籍靖边将领詹荣逝世七十年所写的《读史吊詹角山司马》诗", "spo_list": null}

@cronousbaby run_multiple_relations_extraction.py 的损失函数有问题 531~549 lines!。因为模型对输入都padding到512位,大多数句子都没那么长。所以需要在计算损失的时候需要把padding的部分mask掉。不然模型就把注意力集中在大多数出现的padding部分了。如果你感兴趣,欢迎pull requests

{"text": "《不是所有时光都微笑》是2012年7月1日光明日报出版社出版的书籍,作者是蓝瞳", "spo_list": null}
{"text": "《鬼影实录2》是托德·威廉姆斯执导,布赖恩·波兰德主演的恐怖片", "spo_list": null}
{"text": "”这是明朝天启年间的首辅大学士叶向高为纪念尤溪籍靖边将领詹荣逝世七十年所写的《读史吊詹角山司马》诗", "spo_list": null}

已经新增了 run_multiple_relations_extraction_mask_loss.py ,对关系预测时的损失函数做了mask,实体预测时没有做mask,你可以尝试一下。

@cronousbaby 今天上午我检查了一下,发现我昨晚更新的还是有些问题。我平时也只有谷歌免费的GPU可以使用,平实验室没有GPU,模型调试起来很麻烦,,,所以现在我都不得不得放弃做像bert这样的大模型了