Show simple item record

dc.contributor.authorSherman, Benjamin
dc.contributor.authorMichel, Jesse
dc.contributor.authorCarbin, Michael
dc.date.accessioned2021-10-27T20:04:00Z
dc.date.available2021-10-27T20:04:00Z
dc.date.issued2021
dc.identifier.urihttps://hdl.handle.net/1721.1/134212
dc.description.abstract© 2021 Owner/Author. Deep learning is moving towards increasingly sophisticated optimization objectives that employ higher-order functions, such as integration, continuous optimization, and root-finding. Since differentiable programming frameworks such as PyTorch and TensorFlow do not have first-class representations of these functions, developers must reason about the semantics of such objectives and manually translate them to differentiable code. We present a differentiable programming language, λS, that is the first to deliver a semantics for higher-order functions, higher-order derivatives, and Lipschitz but nondifferentiable functions. Together, these features enableλS to expose differentiable, higher-order functions for integration, optimization, and root-finding as first-class functions with automatically computed derivatives. λS's semantics is computable, meaning that values can be computed to arbitrary precision, and we implement λS as an embedded language in Haskell. We use λS to construct novel differentiable libraries for representing probability distributions, implicit surfaces, and generalized parametric surfaces-all as instances of higher-order datatypes-and present case studies that rely on computing the derivatives of these higher-order functions and datatypes. In addition to modeling existing differentiable algorithms, such as a differentiable ray tracer for implicit surfaces, without requiring any user-level differentiation code, we demonstrate new differentiable algorithms, such as the Hausdorff distance of generalized parametric surfaces.en_US
dc.language.isoen
dc.publisherAssociation for Computing Machinery (ACM)en_US
dc.relation.isversionof10.1145/3434284en_US
dc.rightsCreative Commons Attribution NoDerivatives 4.0 International License.en_US
dc.rights.urihttp://creativecommons.org/licenses/by-nd/4.0/en_US
dc.sourceACMen_US
dc.title𝜆ₛ: computable semantics for differentiable programming with higher-order functions and datatypesen_US
dc.typeArticleen_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
dc.relation.journalProceedings of the ACM on Programming Languagesen_US
dc.eprint.versionFinal published versionen_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dc.date.updated2021-09-27T14:45:23Z
dspace.orderedauthorsSherman, B; Michel, J; Carbin, Men_US
dspace.date.submission2021-09-27T14:45:24Z
mit.journal.volume5en_US
mit.journal.issuePOPLen_US
mit.licensePUBLISHER_CC
mit.metadata.statusAuthority Work and Publication Information Neededen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record