大家好,今天小编来为大家解答云主机网站源码分享华为这个问题,华为云平台搭建很多人还不知道,现在让我们一起来看看吧!
本文分享自华为云社区《MindNLP-基于Mindspore2.0的GPT2预训练模型迁移教程》,作者:Super_WZB。
原文详情:https://bbs.huaweicloud.com/blogs/393856?utm_source=jinritoutiao&utm_medium=bbs-ex&utm_campaign=other&utm_content=content
前言
动机
大家好,我是Super_WZB,最近MindSpore快要上线2.0版本了,由于之前主要是参与MindSpore的开发工作,一直想找机会多用一用。而自春节开始也是参与到了一项基于MindSpore的迁移工作,积攒了一些经验,所以最近蹭蹭ChatGPT的热度,搞了一下GPT2的模型迁移工作。目前初步实现了GPT2Model最基础模型的推理,输出精度能够和huggingface中基于Pytorch的实现完全对标。整个流程我感觉非常的顺利,并且也切实的体会到MindSpore目前已经可以说是从“可用”进化到了“易用”的阶段。出于MindSpore布道师的职责,同时更是自己想要分享MindSpore2.0的使用感受,写下这篇基于MindSpore2.0的模型迁移教程,供大家参考。
目的
这篇文章主要目的是为了让大家能够清楚如何用MindSpore2.0来进行模型的迁移,因此更加注重整体的开发流程介绍,针对迁移中代码的编写不会详细讲解,但是会给出样例以及供查阅的文档链接。最终希望读者能够了解迁移模型需要做什么,每一步应该怎么做,做完了应该怎么验证。话不多说,直接开始:
1、前期准备
本章节介绍开发的前期准备工作,简要介绍环境配置、MindSpore安装和寻找迁移参考代码的途径,每一部分的详细操作大家可以百度搜索一下,相关博客非常多,这里就不赘述。这一章节非常的基础,如果已经是老手可以直接跳过。
1.1寻找参照样例
既然是迁移工作,那么第一件事肯定是确定自己想要迁移的模型,然后找到该模型的开源代码,提供以下几个途径供大家寻找源码,基本上比较知名的模型通过以下几种方式都是可以找到相应代码的:
模型论文源码:一般知名的模型和机构发布的论文和模型都是有开源的,可以直接在github搜这个模型的名字或者论文的题目,找到对应机构的仓库即可PaperWithCode:PaperWithCode是一个整合论文和相应开源代码的网址,其中可以查到绝大多数论文以及多框架版本的实现,如果觉得官方的看不懂的话,可以找一些高引用的其他框架版本作为参考源码。HuggingFace:Huggingface起初是一家总部位于纽约的聊天机器人初创服务商,他们本来打算创业做聊天机器人,然后在github上开源了一个Transformers库,虽然聊天机器人业务没搞起来,但是他们的这个库在机器学习社区迅速大火起来。目前已经共享了超100,000个预训练模型,10,000个数据集,变成了机器学习界的github。那其实看起来这个网站和PaperWithCode很类似,但是它胜在有模型使用教程,同时有演示窗口,并且调用非常方便。
1.2Git操作
找到了参考代码之后,大家会发现这些源码基本上都是保存在GitHub上的,因此为了更方便的查阅我们需要迁移的代码,以及跳转和搜索可能存在的依赖函数,我建议大家把参考代码Clone到本地,然后进行对照开发:
常用的git操作可以参考这篇博客:Git的下载、安装与使用(https://blog.csdn.net/weixin_45060125/article/details/12931879634;__main__&34;__main__&39;/home/xxxxxx/wzb/mindnlp/pt_pretrained&34;+++++++++++++++++++++++++++++++++++++++++&39;embedding_table&39;embedding_table&39;weight&39;gamma&39;gamma&39;weight&39;beta&39;beta&39;bias&34;__main__&39;/home/xxxxxx/wzb/mindnlp/pt_pretrained&39;embedding_table&39;embedding_table&39;weight&39;gamma&39;gamma&39;weight&39;beta&39;beta&39;bias&34;shape对标通过&34;精度对标通过,误差:%f&华为云开发者联盟#\u0002,第一时间了解华为云新鲜技术~
如果你还想了解更多这方面的信息,记得收藏关注本站。
