Differentiable programming: Difference between revisions

Content deleted Content added
Requesting copyvio revdel (cv-revdel)
Tag: Reverted
Copyvio revdel completed (RR)
Line 1:
{{copyvio-revdel|url=https://ar5iv.labs.arxiv.org/html/2109.07573|start1=1246055863|end1=1246056010}}
{{Short description|Programming paradigm}}
'''Differentiable programming''' is a [[programming paradigm]] in which a numeric computer program can be [[Differentiation (mathematics)|differentiated]] throughout via [[automatic differentiation]].<ref name="izzo2016_dCGP">{{cite book |doi=10.1007/978-3-319-55696-3_3 |chapter=Differentiable Genetic Programming |title=Genetic Programming |series=Lecture Notes in Computer Science |date=2017 |last1=Izzo |first1=Dario |last2=Biscani |first2=Francesco |last3=Mereta |first3=Alessio |volume=10196 |pages=35–51 |arxiv=1611.04766 |isbn=978-3-319-55695-6 |s2cid=17786263 }}</ref><ref name="baydin2018automatic">{{cite journal |last1=Baydin |first1=Atilim Gunes |last2=Pearlmutter |first2=Barak A. |last3=Radul |first3=Alexey Andreyevich |last4=Siskind |first4=Jeffrey Mark |title=Automatic Differentiation in Machine Learning: a Survey |journal=Journal of Marchine Learning Research |date=2018 |volume=18 |issue=153 |pages=1–43 |url=https://jmlr.org/papers/v18/17-468.html }}</ref><ref>{{cite book |last1=Wang |first1=Fei |chapter=Backpropagation with Callbacks: Foundations for Efficient and Expressive Differentiable Programming |date=2018 |chapter-url=http://papers.nips.cc/paper/8221-backpropagation-with-callbacks-foundations-for-efficient-and-expressive-differentiable-programming.pdf |title=NIPS'18: Proceedings of the 32nd International Conference on Neural Information Processing Systems |pages=10201–10212 |last2=Decker |first2=James |last3=Wu |first3=Xilun |last4=Essertel |first4=Gregory |last5=Rompf |first5=Tiark |editor-last=Bengio |editor-first=S. |editor2-last=Wallach |editor2-first=H. |editor3-last=Larochelle |editor3-first=H. |editor4-last=Grauman |editor4-first=K |publisher=Curran Associates |ref={{harvid|NIPS'18}} }}</ref><ref name="innes">{{Cite journal|last=Innes|first=Mike|date=2018|title=On Machine Learning and Programming Languages|url=http://www.sysml.cc/doc/2018/37.pdf|journal=SysML Conference 2018|access-date=2019-07-04|archive-date=2019-07-17|archive-url=https://web.archive.org/web/20190717211700/http://www.sysml.cc/doc/2018/37.pdf|url-status=dead}}</ref><ref name="diffprog-zygote">{{cite preprint |arxiv=1907.07587 |last1=Innes |first1=Mike |last2=Edelman |first2=Alan |last3=Fischer |first3=Keno |last4=Rackauckas |first4=Chris |last5=Saba |first5=Elliot |author6=Viral B Shah |last7=Tebbutt |first7=Will |title=A Differentiable Programming System to Bridge Machine Learning and Scientific Computing |date=2019 }}</ref> This allows for [[Gradient method|gradient-based optimization]] of parameters in the program, often via [[gradient descent]], as well as other learning approaches that are based on higher order derivative information. Differentiable programming has found use in a wide variety of areas, particularly [[scientific computing]] and [[machine learning]].<ref name="diffprog-zygote" /> One of the early proposals to adopt such a framework in a systematic fashion to improve upon learning algorithms was made by the [[Advanced Concepts Team]] at the [[European Space Agency]] in early 2016.<ref name="differential intelligence">{{Cite web|url=https://www.esa.int/gsp/ACT/projects/differential_intelligence/|title=Differential Intelligence|date=October 2016 |access-date=2022-10-19}}</ref>