Closed cingtiye closed 2 years ago
我发现要这样写才行~
from predictor import RewritePredictor
from data_reader import RewriteDatasetReader
from model import UnifiedFollowUp
from allennlp.models.archival import load_archive
from allennlp.predictors.predictor import Predictor
而且还需要下载bert模型~
@cingtiye 感谢反馈!是指原始的import
顺序会报错是吗?
请问你再运行这个predict.py
时会自动下载bert模型吗?而且我发现这个是运行一次下载一次~懵了
@SivilTaram 这个.tar.gz里面好像没有词表~所以会报错~和顺序似乎没有关系~
@cingtiye 下载bert模型这个有点忘了,理论上下载一次是可能的,但一直下载不太可能 O.O
请问你知道下载保存本地的地址在哪里吗?或者程序什么地方可以修改下载保存后的地址~
@cingtiye 这个可能要看一下huggingface transformers的使用文档
@SivilTaram 这个.tar.gz里面好像没有词表~所以会报错~和顺序似乎没有关系~
奇怪,我来检查一下
@cingtiye hello,凭借我模糊的记忆,我记得bert模型在allennlp
中是不需要指定vocabulary的哈,因为bert的词表是固定的。能否请您检查一下allennlp的版本是否为0.9.0
?以及,在虚拟环境中是否同时安装了pretrained-pytorch-transformers
和 transformers
两个库?
没有安装 pretrained-pytorch-transformers 但是好像没有这个库~
@cingtiye 不好意思,应该是这个 pytorch-pretrained-bert
,这个库是 transformers
库的前身。
@cingtiye hello,凭借我模糊的记忆,我记得bert模型在
allennlp
中是不需要指定vocabulary的哈,因为bert的词表是固定的。能否请您检查一下allennlp的版本是否为0.9.0
?以及,在虚拟环境中是否同时安装了pretrained-pytorch-transformers
和transformers
两个库?
还是会下载~你可以看一下这个代码,你的和我的是一样的吗?这句话应该就是去下载模型~
from allennlp.modules.token_embedders import bert_token_embedder # 这个函数里面第270行
@cingtiye 这个代码应该是一样的,我怀疑可能是pytorch-pretrained-bert
的bug,但我之前没有注意过? 因为这个库已经迁移到一个全新的库了,您可以试着升级一下 allennlp,看看能否在更高版本下解决这个bug。
可以了,没有升级allennlp,强制修改了原来allennlp里面的代码,我评估一下模型,看看改的对不对~稍等~
我发现用Multi_bert的模型去跑Rewrite的dev.txt和用Rewrite_bert去跑Multi的test.txt效果都非常不好~模型泛化性是不是不太好~
@cingtiye 可能模型的选择有点过拟合,也有可能是因为数据集的分布不同。有相关的论文曾经探讨过这个问题,可以参考论文 https://arxiv.org/abs/2012.14535。
可以看到我们的方法 RUN
在 Rewrite
数据集上训练后,在Restoration
(即本文的 Multi
)数据集上的 BLEU4 有65.7
。
好的~多谢指导~祝你五一假期愉快~
@cingtiye 不客气,有问题欢迎继续提问!( 科研狗没有五一 )
可以了,没有升级allennlp,强制修改了原来allennlp里面的代码,我评估一下模型,看看改的对不对~稍等~
你好,可以咨询下你修改了哪部分么,我这边将 data_reader.py 里的 pretrain_model_name 修改为本地地址后,会报错 AttributeError: 'NoneType' object has no attribute 'vocab',不知道你有没有遇到过
您好! 感谢作者的开源! 我在执行
python install -r requirement.txt
之后执行cd src && python predict.py
之后出现错误~ 似乎是模型"../pretrained_weights/multi_bert.tar.gz"并没有加载进去~非常期待能得到您的回复~ 祝您五一快乐~