Matrice hessiană

De la testwiki
Sari la navigare Sari la căutare

În matematică, matricea hessiană, hessianul sau (mai puțin frecvent) matricea Hesse este o matrice pătrată a derivatelor parțiale de ordinul doi ale unei funcții scalare sau unui câmp scalar. Descrie curbura locală a unei funcții de mai multe variabile. Matricea hessiană a fost dezvoltată în secolul al XIX-lea de către matematicianul german Ludwig Otto Hesse. Hesse i-a dat inițial denumirea de matrice de „determinanți funcționali”. Hessianul este uneori notat cu H sau, în mod ambiguu, cu ∇².

Definiții și proprietăți

Fief:n o funcție care relaționează vectorii 𝐱n cu scalarii f(𝐱). Dacă toate derivatele parțiale de ordinul doi ale lui f există, se poate forma matricea hessiană 𝐇, pătratică, de dimensiune n×n, aranjată ca: 𝐇f=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2].Care urmează regula ca rândului Format:Mvar și coloanei Format:Mvar să îi corespunde intrarea: (𝐇f)i,j=2fxixj.

Dacă, în plus, derivatele parțiale de ordin doi sunt toate continue, matricea hessiană este o matrice simetrică datorită simetriei derivatelor (mixte) de ordinul doi.

Determinantul matricei hessiene se numește determinant hessian.[1]

Matricea hessiană a unei funcții f este transpusa matricei jacobiene a gradientului funcției f; adica: 𝐇(f(𝐱))=𝐉(f(𝐱))𝖳.

Aplicații

Puncte de inflexiune

Dacă f este un polinom omogen în trei variabile, ecuația f=0 este ecuația implicită a unei curbe proiective plane. Punctele de inflexiune ale curbei sunt punctele non-singulare în care determinantul hessian este zero. Prin teorema lui Bézout rezultă că o curbă plană cubică are cel mult 9 puncte de inflexiune, deoarece determinantul hessian este un polinom de gradul 3.

Testul derivatei de ordin doi

Dacă matricea hessiană este pozitiv-definită la x, atuncif atinge un minim local izolat la x. Dacă este negativ-definită la x, atuncif atinge un maxim local izolat la x. Dacă matricea are valori proprii atât pozitive, cât și negative, atunci x este un punct de șa pentru f. În celelalte cazuri, testul este neconcludent.

Pentru matricile hessiene pozitiv-semidefinite și negativ-semidefinite testul este neconcludent (un punct critic în care hessianul este semidefinit, poate fi un punct extrem local sau un punct de șa).

Testul derivatei de ordin doi pentru funcțiile de una sau două variabile este mai simplu decât în cazul general. În cazul funcției de o singură variabilă, hessianul conține o singură derivată de ordin doi; dacă aceasta este pozitivă, atunci x este un punct de minim local, iar dacă este negativă, atunci x este un punct de maxim local; dacă este zero, atunci testul este neconcludent. În cazul funcției de două variabile, determinantul hessianului poate fi folosit, deoarece este produsul valorilor proprii. Când determinantul matricei (hessiene) este pozitiv, iar f''1,1 este pozitiv, punctul reprezintă un minim local. De asemenea, dacă f''1,1 este negativ, punctul reprezintă un maxim local. Dacă însă determinantul este zero, sau dacă f''1,1 este zero, indiferent de valoarea determinantului, testul este neconcludent.

În mod echivalent, condițiile de ordinul doi care sunt suficiente pentru un minim sau maxim local pot fi exprimate în termeni de succesiune a minorilor principali ai hessianului; aceste condiții sunt un caz special al celor date în secțiunea privitoare la matricile hessiene mărginite prin constrângeri — și anume, cazul în care numărul de constrângeri este zero. Mai exact, condiția suficientă pentru un minim este ca toți acești minori principali să fie pozitivi, în timp ce condiția suficientă pentru un maxim este ca minorii să se alterneze în semn, minorul 1×1 fiind negativ.

Puncte critice

Dacă gradientul (vectorul derivatelor parțiale) unei funcții f este zero într-un oarecare punct 𝐱n atunci respectivul punct este un punct critic pentru f. Determinantul hessianului în 𝐱 este numit, în unele contexte, discriminant. Dacă acest determinant este zero, atunci 𝐱 se numeste punct critic degenerat al lui f, sau un punct critic non-Morse al lui f. În caz contrar, este un punct nedegenerat, numit și punct critic Morse al luif.

