从零开始的 AI Infra 学习之路
文章目录
一、概述
AI Infra(AI 基础设施)是指为上层的 AI 算法应用提供支持的 AI 全栈底层技术,通过合理利用计算机体系结构,可以实现 AI 计算的加速和部署。
AI Infra 主要包括以下内容:
-
AI 训练框架 & 推理引擎;
-
AI 编译 & 计算架构;
-
AI 硬件 & 体系结构。
参考资料:
二、AI 算法应用
2.1 机器学习
……
2.2 深度学习
- 深度学习入门笔记:GitHub - shen-shanshan/cs-self-learning/09.AI/05.Deep_Learning/PyTorch/PyTorch_Tutorials/01.Notes;
- One-Hot 编码:机器学习:数据预处理之独热编码(One-Hot)详解-CSDN博客;
- 激活函数:机器学习中的数学——激活函数:基础知识_神经网络中激活函数的数学基础-CSDN博客。
2.3 LLM
token:文本中最小的语义单元,如:单词、符号等(tokenization:分词)。
编码(encoding):将子词序列转换为数值向量。
解码(decoding):将每个数值编码替换成其对应的子词,然后将相邻的子词合并成最长的匹配单词,从而得到一个文本。
嵌入(embedding):子词 -> 特征向量,表示该子词的语义。基于互联网上大量的文本资料,统计出两个词语在相邻/句子/文章中共同出现的概率并通过权重来汇总计算,就能分析出某个词语与另外一个词语的亲密度的数值,并将这个数值作为特征向量来描述这个词语。通过嵌入,我们就可以把每个子词看作是高维空间中的一个点,而这些点之间的距离和方向,就可以表示出子词之间的相似度和差异度(词义相似时,在空间上也相近)。
预测(prediction):根据给定的文本,计算出下一个子词出现的概率。下一个子词出现概率的计算,就是基于特征向量表进行的。
小结:通过嵌入和预测,我们就可以实现从文本到数字,或者从数字到文本的转换。
训练 & 推理:
生成:指根据给定的文本来生成新的文本的过程。生成可以分为两种模式:自回归(autoregressive)和自编码(autoencoding),GPT 系列主要采用了自回归模式。
参考资料:
Transformer:
- 【超详细】【原理篇&实战篇】一文读懂Transformer-CSDN博客;
- The Illustrated Transformer – Jay Alammar – Visualizing machine learning one concept at a time. (jalammar.github.io)。
参考资料:
三、AI 开发体系
3.1 编程语言
- Python 学习笔记:GitHub - shen-shanshan/cs-self-learning/01.Languages/Python/01.Notes;
- C++ 学习笔记:GitHub - shen-shanshan/cs-self-learning/01.Languages/C&C++/02.Notes。
四、AI 训练框架 & 推理引擎
4.1 PyTorch
- 总览:Welcome to PyTorch Tutorials — PyTorch Tutorials 2.4.0+cu121 documentation;
- 入门教程(old):Learning PyTorch with Examples — PyTorch Tutorials 2.4.0+cu121 documentation;
- 入门教程(new):Learn the Basics — PyTorch Tutorials 2.4.0+cu121 documentation;
- Tensor 常用操作:torch.Tensor详解和常用操作-CSDN博客。
4.2 llama.cpp
……
4.3 vLLM
- 官方文档:Welcome to vLLM!。
五、AI 编译 & 计算架构
5.1 CUDA
……
5.2 CANN
- 开发文档:CANN社区版8.0.RC3.alpha001开发文档-昇腾社区 (hiascend.com);
- 环境搭建:基于 EulerOS & Ascend NPU 搭建 PyTorch 远程开发环境-CSDN博客。
六、AI 硬件 & 体系结构
6.1 INVIDIA GPU
- GPU 架构学习笔记:INVIDIA GPU 架构 & CUDA 平台入门学习-CSDN博客。
6.2 Ascend NPU
- NPU 架构学习笔记:Ascend NPU 架构 & CANN 平台入门学习-CSDN博客。