文件名称:HyperJet:C ++和Python中具有超双数的算法区分
文件大小:1.93MB
文件格式:ZIP
更新时间:2024-03-29 13:47:21
automatic-differentiation dual-numbers derivatives gradient hessian
HyperJet —适用于Python和C ++的具有超双数的算法区分 仅标头的库,用于使用双对数进行算法区分。 用C ++ 17编写,带有扩展的Python接口。 安装 pip install hyperjet 快速开始 导入模块: import hyperjet as hj 创建一组变量,例如x=3和y=6 : x , y = hj . DDScalar . variables ([ 3 , 6 ]) x和y是双偶数。 这由后缀hj表示: x >> > 3 hj 以简单的float获取值: x . f >> > 3 超双数将导数存储为numpy数组。 获取超双数的一阶导数(梯度): x . g # = [dx/dx, dx/dy] >> > array ([ 1. , 0. ]) 获取二阶导数(Hessian矩阵): x . hm () # = [[d^2