卧槽,这项目的提交看板惊了!

Posted 微笑很纯洁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了卧槽,这项目的提交看板惊了!相关的知识,希望对你有一定的参考价值。

哈喽,大家好,我是开源君,一个资深的互联网玩家,致力于为大家分享各领域优质开源项目。

今天开源君重磅推荐的项目是MindSpore,在码云的 python 语言项目的排行靠前,拥有 5.5 K 的 star。它是一种适用于端边云场景的新型开源深度学习训练/推理框架。那么它有什么特点能吸引这么多 star 呢?

项目简介

首先我们来欣赏一下这个开源项目的主要维护者的提交记录。开源君一开始看见的时候惊呆了,2021 年八个多月的时间项目维护者提交了接近两万次,足以说明对项目的用心。

MindSpore 设计友好,执行高效,为 AI 处理器提供原生支持,以及软硬件协同优化。同时它有比较好的生态和开源社区,感觉对于学习者或者使用者来说是比较重要的,在开发或者学习过程遇到困难可以及时在社区得到解答或者可以使用生态的一些插件提高效率。

框架架构

主要分为的扩展层(MindSpore Extend)、前端表达层(MindExpression,ME)、编译优化层(MindCompiler)和全场景运行时(MindRT)四个部分。

  • MindSpore Extend(扩展层):MindSpore 的扩展包。

  • MindExpression(表达层):基于 Python 的前端表达,未来计划陆续提供C/C++、Java 等不同的前端;MindSpore 也在考虑支持华为自研编程语言前端-仓颉,目前还处于预研阶段;同时也在做与Julia等第三方前端的对接工作,引入更多的第三方生态。

  • MindCompiler(编译优化层):图层的核心编译器,主要基于端云统一的 MindIR 实现三大功能,包括硬件无关的优化(类型推导、自动微分、表达式化简等)、硬件相关优化(自动并行、内存优化、图算融合、流水线执行等)、部署推理相关的优化(量化、剪枝等);其中,MindAKG 是 MindSpore 的自动算子生成编译器,目前还在持续完善中。

  • MindRT(全场景运行时):这里含云侧、端侧以及更小的IoT。

框架特点

自动微分

当前主流深度学习框架中有三种自动微分技术:基于静态计算图的转换,基于动态计算图的转换,基于源码的转换,这个框架使用的是基于源码的转换,以即时编译(Just-in-time Compilation,JIT)的形式对中间表达式(程序在编译过程中的表达式)进行自动差分转换,支持复杂的控制流场景、高阶函数和闭包。现在很多浏览器都使用即时编译的技术,比如大家熟悉的谷歌浏览器 Chrome 的 javascript 引擎就使用了 JIT 技术,极大的优化了 JavaScript 代码的执行效率。

自动并行

MindSpore 自动并行的目的是构建数据并行、模型并行和混合并行相结合的训练方法。

目前 MindSpore 采用的是算子切分的细粒度并行策略,即图中的每个算子被切分为一个集群,完成并行操作。在此期间的切分策略可能非常复杂,但是作为一名 Python 开发者,无需关注底层实现,只要顶层 API 计算是有效的即可。

今天的介绍就到这,更多的细节还得小伙伴们去查看官方文档和开源项目。

最后,为了鼓励鼓励开源君 点赞 + 在看 不来一下吗,祝各位程序员开发无 Bug,发大财,行大运。

更多 Gitee 项目使用方式与玩法,点击下方卡片,回复 20210804 获取开源项目地址

以上是关于卧槽,这项目的提交看板惊了!的主要内容,如果未能解决你的问题,请参考以下文章

我惊了!!!ThreadLocal 源码存在内存泄露的 Bug!!!

AI越进化越跟人类大脑像!Meta找到了机器的“前额叶皮层”,AI学者和神经科学家都惊了...

敏捷项目与任务看板

敏捷宣言 - 看板是另外一种敏捷实践

Pad居然可以写代码了?研究完我惊了,居然是中国创业公司的产品

敏捷实践/迭代管理-SprintBacklog-任务看板-燃尽图