Education, study and knowledge

Hlboké neurónové siete: čo sú a ako fungujú

click fraud protection

Hlboké neurónové siete sú konceptom, ktorý tvorí hlavnú technologickú architektúru používanú v modeloch hlbokého učenia. Tieto štruktúry nemožno pochopiť bez pochopenia všeobecnej myšlienky umelých neurónových sietí, ktoré sú základom umelej inteligencie.

Neurónové siete sa používajú na tisíc vecí: rozpoznávanie poznávacích značiek, pesničiek, tvárí, hlasov alebo aj ovocia v našej kuchyni. Sú mimoriadne užitočnou technológiou a napriek tomu, že sa len nedávno stali praktickými, budú budúcnosťou ľudstva.

Ďalšie Ideme vidieť do hĺbky myšlienku umelých neurónových sietí a hlbokopochopiť, ako fungujú, ako sú trénované a ako dochádza k interakciám medzi rôznymi neurónmi, ktoré ich tvoria.

  • Súvisiaci článok: „Čo je kognitívna veda? Jeho základné myšlienky a fázy vývoja“

Čo sú hlboké neurónové siete a čo ich charakterizuje?

Hlboké neurónové siete sú jedna z najdôležitejších technologických architektúr používaných v Deep Learning alebo Deep Learning. Tieto konkrétne umelé siete zaznamenali v posledných rokoch závratný rast, pretože predstavujú základný aspekt, pokiaľ ide o rozpoznávanie všetkých druhov vzorov. Umelá inteligencia existuje vďaka fungovaniu týchto konkrétnych sietí, ktoré v V podstate sa stávajú replikou toho, ako funguje náš mozog, aj keď v technologickom a matematika.

instagram story viewer

Predtým, ako prejdeme ďalej k tomu, čo sú hlboké neurónové siete, musíme najprv pochopiť, ako umelé neurónové siete vo všeobecnosti fungujú a na čo slúžia. Lneurónové siete sú odvetvím „strojového učenia“, ktoré malo v posledných rokoch obrovský vplyv, ktorá pomáha programátorom a počítačovým vedcom vytvárať veci, ako sú chatboty, s ktorými si pri rozhovore myslíme, že hovoríme so skutočnými ľudskými bytosťami.

Umelé neurónové siete sa používajú aj pri autách s vlastným pohonom, mobilné aplikácie, ktoré rozpoznajú našu tvár a premenia ju na to, čo chceme a mnohé ďalšie funkcie. Jeho použiteľnosť je veľmi rozsiahla, slúži ako základ modernej umelej inteligencie a má nekonečné prospešné využitie pre náš každodenný život.

umelé neurónové siete

Predstavme si, že sme v našej kuchyni a rozhodneme sa hľadať pomaranč, veľmi jednoduchá úloha.. Pomaranč vieme veľmi ľahko identifikovať a vieme ho aj odlíšiť od iného ovocia, ktoré nájdeme v kuchyni, ako sú banány, jablká a hrušky. Ako? Pretože v našom mozgu sme veľmi asimilovali to, čo sú typické vlastnosti pomaranča: jeho jeho veľkosť, tvar, farbu, akú vôňu... To všetko sú parametre, pomocou ktorých nájdeme a oranžová.

Pre ľudí je to jednoduchá úloha, ale... Dokáže to aj počítač? Odpoveď je áno. V zásade by stačilo definovať tie isté parametre a priradiť hodnotu uzlu alebo niečomu, čo by sme mohli nazvať „umelý neurón“. Tomuto neurónu by sme povedali, aké sú pomaranče, čo naznačuje ich veľkosť, hmotnosť, tvar, farbu alebo akýkoľvek iný parameter, ktorý tomuto ovociu pripisujeme. Na základe týchto informácií sa očakáva, že neurón bude vedieť, ako identifikovať pomaranč, keď mu bude daný pomaranč.

Ak sme dobre zvolili parametre, bude pre vás ľahké rozlíšiť pomaranče a veci, ktoré nie sú pomarančové, jednoducho na základe týchto vlastností. Keď sa mu zobrazí obrázok akéhokoľvek ovocia, tento neurón bude hľadať vlastnosti spojené s pomarančom a rozhodnite sa, či ho zaradíte do kategórie „pomaranč“ alebo do kategórie „iné“. ovocie“. Zo štatistického hľadiska by to znamenalo nájsť oblasť v grafe parametrov, ktorá zodpovedá tomu, čo je hľadá oblasť, ktorá by zahŕňala všetky kúsky ovocia, ktoré majú rovnakú veľkosť, tvar, farbu, hmotnosť a vôňu pomaranče.

