Υπάρχει διαφορά μεταξύ των αυτόματων κωδικοποιητών και του αποκωδικοποιητή κωδικοποιητή σε βαθιά εκμάθηση;


Απάντηση 1:

Εδώ βλέπουμε τους δύο αυτούς όρους (ανεπίσημα). Σκεφτείτε τον κωδικοποιητή-αποκωδικοποιητή ως πολύ γενικό σχεδιασμό πλαισίου / αρχιτεκτονικής. Σε αυτό το σχέδιο, έχετε κάποια λειτουργία που χαρτογραφεί ένα χώρο εισόδου, ανεξάρτητα από το ποια μπορεί να είναι, σε διαφορετικό / λανθάνοντα χώρο (τον "κωδικοποιητή"). Ο αποκωδικοποιητής είναι απλώς η συμπληρωματική συνάρτηση που δημιουργεί έναν χάρτη από τον λανθάνοντα χώρο του (κωδικοποιητή) σε άλλο χώρο στόχου (τι θέλουμε να αποκωδικοποιήσουμε από τον λανθάνοντα χώρο). Σημειώστε απλώς τη χαρτογράφηση των διαστημάτων και τη σύνδεσή τους μέσω ενός κοινόχρηστου λανθάνοντος χώρου, θα μπορούσατε να κάνετε κάτι σαν να χαρτογραφήσετε μια ακολουθία μαρκών στα αγγλικά (δηλ. Μια αγγλική πρόταση) σε μια ακολουθία μαρκών στα γαλλικά (δηλαδή η μετάφραση αυτής της αγγλικής πρότασης στα γαλλικά). Σε ορισμένα μοντέλα νευρικής μετάφρασης, αντιστοιχίζετε μια αγγλική ακολουθία σε ένα σταθερό διάνυσμα (ας πούμε την τελευταία κατάσταση, που βρέθηκε κατά την επίτευξη ενός σημείου στίξης, του επαναλαμβανόμενου δικτύου που χρησιμοποιείτε για να επεξεργαστείτε τη φράση επανειλημμένα) από την οποία θα αποκωδικοποιήσετε μια γαλλική ακολουθία .

Ένας αυτόματος κωδικοποιητής (ή ένας αυτόματος συσχετιστής, όπως ήταν κλασικά γνωστός ως) είναι μια ειδική περίπτωση αρχιτεκτονικής αποκωδικοποιητή-κωδικοποιητή - πρώτον, ο χώρος στόχος είναι ο ίδιος με τον χώρο εισόδου (δηλ. Οι αγγλικές εισόδους σε αγγλικούς στόχους) ο στόχος πρέπει να είναι ίσος με την είσοδο. Έτσι θα χαρτογραφούσαμε σαν φορείς ως προς φορείς (σημειώστε ότι αυτό θα μπορούσε να είναι μια ακολουθία, καθώς είναι επαναλαμβανόμενοι αυτόματους κωδικοποιητές, αλλά είστε τώρα στην περίπτωση αυτή, μη προβλέποντας το μέλλον, αλλά απλά ανακατασκευάζοντας το παρόν δεδομένου κράτους / μνήμης και παρόν). Τώρα, ένας αυτόματος κωδικοποιητής προορίζεται πραγματικά να κάνει αυτόματη σύνδεση, οπότε ουσιαστικά προσπαθούμε να χτίσουμε ένα μοντέλο για να «ανακαλέσουμε» την είσοδο, η οποία επιτρέπει στον αυτόματο κωδικοποιητή να κάνει πράγματα όπως η συμπλήρωση προτύπου έτσι εάν δώσουμε στον autoencoder μας μια εν μέρει αλλοιωμένη είσοδο, θα ήταν σε θέση να "ανακτήσει" το σωστό μοτίβο από τη μνήμη.

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

Αλλά η σύντομη ιστορία είναι απλή: ένας αυτόματος κωδικοποιητής είναι πραγματικά μια ειδική περίπτωση ενός κωδικοποιητή-αποκωδικοποιητή. Αυτό είναι ιδιαίτερα χρήσιμο όταν θέλουμε να αποσυνδέσουμε τον κωδικοποιητή και τον αποκωδικοποιητή για να δημιουργήσουμε κάτι σαν έναν μεταβλητό αυτόματο κωδικοποιητή, ο οποίος μας απαλλάσσει επίσης από το να κάνουμε τον αποκωδικοποιητή συμμετρικό σε σχεδιασμό με τον κωδικοποιητή (δηλαδή, ο κωδικοποιητής θα μπορούσε να είναι ένα 2-στρώμα συνελικτικό δίκτυο ενώ ο αποκωδικοποιητής θα μπορούσε να είναι ένα δίκτυο διαχωρισμού τριών επιπέδων). Σε έναν μεταβλητό αυτόματο κωδικοποιητή, η ιδέα του λανθάνουσου χώρου καθίσταται σαφέστερη, επειδή τώρα χαρτογραφούμε πραγματικά την είσοδο (όπως μια εικόνα ή ένα διάνυσμα εγγράφων) σε μια λανθάνουσα μεταβλητή, από την οποία θα ανασυνθέσουμε την αρχική / ίδια είσοδο (όπως η εικόνα ή φορέα εγγράφων).

Πιστεύω επίσης ότι υπάρχει μεγάλη σύγχυση από την κατάχρηση της ορολογίας. Σήμερα, τα ML λαϊκά τείνουν να αναμειγνύουν και να ταιριάζουν με τα λόγια (μερικοί το κάνουν για να κάνουν τα πράγματα πιο ήρεμα ή να βρουν λέξεις που θα προσελκύσουν αναγνώστες / χρηματοδότες / φήμη / δόξα / κλπ.), Αλλά αυτό οφείλεται εν μέρει στην αλλαγή επωνυμίας τεχνητά νευρωνικά δίκτυα ως "βαθιά μάθηση" ;-) [αφού, τελικά, όλοι θέλουν τα χρήματα να συνεχίσουν να εργάζονται]


Απάντηση 2:

Πράγματι.

Μια αρχιτεκτονική αποκωδικοποιητή κωδικοποιητή έχει ένα τμήμα κωδικοποιητή που λαμβάνει μια είσοδο και το χαρτογραφεί σε έναν λανθάνοντα χώρο. Το τμήμα αποκωδικοποιητή παίρνει αυτόν τον λανθάνοντα χώρο και το χαρτογραφεί σε μια έξοδο. Συνήθως αυτό έχει ως αποτέλεσμα καλύτερα αποτελέσματα. Ένας αυτόματος κωδικοποιητής λαμβάνει απλά x ως είσοδο και προσπαθεί να ανακατασκευάσει το x (τώρα x_hat) ως έξοδο.

Συνήθως οι περιπτώσεις χρήσης είναι διαφορετικές. Οι αυτόματοι κωδικοποιητές θα χρησιμοποιούνται γενικά σε μη εποπτευόμενες μαθησιακές καταστάσεις, καθώς, όπως βλέπουμε, δεν απαιτούνται ετικέτες, μόνο δεδομένα. Οι αρχιτεκτονικές κωδικοποιητή-αποκωδικοποιητή χρησιμοποιούνται συχνά με πιο γενικό τρόπο, όπως αναφέρατε με το χαρτί SegNet και πιο συχνά με το NMT.