Closed rhyspang closed 4 years ago
@rhyspang
@JasonForJoy 好的,了解,感谢解答
@rhyspang
- create_adaptation_data.py line 415- 420, create_finetuning_data.py line 181-189 等等 另外,Ubuntu V1只提供了分句信息,没有分轮信息,因此,我们在Ubuntu V1中只使用了 EOS Ubuntu V2提供了分句信息和分轮信息,因此我们在Ubuntu V2上使用了EOU 和 EOT
- modeling_switch.py line 496- 510,train.py line 133, 336, 346 等等
@JasonForJoy 学长,这样的话,另外的两个中文数据集 Douban
ECD
也是只用到 EOS
吗?这套代码,切换成两个中文数据集数据集适用的吗?
@rxc205 由于Douban和ECD都只有EOS的标签,没有更详细的EOU或者EOT,因此我们在实验种也是只用了EOS。 对于两个中文数据集也是适用的,只不过需要在相应的地方改一下分词符之类的。
@rxc205 由于Douban和ECD都只有EOS的标签,没有更详细的EOU或者EOT,因此我们在实验种也是只用了EOS。 对于两个中文数据集也是适用的,只不过需要在相应的地方改一下分词符之类的。
好的,感谢!
你好,学长,再打扰你一下?请教两个问题: 1.你基于google-research/bert修改做的预适应训练的,它使用的是默认英文,这样的话ubuntu数据集就可以天然适应了。我想问的是,对于豆瓣和ecd两个中文数据集,我在使用时需要将重新下载中文的权重吗?就是将english_L-12_H-768_A-12 更改到 chinese_L-12_H-768_A-12吗?
@rxc205 你好!
@rxc205 你好!
- 对于两个中文数据集,最好是用专门的中文语料库训练的BERT,效果会更好一些。具体的,可以用google官方的中文BERT,也可以用后续工作改进的中文BERT,例如全词掩码whole-word-masking(google BERT是单字掩码):https://github.com/ymcui/Chinese-BERT-wwm
- 用中文做NSP的时候无需更改配置。做MLM的时候有两种mask策略,分别是单字掩码和全词掩码,都可以尝试。
好的,也就是说初始化权重可以是任意更改的,代码还是同一套就行吧。
请问学长你那边产出一份adapted data(dupe_factor=10)需要花多久的时间呢? 我这边时间有点久哦,不知道合不合理。
@rxc205 生成adapted data的过程确实挺长的。 可以考虑将dupe_factor设为1,然后在fine-tune的时候将epoch设为10,以减少生成adapted data的过程。 当然这种做法由于是将一批数据重复用了十次,因此最终的结果会差一些。
@rxc205 生成adapted data的过程确实挺长的。 可以考虑将dupe_factor设为1,然后在fine-tune的时候将epoch设为10,以减少生成adapted data的过程。 当然这种做法由于是将一批数据重复用了十次,因此最终的结果会差一些。
感谢解答,我再询问学长最后一个问题:你是只使用了一张显存32G V100的卡吗?adapted pre-traing大概花了多久时间呢?我这边是Tesla p40,性能稍差一些,我做一些评估。麻烦学长了
@rxc205 我们所有的pre-train和fine-tune都是在一张32GV100上。 具体运行时间由于时间久远确实没什么印象了,抱歉! 我们的具体实验设定是:dupe_factor=10,epoch=1,32GV100,batch size=20。 你可以参考。
您好,提问两个论文中提到的点
论文中提到的
EOT
、EOU
token在代码中好像没有找到使用,请问是什么原因呢,是因为效果吗论文中提到预训练后可以得到角色相关的向量,这个向量会应用在fine_tune任务中,但在代码实现中发现fine_tune任务没有使用到预训练产出的角色向量