Podręcznik
3. Sieci neuronowe głębokie
3.1. Wprowadzenie
Za protoplastę tych sieci można uznać zdefiniowany na początku lat dziewięćdziesiątych wielowarstwowy neocognitron Fukushimy [12]. Prawdziwy rozwój tych sieci zawdzięczamy jednak profesorowi LeCun [37], który zdefiniował podstawową strukturę i algorytm uczący specjalizowanej sieci konwolucyjnej, wielowarstwowej, zwanej „Convolutional Neural Network” (CNN). Aktualnie CNN stanowi podstawową strukturę stosowaną na szeroką skalę w przetwarzaniu obrazów i sygnałów [18]. W międzyczasie powstało wiele odmian sieci będących modyfikacją struktury podstawowej CNN (np. U-net, RCNN) jak również sieci różniących się zasadniczo od CNN, na przykład autoenkoder, jako wielowarstwowe, nieliniowe uogólnienie liniowej sieci PCA [13,33,46,], sieci rekurencyjne typu LSTM (ang. Long Short-Term Memory) [20,58], stanowiące skuteczne rozwiązanie problemu propagacji wstecznej w czasie w systemie ze sprzężeniem zwrotnym, czy ograniczona (wielowarstwowa) maszyna Boltzmanna (ang. Restricted Boltzmann Machine - RBM) używana w sieciach głębokiej wiarygodności (ang. Deep Belief Network – DBN) [18,26].
Cechą wspólną tych rozwiązań, zwłaszcza w przypadku CNN, jest wielowarstwowość ułożenia neuronów i ogromna (idąca w miliony) ilość połączeń wagowych między neuronami. Dla uniknięcia problemu lawinowego narastania liczby adaptowanych wag stosuje się powszechnie połączenia typu lokalnego. W tego typu rozwiązaniach neuron jest zasilany nie przez wszystkie sygnały (na przykład piksele obrazów) warstwy poprzedzającej, jak to jest zorganizowane w sieciach klasycznych, ale przez wybraną małą grupę neuronów (pikseli) tej warstwy, tworzących maskę filtrującą. Analiza całego obrazu następuje poprzez przesuwanie tej maski z ustalonym krokiem (ang. stride) wzdłuż i wszerz obrazu. Charakterystyczną cechą jest przy tym używanie identycznych wartości wag przesuwającej się maski filtracyjnej.
Każdy rodzaj sieci głębokich związany jest z problemem adaptacji ogromnej liczby parametrów sieci w akceptowalnym czasie. Skuteczna implementacja i rozwój koncepcji LeCuna stały się możliwe dzięki olbrzymiemu postępowi w rozwoju technologii informatycznych, pozwalającemu na ogromne przyśpieszenie obliczeń. Połączenie tych najnowszych technologii z proponowanymi rozwiązaniami sieci głębokich stworzyło podstawy zastosowań sztucznej inteligencji w życiu codziennym.
Realne stało się zaprojektowanie pojazdów samosterujących, których podstawą jest rozpoznawanie obrazów i obiektów prezentowanych na tych obrazach w czasie rzeczywistym, sterowanie robotami, skuteczne rozpoznawanie głosu, automatyczna generacja tekstu na podstawie wypowiedzi głosowej, segmentacja złożonych obrazów, zwłaszcza biomedycznych, przewidywanie szeregów czasowych, itp. [2,3]. Ważną sferą zastosowań jest wspomaganie diagnostyki medycznej dzięki skutecznym algorytmom przetwarzania obrazów medycznych, na przykład mikroskopowych, histologicznych itp. W pracy tej najwięcej uwagi poświęcimy najczęściej używanej strukturze sieci CNN.