算丰学院在线课程分为:BM16系列开发板、CV18系列开发板、机器视觉、大语言模型、编译器和职业技能认证。开发板课程主要讲解了Milk-v Duo、少林派、华山派和SE5等开发板的部署与使用;机器视觉课程囊括了多媒体编程的理论和实践方法,以及开发板课程中的实战部分;编译器课程针对TPU-MLIR进行了系统和全面的介绍,包括理论知识、环境搭建和编程接口;认证课程提供了运维工程师所需要具备的知识,您可以根据自身情况选择合适的课程开始学习。
TPU-MLIR是专注于处理器的TPU编译器,该编译器工程提供了一套完整的工具链,可以实现将多种不同的深度学习框架(PyTorch、ONNX、TFLite和Caffe)下预训练的神经网络模型,通过编译和转换实现转化为可以在算能TPU上高效运算的模型文件bmodel/cvimodel,通过量化为不同精度的bmodel/cvimodel实现在算能硬件TPU上的加速和模型性能的优化,从而实现将各种目标检测、语义分割和目标跟踪等相关模型部署到底层硬件上进行加速。
本节课程主要分为三大部分:
一、实现本地开发环境的搭建和配置,并完成相关SOPHON SDK、TPU-MLIR编译器核心理论及相关加速接口的学习。
二、完成ONNX、TFLite、Caffe和PyTorch四种深度学习模型样例的转换与量化,以及其他深度学习框架转换中间格式ONNX的方法。
三、带领大家进行实战化移植四个实例算法(检测、识别和跟踪等方向算法)进行编译转换和量化,最终部署到算能1684x张量处理器的TPU处理器上进行性能测试。
本课程将通过实战演示作为驱动,带领大家全面、直观地了解TPU-MLIR编译器的使用,实现快速上手转换和量化不同深度学习模型算法并能够在移植到算能处理器TPU上进行部署测试。目前TPU-MLIR的使用已被应用在算能研发的最新一代深度学习处理器BM168X及CV18XX上,搭配上处理器本身的高性能ARM内核以及相应的SDK,能够实现深度学习算法的快速部署。
本课程的学习在模型移植部署上具备以下优势:
1、支持多种深度学习框架
目前直接支持的框架有PyTorch、ONNX、TFLite和Caffe。其他框架的模型需要转换成ONNX模型。如何将其他深度学习架构的网络模型转换成ONNX, 可以参考ONNX官网: https://github.com/onnx/tutorials。
2、易操作
通过阅读开发手册及相关部署案例,了解TPU-MLIR的原理和操作步骤,实现模型从零到部署,掌握相关Linux操作命令和模型编译量化命令即可上手实操。
3、量化部署步骤简便
模型转换需要在算能提供的docker内执行, 主要分两步, 一是通过 model_transform.py 将原始模型 转换成mlir文件, 二是通过 model_deploy.py 将mlir文件转换成bmodel格式。bmodel便是可以在算能TPU硬件上运行加速的模型文件格式。
4、适配多架构多模式硬件
量化好的bmodel模型可以运行在PCIe和SOC两种模式上的TPU上进行性能测试
5、资料手册齐全
丰富的教学视频,包含详细的理论讲解与实战操作,充分的实操指导和规范化的代码脚本均开源至课程中,供所有用户进行学习。
SOPHON-SDK开发指南:https://doc.sophgo.com/sdk-docs/v23.05.01/docs_latest_release/docs/SOPHONSDK_doc/zh/html/index.html
TPU-MLIR快速入门手册:https://doc.sophgo.com/sdk-docs/v23.05.01/docs_latest_release/docs/tpu-mlir/quick_start/html/index.html
示例模型仓库地址:https://github.com/sophon-ai-algo/examples
TPU-MLIR官方仓库地址:https://github.com/sophgo/tpu-mlir
SOPHON-SDeep learningL开发手册:https://doc.sophgo.com/sdk-docs/v23.05.01/docs_latest_release/docs/sophon-sail/docs/zh/html/
本课程介绍了Milk-V Duo开发板的硬件电路设计以及基本环境搭建,并且提供了一些简单开发实例和基础实例。
Milk-V Duo是基于CV1800B的超小型嵌入式开发平台,体积小,功能全面,搭载双核可分别运行linux和rtos系统,可连接的外设多样。
可扩展性:Milk-V Duo核心板有GPIO、I2C、UART、SDIO1、SPI、ADC、PWM等多种接口。
可连接的外设多样:Milk-V Duo核心板的可以扩展LED、便携屏幕、摄像头、WIFI等各种设备。
课程特点:
1. 内容资料丰富齐全,开发板硬件设计、外设接口说明、基本环境搭建方法、样例代码脚本。
2. 学习路线科学合理,通过开发板的介绍和基础例程使用来了解学习开发板,然后引出实战项目,让开发板物尽其用,也为用户自行开发提供参考。
3. 实战项目丰富,课程提供有许多实战代码样例的使用及功能展示,只需修改、组合就能完成不同功能的实现。
课程目录
欢迎加入大模型课程!本课程将带你深入了解什么是大模型,并帮助你掌握应用这些强大模型的技能。无论你是对深度学习领域感兴趣,还是想在实际项目中应用大模型,本课程都将为你提供宝贵的知识和实践经验。
大模型是指具有巨大参数量和复杂结构的深度学习模型。这些模型在处理大规模数据集和复杂任务时表现出色,如图像识别、自然语言处理、语音识别等。大模型的兴起引发了深度学习领域的巨大变革,并在许多领域取得了突破性的成果。
在本课程中,你将学习大模型的基本概念和原理。我们将详细介绍LLM(Large Language Models)的基础理论、发展历程、常用的大模型和不断发展的Prompt和In-context learning技术。随着课程的深入,我们将进行大模型实战应用。你将学习到如何部署Stable Diffusion和ChatGLM2-6B等备受关注的大模型到算能自研的最新一代深度学习处理器BM1684X。SOPHON BM1684X, 是算能面向深度学习领域推出的第四代张量处理器,算力可达32TOPS,支持32路高清硬解码和12路高清硬编码,可用于深度学习、机器视觉、高性能计算等环境。
无论你是想在学术界深入研究大模型,还是在工业界应用这些技术,本课程都将为你提供坚实的基础和实践能力。准备好迎接大模型的挑战了吗?让我们一起探索这个令人着迷的领域吧!
本课程介绍了少林派的硬件电路设计以及外设资源使用操作方法,并且提供了的硬件加速接口使用教程和一些基础实例
“少林派”是基于BM1684的约20TOPS算力开发平台,同时基于Mini-PCIe硬件可扩展性好,生态丰富,可连接的外设多样。
可扩展性:“少林派”核心板的Mini-PCIe可以转成WiFi、4G、蓝牙、GPIO、M2接口、USB、RJ45、SATA、SFP、HDMI、CAN等多种接口。
可连接的外设多样:“少林派”核心板的可以扩展便携屏幕、键盘、鼠标、摄像头、耳机、VR等各种设备。用户可以在“少林派”上DIY一个全场景的Linux工作站,尽情实践你的各种实验。
课程特点
1. 内容资料丰富齐全,开发板硬件设计、外设接口说明、开发板升级流程、样例代码脚本。
2. 学习路线科学合理,通过开发板的介绍和基础例程使用来了解学习开发板,再通过内部系统架构和代码的学习来深入理解开发细节,最后引出实战项目,让开发板物尽其用,也共用户自行开发时作为参考。
3. 实战项目丰富,课程提供有许多实战代码样例的使用及功能展示,只需修改、组合就能完成不同功能的实现。
代码下载链接:https://github.com/sophgo/sophpi-shaolin
课程目录
备注:模型转换部分可以参考SE5开发系列课
本课程介绍了华山派的硬件电路设计以及外设资源使用操作方法,并且提供了深度学习的硬件加速接口使用教程和一些基础实例
华山派 -- CV1812H开发板,是算能和生态伙伴硬件十万个为什么联合推出的开源生态开发板,为广大使用者提供基于RISC-V的开源开发环境,以视觉场景开发为核心实现功能,处理器更集成第二代全自研深度学习张量处理器(TPU),全自研智能图像处理引擎(Smart ISP),硬件级别高度安全资料保护架构(Security),语音处理引擎及H.264/265智能编解码技术,同时还有配套的多媒体软件平台和IVE硬件加速接口,使部署与执行更加高效、快速、便捷。主流的深度学习框架,比如Caffe,Pytorch,ONNX ,MXNet和TensorFlow(Lite) 框架的主流网络可以轻松的移植到平台上。
课程特点
课程内容
华山派开发板配套开源代码链接:https://github.com/sophgo/sophpi-huashan.git
深度神经网络模型能很快地被训练、测试,然后被产业界部署从而有效完成现实世界中的任务,在小体积、低功耗的 Deep learning 边缘计算平台上部署这类系统很受产业界欢迎。本课程以实践驱动的方式带领大家直观学习、实战和掌握深度神经网络的知识和技术。
SOPHON Deep learning微服务器SE5是一款高性能、低功耗边缘计算产品,搭载算能自主研发的第三代TPU处理器BM1684,INT8算力高达17.6TOPS,支持32路全高清视频硬件解码与2路编码,本课程带你快速玩转功能强大的SE5服务器,通过本课程的学习你即能理解Deep learning的基本知识,又能掌握Deep learning基本应用。
课程特点
1、一站式服务
所有SE5应用遇到的常见问题都可以在这里找到答案
2、体系化教学
从环境搭建到应用开发,从模型转化到产品部署,镜像实战环境
3、资料齐全
课程包括视频教学、文档指导、代码脚本等,详尽丰富
代码下载链接:https://github.com/sophon-ai-algo/examples
4、免费的云开发资源
可以在线免费申请使用SE5-16微服务器云测试空间
云平台申请地址:https://account.sophgo.com/sign_in?service=https://cloud.sophgo.com&locale=zh-CN
云平台使用说明:https://cloud.sophgo.com/tpu.pdf
课程目录
智能机器人种类繁多,应用比较广泛的是轮式移动机器人,主要应用在室内或库房的巡逻,行星探测、教学、科研以及民用运输等方面。在本课程中,智能小车通过自身携带的摄像头(视觉传感器)获取视频信息,识别周围环境,基于激光雷达和惯性测量单元(IMU)等传感器,实现狭小空间内自主导航避障。本课程以实践驱动的方式带领大家直观学习机器人操作系统(ROS)、利用少林派开发板搭建智能小车视觉应用平台,通过智能小车编程实战掌握Deep learning的基本知识和应用。
少林派开发板是一款高性能、低功耗边缘计算产品,搭载算能自主研发的第三代TPU处理器 BM1684,INT8算力高达17.6TOPS,支持32路全高清视频硬件解码与2路编码。少林派开发板外设灵活配置,支持3路mini-PCIe,4路USB;电源供电支持DC供电及TypeC供电。根据场景需求实现最优配置,最合理成本,最优能耗,最优功能选择。本课程带你快速玩转功能强大的少林派开发板,通过本课程的学习你既能掌握机器人操作系统(ROS)的基本知识,又能理解深度学习基本应用。
课程特点
1、一站式服务
所有KT001智能小车遇到的常见问题都可以在这里找到答案
2、体系化教学
从产品介绍到环境搭建,再到到视觉应用
3、资料齐全
课程包括视频教学、文档指导、代码脚本等,详尽丰富
代码下载链接:https://github.com/sophgo/sophon_robot
课程目录
通常理解的多媒体是由multi和media组合,即多种媒体的综合,一般包括文本,声音,图像和视频等多种媒体形式。近几年,涌现了大量新兴的多媒体应用和服务:如4K超高清,VR,全息投影和5G直播等
多媒体与深度学习
深度学习的基础即为多媒体技术,例如图像处理与识别、音频处理与语言识别等。课程基于算能处理器BM1684,峰值性能可达17.6 TOPS INT8和2.2 TFTOPS FP32,并支持32路高清硬解码,强力展现一款处理器的核心能力:算力 + 多媒体处理能力
智能多媒体关键技术与指标
关键技术包括编解码技术,图像处理技术,媒体通信技术 关键指标则包括解码路数、帧率、分辨率、图像处理接口丰富程度、延时、协议支持等
本课程将重点围绕图像处理技术、编解码技术、媒体通信技术三个方面进行介绍,通过理论+实践的方式,让同学们了解面向深度学习的智能多媒体相关理论,并快速掌握基本的实践方法。
课程目录
相关github连接
sophgo_ffmpeg: https://github.com/sophgo/sophon_ffmpeg
sophgo_opencv: https://github.com/sophgo/sophon_opencv
Deep learning编译器作为框架与硬件之间的桥梁,可实现一次代码开发、各种算力处理器复用的目标。近日,算能也对外开源了其自研的 TPU 编译工具— TPU-MLIR(Multi-Level Intermediate Representation)。TPU-MLIR 是一款主打 Deep learning 处理器的 TPU 编译器开源工程。工程提供了完整的工具链,将预先训练好的各类框架下的神经网络,在其中进行转化,最终转化为能在 TPU 中高效运算的 二进制文件bmodel,以实现更高效的推理。本课程以实战为驱动,带领大家直观地了解、实战、掌握算能智能 Deep learning 处理器的 TPU 编译器框架。
目前TPU-MLIR工程已被应用在算能研发的最新一代深度学习处理器BM1684X 上,搭配上处理器本身的高性能ARM内核以及相应的SDK,能够实现深度学习算法的快速部署。课程内容会涵盖 MLIR 基本语法以及编译器中各类优化操作的实现细节,如图优化,int8 量化,算子切分和地址分配等。
TPU-MLIR相对其他编译工具,有以下几个优势
1、简单、便捷
通过阅读开发手册与工程中已包含的样例,用户可以了解模型转化流程与原理,快速上手。并且,TPU-MLIR基于当前主流的编译器工具库MLIR进行设计,用户也可以通过它来学习MLIR的应用。 该工程已经提供了一套完备的工具链,用户可以直接通过现有接口快速地完成模型的转化工作,不用自己适配不同的网络
2、通用
目前TPU-MLIR已经支持TFLite以及onnx格式,这两种格式的模型可以直接转化为TPU可用的bmodel。如果不是这两种格式呢?实际上onnx提供了一套转换工具,可以将现在市面上主流深度学习框架编写的模型转为onnx格式,然后就能继续转为bmodel了
3、精度与效率并存
模型转换的过程中有时会产生精度损失,TPU-MLIR支持INT8对称和非对称量化,在大幅提高性能的同时又结合原始开发企业的Calibration与Tune等技术保证了模型的高精度。不仅如此,TPU- MLIR中还运用了大量图优化和算子切分优化技术,以保证模型的高效运行。
4、实现极致性价比,打造下一代Deep learning编译器
为了支持 graphic 计算,神经网络模型里面的算子需要开发一个graphic版本;为适配 TPU ,每个算子都应该开发一个 TPU 版本。此外,有些场景需要适配同种算力处理器的不同型号的产品,每次都要手动编译,这将是非常耗时的。Deep learning 编译器旨在解决上述问题。TPU- MLIR 的一系列自动优化工具可以节省大量手动优化时间,使在 RISC-V 上开发的模型能够顺利、免费地移植到 TPU 中,以获得最佳性能和价格比。
5、资料齐全
课程包括中英文视频教学、文档指导、代码脚本等,详尽丰富 丰富的视频资料 详尽的应用指导 清晰的代码脚本 TPU-MLIR站在MLIR巨人的肩膀上打造,现在整个工程的所有代码都已开源,向所有用户免费开放。
代码下载链接:https://github.com/sophgo/tpu-mlir
TPU-MLIR开发参考手册:https://tpumlir.org/docs/developer_manual/01_introduction.html
介绍整体设计思路的论文:https://arxiv.org/abs/2210.15016
视频教程:https://space.bilibili.com/1829795304/channel/collectiondetail?sid=734875
课程目录
序号 | 课程名 | 课程分类 | 课程资料 | ||
视频 | 文档 | 代码 | |||
1.1 | Deep learning编译器基础 | TPU_MLIR基础 | √ | √ | √ |
1.2 | MLIR基础 | TPU_MLIR基础 | √ | √ | √ |
1.3 | MLIR基本结构 | TPU_MLIR基础 | √ | √ | √ |
1.4 | MLIR之op定义 | TPU_MLIR基础 | √ | √ | √ |
1.5 | TPU_MLIR介绍(一) | TPU_MLIR基础 | √ | √ | √ |
1.6 | TPU_MLIR介绍(二) | TPU_MLIR基础 | √ | √ | √ |
1.7 | TPU_MLIR介绍(三) | TPU_MLIR基础 | √ | √ | √ |
1.8 | 量化概述 | TPU_MLIR基础 | √ | √ | √ |
1.9 | 量化推导 | TPU_MLIR基础 | √ | √ | √ |
1.10 | 量化校准 | TPU_MLIR基础 | √ | √ | √ |
1.11 | 量化感知训练(一) | TPU_MLIR基础 | √ | √ | √ |
1.12 | 量化感知训练(二) | TPU_MLIR基础 | √ | √ | √ |
2.1 | Pattern Rewriting | TPU_MLIR实战 | √ | √ | √ |
2.2 | Dialect Conversion | TPU_MLIR实战 | √ | √ | √ |
2.3 | 前端转换 | TPU_MLIR实战 | √ | √ | √ |
2.4 | Lowering in TPU_MLIR | TPU_MLIR实战 | √ | √ | √ |
2.5 | 添加新算子 | TPU_MLIR实战 | √ | √ | √ |
2.6 | TPU_MLIR图优化 | TPU_MLIR实战 | √ | √ | √ |
2.7 | TPU_MLIR常用操作 | TPU_MLIR实战 | √ | √ | √ |
2.8 | TPU原理(一) | TPU_MLIR实战 | √ | √ | √ |
2.9 | TPU原理(二) | TPU_MLIR实战 | √ | √ | √ |
2.10 | 后端算子实现 | TPU_MLIR实战 | √ | √ | √ |
2.11 | TPU层优化 | TPU_MLIR实战 | √ | √ | √ |
2.12 | bmodel生成 | TPU_MLIR实战 | √ | √ | √ |
2.13 | To ONNX format | TPU_MLIR实战 | √ | √ | √ |
2.14 | Add a New Operator | TPU_MLIR实战 | √ | √ | √ |
2.15 | TPU_MLIR模型适配 | TPU_MLIR实战 | √ | √ | √ |
2.16 | Fuse Preprocess | TPU_MLIR实战 | √ | √ | √ |
2.17 | 精度验证 | TPU_MLIR实战 | √ | √ | √ |
本课程旨在让学习者了解算丰产品,学习产品基本使用,了解产品应用场景,以达到对算丰产品有初步认识的程度。本课程涉及产品介绍、SE5服务器开发环境搭建以及产品的部署应用举例等内容;学习本课程全部内容,可通过“初级IT运维工程师”认证考试。
课程特点
课程目录
入学要求/建议
本课程为“初级IT运维工程师”认证考试对应的学习课程,旨在为学习者提供基础的产品知识和技能。虽然这门课程假定学习者没有编程背景,但为了让学习者更好地掌握课程内容,我们建议学生具备以下前置要求:
尽管有以上前置要求/建议,我们仍然欢迎没有经验的学习者加入本课程。课程将采用简单易懂的教学方式,配合实例和练习,帮助学生逐步掌握编程技能。对于没有经验的学习者,可以通过本课程第二章“常用命令”快速学习前置要求涉及的内容;对于有开发经验者,可以自动略过第二章的内容,直接通过第三章和第四章内容进行部署实战,同时,学有余力的开发者可以尝试在设备上完成新模型的移植部署。
算能SE5 Deep learning计算盒是基于处理器和模组,但比模组形态的产品面向场景更加广泛的高性能、低功耗边缘计算产品,搭载算能自主研发的第三代TPU处理器BM1684,INT8算力高达17.6TOPS,可同时处理16路高清视频,为诸多安防、泛安防、教育、金融、安检等行业项目智能运算提供算力。
SE5 Deep learning计算盒是基于边缘计算的小微型服务器,基本可以支持各个行业的算法,通过完备的生态方便用户将训练好的模型移植,不光支持人脸识别算法模型,还支持数十种辅助模型,所以面向场景非常广泛。可以应用在园区、社区、商业楼宇等室内外场景,以及集成类室外半封闭场景,不需要依托X86架构服务器,充分利用其内部ARM资源,直接独立一体化开发应用。
该计算盒的算力性能高,市场竞争力强,但同样保留了一部分高精度的算力。在需要高精度算力的场景,保留了高精度优势,如动态视觉无人零售柜、智慧冰箱系统中商品识别等。SE5实际可应用场景如,作为边缘人脸服务器布置在园区,进行园区通行识别比对或园区监控;在智慧食堂进行人脸支付;在家校互联系统做学生人脸识别;在学校宿舍系统做出入管理;在餐饮系统中植入菜品识别算法进行菜品结算;替代传统安检人员识图,机器判图准确度更高、降低安检员培训成本,通行速度更快,实现智能辅助安检。可以植入的算法模型多种多样,从而实现应用场景的多样化。
本课程将对se5计算盒以及应用流程进行讲解,通过本课程你将对该试验盒有明确的了解,并熟悉将该试验盒应用到特定场景的流程。
课程特点
体系化教学:从产品介绍到环境搭建再到应用流程
资料齐全:课程包括视频教学、文档指导、代码脚本等,详尽丰富