Spočiatku to všetko znie veľmi ľahko kódovať a v skutočnosti to tak je. Veľmi dobre funguje na odlíšenie pomaranča od banánu alebo jablka, keďže majú rôzne farby a tvary. Čo keby sme vám však predložili grapefruit? a veľmi veľká mandarínka? Sú to ovocie, ktoré sa dá dokonale zameniť s pomarančom. Bude umelý neurón schopný sám od seba rozlíšiť pomaranče a grapefruity? Odpoveď je nie a v skutočnosti sa pravdepodobne považujú za rovnaké.

Problém s použitím iba jednej vrstvy umelých neurónov, alebo čo je to isté, najprv s použitím jednoduchých neurónov, je ten generovať veľmi nepresné hranice rozhodovania, keď je vám predložené niečo, čo má mnoho spoločných charakteristík s tým, čo by ste mali vedieť rozpoznať, ale v skutočnosti to tak nie je. Ak prezentujeme niečo, čo vyzerá ako pomaranč, napríklad grapefruit, aj keď to nie je toto ovocie, identifikuje to ako také.

Tieto hranice rozhodovania, ak sú znázornené vo forme grafu, budú vždy lineárne. Pomocou jediného umelého neurónu, teda jedného uzla, ktorý má integrované parametre konkrétne, ale nemôže sa učiť mimo nich, získajú sa veľmi úzke hranice rozhodovania. difúzne. Jeho hlavným obmedzením je, že používa dve štatistické metódy, konkrétne viactriednu regresiu a logistická regresia, čo znamená, že v prípade pochybností zahŕňa niečo, čo nie je také, aké sme očakávali. bude identifikovať.

Ak by sme mali rozdeliť všetky druhy ovocia na „pomaranče“ a „nie pomaranče“, pomocou iba jedného neurónu je jasné, že banány, hrušky, jablká, vodné melóny a akékoľvek ovocie, ktoré nekorešponduje veľkosťou, farbou, tvarom, vôňou a podobne s pomarančom by som zaradil do kategórie "nie". pomaranče“. Grapefruity a mandarínky by ich však zaradili do kategórie „pomarančov“, pretože zle vykonávajú prácu, na ktorú boli navrhnuté.

A keď hovoríme o pomarančoch a grapefruitoch, môžeme hovoriť o psoch a vlkoch, sliepkach a sliepkach, knihách a zápisníkoch... Tieto situácie sú prípadmi, v ktorých jednoduchý rad „ak...“ („ak...“) by nestačil na jasné rozlíšenie medzi jedným a druhým. iné. Je potrebný komplexnejší, nelineárny systém, ktorý je presnejší, pokiaľ ide o rozlišovanie medzi rôznymi prvkami. Niečo, čo berie do úvahy, že medzi podobnosťami môžu byť rozdiely. Tu prichádzajú na scénu neurónové siete.

Viac vrstiev, podobnejšie ľudskému mozgu

Umelé neurónové siete, ako ich názov napovedá, sú výpočtové umelé modely inšpirované v neurónových sieťach ľudského mozgu, sieťach, ktoré v skutočnosti napodobňujú fungovanie tohto orgánu biologické. Tento systém je inšpirovaný nervovým fungovaním a jeho hlavnou aplikáciou je rozpoznávanie vzory všetkých druhov: identifikácia tváre, rozpoznávanie hlasu, odtlačok prstov, rukopis, štátna poznávacia značka… Rozpoznávanie vzorov funguje takmer na všetko..

Keďže existujú rôzne neuróny, parametre, ktoré sa aplikujú, sú rôzne a dosahuje sa vyšší stupeň presnosti. Tieto neurónové siete sú systémy, ktoré nám umožňujú rozdeliť položky do kategórií rozdiel môže byť jemný, oddeľuje ich nelineárnym spôsobom, čo by inak nebolo možné spôsobom.

S jediným uzlom, s jedným neurónom, to, čo sa robí pri manipulácii s informáciami, je viactriedna regresia. Pridaním ďalších neurónov, pretože každý z nich má svoju vlastnú nelineárnu aktivačnú funkciu, ktorá, preložená do jednoduchšieho jazyka, im dáva hranice rozhodovania, ktoré sú presnejšie, pričom je graficky znázornené v zakrivenom tvare a berie do úvahy viac charakteristík pri rozlišovaní medzi „pomarančmi“ a „nie pomarančmi“, aby sme pokračovali v tomto príklade.

