【云驻共创】华为全联接2021 智能基座专场

举报
Mr红凯 发表于 2021/10/11 15:39:04 2021/10/11
【摘要】 华为汇聚各方力量,大力发展“昇腾”计算产业生态,积极建设以人工智能计算中心为代表的新型城市基础设施,让智能触手可及;持续打造昇腾基础软硬件平台,并探索和建立“专家+行家”的新合作模式;坚持“有所为有所不为”,与多方合作伙伴共同繁荣人工智能产业新生态。

华为全联接2021 ------智能基座线上专场

 

深化新工科人才培养,推进数字化产业升级

共建昇腾繁荣生态,助推人工智能产业快速发展

 

目录

前言和导读 2

迈向AI时代 | 人工智能发展趋势 3

一、 以企业为主体,提供昇腾全栈AI软硬件先进技术 8

1.1 昇腾AI基础软硬件平台 8

1.2 华为昇腾生态 10

二、 以高校为主体,培养产业人才、繁荣昇腾技术生态 17

2.1 产业发展聚集人才 17

2.2 昇腾众智计划简介 18

2.3 最强的智是众智,最大的力是合力! 20

三、MindSpore介绍 22

3.1 迈向AI时代 | 每一个人都是AI的开发者,时代洪流需要你(MindSpore) 22

3.2 全场景AI计算框架MindSpore 23

3.3 MindSpore并行模型训练的特点 25

四、 萌新闯荡模型王者体验赛之路(体验CANN模型移植) 28

4.1  Ascend 介绍 29

4.2  AI异构计算架构CANN的定义 29

4.3 萌新之路上的学习资源 30

4.4 萌新之路上看的书 30

4.5 萌新AI学习Tips 31

五、 小白如何拿大奖 32

5.1 信息来源 32

5.2 迁移流程(应用层面) 35

5.3 性能调优(先) 37

5.4 精度调优(后) 38

5.5 Git提交PR 39

5.6 总结与感想 39

六、 六边形战士养成计划 ------ 智能基座社团运营框架分享 40

6.1组织---组织架构完备 41

6.2 沟通---加强联系 41

6.3 宣传---多元化宣传 42

6.4 实践---实战汲取经验 42

6.5 创新---基于昇腾全栈自主开发 43

6.6 传承——基础创新,一脉相承 43

总结: 44

 

 

前言和导读

华为全联接2021智能基座线上分会场,覆盖所有智能基座高校的昇腾线上分会场,华为专家携手昇腾优秀开发者及智能基座社团社长一同探讨人工智能产业发展。

 

人工智能已经成为产业智能化转型升级的重要引擎,成为推动产业高质量发展的助推器,成为经济发展新动能的重要来源。人工智能正在积极的影响着经济、社会、生活发展的方方面面。人工智能处于爆发式增长的前夜,未来,联接AI、云、计算、行业应用等多种先进技术的机会相互催化,有机融合;必将催生大量的技术创新和应用创新,为社会发展开启了充满想象的广阔前景。

 

人工智能是社会发展和技术创新的产物,是促进人类进步的重要技术形态。人工智能发展至今,已经成为新一轮科技革命和产业变革的核心驱动力,正在对世界经济、社会进步和人民生活产生极其深刻的影响。于世界经济而言,人工智能是引领未来的战略性技术,全球主要国家及地区都把发展人工智能作为提升国家竞争力、推动国家经济增长的重大战略。

 

 

