Distributions for Compositionally Differentiating Parametric Discontinuities
Computations in physical simulation, computer graphics, and probabilistic inference often require the differentiation of discontinuous processes due to contact, occlusion, and changes at a point in time. Popular differentiable programming languages, such as PyTorch and JAX, ignore discontinuities du...
Main Authors: | , , , , , , , , |
---|---|
Other Authors: | |
Format: | Article |
Language: | English |
Published: |
Association for Computing Machinery
2024
|
Online Access: | https://hdl.handle.net/1721.1/154393 |
_version_ | 1826200167385137152 |
---|---|
author | Michel, Jesse Mu, Kevin Yang, Xuanda Bangaru, Sai Praveen Collins, Elias Rojas Bernstein, Gilbert Ragan-Kelley, Jonathan Carbin, Michael Li, Tzu-Mao |
author2 | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory |
author_facet | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Michel, Jesse Mu, Kevin Yang, Xuanda Bangaru, Sai Praveen Collins, Elias Rojas Bernstein, Gilbert Ragan-Kelley, Jonathan Carbin, Michael Li, Tzu-Mao |
author_sort | Michel, Jesse |
collection | MIT |
description | Computations in physical simulation, computer graphics, and probabilistic inference often require the differentiation of discontinuous processes due to contact, occlusion, and changes at a point in time. Popular differentiable programming languages, such as PyTorch and JAX, ignore discontinuities during differentiation. This is incorrect for
<jats:italic>parametric discontinuities</jats:italic>
—conditionals containing at least one real-valued parameter and at least one variable of integration. We introduce Potto, the first differentiable first-order programming language to soundly differentiate parametric discontinuities. We present a denotational semantics for programs and program derivatives and show the two accord. We describe the implementation of Potto, which enables separate compilation of programs. Our prototype implementation overcomes previous compile-time bottlenecks achieving an 88.1x and 441.2x speed up in compile time and a 2.5x and 7.9x speed up in runtime, respectively, on two increasingly large image stylization benchmarks. We showcase Potto by implementing a prototype differentiable renderer with separately compiled shaders. |
first_indexed | 2024-09-23T11:32:12Z |
format | Article |
id | mit-1721.1/154393 |
institution | Massachusetts Institute of Technology |
language | English |
last_indexed | 2025-02-19T04:20:31Z |
publishDate | 2024 |
publisher | Association for Computing Machinery |
record_format | dspace |
spelling | mit-1721.1/1543932025-01-04T05:56:55Z Distributions for Compositionally Differentiating Parametric Discontinuities Michel, Jesse Mu, Kevin Yang, Xuanda Bangaru, Sai Praveen Collins, Elias Rojas Bernstein, Gilbert Ragan-Kelley, Jonathan Carbin, Michael Li, Tzu-Mao Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Computations in physical simulation, computer graphics, and probabilistic inference often require the differentiation of discontinuous processes due to contact, occlusion, and changes at a point in time. Popular differentiable programming languages, such as PyTorch and JAX, ignore discontinuities during differentiation. This is incorrect for <jats:italic>parametric discontinuities</jats:italic> —conditionals containing at least one real-valued parameter and at least one variable of integration. We introduce Potto, the first differentiable first-order programming language to soundly differentiate parametric discontinuities. We present a denotational semantics for programs and program derivatives and show the two accord. We describe the implementation of Potto, which enables separate compilation of programs. Our prototype implementation overcomes previous compile-time bottlenecks achieving an 88.1x and 441.2x speed up in compile time and a 2.5x and 7.9x speed up in runtime, respectively, on two increasingly large image stylization benchmarks. We showcase Potto by implementing a prototype differentiable renderer with separately compiled shaders. 2024-05-03T15:40:39Z 2024-05-03T15:40:39Z 2024-04-29 2024-05-01T07:48:33Z Article http://purl.org/eprint/type/JournalArticle 2475-1421 https://hdl.handle.net/1721.1/154393 Michel, Jesse, Mu, Kevin, Yang, Xuanda, Bangaru, Sai Praveen, Collins, Elias Rojas et al. 2024. "Distributions for Compositionally Differentiating Parametric Discontinuities." Proceedings of the ACM on Programming Languages, 8 (OOPSLA1). PUBLISHER_CC en 10.1145/3649843 Proceedings of the ACM on Programming Languages Creative Commons Attribution-Noncommercial-ShareAlike https://creativecommons.org/licenses/by-sa/4.0/ The author(s) application/pdf Association for Computing Machinery Association for Computing Machinery |
spellingShingle | Michel, Jesse Mu, Kevin Yang, Xuanda Bangaru, Sai Praveen Collins, Elias Rojas Bernstein, Gilbert Ragan-Kelley, Jonathan Carbin, Michael Li, Tzu-Mao Distributions for Compositionally Differentiating Parametric Discontinuities |
title | Distributions for Compositionally Differentiating Parametric Discontinuities |
title_full | Distributions for Compositionally Differentiating Parametric Discontinuities |
title_fullStr | Distributions for Compositionally Differentiating Parametric Discontinuities |
title_full_unstemmed | Distributions for Compositionally Differentiating Parametric Discontinuities |
title_short | Distributions for Compositionally Differentiating Parametric Discontinuities |
title_sort | distributions for compositionally differentiating parametric discontinuities |
url | https://hdl.handle.net/1721.1/154393 |
work_keys_str_mv | AT micheljesse distributionsforcompositionallydifferentiatingparametricdiscontinuities AT mukevin distributionsforcompositionallydifferentiatingparametricdiscontinuities AT yangxuanda distributionsforcompositionallydifferentiatingparametricdiscontinuities AT bangarusaipraveen distributionsforcompositionallydifferentiatingparametricdiscontinuities AT collinseliasrojas distributionsforcompositionallydifferentiatingparametricdiscontinuities AT bernsteingilbert distributionsforcompositionallydifferentiatingparametricdiscontinuities AT ragankelleyjonathan distributionsforcompositionallydifferentiatingparametricdiscontinuities AT carbinmichael distributionsforcompositionallydifferentiatingparametricdiscontinuities AT litzumao distributionsforcompositionallydifferentiatingparametricdiscontinuities |