Podręcznik
5. Inne struktury sieci
5.3. Autoenkodery
Kolejną interesującą architekturą są autoenkodery. Przykład autoenkodera został przedstawiony na rysunku 28. Na wejściu mamy dane o n cechach. Pierwsza część sieci - enkoder - przekształca te dane w reprezentację o mniejszym wymiarze k. Druga część - dekoder - próbuje odtworzyć z powrotem dane wejściowe.
Jako funkcji kosztu możemy użyć błędu średniokwadratowego:

gdzie oznaczają wartości cech danych zrekonstruowanych (wyjście sieci). W tym podejściu wykorzystujemy algorytmy uczenia nadzorowanego, ale nie potrzebujemy żadnych etykiet. Prawidłowym wzorem są dane wejściowe (na wyjściu chcemy odtworzyć możliwie dokładnie wejście).
W warstwie sieci po enkoderze uzyskujemy reprezentację danych wejściowych o mniejszym wymiarze , reprezentacja ta powinna odwzorowywać kluczowe cechy danych wejściowych. Nauczonego autoenkodera można używać jako całej sieci (np. odszumianie) lub jako samego enkodera w celu uzyskania reprezentacji o zmniejszonym wymiarze.
Do zastosowań autoenkoderów należą:
redukcja wymiarowości,
wizualizacja,
wyszukiwanie podobieństw (np. między dokumentami tekstowymi),
odszumianie,
kompresja,
kolorowanie obrazów (autoenkodery konwolucyjne),
detekcja anomalii.