迈向AI时代 | 人工智能发展趋势

   我们从人类社会的发展来看,经历了农耕时代、工业时代、电气时代和当今的网络时代,现在正是跨越智能时代的关键技术节点,很大程度上就看深度学习等关键AI技术能否担当得起如蒸汽机、电灯和互联网这样重大的历史性变革技术使命。

   人工智能技术是IT和通信产业60年发展的总成果,它是一种新的通用目的技术,它将横跨整个经济的的多种用途,具有巨大的技术互补和溢出效应。华为在实践中发现,人工智能不但可以替代人,还能够自动降低生产成本,这是人工智能与信息化最大的不同,也是其最有价值的特点。”AI不仅可以帮助人们以更高的效率解决已经解决的问题,也可以解决很多没有解决的问题。

   数据和人才是人工智能的两大重点。在数据上,中国互联网发展已经实现了大量的数据积累;而AI人才上,过去十年,中国的AI研究人员数量已经超过了其他国家。所以中国如果抓住机会,依然可以像在移动互联网时代一样引领世界潮流。  

   过去五年,我们已经看到,在移动这个领域,因为中国的应用导向在移动互联网已经引领了世界潮流。我相信在AI这个新的领域里面,中国如果抓住这个机会,依然可以像在移动互联网一样,引领世界潮流。而且这次跟移动互联网不太一样的地方在于,这次可能我们在技术上也能引领世界潮流,也能抓住这个机会,因为我们人才储备相当丰厚了,这是为什么对中国在AI这个浪潮中如此有信心一个根本的原因。

   我国人工智能研究起步较晚,我国人工智能在基础理论和原创算法上的积淀较浅,在一些关键元器件上依然依赖进口。由此可见,相关专业人才、特别是高端人才极度匮乏。上图我们可以得知中国高端AI人才约977人,排名第六。不及美国的1/5,位于美/英/德/法/意之后全球顶尖Al企业人才,美国企业占有绝对优势。

   但是除了尖端科研人才之外,国内以工程运用为导向的中间层AI人才储备充裕:一方面,以微软亚洲研究院为代表的国外知名企业研究所针对中国市场培养了一批优质的种子人才;另一方面,多家国外高校、研究所等机构也为中国培养了一批优秀的归国学子,这些人才共同构成了国内整体的AI人才生态,并且已经成为了我国AI产业的中坚力量,在质量以及数量上都不容小觑。

   中国发展人工智能有四大优势:政策优势、海量数据资源优势、应用场景优势和青年人才优势。而且中国正在培养更多Al人才:2019顶级Al峰会中的中国论文,29%—作是本科生,同时也在招募全球AI人才,并吸引海外Al人才回国,在前十输出国之间的论文引用关系网中美国、中国是核心,英国、澳大利亚、德国、加拿大、法国、伊朗、意大利、西班牙...中国的高质量AI论文占比已全面超越美国!

   我们正身处于百年未有之大变局,云计算、大数据、人工智能、5G、IoT等技术与应用,与千行百业的融合不断加速和深入,数字化转型、智能化升级成为世界的主旋律。
        显然,人才培养已经成为信息时代的关键。没有足够多、足够好的人才,一切都无从谈起。我们知道,无论大学的职能如何变化,人才培养的中心地位从未改变,最好的人才培养场所必然是大学。
       华为与诸多国内外高校的合作,由来已久。远的不说,去年9月,教育部正式启动建设“教育部——华为‘智能基座’产教融合协同育人基地”项目,就是鲜明的例证之一。

       “智能基座”项目的推出,在很短的实践里就得到了高校的积极响应。据不完全统计,截至当前,已经有70余所大学与华为展开“智能基座”项目的合作。通过与教育部的合作,华为希望和广大高校建设更多的“智能基座”产教融合协同育人基地,目标是在5年内发展300万高校开发者,为新计算产业生态的发展提供充足的技术人才储备。

   高校为主培养出来的尖端人才来看,国内,中国高等教育机构培养出的学生理论基础扎实,但实操能力仍需要提高。从过去多年产教融合的实践来看,在传统的计算机教育中,引入像华为这样积极的产业因素,对教师、学生的裨益足够巨大。
        一方面,教师得以跳出既往的思维和老化的教学内容,能够与时俱进地展开教学工作;另一方面,学生也能够在夯实计算机核心基础知识的基础上,更好地掌握计算机核心技能和核心能力,为走向社会做好储备。
       在这样的前提之下,教学可以促进更多科研成果的落地,而科研成果也能够更好地向教学进行转化,二者之间形成了良好的循环与互动,这也是当前国家对高校科技产业的具体指向之一。

一、 以企业为主体,提供昇腾全栈AI软硬件先进技术

