项目
我做过的项目,按类型分组;公开课自学作业列在页面底部。
公开课自学作业
在本科学习之外,我会跟着其他大学公开的课程材料自学。这些仓库是我对相应作业的解答,放在这里是为了完整,而不是作为原创项目。派生仓库等其余内容见 仓库目录。
AI 与智能体系统 (9)
- WEIPING_WHALE — 基于 CodeWhale 的终端 DeepSeek 编码智能体,支持快照、会话分支、模型路由、子智能体、诊断与成本跟踪。
- aics-labs — 基于“智能计算系统”公开实验材料的自学实现,涵盖算子、小型深度学习框架与图像风格迁移。
- cmu11667-llms — 基于卡内基梅隆大学 11-667 公开材料的自学实现,涵盖 Transformer、检索与工具调用、上下文学习、校准及效率。
- cmu11711-anlp — 基于卡内基梅隆大学 11-711 公开材料的自学作业,包括面向情感、复述与相似度任务的小型 BERT 实现。
- cs224n-nlp — 基于斯坦福大学 CS224N 公开材料的自然语言处理自学作业,涵盖词向量、依存句法分析、神经机器翻译与 Transformer 预训练。
- cs231n-assignments — 基于斯坦福大学 CS231N 公开材料的计算机视觉自学作业,涵盖分类器、卷积网络、序列模型、图像描述与生成模型。
- cs50-ai — 基于哈佛大学 CS50 AI 公开材料的自学项目,涵盖搜索、逻辑、概率推断、优化、机器学习、计算机视觉与自然语言处理。
- deep-learning-specialization — 基于 DeepLearning.AI 深度学习专项课程公开材料的自学实现,涵盖优化、卷积网络与序列模型。
- lhy-ml-homeworks — 基于李宏毅机器学习公开课程材料的自学作业,涵盖监督学习、生成模型与强化学习等主题。
推荐、模型与数据 (19)
- cmu-17803-empirical — 基于卡内基梅隆大学 17-803 公开材料的自学分析,涵盖实证研究设计、统计方法与软件工程研究复现。
- cmu10708-pgm — 基于卡内基梅隆大学 10-708 公开材料的自学实现,涵盖概率推断、参数学习与结构化概率模型。
- cmu11785-idl — 基于卡内基梅隆大学 11-785 公开材料的深度学习自学实现,涵盖自动微分、神经网络组件、序列模型与注意力。
- cs189-ml — 基于加州大学伯克利分校 CS189 公开材料的机器学习自学作业,涵盖分类、回归、树模型、神经网络、聚类、PCA 与核方法。
- cs224w-graph-ml — 基于斯坦福大学 CS224W 公开材料的图机器学习自学作业,涵盖节点嵌入、消息传递网络、分类与链接预测。
- cs229-machine-learning — 基于斯坦福大学 CS229 公开材料的机器学习自学作业,涵盖回归、生成式分类器、支持向量机、聚类、PCA 与强化学习。
- cs229m-ml-theory — 基于斯坦福大学 STATS 214 与 CS229M 公开材料的机器学习理论自学练习,涵盖集中不等式、复杂度、间隔、核方法与在线学习。
- cs285-deep-rl — 基于加州大学伯克利分校 CS285 公开材料的深度强化学习自学作业,涵盖模仿学习、策略梯度、价值方法、模型式学习与离线强化学习。
- eecs498-deep-vision — 基于密歇根大学 EECS 498/598 公开材料的计算机视觉自学作业,涵盖分类器、卷积与循环网络、目标检测和生成模型。
- flow-matching-6s184 — 基于麻省理工学院 6.S184 公开材料的生成模型自学实现,涵盖流匹配与基于分数的扩散模型。
- mit-6s7960-dl — 基于麻省理工学院 6.S7960 公开材料的深度学习自学作业,聚焦神经网络组件与训练方法的实现和分析。
- ml-specialization-labs — 基于机器学习专项课程公开材料的自学实现,涵盖回归、神经网络、树模型、聚类、异常检测、推荐与深度 Q 学习。
- needle-dl-system — 基于卡内基梅隆大学 10-414/714 公开材料的 Needle 深度学习框架自学实现,涵盖自动微分、网络模块、优化、数组后端与序列模型。
- neural-networks-zero-to-hero — 基于 Karpathy《Zero to Hero》公开材料的自学实现,包括 micrograd、makemore、小型 GPT 与 BPE 分词。
- nyu-dl-2021 — 基于纽约大学 2021 年深度学习公开课程材料的自学作业,涵盖反向传播、卷积与循环网络、注意力和能量模型。
- sta4273-min-expectations — 基于多伦多大学 STA4273 公开材料的自学项目,涵盖变分方法、梯度估计与潜变量模型。
- stanford-ee364a-convex — 基于斯坦福大学 EE364A 公开材料的凸优化自学练习,使用 CVXPY 处理线性、二次、二阶锥与半正定优化问题。
- stat8201-dgm — 基于哥伦比亚大学 STAT8201 公开材料的深度生成模型自学作业,涵盖变分自编码器、归一化流、GAN、自回归模型与扩散模型。
- ucb-data100 — 基于加州大学伯克利分校 Data 100 公开材料的数据科学自学实验,涵盖回归、优化、分类、降维、聚类与应用项目。
系统、安全与基础设施 (37)
- asu-cse365 — 基于 ASU CSE365 与 pwn.college 公开材料的安全自学练习,涵盖 Linux 权限、Shellcode、调试与 Web 漏洞。
- asu-cse466 — 基于 ASU CSE466 与 pwn.college 公开材料的系统安全自学练习,涵盖逆向工程、内存破坏与沙箱机制。
- caltech-cs122-nanodb — 基于加州理工学院 CS122 公开材料的 NanoDB 自学实现,涵盖存储、缓冲管理、B+ 树、查询规划与事务。
- cmu-15445-bustub — 基于卡内基梅隆大学 15-445 公开材料的 BusTub 数据库自学实现,涵盖缓冲管理、B+ 树、查询执行与并发。
- cmu-15799 — 基于卡内基梅隆大学 15-799 数据库系统公开材料的自学实现,聚焦查询优化与数据库内部机制。
- cmu11868-llm-systems — 基于卡内基梅隆大学 11-868 公开材料的系统自学实现,涵盖注意力内核、内存与量化技术,以及并行训练和推理服务。
- cs110l-rust — 基于斯坦福大学 CS110L 公开材料的 Rust 自学练习,包括系统编程、ptrace 调试器与异步负载均衡器。
- cs144-tcp — 基于斯坦福大学 CS144 公开材料的 TCP/IP 协议栈自学实现,涵盖字节流、重组、TCP 收发、网络接口与路由。
- cs149-parallel — 基于卡内基梅隆大学 15-418 与斯坦福大学 CS149 公开材料的并行计算自学作业,涉及 ISPC、pthreads、OpenMP 与 CUDA。
- cs162-pintos — 基于加州大学伯克利分校 CS162 公开材料的 Pintos 操作系统自学项目,涵盖调度、系统调用、用户程序与文件系统。
- cs168-internet — 基于加州大学伯克利分校 CS168 公开材料的网络自学项目,涵盖可靠传输、路由与 Traceroute。
- cs186-rookiedb — 基于加州大学伯克利分校 CS186 公开材料的 RookieDB 自学实现,涵盖 B+ 树、连接、查询优化、并发与恢复。
- csapp-labs — 基于卡内基梅隆大学 15-213 与《深入理解计算机系统》公开材料的系统自学练习,涵盖数据表示、汇编、缓存、Shell、内存分配与网络代理。
- cse234-ml-data-systems — 基于加州大学圣迭戈分校 CSE234 公开材料的自学作业,涵盖自动微分、计算图与算子优化,以及并行机器学习系统。
- hit-os — 基于哈尔滨工业大学操作系统公开材料的自学实验,修改 Linux 0.11 的启动、系统调用、调度、进程通信、终端与 procfs 等组件。
- kaist-cs220-rust — 基于 KAIST CS220 公开材料的 Rust 自学作业,聚焦编程语言原理与函数式抽象。
- kaist-cs420 — 基于 KAIST CS420 公开材料的 Rust 编译器自学实现,涵盖 C 语言的中间表示、优化与汇编生成。
- kaist-cs431-concurrent-rust — 基于 KAIST CS431 公开材料的 Rust 自学作业,涵盖有锁与无锁数据结构、危险指针及并发哈希表。
- kurose-wireshark-labs — 基于 Kurose 与 Ross 计算机网络公开材料的数据包分析自学实验,使用 Python 与 Scapy 观察常见互联网协议。
- missing-semester — 基于麻省理工学院 Missing Semester 公开材料的自学练习,涵盖 Shell、编辑器、数据处理、版本控制、调试、构建系统与安全。
- mit-6.1600 — 基于麻省理工学院 6.1600 公开材料的安全自学实验,涵盖哈希、Merkle 树、密码攻击、侧信道、沙箱与模糊测试。
- mit-6824-raft — 基于麻省理工学院 6.824/6.5840 公开材料的分布式系统自学实验,涵盖 MapReduce、Raft、容错键值服务与分片。
- mit-6858 — 基于麻省理工学院 6.858 公开材料的系统安全自学实验,以 Zoobar 应用探索内存安全、隔离、符号执行、浏览器安全与安全存储。
- mlc-exercises — 基于 MLC 公开课程材料的机器学习编译自学练习,涵盖 TensorIR、模型编译、程序优化与 Apache TVM 集成。
- nju-compilers — 基于南京大学编译原理公开材料的编译器自学实现,涵盖词法、语法、语义分析、中间表示与代码生成。
- nju-os — 基于南京大学操作系统公开材料的自学实验,涵盖宿主工具、并发、进程管理、内存与文件系统。
- pku-sysy-compiler — 基于北京大学编译实践公开材料的 SysY 编译器自学实现,将类 C 语言经 Koopa IR 降至 RISC-V 汇编。
- seed-labs — 基于雪城大学 SEED Labs 公开材料的安全自学练习,涵盖部分软件、密码学、网络与 Web 安全主题。
- sjtu-compilers — 基于上海交通大学编译原理公开材料的编译器自学实现,覆盖类 C 语言编译流程的主要阶段。
- stanford-cs110-syscore — 基于斯坦福大学 CS110 公开材料的 C++ 系统自学项目,包括文件系统、进程、Shell、线程池、代理与 MapReduce。
- stanford-cs143-cool — 基于斯坦福大学 CS143 公开材料的 Cool 编译器自学实现,涵盖词法、语法、语义分析与 MIPS 代码生成。
- stanford-cs346-db — 基于斯坦福大学 CS346 公开材料的 RedBase 关系数据库自学实现,涵盖分页存储、B+ 树、目录、查询执行、优化与聚合。
- sysadmin-decal — 基于加州大学伯克利分校 OCF Linux 系统管理 DeCal 公开材料的自学练习,涵盖命令行、服务、网络、安全与故障排查。
- top-down-labs — 基于中国科学技术大学公开材料与自顶向下网络课程体系的自学实验,涵盖套接字、协议与 Mininet。
- ucb-cs161 — 基于加州大学伯克利分校 CS161 公开材料的安全自学项目,涵盖内存安全、密码学、网络安全与 Web 漏洞。
- ustc-compilers — 基于中国科学技术大学编译原理公开材料的 Cminus-f 编译器自学实现,涵盖词法、语法分析、LightIR/LLVM IR 与代码生成。
- xv6-labs — 基于麻省理工学院 6.S081/6.1810 与 xv6 公开材料的操作系统自学实验,涵盖系统调用、虚拟内存、陷阱、写时复制、网络、同步、文件系统与 mmap。
机器人、嵌入式与硬件 (7)
- cs61c — 基于加州大学伯克利分校 CS61C 公开材料的计算机体系结构自学项目,涵盖 C、RISC-V、流水线处理器与并行矩阵计算。
- ethz-computer-architecture — 基于苏黎世联邦理工学院计算机体系结构公开材料的模拟器自学练习,涵盖缓存、分支预测、预取与内存系统。
- mit-6007-signals — 基于麻省理工学院 6.007 公开材料的 Python 信号与系统自学实现,涵盖 LTI 系统、傅里叶分析、采样、变换、滤波、调制与反馈。
- nand2tetris — 基于 Nand2Tetris 公开材料的自学实现,从逻辑门与 CPU 延伸至汇编器、虚拟机、Jack 编译器和操作系统。
- tinyml-efficient-dl — 基于麻省理工学院 6.5940 公开材料的高效深度学习自学实验,涵盖剪枝、量化、神经架构搜索与模型效率技术。
- ucb-ee120-signals — 基于加州大学伯克利分校 EE120 公开材料的 Python 信号自学实验,涵盖卷积、LTI 系统、采样、傅里叶分析、生物信号、降噪与反馈。
- ucb-ee16ab — 基于加州大学伯克利分校 EE16A 与 EE16B 公开材料的 Python 自学实验,涵盖成像、定位、分类、动力学、估计、控制与矩阵方法。
图形、游戏与创意计算 (9)
- cmu-15462-scotty3d — 基于卡内基梅隆大学 15-462/662 Scotty3D 公开材料的 Python/NumPy 自学复现,涵盖光栅化、网格处理、路径追踪与动画。
- cs188-pacman-ai — 基于加州大学伯克利分校 CS188 公开材料的 Pacman AI 自学项目,涵盖搜索、对抗博弈、强化学习、概率推断与机器学习。
- duke-intro-c — 基于杜克大学 C 语言入门专项课程公开材料的自学项目,包括纸牌游戏与图像数据练习。
- games101 — 基于 GAMES101 公开材料的计算机图形学自学作业,涵盖光栅化、着色、贝塞尔曲线、光线追踪、加速结构与路径追踪。
- games103 — 基于 GAMES103 公开材料的物理动画自学实现,涵盖刚体、质点弹簧布料、有限元弹性体与浅水模拟。
- games202 — 基于 GAMES202 公开材料的渲染自学实现,涵盖软阴影、预计算辐射传输、屏幕空间效果、能量补偿与降噪。
- mit-6031-software-construction — 基于麻省理工学院 6.031 公开材料的 Java 自学项目,聚焦规格说明、抽象数据类型、测试、解析器、图与协作应用。
- stanford-cs148 — 基于斯坦福大学 CS148 公开材料的 CPU 渲染器自学实现,涵盖光栅化、Whitted 光线追踪、层次包围盒与蒙特卡洛路径追踪。
- ustc-cg — 基于中国科学技术大学计算机图形学公开材料的自学实现,涵盖图像与网格处理、参数化、变形、简化、光栅化与路径追踪。
课程、自学复现与笔记 (33)
- aut-ap1400 — 基于阿米尔卡比尔理工大学 AP1400-2 公开材料的 C++ 自学作业,涵盖面向对象编程与数据结构。
- cambridge-semantics — 基于剑桥大学编程语言语义公开材料的自学练习,涉及小型语言的操作语义与机械化表述。
- cornell-cs3110-ocaml — 基于康奈尔大学 CS3110 公开材料的 OCaml 自学作业,涵盖函数式编程、模块、测试与综合项目。
- cs106b — 基于斯坦福大学 CS106B 公开材料的 C++ 自学作业,涵盖递归、回溯、抽象数据类型、树、图与算法。
- cs106l — 基于斯坦福大学 CS106L 公开材料的自学作业,聚焦 STL、RAII、模板、迭代器与移动语义等现代 C++ 主题。
- cs169-agile — 基于加州大学伯克利分校 CS169 公开材料的 Web 工程自学作业,使用 Ruby on Rails 实践行为驱动与测试驱动开发。
- cs170 — 基于加州大学伯克利分校 CS170 公开材料的算法自学项目,结合书面分析与可计算、难解问题的算法实现。
- cs50p — 基于哈佛大学 CS50P 公开材料的 Python 自学练习,涵盖语言基础、测试、文件处理、正则表达式与面向对象设计。
- cs50x — 基于哈佛大学 CS50x 公开材料的计算机科学自学项目,使用 C、Python、SQL 与 Web 技术。
- cs571-react-native — 基于威斯康星大学麦迪逊分校 CS571 公开材料的全栈聊天应用自学实现,包括 REST API、React 网页端与 React Native 移动端。
- cs61a-sicp — 基于加州大学伯克利分校 CS61A 公开材料的自学项目,涵盖函数抽象、数据结构、解释器与 Python 实现的 Scheme。
- cs61b — 基于加州大学伯克利分校 CS61B 公开材料的 Java 自学项目,涵盖数据结构、算法、版本控制系统与瓦片世界生成。
- ethz-ddca — 基于苏黎世联邦理工学院数字设计公开材料的 SystemVerilog 自学实验,聚焦 MIPS 与 RISC-V 处理器的构建和仿真。
- full-stack-open — 基于赫尔辛基大学 Full Stack Open 公开材料的自学应用,包括 React/Express 博客系统与 Apollo GraphQL 图书服务。
- haskell-mooc — 基于赫尔辛基大学 Haskell MOOC 公开材料的函数式编程自学练习,覆盖课程的十六组主题。
- info-theory-mackay — 基于 David MacKay 信息论教材的 Python 自学实现,涵盖编码、信道、纠错、MCMC 与期望最大化。
- mit-1801-1802-calculus — 基于麻省理工学院 18.01 与 18.02 公开材料的微积分自学练习与数值核验,涵盖单变量和多变量微积分。
- mit-1806-linear-algebra — 基于麻省理工学院 18.06 公开材料的 NumPy 自学实现,涵盖矩阵分解、最小二乘、特征值方法、SVD、PageRank 与离散傅里叶变换。
- mit-18330-numerical — 基于麻省理工学院 18.330 公开材料的 Julia 数值分析自学练习,涵盖基础数值方法与收敛行为。
- mit-6006 — 基于麻省理工学院 6.006 公开材料的算法自学练习,涵盖数据结构、图算法、动态规划及相关问题。
- mit-6042j — 基于麻省理工学院 6.042J 公开材料的代码与证明笔记,涵盖数论、图、计数、生成函数、概率与随机游走。
- mit-6046 — 基于麻省理工学院 6.046 公开材料的算法自学练习,结合书面分析、算法设计与实现。
- mit-6050j-info-theory — 基于麻省理工学院 6.050J 公开材料的 Python 信息论自学实现,涵盖熵、互信息、信源编码、信道容量、纠错与最大熵。
- mit-6092-java — 基于麻省理工学院 6.092 公开材料的 Java 自学练习,涵盖编程基础、面向对象设计、集合与基础应用开发。
- mit-6100l — 基于麻省理工学院 6.100L 公开材料的 Python 自学练习,涵盖编程基础、问题分解、算法与数据结构。
- mit-web — 基于麻省理工学院 web.lab 公开材料的 MERN 社交应用自学实现,包含身份验证、实时聊天与前后端服务。
- nju-software-analysis — 基于南京大学软件分析公开材料与 Tai-e 框架的自学作业,涵盖数据流、调用图、指针与污点分析。
- pku-software-analysis — 基于北京大学软件分析公开材料的自学作业,涵盖静态与动态分析、数据流和符号执行。
- princeton-algorithms — 基于普林斯顿大学 Algorithms I 与 II 公开材料的 Java 自学作业,涵盖并查集、排序、图、字符串算法与压缩。
- stanford-cs142 — 基于斯坦福大学 CS142 公开材料的 MERN 照片应用自学实现,涵盖会话、注册、上传、评论与动态流。
- stanford-cs242 — 基于斯坦福大学 CS242 公开材料的编程语言自学作业,涵盖 Lambda 演算、类型系统与语言实现。
- ucb-cs126 — 基于加州大学伯克利分校 EECS 126 公开材料的概率自学练习,涵盖编码、随机图、随机过程、检测与滤波。
- ucb-cs70 — 基于加州大学伯克利分校 CS70 公开材料的代码与笔记,涵盖离散数学、数论、编码、匹配、概率与马尔可夫链。