Matricea hessiană joacă un rol important în teoria Morse și în teoria catastrofelor, deoarece nucleul și valorile proprii ale acesteia permit clasificarea punctelor critice.[2][3][4]

Determinantul matricei hessiene, atunci când este evaluat într-un punct critic al unei funcții, este echivalent cu curbura Gauss a funcției considerată ca varietate. Valorile proprii ale hessianului în acel punct reprezintă curburile principale ale funcției, iar vectorii proprii sunt direcțiile principale de curbură.

Utilizarea în optimizare

Matricile hessiene sunt utilizate în problemele de optimizare în cadrul metodelor (iterative) de tip Newton, reprezentând coeficientul termenului pătratic al unei expansiuni Taylor locale a unei funcții: y=f(𝐱+Δ𝐱)f(𝐱)+f(𝐱)𝖳Δ𝐱+12Δ𝐱𝖳𝐇(𝐱)Δ𝐱 unde f este gradientul (fx1,,fxn). Calcularea și stocarea întregii matrici hessiene ocupă Θ(n2) memorie, ceea ce este nefezabil pentru funcții de dimensiuni mari, cum ar fi funcțiile de pierdere ale rețelelor neurale, câmpurile aleatoare condiționate și alte modele statistice conținând un număr mare de parametri. Pentru astfel de situații, există algoritmii Newton-trunchiat și cvasi-Newton. Cea din urmă familie de algoritmi utilizează aproximări ale hessianului; unul dintre cei mai populari algoritmi cvasi-Newton este BFGS (algoritmul Broyden–Fletcher–Goldfarb–Shanno).[5]

Deoarece hessianul apare și în expansiunea locală a gradientului: f(𝐱+Δ𝐱)=f(𝐱)+𝐇(𝐱)Δ𝐱+𝒪(Δ𝐱2)

și lăsând Δ𝐱=r𝐯 pentru un oarecare scalar r, rezultă: 𝐇(𝐱)Δ𝐱=𝐇(𝐱)r𝐯=r𝐇(𝐱)𝐯=f(𝐱+r𝐯)f(𝐱)+𝒪(r2), adică 𝐇(𝐱)𝐯=1r[f(𝐱+r𝐯)f(𝐱)]+𝒪(r)Deci dacă gradientul este deja calculat, hessianul poate fi aproximat printr-un număr de operații liniare. Deși simplu de programat, această schemă de aproximare nu este stabilă numeric deoarece, pe de-o parte r trebuie să fie suficient de mic pentru a micșora erorile (de estimare) datorate termenului 𝒪(r), dar, pe de altă parte, suficient de mare pentru a nu face primul termen irelevant (i.e. 1/r[...]).[6]

Alte aplicații

Matricea hessiană este utilizată frecvent pentru exprimarea operatorilor de procesare a imaginii în procesarea digitală a imaginilor și în viziunea computerizată. Poate fi folosită în analiza modului normal pentru a calcula diferitele frecvențe moleculare în spectroscopia în infraroșu.[7] Poate fi folosită și în diagnosticarea statistică și sensibilitatea locală.[8]

Generalizări

Matricea hessiană mărginită

Matricea hessiană mărginită este utilizată pentru testul derivatei de ordin doi, în anumite probleme de optimizare ce presupun diverse constrângeri. Dacă există funcția f:n și o funcție de constrângere (în literatura românească se mai numește și "ecuație de legătură") g astfel încât g(𝐱)=c, Hessianul mărginit este hessianul funcției Lagrange: Λ(𝐱,λ)=f(𝐱)+λ[g(𝐱)c] :[9] 𝐇(Λ)=[2Λλ22Λλ𝐱(2Λλ𝐱)𝖳2Λ𝐱2]=[0gx1gx2gxngx12Λx122Λx1x22Λx1xngx22Λx2x12Λx222Λx2xngxn2Λxnx12Λxnx22Λxn2]=[0g𝐱(g𝐱)𝖳2Λ𝐱2]

Dacă există, să zicem, m constrângeri, atunci zeroul din colțul din stânga sus devine o matrice de zerouri m×m și există m rânduri de derivate ale funcțiilor de constrângere (primele m rânduri ale matricii) și m coloane de derivate ale acelorași (primele m coloane ale matricii).