1.1 昇腾AI基础软硬件平台

      在人工智能时代,数以万亿计的前端智能设备和无所不在的智能应用,使得人工智能变得多样化与碎片化。如果要实现应用在终端和云端互通互联,就要求整个产业在通用的平台之上构建一个比以往更开放、更灵活的协作模式和生态系统

  华为基于昇腾基础软硬件平台,包括昇腾处理器、Atlas系列硬件、异构计算架构CANN(音同CAN)、AI框架MindSpore及AI应用使能ModelArts等,已初步构建了一个完整的人工智能产业生态。

  昇腾全栈AI软硬件平台基于华为昇腾系列AI处理器和业界主流异构计算部件,通过模块、板卡、小站、一体机等丰富的产品形态,打造面向"端、边、云"的全场景AI基础设施方案。昇腾着力培育自由开放的开发者环境,打造中国最好用的AI基础软硬件平台。

  未来三年,AI将深度融入到生产、科研及个人生活中。其中,AI将深度推进产业融合,从“辅助智能”到“原生智能”AI将加速科研创新,从局部使用到全面加速;AI将重塑个人生活体验,从技术尝鲜到生活习惯。

  为此,华为打造了一平台+双驱动的AI产业布局,深耕AI根技术,构筑AI新生态。一方面,华为构筑AI技术生态,另一方面,培养AI商业生态,最终实现AI行业牵引与赋能的商业正循环。

1.2 华为昇腾生态

目前,华为昇腾生态拥有开发者超35万,拥有教育部智能基座72个,在全国100多个高校开设人工智能课程,整机合作伙伴达到9个,其余合作伙伴超500个,发布的联合解决方案600多个。

 

基于以上积累,华为今年发布的鹏程·盘古鹏城实验室超大模型,成为业界首个全开源 2000 亿参数中文预训练语言模型;华为云盘古大模型也达到1100亿参数,并涵盖自然语言处理(NLP)大模型,计算机视觉(CV)大模型,多模态大模型,科学计算大模型。

 

值得一提的是,在最新发布的IO500榜单中,鹏城实验室等单位联合研发的鹏城云脑II”分别以7043.991129.75的得分,高居IO500总榜榜首和10节点榜单榜首

华为将持续打造极致性能,极简易用的昇腾基础软硬件平台。比如,每代硬件算力密度提升100%,软硬件协同优化性能翻倍,新增覆盖4个科研领域,每年发布3个SDK。

 

算力成为制约AI行业发展的主要因素,为此,华为还将为AI行业持续提供普惠算力,让部分AI能够用得起、用得好、用得放心。为此,华为在今后发展中将不断夯实基础设施,打断建设人工智能计算中心;强化生态运营,建设昇腾人工智能生态创新中心;打破数据孤岛,持续开放共享数据集。

    MindSpore是端边云全场景按需协同的华为自研AI计算框架,提供全场景统一API,为全场景AI的模型开发、模型运行、模型部署提供端到端能力。


    MindSpore采用-边-云按需协作分布式架构、微分原生编程新范式以及AI Native新执行模式,实现更好的资源效率、安全可信,同时降低行业AI开发门槛、释放昇腾芯片算力,助力普惠AI。

经过MindSpore社区开发者们勤奋耕耘,在这个丰收的季节,为大家奉上全新的1.5版本,在这个版本中我们正式发布MindSpore中文名:昇思。与此同时为大家带来全新科学计算行业套件MindScience、亲和算法库MindSpore Boost、支持混合专家(MoE)与异构并行、集群调优支持大规模分布式训练,并完善控制流使用,新增对外开放机制等诸多新特性,在使能科研创新和应用中不断努力!

   大模型训练考验的是算法、数据、框架、资源调度等全栈和全流程的综合能力

 

  • 内置业界维度最多,种类最全的分布式并行策略集合,支持不同种类、不同规模的大模型
  • 原创多维度自动混合并行核心技术,支持百亿~万亿参数超大模型K级集群自动并行训练
  • 创新AI分布式并行编程范式,一行代码实现串行算法并行化,最小化用户编码和调优代价

   深度学习使能MindX DL和智能边缘使能MindX Edge,帮助开发者快速搭建深度学习和边缘推理的基础平台;MindX DL(昇腾深度学习组件)是支持昇腾训练服务器、昇腾推理服务器的深度学习组件参考设计,提供昇腾处理器资源管理和监控、昇腾处理器优化调度、分布式训练集合通信配置生成等基础功能,快速使能合作伙伴进行深度学习平台开发。

 

实操:基于ECS-Al弹性云服务器的mxVision OSD实验

实验地址: https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=146214

