A konjugátum gradiens módszer 1

A "konjugált gradiens módszer" kifejezés egy példa arra, hogy az értelmetlen mondatok hogyan válnak szokásosá, és nem okoznak zavart. Az a tény, hogy egy konkrét eset kivételével, amely nem gyakorlati szempontból érdekes, a színátmenetek nem konjugáltak, és a konjugált irányoknak nincsenek semmi közük a gradiensekkel. A módszer neve tükrözi azt a tényt, hogy ez a feltétel nélküli extrém módszer megtalálásának módja ötvözi az objektív függvény gradiense és a konjugált irányok fogalmát.

Néhány szó az alább használt jelölésről.

A két vektor skaláris terméke $ x ^ Ty $, és a skalárok összegét jelenti: $ \ sum_ ^ n \, x_i \, y_i $. Ne feledje, hogy $ x ^ Ty = y ^ Tx $. Ha x és y ortogonális, akkor $ x ^ Ty = 0 $. Általában az 1x1 mátrixra konvertált kifejezések, mint például a $ x ^ Ty $ és a $ x ^ TA_x $, skaláris mennyiségeknek tekintendők.

Kezdetben a konjugátum gradiens módszerét úgy alakították ki, hogy megoldja az alak lineáris algebrai egyenleteit:

ahol x egy ismeretlen vektor, b egy ismert vektor, és A egy ismert, négyzetes, szimmetrikus, pozitív-definite mátrix. Ennek a rendszernek a megoldása egyenértékű a megfelelő négyzetes alak minimális megtalálásával.
A kvadratikus forma egyszerűen egy skalár, a következő alakú x-vektor kvadratikus függvénye:

Egy ilyen kapcsolat az A lineáris transzformáció mátrixa és az f (x) skaláris függvény között lehetővé teszi a lineáris algebra egyes képleteinek intuitív ábrákkal történő illusztrálását. Például az A mátrix pozitív definíciójú, ha minden nem nulla vektor esetében az alábbiak igazak:

Az 1. ábrán látható, hogy hogyan kell keresni a kvadratikus formák rendre pozitív definit mátrix (a) a negatív definit mátrix (b), a pozitív-határozatlan mátrix (s), meghatározatlan mátrix (d).

Vagyis, ha az A mátrix pozitív-definite, akkor az 1. egyenletek rendszerének megoldása helyett megtalálhatjuk a minimális kvadratikus függvényét. Ezenkívül a konjugátum gradiens módszer ezt n vagy kevesebb lépésben teszi meg, ahol n az ismeretlen x vektor dimenziója. Minthogy a minimális pont közelében lévő bármilyen sima működést egy kvadratikus függvény közelíti, ugyanaz a módszer alkalmazható a nem kvadratikus függvények minimalizálására. Ebben az esetben a módszer véget nem ér, de iteratív lesz.

Célszerű a konjugált gradiens módszer megfontolását megfontolni, figyelembe véve egy egyszerűbb módszert a funkció legvégső csoportjának, a legmeredekebb lejtés módszerének keresésére. A 2. ábra a mozgás pályáját mutatja a legkisebb pontra a legmeredekebb merülés módszerével. Ennek a módszernek a lényege:

  • a gradiens kiszámítása az x (0) kezdőponton történik, és a mozgás az antigradíziós irányba történik, amíg a célfüggvény csökken;
  • abban a pontban, ahol a funkció leáll, a gradiens ismét kiszámításra kerül, és a süllyedés folytatódik egy új irányba;
  • Az eljárást addig ismételjük, amíg a minimális pontot el nem éri.

Ebben az esetben minden új mozgási irány merőleges az előzőhöz. Van-e érdemesebb módja annak, hogy új irányt válasszon? Van, és ezt a konjugált irány módszernek nevezik. És a konjugátum gradiens eljárás csak konjugált irányú módszerek csoportja. A 3. ábra a mozgás pályáját mutatja a legkisebb pontra a konjugátum gradiens módszer alkalmazásával.

Meghatározása konjugátumot az alábbiak szerint történik: a két vektor x és y az úgynevezett A-konjugátum (vagy konjugálva a mátrix A) vagy A-ortogonális, ha a skalár szorzata X és Ay nullával egyenlő, azaz:

A konjugáció az ortogonalitás koncepciójának generalizálása. Valóban, amikor a mátrix - identitás mátrix, 4. egyenlet szerint, a vektorok x és y - ortogonális. És egyébként kapcsolatot mutatja a fogalmak és ortogonális konjugáiumra mentálisan szakaszon 3. ábra úgy, hogy a vonalak azonos szintű ellipszis körbefordult, a kapcsolódó, egymásra merőleges irányban lesz csak.

Továbbra is látni kell, hogyan kell kiszámítani a konjugált irányokat. Az egyik lehetséges módja a lineáris algebra, különösen a Gramm-Schmidt ortogonalizációs eljárásának alkalmazása. De ehhez ismerni kell az A mátrixot, ezért a legtöbb probléma (például a többszintű neurális hálózatok megtanulása) ez a módszer nem megfelelő. Szerencsére vannak más, iteratív módszerek a konjugált irány kiszámítására, a leghíresebb a Fletcher-Reeves formula:

