ShannonAI / mrc-for-flat-nested-ner

Code for ACL 2020 paper `A Unified MRC Framework for Named Entity Recognition`
643 stars 117 forks source link

关于模型中BERT的input和output问题 #32

Open JaeZheng opened 3 years ago

JaeZheng commented 3 years ago

您好,关于模型中对于BERT的input和output的处理,有两个问题想请教: (1) 关于output部分,在/model/bert_mrc.py中,在https://github.com/ShannonAI/mrc-for-flat-nested-ner/blob/master/model/bert_mrc.py#L50这一行代码中,sequence_output即BERT编码层的完整序列输出,即包括了query部分的token,后续的计算中似乎也没有舍弃掉query部分的token,这与您在论文中表述“we simply drop the query representations”似乎有所不符,请问可以解释一下吗? (2) 关于input部分,在/data_loader/mrc_utils.py中,在https://github.com/ShannonAI/mrc-for-flat-nested-ner/blob/master/data_loader/mrc_utils.py#L200这一行代码中,input_mask = [1] * len(input_tokens),即对整个完整序列的mask都置为1,也就是包括query、context和分隔符,这里全部都是没有mask掉的,可以这样理解吗?那这样处理对于BERT在这个任务上的表现会有影响吗?

期待您的回复!

ghost commented 3 years ago

关于您的第二个问题:

感谢!

ghost commented 3 years ago

关于您的第一个问题: