thu-coai / Emotional-Support-Conversation

Data and codes for ACL 2021 paper: Towards Emotional Support Dialog Systems
Other
219 stars 32 forks source link

a question about train #10

Closed nullgogo closed 2 years ago

nullgogo commented 2 years ago

在数据prepare的时候: labels = ([strat_id] + response + [eos])[:max_decoder_input_length + 1] decoder_input_ids = [bos] + labels[:-1] label的第一个值是strat_id对应的token_id,decoder_input_ids 的第一个值是bos对应的token_id. 训练过程中计算loss的时候:loss = F.cross_entropy(lm_logits.view(-1, lm_logits.size(-1)), labels.view(-1), reduction='none'),lm_logits计算的原始输入是decoder_input_ids ,与label进行cross_entropy,每个response的第一个token_id是不是对应错了??求大佬指导

chujiezheng commented 2 years ago

不会. decoder是自回归的, 输出的logits对应于当前输入的下一个词

nullgogo commented 2 years ago

感谢解答。