Zakrivenie týchto rozhodovacích hraníc bude priamo závisieť od toho, koľko vrstiev neurónov pridáme do našej neurónovej siete. Tie vrstvy neurónov, ktoré robia systém zložitejším a presnejším, sú v skutočnosti hlboké neurónové siete. V zásade platí, že čím viac vrstiev hlbokých neurónových sietí máme, tým presnejší a podobnejší bude program v porovnaní s ľudským mozgom.

Stručne povedané, neurónové siete nie sú ničím iným inteligentný systém, ktorý umožňuje robiť presnejšie rozhodnutia, veľmi podobným spôsobom, akým to robíme my ľudia. Ľudské bytosti sú založené na skúsenostiach, učia sa z nášho prostredia. Ak sa napríklad vrátime k prípadu pomaranča a grapefruitu, ak sme ho nikdy nevideli, dokonale si ho pomýlime s pomarančom. Keď sa s ním zoznámime, bude to vtedy, keď ho už budeme vedieť identifikovať a odlíšiť od pomarančov.

Prvá vec, ktorú treba urobiť, je dať neurónovým sieťam nejaké parametre, aby vedeli, aké to je, že chceme, aby sa naučili identifikovať. Potom prichádza fáza učenia alebo tréningu, takže je stále presnejší a má postupne menšiu chybovosť. Toto je čas, kedy by sme našu neurónovú sieť prezentovali pomarančom a iným ovocím. V tréningovej fáze dostanú prípady, v ktorých sú oranžové, a prípady, v ktorých nie sú oranžové, pričom zistia, či odpovedali správne, a povedia im správnu odpoveď.

Budeme sa snažiť urobiť veľa pokusov a čo najbližšie k realite.. Týmto spôsobom pomáhame neurónovej sieti fungovať, keď prídu skutočné prípady, a vie, ako správne rozlišovať, rovnakým spôsobom, ako by to urobila ľudská bytosť v reálnom živote. Ak školenie bolo primerané, po zvolení dobrých parametrov rozpoznávania a dobre klasifikované, neurónová sieť bude mať veľmi vysokú úspešnosť rozpoznávania vzorov. vysoká.

  • Mohlo by vás zaujímať: "Ako fungujú neuróny?"

Čo sú to a ako presne fungujú?

Teraz, keď sme videli všeobecnú predstavu o tom, čo sú neurónové siete, a budeme lepšie rozumieť tomu, čo sú a ako tieto emulátory neurónov ľudského mozgu fungujú a kde sa v tom všetkom nachádzajú hlboké neurónové siete proces.

Predstavme si, že máme nasledujúcu neurónovú sieť: máme tri vrstvy umelých neurónov. Povedzme, že prvá vrstva má 4 neuróny alebo uzly, druhá 3 a posledná má len 2. Toto všetko je príklad umelej neurónovej siete, celkom ľahko pochopiteľný.

Prvá vrstva je tá, ktorá prijíma dáta., teda informácie, ktoré môžu prísť vo forme zvuku, obrazu, vôní, elektrických impulzov... vrstva je vstupná vrstva a má na starosti prijímanie všetkých údajov, aby ich bolo možné neskôr odoslať nasledujúcemu vrstvy. Počas trénovania našej neurónovej siete to bude vrstva, s ktorou budeme pracovať ako prvá údaje, ktoré použijeme, aby sme zistili, ako dobre sa vám darí predpovedať alebo identifikovať informácie, ktoré vám boli poskytnuté dáva.

Druhou vrstvou nášho hypotetického modelu je skrytá vrstva, ktorá leží presne uprostred prvej a poslednej vrstvy., ako keby naša neurónová sieť bola sendvič. V tomto príklade máme iba jednu skrytú vrstvu, ale môže ich byť toľko, koľko chceme. Mohli by sme hovoriť o 50, 100, 1 000 alebo dokonca 50 000 vrstvách. V podstate sú tieto skryté vrstvy tou časťou neurónovej siete, ktorú by sme nazvali hlboká neurónová sieť. Čím väčšia je hĺbka, tým zložitejšia je neurónová sieť.

Nakoniec máme tretiu vrstvu nášho príkladu, ktorá je výstupnou vrstvou. Táto vrstva, ako naznačuje jej názov, má na starosti prijímanie informácií z predchádzajúcich vrstiev, rozhodovanie a dáva nám odpoveď alebo výsledok.

