Tangent 是一个免费、开源的新 Python 库,用于自动微分。和目前已有的机器学习库不同,Tangent 是一个源到源(source-to- source)的系统,利用 Python 函数 f 生成一个新的 Python 函数,来计算 f 的梯度。这为用户提供了更好的梯度计算可视化,使用户可以容易地对梯度进行编辑和调试。Tangent 在调试和设计机器学习模型上有如下特征:
易于调试反向传播过程
快速编辑和调试梯度
正向模式(Forward mode)自动微分
高效的 Hessian 向量内积(Hessian-vector products)
代码优化