Skip to content

Deep Learning System core principles introduction.

Notifications You must be signed in to change notification settings

XuyaoWang/DeepLearningSystem

 
 

Repository files navigation

Deep Learning System

深度学习系统(AI系统)

这个开源项目英文名字叫做 Deep Learning System 或者 AI System,中文名字叫做 深度学习系统 或者 AI系统。

主要是跟大家一起探讨和学习人工智能、深度学习的计算机系统设计,而整个系统是围绕着我在工作当中所积累、梳理、构建关于华为昇腾的内容。当然这里不是打广告,而是希望跟所有关注开源项目的好朋友一起探讨研究,共同促进学习讨论。

没人关注也要坚持哦!(给自己打个无聊的气)

内容大纲

这里的内容不能叫做课程大纲,只能叫做内容大纲。

第一部分基础篇介绍AI框架的**前端核心模块**,首先介绍任何一个AI框架都离不开的自动微分,通过自动微分功能后就会产生表示神经网络的图和算子,然后介绍AI框架前端的优化,还有最近很火的大模型分布式训练在AI框架中的关键技术。

第二部分进进阶篇介绍AI框架**底层编译技术**,将站在系统设计的角度,思考在设计现代机器学习系统中需要考虑的编译器问题,特别是中间表达乃至后端优化。

第三部分硬核篇介绍**AI芯片**,这里就很硬核了,希望可以坚持到最后啦,从芯片的基础到AI芯片的范围都会涉及,芯片设计需要考虑上面AI框架的前端、后端编译,而不是停留在天天喊着吊打英伟达,被现实打趴。

第四部分是很实际的**推理和部署**,讲了太多原理身体太虚容易消化不良,还是得回归到业务本质,让行业、企业能够真正应用起来,而推理和部署涉及一些核心算法和注意的事情也分享下。

课程部分

一. AI框架核心模块

编号 名称 名称 备注
1 AI框架基础 01 基本介绍 silde, video
AI框架基础 02 AI框架有什么用 silde, video
AI框架基础 03 AI框架之争(框架发展) silde, video
AI框架基础 04 编程范式(声明式&命令式) silde, video
2 自动微分 01 基本介绍 silde, video, article
自动微分 02 什么是微分 silde, video, article
自动微分 03 正反向计算模式 silde, video, article
自动微分 04 三种实现方法 silde, video, article
自动微分 05 手把手实现正向微分框架 silde, video, article
自动微分 06 亲自实现一个PyTorch silde, video, article
自动微分 07 自动微分的挑战&未来 silde, video
3 计算图 01 基本介绍 silde, video
计算图 02 什么是计算图 silde, video
计算图 03 计算图跟自动微分关系 silde, video
计算图 04 图优化与图执行调度 silde,video
计算图 05 计算图的控制流机制实现 silde,video
计算图 06 计算图未来将会走向何方? silde,video
4 分布式训练 01 基本介绍 silde, video
4.1 分布式集群 02 AI集群服务器架构 silde, video
分布式集群 03 AI集群软硬件通信 silde, video
分布式集群 04 集合通信原语 silde, video
4.2 分布式算法 05 大模型训练的挑战 silde, video
分布式算法 06 AI框架分布式功能 silde, video
分布式算法 07 算法:大模型算法结构 silde, video
分布式算法 08 算法:亿级规模SOTA大模型 silde, video
4.3 分布式并行 09 并行策略:数据并行 silde, video
分布式并行 10 模型并行之张量并行 silde, video
分布式并行 11 MindSpore张量并行 silde, video
分布式并行 12 模型并行之流水并行 silde, video
分布式并行 13 混合并行 silde, video
分布式汇总 14 分布式训练总结 silde, video

二. 底层编译技术

编号 名称 具体内容 备注
1 编译器基础 01 课程概述 silde, video
传统编译器 02 开源编译器的发展 silde, video
传统编译器 03 GCC编译过程和原理 silde, video
传统编译器 04 LLVM设计架构 silde, video
传统编译器 05(上) LLVM IR详解 silde, video
传统编译器 05(中) LLVM前端和优化层 silde, video
传统编译器 05(下) LLVM后端代码生成 silde, video
2 AI 编译器 01 为什么需要AI编译器 silde, video
AI 编译器 02 AI编译器的发展阶段 silde, video
AI 编译器 03 AI编译器的通用架构 silde, video
AI 编译器 04 AI编译器的挑战与思考 silde,

待更...

AI芯片

待更...

推理和部署

待更...

项目背景

近年来人工智能特别是深度学习技术得到了飞速发展,这背后离不开计算机硬件和软件系统的不断进步。在可见的未来,人工智能技术的发展仍将依赖于计算机系统和人工智能相结合的共同创新模式。需要注意的是,计算机系统现在正以更大的规模和更高的复杂性来赋能于人工智能,这背后不仅需要更多的系统上的创新,更需要系统性的思维和方法论。与此同时,人工智能也反过来为设计复杂系统提供支持。

我们注意到,现在的大部分人工智能相关的课程,特别是深度学习和机器学习相关课程主要集中在相关理论、算法或者应用,与系统相关的课程并不多见。我们希望人工智能系统这门课能让人工智能相关教育变得更加全面和深入,以共同促进人工智能与系统在开源方面的共同学习和讨论。

(原谅我复制粘贴微软AI-System的介绍,人家写得很好啦;另外推荐一个很好学习参考项目,公司跟英国麦络老师(爱丁堡大学)合作的机器学习系统:设计和实现。)

About

Deep Learning System core principles introduction.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 47.5%
  • SWIG 47.4%
  • LLVM 3.3%
  • Assembly 1.5%
  • C 0.3%