Movatterモバイル変換


[0]ホーム

URL:


Μετάβαση στο περιεχόμενο
ΒικιπαίδειαΗ Ελεύθερη Εγκυκλοπαίδεια
Αναζήτηση

Autoencoder

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια

Έναςautoencoder είναι ένας τύποςτεχνητού νευρωνικού δικτύου που χρησιμοποιείται για την εκμάθηση αποτελεσματικών κωδικοποιήσεων δεδομένων χωρίς ετικέτα (μη εποπτευόμενη μάθηση).[1] Η κωδικοποίηση επικυρώνεται και βελτιώνεται επιχειρώντας να αναδημιουργηθεί η είσοδος από την κωδικοποίηση. Ο autoencoder μαθαίνει μια αναπαράσταση (κωδικοποίηση) για ένα σύνολο δεδομένων, συνήθως για να πετύχουμε μείωση διαστάσεων, εκπαιδεύοντας το δίκτυο να αγνοεί ασήμαντα δεδομένα («θόρυβο»).

Υπάρχουν παραλλαγές για autoencoders, οι οποίες στόχο έχουν να αναγκάσουν προς μάθηση αναπαραστάσεις να προσλάβουν χρήσιμες ιδιότητες.[2] Παραδείγματα είναι οι κανονικοποιημένοι autoencoders, οι οποίοι είναι αποτελεσματικοί στην εκμάθηση αναπαραστάσεων που αφορούν επόμενες εργασίεςταξινόμησης,[3] καιvariational autoencoder, με εφαρμογές ως παραγωγικά μοντέλα .[4] Οι autoencoders εφαρμόζονται σε πολλά προβλήματα, απότην αναγνώριση προσώπου,[5] ανίχνευση χαρακτηριστικών,[6] ανίχνευση ανωμαλιών έως την απόκτηση της σημασίας των λέξεων.[7][8] Οι autoencoders είναι επίσης μοντέλα παραγωγής: μπορούν να δημιουργήσουν τυχαία νέα δεδομένα που είναι παρόμοια με τα δεδομένα εισόδου (δεδομένα εκπαίδευσης).[6]

Βασική αρχιτεκτονική

[Επεξεργασία |επεξεργασία κώδικα]

Ένας autoencoder έχει δύο κύρια μέρη: έναν κωδικοποιητή που αντιστοιχίζει την είσοδο σε μια κωδικοποιημένη μορφή και έναν αποκωδικοποιητή που αντιστοιχίζει την κωδικοποιημένη μορφή σε μια ανακατασκευή της εισόδου.

Ο απλούστερος τρόπος για να εκτελέσουμε την τέλεια εργασία αντιγραφής θα ήταν να αντιγράψουμε το σήμα εισόδου. Αντίθετα, οι autoencoders συνήθως αναγκάζονται να αναδημιουργήσουν την είσοδο κατά προσέγγιση, διατηρώντας μόνο τις πιο σχετικές πτυχές των δεδομένων στο αντίγραφο.

Η ιδέα των autoencoders είναι δημοφιλής εδώ και δεκαετίες. Οι πρώτες εφαρμογές ξεκίνησαν να κάνουν την εμφάνισή τους τη δεκαετία του 1980.[2][9][10] Η πιο παραδοσιακή τους εφαρμογή ήταν η μείωση διαστάσεων ή επιλογή χαρακτηριστικών, αλλά η ιδέα έγινε ευρέως χρησιμοποιούμενη για την εκμάθηση μοντέλων παραγωγής δεδομένων.[11] Μερικά από τα πιο ισχυράAI συστήματα της δεκαετίας του 2010 περιλάμβαναν autoencoders εμφωλευμένα μέσα σε βαθιά νευρωνικά δίκτυα.[12]

Σχήμα ενός βασικού Autoencoder

Η απλούστερη μορφή ενός autoencoder είναι το πρόσθιας τροφοδότησης-μηαναδρομικό νευρωνικό δίκτυο, το οποίο είναι παρόμοιο με τα μονοστρωματικάperceptrons που συμμετέχουν σεπολυστρωματικά perceptrons (MLP) – χρησιμοποιώντας ένα επίπεδο εισόδου και ένα επίπεδο εξόδου που συνδέονται μεταξύ τους με ένα ή περισσότερα κρυφά επίπεδα. Το επίπεδο εξόδου έχει τον ίδιο αριθμό κόμβων (νευρώνων) με το επίπεδο εισόδου. Σκοπός του είναι να ανακατασκευάσει τις εισόδους του (ελαχιστοποιώντας τη διαφορά μεταξύ της εισόδου και της εξόδου) αντί να προβλέπει μια τιμή στόχοY{\displaystyle Y} δεδοµένων εισόδουX{\displaystyle X}. Άρα, οι autoencoders μαθαίνουν χωρίς επίβλεψη (μη εποπτευόμενη μάθηση).

