4 ms·
Your program takes various inputs, does processing and gives you results. To quote the book this applies to programs "including those with control flows and dat
by dkjaudyeqooe 3y ago
Your program takes various inputs, does processing and gives you results. To quote the book this applies to programs "including those with control flows and data structures" and are not entirely numerical in the most common sense. Broadly speaking, with AD you can modify the results and the program will spit out the required inputs to get those results.
- amelius 3y agoSo if a program's result is "no access", then AD can figure out how you can get access. Sounds like an important hacker tool.
- cscheid 3y agoI mean, “differential cryptanalysis” doesn’t go through AD, but I would be surprised if it’s not possible to get pretty close to a discrete analogue to AD using bit flips instead of differential and abstract interpretation.
- kelseyfrog 3y agoCryptography functions, I'd assume, are purposely non-differentiable.
- lsb 3y agoYes, these are “adversarial patches” in image classification, like https://arxiv.org/abs/1712.09665 https://arxiv.org/abs/1712.09665 . Similarly you can take these adversaries and add them to your own larger model, in an arms race.
- JadeNB 3y ago> Broadly speaking, with AD you can modify the results and the program will spit out the required inputs to get those results. I assume you're trying to phrase it in a non-technical way for accessibility, but I wonder if that might have lost some precision. What you describe sounds more like (logically) reversible programming (https://en.wikipedia.org/wiki/Reversible_computing https://en.wikipedia.org/wiki/Reversible_computing). Differentiability doesn't imply reversibility; for example, the program that takes in an input and returns 1 is as differentiable as they come, but there's nothing that differentiation, automatic or otherwise, can do to tell you an input that will make it return 2.