Przeczytaj
Czym są inspirowane sieci neuronowe?
Naukowców, badających i tworzących różnorodne struktury, fascynuje działanie ludzkiego mózgu. Zachodzą w nim procesy, które stały się inspiracją do tworzenia sztucznych sieci neuronowych.
Mózg człowieka bardzo dobrze radzi sobie z zakłóconymi informacjami, jakie dostaje. Mimo że do organizmu z zewnątrz docierają informacje o różnej sile, potrafi on zareagować na nie w taki sposób, że impulsy przesyłane pomiędzy neuronami zachowują stałą moc. W konsekwencji na ogół bezbłędnie odczytujemy komunikat zaszumiony lub niepełny, niejasny.
Co ważne – mózg do swojej intensywnej pracy nie potrzebuje dużo energii, szybko się regeneruje i jest odporny na uszkodzenia bądź obumieranie komórek. Neurony szybko dostosowują swoje działanie do nowych sytuacji. Takie same efekty mają osiągać sztuczne neurony, programowane są one w konkretnych celach i wpisane w większe struktury.
Czym charakteryzują się sztuczne neurony?
mają zdolność do nauki na podstawie przykładów, tak jak człowiek uczy się na podstawie doświadczeń i regularnego powtarzania informacji,
mają zdolność do uogólniania zjawisk (klasyfikacji),
mają zdolność interpretacji zależności i zjawisk zawierających informacje niekompletne lub te z błędami,
mogą równolegle przetwarzać różne informacje (np. neurokomputer Mitsubishi używany jest do rozpoznawania mowy i jednoczesnego przetwarzania obrazu),
w stosunku do szybkości przetwarzania informacji charakteryzują się niskim kosztem budowy (dużą liczbą prostych i tanich procesorów),
są odporne na uszkodzenie układów (dzięki dużej liczbie neuronów po utracie części sztucznych neuronów cały układ dalej działa poprawnie).
Czy sieci neuronowe działają sprawniej od człowieka?
Sekretne życie sieci neuronowych. Sztuczna inteligencja a neuronaukaPrzede wszystkim sztuczne sieci neuronowe potrzebują bardzo dużo danych i wręcz milionów ekspozycji na bodźce, żeby się czegoś dobrze nauczyć. Człowiek potrafi uczyć się znacznie sprawniej, na podstawie kilku pojedynczych ekspozycji. Sztuczne sieci neuronowe trenuje się w wąskich zakresach i do wykonywania ściśle określonych zadań, na przykład do rozpoznawania obiektów na zdjęciach. Na podstawie szeregu pikseli sieć rozpoznaje, co przedstawia zdjęcie – psa czy kota. Człowiek uczy się rozpoznawać obiekty w rzeczywistym, trójwymiarowym świecie, wie zatem, jak kot czy pies wygląda z różnych perspektyw, co z kolei często jest słabością sieci. Poza tym człowiek może uczyć się i wykonywać kilka zadań jednocześnie, dynamicznie przechodząc z jednego do drugiego. Sztuczne sieci neuronowe rzadko są trenowane pod kątem wielozadaniowości. Póki co wszechstronność nadal jest domeną człowieka.
Źródło: Mikołaj Magnuski, Sekretne życie sieci neuronowych. Sztuczna inteligencja a neuronauka, dostępny w internecie: web.swps.pl [dostęp 25.04.2022].
Przewagą człowieka na sztucznymi neuronami jest jego szybka reakcja (często emocjonalna) na nowe zdarzenia, nieplanowane sytuacje. Posiadając pamięć uczuć, rejestrując nie tylko zaistniałe fakty, ale i towarzyszące temu odczucia, mózg ludzki nie ma problemu z dynamicznym przekierowaniem informacji. Gdy spotykamy po raz pierwszy nieznany obiekt, możemy np. zmienić nasze położenie względem niego, przybliżyć się lub oddalić, żeby lepiej coś zobaczyć albo użyć dodatkowych zmysłów, poza wzrokiem i słuchem, w celu lepszego rozeznania nowej sytuacji. Sztuczne sieci nie mają takich „zachowań”, chyba że zostają odpowiednio zaprogramowane, ukierunkowane. Wtedy mogą wykonać szereg wgranych im czynności, ale z decyzyjnością, z samodzielnym myśleniem nie ma to nic wspólnego.
Zastosowanie sztucznych sieci neuronowych
Przede wszystkim stworzone neurony stosowane są podczas analizy danych neuronaukowych, przy tworzeniu algorytmów inspirowanych sztuczną inteligencją. Głębokie sztuczne sieci neuronowe również są wykorzystywane w neuronaukowejneuronaukowej praktyce badawczej, ale ich szersze zastosowanie ogranicza duże zapotrzebowanie na dane. Są one też nadmiernie transparentne: sieć może trafnie różnicować poszczególne dane, ale nie prowadzi to do naukowego odkrycia. Musimy dowiedzieć się, dlaczego tak się dzieje, jakie informacje pozwalają sieci np. poprawnie odróżniać mózg osoby zdrowej i tej walczącej z depresją. Jakie informacje zostaną poprawnie odczytane przez sztuczną sieć, by np. klasyfikując danego pacjenta do różnych badań laboratoryjnych, dobrze określić jego aktualny stan zdrowia.
Sieci neuronowe tworzy się, by wspierały użytkowników w codziennej pracy, cały czas trwają więc badania, jak usprawnić proces tworzenia innowacyjnych struktur.
Budowa sieci neuronowej
Podstawowym elementem każdej sieci neuronowej jest neuron. Sieci neuronowe wzorowane są na budowie ludzkiego mózgu – naśladują sposób, w jaki biologiczne neurony komunikują się między sobą. Podstawowym elementem każdej sieci neuronowej jest sztuczny neuron łączy się z innym. Przykładem matematycznych neuronów jest neuron McCullocha‑Pittsa, posiadający wiele wejść i jedno wyjście. Każdemu z wejść przyporządkowana jest liczba rzeczywista – waga wejścia.
Najczęściej neuron składa się z następujących elementów:
wejścia danych,
wagi poszczególnych wejść,
funkcji aktywacji,
wyjścia danych.
![Ilustracja przedstawia 3 wejścia danych oznaczonych jako x1, x2 oraz xn o wagach w1, w2 oraz wn. Od każdego wejścia odchodzi strzałka prowadząca do sumy, w której I zmienia się od 1do n, x i w indeksie dolnym, w i w indeksie dolnym, fragment zaznaczony owalem, kolejna strzałka prowadzi do funkcji x, otoczonej prostokątną ramką. Stąd strzałka wiedzie do y.](https://static.zpe.gov.pl/portal/f/res-minimized/RVck9zDoixk98/1677593962/Fy2jliQOe6O6hwbou5SCZ4FII9LhnEfQ.png)
Warstwy sieci
Sieć neuronową budujemy, łącząc neurony ze sobą w określony sposób. Sieć neuronową dzielimy na tak zwane warstwy, przy czym neurony w danej warstwie nie komunikują się ze sobą. Od wielkości i liczby warstw zależy działanie naszej sieci. Jej wiedza zawarta jest w wagach wejściowych każdego neuronu, ponieważ to od nich zależy, z jaką siłą dana zmienna będzie wprowadzana do neuronu. Wyróżniamy trzy rodzaje warstw:
warstwa wejściowa – zazwyczaj odpowiada za wstępne przygotowanie danych wejściowych,
warstwa wyjściowa – odpowiada za finalną prezentację końcowego wyniku, stanowi jedyne wyjście całej sieci,
warstwa ukryta – każda dodatkowa warstwa pomiędzy warstwą wejściową i wyjściową, jej działanie nie może być bezpośrednio obserwowane.
![Ilustracja przedstawia 4 wejścia danych oznaczonych jako x1, x2, x3 oraz x4. Od każdego wejścia odchodzi strzałka prowadząca do jasnoniebieskiego koła, czyli do warstwy wejściowej. Od każdego jasnoniebieskiego koła rozchodzą się 4 strzałki prowadzące do czterech ciemnoniebieskich kół. Od każdego ciemnoniebieskiego koła rozchodzą się 3 strzałki prowadzące do kolejnych trzech ciemnoniebieskich kół. Ciemnoniebieskie koła to warstwy ukryte. Od każdego z trzech ciemnoniebieskich kół odchodzi jedna strzałka skierowana ku czarnemu kołu, czyli warstwie wyjściowej.](https://static.zpe.gov.pl/portal/f/res-minimized/R1ZWnGSqLkxT2/1677593962/1GeVapUR3hNvCYMIQoF1mQ3eB8LMZk5p.png)
Skuteczność sieci neuronowej jest mocno uzależniona od struktury warstw oraz gęstości połączeń między nimi. Liczba ukrytych warstw, na potrzeby podstawowych problemów, zazwyczaj nie jest większa od dwóch. Im większa liczba neuronów w danej warstwie, tym więcej cech może być rozpoznanych. Jednak wraz ze wzrostem rozmiaru sieci, rośnie ryzyko nadmiernego dopasowanianadmiernego dopasowania i ilość czasu potrzebnego na naukę struktury sieci.
Sieci neuronowe, które posiadają więcej niż dwie ukryte warstwy, nazywamy głębokimi. Są one bardzo często wykorzystywane do bardziej skomplikowanych problemów klasyfikacji. Dzięki nim możliwa jest szybka i efektywna analiza wielu danych, a także weryfikacja i wprowadzanie nowych informacji do danego systemu. Uczenie głębokie umożliwia sztucznej inteligencjisztucznej inteligencji podejmowanie decyzji, rozpoznawanie obiektów, rozwiązywanie problemów oraz rozumienie języka.
Połączenia neuronów między warstwami
Najczęściej spotykany sposób łączenia warstw jest dosyć prosty w budowie. Każdy neuron z danej warstwy łączymy ze wszystkimi neuronami z warstw sąsiednich. Taka sieć połączeń może wydawać się zbyt duża i bardzo czasochłonna podczas nauki. Pomocna okazuje się wówczas tzw. technika regularyzacji opuszczeń (z ang. dilution). Sprawia ona, że w trakcie uczenia aktualizowane są jedynie wagi dla neuronów, które są najlepiej przystosowane. Dzięki temu liczba wykorzystywanych połączeń między konkretnymi neuronami jest na bieżąco regulowana.
![Ilustracja przedstawia 4 niebieskie koła. Od każdego odchodzą 3 strzałki prowadzące do trzech niebieskich kół. Schemat jest poprzedzony i zakończony wielokropkiem.](https://static.zpe.gov.pl/portal/f/res-minimized/R17lyShJsN9nm/1677593963/1ohvNDKaLKav7DaffHTh7INvRvqUkifs.png)
Kolejnym przykładem są sieci konwolucyjne, zajmujące się zaawansowaną kategoryzacją obrazów i filmów. W ich strukturze istnieją warstwy, które stopniowo redukują liczbę parametrów i kontrolują uczenie się sieci. Neurony znajdujące się w takich warstwach są połączone tylko z niektórymi neuronami z warstw sąsiednich.
![Ilustracja przedstawia sześć niebieskich kół. Od każdego odchodzi jedna strzałka prowadząca do dwóch czarnych kół. Schemat jest poprzedzony i zakończony wielokropkiem.](https://static.zpe.gov.pl/portal/f/res-minimized/RTxuTb3vsZX2o/1677593963/1akjafdmafxTlBkdjU3iOCOJr6vtOtzQ.png)
Słownik
interdyscyplina naukowa zajmująca się badaniem układu nerwowego, głównie ośrodkowego układu nerwowego; leży na pograniczu wiedzy medycznej, biologicznej, biochemicznej, biofizycznej, informatycznej i psychologicznej
sytuacja, w której sieć jest zbyt dopasowana do danych treningowych; ma przez to o wiele mniejszą skuteczność, gdyż pracuje na danych, z którymi nie miała do czynienia w trakcie procesu uczenia
AI (ang. artificial intelligence) inteligencja wykazywana przez urządzenia sztuczne (w przeciwieństwie do inteligencji naturalnej)