MindStudio 为开发者提供了一套简单易用的开发工具,可高效完成端到端开发,让开发者从算子开发、模型训练、模型推理、应用开发、应用部署的全流程 “拎包入住”,无需在不同工具上完成,显著降低开发门槛。

   昇腾计算产业的目标,就是推动AI成为通用目的技术。随着AI技术的快速发展,以及与产业的深度融合,就其本身而言,AI技术已经到达了大规模应用的临界状态,AI+行业已是一触即发。我们相信,未来几年将会有百万量级的开发者,基于昇腾计算产业进行智慧应用的开发,而昇腾的应用场景,也将会触及到社会和生活的方方面面,推动各个行业的智能化发展。

   年轻的昇腾计算产业,刚刚走过三年的早期历程,但是产业生态已经枝繁叶茂,显示出强大的生命力和生态的优越性。在促进产业创新、聚合产业力量等方面,开始发挥出独特的价值。

二、 以高校为主体,培养产业人才、繁荣昇腾技术生态

2.1 产业发展聚集人才

通过三类实践活动,面向学习、面向实战、面向创新,层层深入,加速学生从理论知识向实践成果快速转化。

 

“创新驱动产业发展,产业发展聚集人才,而人才又激发创新,引领产业持续发展。人才发展是产业发展的基础,我们发展计算产业,一直把人才发展作为重中之重

 

华为与教育部合作,共同成立“智能基座”产教融合协同育人基地;以鲲鹏、昇腾和华为云为技术底座,建立高校人才培养体系,通过产学研协同为计算产业推广及高质量发展奠定人才基础……

2.2 昇腾众智计划简介

 

昇腾计算产业是基于昇腾系列处理器和基础软件构建的全栈AI计算基础设施、行业应用及服务,包括昇腾系列处理器、系列硬件、CANN异构计算架构、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链。昇腾计算产业的发展需要整个产业链的共同参与,打造强大的昇腾计算产业生态

昇腾众智计划是华为围绕昇腾基础软件平台推出的一项生态合作计划,旨在汇聚高校、科研院所、企业等组织和机构的开发团队,通过项目合作方式,基于昇腾基础软硬件平台开发算子、网络模型及行业参考设计,不断丰富昇腾计算产业生态,为加速千行百业智能化升级贡献智慧与力量。

2.3 最强的智是众智,最大的力是合力!

 

2021年中国软件产业年会上,华为正式发布“鲲鹏众智计划”“昇腾众智计划”,包含500+任务包,超过1亿的激励奖金,汇聚产业界的智慧和力量,加速基础软件关键技术的创新和突破。

 

鲲鹏、昇腾两大众智计划是华为围绕鲲鹏、昇腾基础软件平台推出的生态合作计划,以项目合作的方式,吸引高校、企业、个人开发者加入,共同开发加速库、工具插件、算子、网络模型、行业参考设计等。依托众智计划输出的创新成果,将在社区开源、开放,与全产业链成员共享

线上申请入口:

    https:/ fwww.hiascend.com/ecosystem/all-wisdom

线下:

    详细活动介绍和需求任务选择,技术沟通

   一直以来,华为聚焦鲲鹏和昇腾基础软硬件创新,开源操作系统openEuler、企业级数据库openGauss和全场景AI计算框架MindSpore,推动社区发布技术领先的软件版本;开放鲲鹏应用使能套件BoostKit、昇腾应用使能套件MindX和全流程工具链(包括鲲鹏DevKit和昇腾MindStudio),实现极致性能和极简开发。这些创新是全产业链共同的财富,将进一步推动产业的繁荣与发展。

   惟创新者进,惟创新者强!欢迎广大开发者访问鲲鹏社区和昇腾社区,了解众智计划详情。

 

   星火燎原,期待更多业界引领者!

三、MindSpore介绍

3.1 迈向AI时代 | 每一个人都是AI的开发者,时代洪流需要你(MindSpore)

MindSpore 是一个全场景 AI 计算框架,它的特性是可以显著减少训练时间和成本(开发态)、以较少的资源和最高能效比运行(运行态),同时适应包括端、边缘与云的全场景(部署态)

 

针对不同的运行环境,MindSpore 框架架构上支持可大可小,适应全场景独立部署MindSpore 框架通过协同经过处理后的、不带有隐私信息的梯度、模型信息,而不是数据本身,以此实现在保证用户隐私数据保护的前提下跨场景协同。除了隐私保护,MindSpore 还将模型保护内建于框架中,实现模型的安全可信

3.2 全场景AI计算框架MindSpore

 

