Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于原始数据的格式问题 #1

Open
ruixing76 opened this issue Jul 6, 2019 · 5 comments
Open

关于原始数据的格式问题 #1

ruixing76 opened this issue Jul 6, 2019 · 5 comments

Comments

@ruixing76
Copy link

您好,我是刚入门关系抽取的学生,最近正在处理NYT数据集,刚看到您的代码觉得很受用。
您可以简要写一下原始数据的格式吗?比如relation和heldout relation文件夹内的数据训练就足够了?manual那个文件夹需要吗?另外那个tsv数据是用来做什么的?我发现目前没有对原始数据的很好的说明,这样可以让更多愿意研究关系抽取的人受用,十分感谢!

@weilonghu
Copy link
Owner

weilonghu commented Jul 7, 2019

感谢你的关注

原始数据集是protubuf格式的,它的格式是由data/Document.proto定义的。我是将heldout_relationskb_manual中的train合并作为训练集,heldout_relations中的test作为测试集,才得到了和NRE已公布数据集近似的结果。tsv文件可以认为是处理之后初始的格式,我将某些合并,试图得到格式与NRE近似的txt形式。

我之所以处理该数据的目的是为了获得其中的实体类型。这里面还有依存路径等信息你也可以获取。但我的建议是如果没有特别必要,完全可以使用NRE的数据集,因为后续的文章都在使用。我在处理之后,为了公平比较,也做了一次对齐。

@ruixing76
Copy link
Author

ruixing76 commented Jul 7, 2019

好的,十分感谢~是这样,我实际上不太关注NYT的具体句子内容,而是想将Multi-instance Multi-label Relation Extraction这篇论文的模型用到其他领域关系抽取问题上作为baseline,这个模型使用了NYT数据集,但是README和程序没有清楚地写出来用了哪一部分数据(LICENSE原因),所以如果要将其用到其他问题上,我需要将自己的数据复现成模型用到的类似NYT的格式。我目前想知道的数据格式的核心问题是:

relation和heldout文件夹中的trainPositive, trainNegative以及trainNewEntities都是protobuf中message定义的的Relation类吗?(你的Java代码好像说明了是Relation类)我使用python3.6 结合probobuf 3.8.0总是会报UnicodeError错误,多次尝试表明不同编码均不能正确解析pb文件,我的代码如下:

import Document_pb2 
def main():
    rel = Document_pb2.Relation()
    f=open("testPositive.pb", "r",encoding='utf_8') # Unicode Error
    rel.ParseFromString(f.read())   # 报错
if __name__ == "__main__":
    main()

是不是python无法解析必须用java?您的code是先要用java解析才行。
十分感谢您的回复~

@weilonghu
Copy link
Owner

对,格式的定义都在Document.proto中,其中Relation表示的是三元组,其他的和名字意义一样。如果你使用Java的话,可以通过智能提示看。

我也试过只使用python,但是发现python解析protobuf数据时分隔符容易出现问题。在参考了别人的做法后,我也先使用java进行解析,然后再用python进行处理。

@ruixing76
Copy link
Author

好的我继续研究一下哈~
暂时不关闭issue啦,之后有进展或者问题可以分享~
十分感谢你的回复!

@weilonghu
Copy link
Owner

不客气。Good luck!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants