Robocikowo>ROBOCIKOWO
Architektura

MLP

1986AktywnyOpublikowano: 21 października 2026Aktualizacja: 21 października 2026Opublikowany
Perceptron wielowarstwowy (MLP) to podstawowa sieć neuronowa typu feedforward: warstwy w pełni połączone z nieliniowymi funkcjami aktywacji, trenowane metodą propagacji wstecznej. Fundament współczesnego uczenia głębokiego.
Kluczowa innowacja
Ułożenie w stos warstw w pełni połączonych z nieliniowymi aktywacjami, trenowanych od końca do końca propagacją wsteczną — co pozwoliło uczyć się funkcji nieliniowo separowalnych (np. XOR) i aproksymować dowolną funkcję ciągłą, przełamując ograniczenia pojedynczego perceptronu.
Kategoria
Architektura
Poziom abstrakcji
Building block
Poziom operacji
ModelElement architektury
Zastosowania
Klasyfikacja i regresja na danych tabelarycznychWarstwy feedforward (FFN) w TransformerachGłowice projekcyjne i klasyfikacyjne w większych sieciachAproksymacja funkcjiModele bazowe (baseline) w uczeniu maszynowymMapowanie embeddingów na wyjścia

Jak działa

Przejście w przód: dane wejściowe przechodzą kolejno przez warstwy; w każdej warstwie liczona jest ważona suma (mnożenie macierzy wag przez wektor wejściowy) z dodanym biasem, a wynik przepuszczany przez funkcję aktywacji. Obliczenie straty: wyjście sieci porównywane jest z wartością docelową za pomocą funkcji kosztu. Propagacja wsteczna: gradienty straty względem wszystkich wag wyznaczane są od warstwy wyjściowej do wejściowej za pomocą reguły łańcuchowej. Aktualizacja wag: optymalizator (np. SGD, Adam) koryguje wagi w kierunku malejącego gradientu. Cykl powtarza się dla kolejnych batchy danych aż do zbieżności.

Rozwiązany problem

Pojedynczy perceptron Rosenblatta potrafił rozdzielać jedynie klasy liniowo separowalne i nie radził sobie z prostymi problemami jak XOR. MLP rozwiązuje to przez dodanie warstw ukrytych z nieliniowymi aktywacjami, co pozwala modelować złożone, nieliniowe zależności. Brakowało jednak skutecznej metody trenowania takich sieci — dostarczyła jej propagacja wsteczna, umożliwiając efektywne uczenie sieci wielowarstwowych od końca do końca.

Komponenty

Warstwa wejściowaWejście danych

Przyjmuje wektor cech wejściowych; liczba neuronów odpowiada wymiarowości danych wejściowych.

Warstwa ukryta (w pełni połączona)Transformacja liniowa i reprezentacja pośrednia

Warstwa gęsta obliczająca ważoną sumę wejść z biasem; parametryzowana macierzą wag. MLP ma jedną lub wiele takich warstw.

Funkcja aktywacjiWprowadzenie nieliniowości

Nieliniowość stosowana po transformacji liniowej (sigmoid, tanh, ReLU i warianty), bez której sieć byłaby równoważna pojedynczej transformacji liniowej.

ReLURectified Linear Unit; domyślny wybór w nowoczesnych sieciach.
Sigmoid / tanhHistoryczne funkcje saturujące, podatne na zanikające gradienty.

Oficjalna

Warstwa wyjściowaProdukcja wyjścia

Ostatnia warstwa produkująca predykcję; aktywacja zależy od zadania (softmax dla klasyfikacji wieloklasowej, liniowa dla regresji).

Implementacja

Pułapki implementacyjne
Zanikające i eksplodujące gradientyWysoka

Głębokie MLP z saturującymi aktywacjami (sigmoid, tanh) tracą sygnał gradientu, co blokuje trening.

Rozwiązanie:Stosuj ReLU i warianty, odpowiednią inicjalizację wag (He/Xavier) oraz normalizację (batch/layer norm).
Przeuczenie (overfitting)Średnia

Duża liczba parametrów warstw w pełni połączonych łatwo dopasowuje się do szumu w danych treningowych.

Rozwiązanie:Dropout, regularyzacja L2 (weight decay), wczesne zatrzymanie i augmentacja danych.
Słabe dopasowanie do danych strukturalnychŚrednia

