Hacker News new | ask | show | jobs
by medo-bear 1680 days ago
i havent heard of clarke gradient before. convex analysis has something called subgradient [0], is it different?

[0] https://en.m.wikipedia.org/wiki/Subderivative

1 comments

The subgradient in convex analysis is a special case of the Clarke gradient. The subgradient is precisely the Clarke gradient for convex functions. Convex functions are always locally Lipschitz except in weird cases.

[edit]

Question: Are there numerical applications in which the subgradient is actually computed, or is it a purely analytical tool?

(Stochastic) subgradient methods are used in practice to optimize non-differentiable convex functions. They have a slower convergence rate than (stochastic) gradient descent though.

See for example : https://www.stat.cmu.edu/~ryantibs/convexopt-F15/lectures/07...

yes, see: https://juliadiff.org/ChainRulesCore.jl/dev/maths/nondiff_po...

and related neat usages in set based optimization methods in MathOptInterface (part of JuMP.jl): https://matbesancon.xyz/post/2020-12-24-chains_sets2/

To me, it looks like you're computing a single element from the set, instead of the whole set. Which makes sense, but it's an important caveat.