Autoenkodery to rodzaj sztucznych sieci neuronowych, które mogą nauczyć się odtwarzać dany zestaw danych, wykorzystując jedynie same dane jako dane wejściowe. Autoenkodery są często wykorzystywane do zmniejszania wymiarowości danych, uczenia się złożonych wzorców w danych i uczenia się reprezentacji danych w zadaniach uczenia się bez nadzoru.
Autoenkoder składa się z kodera, który przekształca dane wejściowe w reprezentację warstwy ukrytej, oraz dekodera, który rekonstruuje dane wejściowe z powrotem z tej reprezentacji warstwy ukrytej. Koder i dekoder mogą być sieciami typu feed-forward, sieciami rekurencyjnymi lub kombinacją tych dwóch. Dane wejściowe są kodowane do zwartej reprezentacji zwanej przestrzenią ukrytą, która może być następnie wykorzystywana do różnych zadań, takich jak klasyfikacja, regresja, grupowanie, odszumianie i inne.
Autoenkodery mogą być trenowane przy użyciu różnych algorytmów, z których najpopularniejszym jest propagacja wsteczna. Autoenkodery mogą być również trenowane przy użyciu wariantów uczenia się ze wzmocnieniem, takich jak uczenie się ze wzmocnieniem oparte na pochodzeniu.
Oprócz zmniejszania wymiarowości danych, autoenkodery są również wykorzystywane do zapewnienia wglądu w strukturę danych. Na przykład, mogą być wykorzystywane do odkrywania relacji między punktami danych i uczenia się cech, które są ważne dla dalszych zadań.
Autoenkodery są również wykorzystywane w innych obszarach, takich jak budowanie modeli generatywnych i wykrywanie wartości odstających. Niedawno autoenkodery zostały wykorzystane w aplikacjach głębokiego uczenia, takich jak segmentacja i klasyfikacja obrazów.
Autoenkodery są ważnym narzędziem w rozwoju sztucznej inteligencji i systemów uczenia maszynowego. Są one szeroko wykorzystywane w badaniach do różnych zastosowań i nadal są popularną metodą uczenia się reprezentacji danych.