Thanks to visit codestin.com
Credit goes to github.com

Skip to content

X4tar/dl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎓 LLM 完整学习教程

从 Transformer 到现代大语言模型:完整的理论与实践教学项目

Python 3.8+ PyTorch License: MIT

🌟 项目简介

这是一个系统化、完整性的大语言模型学习教程,涵盖从基础 Transformer 到现代 LLM 技术栈的全流程实现。项目不仅提供清晰的代码实现,更重要的是包含详细的教学文档交互式示例实际训练样例,让学习者能够真正理解掌握现代 AI 的核心技术。

🎯 为什么选择这个项目?

  • 📚 教学导向: 每个概念都有详细解释,每行关键代码都有注释
  • 🔬 完整覆盖: 从 Transformer 到 GPT、BERT、ViT、指令微调的完整技术栈
  • 💻 可执行性: 所有示例都可以直接运行,立即验证学习效果
  • 🎨 丰富可视化: 注意力热图、训练曲线、模型结构图等
  • 🚀 渐进式学习: 从基础组件到高级应用,循序渐进
  • ⚡ 一键体验: 提供完整的运行器,一键体验所有教程

📁 完整项目结构

🎓 LLM 完整学习教程/
├── 🔄 transfomer/              # 原始 Transformer 实现
│   ├── 📖 README_transformer_tutorial.md    # 详细教程
│   ├── 🧩 transformer_components.py         # 核心组件
│   ├── 📐 positional_encoding.py           # 位置编码
│   ├── 🤖 transformer_model.py             # 完整模型
│   ├── 🎯 train_transformer.py             # 训练脚本
│   ├── 👁️ attention_visualization.py        # 注意力可视化
│   ├── ✍️ text_generation_example.py        # 文本生成
│   ├── 🚀 quick_start.py                   # 快速入门
│   ├── 🎮 run_examples.py                  # 运行示例
│   └── 🔍 verify_structure.py              # 结构验证
│
├── 📖 bert/                    # BERT 双向编码器
│   ├── 📖 README_bert_tutorial.md          # BERT 教程
│   ├── 🧩 bert_components.py               # BERT 组件
│   ├── 🤖 bert_model.py                   # BERT 模型
│   ├── 🎓 bert_pretraining.py             # 预训练实现
│   └── 🚀 quick_start.py                  # 快速开始
│
├── 🖼️ vit/                     # Vision Transformer
│   ├── 📖 README_vit_tutorial.md           # ViT 教程
│   ├── 🧩 vit_components.py                # ViT 组件
│   ├── 🔍 patch_embedding.py               # 图像块嵌入
│   ├── 🤖 vit_model.py                    # ViT 模型
│   ├── 🎯 vit_trainer.py                  # ViT 训练器
│   ├── 🚀 quick_start.py                  # 快速体验
│   ├── 🎮 run_examples.py                 # 完整示例
│   └── 🔍 verify_vit_structure.py         # 结构验证
│
├── 🤖 gpt/                     # GPT 生成模型
│   ├── 📖 README_gpt_tutorial.md           # GPT 教程
│   ├── 🧩 gpt_model.py                    # GPT 完整实现
│   ├── 🎯 train_gpt.py                    # GPT 训练
│   └── 🚀 quick_start.py                  # 快速开始
│
├── 🎯 instruction_tuning/      # 指令微调技术
│   ├── 📖 README_instruction_tuning.md     # 指令微调教程
│   ├── 🎯 sft_trainer.py                   # SFT训练器实现
│   └── 🚀 quick_start.py                   # 快速开始
│
├── 🌐 multimodal/              # 多模态大模型
│   └── 📖 README_multimodal.md             # 多模态技术教程
│
├── ⚡ optimization/            # 模型优化与部署
│   └── 📖 README_optimization.md           # 优化部署指南
│
├── 🚀 advanced_topics/         # 高级主题与前沿研究
│   └── 📖 README_advanced.md               # 前沿技术解析
│
├── 🔬 research_trends/         # AI研究趋势与未来展望
│   └── 📖 README_research_trends.md        # 研究趋势分析
│
├── 📝 cbow/                    # 传统词嵌入对比
│   ├── 🧩 cbow_model.py                   # CBOW 实现
│   ├── 🎮 cbow_example.py                 # 使用示例
│   └── 🔍 verify_embedding_updates.py      # 验证训练
│
├── 📚 LLM_学习路径推荐.md        # 进阶学习路径指南
├── 🎪 demo_complete_project.py  # 完整项目演示
├── 🚀 run_all_tutorials.py      # 一键运行所有教程
├── 🔍 validate_project.py       # 项目完整性验证
└── 📋 README.md                 # 本文档

🚀 快速开始

1️⃣ 环境准备

# 克隆项目
git clone <项目地址>
cd llm-tutorial

# 安装依赖
pip install torch numpy matplotlib tqdm scikit-learn

# 验证环境
python validate_project.py

2️⃣ 一键体验所有教程

# 🎯 推荐:运行完整教程体验器
python run_all_tutorials.py

# 选择您感兴趣的模块,或选择 "0" 运行所有教程

3️⃣ 单独模块体验

# 🔄 Transformer 基础
python transfomer/quick_start.py

# 📖 BERT 双向编码
python bert/quick_start.py

# 🖼️ Vision Transformer
python vit/quick_start.py

# 🤖 GPT 生成模型
python gpt/quick_start.py

# 🎯 指令微调技术
python instruction_tuning/quick_start.py