Regulile de mai sus care afirmă că extremele sunt caracterizate (printre punctele critice cu un hessian non-singular) printr-o matrice hessiană pozitiv-definită sau negativ-definită nu se pot aplica aici, deoarece un hessian mărginit nu poate fi nici una, nici alta, întrucât𝐳𝖳𝐇𝐳=0 dacă 𝐳 este orice vector a cărui unică intrare diferită de zero este prima.

Testul derivatei de ordin doi constă aici în restricții de semn ai determinanților unui anumit set de nm submatrici ale hessianului mărginit.[10] Intuitiv, m constrângerile pot fi considerate ca reducând problema la una cu nm variabile libere (de exemplu, maximizarea f(x1,x2,x3) supusă constrângerii x1+x2+x3=1 poate fi redusă la maximizarea f(x1,x2,1x1x2) fără constrângere).

Concret, condițiile de semn sunt impuse succesiunii de minori principali (determinanți ai submatricilor cu începere din stânga sus) ale hessianului mărginit, pentru care primii 2m minori principali sunt ignorați, minorul cel mai mic constând din primele 2m+1 rânduri și coloane trunchiate, următorul constând din primele 2m+2 rânduri și coloane trunchiate, și așa mai departe, ultimul fiind întregul hessian mărginit; dacă 2m+1 este mai mare decât n+m, atunci cel mai mic minor principal este hessianul însuși.[11] Există astfel nm minori de luat în considerare, fiecare evaluat la punctul specific considerat potențial maxim sau minim. O condiție suficientă pentru un Format:Em local este ca acești minori să alterneze în semn cu cel mai mic având semnul de (1)m+1. O condiție suficientă pentru un Format:Em local este ca toți acești minori să aibă semnul de (1)m. (În cazul lipsit de constrângeri, unde m=0, aceste condiții coincid cu condițiile ca hessianul nemărginit să fie negativ-definit sau, respectiv, pozitiv-definit).

Funcții cu valori vectoriale

Dacă f este în schimb un câmp vectorial 𝐟:nm, adică 𝐟(𝐱)=(f1(𝐱),f2(𝐱),,fm(𝐱)),atunci colecția de derivate parțiale de ordin doi nu constituie o matrice n×n, ci mai degrabă un tensor de ordinul trei. Aceasta poate fi considerat ca o matrice de m matrici hessiane, câte una pentru fiecare componentă a 𝐟: 𝐇(𝐟)=(𝐇(f1),𝐇(f2),,𝐇(fm)). Acest tensor degenerează la matricea hessiană obișnuită când m=1.

Generalizare la cazul complex

În contextul mai multor variabile complexe, hessianul poate fi generalizat. Fie f:n, si f(z1,,zn). Identificarea n cu 2n, hessianul „real” normal este o matrice 2n×2n. Întrucât obiectul de studiu în mai multe variabile complexe este constituit de funcțiile olomorfe, adică soluțiile la condițiile Cauchy-Riemann n-dimensionale, de obicei ne uităm la partea hessianului care conține informații invariante la modificările holomorfe de coordonate. Această „parte” este așa-numitul complex hessian, care este matricea (2fzjz¯k)j,k. Dacă f este olomorf, atunci matricea sa complexă hessiană este identică cu zero, deci complexul hessian este folosit pentru a studia funcții netede, dar nu holomorfe (vezi, de exemplu, pseudoconvexitatea Levi). Când avem de-a face cu funcții olomorfe, am putea lua în considerare matricea hessiană (2fzjzk)j,k.

Generalizări la varietățile Riemann

Fie (M,g) fie o varietate Riemann si conexiunea sa Levi-Civita. Fie f:M o funcție netedă. Se definește tensorul hessian prin: Hess(f)Γ(T*MT*M) prin Hess(f):=f=df,unde aceasta profită de faptul că prima derivată covariantă a unei funcții este aceeași cu diferența sa obișnuită. Alegerea coordonatelor locale {xi} dă o expresie locală pentru hessian ca: Hess(f)=ijf dxidxj=(2fxixjΓijkfxk)dxidxj unde Γijk sunt simbolurile Christoffel ale conexiunii. Alte forme echivalente pentru hessian sunt date de: Hess(f)(X,Y)=Xgradf,Y and Hess(f)(X,Y)=X(Yf)df(XY).

Note

Format:Control de autoritate