Tangent: Automatic Differentiation Using Source Code Transformation in Python

11/07/2017
by   Bart van Merriënboer, et al.
0

Automatic differentiation (AD) is an essential primitive for machine learning programming systems. Tangent is a new library that performs AD using source code transformation (SCT) in Python. It takes numeric functions written in a syntactic subset of Python and NumPy as input, and generates new Python functions which calculate a derivative. This approach to automatic differentiation is different from existing packages popular in machine learning, such as TensorFlow and Autograd. Advantages are that Tangent generates gradient code in Python which is readable by the user, easy to understand and debug, and has no runtime overhead. Tangent also introduces abstractions for easily injecting logic into the generated gradient code, further improving usability.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/25/2018

Tangent: Automatic differentiation using source-code transformation for dynamically typed array programming

The need to efficiently calculate first- and higher-order derivatives of...
research
07/09/2020

ACORNS: An Easy-To-Use Code Generator for Gradients and Hessians

The computation of first and second-order derivatives is a staple in man...
research
04/04/2023

Automatic Differentiation of Binned Likelihoods With Roofit and Clad

RooFit is a toolkit for statistical modeling and fitting used by most ex...
research
04/05/2021

AuTO: A Framework for Automatic differentiation in Topology Optimization

A critical step in topology optimization (TO) is finding sensitivities. ...
research
09/25/2021

AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Julia

No single Automatic Differentiation (AD) system is the optimal choice fo...
research
10/12/2021

A Brief Introduction to Automatic Differentiation for Machine Learning

Machine learning and neural network models in particular have been impro...
research
10/27/2016

GPflow: A Gaussian process library using TensorFlow

GPflow is a Gaussian process library that uses TensorFlow for its core c...

Please sign up or login with your details

Forgot password? Click here to reset