Hopfīlda tīkls ir viens no neironu tīklu veidiem, nosaukts tā radītāja Džona Hopfīlda vārdā. Hopfīlda tīkls modelē asociatīvo atmiņu — ar adresāciju pēc satura, nevis adreses/indeksa. Konkrēti — tas spēj noteikt, vai kaut kāds atšķirīgs (bojāts) attēls ir pietiekami līdzīgi kaut kādas grupas attēliem vai nē.

  • Tīklā ir viens neironu slānis.
  • Neironu svaru vērtības ir simetriskas ( ).
  • Neironu ieejas un izejas ir bināras (parasti   vai  ).
 
Hopfīlda tīkla apmācība un darbināšana.

Atšķirībā no daudziem citiem neironu tīklu veidiem, Hopfīlda tīkla apmācība notiek vienā solī (savukārt darbināšana — parauga atpazīšana — notiek iteratīvi).

Svaru vērtības tiek izvietotas matricā, kuras kolonas apzīmē neironus, bet rindiņas — neironu svarus.

Svaru vērtības nosaka pēc formulas:  ,
kur   — paraugs (bināru vērtību virkne),   — paraugu skaits.

Attēlā "Hopfīlda tīkla apmācība un darbināšana" redzams piemērs — augšējā matrica: divi 12 vērtību gari paraugi   un   un ar tiem apmācītā Hopfīlda tīkla svaru vērtības.

Darbināšana

labot šo sadaļu

Katrā darbināšanas — parauga atpazīšanas procesa — iterācijā katram neironam atsevišķi tiek rēķināta:

  1.   funkcija pēc formulas  , kur   -tā neirona  -tais svars,   -tā neirona izejas vērtība (iepriekšējā iterācijā — jeb ieejas vērtība šajā iterācijā);
  2. izejas vērtība, izmantojot aktivizācijas funkciju:  

Attēlā zem svaru matricas redzams piemērs, atpazīstot paraugu  , kas ir sākotnējās ieejas vērtības (iepriekšējās iterācijas izejas vērtības).

Piemērā iezīmēta 4. neirona   funkcijas rēķināšana 2. iterācijā.

Attēlā redzams, ka 3. un 4. iterācijas visu neironu atbilstošās   funkciju vērtības sakrīt, kas norāda, ka atpazīšanas process ir konverģējis un 3. iterācijas izeju varam uzskatīt par meklēto attēlu (kā redzams, tas ir apmācības procesā ievadītais paraugs  ).

Ārējās saites

labot šo sadaļu

Jānis Zuters. Neironu tīkli