micrograd
micrograd 是一个用于自动微分和神经网络训练的小型库。
包含两个部分:
-
第一部分是一个小型的自动微分引擎,实现了反向传播(反向模式自动微分),该引擎在一个动态构建的有向无环图(DAG)上操作,并且只适用于标量值。
-
第二部分是一个神经网络库,构建在自动微分引擎的基础上,其接口类似于 PyTorch。库的总大小小于 100 行代码。
该库的作者是 Andrej Karpathy。
- micrograd 是一个小型的自动微分引擎,用于反向传播(反向模式自动微分),其在动态构建的有向无环图上操作,只支持标量值。
- micrograd 还包括一个神经网络库,其接口类似于 PyTorch,其大小也小于 100 行代码。
- README 文件包含一个示例,演示了如何使用库进行前向传播和反向传播过程。
- 示例文件 "demo.ipynb" 是一个完整的教程,演示了如何使用库来训练一个二分类神经网络。
- 测试文件用于运行库的单元测试,需要安装 PyTorch 作为参考来验证计算出的梯度是否正确。
- 该库在 GitHub 上是开源的,其许可证为 MIT 许可证。
网络资源
在自学过程中,我搜集到许多高质量资料,本文是站在这些巨人的肩膀上的,感谢他们:
- 项目首页:karpathy/micrograd
- A tiny scalar-valued autograd engine and a neural net library on top of it with PyTorch-like API
- Anri-Lombard/micrograd
- Anri-Lombard 对 micrograd 的自学笔记,非常有价值。
- 相当于一篇大纲
- The spelled-out intro to neural networks and backpropagation: building micrograd - YouTube
- Andrej Karpathy 的讲解视频
- Getting Started with Micrograd TS | HackerNoon
- 将 Micrograd 使用 TypeScript 改写
- 借助前端优势,开发出精美的前端展示,更好体现出训练过程
- Automatic Differentiation Part 1: Understanding the Math - PyImageSearch
- Automatic Differentiation Part 2: Implementation Using Micrograd - PyImageSearch
- 以上两篇是一个系列,非常高质量的学习资料
- [P] I replicated micrograd in C++ and added more functionality : r/MachineLearning
- Back(prop) to Basics — Fundamentals of Neural Networks | by Elad Rapaport | Medium
- 高质量好文
- Back(prop) to Basics — Fundamentals of Neural Networks | by Elad Rapaport | Medium
- micrograd-rs - crates.io: Rust Package Registry
- Andrej Karpathy | 详解神经网络和反向传播(基于 micrograd) - 矩池云 - 博客园
- 包含双语字幕的 B 站视频
- neolateral - Notes from Andrej Karpathy's building micrograd video.
- Building A Mental Model for Backpropagation | by Logan Yang | Towards Data Science
- 我把 ML 模型编译成 C 后,速度竟提升了 1000 倍!_编译器_函数_圆圈
- 【深度学习框架】基于标量自动微分的微型神经网络库MicroGrad(类Pytorch) - LeonYi - 博客园
- Home - cpp_grad: a first adventure into backpropagation and neural networks
- 从0实现一个极简的自动微分框架 - Nagi-ovo
- Micrograd in a Weekend - Moll.dev
- micrograd-js - npm Package Security Analysis - Socket
- 微型神经网络库MicroGrad-基于标量自动微分的类pytorch接口的深度学习框架-CSDN博客
- 【深度学习框架】基于标量自动微分的微型神经网络库MicroGrad(类Pytorch) - 知乎
- GitHub 1400星,天才黑客开源深度学习框架tinygrad-36氪
- Yet another backpropagation tutorial – Windows On Theory
- 小型深度学习框架 | TinyGrad,不到1K行代码(附代码下载)-腾讯云开发者社区-腾讯云
- 从 0 手撸一个 pytorch - 知乎
- 微型神经网络库MicroGrad-基于标量自动微分的类pytorch接口的深度学习框架 - 技术经验 - W3xue
本文作者:Maeiee
本文链接:micrograd
版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!
喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!