Zum Inhalt springen

Subdifferential

aus Wikipedia, der freien Enzyklopädie

Das Subdifferential ist eine Verallgemeinerung des Gradienten auf nicht differenzierbare konvexe Funktionen. Das Subdifferential spielt eine wichtige Rolle in der konvexen Analysis sowie der konvexen Optimierung.

Sei f:ℝn→ℝ eine konvexe Funktion. Ein Vektor g∈ℝn heißt Subgradient von f an der Stelle x0, wenn für alle x∈ℝn gilt[1]

f(x)≥f(x0)+⟨g,x−x0⟩,

wobei ⟨⋅,⋅⟩ das Standardskalarprodukt bezeichnet.

Das Subdifferential ∂f(x0) ist die Menge aller Subgradienten von f im Punkt x0.[2]

Existieren die folgenden Grenzwerte a=limx→x0−f(x)−f(x0)x−x0, b=limx→x0+f(x)−f(x0)x−x0, so wird das Intervall [a,b] aller Subgradienten das Subdifferential der Funktion f bei x0 genannt und wird als ∂f(x0):=[a,b] geschrieben.

Für eine konvexe Funktion gilt a≤b, für eine nicht konvexe Funktion braucht dies nicht zu gelten und dann ist ∂f(x0)=∅︀.

Subgradienten einer konvexen Funktion

Intuitiv bedeutet diese Definition für n=1, dass der Graph der Funktion f überall über der Geraden G liegt, die durch den Punkt (x0,f(x0)) geht und die Steigung g besitzt:

G={(x,y)∈ℝ2∣y=g⋅(x−x0)+f(x0)}

Da die Normalengleichung von G gerade

−g⋅(x−x0)+1⋅(y−f(x0))=0

ist, ist die Normale an G also (−g,1)∈ℝ2.

Im allgemeinen Fall n≥1 liegt f über der Hyperebene, die durch den Fußpunkt (x0,f(x0)) und die Normale (−g,1)∈ℝn+1 gegeben ist.

Wegen des Trennungssatzes ist das Subdifferential einer stetigen konvexen Funktion überall nichtleer.

Das Subdifferential der Funktion f:ℝ→ℝ, x↦|x| ist gegeben durch:

∂f(x0)={{−1}x0<0[−1,1]x0=0{1}x0>0

Eine ähnliche Eigenschaft ist bei der Lasso-Regression für die Herleitung der Soft-Threshold-Funktion wichtig.

Beschränktheit

[Bearbeiten | Quelltext bearbeiten]

Sei f:ℝn→ℝ stetig und sei X⊂ℝn beschränkt. Dann ist die Menge ⋃x0∈X∂f(x0) beschränkt.

Sei f:ℝn→ℝ stetig und sei X⊂ℝn beschränkt. Setze ε:=sup⁡|f(U1(X)‾)| wobei U1(X)‾={x∈ℝn∣dist(x,X)≤1}. Angenommen, ⋃x0∈X∂f(x0) ist nicht beschränkt, dann gibt es für R:=2ε ein x0∈X und ein g∈∂f(x0) mit ‖g‖2>R=2ε. Sei x:=1‖g‖2g+x0. Somit sind x0,x∈U1(X)‾. Wir erhalten die Abschätzung

gT(x−x0)=1‖g‖2gTg=‖g‖2>2ε≥|f(x)−f(x0)|≥f(x)−f(x0).

g ist also kein Subgradient. Das ist ein Widerspruch.

Differenzierbarkeit

[Bearbeiten | Quelltext bearbeiten]

Ist die Funktion differenzierbar in x0∈intdomf, so gilt:

∂f(x0)={∇f(x0)}

Siehe [3] für einen Beweis.

Zudem gilt: Ist das Subdifferential ∂f(x0) einelementig, so ist f an der Stelle x0 differenzierbar.[4]

  1. ↑ R. T. Rockafellar Convex analysis 1970., p.214
  2. ↑ R. T. Rockafellar Convex analysis 1970., p.215
  3. ↑ Yaron Singer: Advanced Optimzation. Abgerufen am 27. Januar 2022: „Proposition 4“
  4. ↑ R. T. Rockafellar: Convex Analysis. Band 28, 1970: „Theorem 25.1“