代码
【昇思MindSpore技术公开课】第四节课GPT的课程回顾来啦!

【昇思MindSpore技术公开课】第四节课GPT的课程回顾来啦!

【昇思MindSpore技术公开课】第四节课GPT的课程回顾来啦!

上周六(5月13日)我们继续为大家讲解了GPT2的核心创新点以及模型实现细节,并且将Transformer Decoder结构的核心部分Masked Self-attention进行了示意图和单步代码一一对应的详细解读。大家是否对GPT模型有了更加深入的理解呢?接下来我们对课程进行简单回顾,迎接下一节公开课的进一步深入。

一、课程回顾

GPT2论文解读:

  • Language Model任务的再解读:Next Token Predict和自回归预测

image.png

Task Conditioning:GPT2实现Zero Shot的核心方法,针对不同任务设计Task Condition(即Task instruction)进行预训练,面向新的生成任务,可以不进行有标注的微调,而使用instruction来引导模型生成结果。

image.png

Masked Self-Attention的单步详解:

image.png

  • 创建query、key、value
  • 切分Attention heads
  • 计算Attention Socre,需要加入Causal Mask来防止前面单词看到未来。
  • 合并Attention heads
  • 进行一层Projection

使用GPT2训练一个文本摘要模型(自回归预训练):

  • 自回归任务的处理:

1、静态文本长度,处理为1024,需要进行pad和truncate

2、输入和输出分别为text[0:-1]和text[1:]

  • 使用自动混合精度,配合Loss Scalar解决溢出问题
  • 自回归的文本生成预测

二、下节课预告

本周六(5月20日)14:00-15:30,将由我们昇思MindSpore分布式训练技术专家,苏腾为大家带来**《昇腾+昇思超大规模AI实践》**课程的讲解,这里悄悄剧透一下课程内容:

  • 昇思MindSpore的分布式特性讲解
  • 昇思MindSpore分布式并行代码示例

三、

课程建议和课后答疑

如果大家在运行代码中遇到什么问题,对课程有什么建议,或者希望我们增添什么内容,都可以在昇思MindSpore技术公开课大模型专题的代码仓中提issue进行反馈,或者加入课程讨论群,会有课程讲师在群中进行答疑。