Egyenlet 5 azt jelenti, hogy az új irányt hozzáadásával kapott a konjugátum antigradient a fordulópont és a korábbi mozgás irányát, szorozva együttható képlettel számítottuk ki 6. Útvonal számítva 5 képlet, vannak konjugálva, ha a funkció minimalizálni kell határozza formájában 2. Azaz, kvadratikus a konjugált gradiensek módszere legalább n lépést talál (n a keresési tér dimenziója). Általános formájú függvények esetén az algoritmus megszűnik, és végül iteratív lesz. Ebben az esetben Fletcher és Reeves azt javasolja, hogy folytassák az algoritmikus eljárást minden n + 1 lépésben.

A konjugátum irányának, a Polak-Ribiere-képletnek egy további formula adható:

A Fletcher-Reeves módszer konvergál, ha a kiindulási pont elég közel van a szükséges minimumhoz, míg a Polak-Reiber-módszer ritkán ciklikusan ritkán ciklikusan ciklikus. Az utóbbi azonban gyorsabban konvergál, mint az első módszer. Szerencsére a Polak-Reiber módszer konvergenciáját a $ \ beta = \ max \ $ választásával lehet garantálni. Ez megegyezik egy algoritmus helyreállításával $ \ beta \ leq 0 $ feltétel mellett. Az algoritmikus eljárás újraindítása szükséges ahhoz, hogy elfelejtse az utolsó keresési irányt, és újra elindítsa az algoritmust a gyors leereszkedés irányába.

Ezután egy konjugált gradiens algoritmust mutatunk be, hogy minimálisra csökkentsük az általános alakzat (nem-párhuzamos) funkcióit.

  1. Az antigradíziót tetszőleges x (0) pontban számoljuk ki.
  • A leereszkedést kiszámított irányban végezzük, amíg a függvény csökken, más szóval a (i) keresés. ami minimálisra csökkenti
  • Menj az előző bekezdésben található pontra
  • Számítsd ki az ellenállást ezen a ponton
  • kiszámítása a következő képlettel 6. vagy 7. A szolgáltató újraindítás algoritmus, azaz felejtsd legutóbbi keresés irányát, és indítsa újra algoritmus irányába legmeredekebb származású, a képlet a Fletcher-Reeves rendelt 0 minden n + 1 lépésben, a képlet Polak-Reiber - $ \ beta_ = \ max \, \, 0 \> $
  • Új konjugált irány kiszámítása

    A fenti algoritmusból következik, hogy a 2. lépésben a függvény egydimenziós minimalizálása történik. Erre különösen a Fibonacci-módszer, az arany metszet módszer vagy a bisection módszer használható. A Newton-Raphson módszer gyorsabb konvergenciát biztosít, de erre szükség van a hesseni mátrix kiszámítására. Az utóbbi esetben az optimalizálást végző változó az iteráció minden egyes lépésénél a következő képlet segítségével számítható ki:

    Néhány szó a konjugált irányú módszer használatáról a neurális hálózatok képzésében. Ebben az esetben a képzési időszakok, azaz a számítás a célfüggvény kerülnek bemutatásra az összes minta a tanító, és a számított átlagos négyzetes hiba függvény (vagy egyéb átalakítás is). Ugyanez történik a gradiens kiszámításakor is, azaz a teljes gradiens a teljes oktatási készletben történik. Az egyes példákhoz tartozó gradiens kiszámítása a BackProp algoritmussal történik.

    A konjugátum irányának egy változata, a Fletcher-Reeves képlet segítségével konjugált irányok kiszámítására.

    r: = -f '(x) // az objektív funkció antipódusa

    d: = r // a lejtés kezdeti iránya egybeesik az antigradijenssel

    Sigmanew. = r T * r // az antigradizáló modul négyszöge

    // Keresési ciklus (számláló vagy hiba kimenet)
    míg i Eps 2 * Sigma0
    kezdődik
    j. = 0
    Sigmad. = d T * d

    // Egydimenziós minimalizálási ciklus (d irányban)
    ismétlés
    a. =
    x. = x + a
    j. = j + 1
    amíg (j> = jmax) vagy (2 * Sigmad <= Eps 2 )

    r. = -f '(x) // az objektumfüggvény antigraditense az új pontban
    Sigmaold. = Sigmanew
    Sigmanew. = r T * r
    béta. = Sigmanew / Sigmaold
    d. = r + béta * d // A konjugált irány számítása
    k. = k + 1

    ha (k = n) vagy (r T * d <= 0) then // Рестарт алгоритма
    kezdődik
    d. = r
    k. = 0
    vég

    A konjugátum gradiens eljárás egy elsőrendű módszer, míg konvergenciája négyzetes. Ez előnyösen eltér a szokásos gradiens módszerektől. Például, a legmeredekebb csökkenési eljárásával és a módszer a koordináta származású egy másodfokú függvénnyel konvergálnak csak a határt, míg a konjugált gradiens módszerrel, hogy optimalizálja a másodfokú függvény véges számú iteráció. Az általános forma funkcióinak optimalizálásakor a konjugált irányú módszer 4-5-ször gyorsabb, mint a legmeredekebb lefelé irányuló módszer. Ebben az esetben a másodrendű eljárásokkal ellentétben a második részleges származékok laboratóriumi számításai nem szükségesek.

    Kapcsolódó cikkek