Open wucui5 opened 1 year ago
兄弟,请问下你是否遇到过这个问题: rule_dwie.txt的加载报错UnpicklingError: invalid load key, '['.
这里的txt文件不行,应该是pl文件,要重新生成,代码里面有生成的地方,不过被注释掉了
感谢你的回复,我已经在代码里面找到了相应的地方,并成功train了MILR。但在执行MILR_evaluate_DWIE.sh的时候报错:
Traceback (most recent call last):
File "train.py", line 376, in
我检索了一些解决方法,暂时推测是否为模型的train结果并非最优导致。不知道你是否遇到这个问题,或者知道是哪里出了问题吗,不胜感激
我没有在dwie上evaluate,只train过,我主要是想用docred数据集,如果你在docred上运行成功了可以告诉我一下
好的好的,我试试
Traceback (most recent call last):
File "i:/SYC/MILR-main/prepro.py", line 11, in
FileNotFoundError: [Errno 2] No such file or directory: './dataset_docred/ref/train_annotated.fact'
我试了下docred中没有这个fact文件,难道也是生成的吗?我没看到哪里生成这个文件
这个文件我有,我也忘了当初是生成的还是去哪下载的,不过我今天服务器连不上,没法看是怎么来的,文件在服务器上
Traceback (most recent call last): File "i:/SYC/MILR-main/prepro.py", line 11, in docred_fact_in_train = json.load(open('./dataset_docred/ref/train_annotated.fact', 'r')) FileNotFoundError: [Errno 2] No such file or directory: './dataset_docred/ref/train_annotated.fact'
我试了下docred中没有这个fact文件,难道也是生成的吗?我没看到哪里生成这个文件
应该是在这里生成的
我现在也遇到跟你一样的问题了,害
我的一个想法是,部分docred数据太长了,所以限制一下加载到模型的数据样本,是否可以解决这个问题。
我记得是选序列的时候好像有选十来个,里面有好几个超过了131,然后我强制把那些超过的改到小于131,后面还是会出现别的问题,你是想要复现这篇代码吗
是啊。不过你这个做法我也试过,不行的.虽然不知道131咋来的,但是最好写一个脚本把训练集中过长的样本剔除你再试试。这个我也还没试过
我不试了,都过好久我都快忘了,反正作者给的代码就跑不通,可能本身逻辑就有问题
我不试了,都过好久我都快忘了,反正作者给的代码就跑不通,可能本身逻辑就有问题
兄弟我跑起来并测试成功了,方法就是不能用他的sh脚本文件,就在arg的参数那里修改参数值,而且docred的测试文件要用re-dcred做测试文件
我不试了,都过好久我都快忘了,反正作者给的代码就跑不通,可能本身逻辑就有问题
兄弟我跑起来并测试成功了,方法就是不能用他的sh脚本文件,就在arg的参数那里修改参数值,而且docred的测试文件要用re-dcred做测试文件
跑起来效果怎么样,是用test_revised文件作为测试文件吗
我不试了,都过好久我都快忘了,反正作者给的代码就跑不通,可能本身逻辑就有问题
兄弟我跑起来并测试成功了,方法就是不能用他的sh脚本文件,就在arg的参数那里修改参数值,而且docred的测试文件要用re-dcred做测试文件
我也可以训练起来了,就是训练的时候最后和测试的时候出现Traceback (most recent call last):
File "/home/wucui/MILR-main/train.py", line 380, in
你这个错误就是因为训练到最后的时候,模型计算测试的结果时,docred的test文件没有label标签导致的。所以我才说要用re-Docred的test文件替换docred的test文件
你这个错误就是因为训练到最后的时候,模型计算测试的结果时,docred的test文件没有label标签导致的。所以我才说要用re-Docred的test文件替换docred的test文件
对,我发现了,test.json里面没有labels标签,只有test_revised里面有,所以这个测试只能用re-docred,这个不能用他的脚本你是怎么发现的呀
调试的时候发现的
对你而言,过去很久了,不知道还能否帮到你,嘿嘿
对你而言,过去很久了,不知道还能否帮到你,嘿嘿
帮到我啦,非常感谢,我打算用里面的规则,本来跑不通我就不打算做这个了,现在又可以接着做了,以后咱俩可以多交流,做的是同一个方向。
哈哈,好啊
请问你使用过别的数据集吗,除了docred和dwie之外的数据集,如semeval。我处理了semeval的数据集格式,但是总是在fact后,train的时候,报出错误。
Traceback (most recent call last): File "MILR-main/train.py", line 381, in
main() File "MILR-main\model.py", line 35, in init self.srr = SRR(rule_path=rule_path, prior_path=prior_path, minC=minC, temperature=temperature, File "MILR-main\soft_rule_regularization.py", line 59, in init self.eliminate_anti_rule_for_ILP() File "MILR-main\soft_rule_regularization.py", line 247, in eliminate_anti_rule_for_ILP self.confidence_1_hop = torch.stack(confi_1_hop, dim=0) # stack expects a non-empty TensorList RuntimeError: stack expects a non-empty TensorList 也不知道是什么原因导致的,在fact构建的时候还是正常的
这个代码上我没用过别的数据集,我还用过cdr和gda
这么说你跑的都是文档级的数据集,对于句子级的数据并未尝试吗?我这边倒是尝试了下句子级的发现,挖掘的规则虽然有,但是不匹配它的代码,导致后续变量长度为0
wucui5 @.***> 于2023年11月28日周二 20:40写道:
这个代码上我没用过别的数据集,我还用过cdr和gda
— Reply to this email directly, view it on GitHub https://github.com/XingYing-stack/MILR/issues/1#issuecomment-1829764067, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJJNQW7QDFCR74724RTOP5LYGXLTTAVCNFSM6AAAAAA4WD7AVSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRZG43DIMBWG4 . You are receiving this because you commented.Message ID: @.***>
Hello, I encountered an "index out of sequence length" issue while trying to replicate your code using the Docred dataset. Have you encountered such an issue before, and any help would be greatly appreciated.