Obviously best AI course?从Karpathy的LLM101n到CS231n

 
Andrej Karpathy是何许人
 
 

Andrej Karpathy是人工智能和深度学习领域的“扛把子”。他在斯坦福大学师从著名AI学者李飞飞教授,获得计算机科学博士学位,并设计了斯坦福首个深度学习课程《CS231n:卷积神经网络与视觉识别》,这个课程一上线就火得一塌糊涂,成为了斯坦福最受欢迎的课程之一。

 

2016年,Karpathy加入OpenAI担任研究科学家,成为创始团队的一员,专注于深度神经网络的开发和优化,为后来的ChatGPT奠定了坚实基础。2017年,马斯克慧眼识珠,将他从OpenAI挖到特斯拉,接替了苹果Swift语言之父Chris Lattner,担任Autopilot Vision部门负责人。在特斯拉期间,他领导团队利用计算机视觉和深度学习技术,对自动驾驶系统进行了重大改进。

 

五年后,Karpathy升任特斯拉AI总监,但在2022年选择离职,随后于2023年2月重返OpenAI。他组建了一支小团队,专注于GPT-4的优化和增强,并取得了显著进展。同时,他也开始了一些个人项目,包括录制教育视频和开发开源项目等。

 

为什么要跟着Karpathy学AI
 
 

Karpathy在YouTube上开设了自己的频道,拥有50.7万订阅者,发布的一系列关于生成式预训练模型GPT-2重现、构建GPT标记器、LLM入门等课程广受欢迎。他的一则两小时视频“如何手搓GPT”累计播放量达到450万次,总观看次数超过1亿。

 

几个月前,Karpathy毫无征兆的情况下离开了OpenAI。最近,他公布了自己的新的AI教育创业项目【Eureka Labs】,第一门课程叫《LLM101n: Let's build a Storyteller》。过往极为谦虚的Karpathy自称这个课程是The world's obviously best AI course。

 

基于对Karpathy过往的AI教育作出的杰出工作,他的创业项目得到了硅谷一众大佬的点赞和认可。今天,我们就来看一下LLM101n和Karpathy过往的课程,把这些原始课程和汉化课程都收集出来,以飨对学习AI感兴趣的读者。

 

关于Eureka Labs
 
 

What I cannot create, I do not understand. -Richard Feynman

Eureka Labs官网(eurekalabs.ai)开篇说到,以物理学为例,我们可以想象与费曼一起学习高质量的课程材料,他在每一步都为你提供指导。但不幸的是,那些充满热情、教学能力卓越、耐心无比且精通世界各国语言的学科专家非常稀缺,不可能随时随地为全球80亿人提供个性化辅导。

 

然而,随着生成式AI的进步,这种学习体验变得可行。教师依然设计课程材料,但这些材料由优化的AI教学助手支持、利用和扩展,帮助学生进行学习。这种“教师+AI”的共生模式可以在一个共同的平台上运行整个课程体系。如果Eureka Labs成功了,任何人都能轻松学习任何东西,教育的覆盖面将大幅扩大(即更多人学习新知识)和广度也将增加(即个人可以在AI辅助下学习更多科目,超越目前的可能性)。

 

LLM101n: Let's build a Storyteller

Eureka Labs的第一个课程LLM101n:Let's build a Storyteller

在这门课程中,Eureka Labs将构建一个讲故事的AI大语言模型(LLM)。学习者将与AI携手,共同创造、润色并展示小故事。课程将从基础开始,逐步构建一个类似于ChatGPT的完整web应用程序,使用Python、C和CUDA,并且几乎不需要计算机科学的先修知识。课程结束时,学习者将对AI、LLM以及更广泛的深度学习有一个相对深入的理解。

 