MLP nie uwzględnia struktury przestrzennej ani czasowej danych (obrazy, sekwencje) i wymaga ogromnej liczby parametrów.

Rozwiązanie:Dla obrazów stosuj sieci konwolucyjne, dla sekwencji RNN lub Transformery; MLP zostawiaj danym tabelarycznym i jako komponent.
Wrażliwość na skalę cechNiska

Niestandaryzowane cechy wejściowe spowalniają lub destabilizują trening gradientowy.

Rozwiązanie:Normalizuj lub standaryzuj wejścia przed treningiem.

Ewolucja

Oryginalny paper · 1986 · Nature · David E. Rumelhart
Learning representations by back-propagating errors
David E. Rumelhart, Geoffrey E. Hinton, Ronald J. Williams
1958
Perceptron Rosenblatta

Frank Rosenblatt wprowadza perceptron — jednowarstwowy klasyfikator liniowy, protoplasta MLP.

1969
Krytyka Minsky’ego i Paperta

Książka „Perceptrons” pokazuje, że pojedynczy perceptron nie rozwiązuje problemu XOR — przyczynek do pierwszej zimy AI.

1986
Propagacja wsteczna dla sieci wielowarstwowych
Punkt przełomowy

Rumelhart, Hinton i Williams popularyzują propagację wsteczną, umożliwiając praktyczny trening MLP.

1989
Twierdzenie o uniwersalnej aproksymacji

Cybenko (1989), a następnie Hornik (1991), dowodzą, że MLP z jedną warstwą ukrytą może aproksymować dowolną funkcję ciągłą.

2011
Upowszechnienie ReLU

Funkcja aktywacji ReLU (Glorot i in., 2011) łagodzi problem zanikających gradientów i ułatwia trening głębokich sieci.

2021
MLP-Mixer

Architektura oparta wyłącznie na MLP (Tolstikhin i in.) osiąga konkurencyjne wyniki w widzeniu komputerowym, odnawiając zainteresowanie warstwami w pełni połączonymi.

Hiperparametry (konfigurowalne osie)

Głębokość (liczba warstw ukrytych)Wysoka

Liczba warstw ukrytych; większa głębokość zwiększa pojemność reprezentacyjną, ale utrudnia trening (zanikające gradienty).

1Płytki MLP — wystarczający jako uniwersalny aproksymator przy dużej szerokości.
2-3Typowy zakres dla danych tabelarycznych.
Szerokość (neuronów na warstwę)Wysoka

Liczba neuronów w warstwie ukrytej; wpływa na pojemność modelu i kwadratowo na liczbę parametrów.

Funkcja aktywacjiKrytyczna

Wybór nieliniowości (ReLU, GELU, tanh, sigmoid) wpływa na dynamikę treningu i przepływ gradientów.

Złożoność obliczeniowa

Złożoność czasowa: O(Σₗ nₗ₋₁·nₗ). Złożoność przestrzenna: O(Σₗ nₗ₋₁·nₗ).

Wąskie gardło obliczeniowe

Gęste mnożenia macierzowe (GEMM) między warstwami

Dominującym kosztem są gęste mnożenia macierzy wag; liczba parametrów i obliczeń rośnie kwadratowo z szerokością warstw.

Paradygmat wykonania

Tryb główny
Gęsty

Wszystkie neurony i wszystkie połączenia są aktywne dla każdego wejścia — brak warunkowego routingu czy rzadkiej aktywacji.

Wzorzec aktywacji
Wszystkie ścieżki aktywne
Mechanizm routingu

Równoległość

Poziom równoległości
Częściowo równoległy

Obliczenia wewnątrz warstwy (mnożenie macierzowe) i po przykładach w batchu są w pełni równoległe, ale warstwy muszą być liczone sekwencyjnie (wyjście jednej jest wejściem następnej).

Zakres
TreningInferencjaPomiędzy urządzeniami

Wymagania sprzętowe

Podstawowe

Gęste mnożenia macierzowe idealnie mapują się na rdzenie tensorowe GPU.

Dobry fit

Jednostki TPU są zoptymalizowane pod operacje macierzowe typowe dla warstw gęstych.

Możliwe

Mniejsze MLP działają sprawnie na CPU z instrukcjami wektorowymi AVX.