-
内容大纲
本书以Google开发的JAX开源框架为载体,详细介绍了JAX在可微分编程领域的应用,具体包括自动微分的基本原理、数据结构,以及自动微分在实际场景中的应用,其涉及的领域包括但不限于算法优化、神经网络、工程建模、量子计算等。
本书分为3部分,总计10章外加5篇附录。第1部分介绍了可微分编程的基本原理,包括手动求导、数值微分、符号微分以及自动微分的前向模式和反向模式,在未调用任何库函数的情况下,从零开始构建起了符号微分及自动微分的数据结构。第2部分是对JAX库特性的介绍,包括JAX的基本语法、自动微分、即时编译和并行计算,并以此为切口,对深度学习、λ演算等领域进行了深入浅出的讲解。第3部分是自动微分在实际场景中的应用,除了算法优化、神经网络等极其经典的应用场景,这一部分还给出了自动微分在工程建模、量子计算等方面的理论及应用。
本书涵盖的范围虽广,但对其中每个领域的介绍都绝非浅尝辄止,无论材料的选取、内容的编排,还是论述的视角、观点的呈现,均不乏新颖之处。通过本书的学习,读者不但可以掌握JAX开源框架的用法,还可以获悉JAX在可微分编程领域的具体应用方法。本书适合在工作中会用到自动微分技术的工程技术人员、高校科研人员阅读,也适合对JAX感兴趣并希望能掌握其应用的AI技术人员阅读。 -
作者介绍
程琪皓,北京大学物理学院本科生,曾获第36届全国中学生物理竞赛(浙江赛区)一等奖、“未名学子”奖学金、沈克琦奖学金、北京大学三等奖学金等多项奖励。研究方向涉及强化学习、低维超导实验、量子计算、分子模拟等多个领域。 -
目录
六重奏女士的诅咒
第1章 程序视角下的微分运算
1.1 函数与求导
1.1.1 求导的基本概念
1.1.2 梯度操作(Gradient Operator)
1.1.3 雅可比矩阵(Jacobian Matrix)
1.1.4 黑塞矩阵(Hessian Matrix)
1.2 手动求导
1.3 数值微分(Numeric Differentiation)
1.3.1 数值微分的理论基础
1.3.2 数值微分的误差来源
1.3.3 数值微分的程序实现
1.4 符号微分(Symbolic Differentiation)
1.4.1 计算图
1.4.2 计算图的构建
1.4.3 SymPy库简介
第2章 自动微分
2.1 前向模式(forward mode)
2.1.1 前向模式的理论
*2.1.2 前向模式的二元数诠释
2.1.3 前向微分的程序实现
2.2 反向模式(backward mode)
2.2.1 反向模式的理论
*2.2.2 反向模式和前向模式的统一
2.2.3 反向模式的程序实现
第3章 初识JAX
3.1 数组的创建
3.1.1 数组的性质
3.1.2 创建数组的函数
3.1.3 随机数组的创建
3.2 数组的修改
3.2.1 多维数组的重排
3.2.2 多维数组的扩展
3.2.3 多维数组的索引
3.2.4 越界行为的处理
3.2.5 异地更新
3.3 数组的运算
3.3.1 语义广播
3.3.2 数组运算
3.3.3 线性代数
3.3.4 科学计算
3.3.5 爱因斯坦求和约定
3.4 使用蒙特卡罗方法估计圆周率
第4章 JAX的微分运算
4.1 微分操作的语法
4.1.1 JAX中的梯度操作
4.1.2 JAX中的雅可比矩阵
4.1.3 JAX中的黑塞矩阵
4.1.4 自定义算符及隐函数求导
4.2 梯度下降
4.2.1 从最小二乘法说开去
4.2.2 寻找极小值
4.2.3 训练及误差
4.2.4 全连接神经网络
第5章 JAX的编程范式及即时编译
5.1 函数式编程
5.1.1 函数式编程的价值观
5.1.2 JAX中的即时编译
5.1.3 JAX中的条件语句
5.1.4 JAX中的流程控制语句
5.1.5 静态变量
*5.2 λ演算
5.2.1 λ演算的基本设定
5.2.2 λ演算中的布尔代数
5.2.3 λ演算中的自然数
5.2.4 λ演算中的递归
第6章 JAX的并行计算
6.1 函数vmap
6.2 使用vmap在GPU上并行训练
6.3 函数pmap
6.4 使用pmap更新细胞自动机
第7章 优化算法
7.1 下降算法概要
7.1.1 下降算法的数学表述
7.1.2 步长的选取
7.1.3 终止条件的选取
7.1.4 下降方向的选取
*7.1.5 共轭梯度算法
7.2 一阶优化算法
7.2.1 动量法
7.2.2 自适应算法
7.2.3 Adam
第8章 循环神经网络
*8.1 神经网络的生物学基础
8.1.1 神经元的电化学性质
8.1.2 神经元输出过程的建模
8.1.3 神经元构成网络的建模
8.2 循环神经网络
8.2.1 简单循环神经网络
8.2.2 循环神经网络的梯度回传
8.2.3 简单循环神经网络的程序实现
8.2.4 长短期记忆单元及其程序实现
8.2.5 案例:股票预测
第9章 案例:FAST主动反射面的形态调节
9.1 背景介绍
9.2 数据的预处理
9.3 约束优化问题的提出及模型的训练
9.4 程序运行结果的讨论
第10章 量子计算中的自动微分
*10.1 量子计算的数学基础
10.1.1 算符与量子态
10.1.2 算符的指数
10.1.3 算符的对易子
*10.2 量子计算的物理基础
10.2.1 波粒二象性
10.2.2 薛定谔方程
10.2.3 动量空间
*10.3 基于量子体系的自动微分
10.3.1 量子比特
10.3.2 参数优化
附录A Python中类的介绍
附录B 拓扑排序
附录C 信息和熵
附录D 下降算法的收敛性分析
附录E 神经元的Hodgkin Huxley模型
后记
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
