Czy wiesz że… – Sieci neuronowe

 Biomimikra to technika polegająca na poszukiwaniu rozwiązań problemów wśród organizmów żywych. Wiele technologii które dziś uważamy za standard powstały właśnie dzięki inspiracji płynącej z natury. Jednymi z wielu przykładów mogą być rzepy powszechnie wykorzystywane przy produkcji odzieży, a które powstały dzięki obserwacji sposobu w jaki łopian przenosi swoje owoce, bądź samoczyszczące hydrofobowe materiały wykorzystywane do produkcji farb i dachówek, będące rezultatem analizy powierzchni liścia lotosu. Naśladowanie natury przynosi szczególnie wymierne korzyści w takich dziadzinach jak sztuczna inteligencja.

Sieci neuronowe wchodzące w skład zagadnień uczenia maszynowego są idealnym przykładem. Idea ich działania odwzorowuje funkcjonowanie ludzkiego mózgu, zbudowanego z wielu neuronów (komórek zdolnych do przetwarzania i przewodzenia informacji w postaci sygnału elektrycznego). Pomysł wykorzystania sztucznej sieci neuronowej powstał już w latach czterdziestych ubiegłego wieku za sprawą Perceptronu, będącego jednym z pierwszych matematycznych modeli neutronu. Model ten posiada wiele wejść, gdzie każde z nich ma przyporządkowana pewną liczbę rzeczywistą, stanowiąca wagę oraz jedno wyjście. Może być on wykorzystywany tylko do klasyfikowania zbiorów liniowo separowalnych.

Rozwinięciem tej idei były sieci neuronowe, które są znacznie bardziej złożone i mają większe możliwości. Podstawową cechą wszystkich sieci neuronowych jest fakt że ich struktura podzielona jest na warstwy składające się z neuronów. Pierwsza warstwa jest określana mianem warstwy wejściowej i jest odpowiedzialna za wprowadzenie danych do sieci. Każdy neuron w tej warstwie odpowiada jednemu wejściu. Jako dane wejściowe mogą zostać użyte parametry określające daną rzecz bądź stan, np. wyniki badań pacjenta lub obraz zakodowany w postaci macierzy. W przypadku gdy sieć korzysta z obrazów jako źródła danych wartość każdego z pikseli stanowi osobny neuron. Ostatnia warstwa sieci neuronowej jest warstwą wyjściową. Liczba jej neuronów odpowiada liczbie kategorii do jakich dana sieć kwalifikuje dane wejściowe. Pomiędzy tymi dwiema warstwami mogą się znajdować warstwy ukryte, które dodatkowo modulują dane wejściowe. Wymiana danych pomiędzy warstwami działa na zasadzie „każdy z każdym”, czyli każdy z neuronów przekazuje informacje wszystkim neuronom znajdującym się w następnej warstwie. Przekazywana informacja (liczba, zazwyczaj z przedziału od 0 do 1) dodatkowo jest modyfikowana po przez wymnożenie jej przez wagę opisującą dane połączenie. W podstawowej wersji sieci neuronowej wymiana danych w obrębie jednej warstwy nie występuje. Dzięki takiej budowie nawet proste sieci neuronowe są w stanie rozwiązywać złożone problemy kategoryzacyjne, takie jak rozpoznawanie odręcznego pisma, wykrywanie obiektów na zdjęciu lub diagnozowanie chorób.

Obecność tej technologii możemy zauważyć praktycznie we wszystkich aspektach naszego życia, od prognozy pogody, przez personalizację rekomendacji aż po samo jeżdżące samochody. Obecne trendy wskazują że rozwój technik sztucznej inteligencji takich jak ta w przyszłych latach będzie dalej wyłącznie przyspieszał, a ich wpływ na życia każdego z nas będzie coraz większy.

Autor: Paweł Olszewski

Linki do źródeł:
https://pl.wikipedia.org/wiki/Sie%C4%87_neuronowa
https://pl.wikipedia.org/wiki/Perceptron
https://www.globema.pl/ai-sztuczne-sieci-neuronowe-zastosowania/
https://bulldogjob.pl/readme/czym-jest-deep-learning-i-sieci-neuronowe

Dla tych którzy chcą więcej:
https://www.youtube.com/watch?v=aircAruvnKk&ab_channel=3Blue1Brown