AI框架是什么?

  • Al框架是Al根技术,算法模型开发必备工具;
  • 数据、算法、算力是Al的三要素:Al框架使用算力,利用数据集进行算法模型的开发和训练;

 

MindSpore是什么?

  • MindSpore华为自研的Al框架,意图打造支撑全场景应用的Al计算框架,通过技术创新.引领Al框架技术演进方向,成为中国Al生态的核心抓手;
  • MindSpore以开发者为中心,可根据应用价值与客户一起联合创新

 

关于MindSpore的战略

  • MindSpore华为Al战略之一,突破关键核心技术,打造中国自己的具有国际影响力的Al框架根技术和根社区,实现让“AI算法庄稼长在中国的黑土地上;
  • 对我国在AI领域实现产业领先、避免AI框架被卡脖子作出华为公司的贡献。

MindSpore是华为公司推出的新一代深度学习框架,是源于全产业的最佳实践,最佳匹配昇腾处理器算力,支持终端、边缘、云全场景灵活部署,开创全新的AI编程范式,降低AI开发门槛。

  • MindSpore框架架构总体分为MindSpore前端表示层、MindSpore计算图引擎和MindSpore后端运行时三层

 

  • MindSpore前端表示层MindExpression,简称ME)

该部分包含Python API、MindSpore IR(Intermediate representation,简称IR)、计算图高级别优化(Graph High Level Optimization,简称GHLO)三部分。

Python API向用户提供统一的模型训练、推理、导出接口,以及统一的数据处理、增强、格式转换接口。

GHLO包含硬件无关的优化(如死代码消除等)、自动并行和自动微分等功能。

MindSpore IR提供统一的中间表示,MindSpore基于此IR进行pass优化。

 

  • MindSpore计算图引擎GraphEngine,简称GE)

该部分包含计算图低级别优化(Graph Low Level Optimization,简称GLLO)、图执行。

GLLO包含硬件相关的优化,以及算子融合、Buffer融合等软硬件结合相关的深度优化。

图执行提供离线图执行、分布式训练所需要的通信接口等功能。

 

  • MindSpore后端运行时,该部分包含云、边、端上不同环境中的高效运行环境

 

3.3 MindSpore并行模型训练的特点

1、开发态友好

①自动微分,网络+算子统一编程,函数式/算法原生表达,反向网络算子自动生成

②自动并行,模型自动切分实现高效率的模型并行

③自动调优,动态图+静态图同一套代码

2、运行态高效

①On-Device执行,发挥升腾大算力

②Pipeline优化,提升并行线性度

③深度图优化,自适应AI Core算力和精度

3、部署态灵活

①端-边-云按需协同计算,更好的保护隐私

②端-边-云统一架构,实现一次开发,按需部署

端云协同MindSpore依托华为“端—边—云”的业务场景,在隐私保护日渐重要的情况下,致力于支持全场景部署,并打通云到端全流程。MindSpore针对全场景提供一致的开发和部署能力,以及按需协同能力,让开发者能够实现AI应用在云、边缘和手机上快速部署,全场景互联互通,实现更好的资源利用和隐私保护,创造更加丰富的AI应用。

在科研合作上165+基于MindSpore开发的AI顶会论文;70+篇专利护航,拥有雄厚的专利积累;100+高校教学AI专业课基于MindSpore。

在开发者情况上,有62+万,突破62+万下载量,拥有50+万开发者数量;2900+普通贡献者3400+人,核心贡献者900+人。

在生态拓展上170+网络模型,覆盖CV/NLP等通用场景;3700+APP基于MindSpore Lite开发,调用量3亿+天;28家ISV获得MindSpore技术认证。

在开源社区与治理上,获得可信开源社区认证,首批且AI类项目唯一获《可信开源社区评估体系》认证;Gitee综合指数第一,社区活跃度、影响力码云开源项自中综合排名第—。

MindSpore通过开源社区拓展千校万里行计划,关于人才培养,培养AI开发者,让MindSpore成为高校学生必备技能,智能基座+沃土计划+新工科

MindSpore开源社区成长计划,通过解决初、中和高不同难易题目(补充文档、修复bug、元应用案例、开发算子等)累积积分,赢得各种重磅大奖以及开发者证书,开源实践经验+扩充个人技术图谱+团队协作能力

活动入口: https://gitee.com/mindspore/communitylissues/4BD5F