V neurónovej sieti je každý umelý neurón spojený so všetkými nasledujúcimi. V našom príklade, kde sme poznamenali, že máme tri vrstvy po 4, 3 a 2 neuróny, 4 zo vstupnej vrstvy sú spojené s 3 zo skrytej vrstvy a 3 zo skrytej vrstvy s 2 na výstupe, čo nám dáva spolu 18 spojenia.

Všetky tieto neuróny sú spojené s neurónmi ďalšej vrstvy a posielajú informácie v smere vstup->skrytý->výstup.. Ak by bolo skrytých vrstiev viac, hovorili by sme o väčšom počte spojení, posielanie informácií zo skrytej vrstvy do skrytej vrstvy, až kým nedosiahne výstupnú vrstvu. Keď výstupná vrstva dostane informácie, poskytne nám výsledok na základe prijatých informácií a spôsobu ich spracovania.

Keď trénujeme náš algoritmus, teda našu neurónovú sieť, tento proces, ktorý sme práve vysvetlili, sa bude robiť mnohokrát. Do siete doručíme nejaké dáta, uvidíme, čo nám výsledok dá, analyzujeme to a porovnáme s tým, čo sme od výsledku očakávali. Ak existuje veľký rozdiel medzi tým, čo sa očakáva, a tým, čo sa získa, znamená to, že existuje vysoká miera chýb, a preto je potrebné vykonať niekoľko úprav.

Ako fungujú umelé neuróny?

Teraz porozumieme individuálnemu fungovaniu neurónov, ktoré pracujú v rámci neurónovej siete. Neurón prijíma informácie z predchádzajúceho neurónu. Povedzme, že tento neurón dostáva tri informačné vstupy, z ktorých každý pochádza z troch neurónov predchádzajúcej vrstvy. Tento neurón zase generuje výstupy, v tomto prípade povedzme, že je pripojený iba k neurónu ďalšej vrstvy.

Každé spojenie, ktoré má tento neurón s tromi neurónmi predchádzajúcej vrstvy, prináša hodnotu „x“, čo je hodnota, ktorú nám predchádzajúci neurón posiela.; a má tiež hodnotu "w", čo je hmotnosť tohto spojenia. Hmotnosť je hodnota, ktorá nám pomáha prikladať väčšiu dôležitosť jednému spojeniu pred ostatnými. Stručne povedané, každé spojenie s predchádzajúcimi neurónmi má hodnotu „x“ a „w“, ktoré sa vynásobia (x·w).

Tiež budeme mať hodnota nazývaná „bias“ alebo bias reprezentovaná „b“, čo je počet chýb, ktoré povzbudzujú určité neuróny, aby sa aktivovali ľahšie ako ostatné. Okrem toho máme v rámci neurónu aktivačnú funkciu, čo robí jeho stupeň klasifikácie rôznych prvkov (s. pomaranče) nie je lineárny. Každý neurón má sám osebe iné parametre, ktoré je potrebné vziať do úvahy, vďaka čomu je celý systém, toto je neurónová sieť, klasifikovaný nelineárnym spôsobom.

Ako neurón vie, či sa musí aktivovať alebo nie? to znamená, kedy viete, či máte posielať informácie do ďalšej vrstvy? Toto rozhodnutie sa riadi nasledujúcou rovnicou:

neurónová sieť

Tento vzorec znamená, že je potrebné urobiť súčet všetkých váh „w“ vynásobený všetkými hodnotami „x“, ktoré neurón prijíma z predchádzajúcej vrstvy. K tomu sa pridáva zaujatosť „b“.

Výsledok tejto rovnice sa odošle do aktivačnej funkcie, čo je jednoducho funkcia, ktorá nám hovorí, že ak je výsledok tejto rovnice väčší ako a určitý počet, neurón vyšle signál do ďalšej vrstvy a ak je menší, tak nie poslať to Takže takto sa umelý neurón rozhoduje, či pošle alebo nepošle informácie neurónom takto: vrstva pomocou výstupu, ktorý budeme nazývať "y", výstup, ktorý je naopak vstupom "x" nasledujúceho neurón.

A ako trénujete celú sieť?

Prvá vec, ktorá sa urobí, je doručenie údajov do prvej vrstvy, ako sme už predtým komentovali. Táto vrstva bude posielať informácie do nasledujúcich vrstiev, ktorými sú skryté vrstvy alebo hlboká neurónová sieť. Neuróny týchto vrstiev sa aktivujú alebo neaktivujú v závislosti od prijatých informácií. Nakoniec nám výstupná vrstva dá výsledok, ktorý porovnáme s hodnotou, na ktorú sme čakali, či sa neurónová sieť naučila, čo má robiť správne.

