rasa课程第7周小结

收获

01 学习了GPT2的一些基本概念,重新回顾了bert中attention的基本概念和原理,了解了gpt2中mask的attention的基本原理。

02 看了生成模型中interact.py的内容,每次根据对话,根据设定的迭代值,预测出下一个字的内容,迭代完成后,下一句话也完成。其中彩用了topk和topp的方法,来对下个

     单词进行预测。

03 复习了关于rnn部分的相关知识点,更清楚的知道rnn在每个timestep都是对当前batch下的对应字符,进行处理,将信息合并到下一个timestep中。在rnn中经常会引起梯度消失的问题,不利于长文本的训练。转而采用lstm和gru的方法,可以包含更长文本的信息。gru和lstm的预测效果差不多,但是gru更简单一些,所以通常采用gru更多一些。

困惑

01 对于gpt的mask的self_attention的具体计算还是有些困惑

02 运行本周端对端的代码mmi_model时,输入对话的时候报错,在网上查是pytorch版本问题,现在还没有解决。

next_token_logit[tokenizer.convert_tokens_to_ids('[UNK]')] = -float('Inf')
RuntimeError: Output 1 of UnbindBackward is a view and its base or another view of its base has been modified inplace. This view is the output of a function that returns multiple views. Such functions do not allow the output views to be modified inplace. You should replace the inplace operation by an out-of-place one.

03 在采用预训练模型训练完成后,输出值logits中包含的每个vocab_size的得分,这个得分是怎么计算得到的?

04 还需要加强的地方是双向lstm,双向gru部分。

你可能感兴趣的:(pytorch,自然语言处理)