The Simple Essence of Automatic Differentiation - Conal Elliott
Microsoft Research3 HN recommenders · 2018–2023
17K views · talk · evergreen · Uploaded 2018-07-26
Conal Elliott presents his paper on automatic differentiation, deriving a simple, generalized AD algorithm from a natural specification. Varying the representation of derivatives yields forward and reverse mode algorithms that avoid the complexity and statefulness of backpropagation.
Cited as the more accessible companion to the paper, and as the most interesting treatment of AD via compiling to categories.
9:52Vectors | Chapter 1, Essence of linear algebra
3Blue1Brown
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
2:25:52The spelled-out intro to neural networks and backpropagation: building micrograd
Andrej Karpathy
19:42But what is the Fourier Transform? A visual introduction.
3Blue1Brown
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
18:40But what is a neural network? | Deep learning chapter 1
3Blue1Brown
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
6 comments from Hacker News
This paper won a best paper award at ICFP 2018. Conal Elliott recently gave a longer talk about it at Microsoft Research: [VIDEO]
Another paper related to AD was posted last month: The Simple Essence of Automatic Differentiation [0]. Video presentation [1]. I found it pretty awesome, just in case you hadn't seen it. [0]: https//news.ycombinator.com/item?id=18306860 [1]: [VIDEO]
He also gave nice presentation on AD: [VIDEO] (surprised that you didn't already mention it, considering the venue ;-))
The most interesting thing I've seen on AD is "The simple essence of automatic differentiation" (2018) [1]. See past discussion [2], and talk [3]. I think the main idea is that by compiling to categories and pairing up a function with its derivative, the pair becomes trivially composable in forward mode, and the whole structure is easily converted to reverse mode afterwards. [1]: [LINK] [2]: [LINK] [3]: Talk at Microsoft Research: [VIDEO] Other presentations listed here: [LINK]
I'm yet to give reverse mode a second try, but my attempts at forward mode (linked in parent post) were on my own without the paper's help. There's a talk that Conal gives that makes the paper a bit more accessible - [VIDEO] - but only a bit more. I know it'll take effort to wrap my head around the implementation details ... but the paper certainly helped clarify things I was stumbling around about.
AD is just a Cartesian lens of Jacobians and total derivatives in the category of smooth functions, what's the problem? [VIDEO]