Ak sa neučil dobre, vykonáme ďalšiu interakciu, tj. opäť vám predstavíme informácie a uvidíme, ako sa neurónová sieť správa. V závislosti od získaných výsledkov sa upravia hodnoty „b“, to znamená odchýlka každého neurónu, a „w“, čo je váha každého spojenia s každým neurónom, aby sa znížila chyba. Aby sme zistili, aká veľká je táto chyba, použijeme inú rovnicu, ktorá je nasledujúca:

neurónová sieť

Táto rovnica je stredná kvadratická chyba. Urobíme súčet y (x), čo je hodnota, ktorú nám naša sieť dala v interakcii mínus „a“, čo je hodnota, ktorú sme od nej očakávali, zvýšená na druhú. Nakoniec túto sumu vynásobíme 1/2n, čo je „n“ počet interakcií, ktoré sme poslali na trénovanie našej neurónovej siete.

Predpokladajme napríklad, že máme nasledujúce hodnoty

neurónová sieť

Prvý stĺpec „y (x)“ predstavuje to, čo nám naša sieť poskytla v každej zo štyroch interakcií, ktoré sme testovali. Hodnoty, ktoré sme získali, ako vidno, nezodpovedajú hodnotám v druhom stĺpci „a“, čo sú požadované hodnoty pre každú z testovaných interakcií. Posledný stĺpec predstavuje chybu každej interakcie.

Aplikovaním vyššie uvedeného vzorca a použitím týchto údajov tu, majte na pamäti, že v tomto prípade n = 4 (4 interakcie) nám dáva hodnotu 3,87, čo je stredná štvorcová chyba, ktorú má naša neurónová sieť v týchto momenty. Keď poznáme chybu, musíme teraz, ako sme už predtým poznamenali, zmeniť zaujatosť a zaujatosť váhy každého z neurónov a ich interakcie so zámerom, že týmto spôsobom je chyba znížiť.

V tomto bode sa uplatnia inžinieri a informatici algoritmus nazývaný gradientový zostup pomocou ktorých môžu získať hodnoty na testovanie a modifikáciu skreslenia a hmotnosti každého umelého neurónu takže týmto spôsobom sa dosiahne čoraz nižšia chyba, ktorá sa blíži k predpovedi alebo výsledku chcel. Je to vec testovania a čím viac interakcií sa urobí, tým viac bude tréningov a tým viac sa sieť naučí.

Akonáhle je neurónová sieť dostatočne vyškolená, bude to vtedy, keď nám poskytne presné a spoľahlivé predpovede a identifikácie. V tomto bode budeme mať sieť, ktorá bude mať v každom zo svojich neurónov hodnotu definovanú váhu, s kontrolovaným sklonom a s rozhodovacou schopnosťou, ktorá vytvorí systém práca.

Bibliografické odkazy:

  • Puig, A. [AMP Tech] (2017, 28. júl). Ako fungujú neurónové siete? [Video súbor]. Zotavené z https://www.youtube.com/watch? v=IQMoglp-fBk&ab_channel=AMPTech
  • Santaolalla, J. [Dajte si vlog] (2017, 11. apríla) CienciaClip Challenge – Čo sú to neurónové siete? [Video súbor]. https://www.youtube.com/watch? v=rTpr6DuY4LU&ab_channel=DateunVlog
  • Schmidhuber, J. (2015). „Hlboké učenie v neurónových sieťach: Prehľad“. Neurálne siete. 61: 85–117. arXiv: 1404,7828. doi: 10.1016/j.neunet.2014.09.003. PMID 25462637. S2CID 11715509
Teachs.ru
Fronésis: aká je táto ľudská cnosť podľa gréckych filozofov?

Fronésis: aká je táto ľudská cnosť podľa gréckych filozofov?

Získavanie vedomostí každého druhu je vždy pozitívne, ale neprinesú nám šťastie, ak ich nevieme p...

Čítaj viac

60 najbežnejších priezvisk v Argentíne (a ich pôvod)

60 najbežnejších priezvisk v Argentíne (a ich pôvod)

Argentína je jednou z krajín, ktoré sú najviac definované zmesou kultúr, pretože medzi jej obyvat...

Čítaj viac

70 najbežnejších židovských priezvisk

70 najbežnejších židovských priezvisk

Židovská komunita je jednou z najstarších etnických skupín, ktoré v súčasnosti existujú a jej ide...

Čítaj viac

instagram viewer