În ultima vreme lucrez mult la lucruri legate de normă și a venit timpul să vorbesc despre asta. În această postare vom discuta despre o întreagă familie de norme.
Ce este o normă?
Matematic, o normă este dimensiunea sau lungimea totală a tuturor vectorilor dintr-un spațiu vectorial sau matrici. Pentru simplificare, putem spune că, cu cât norma este mai mare, cu atât matricea sau vectorul (valoarea din) este mai mare. Norma poate avea multe forme și multe denumiri, inclusiv aceste denumiri populare: Distanța euclidiană, Eroare medie pătrată, etc.
De cele mai multe ori veți vedea că norma apare într-o ecuație de genul:
unde poate fi un vector sau o matrice.
De exemplu, norma euclidiană a unui vector este care este dimensiunea vectorului
Exemplul de mai sus arată cum se calculează o normă euclidiană, sau formal numită -normă. Există multe alte tipuri de norme care depășesc explicațiile noastre, de fapt, pentru fiecare număr real există o normă care îi corespunde (observați cuvântul „număr real” subliniat, ceea ce înseamnă că nu se limitează doar la numere întregi.)
În mod formal, norma a lui se definește astfel:
unde
Asta este! Rădăcina a p-a a unei adunări a tuturor elementelor la puterea a p-a este ceea ce numim normă.
Este interesant faptul că, chiar dacă toate -normele sunt foarte asemănătoare între ele, proprietățile lor matematice sunt foarte diferite și, prin urmare, și aplicațiile lor sunt dramatic de diferite. În cele ce urmează vom analiza în detaliu unele dintre aceste norme.
Norma L0
Prima normă pe care o vom discuta este o normă . Prin definiție, -norma lui este
Strict vorbind, -norma nu este de fapt o normă. Este o funcție de cardinalitate care își are definiția sub forma -normă, deși multă lume o numește normă. Este un pic mai complicat să lucrezi cu ea deoarece în ea este prezentă puterea zeroth și rădăcina zeroth. Evident, orice va deveni o , dar problemele legate de definiția puterii zero și mai ales a rădăcinii zero încurcă lucrurile aici. Așa că, în realitate, majoritatea matematicienilor și inginerilor folosesc în schimb această definiție a -normă:
care este un număr total de elemente non-zero într-un vector.
Pentru că este un număr de elemente non-zero, există atât de multe aplicații care folosesc -normă. În ultima vreme este și mai mult în centrul atenției din cauza apariției schemei Compressive Sensing, care încearcă să găsească cea mai rară soluție a sistemului liniar subdeterminat. Soluția cea mai săracă înseamnă soluția care are cele mai puține intrări non-zero, adică cea mai mică -normă. Această problemă este, de obicei, considerată o problemă de optimizare a -normă sau de optimizare .
l0-optimizare
Multe aplicații, inclusiv detecția compresivă, încearcă să minimizeze -norma a unui vector care corespunde unor constrângeri, de aceea se numește „-minimizare”. O problemă standard de minimizare este formulată ca:
sub rezerva
Cu toate acestea, a face acest lucru nu este o sarcină ușoară. Din cauza lipsei de reprezentare matematică a normei , -minimizarea este considerată de către informaticieni ca fiind o problemă NP-hard, ceea ce spune pur și simplu că este prea complexă și aproape imposibil de rezolvat.
În multe cazuri, problema de -minimizare este relaxată pentru a fi o problemă de normă de ordin superior, cum ar fi -minimizare și -minimizare.
l1-normă
În urma definiției normei, -norma lui se definește ca
Această normă este destul de comună în familia de norme. Ea are mai multe nume și mai multe forme în diverse domenii, și anume norma Manhattan este porecla sa. Dacă norma este calculată pentru o diferență între doi vectori sau matrici, adică
se numește Sum of Absolute Difference (SAD) printre cercetătorii în domeniul vederii computerizate.
În cazul mai general al măsurării diferenței de semnal, aceasta poate fi scalată la un vector unitar prin:
unde este o mărime de .
care este cunoscută sub numele de Eroare medie absolută (MAE).
l2-normă
Cea mai populară dintre toate normele este norma. Ea este utilizată în aproape toate domeniile ingineriei și ale științei în ansamblu. Urmărind definiția de bază, -norma se definește ca
-norma este bine cunoscută ca normă euclidiană, care este utilizată ca mărime standard pentru măsurarea unei diferențe vectoriale. Ca și în cazul -norma, dacă norma euclidiană este calculată pentru o diferență vectorială, aceasta este cunoscută sub numele de distanță euclidiană:
sau în forma sa pătratică, cunoscută sub numele de Sum of Squared Difference (SSD) printre cercetătorii din domeniul viziunii computerizate:
Cea mai cunoscută aplicație în domeniul prelucrării semnalelor este măsurarea erorii pătratice medii (Mean-Squared Error – MSE), care este utilizată pentru a calcula o similaritate, o calitate sau o corelație între două semnale. MSE este
După cum s-a discutat anterior în secțiunea -optimizare, din cauza multor probleme atât din punct de vedere computațional, cât și matematic, multe probleme de -optimizare se relaxează pentru a deveni în schimb – și -optimizare. Din această cauză, vom discuta acum despre optimizarea .
optimizare
Ca și în cazul optimizării , problema minimizării normei se formulează prin
sub rezerva
Să presupunem că matricea de constrângeri are rang complet, această problemă este acum un sistem subdeterminat care are soluții infinite. Scopul în acest caz este de a extrage cea mai bună soluție, adică are cea mai mică -normă, din aceste soluții infinit de numeroase. Aceasta ar putea fi o muncă foarte anevoioasă dacă ar fi calculată direct. Din fericire, există un truc matematic care ne poate ajuta foarte mult în această lucrare.
Cu ajutorul unui truc al multiplicatorilor Lagrange, putem defini apoi un Lagrangian
unde este multiplicatorul Lagrange introdus. Luați derivata acestei ecuații egală cu zero pentru a găsi o soluție optimă și obțineți
Conectați această soluție în constrângere pentru a obține
și în final
Cu ajutorul acestei ecuații, putem acum calcula instantaneu o soluție optimă a problemei de optimizare . Această ecuație este binecunoscută sub numele de Pseudoinversul Moore-Penrose, iar problema în sine este de obicei cunoscută sub numele de problemă Least Square, regresie Least Square sau optimizare Least Square.
Cu toate acestea, chiar dacă soluția metodei Least Square este ușor de calculat, nu este necesar să fie cea mai bună soluție. Din cauza naturii netede a normei în sine, este greu de găsit o singură soluție, cea mai bună soluție pentru problemă.
În schimb, optimizarea poate oferi un rezultat mult mai bun decât această soluție.
l1-optimizare
Ca de obicei, problema de -minimizare se formulează ca
sub rezerva
Pentru că natura normei nu este netedă ca în cazul normei , soluția acestei probleme este mult mai bună și mai unică decât cea a -optimizării.
Cu toate acestea, chiar dacă problema de -minimizare are aproape aceeași formă ca și cea de -minimizare, ea este mult mai greu de rezolvat. Deoarece această problemă nu are o funcție netedă, trucul pe care l-am folosit pentru a rezolva problema nu mai este valabil. Singura modalitate rămasă pentru a-i găsi soluția este să o căutăm direct. Căutarea soluției înseamnă că trebuie să calculăm fiecare soluție posibilă pentru a o găsi pe cea mai bună din fondul de „infinit de multe” soluții posibile.
Din moment ce nu există o modalitate ușoară de a găsi matematic soluția pentru această problemă, utilitatea -optimizării este foarte limitată de zeci de ani. Până de curând, progresul calculatoarelor cu putere mare de calcul ne permite să „măturam” toate soluțiile. Prin utilizarea multor algoritmi utili, și anume algoritmul de optimizare convexă, cum ar fi programarea liniară sau programarea neliniară etc., este acum posibil să se găsească cea mai bună soluție la această întrebare. Multe aplicații care se bazează pe optimizarea , inclusiv detecția compresivă, sunt acum posibile.
Există multe cutii de instrumente pentru optimizarea disponibile în zilele noastre. Aceste seturi de instrumente utilizează de obicei abordări și/sau algoritmi diferiți pentru a rezolva aceeași problemă. Exemplele acestor cutii de instrumente sunt l1-magic, SparseLab, ISAL1,
Acum am discutat mai mulți membri ai familiei de norme, începând cu -normă, -normă și -normă. Este timpul să trecem la următorul. Având în vedere că am discutat încă de la început despre faptul că poate exista orice normă l-ceva care urmează aceeași definiție de bază a normei, va fi nevoie de mult timp pentru a vorbi despre toate acestea. Din fericire, în afară de -, – , și -normă, restul sunt de obicei neobișnuite și, prin urmare, nu au atât de multe lucruri interesante de analizat. Așa că ne vom uita la cazul extrem al normei, care este o -normă (normă l-infinită).
normă l-infinită
Ca întotdeauna, definiția pentru -normă este
Acum această definiție pare din nou complicată, dar de fapt este destul de directă. Să considerăm vectorul , să spunem dacă este cea mai mare intrare în vectorul , prin însăși proprietatea infinitului, putem spune că
atunci
atunci
Acum putem spune pur și simplu că norma este
care este mărimea maximă a intrărilor din acel vector. Acest lucru a demistificat cu siguranță semnificația lui -norma
Acum am discutat întreaga familie de norme de la la , sper că această discuție va ajuta la înțelegerea semnificației normei, a proprietăților sale matematice și a implicațiilor sale în lumea reală.
Referințe și lecturi suplimentare:
Norma matematică – wikipedia
Norma matematică – MathWorld
Michael Elad – „Sparse and Redundant Representations : From Theory to Applications in Signal and Image Processing” , Springer, 2010.
Linear Programming – MathWorld
Compressive Sensing – Rice University
Edit (15/02/15) : A corectat inexactități de conținut.