以下是LLM101n的课程大纲,目前已经在Github(https://github.com/karpathy/LLM101n)放出:

 

第一章:双字母组合语言模型(语言建模)

  • 学习基础的双字母组合语言模型。

第二章:微渐变(机器学习,反向传播)

  • 掌握微渐变和反向传播的基本概念和实现。

第三章:N-gram模型(多层感知器,矩阵乘法,GELU)

  • 探索N-gram模型及其在多层感知器中的应用。

第四章:注意力机制(注意力机制,Softmax,位置编码器)

  • 理解和实现注意力机制及其相关概念。

第五章:Transformer(Transformer,残差连接,层规范化,GPT-2)

  • 学习Transformer架构及其应用,包括GPT-2。

第六章:分词(minBPE,字节对编码)

  • 掌握分词技术,如minBPE和字节对编码。

第七章:优化(初始化,优化算法,AdamW)

  • 深入了解模型的初始化和优化技术。

第八章:速度需求 I:设备(设备,CPU,GPU,...)

  • 探索不同设备对模型训练速度的影响。

第九章:速度需求 II:精度(混合精度训练,fp16,bf16,fp8,...)

  • 学习混合精度训练及其在提高训练效率方面的应用。

第十章:速度需求 III:分布式(分布式优化,DDP,ZeRO)

  • 理解分布式优化技术,如DDP和ZeRO。

第十一章:数据集(数据集,数据加载,合成数据生成)

  • 掌握数据集的管理和合成数据生成。

第十二章:推理 I:kv缓存(kv缓存)

  • 学习推理阶段的kv缓存技术。

第十三章:推理 II:量化(量化)

  • 探索模型量化技术及其在推理中的应用。

第十四章:微调 I:监督微调(SFT,PEFT,LoRA,聊天)

  • 理解和应用监督微调技术。

第十五章:微调 II:强化学习(RL,RLHF,PPO,DPO)

  • 掌握强化学习及其在模型微调中的应用。

第十六章:部署(API,web应用)

  • 学习如何将模型部署为API或web应用。

第十七章:多模态(VQVAE,扩散Transformer)

  • 探索多模态技术,包括VQVAE和扩散Transformer。

附录

  • 编程语言:汇编语言,C,Python

  • 数据类型:整数,浮点数,字符串(ASCII,Unicode,UTF-8)

  • 张量:形状,视图,步幅,连续性,...

  • 深度学习框架:PyTorch,JAX

  • 神经网络架构:GPT(1,2,3,4),Llama(RoPE,RMSNorm,GQA),MoE,...

  • 多模态:图像,音频,视频,VQVAE,VQGAN,扩散

  • 进阶主题:

本课程的具体内容,还在研发中,Karpathy也提醒大家稍安勿躁,耐心等待。

 

Karpathy的过往课程
 
 

除了LLM101n值得期待,Karpathy的其他课程,也极为火爆,目前他的公开的课程,在他的Youtube频道https://www.youtube.com/@AndrejKarpathy/featured
也都可以找到,单个课程的播放量已经到200万以上。

 

Let's build GPT: from scratch, in code, spelled out.

汉化版:https://www.bilibili.com/video/BV1v4421c7fr/?spm_id_from=333.337.search-card.all.click

课程深入探讨了生成式预训练变压器(GPT)的构建,根植于《Attention is All You Need》以及OpenAI的GPT-2和GPT-3的基础上。我们不仅揭示了ChatGPT风靡全球背后的奥秘,还体验了如何在GitHub Copilot的辅助下进行GPT编程的奇妙过程。课程涵盖了从基础的语言模型构建到自注意力机制的实现,逐步引领学员掌握变压器模型的精髓。通过对n维张量处理、数据标记化、训练验证拆分等环节的详尽讲解,学员将学会如何在实际数据集上训练和微调GPT。无论是从简单的双字母模型到复杂的多头自注意力,还是从基本的代码实现到深层的理论解析,本课程都为学员提供了全方位的指导,帮助他们在人工智能的广袤天地中展翅高飞。

 

Let's reproduce GPT-2 (124M)

本课程涵盖GPT-2的整个训练过程:首先我们构建GPT-2网络,然后优化训练速度,按照GPT-2和GPT-3论文设置训练参数,运行训练并次日查看结果,享受模型生成的有趣内容。本课程深入介绍了GPT-2的构建及优化细节,包括神经网络模块的实现、前向传递、采样循环、损失计算、优化循环、数据加载、模型初始化等技术内容。适合对AI和机器学习有一定基础的学员,旨在提升实战技能,具备很强的实用价值,学习后可自主实现高效模型训练和优化。

汉化版:【Andrej Karpathy《让我们复现GPT-2 (124M)|Let's reproduce GPT-2 (124M)》中英字幕】

https://www.bilibili.com/video/BV1r6421f736/?share_source=copy_web

 

Intro to Large Language Models

这是一门时长为1小时的通识课程,主要介绍大型语言模型(LLM),如ChatGPT、Claude和Bard的核心技术组件。课程涵盖了LLM的定义、发展方向,与现有操作系统的对比以及新计算范式带来的安全挑战。内容基于Karpathy在2023年11月的AI安全峰会的讲座。通过这门课程,学习者可以深入了解LLM的推理、训练及其工作原理,掌握细调LLM成为助手的技巧,并了解LLM在浏览器、计算器和多模态工具中的应用及其安全隐患。课程吸引人之处在于其内容前沿,覆盖全面,是对AI领域最新动态的深入探讨和实用指导。

汉化版:【Andrej Karpathy大神亲授:大语言模型入门【中英】】 https://www.bilibili.com/video/BV1Hj41177fb/?share_source=copy_web

图文精校:‍https://mp.weixin.qq.com/s/fmb4nvIEA9AC-5JpNPWN7Q‍

Andrej Karpathy 大语言模型视频入门的精选阅读清单:https://baoyu.io/translations/llm/reading-list-for-andrej-karpathys-intro-to-large-language-models-video

 

Let's build the GPT Tokenizer

本课程详细讲解了大型语言模型(LLM)中不可或缺的组件——分词器(Tokenizer)。它在LLM流水线中独立运行,负责将字符串转化为文本块(tokens)并进行反向操作。课程以从头构建OpenAI GPT系列使用的分词器为例,深入解析分词过程。技术细节包括Python中的字符串处理、Unicode编码、字节对编码(BPE)算法、编码与解码的实现、正则表达式强制拆分类别、特定标记的处理以及多模态(图像、视频、音频)分词等。通过课程,学员不仅能掌握分词器的实现,还能理解LLM常见问题的根源,提高模型训练和应用能力。课程包含实际代码演练和综合练习,适合希望深入了解LLM技术的学员。

汉化版:【Open AI传奇研究员Andrej Karpathy教你构建GPT Tokenizer】 

https://www.bilibili.com/video/BV1KS421T7dY/?share_source=copy_web

 

The spelled-out intro to neural networks and backpropagation: building micrograd

这个课程详细讲解了神经网络的反向传播和训练方法,仅需基础Python知识和高中微积分。课程内容循序渐进,覆盖从简单函数的求导到完整神经网络的训练。学员将通过micrograd实现自动求导,掌握手动和自动反向传播的技术细节。课程链接包括GitHub资源、Jupyter笔记本、个人网站和讨论渠道。课程章节包括简单函数求导、多输入函数求导、核心Value对象及其可视化、手动反向传播示例、优化步骤、实现反向函数、修复bug、PyTorch对比、构建多层感知器、数据集创建、损失函数编写、手动梯度下降优化和网络训练等。学完本课程,你将具备现代神经网络的基础知识,能够实际应用于深度学习项目。

汉化版:【The spelled-out intro to neural networks and backpropagation building micrograd】https://www.bilibili.com/video/BV1kE421A7cZ/?share_source=copy_web

 

The spelled-out intro to language modeling: building makemore

在本课程中,重点介绍了两个主要方面:(1)torch.Tensor的介绍及其在高效评估神经网络中的使用,(2)语言建模的整体框架,包括模型训练、采样和损失评估(例如分类的负对数似然)。该课程详细讲解了从读取数据集到训练双字符模型的全过程,涉及Python字典和二维torch张量中的双字符计数、模型平滑处理、假计数应用、向量化的归一化以及行索引等技术细节。课程还展示了神经网络方法,通过单线性层的矩阵乘法实现,并将输出转换为概率分布。

B站:【The spelled-out intro to language modeling: building makemore by Andrej Karpathy】 https://www.bilibili.com/video/BV1RP4y1o726/?share_source=copy_web

 

CS231n: Deep Learning for Computer Vision

课程链接:https://cs231n.stanford.edu

计算机视觉在我们的社会中已经变得无处不在,其应用涵盖了搜索、图像理解、应用程序、地图绘制、医学、无人机和自动驾驶汽车。这些应用的核心是图像分类、定位和检测等视觉识别任务。最近在神经网络(即“深度学习”)方法方面的进展极大地提升了这些先进视觉识别系统的性能。本课程深入探讨了深度学习架构的细节,重点是学习针对这些任务的端到端模型,特别是图像分类。在为期10周的课程中,学生将学习如何实现和训练自己的神经网络,并深入了解计算机视觉领域的前沿研究。此外,最终作业将让学生有机会在自己选择的实际视觉问题上训练和应用数百万参数的网络。通过多次动手作业和最终课程项目,学生将掌握设置深度学习任务的工具集以及训练和微调深度神经网络的实际工程技巧。

汉化版:https://www.showmeai.tech/article-detail/259

关于TsingtaoAI
 
 
 
 
 

TsingtaoAI拥有一支高水平的产学研一体的AI产品开发团队,核心团队主要来自清华大学、北京大学、中科院、北京邮电大学、复旦大学、中国农业大学、美团、京东、百度、中国技术创业协会和三一重工等产研组织。TsingtaoAI核心团队专长于算力、行业LLM/AIGC应用的产品研发,面向企业的大语言模型应用落地等业务,如面向智能客服、教育、人力资源、电商和轨道交通等行业领域的LLM和AIGC应用开发。公司拥有近10项LLM/AIGC相关的知识产权。

 

TsingtaoAI自研基于LLM大模型代码能力的AIGC应用开发实训平台、面向CS专业的AI训练实训平台和基于大语言模型的AIGC案例学习平台,聚焦虚拟现实、金融科技、医药健康、高端装备、新能源、新材料、节能环保、文化创意、农业科技和食品科技等关键行业,通过链接全球数以千计的关键领域的AI科学家和工程师,为央国企、上市公司、外资企业、政府部门和高校提供AI企业内训和高校实训服务。

 

 

 

Product & Case.

产品与案例