四、萌新闯荡模型王者体验赛之路(体验CANN模型移植)

4.1  Ascend 介绍

Ascend社区是基于华为Ascend解决方案打造的开源社区,该社区面向开发者提供基于华为昇腾AI处理器的CANN开放平台,让开发者可以便捷高效的编写在特定硬件设备上运行的人工智能应用程序。如进一步学习,请至昇腾社区了解更多详细信息。

Ascend社区包含多个项目,主要项目简介如下,您可以根据实际场景,在对应的项目中拉取代码修改、编译,提交issue和PR等。

4.2  AI异构计算架构CANN的定义

CANN是华为针对Al场景推出的异构计算架构,通过提供多层次的编程接口,支持用户快速构建基于Ascend平台的Al应用和业务。

CANN包含:

  • 统一APP编程语言:提供一套标准的ACL编程接口,对应用程序开发者屏蔽底层多种芯片差异,提升用户APP编程易用性。
  • 统一网络构图接口:提供了标准的昇腾计算AIR,支持多框架,支持用户在昇腾芯片上快速部署神经网络业务
  • 高性能计算引擎以及算子库:通过高性能编译引擎/执行引擎/调优引擎和预置高性能算子库,支撑客户快速部署神经网络业务、降低部署成本并最大程度发挥昇腾计算能力
  • 基础服务:驱动、虚拟化、媒体、集合通信等能力

 

4.3 萌新之路上的学习资源

学机器学习基础看《李宏毅机器学习》

https://www.bilibili.com/video/BV1JA411c7VT

华为云学院上也有不少昇腾Al相关资源

华为云学院:https://education.huaweicloud.com/

想知道昇腾怎么玩转去昇腾社区就对了,那里真的什么资料都有哦

昇腾社区: https://www.hiascend.com/

想了解CANN就看老谭的B站吧

B站@起飞的老谭: https://space.bilibili.com/668461244

 

4.4 萌新之路上看的书

《深度学习》(又名花书)

《机器学习》(又名西瓜书)

《动手学深度学习》

《神经网络与深度学习》

《机器学习实战-基于Scikit-Learn和TensorFlow》

《昇腾AI处理器架构与编程》

《深度学习与MindSpore实践》

 

4.5 萌新AI学习Tips

  1. 多实践,在掌握基础知识的基础上通过实践可以学的更快。
  2. 多找代码,逛GITHUB看相似代码找灵感
  3. 多看API,通过API可以迅速掌握使用方法
  4. 多交流,一群人永远比一个人学的更优效率
  5. 多打比赛Kaggle、天池、华为云大赛平台都有很多比赛,有时间可以去参与一下,比赛的案例和现实实际有点相似
  6. 多写博客,把学习新的记录下来,不是为了有多少人看,而是为了在以后学习工作中还可以回忆回忆曾经踩过的坑和走过的路。

五、小白如何拿大奖

5.1 信息来源

1、昇腾论坛 www.hiascend.com>开发者一>异腾论坛

比赛模型 王者挑战赛

MindSpore 社区网络模型征集活动

比赛和活动: 第三期CANN训练营

2、MindSpore 官网 mindspore.cn:视频教程

MindSpore官网www.mindspore.cn :文档一>MindSpore>迁移指南

3Gitee 仓库  www.gitee.com/mindspore/models

3、群:

微信群、QQ群 通过查找资料、仔细思考、查看API以及源码、动手实践

5.2 迁移流程(应用层面)

目标:PyTorch>MindSpore,训练精度和性能达标,推理精度达标。

 

1、确定迁移目标

找到一个合适的、可达成的标准:Github、非集成的

 

2、处理迁移目标

删除模型定义脚本中的冗余代码复现指标(可选),看论文

 

3、使用MindConverter迁移模型定义脚本

  • 基于AST的脚本转换

 

属于MindInsight的子模块。通过对原脚本的抽象语法树进行解析、编辑,将其替换为MindSpore的抽象语法树,再利用抽象语法树生成代码。

 

PyTorchMindSpore在一些基础API的定义上比较相似,其实是自动替换了对应的API

转换命令 :mindconverter --in_file /path/to/model.py --output/path/to/output/dir

生成:基于MindSpore实现的模型定义文件、转换报告。

手动修改︰MindSpore官网一>文档一>设计和规格一>算子匹配一>API映射。

验证ms模型前向传播:

