可微编程与深度学习

作者

刘思喆

发布于

2026年3月29日

序言

torch (Falbel 和 Luraschi 2025) 包是一个为 R 语言习惯量身定制,直接构建在 C++ 的 LibTorch 之上 的原生框架。

本课程使用 torch 作为核心工具,正是看重其在“算法透明度”与“工程直觉”之间的完美平衡:

  • torch 坚持使用 R 的 1 起始 (1-based) 索引。这意味着当你面对数学公式中的 \(x_1\) 时,代码里就是 x[1] 而非反直觉的 x[0]。这种微小的一致性,极大地降低了将公式转化为算法时的认知负荷
  • 与高度封装、隐去细节的高级框架不同,torch 鼓励通过 nn_module 手动编写 forward 函数。配合动态计算图(Dynamic Graph),你可以像操作原生矩阵一样随时暂停、检查张量维度、观察梯度流动。这让深度学习不再是不可捉摸的黑盒,而是触手可及的数值演算。

本课程将从传统统计回归开始,讲解自动微分的机制,最终以工业界非常典型的变现业务推荐系统为例,讲解召回模型。让同学们体会“优雅的”数据处理 tidyverse、统计绘图 ggplot2、深度学习 torch,直至工程部署的闭环过程。同学们可以看到大量的管道操作 %>%|> 的数据流和建模流。

刘思喆,2026 年 3 月,北京