基于Mindspore2.0的GPT2预训练模型迁移教程

时间:2022-05-24 00:55:15
摘要:  这篇文章主要目的是为了让大家能够清楚如何用MindSpore2.0来进行模型的迁移。

本文分享自华为云社区《MindNLP-基于Mindspore2.0的GPT2预训练模型迁移教程》,作者: Super_WZB。

前言

动机

大家好,我是Super_WZB,最近MindSpore快要上线2.0版本了,由于之前主要是参与MindSpore的开发工作,一直想找机会多用一用。而自春节开始也是参与到了一项基于MindSpore的迁移工作,积攒了一些经验,搞了一下GPT2的模型迁移工作。目前初步实现了GPT2 Model最基础模型的推理,输出精度能够和hugging face中基于Pytorch的实现完全对标。整个流程我感觉非常的顺利,并且也切实的体会到MindSpore目前已经可以说是从“可用”进化到了“易用”的阶段。出于MindSpore布道师的职责,同时更是自己想要分享MindSpore2.0的使用感受,写下这篇基于MindSpore2.0的模型迁移教程,供大家参考。

目的

这篇文章主要目的是为了让大家能够清楚如何用MindSpore2.0来进行模型的迁移,因此更加注重整体的开发流程介绍,针对迁移中代码的编写不会详细讲解,但是会给出样例以及供查阅的文档链接。最终希望读者能够了解迁移模型需要做什么,每一步应该怎么做,做完了应该怎么验证。话不多说,直接开始:

1、前期准备

本章节介绍开发的前期准备工作,简要介绍环境配置、MindSpore安装和寻找迁移参考代码的途径,每一部分的详细操作大家可以百度搜索一下,相关博客非常多,这里就不赘述。这一章节非常的基础,如果已经是老手可以直接跳过。

1.1 寻找参照样例

既然是迁移工作,那么第一件事肯定是确定自己想要迁移的模型,然后找到该模型的开源代码,提供以下几个途径供大家寻找源码,基本上比较知名的模型通过以下几种方式都是可以找到相应代码的:

  • 模型论文源码:一般知名的模型和机构发布的论文和模型都是有开源的,可以直接在github搜这个模型的名字或者论文的题目,找到对应机构的仓库即可
基于Mindspore2.0的GPT2预训练模型迁移教程