通过报错找到错误行,打印出一些相关输出的形状,同样打印出PyTorch模型中对应输出的形状作对比,一步步找错误修改。

 

  • 基于图结构的脚本生成

将包含网络模型结构和权重信息的onnx模型文件迁移成Mindspore框架下的模型定义脚本和ckpy权重文件。

  1. 基于PyTorch代码导出onnx模型文件。
  2. 迁移命令:mindconverter --model_file /path/to/model.onnx --shape SHAPE --input_nodesinput_node_name --output_nodes output_node_name ,

其中--model_file指定onnx模型文件路径;--shape指定模型输入shape信息,多输入场景以空格分隔;--input_nodes指定模型输入节点名称,多输入场景以空格分隔;--output_nodes指定模型输出节点名称,多输出场景以空格分隔﹔转换结果默认输出到$PwD/output

可以先通过Netron加载onnx模型文件,获取形状和节点名称等所需信息。另外,需手动补齐丢失的Dropout算子。

 

四、数据预处理(可参考gitee仓库中官方代码)

五、处理模型训练代码(可参考gitee仓库中官方代码)

六、训练

首先,动态图模式调试,之后切成静态图模式进行训练。

静态图模式:Python代码并不是由Python解释器去执行,而是将代码编译成静态计算图,然后执行静态计算图。动态图可以训练不一定保证静态图也可以训练。

寻找不符合静态图语法规范的部分︰动态图模式下,依次在“def construct(self, x):”前添加“@ms_function”装饰器。(可选)

5.3 性能调优(先)

Ascend910Al处理器上使用MindSpore Profiler进行性能调试,单卡。

1)准备训练脚本︰train.py文件中添加MindSpore Profiler相关接口得到train_profiler.py文件。

(2)训练∶将训练轮数epoch改为3,在数据处理文件中加载数据集的部分处修改训练样本数量,如在de.GeneratorDataset中添加设置num_samples=10*batch_size。开始训练,得到性能数据。

(3)启动MindInsight:通过命令mindinsight start --summary-base-dir ./profiler_data"启动MindInsight

(4)访问可视化界面浏览器登录http://127.0.0.1:8080(默认端口号)访问可视化界面,若使用Xshell远程访问训练服务器进行训练,则需要在Xshell上进行SSH相关配置。

(5)修改算子︰根据full_op_name”查找耗时算子所在位置,修改该算子。

5.4 精度调优(后)

一般更换优化器,修改初始学习率、学习率衰减策略、训练轮数等。

具体可参考MindSpore官网,www.mindspore.cn>文档->编程指南―>精度调优―>精度调优思路和方法。

 

5.5 Git提交PR

1、注册码云账号,本地电脑安装git

2、登录gitee,进入MindSpore/models仓,点击右上角“Fork”。

3、本地电脑新建文件夹,进入该空文件夹后右击鼠标,左击“Git Bash Here”。

4、在弹出的cmd中输入命令“git config user.name gitee_name”和“git config user.email gitee_email"依次配置gitee的用户名和邮箱;之后输入命令“git init”、 “git remote add origin链接地址”(链接地址是自己仓库中ForkedMindSpore/models链接);输入命令“git pull origin master"( master可改成分支名),下载代码仓文件到本地;创建新分支“git branch新分支名”;进入新分支“git checkout新分支名”;将需要提交的文件复制粘贴到models/research/cv(对应领域文件);将本地文件加入缓存区“git add.;添加提交PR的描述“git commit -m“本次提交的描述””﹔推送到远程代码仓库“git push-f”。

5、登录gitee,进入自己Fork的仓库,选择目标分支,点击“+ Pull Request”,填写相关信息完成PR的提交。

6、提交的PR中评论“/retest”过CI门禁,检查语法规范。

 

5.6 总结与感想

1.版本更新速度快  

2.API较为友好

3.动态图模式易于调试

4.训练速度快

5.并行训练的设置简单

6.MindInsight工具

7.模型部署较为简单

8.合理利用官方文档

9.参考Gitee/MindSpore/models仓库昇腾社区

10.Gitee提issue(问题)

六、六边形战士养成计划 ------ 智能基座社团运营框架分享

 

6.1组织---组织架构完备

技术部:负责昇腾、鲲鹏等技术指导,为社团成员提供帮助;定期展开培训、教学等。