Ένας autoencoder αποτελείται από δύο μέρη, τον κωδικοποιητή και τον αποκωδικοποιητή, τα οποία μπορούν να οριστούν ως συναρτήσειςϕ{\displaystyle \phi } καιψ,{\displaystyle \psi ,} έτσι ώστε:

ϕ:XF{\displaystyle \phi :{\mathcal {X}}\rightarrow {\mathcal {F}}}
ψ:FX{\displaystyle \psi :{\mathcal {F}}\rightarrow {\mathcal {X}}}
ϕ,ψ=argminϕ,ψX(ψϕ)X2{\displaystyle \phi ,\psi ={\underset {\phi ,\psi }{\operatorname {arg\,min} }}\,\|{\mathcal {X}}-(\psi \circ \phi ){\mathcal {X}}\|^{2}}

Στην απλούστερη περίπτωση που μπορούμε να έχουμε, δεδομένου ενός κρυφού επιπέδου, το στάδιο της κωδικοποίησης ενός autoencoder παίρνει την είσοδοxRd=X{\displaystyle \mathbf {x} \in \mathbb {R} ^{d}={\mathcal {X}}} και το απεικονίζει σε έναhRp=F{\displaystyle \mathbf {h} \in \mathbb {R} ^{p}={\mathcal {F}}} :

