Autoencoder

Ένας autoencoder είναι ένας τύπος τεχνητού νευρωνικού δικτύου που χρησιμοποιείται για την εκμάθηση αποτελεσματικών κωδικοποιήσεων δεδομένων χωρίς ετικέτα (μη εποπτευόμενη μάθηση). Η κωδικοποίηση επικυρώνεται και βελτιώνεται επιχειρώντας να αναδημιουργηθεί η είσοδος από την κωδικοποίηση. Ο autoencoder μαθαίνει μια αναπαράσταση (κωδικοποίηση) για ένα σύνολο δεδομένων, συνήθως για να πετύχουμε μείωση διαστάσεων, εκπαιδεύοντας το δίκτυο να αγνοεί ασήμαντα δεδομένα («θόρυβο»). Υπάρχουν παραλλαγές για autoencoders, οι οποίες στόχο έχουν να αναγκάσουν προς μάθηση αναπαραστάσεις να προσλάβουν χρήσιμες ιδιότητες. Παραδείγματα είναι οι κανονικοποιημένοι autoencoders, οι οποίοι είναι αποτελεσματικοί στην εκμάθηση αναπαραστάσεων που αφορούν επόμενες εργασίες ταξινόμησης, και variational autoencoder, με εφαρμογές ως παραγωγικά μοντέλα . Οι autoencoders εφαρμόζονται σε πολλά προβλήματα, από την αναγνώριση προσώπου, ανίχνευση χαρακτηριστικών, ανίχνευση ανωμαλιών έως την απόκτηση της σημασίας των λέξεων. Οι autoencoders είναι επίσης μοντέλα παραγωγής: μπορούν να δημιουργήσουν τυχαία νέα δεδομένα που είναι παρόμοια με τα δεδομένα εισόδου (δεδομένα εκπαίδευσης).

 Ένας autoencoder έχει δύο κύρια μέρη: έναν κωδικοποιητή που αντιστοιχίζει την είσοδο σε μια κωδικοποιημένη μορφή και έναν αποκωδικοποιητή που αντιστοιχίζει την κωδικοποιημένη μορφή σε μια ανακατασκευή της εισόδου. Ο απλούστερος τρόπος για να εκτελέσουμε την τέλεια εργασία αντιγραφής θα ήταν να αντιγράψουμε το σήμα εισόδου. Αντίθετα, οι autoencoders συνήθως αναγκάζονται να αναδημιουργήσουν την είσοδο κατά προσέγγιση, διατηρώντας μόνο τις πιο σχετικές πτυχές των δεδομένων στο αντίγραφο. Η ιδέα των autoencoders είναι δημοφιλής εδώ και δεκαετίες. Οι πρώτες εφαρμογές ξεκίνησαν να κάνουν την εμφάνισή τους τη δεκαετία του 1980. Η πιο παραδοσιακή τους εφαρμογή ήταν η μείωση διαστάσεων ή επιλογή χαρακτηριστικών, αλλά η ιδέα έγινε ευρέως χρησιμοποιούμενη για την εκμάθηση μοντέλων παραγωγής δεδομένων. Μερικά από τα πιο ισχυρά AI συστήματα της δεκαετίας του 2010 περιλάμβαναν autoencoders εμφωλευμένα μέσα σε βαθιά νευρωνικά δίκτυα. Η απλούστερη μορφή ενός autoencoder είναι το πρόσθιας τροφοδότησης-μη αναδρομικό νευρωνικό δίκτυο, το οποίο είναι παρόμοιο με τα μονοστρωματικά perceptrons που συμμετέχουν σε πολυστρωματικά perceptrons (MLP) – χρησιμοποιώντας ένα επίπεδο εισόδου και ένα επίπεδο εξόδου που συνδέονται μεταξύ τους με ένα ή περισσότερα κρυφά επίπεδα. Το επίπεδο εξόδου έχει τον ίδιο αριθμό κόμβων (νευρώνων) με το επίπεδο εισόδου. Σκοπός του είναι να ανακατασκευάσει τις εισόδους του (ελαχιστοποιώντας τη διαφορά μεταξύ της εισόδου και της εξόδου) αντί να προβλέπει μια τιμή στόχο Y {\displaystyle Y} δεδοµένων εισόδου X {\displaystyle X} . Άρα, οι autoencoders μαθαίνουν χωρίς επίβλεψη (μη εποπτευόμενη μάθηση). Ένας autoencoder αποτελείται από δύο μέρη, τον κωδικοποιητή και τον αποκωδικοποιητή, τα οποία μπορούν να οριστούν ως συναρτήσεις ϕ {\displaystyle \phi } και ψ , {\displaystyle \psi ,} έτσι ώστε: ϕ : X → F {\displaystyle \phi :{\mathcal {X}}\rightarrow {\mathcal {F}}} ψ : F → X {\displaystyle \psi :{\mathcal {F}}\rightarrow {\mathcal {X}}} ϕ , ψ = a r g m i n ϕ , ψ ‖ X − ( ψ ∘ ϕ ) X ‖ 2 {\displaystyle \phi ,\psi ={\underset {\phi ,\psi }{\operatorname {arg\,min} }}\,\|{\mathcal {X}}-(\psi \circ \phi ){\mathcal {X}}\|^{2}} Στην απλούστερη περίπτωση που μπορούμε να έχουμε, δεδομένου ενός κρυφού επιπέδου, το στάδιο της κωδικοποίησης ενός autoencoder παίρνει την είσοδο x ∈ R d = X {\displaystyle \mathbf {x} \in \mathbb {R} ^{d}={\mathcal {X}}} και το απεικονίζει σε ένα h ∈ R p = F {\displaystyle \mathbf {h} \in \mathbb {R} ^{p}={\mathcal {F}}} : h = σ ( W x + b ) {\displaystyle \mathbf {h} =\sigma (\mathbf {Wx} +\mathbf {b} )} Αυτή η εικόνα h {\displaystyle \mathbf {h} } αναφέρεται συνήθως ως κωδικοποιημένη μορφή, λανθάνουσα μεταβλητή ή λανθάνουσα αναπαράσταση. Η σ {\displaystyle \sigma } είναι μια συνάρτηση ενεργοποίησης στοιχείων, όπως μια σιγμοειδής συνάρτηση ή μια rectified linear unit . Το W {\displaystyle \mathbf {W} } είναι ένας πίνακας βαρών και το b {\displaystyle \mathbf {b} } είναι ένα διάνυσμα μεροληψίας. Τα βάρη και οι μεροληψίες αρχικοποιούνται συνήθως τυχαία και στη συνέχεια ενημερώνονται επαναλαμβανόμενα κατά τη διάρκεια της εκπαίδευσης μέσω της οπισθοδιάδοσης . Μετά από αυτή τη διαδικασία, το στάδιο αποκωδικοποίησης του autoencoder, απεικονίζει το h {\displaystyle \mathbf {h} } στην ανακατασκευή x ′ {\displaystyle \mathbf {x'} } του ίδιου σχήματος με το x {\displaystyle \mathbf {x} } : x ′ = σ ′ ( W ′ h + b ′ ) {\displaystyle \mathbf {x'} =\sigma '(\mathbf {W'h} +\mathbf {b'} )} που τα σ ′ , W ′ , and b ′ {\displaystyle \mathbf {\sigma '} ,\mathbf {W'} ,{\text{ and }}\mathbf {b'} } για τον αποκωδικοποιητή μπορεί να μην σχετίζονται με τα αντίστοιχα σ , W , and b {\displaystyle \mathbf {\sigma } ,\mathbf {W} ,{\text{ and }}\mathbf {b} } για τον κωδικοποιητή. Οι autoencoders εκπαιδεύονται για να ελαχιστοποιούν τα σφάλματα ανακατασκευής (όπως τα τετραγωνικά σφάλματα ), που συχνά αναφέρονται ως " απώλειες " (συνάρτηση κόστους): L ( x , x ′ ) = ‖ x − x ′ ‖ 2 = ‖ x − σ ′ ( W ′ ( σ ( W x + b ) ) + b ′ ) ‖ 2 {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {x'} )=\|\mathbf {x} -\mathbf {x'} \|^{2}=\|\mathbf {x} -\sigma '(\mathbf {W'} (\sigma (\mathbf {Wx} +\mathbf {b} ))+\mathbf {b'} )\|^{2}} που το x {\displaystyle \mathbf {x} } συνήθως υπολογίζεται ως ο μέσος όρος του συνόλου εκπαίδευσης. Όπως αναφέρθηκε προηγουμένως, η εκπαίδευση του autoencoder υλοποιείται μέσω της αντίστροφης διάδοσης του σφάλματος, όπως και στα υπόλοιπα νευρωνικά δίκτυα ανατροφοδότησης. Θα πρέπει ο χώρος χαρακτηριστικών F {\displaystyle {\mathcal {F}}} να έχει μικρότερη διάσταση από τον χώρο εισόδου X {\displaystyle {\mathcal {X}}} και το διάνυσμα χαρακτηριστικών ϕ ( x ) {\displaystyle \phi (x)} μπορεί να θεωρηθεί ως συμπιεσμένη αναπαράσταση της εισόδου x {\displaystyle x} . Αυτή είναι η περίπτωση των ελλιπών autoencoders. Εάν τα κρυφά επίπεδα είναι μεγαλύτερα από (υπερπλήρη) ή ίσα με το επίπεδο εισόδου ή εάν δοθεί αρκετή χωρητικότητα στους κρυφούς κόμβους, ένας autoencoder μπορεί ενδεχομένως να μάθει τη ταυτοτική συνάρτηση και να γίνει άχρηστος. Ωστόσο, πειραματικά αποτελέσματα έδειξαν ότι οι υπερπλήρεις autoencoders ενδέχεται να εξακολουθούν να μαθαίνουν χρήσιμα χαρακτηριστικά . Υπό ιδανικές συνθήκες, η διάσταση της κωδικοποιημένης μορφής και η χωρητικότητα του μοντέλου θα μπορούσαν να ρυθμιστούν με βάση την πολυπλοκότητα της κατανομής δεδομένων που πρόκειται να μοντελοποιηθεί. Ένας τρόπος για να γίνει αυτό είναι να χρησιμοποιήσουμε παραλλαγές του μοντέλου που είναι γνωστές ως Regularized Autoencoders (Κανονικοποιημένοι Autoencoders). Υπάρχουν διάφορες τεχνικές για να εμποδίσουμε τους autoencoders από το να μάθουν τη ταυτοτική συνάρτηση και να βελτιώσουν την ικανότητά τους να εντοπίζουν σημαντικές πληροφορίες και να μαθαίνουν πλουσιότερες αναπαραστάσεις. Αραιός (sparse) autoencoder(SAE) Η εκμάθηση αναπαραστάσεων με τρόπο που ενθαρρύνει την αραιότητα, βελτιώνει την απόδοση στις εργασίες ταξινόμησης. Οι αραιοί autoencoders μπορεί να περιλαμβάνουν περισσότερα (και όχι λιγότερα) κρυφούς κόμβους παρά εισόδους, αλλά μόνο ένας μικρός αριθμός από τους κρυφούς κόμβους επιτρέπεται να είναι ταυτόχρονα ενεργοί (άρα, αραιοί). Αυτός ο περιορισμός αναγκάζει το μοντέλο να ανταποκριθεί στα μοναδικά στατιστικά χαρακτηριστικά των δεδομένων εκπαίδευσης. Συγκεκριμένα, ένας αραιός autoencoder είναι ένας autoencoder του οποίου το κριτήριο εκπαίδευσης περιλαμβάνει ποινή αραιότητας Ω ( h ) {\displaystyle \Omega ({\boldsymbol {h}})} στο επίπεδο κωδικοποίησης h {\displaystyle {\boldsymbol {h}}} . L ( x , x ′ ) + Ω ( h ) {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {x'} )+\Omega ({\boldsymbol {h}})} Υπενθυμίζοντας ότι h = f ( W x + b ) {\displaystyle {\boldsymbol {h}}=f({\boldsymbol {W}}{\boldsymbol {x}}+{\boldsymbol {b}})} , η ποινή ενθαρρύνει το μοντέλο να ενεργοποιήσει (δηλαδή τιμή εξόδου κοντά στο 1) συγκεκριμένες περιοχές του δικτύου με βάση τα δεδομένα εισόδου, ενώ απενεργοποιεί όλους τους άλλους νευρώνες (δηλαδή να έχει τιμή εξόδου κοντά στο 0). Αυτή η αραιότητα μπορεί να επιτευχθεί διατυπώνοντας τους όρους ποινής με διαφορετικούς τρόπους. Ένας τρόπος είναι η εκμετάλλευση της απόκλισης Kullback-Leibler (KL) . Έστω ρ j ^ = 1 m ∑ i = 1 m [ h j ( x i ) ] {\displaystyle {\hat {\rho _{j}}}={\frac {1}{m}}\sum _{i=1}^{m}[h_{j}(x_{i})]} είναι η μέση ενεργοποίηση του κρυφού κόμβου j {\displaystyle j} (κατά μέσο όρο πάνω από το πλήθος των παραδειγμάτων εκπαίδευσης). Η σημειογραφία h j ( x i ) {\displaystyle h_{j}(x_{i})} προσδιορίζει την τιμή εισόδου που ενεργοποίησε την ενεργοποίηση. Για να ενθαρρύνουμε τους περισσότερους νευρώνες να είναι ανενεργοί, το ρ j ^ {\displaystyle {\hat {\rho _{j}}}} πρέπει να είναι κοντά στο 0. Επομένως, αυτή η μέθοδος επιβάλλει τον περιορισμό ρ j ^ = ρ {\displaystyle {\hat {\rho _{j}}}=\rho } που ρ {\displaystyle \rho } είναι η παράμετρος αραιότητας, που είναι μια τιμή κοντά στο μηδέν. Ο όρος της ποινής Ω ( h ) {\displaystyle \Omega ({\boldsymbol {h}})} παίρνει μια μορφή που τιμωρεί το ρ j ^ {\displaystyle {\hat {\rho _{j}}}} για σημαντική απόκλιση από ρ {\displaystyle \rho } , αξιοποιώντας την απόκλιση KL: ∑ j = 1 s K L ( ρ | | ρ j ^ ) = ∑ j = 1 s [ ρ log ⁡ ρ ρ j ^ + ( 1 − ρ ) log ⁡ 1 − ρ 1 − ρ j ^ ] {\displaystyle \sum _{j=1}^{s}KL(\rho ||{\hat {\rho _{j}}})=\sum _{j=1}^{s}\left[\rho \log {\frac {\rho }{\hat {\rho _{j}}}}+(1-\rho )\log {\frac {1-\rho }{1-{\hat {\rho _{j}}}}}\right]} όπου το j {\displaystyle j} αθροίζεται πάνω από τους s {\displaystyle s} κρυφούς κόμβους στο κρυφό στρώμα και K L ( ρ | | ρ j ^ ) {\displaystyle KL(\rho ||{\hat {\rho _{j}}})} είναι η KL-απόκλιση μεταξύ μιας τυχαίας μεταβλητής Bernoulli με μέσο όρο ρ {\displaystyle \rho } και μια τυχαία μεταβλητή Bernoulli με μέσο όρο ρ j ^ {\displaystyle {\hat {\rho _{j}}}} . Ένας άλλος τρόπος για να επιτευχθεί η αραιότητα είναι η εφαρμογή όρων L1 ή L2 κανονικοποίησης στην ενεργοποίηση, κλιμακούμενων κατά μια συγκεκριμένη παράμετρο λ {\displaystyle \lambda } . Για παράδειγμα, στην περίπτωση του L1 η συνάρτηση απώλειας γίνεται L ( x , x ′ ) + λ ∑ j | h i | {\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {x'} )+\lambda \sum _{j}|h_{i}|} Μια άλλη προτεινόμενη στρατηγική για την επιβολή αραιότητας είναι ο μηδενισμός όλων εκτός από τις ισχυρότερες ενεργοποιήσεις κρυφών μονάδων ( k-sparse autoencoder ). Ο k-sparse autoencoder βασίζεται σε έναν γραμμικό autoencoder (δηλαδή με συνάρτηση γραμμικής ενεργοποίησης) και σε δεμένα βάρη. Ο προσδιορισμός των ισχυρότερων ενεργοποιήσεων μπορεί να επιτευχθεί ταξινομώντας τις δραστηριότητες και διατηρώντας μόνο τις πρώτες τιμές k ή χρησιμοποιώντας κρυφές μονάδες ReLU με κατώφλια που προσαρμόζονται προσαρμοστικά μέχρι να εντοπιστούν οι k μεγαλύτερες δραστηριότητες. Αυτή η επιλογή λειτουργεί όπως οι όροι κανονικοποίησης που αναφέρθηκαν προηγουμένως, καθώς εμποδίζει το μοντέλο να ανακατασκευάσει την είσοδο χρησιμοποιώντας πάρα πολλούς νευρώνες. Autoencoder αποθορυβοποίησης (DAE) Οι autoencoders αποθορυβοποίησης (DAE) προσπαθούν να επιτύχουν μια καλή αναπαράσταση αλλάζοντας το κριτήριο ανακατασκευής . Πράγματι, οι DAE λαμβάνουν μια μερικώς κατεστραμμένη είσοδο και εκπαιδεύονται στο να ανακτούν την αρχική μη παραμορφωμένη είσοδο . Στην πράξη, ο στόχος της απαλλαγής από θόρυβο των autoencoders είναι ο καθαρισμός της κατεστραμμένης εισόδου ή η αποθορυβοποίηση. Δύο υποθέσεις είναι εγγενείς σε αυτή την προσέγγιση: Οι αναπαραστάσεις υψηλότερου επιπέδου είναι σχετικά σταθερές και ανθεκτικές στη φθορά των εισροών. Για να εκτελέσει καλά την αποθορυβοποίηση, το μοντέλο πρέπει να εξάγει χαρακτηριστικά που αποτυπώνουν χρήσιμη δομή στην κατανομή εισόδου. Με άλλα λόγια, η αποθορυβοποίηση υποστηρίζεται ως κριτήριο εκπαίδευσης για την εκμάθηση εξαγωγής χρήσιμων χαρακτηριστικών που θα αποτελέσουν καλύτερες αναπαραστάσεις υψηλότερου επιπέδου της εισόδου. Η εκπαιδευτική διαδικασία ενός DAE λειτουργεί ως εξής: Η αρχική εισαγωγή x {\displaystyle x} αλλοιώνεται σε x ~ {\displaystyle {\boldsymbol {\tilde {x}}}} μέσω στοχαστικής απεικόνισης x ~ ∼ q D ( x ~ | x ) {\displaystyle {\boldsymbol {\tilde {x}}}\thicksim q_{D}({\boldsymbol {\tilde {x}}}|{\boldsymbol {x}})} . Η αλλοιωμένη είσοδος x ~ {\displaystyle {\boldsymbol {\tilde {x}}}} στη συνέχεια αντιστοιχίζεται σε μια κρυφή αναπαράσταση με την ίδια διαδικασία του τυπικού autoencoder, h = f θ ( x ~ ) = s ( W x ~ + b ) {\displaystyle {\boldsymbol {h}}=f_{\theta }({\boldsymbol {\tilde {x}}})=s({\boldsymbol {W}}{\boldsymbol {\tilde {x}}}+{\boldsymbol {b}})} . Από την κρυφή αναπαράσταση το μοντέλο ανακατασκευάζει z = g θ ′ ( h ) {\displaystyle {\boldsymbol {z}}=g_{\theta '}({\boldsymbol {h}})} . Οι παράμετροι του μοντέλου θ {\displaystyle \theta } και θ ′ {\displaystyle \theta '} εκπαιδεύονται να ελαχιστοποιούν το μέσο σφάλμα ανακατασκευής στα δεδομένα εκπαίδευσης, ελαχιστοποιώντας τη διαφορά μεταξύ του z {\displaystyle {\boldsymbol {z}}} από την αρχική, μη αλλοιωμένη είσοδο x {\displaystyle {\boldsymbol {x}}} . Σημειώστε ότι κάθε φορά που ένα τυχαίο παράδειγμα x {\displaystyle {\boldsymbol {x}}} παρουσιάζεται στο μοντέλο, μια νέα παραποιημένη έκδοσή του δημιουργείται στοχαστικά με βάση το q D ( x ~ | x ) {\displaystyle q_{D}({\boldsymbol {\tilde {x}}}|{\boldsymbol {x}})} . Η προαναφερθείσα διαδικασία εκπαίδευσης θα μπορούσε να εφαρμοστεί με κάθε είδους διαδικασία φθοράς. Μερικά παραδείγματα μπορεί να είναι ο προσθετικός Gaussian λευκός θόρυβος, ο θόρυβος κάλυψης (ένα κλάσμα της εισόδου που επιλέγεται τυχαία για κάθε παράδειγμα αναγκάζεται να γίνει 0) ή ο θόρυβος αλατοπίπερου (ένα κλάσμα της εισόδου που επιλέγεται τυχαία για κάθε παράδειγμα έχει οριστεί σε ελάχιστη ή μέγιστη τιμή του με ομοιόμορφη πιθανότητα). Η καταστροφή της εισόδου πραγματοποιείται μόνο κατά τη διάρκεια της εκπαίδευσης. Μετά την εκπαίδευση, δεν προστίθεται φθορά. Οι autoencoders εκπαιδεύονται συχνά με έναν κωδικοποιητή μονής στρώσης (ένα κρυφό επίπεδο κωδικοποίησης) και έναν αποκωδικοποιητή μονής στρώσης (ένα κρυφό επίπεδο αποκωδικοποίησης), αλλά η χρήση κωδικοποιητών και αποκωδικοποιητών πολλών επιπέδων προσφέρει πολλά πλεονεκτήματα. Το βάθος μπορεί να μειώσει εκθετικά το υπολογιστικό κόστος της αναπαράστασης ορισμένων συναρτήσεων. Το βάθος μπορεί να μειώσει εκθετικά τον όγκο των δεδομένων εκπαίδευσης που απαιτούνται για την εκμάθηση ορισμένων λειτουργιών. Πειραματικά, οι βαθύς autoencoders αποδίδουν καλύτερα στη συμπίεση σε σύγκριση με τους ρηχούς ή γραμμικούς autoencoders. O Geoffrey Hinton ανέπτυξε την τεχνική του δικτύου βαθιάς πεποίθησης για την εκπαίδευση πολυεπίπεδων βαθιών autoencoders. Η μέθοδός του, περιλαμβάνει τη μεταχείριση κάθε γειτονικού συνόλου δύο στρωμάτων ως περιορισμένης μηχανής Boltzmann, έτσι ώστε η προεκπαίδευση να προσεγγίζει μια καλή λύση, και στη συνέχεια να χρησιμοποιεί την οπίσθια διάδοση (backpropagation) για να τελειοποιήσει τα αποτελέσματα. Οι δύο κύριες εφαρμογές των autoencoders είναι η μείωση διαστάσεων και η ανάκτηση πληροφοριών , αλλά σύγχρονες παραλλαγές έχουν εφαρμοστεί σε άλλες εργασίες. Η μείωση διαστάσεων ήταν μια από τις πρώτες εφαρμογές της βαθιάς μάθησης . Για τη μελέτη του ο Hinton το 2006, προεκπαίδευσε έναν autoencoder πολλαπλών επιπέδων με μια στοίβα από RBMs και στη συνέχεια χρησιμοποίησε τα βάρη τους για να προετοιμάσει έναν βαθύ autoencoder με σταδιακά μικρότερα κρυφά στρώματα μέχρι να φτάσει σε ένα σημείο συμφόρησης 30 νευρώνων. Οι προκύπτουσες 30 διαστάσεις της κωδικοποιημένης μορφής απέδωσαν μικρότερο σφάλμα ανακατασκευής σε σύγκριση με τα πρώτα 30 συστατικά που προκύπτουν από μια ανάλυση κύριων συνιστωσών (PCA) και έμαθαν μια αναπαράσταση που ήταν ποιοτικά πιο εύκολη στην ερμηνεία, διαχωρίζοντας σαφώς τα συμπλέγματα δεδομένων. Η αναπαράσταση διαστάσεων μπορεί να βελτιώσει την απόδοση σε εργασίες όπως η ταξινόμηση. Πράγματι, το χαρακτηριστικό της μείωσης των διαστάσεων είναι η τοποθέτηση σημασιολογικά σχετικών παραδειγμάτων το ένα κοντά στο άλλο. Ανάλυση κύριων συνιστωσών Εάν χρησιμοποιούνται γραμμικές συναρτήσεις ενεργοποίησης ή μόνο ένα κρυφό στρώμα σιγμοειδούς συνάρτησης, τότε η βέλτιστη λύση σε έναν autoencoder σχετίζεται στενά με την ανάλυση κύριων συνιστωσών (PCA). Τα βάρη ενός autoencoder με ένα μόνο κρυφό στρώμα μεγέθους p {\displaystyle p} (που p {\displaystyle p} είναι μικρότερο από το μέγεθος της εισόδου) εκτείνεται στον ίδιο διανυσματικό υποχώρο με αυτόν που εκτείνεται από τις πρώτες p {\displaystyle p} κύριες συνιστώσες, και η έξοδος του autoencoder είναι μια ορθογώνια προβολή σε αυτόν τον υποχώρο. Τα βάρη του autoencoder δεν είναι ίσα με των κύριων συνιστωσών και γενικά δεν είναι ορθογώνια, ωστόσο οι κύριες σινιστώσες μπορούν να ανακτηθούν από αυτά χρησιμοποιώντας την αποσύνθεση μοναδικής τιμής . Ωστόσο, η δυναμική των autoencoders έγκειται στη μη γραμμικότητά τους, επιτρέποντας στο μοντέλο να μάθει πιο ισχυρές γενικεύσεις σε σύγκριση με την PCA και να ανακατασκευάσει την είσοδο με σημαντικά μικρότερη απώλεια πληροφοριών. Η ανάκτηση πληροφοριών επωφελείται ιδιαίτερα από τη μείωση των διαστάσεων, καθώς η αναζήτηση μπορεί να γίνει πιο αποτελεσματική σε ορισμένα είδη χώρων χαμηλών διαστάσεων. Οι autoencoders εφαρμόστηκαν πράγματι στο σημασιολογικό κατακερματισμό, που προτάθηκε από τους Salakhutdinov και Hinton το 2007. Εκπαιδεύοντας τον αλγόριθμο για την παραγωγή μιας δυαδικής κωδικοποιημένης μορφής χαμηλής διάστασης, όλες οι εγγραφές της βάσης δεδομένων θα μπορούσαν να αποθηκευτούν σε έναν πίνακα κατακερματισμού αντιστοιχίζοντας διανύσματα δυαδικού κώδικα σε εγγραφές. Αυτός ο πίνακας θα υποστηρίξει στη συνέχεια την ανάκτηση πληροφοριών επιστρέφοντας όλες τις εγγραφές με τον ίδιο δυαδικό κώδικα με το ερώτημα ή ελαφρώς λιγότερο παρόμοιες εγγραφές αναστρέφοντας μερικά bit από την κωδικοποίηση του ερωτήματος. Μια άλλη εφαρμογή για autoencoders είναι η ανίχνευση ανωμαλιών . Μαθαίνοντας να αναπαράγει τα πιο σημαντικά χαρακτηριστικά στα δεδομένα εκπαίδευσης κάτω από ορισμένους από τους περιορισμούς που περιγράφηκαν προηγουμένως, το μοντέλο ενθαρρύνεται να μάθει να αναπαράγει με ακρίβεια τα χαρακτηριστικά που παρατηρούνται πιο συχνά. Όταν αντιμετωπίζει ανωμαλίες, το μοντέλο θα πρέπει να επιδεινώσει την απόδοση ανακατασκευής του. Στις περισσότερες περιπτώσεις, μόνο δεδομένα με κανονικές αναπαραστάσεις χρησιμοποιούνται για την εκπαίδευση του autoencoder. Σε άλλες, η συχνότητα των ανωμαλιών είναι μικρή σε σύγκριση με το σύνολο παρατήρησης, έτσι ώστε η συνεισφορά του στην εκμάθηση αναπαράστασης θα μπορούσε να αγνοηθεί. Μετά την εκπαίδευση, ο autoencoder θα ανακατασκευάσει με ακρίβεια τα "κανονικά" δεδομένα, ενώ δεν θα το κάνει με δεδομένα τα οποία περιέχουν στοιχεία ανωμαλίας. Το σφάλμα ανακατασκευής (το σφάλμα μεταξύ των αρχικών δεδομένων και της ανακατασκευής χαμηλών διαστάσεων) χρησιμοποιείται ως βαθμολογία ανωμαλίας για τον εντοπισμό ανωμαλιών. Ωστόσο, η πρόσφατη βιβλιογραφία έχει δείξει ότι ορισμένα μοντέλα autoencoding, μπορούν, αντιδιαισθητικά, να είναι πολύ καλά στην ανακατασκευή ανώμαλων παραδειγμάτων και κατά συνέπεια να μην μπορούν να εκτελέσουν αξιόπιστη ανίχνευση ανωμαλιών. Το 2019 μόρια που δημιουργήθηκαν με μεταβλητούς autoencoders επικυρώθηκαν πειραματικά σε ποντίκια. Πρόσφατα, ένας στοιβαγμένου πλαίσιο autoencoder παρήγαγε πολλά υποσχόμενα αποτελέσματα στην πρόβλεψη της δημοτικότητας των αναρτήσεων στα μέσα κοινωνικής δικτύωσης, που είναι χρήσιμο για στρατηγικές διαδικτυακής διαφήμισης. Autoencoders έχουν εφαρμοστεί στη μηχανική μετάφραση, η οποία συνήθως αναφέρεται ως νευρωνική μηχανική μετάφραση (NMT). Σε αντίθεση με τους παραδοσιακούς autoencoders, η έξοδος δεν ταιριάζει με την είσοδο - είναι σε άλλη γλώσσα. Στο μοντέλο NMT, τα κείμενα αντιμετωπίζονται ως ακολουθίες που πρέπει να κωδικοποιηθούν στη διαδικασία εκμάθησης, ενώ στην πλευρά του αποκωδικοποιητή δημιουργούνται ακολουθίες στη γλώσσα(ες) στόχο. Οι autoencoders ειδικά για τη γλώσσα, ενσωματώνουν περαιτέρω γλωσσικά χαρακτηριστικά στη διαδικασία εκμάθησης, όπως τα κινεζικά χαρακτηριστικά αποσύνθεσης.