关键词:
【AI框架核心技术】这个系列,主要是跟大家一起探讨和学习人工智能、深度学习的计算机系统设计,而整个系统是围绕着我在工作之余所积累、梳理、构建关于AI框架的一些核心技术内容。
AI系统里面,其实大部分开发者并不关心AI框架或者AI框架的前端,因为AI框架作为一个工具,最大的目标就是帮助更多的算法工程师快速实现他们的算法想法。不过呢,有着这么一群AI框架的开发工程师,希望梳理相关的知识点,帮助更多的系统工程师,快速对算法进行落地部署和性能优化的AI框架有个更全面和深刻的理解。
系列内容
AI是最新的电力,大约在一百年前,我们社会的电气化改变了每个主要行业,从交通运输行业到制造业、医疗保健、通讯等方面,我认为如今我们见到了AI明显的令人惊讶的能量,带来了同样巨大的转变。显然,AI的各个分支中,发展的最为迅速的就是深度学习。因此现在,深度学习是在科技世界中广受欢迎的一种技巧。
通过《AI框架核心技术》这个系列内容,以及这门课程后面的几门课程,你将获取并且掌握的技能:
-
在《AI框架基础》第一门课程中,您将了解到AI框架的具体作用,可以提供给开发者一个编写神经网络模型的库和提供丰富的API。以及近几年AI框架快速发展的历史和变迁。在这门课程的结尾,您将了解到不同的编程范式对AI框架的影响和对用户习惯的影响。
-
在《自动微分》中,你将深入了解微分和微分的不同方式,其中自动微分是微分很重要的实现方法之一,对于传统的几种微分方式有其独特的优势,这里面将会深入自动微分的正反向模式,不过在代码具体实现却有千差万别,于是我们将会手把手去用代码实现2种不同模式的自动微分。
-
在《计算图》这一门课程,您将掌握AI框架的核心表示:计算图。这里主要了解到什么是计算图和对计算图如何表示以外,还会了解到计算图跟自动微分的关系,如何表示反向模型和梯度,最后您还可以了解计算图中最难表达的控制流和动静统一的核心技术。
-
最后在《分布式并行》课程中,我们将会分为《分布式集群》、《分布式算法》、《分布式并行》3大内容进行展开,每一个内容都较为独立,于是最后我们将会把上面的技术串起来。
然这里不是打广告,而是希望跟所有关注开源项目的好朋友一起探讨研究,共同促进学习讨论,也欢迎各位专家和朋友多拍拍砖,多提点意见。相关的材料都开源在这里:https://github.com/chenzomi12/DeepLearningSystem/tree/main/Frontend
具体大纲
1 AI框架基础
2. 自动微分
-
基本介绍 video
-
什么是微分 video
-
正反向计算模式 video
-
三种实现方法 video
-
手把手实现正向微分框架 video
-
亲自实现一个PyTorch video
-
自动微分的挑战&未来 video
3. 计算图
4. 分布式集群
5. 分布式算法
6. 分布式并行
完结,撒花!
cyq.data从入门到放弃orm系列:开篇:自动化框架编程思维
...保持这持续的激动性,让我有了开源的念头。同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括使用方式,及相关介绍,都容易引人误解。为此,我打算重新写个系列来介绍最新的版本,让大伙从... 查看详情
css从入门到放弃系列:css的引入方式
css的四种引入方式内联方式(行间样式)<divstyle="width:100px;height:100px;background-color:red"></div>这通常是个很糟糕的书写方式,它只能改变当前标签的样式,如果想要多个<div>拥有相同的样式,你不得不重复地为每个<div>... 查看详情
kubelet从入门到放弃:拓扑管理(上)
<Kubelet从入门到放弃>系列将对Kubelet组件由基础知识到源码进行深入梳理。上一篇zouyee带各位看了CPU管理的相关内容,其中提及拓扑管理,本文将对此进行详细剖析,拓扑管理在Kubernetes1.18时提升为Beta。TopologyManager功能可实现C... 查看详情
jmeter_从入门到放弃系列
基础篇Jmeter(一)环境部署Jmeter(二)基础元件Jmeter(三)配置元件Jmeter(四)16个逻辑控制器Jmeter(五)24个函数Jmeter(六)前置处理器进阶篇Jmeter(七)IF控制器+循环控制器+计数器控制接口分支Jmeter(八)JDBC请求Jmeter(九)获取JDBC响应做接口关联JMete... 查看详情
java技术栈,从入门到放弃,废了废了
Java技术路线应用框架后端Spring家族SpringIoCAOPSpringMVCSpringBoot自动配置、开箱即用整合Web整合数据库(事务问题)整合权限ShiroSpringSecurity整合中间件缓存MQRPC框架NIO框架服务器软件应用服务器TomcatJettyUndertowWeb服务器Nginx中间... 查看详情
dp核心问题研究-从入门到放弃
首先从数字三角形开始这个题的特点是。。本身遍历次序就是个树型的每次的决策都已经给定,左下或者右下并且当我们纠结于是往左下走还是往右下走的时候,每次根据当前的情况贪心都为时尚早,因为后面的数据可以戏耍你... 查看详情
canvas从入门到劝朋友放弃(图解版)✨
...个领域会比较香,而Canvas是数据可视化在前端方面的基础技术。本文就用光的速度将canva 查看详情
vue从入门到放弃(代码片段)
.../vjuː/,类似于view)是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面&... 查看详情
django从入门到放弃(代码片段)
目录基于socket手写web框架基于wsgiref定义自己的web框架数据库取数据,渲染页面三大主流框架分析http协议分析Django下载,创建项目 基于socket手写web框架py文件importsocketdefserver_run():soc=socket.socket()soc.bind((‘127.0.0.1‘,8008))soc.listen... 查看详情
《java从入门到放弃》入门篇:struts2的基本访问方式
...百度百科的介绍:Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。介绍完毕··· 其核心原理图网上很多,我这儿做了一个简... 查看详情
《java从入门到放弃》入门篇:struts2的基本访问方式
...百度百科的介绍:Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。介绍完毕···其核心原理图网上很多,我这儿做了一个简单的... 查看详情
初识pytorch:从安装到入门,从入门到放弃(代码片段)
...证PyTorchPyTorch是Facebook团队于2017年1月发布的一个深度学习框架,虽然晚于TensorFlow,也没有TensorFlow火,但目前已经与TensorFlow奇虎相当。而且PyTorch采用了Python语言的接口,可以说它才是Python程序员最容易上手的深度... 查看详情
react从入门到放弃之前奏:react简介(代码片段)
...lDOM在某些情况都会损耗一些性能在diff上,但相比其他MVVM框架比起来性能影响很少,同时大幅提升开发效率也是目前推荐的方式)安装安装React:npmi-Sreactreact 查看详情
qt从入门到放弃
...991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(MetaObjectCompiler,moc))... 查看详情
观察者模式(从放弃到入门)
...Java开发的童鞋都听说过这个模式,而且有很多流行的框架都是使用了观察者模式,例如著名的R 查看详情
初识pytorch:从安装到入门,从入门到放弃(代码片段)
...证PyTorchPyTorch是Facebook团队于2017年1月发布的一个深度学习框架,虽然晚于TensorFlow,也没有TensorFlow火,但目前已经与TensorFlow奇虎相当。而且PyTorch采用了Python语言的接口,可以说它才是Python程序员最容易上手的深度... 查看详情
《python编程:从入门到实践》有奖书评活动来啦!
...感谢大家对#我看图灵#有奖书评活动的支持。第1期《Vue.js技术内幕》的书评征集活动得到了很多读者的认可,大家纷纷来问:下次什么时候?今天,第2期《Python编程:从入门到实践》有奖书评征集,正式... 查看详情
深度学习---从入门到放弃优化器(代码片段)
...1.案例引入-MNIST手写数字识别现代深度学习优化中的许多核心思想(和技巧)可以在训练MLP以解决图像分类任务的中进行说明。在这里我们使用的是手写数字的MNIST数据集,上图为MNIST数据集的部分展示。1.1网络构建思... 查看详情