Sieć neuronowa: definicja

Czym jest sieć neuronowa?

Sieć neuronowa (ang. neural network) to pojęcie związane z uczeniem głębokim (deep learning) i sztuczną inteligencją. Podstawowym elementem sieci jest sztuczny neuron, który tworzy się na wzór tego biologicznego występującego w ludzkim mózgu. Sztuczny neuron podobnie jak biologiczny również funkcjonuje w siatce wzajemnych powiązań. W systemie nerwowym człowieka neuron przekazuje bodziec dalej po synapsach (przewodach) aż do mózgu. Tak samo w sztucznej sieci przetwarza się i przenosi informację.   

Po co tworzona jest sieć neuronowa?

Pojedynczy neuron to bardzo prosty element, ale dzięki powiązaniu z innymi tworzy coraz bardziej złożony układ, w których może odbywać się proces uczenia się. W deep learning uczenie to może być przebiegać bez wsparcia człowieka. Do sieci dostarcza się dane wejściowe, które system analizuje i przetwarza. Efektem końcowym jest wynik. W jego obliczaniu biorą udział wszystkie „poziomy” sieci (informacja wyjściowa została przetworzona przez wszystkie neurony w sieci).

Architektura: jak zbudowana jest sieć neuronowa?

Każda sieć składa się z warstw:

  • warstwa wejściowa – zewnętrzna (1) – jest tylko jedna, tutaj wprowadza się są dane wejściowe,
  • warstwa środkowa – ukryta (2) – w najprostszej sieci występuje jedna warstwa, ale warstw może być też bardzo wiele; dane wejściowymi dla warstwy ukrytej są danymi wyjściowymi z poprzedniej warstwy (1); co więcej podobna zależność występuje w samej warstwie ukrytej (2): dane wyjściowe z jednego neuronu przekazuje się dalej jako dane wejściowe dla kolejnego neuronu.
  • warstwa wyjściowa (3) – podobnie jak wejściowa – jest tylko jedna; dopiero tutaj na ostatniej warstwie widoczny jest wynik obliczeń całej sieci.
sieć neuronowa
Źródło obrazka: Wikipedia

Większość sieci to sieci wielowarstwowe, czyli mają więcej niż jedną warstwę ukrytą. Im więcej poziomów w warstwie ukrytej, tym bardziej złożona siatka, ale też lepsza jakość obliczeń i mniej błędów w danych wyjściowych (ostatecznym widocznym wyniku).  

Podsumowując: każdy neuron dokonuje swoich obliczeń i następnie przekazuje je dalej. Wyniki obliczeń poszczególnych neuronów w warstwie wejściowej i ukrytej nie są jednak dla nas widoczne, otrzymujemy dopiero wynik warstwy wyjściowej.

Jakie są typy sieci neuronowych?

Wyróżnia się kilka typów sieci neuronowych:

  • sieci jednokierunkowe,
  • sieci rekurencyjne,
  • samoorganizujące się mapy.

Sieci neuronowe: dzisiejsze zastosowania

Sieci neuronowe są dzisiaj podstawowym narzędziem deep learning i mają bardzo zaawansowane zastosowania. To dzięki nim funkcjonują autonomiczne samochody. Sięga się po nie jako wsparcie przy diagnozach pacjentów. Dodatkowo, wielkim potencjałem dla sztucznych sieci jest wszelkiego typu prognozowanie, w tym również wyników ekonomicznych, gospodarczych, giełdowych, społecznych.

Narzędzia do budowy sieci neuronowych

Sieci neuronowe tworzy się dzięki narzędziom specjalnie przygotowanym do tego celu. Za jedne z najbardziej zaawansowanych uważa się Statistica Neural Networks oraz Matlab. Ten drugi posiada również graficzny wizualizator, który mają wspomóc proces budowania sieci.