jd-aig / nlp_baai

NLP models and codes for BAAI-JD joint project.
252 stars 56 forks source link

为什么baseline模型训练过程中,需要预测每一次的utterance?而不仅仅预测客服的回答 #14

Open ChenYutongTHU opened 4 years ago

ChenYutongTHU commented 4 years ago

你好! 感谢提供baseline model 官网中对于问题的描述是这样的 输入(上下文信息,用户问题):此轮对话用户提出的问题Qn,其中Qn可能为纯文本、纯图片的问题或图文相结合的问题;此轮对话前n-1轮的对话历史信息,C={Q0, A0, Q1, A1, …, Qn-1, An-1},历史对话信息也可能为多模态形式。 输出(文本预测答案):根据输入信息,输出满足第n轮用户问题Qn所期望的答案,该答案应该是通顺、逻辑一致且含有丰富知识的文本回答。 我在阅读代码时发现 input_conversations = [conv[:-1] for conv in conversations] target_conversations = [conv[1:] for conv in conversations] 即,baseline model在train、evaluate以及test过程中,不仅需要根据{Q0, A0, Q1, A1, …, Qn-1, An-1,Qn}预测An, 还需要分别根据{Q0}预测A0,根据{Q0,A0}预测Q1,根据{Q0,A0,Q1}预测A1,...,根据{Q0,A0,...,Qn-1,An-1}预测Qn?

这与paper中的描述似乎不太一样? 并且模型在训练过程中还需要预测客户问题,不太清楚这是否合理

nanzhao commented 4 years ago

您所引述的代码这里,相关的对话数据已经经过预处理了,所以您描述的代码逻辑与实际代码运行结果是不一样的。您可以结合预处理代码逻辑,分析此处代码逻辑。

daniellibin commented 4 years ago

你好,BAAI-JDAI-BERT, Chinese模型可以分享一下吗,原链接不能下载了,谢谢