h=σ(Wx+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=σ(Wh+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)=xx2=xσ(W(σ(Wx+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 ενδέχεται να εξακολουθούν να μαθαίνουν χρήσιμα χαρακτηριστικά .[13] Υπό ιδανικές συνθήκες, η διάσταση της κωδικοποιημένης μορφής και η χωρητικότητα του μοντέλου θα μπορούσαν να ρυθμιστούν με βάση την πολυπλοκότητα της κατανομής δεδομένων που πρόκειται να μοντελοποιηθεί. Ένας τρόπος για να γίνει αυτό είναι να χρησιμοποιήσουμε παραλλαγές του μοντέλου που είναι γνωστές ως Regularized Autoencoders (Κανονικοποιημένοι Autoencoders).[2]

Παραλλαγές

[Επεξεργασία |επεξεργασία κώδικα]

Κανονικοποιημένοι Autoencoders

[Επεξεργασία |επεξεργασία κώδικα]

Υπάρχουν διάφορες τεχνικές για να εμποδίσουμε τους autoencoders από το να μάθουν τη ταυτοτική συνάρτηση και να βελτιώσουν την ικανότητά τους να εντοπίζουν σημαντικές πληροφορίες και να μαθαίνουν πλουσιότερες αναπαραστάσεις.

Αραιός (sparse) autoencoder(SAE)

[Επεξεργασία |επεξεργασία κώδικα]
Απλό σχήμα ενός μονοστρωματικού αραιού autoencoder. Οι κρυφοί κόμβοι σε έντονο κίτρινο ενεργοποιούνται, ενώ οι ανοιχτοκίτρινοι είναι ανενεργοί. Η ενεργοποίηση εξαρτάται από την είσοδο.

Η εκμάθηση αναπαραστάσεων με τρόπο που ενθαρρύνει την αραιότητα, βελτιώνει την απόδοση στις εργασίες ταξινόμησης.[14] Οι αραιοί autoencoders μπορεί να περιλαμβάνουν περισσότερα (και όχι λιγότερα) κρυφούς κόμβους παρά εισόδους, αλλά μόνο ένας μικρός αριθμός από τους κρυφούς κόμβους επιτρέπεται να είναι ταυτόχρονα ενεργοί (άρα, αραιοί).[12] Αυτός ο περιορισμός αναγκάζει το μοντέλο να ανταποκριθεί στα μοναδικά στατιστικά χαρακτηριστικά των δεδομένων εκπαίδευσης.

Συγκεκριμένα, ένας αραιός 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(Wx+b){\displaystyle {\boldsymbol {h}}=f({\boldsymbol {W}}{\boldsymbol {x}}+{\boldsymbol {b}})}, η ποινή ενθαρρύνει το μοντέλο να ενεργοποιήσει (δηλαδή τιμή εξόδου κοντά στο 1) συγκεκριμένες περιοχές του δικτύου με βάση τα δεδομένα εισόδου, ενώ απενεργοποιεί όλους τους άλλους νευρώνες (δηλαδή να έχει τιμή εξόδου κοντά στο 0).[15]

Αυτή η αραιότητα μπορεί να επιτευχθεί διατυπώνοντας τους όρους ποινής με διαφορετικούς τρόπους.

  • Ένας τρόπος είναι η εκμετάλλευση της απόκλισης Kullback-Leibler (KL) .[14][15][16][17] Έστω
ρj^=1mi=1m[hj(xi)]{\displaystyle {\hat {\rho _{j}}}={\frac {1}{m}}\sum _{i=1}^{m}[h_{j}(x_{i})]}
είναι η μέση ενεργοποίηση του κρυφού κόμβουj{\displaystyle j} (κατά μέσο όρο πάνω από το πλήθος των παραδειγμάτων εκπαίδευσης). Η σημειογραφίαhj(xi){\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=1sKL(ρ||ρj^)=j=1s[ρlogρρj^+(1ρ)log1ρ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} κρυφούς κόμβους στο κρυφό στρώμα καιKL(ρ||ρj^){\displaystyle KL(\rho ||{\hat {\rho _{j}}})} είναι η KL-απόκλιση μεταξύ μιαςτυχαίας μεταβλητής Bernoulli με μέσο όρορ{\displaystyle \rho } και μια τυχαία μεταβλητή Bernoulli με μέσο όρορj^{\displaystyle {\hat {\rho _{j}}}} .[15]
  • Ένας άλλος τρόπος για να επιτευχθεί η αραιότητα είναι η εφαρμογή όρων L1 ή L2 κανονικοποίησης στην ενεργοποίηση, κλιμακούμενων κατά μια συγκεκριμένη παράμετρολ{\displaystyle \lambda } .[18] Για παράδειγμα, στην περίπτωση του L1 η συνάρτηση απώλειας γίνεται
L(x,x)+λj|hi|{\displaystyle {\mathcal {L}}(\mathbf {x} ,\mathbf {x'} )+\lambda \sum _{j}|h_{i}|}
  • Μια άλλη προτεινόμενη στρατηγική για την επιβολή αραιότητας είναι ο μηδενισμός όλων εκτός από τις ισχυρότερες ενεργοποιήσεις κρυφών μονάδων (k-sparse autoencoder ).[19] Ο k-sparse autoencoder βασίζεται σε έναν γραμμικό autoencoder (δηλαδή με συνάρτηση γραμμικής ενεργοποίησης) και σε δεμένα βάρη. Ο προσδιορισμός των ισχυρότερων ενεργοποιήσεων μπορεί να επιτευχθεί ταξινομώντας τις δραστηριότητες και διατηρώντας μόνο τις πρώτες τιμέςk ή χρησιμοποιώντας κρυφές μονάδες ReLU με κατώφλια που προσαρμόζονται προσαρμοστικά μέχρι να εντοπιστούν οι k μεγαλύτερες δραστηριότητες. Αυτή η επιλογή λειτουργεί όπως οι όροι κανονικοποίησης που αναφέρθηκαν προηγουμένως, καθώς εμποδίζει το μοντέλο να ανακατασκευάσει την είσοδο χρησιμοποιώντας πάρα πολλούς νευρώνες.[19]

Autoencoder αποθορυβοποίησης (DAE)

[Επεξεργασία |επεξεργασία κώδικα]

Οι autoencoders αποθορυβοποίησης (DAE) προσπαθούν να επιτύχουν μιακαλή αναπαράσταση αλλάζοντας τοκριτήριο ανακατασκευής .[2]

Πράγματι, οι DAE λαμβάνουν μια μερικώς κατεστραμμένη είσοδο και εκπαιδεύονται στο να ανακτούν την αρχικήμη παραμορφωμένη είσοδο . Στην πράξη, ο στόχος της απαλλαγής από θόρυβο των autoencoders είναι ο καθαρισμός της κατεστραμμένης εισόδου ή ηαποθορυβοποίηση. Δύο υποθέσεις είναι εγγενείς σε αυτή την προσέγγιση:

  • Οι αναπαραστάσεις υψηλότερου επιπέδου είναι σχετικά σταθερές και ανθεκτικές στη φθορά των εισροών.
  • Για να εκτελέσει καλά την αποθορυβοποίηση, το μοντέλο πρέπει ναεξάγει χαρακτηριστικά που αποτυπώνουν χρήσιμη δομή στην κατανομή εισόδου.[3]

Με άλλα λόγια, η αποθορυβοποίηση υποστηρίζεται ως κριτήριο εκπαίδευσης για την εκμάθηση εξαγωγής χρήσιμων χαρακτηριστικών που θα αποτελέσουν καλύτερες αναπαραστάσεις υψηλότερου επιπέδου της εισόδου.[3]

Η εκπαιδευτική διαδικασία ενός DAE λειτουργεί ως εξής:

Οι παράμετροι του μοντέλουθ{\displaystyle \theta } καιθ{\displaystyle \theta '} εκπαιδεύονται να ελαχιστοποιούν το μέσο σφάλμα ανακατασκευής στα δεδομένα εκπαίδευσης, ελαχιστοποιώντας τη διαφορά μεταξύ τουz{\displaystyle {\boldsymbol {z}}} από την αρχική, μη αλλοιωμένη είσοδοx{\displaystyle {\boldsymbol {x}}}.[3] Σημειώστε ότι κάθε φορά που ένα τυχαίο παράδειγμαx{\displaystyle {\boldsymbol {x}}} παρουσιάζεται στο μοντέλο, μια νέα παραποιημένη έκδοσή του δημιουργείται στοχαστικά με βάση τοqD(x~|x){\displaystyle q_{D}({\boldsymbol {\tilde {x}}}|{\boldsymbol {x}})} .

Η προαναφερθείσα διαδικασία εκπαίδευσης θα μπορούσε να εφαρμοστεί με κάθε είδους διαδικασία φθοράς. Μερικά παραδείγματα μπορεί να είναι οπροσθετικός Gaussian λευκός θόρυβος, ο θόρυβος κάλυψης (ένα κλάσμα της εισόδου που επιλέγεται τυχαία για κάθε παράδειγμα αναγκάζεται να γίνει 0) ή ο θόρυβος αλατοπίπερου (ένα κλάσμα της εισόδου που επιλέγεται τυχαία για κάθε παράδειγμα έχει οριστεί σε ελάχιστη ή μέγιστη τιμή του με ομοιόμορφη πιθανότητα).[3]

Η καταστροφή της εισόδου πραγματοποιείται μόνο κατά τη διάρκεια της εκπαίδευσης. Μετά την εκπαίδευση, δεν προστίθεται φθορά.

Πλεονεκτήματα του βάθους

[Επεξεργασία |επεξεργασία κώδικα]
Σχηματική δομή ενός autoencoder με 3 πλήρως συνδεδεμένα κρυφά επίπεδα. Η κωδικοποιημένη μορφή (z ή h για αναφορά στο κείμενο) είναι το πιο εσωτερικό επίπεδο.

Οι autoencoders εκπαιδεύονται συχνά με έναν κωδικοποιητή μονής στρώσης (ένα κρυφό επίπεδο κωδικοποίησης) και έναν αποκωδικοποιητή μονής στρώσης (ένα κρυφό επίπεδο αποκωδικοποίησης), αλλά η χρήση κωδικοποιητών και αποκωδικοποιητών πολλών επιπέδων προσφέρει πολλά πλεονεκτήματα.[2]

  • Το βάθος μπορεί να μειώσει εκθετικά το υπολογιστικό κόστος της αναπαράστασης ορισμένων συναρτήσεων.[2]
  • Το βάθος μπορεί να μειώσει εκθετικά τον όγκο των δεδομένων εκπαίδευσης που απαιτούνται για την εκμάθηση ορισμένων λειτουργιών.[2]
  • Πειραματικά, οι βαθύς autoencoders αποδίδουν καλύτερα στη συμπίεση σε σύγκριση με τους ρηχούς ή γραμμικούς autoencoders.[20]

OGeoffrey Hinton ανέπτυξε την τεχνική τουδικτύου βαθιάς πεποίθησης για την εκπαίδευση πολυεπίπεδων βαθιών autoencoders. Η μέθοδός του, περιλαμβάνει τη μεταχείριση κάθε γειτονικού συνόλου δύο στρωμάτων ωςπεριορισμένης μηχανής Boltzmann, έτσι ώστε η προεκπαίδευση να προσεγγίζει μια καλή λύση, και στη συνέχεια να χρησιμοποιεί την οπίσθια διάδοση (backpropagation) για να τελειοποιήσει τα αποτελέσματα.[20]

Εφαρμογές

[Επεξεργασία |επεξεργασία κώδικα]

Οι δύο κύριες εφαρμογές των autoencoders είναι η μείωση διαστάσεων και η ανάκτηση πληροφοριών[2], αλλά σύγχρονες παραλλαγές έχουν εφαρμοστεί σε άλλες εργασίες.

Ημείωση διαστάσεων ήταν μια από τις πρώτες εφαρμογές τηςβαθιάς μάθησης .[2]

Για τη μελέτη του ο Hinton το 2006,[20] προεκπαίδευσε έναν autoencoder πολλαπλών επιπέδων με μια στοίβα απόRBMs και στη συνέχεια χρησιμοποίησε τα βάρη τους για να προετοιμάσει έναν βαθύ autoencoder με σταδιακά μικρότερα κρυφά στρώματα μέχρι να φτάσει σε ένα σημείο συμφόρησης 30 νευρώνων. Οι προκύπτουσες 30 διαστάσεις της κωδικοποιημένης μορφής απέδωσαν μικρότερο σφάλμα ανακατασκευής σε σύγκριση με τα πρώτα 30 συστατικά που προκύπτουν από μια ανάλυση κύριων συνιστωσών (PCA) και έμαθαν μια αναπαράσταση που ήταν ποιοτικά πιο εύκολη στην ερμηνεία, διαχωρίζοντας σαφώς τα συμπλέγματα δεδομένων.[2][20]

Η αναπαράσταση διαστάσεων μπορεί να βελτιώσει την απόδοση σε εργασίες όπως η ταξινόμηση.[2] Πράγματι, το χαρακτηριστικό της μείωσης των διαστάσεων είναι η τοποθέτηση σημασιολογικά σχετικών παραδειγμάτων το ένα κοντά στο άλλο.[21]

Ανάλυση κύριων συνιστωσών

[Επεξεργασία |επεξεργασία κώδικα]

Εάν χρησιμοποιούνται γραμμικές συναρτήσεις ενεργοποίησης ή μόνο ένα κρυφό στρώμα σιγμοειδούς συνάρτησης, τότε η βέλτιστη λύση σε έναν autoencoder σχετίζεται στενά με τηνανάλυση κύριων συνιστωσών (PCA).[22][23] Τα βάρη ενός autoencoder με ένα μόνο κρυφό στρώμα μεγέθουςp{\displaystyle p} (πουp{\displaystyle p} είναι μικρότερο από το μέγεθος της εισόδου) εκτείνεται στον ίδιο διανυσματικό υποχώρο με αυτόν που εκτείνεται από τις πρώτεςp{\displaystyle p} κύριες συνιστώσες, και η έξοδος του autoencoder είναι μια ορθογώνια προβολή σε αυτόν τον υποχώρο. Τα βάρη του autoencoder δεν είναι ίσα με των κύριων συνιστωσών και γενικά δεν είναι ορθογώνια, ωστόσο οι κύριες σινιστώσες μπορούν να ανακτηθούν από αυτά χρησιμοποιώντας τηναποσύνθεση μοναδικής τιμής .

Ωστόσο, η δυναμική των autoencoders έγκειται στη μη γραμμικότητά τους, επιτρέποντας στο μοντέλο να μάθει πιο ισχυρές γενικεύσεις σε σύγκριση με την PCA και να ανακατασκευάσει την είσοδο με σημαντικά μικρότερη απώλεια πληροφοριών.[20]

Ανάκτηση πληροφορίας

[Επεξεργασία |επεξεργασία κώδικα]

Ηανάκτηση πληροφοριών επωφελείται ιδιαίτερα από τημείωση των διαστάσεων, καθώς η αναζήτηση μπορεί να γίνει πιο αποτελεσματική σε ορισμένα είδη χώρων χαμηλών διαστάσεων. Οι autoencoders εφαρμόστηκαν πράγματι στο σημασιολογικό κατακερματισμό, που προτάθηκε από τους Salakhutdinov και Hinton το 2007.[21] Εκπαιδεύοντας τοναλγόριθμο για την παραγωγή μιας δυαδικής κωδικοποιημένης μορφής χαμηλής διάστασης, όλες οι εγγραφές της βάσης δεδομένων θα μπορούσαν να αποθηκευτούν σε ένανπίνακα κατακερματισμού αντιστοιχίζοντας διανύσματα δυαδικού κώδικα σε εγγραφές. Αυτός ο πίνακας θα υποστηρίξει στη συνέχεια την ανάκτηση πληροφοριών επιστρέφοντας όλες τις εγγραφές με τον ίδιο δυαδικό κώδικα με το ερώτημα ή ελαφρώς λιγότερο παρόμοιες εγγραφές αναστρέφοντας μερικά bit από την κωδικοποίηση του ερωτήματος.

Ανίχνευση ανωμαλιών

[Επεξεργασία |επεξεργασία κώδικα]

Μια άλλη εφαρμογή για autoencoders είναι ηανίχνευση ανωμαλιών .[24][25][26][27][28] Μαθαίνοντας να αναπαράγει τα πιο σημαντικά χαρακτηριστικά στα δεδομένα εκπαίδευσης κάτω από ορισμένους από τους περιορισμούς που περιγράφηκαν προηγουμένως, το μοντέλο ενθαρρύνεται να μάθει να αναπαράγει με ακρίβεια τα χαρακτηριστικά που παρατηρούνται πιο συχνά. Όταν αντιμετωπίζει ανωμαλίες, το μοντέλο θα πρέπει να επιδεινώσει την απόδοση ανακατασκευής του. Στις περισσότερες περιπτώσεις, μόνο δεδομένα με κανονικές αναπαραστάσεις χρησιμοποιούνται για την εκπαίδευση του autoencoder. Σε άλλες, η συχνότητα των ανωμαλιών είναι μικρή σε σύγκριση με το σύνολο παρατήρησης, έτσι ώστε η συνεισφορά του στην εκμάθηση αναπαράστασης θα μπορούσε να αγνοηθεί. Μετά την εκπαίδευση, ο autoencoder θα ανακατασκευάσει με ακρίβεια τα "κανονικά" δεδομένα, ενώ δεν θα το κάνει με δεδομένα τα οποία περιέχουν στοιχεία ανωμαλίας.[26] Το σφάλμα ανακατασκευής (το σφάλμα μεταξύ των αρχικών δεδομένων και της ανακατασκευής χαμηλών διαστάσεων) χρησιμοποιείται ως βαθμολογία ανωμαλίας για τον εντοπισμό ανωμαλιών.[26]

Ωστόσο, η πρόσφατη βιβλιογραφία έχει δείξει ότι ορισμένα μοντέλα autoencoding, μπορούν, αντιδιαισθητικά, να είναι πολύ καλά στην ανακατασκευή ανώμαλων παραδειγμάτων και κατά συνέπεια να μην μπορούν να εκτελέσουν αξιόπιστη ανίχνευση ανωμαλιών.[29]

Ανακάλυψη φαρμάκων

[Επεξεργασία |επεξεργασία κώδικα]

Το 2019 μόρια που δημιουργήθηκαν με μεταβλητούς autoencoders επικυρώθηκαν πειραματικά σε ποντίκια.[30]

Πρόβλεψη δημοτικότητας

[Επεξεργασία |επεξεργασία κώδικα]

Πρόσφατα, ένας στοιβαγμένου πλαίσιο autoencoder παρήγαγε πολλά υποσχόμενα αποτελέσματα στην πρόβλεψη της δημοτικότητας των αναρτήσεων σταμέσα κοινωνικής δικτύωσης,[31] που είναι χρήσιμο για στρατηγικές διαδικτυακής διαφήμισης.

Μηχανική μετάφραση

[Επεξεργασία |επεξεργασία κώδικα]

Autoencoders έχουν εφαρμοστεί στημηχανική μετάφραση, η οποία συνήθως αναφέρεται ως νευρωνική μηχανική μετάφραση (NMT).[32][33] Σε αντίθεση με τους παραδοσιακούς autoencoders, η έξοδος δεν ταιριάζει με την είσοδο - είναι σε άλλη γλώσσα. Στο μοντέλο NMT, τα κείμενα αντιμετωπίζονται ως ακολουθίες που πρέπει να κωδικοποιηθούν στη διαδικασία εκμάθησης, ενώ στην πλευρά του αποκωδικοποιητή δημιουργούνται ακολουθίες στη γλώσσα(ες) στόχο. Οι autoencoders ειδικά για τη γλώσσα, ενσωματώνουν περαιτέρωγλωσσικά χαρακτηριστικά στη διαδικασία εκμάθησης, όπως τα κινεζικά χαρακτηριστικά αποσύνθεσης.[34]

Παραπομπές

[Επεξεργασία |επεξεργασία κώδικα]
  1. Kramer,Mark A.(1991).«Nonlinear principal component analysis using autoassociative neural networks».AIChE Journal37(2): 233–243.doi:10.1002/aic.690370209.https://www.researchgate.net/profile/Abir_Alobaid/post/To_learn_a_probability_density_function_by_using_neural_network_can_we_first_estimate_density_using_nonparametric_methods_then_train_the_network/attachment/59d6450279197b80779a031e/AS:451263696510979@1484601057779/download/NL+PCA+by+using+ANN.pdf. 
  2. 1234567891011Goodfellow, Ian· Bengio, Yoshua (2016).Deep Learning. MIT Press.ISBN 978-0262035613. 
  3. 123456Vincent,Pascal;Larochelle,Hugo(2010).«Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion».Journal of Machine Learning Research11: 3371–3408. 
  4. Welling,Max;Kingma,Diederik P.(2019).«An Introduction to Variational Autoencoders».Foundations and Trends in Machine Learning12(4): 307–392.doi:10.1561/2200000056.Bibcode: 2019arXiv190602691K. 
  5. Hinton GE, Krizhevsky A, Wang SD.Transforming auto-encoders. In International Conference on Artificial Neural Networks 2011 Jun 14 (pp. 44-51). Springer, Berlin, Heidelberg.
  6. 12Géron, Aurélien (2019).Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow. Canada: O’Reilly Media, Inc. σελίδες 739–740. 
  7. Liou,Cheng-Yuan;Huang,Jau-Chi;Yang,Wen-Chie(2008).«Modeling word perception using the Elman network».Neurocomputing71(16–18): 3150.doi:10.1016/j.neucom.2008.04.030. 
  8. Liou,Cheng-Yuan;Cheng,Wei-Chen;Liou,Jiun-Wei;Liou,Daw-Ran(2014).«Autoencoder for words».Neurocomputing139: 84–96.doi:10.1016/j.neucom.2013.09.055. 
  9. Schmidhuber,Jürgen(January 2015).«Deep learning in neural networks: An overview».Neural Networks61: 85–117.doi:10.1016/j.neunet.2014.09.003.PMID25462637. 
  10. Hinton, G. E., & Zemel, R. S. (1994). Autoencoders, minimum description length and Helmholtz free energy. InAdvances in neural information processing systems 6 (pp. 3-10).
  11. Generating Faces with Torch, Boesen A., Larsen L. and Sonderby S.K., 2015torch.ch/blog/2015/11/13/gan.html
  12. 12Domingos, Pedro (2015). «4».The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World. Basic Books.ISBN 978-046506192-1. 
  13. Bengio,Y.(2009).«Learning Deep Architectures for AI».Foundations and Trends in Machine Learning2(8): 1795–7.doi:10.1561/2200000006.PMID23946944.http://www.iro.umontreal.ca/~lisa/pointeurs/TR1312.pdf. 
  14. 12Frey,Brendan;Makhzani,Alireza(2013-12-19).k-Sparse Autoencoders.Bibcode: 2013arXiv1312.5663M. 
  15. 123Ng, A. (2011).Sparse autoencoder.CS294A Lecture notes,72(2011), 1-19.
  16. Nair,Vinod;Hinton,Geoffrey E.(2009).«3D Object Recognition with Deep Belief Nets».Proceedings of the 22Nd International Conference on Neural Information Processing Systems.NIPS'09(USA: Curran Associates Inc.): 1339–1347.ISBN9781615679119.http://dl.acm.org/citation.cfm?id=2984093.2984244. 
  17. Zeng,Nianyin;Zhang,Hong;Song,Baoye;Liu,Weibo;Li,Yurong;Dobaie,Abdullah M.(2018-01-17).«Facial expression recognition via learning deep sparse autoencoders».Neurocomputing273: 643–649.doi:10.1016/j.neucom.2017.08.043.ISSN0925-2312. 
  18. Arpit,Devansh(2015).«Why Regularized Auto-Encoders learn Sparse Representation?».MISSING LINK.. 
  19. 12Makhzani,Alireza;Frey,Brendan(2013).«K-Sparse Autoencoders».
     [cs.LG]
    .
     
  20. 12345Hinton,G. E.;Salakhutdinov,R.R.(28 July 2006).«Reducing the Dimensionality of Data with Neural Networks».Science313(5786): 504–507.doi:10.1126/science.1127647.PMID16873662.Bibcode: 2006Sci...313..504H.https://archive.org/details/sim_science_2006-07-28_313_5786/page/504. 
  21. 12Salakhutdinov,Ruslan;Hinton,Geoffrey(2009-07-01).«Semantic hashing».International Journal of Approximate Reasoning.Special Section on Graphical Models and Information Retrieval50(7): 969–978.doi:10.1016/j.ijar.2008.11.006.ISSN0888-613X. 
  22. Bourlard,H.;Kamp,Y.(1988).«Auto-association by multilayer perceptrons and singular value decomposition».Biological Cybernetics59(4–5): 291–294.doi:10.1007/BF00332918.PMID3196773.http://infoscience.epfl.ch/record/82601. 
  23. Chicco, Davide· Sadowski, Peter (2014). «Deep autoencoder neural networks for gene ontology annotation predictions».Proceedings of the 5th ACM Conference on Bioinformatics, Computational Biology, and Health Informatics - BCB '14. σελ. 533.ISBN 9781450328944. 
  24. Morales-Forero, A., & Bassetto, S. (2019, December). Case Study: A Semi-Supervised Methodology for Anomaly Detection and Diagnosis. In2019 IEEE International Conference on Industrial Engineering and Engineering Management (IEEM) (p. 4) (pp. 1031-1037). IEEE.
  25. Sakurada, M., & Yairi, T. (2014, December). Anomaly detection using autoencoders with nonlinear dimensionality reduction. InProceedings of the MLSDA 2014 2nd Workshop on Machine Learning for Sensory Data Analysis (p. 4). ACM.
  26. 123An, J., & Cho, S. (2015). Variational autoencoder based anomaly detection using reconstruction probability.Special Lecture on IE,2, 1-18.
  27. Zhou, C., & Paffenroth, R. C. (2017, August). Anomaly detection with robust deep autoencoders. InProceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (pp. 665-674). ACM.
  28. Ribeiro,Manassés;Lazzaretti,André Eugênio;Lopes,Heitor Silvério(2018).«A study of deep convolutional auto-encoders for anomaly detection in videos».Pattern Recognition Letters105: 13–22.doi:10.1016/j.patrec.2017.07.016.Bibcode: 2018PaReL.105...13R. 
  29. Xiao,Zhisheng;Yan,Qing;Amit,Yali(2020).«Likelihood Regret: An Out-of-Distribution Detection Score For Variational Auto-encoder»(στα αγγλικά).Advances in Neural Information Processing Systems33.https://proceedings.neurips.cc/paper/2020/hash/eddea82ad2755b24c4e168c5fc2ebd40-Abstract.html. 
  30. Zhavoronkov,Alex(2019).«Deep learning enables rapid identification of potent DDR1 kinase inhibitors».Nature Biotechnology37(9): 1038–1040.doi:10.1038/s41587-019-0224-x.PMID31477924. 
  31. De, Shaunak· Maity, Abhishek (2017). «Predicting the popularity of instagram posts for a lifestyle magazine using deep learning».2017 2nd IEEE International Conference on Communication Systems, Computing and IT Applications (CSCITA). σελίδες 174–177.ISBN 978-1-5090-4381-1. 
  32. Cho,Kyunghyun;Bart van Merrienboer;Bahdanau,Dzmitry;Bengio,Yoshua(2014).«On the Properties of Neural Machine Translation: Encoder-Decoder Approaches».
     [cs.CL]
    .
     
  33. Sutskever,Ilya(2014).«Sequence to Sequence Learning with Neural Networks».
     [cs.CL]
    .
     
  34. Han,Lifeng(2018).«Incorporating Chinese Radicals into Neural Machine Translation: Deeper Than Character Level».
     [cs.CL]
    .
     
Ανακτήθηκε από "https://el.wikipedia.org/w/index.php?title=Autoencoder&oldid=10903479"
Κατηγορία:
Κρυμμένες κατηγορίες:

[8]ページ先頭

©2009-2025 Movatter.jp