# 📝 传统词嵌入对比
python cbow/cbow_example.py

4️⃣ 深入学习

# 📚 阅读详细教程文档
# 每个模块都有完整的理论解释和实现细节

# 🎮 运行完整训练示例
python transfomer/run_examples.py
python vit/run_examples.py
python gpt/train_gpt.py

📚 学习路径

🌱 基础阶段 (第1-2周)

目标: 理解 Transformer 核心原理

  1. 🔄 Transformer 基础

    • 📖 阅读 transfomer/README_transformer_tutorial.md
    • 🚀 运行 transfomer/quick_start.py
    • 👁️ 体验注意力可视化
  2. 📝 词嵌入理解

    • 🎮 运行 cbow/cbow_example.py
    • 🔍 理解传统方法 vs Transformer 的区别

🛠️ 进阶阶段 (第3-4周)

目标: 掌握主要模型变体

  1. 📖 BERT 双向编码

    • 📚 学习掩码语言建模原理
    • 🎯 体验预训练过程
  2. 🖼️ Vision Transformer

    • 🔍 理解图像序列化处理
    • 🎨 对比 CNN vs ViT 的差异
  3. 🤖 GPT 生成模型

    • ⚡ 理解因果注意力机制
    • ✍️ 体验文本生成策略

🚀 高级阶段 (第5-8周)

目标: 掌握现代 LLM 技术

  1. 🎯 指令微调技术

    • 📖 阅读 instruction_tuning/README_instruction_tuning.md
    • 🔄 理解 SFT + RLHF 流程
  2. 🔬 深入研究

    • 🎛️ 调整模型超参数
    • 📊 分析训练过程
    • 🧪 设计消融实验

🎓 专家阶段 (持续学习)

目标: 跟踪前沿技术

  1. 🌟 前沿探索
    • 📚 参考 LLM_学习路径推荐.md
    • 🚀 实现最新论文
    • 🤝 参与开源贡献

🔬 核心技术解析

🧠 注意力机制

# 核心注意力公式
Attention(Q,K,V) = softmax(QK^T/d_k)V

# 多头注意力
MultiHead(Q,K,V) = Concat(head_1, ..., head_h)W^O
where head_i = Attention(QW_i^Q, KW_i^K, VW_i^V)

🏗️ 模型架构对比

模型 架构类型 注意力机制 主要应用 核心创新
Transformer 编码器-解码器 双向 + 因果 机器翻译 纯注意力架构
BERT 仅编码器 双向 文本理解 掩码语言建模
GPT 仅解码器 因果 文本生成 自回归生成
ViT 仅编码器 双向 图像分类 图像序列化

🎯 训练范式演进

传统 NLP (Pre-2017)
    ↓
Transformer (2017)
    ↓
预训练-微调 (BERT/GPT, 2018-2019)
    ↓
大规模语言模型 (GPT-3, 2020)
    ↓
指令微调 + RLHF (ChatGPT, 2022)
    ↓
多模态大模型 (GPT-4, 2023)

📊 项目特色

✨ 教学友好性

  • 📝 详细文档: 每个模块都有完整的理论教程
  • 🎨 丰富可视化: 注意力热图、训练曲线、模型结构图
  • 🔍 渐进式实现: 从基础组件到完整系统
  • 🎯 实际示例: 真实数据上的训练和推理
  • 🚀 一键运行: 提供统一的运行入口

🛠️ 工程实践性

  • ⚡ 高效实现: 优化的 PyTorch 代码
  • 🔧 模块化设计: 便于修改和扩展
  • 📊 完整评估: 训练、验证、测试全流程
  • 🐛 健壮处理: 完善的错误处理机制
  • 📈 性能监控: 详细的训练指标记录

🎓 学术严谨性

  • 📜 基于原论文: 忠实还原经典算法
  • 🔬 实验验证: 复现关键实验结果
  • 📈 性能基准: 标准数据集上的性能对比
  • 📚 理论深度: 数学原理的详细推导

🎉 项目亮点

🔥 核心功能

  1. 🔄 原始 Transformer

    • ✅ 完整的编码器-解码器实现
    • ✅ 多头注意力机制
    • ✅ 位置编码详细解析
    • ✅ 机器翻译任务训练
  2. 📖 BERT 双向编码

    • ✅ 掩码语言建模 (MLM)
    • ✅ 下一句预测 (NSP)
    • ✅ 预训练完整流程
    • ✅ 下游任务微调
  3. 🖼️ Vision Transformer

    • ✅ 图像块嵌入处理
    • ✅ 2D 位置编码
    • ✅ 图像分类训练
    • ✅ 与 CNN 性能对比
  4. 🤖 GPT 生成模型

    • ✅ 因果注意力掩码
    • ✅ 自回归文本生成
    • ✅ 多种采样策略
    • ✅ 语言建模训练
  5. 🎯 指令微调技术

    • ✅ 监督微调 (SFT) 原理
    • ✅ 奖励模型构建
    • ✅ RLHF 训练流程
    • ✅ 现代 LLM 技术栈

🎨 可视化展示

  • 👁️ 注意力热力图: 直观展示模型关注的内容
  • 📊 训练曲线: 实时监控训练进展
  • 🏗️ 模型结构图: 清晰的架构可视化
  • 📈 性能对比: 不同模型的定量比较

🧪 实验支持

  • 🔬 消融实验: 验证各组件的重要性
  • **📊 超参数分析

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published