宣传部:负责组织和推广各类活动,例如校园行,各类比赛和讲座等,活动结束后撰写新闻稿、微信推文等。

秘书组织策划部:负责各类社团内务工作安排,进行活动申请、场地申请,报销等。

 

6.2 沟通---加强联系

加强与华为对接老师的联系——承接相关活动,预约技术人员举办技术讲座

加强与学校指导老师的联系——提供创新、实践等方面的指导,及时调整技术发展路线

加强不同学校智能基座社团的联系——了解其它学校社团活动、发展策略,及时优化社团发展规划

6.3 宣传---多元化宣传

 

线上线下相结合:

  • 不定期举办昇腾技术沙龙,邀请华为技术人员举行技术讲座。
  • 联系学院、校团委,借助其公众号完成大型活动的宣传。
  • 建立社团自身的微信公众号等线上平台宣传社团内部的小型活动,吸引其它同学参与其中。

6.4 实践---实战汲取经验

 

赛事实践——利用华为昇腾掌握Al知识

 

大一:经典昇腾系列大赛,baseline实现

大二:昇腾赛事主力军,提供更优秀的项目解决方案。

大三:融入昇腾生态,独立团队开发

 

框架:基于MindSpore的网络模型开发:CANN训练营、阿里天池气象和海洋预测、kaggle降雨量预测等

 

云端训练:通过学校智能基座项目负责人申请昇腾910云端算力完成模型训练

 

端侧推理:向学校申请华为Altas 20ODK使用权,将训练完成的模型迁移到Altas 200DK,移到Altas 200DK,进行简单应用。

 

6.5 创新---基于昇腾全栈自主开发

一、强强联手,推陈出新

1、模型迁移———Tensorflow/pytorch2MindSpore深度学习在大气科学的应用mini版“昇腾计算+南信气象”生态

昇腾计算+南信气象

  • 前沿探索

应用气象模型于不同场景基于MindSpore构建更稳定更精确的气象侧网络模型

 

  • 另辟蹊径,独树一帜
  • 基于MindSpore的AI开发创新经典深度学习模型的实现与验证神经网络的简单应用

基于MindSpore的科学研究——机器视觉,图像/文本生成等,基于Altas200DK开发板的模型创新应用。

  • 边缘端模型迁移

端到边,深度模型应用更形象生动的应用,例:行人检测,人脸年龄估计…….

 

创新 -----> 传承

创新不是在时代发展的浪潮中区盲目追求潮流,而是在自己熟悉的领域一点点去推动一尘不变的现状。无论是昇腾计算+南信气象生态的构建还是AI开发创新,这都不是一朝一夕可以完成,最理想中的社团是把这些项目一代又一代不断去推陈出新。最后,或许已经看不到最初项目的影子,但我们还知道它还是它,只不过换了一件外衣!

 

6.6 传承——基础创新,一脉相承

一、技术成果传承

通过基础训练继承社团已有科研成果,在此基础上再做创新改进。

 

二、社团文化传承

以构建昇腾计算+南信气象生态作为社团发展的核心思想,紧跟昇腾计算前沿技术,为中国气象事业进献绵薄之力。

 

三、钻研精神传承

不定期举行研讨会,将模型开发、代码编写、创新应用中遇到的问题集中讨论,养成社员钻研问题的精神和团队意识。

总结:

华为汇聚各方力量,大力发展“昇腾”计算产业生态,积极建设以人工智能计算中心为代表的新型城市基础设施,让智能触手可及;持续打造昇腾基础软硬件平台,并探索和建立专家+行家”的新合作模式;坚持“有所为有所不为”,与多方合作伙伴共同繁荣人工智能产业新生态。

深耕AI根技术,繁荣昇腾生态。站在信息时代的转折时刻,我们正见证人工智能逐渐改变世界。“华为始终坚持有所为,有所不为。”未来,昇腾AI还将持续加强人工智能企业培育力度,加快人工智能与各行业融合创新,加大人工智能人才培养和吸引力度,持续赋能产业发展,助力产业转型升级,加快我国经济新旧动能转换。华为加速推动我国人工智能计算产业的新变革,赋能产业智能新升级,推动智慧城市4.0加速发展。

 

 

注:本文整理自【内容共创系列】之华为全联接2021 智能基座专场

查看活动详情:https://bbs.huaweicloud.com/blogs/302011

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。