1. 首页
  2. 考试认证
  3. 其它
  4. rust ad Rust自动微分库(一阶正向AD)

rust ad Rust自动微分库(一阶正向AD)

上传者: 2024-11-11 02:17:03上传 ZIP文件 4.63KB 热度 22次

Rust的自动微分库 rust-ad 目前只支持一阶正向AD。以下是一个简单的示例,计算在点(1, 2)处,函数 exp(x/y²) 的梯度:


let result = ad::grad(|x| { Float::exp(x[0] / Float::powi(x[1], 2)) }, vec![1.0, 2.0]);

println!(\"Out: {}\", result); // Out: [0.321006, -0.321006]

在此示例中,rust-ad 库通过 grad 函数计算了该函数在给定点的梯度。梯度的结果为 [0.321006, -0.321006],分别表示函数在 x 和 y 方向的导数。

下载地址
用户评论