Differentiable programming is a programming paradigm in which a numeric computer program can be differentiated throughout via automatic differentiation.[1][2][3][4][5] This allows for 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.[5] 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.[6]
^Izzo, Dario; Biscani, Francesco; Mereta, Alessio (2017). "Differentiable Genetic Programming". Genetic Programming. Lecture Notes in Computer Science. Vol. 10196. pp. 35–51. arXiv:1611.04766. doi:10.1007/978-3-319-55696-3_3. ISBN 978-3-319-55695-6. S2CID 17786263.
^Baydin, Atilim Gunes; Pearlmutter, Barak A.; Radul, Alexey Andreyevich; Siskind, Jeffrey Mark (2018). "Automatic Differentiation in Machine Learning: a Survey". Journal of Marchine Learning Research. 18 (153): 1–43.
^Wang, Fei; Decker, James; Wu, Xilun; Essertel, Gregory; Rompf, Tiark (2018). "Backpropagation with Callbacks: Foundations for Efficient and Expressive Differentiable Programming" (PDF). In Bengio, S.; Wallach, H.; Larochelle, H.; Grauman, K (eds.). NIPS'18: Proceedings of the 32nd International Conference on Neural Information Processing Systems. Curran Associates. pp. 10201–10212.
^Innes, Mike (2018). "On Machine Learning and Programming Languages" (PDF). SysML Conference 2018. Archived from the original (PDF) on 2019-07-17. Retrieved 2019-07-04.
^ abInnes, Mike; Edelman, Alan; Fischer, Keno; Rackauckas, Chris; Saba, Elliot; Viral B Shah; Tebbutt, Will (2019). "A Differentiable Programming System to Bridge Machine Learning and Scientific Computing". arXiv:1907.07587.
^"Differential Intelligence". October 2016. Retrieved 2022-10-19.
and 24 Related for: Differentiable programming information
Differentiableprogramming is a programming paradigm in which a numeric computer program can be differentiated throughout via automatic differentiation...
AAD tools. A reference implementation is available on GitHub. Differentiableprogramming In terms of weight matrices, the adjoint is the transpose. Addition...
words, the graph of a differentiable function has a non-vertical tangent line at each interior point in its domain. A differentiable function is smooth (the...
Prolog. Differentiableprogramming structures programs so that they can be differentiated throughout, usually via automatic differentiation. Literate...
Probabilistic programming (PP) is a programming paradigm in which probabilistic models are specified and inference for these models is performed automatically...
and accessed indefinitely. The DNC is differentiable end-to-end (each subcomponent of the model is differentiable, therefore so is the whole model). This...
computer programming, a scientific programming language can refer to two degrees of the same concept. In a wide sense, a scientific programming language...
programs on Xanadu's quantum photonic hardware. An open-source Python library developed by Xanadu Quantum Technologies for differentiableprogramming...
₯, symbol for currency Greek drachma ∂P, an abbreviation for differentiableprogramming This disambiguation page lists articles associated with the title...
learning Big data – Extremely large or complex datasets Differentiableprogramming – Programming paradigm Force control List of important publications in...
open-source software portal Comparison of deep learning software Differentiableprogramming TensorFlow Keras CUDA "Huawei MindSpore AI Development Framework"...
intelligence Comparison of deep learning software Compressed sensing Differentiableprogramming Echo state network List of artificial intelligence projects Liquid...
producing what's known in programming as an executable. Computer architecture has strongly influenced the design of programming languages, with the most...
Cellular differentiation is the process in which a stem cell changes from one type to a differentiated one. Usually, the cell changes to a more specialized...
open-source software portal Comparison of deep learning software Differentiableprogramming Keras Moroney, Laurence (October 1, 2020). AI and Machine Learning...
mathematical programming problem (a term not directly related to computer programming, but still in use for example in linear programming – see History...
the appropriate step size. Coordinate descent is applicable in both differentiable and derivative-free contexts. Coordinate descent is based on the idea...
allows fast model training, and supports a flexible programming model and multiple programming languages (including C++, Python, Java, Julia, MATLAB...
which the objective function and the constraints are twice continuously differentiable, but not necessarily convex. SQP methods solve a sequence of optimization...
Cartesian genetic programming is a form of genetic programming that uses a graph representation to encode computer programs. It grew from a method of...
conditions for a solution to be optimal. If some of the functions are non-differentiable, subdifferential versions of Karush–Kuhn–Tucker (KKT) conditions are...
Biomorphic Cognitive computer Computation and Neural Systems Differentiableprogramming Event camera Hardware for artificial intelligence Lithionics Neurorobotics...