SPLASH 2017 (series) / DSLDI 2017 (series) / DSLDI 2017 /
Tangent: automatic differentiation using source code transformation in Python
Automatic differentiation (AD) is an essential primitive for machine learning programming systems. Tangent is a Python package 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 transforms them into 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 and easy to understand and debug. Tangent also introduces a new syntax for easily injecting code into the generated gradient code, further improving usability.
(dsldi17-final14.pdf) | 139KiB |
Sun 22 OctDisplayed time zone: Tijuana, Baja California change
Sun 22 Oct
Displayed time zone: Tijuana, Baja California change
10:30 - 12:00 | |||
10:30 22mTalk | Substance and Style: domain-specific languages for mathematical diagrams DSLDI Wode Ni Columbia University, Katherine Ye , Joshua Sunshine Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Keenan Crane Carnegie Mellon University File Attached | ||
10:52 22mTalk | Debugging Domain-Specific Languages Defined with Macros DSLDI File Attached | ||
11:15 22mTalk | DSL Design for Reinforcement Learning Agents DSLDI Christopher Simpkins Georgia Institute of Technology, Spencer Rugaber Georgia Institute of Technology, Charles Isbell, Jr. Georgia Institute of Technology File Attached | ||
11:37 22mTalk | Tangent: automatic differentiation using source code transformation in Python DSLDI File Attached |