Βασικές αρχές της AI
Τι Είναι Τα Νευρωνικά Δίκτυα Transformer;
Περιγραφή Νευρωνικών Δικτύων Transformer
Transformer είναι ένας τύπος μαθηματικού μοντέλου που ειδικεύεται στην επεξεργασία και ερμηνεία σειριακών δεδομένων, καθιστώντας τα ιδανικά για εργασίες επεξεργασίας φυσικής γλώσσας. Για να κατανοήσουμε καλύτερα τι είναι ένα μαθηματικό μοντέλο transformer και πώς λειτουργεί, ας δούμε πιο στενά τα μοντέλα transformer και τους μηχανισμούς που τα οδηγούν.
Αυτό το άρθρο θα καλύψει:
- Μοντέλα Σειράς-Σε-Σειρά
- Αρχιτεκτονική Νευρωνικού Δικτύου Transformer
- Μηχανισμός Προσοχής
- Διαφορές Μεταξύ Transformer και RNNs/LSTMs
Μοντέλα Σειράς-Σε-Σειρά
Μοντέλα σειράς-σε-σειρά είναι ένας τύπος μοντέλου NLP που χρησιμοποιείται για τη μετατροπή σειρών ενός τύπου σε μια σειρά ενός άλλου τύπου. Υπάρχουν διάφορα είδη μοντέλων σειράς-σε-σειρά, όπως Επαναλαμβανόμενα Νευρωνικά Δίκτυα και Μηχανισμοί Λανθάνουσας Μνήμης (LSTM).
Παραδοσιακά μοντέλα σειράς-σε-σειρά, όπως τα RNN και LSTM, δεν είναι το επίκεντρο αυτού του άρθρου, αλλά η κατανόηση τους είναι απαραίτητη για να εκτιμηθεί πώς λειτουργούν τα μοντέλα transformer και γιατί είναι ανώτερα από τα παραδοσιακά μοντέλα σειράς-σε-σειρά.
Συνοπτικά, τα μοντέλα RNN και LSTM αποτελούνται από δίκτυα κωδικοποιητή και αποκωδικοποιητή που αναλύουν τα δεδομένα εισόδου σε διάφορες χρονικές στιγμές. Το δίκτυο κωδικοποιητή είναι υπεύθυνο για τη δημιουργία μιας κωδικοποιημένης αναπαράστασης των λέξεων στα δεδομένα εισόδου. Σε κάθε χρονική στιγμή, το δίκτυο κωδικοποιητή λαμβάνει μια ακολουθία εισόδου και μια κρυφή κατάσταση από την προηγούμενη χρονική στιγμή. Οι κρυφές καταστάσεις ενημερώνονται καθώς τα δεδομένα προχωρούν στο δίκτυο, μέχρι την τελευταία χρονική στιγμή, όπου δημιουργείται ένα “περιβάλλον vector”. Το περιβάλλον vector μεταφέρεται στο δίκτυο αποκωδικοποιητή, το οποίο χρησιμοποιείται για τη δημιουργία μιας στόχου ακολουθίας, προβλέποντας τη πιο πιθανή λέξη που ταιριάζει με τη λέξη εισόδου για τις αντίστοιχες χρονικές στιγμές.
Αυτά τα μοντέλα μπορούν να ενισχυθούν μέσω της χρήσης ενός “μηχανισμού προσοχής”. Ο μηχανισμός προσοχής ορίζει ποιες περιοχές του διανύσματος εισόδου το δίκτυο πρέπει να εστιάσει για να παράγει την κατάλληλη έξοδο. Για να το πούμε με άλλη τρόπο, ο μηχανισμός προσοχής επιτρέπει στο μοντέλο transformer να επεξεργάζεται μια εισοδημένη λέξη ενώ ταυτόχρονα εστιάζει στην σχετική πληροφορία που περιέχεται από τις άλλες εισοδημένες λέξεις. Οι μηχανισμοί προσοχής επίσης αποκρύπτουν τις λέξεις που δεν περιέχουν σχετική πληροφορία.
Αρχιτεκτονική Νευρωνικού Δικτύου Transformer
Θα εξετάσουμε τον μηχανισμό προσοχής με περισσότερες λεπτομέρειες αργότερα, αλλά για τώρα ας δούμε την αρχιτεκτονική ενός νευρωνικού δικτύου transformer σε υψηλότερο επίπεδο.
Γενικά, ένα νευρωνικό δίκτυο transformer έχει μια δομή που μοιάζει με την ακόλουθη:

Ενώ αυτή η γενική δομή μπορεί να αλλάξει μεταξύ δικτύων, τα βασικά κομμάτια θα παραμείνουν τα ίδια: κωδικοποιήσεις θέσης, διανύσματα λέξεων, μηχανισμός προσοχής, νευρωνικό δίκτυο προώθησης.
Κωδικοποιήσεις Θέσης και Διανύσματα Λέξεων
Ένα νευρωνικό δίκτυο transformer λειτουργεί λαμβάνοντας μια ακολουθία εισόδου και μετατρέποντάς την σε δύο άλλες ακολουθίες. Το transformer παράγει μια ακολουθία διανυσμάτων λέξεων και κωδικοποιήσεων θέσης.
Διανύσματα λέξεων είναι απλώς η κειμενική αναπαράσταση σε một αριθμητική μορφή που το νευρωνικό δίκτυο μπορεί να επεξεργαστεί. Εν τω μεταξύ, οι κωδικοποιήσεις θέσης είναι διανυσματικές αναπαραστάσεις που περιέχουν πληροφορίες σχετικά με τη θέση της τρέχουσας λέξης στη λεκτική πρόταση, σε σχέση με άλλες λέξεις.
Άλλα μοντέλα νευρωνικών δικτύων που βασίζονται σε κείμενο, όπως τα RNN και LSTM, χρησιμοποιούν διανύσματα για να αναπαραστήσουν τις λέξεις στα δεδομένα εισόδου. Αυτά τα διανύσματα αντιστοιχούν λέξεις σε σταθερές τιμές, αλλά αυτό είναι περιοριστικό επειδή οι λέξεις μπορούν να χρησιμοποιηθούν σε διαφορετικά контекστά. Ένα δίκτυο transformer λύνει αυτό το πρόβλημα κάνωντας τις τιμές των λέξεων πιο ευέλικτες, χρησιμοποιώντας ημιτονοειδείς συναρτήσεις για να επιτρέψουν στα διανύσματα λέξεων να λαμβάνουν διαφορετικές τιμές ανάλογα με τη θέση της λέξης στη πρόταση.
Αυτό επιτρέπει στο μοντέλο νευρωνικού δικτύου να διατηρεί πληροφορίες σχετικά με τη σχετική θέση των εισοδημένων λέξεων, ακόμη και μετά τα διανύσματα περάσουν από τα στρώματα του δικτύου transformer.
Οι κωδικοποιήσεις θέσης και τα διανύσματα λέξεων προστίθενται μαζί και στη συνέχεια περνάνε και στα δίκτυα κωδικοποιητή και αποκωδικοποιητή. Ενώ τα νευρωνικά δίκτυα transformer χρησιμοποιούν σχήματα κωδικοποιητή/αποκωδικοποιητή όπως τα RNN και LSTM, μια σημαντική διαφορά μεταξύ τους είναι ότι όλα τα δεδομένα εισόδου παρέχονται στο δίκτυο την ίδια στιγμή, ενώ στα RNN/LSTM, τα δεδομένα παρέχονται σειριακά.
Τα δίκτυα κωδικοποιητή είναι υπεύθυνα για τη μετατροπή των εισόδων σε αναπαραστάσεις από τις οποίες το δίκτυο μπορεί να μάθει, ενώ τα δίκτυα αποκωδικοποιητή κάνουν το αντίθετο και μετατρέπουν τις κωδικοποιήσεις σε μια κατανομή πιθανοτήτων που χρησιμοποιείται για τη δημιουργία της πιο πιθανής λέξης στην έξοδο πρότασης. Κρίσιμα, και τα δίκτυα κωδικοποιητή και αποκωδικοποιητή έχουν έναν μηχανισμό προσοχής.
Επειδή οι GPU είναι ικανά για παράλληλη επεξεργασία, χρησιμοποιούνται πολλαπλοί μηχανισμοί προσοχής παράλληλα, υπολογίζοντας τις σχετικές πληροφορίες για όλες τις εισοδημένες λέξεις. Αυτή η ικανότητα να εστιάσει σε πολλές λέξεις, που ονομάζεται “πολλαπλή προσοχή”, σε μια φορά βοηθά το νευρωνικό δίκτυο να μάθει το контέκστ της λέξης μέσα σε μια πρόταση, και είναι ένα από τα κύρια πλεονεκτήματα που έχουν τα δίκτυα transformer έναντι των RNN και LSTM.
Ο Μηχανισμός Προσοχής
Ο μηχανισμός προσοχής είναι το πιο σημαντικό μέρος ενός δικτύου transformer. Ο μηχανισμός προσοχής είναι αυτό που επιτρέπει στα μοντέλα transformer να ξεπεράσουν το όριο προσοχής ενός τυπικού RNN ή LSTM μοντέλου. Παραδοσιακά μοντέλα σειράς-σε-σειρά απορρίπτουν όλες τις ενδιάμεσες καταστάσεις και χρησιμοποιούν μόνο την τελική κατάσταση/περιβάλλον διανύσματος όταν αρχικοποιούν το δίκτυο αποκωδικοποιητή για τη δημιουργία προβλέψεων σχετικά με μια ακολουθία εισόδου.
Η απόρριψη όλων εκτός από το τελικό περιβάλλον διανύσματος λειτουργεί καλά όταν οι ακολουθίες εισόδου είναι αρκετά μικρές. Ωστόσο, καθώς το μήκος της ακολουθίας εισόδου αυξάνεται, η απόδοση του μοντέλου θα επιδεινωθεί χρησιμοποιώντας αυτή τη μέθοδο. Αυτό συμβαίνει επειδή γίνεται πολύ δύσκολο να συνοψίσετε μια μεγάλη ακολουθία εισόδου ως ένα單ο διανύσματος. Η λύση είναι να αυξήσετε την “προσοχή” του μοντέλου και να χρησιμοποιήσετε τις ενδιάμεσες καταστάσεις κωδικοποιητή για να κατασκευάσετε περιβάλλον διανύσματα για το δίκτυο αποκωδικοποιητή.
Ο μηχανισμός προσοχής ορίζει πόσο σημαντικές είναι οι άλλες εισοδημένες λέξεις για το μοντέλο όταν δημιουργούνται κωδικοποιήσεις για μια δεδομένη λέξη. Για παράδειγμα, “αυτός” είναι ένα γενικό αντωνυμία, συχνά χρησιμοποιούμενο για να αναφερθεί σε ζώα όταν το φύλο τους δεν είναι γνωστό. Ένας μηχανισμός προσοχής θα επέτρεπε στο μοντέλο transformer να καθορίσει ότι στην τρέχουσα контέκστ “αυτός” αναφέρεται σε μια σκίουρο, επειδή μπορεί να εξετάσει όλες τις σχετικές λέξεις στην εισοδημένη πρόταση.
Ο μηχανισμός προσοχής μπορεί να χρησιμοποιηθεί με τρεις διαφορετικούς τρόπους: κωδικοποιητής-αποκωδικοποιητής, μόνο κωδικοποιητής, μόνο αποκωδικοποιητής.
Η προσοχή κωδικοποιητή-αποκωδικοποιητή επιτρέπει στο δίκτυο αποκωδικοποιητή να λάβει υπόψη τις ακολουθίες εισόδου κατά τη δημιουργία της έξοδου, ενώ οι μηχανισμοί προσοχής μόνο κωδικοποιητή και μόνο αποκωδικοποιητή επιτρέπουν στα δίκτυα να λάβουν υπόψη όλες τις partes των προηγούμενων και τρέχουσων ακολουθιών αντίστοιχα.
Η κατασκευή ενός μηχανισμού προσοχής μπορεί να χωριστεί σε πέντε βήματα:
- Υπολογισμός eines σκορ για όλες τις καταστάσεις κωδικοποιητή.
- Υπολογισμός των βαρών προσοχής
- Υπολογισμός περιβάλλοντος διανυσμάτων
- Ενημέρωση του περιβάλλοντος διανύσματος με την έξοδο της προηγούμενης χρονικής στιγμής
- Γенνήστε την έξοδο με το δίκτυο αποκωδικοποιητή
Το πρώτο βήμα είναι να υπολογίσει το δίκτυο αποκωδικοποιητή ένα σκορ για όλες τις καταστάσεις κωδικοποιητή. Αυτό γίνεται με την εκπαίδευση του δικτύου αποκωδικοποιητή, το οποίο είναι ένα βασικό νευρωνικό δίκτυο προώθησης. Όταν το δίκτυο αποκωδικοποιητή εκπαιδεύεται στην πρώτη λέξη της ακολουθίας εισόδου, δεν έχει δημιουργηθεί ακόμη καμία εσωτερική/κρυφή κατάσταση, οπότε η τελευταία κατάσταση του κωδικοποιητή χρησιμοποιείται συνήθως ως η προηγούμενη κατάσταση του αποκωδικοποιητή.
Για να υπολογιστεί το βάρος προσοχής, χρησιμοποιείται μια softmax συνάρτηση για να δημιουργηθεί μια πιθανοτική κατανομή για τα βάρη προσοχής.
Μόλις υπολογιστούν τα βάρη προσοχής, το περιβάλλον διανύσματος πρέπει να υπολογιστεί. Αυτό γίνεται με την πολλαπλασιασμό των βαρών προσοχής και της κρυφής κατάστασης μαζί για κάθε χρονική στιγμή.
Μετά τον υπολογισμό του περιβάλλοντος διανύσματος, χρησιμοποιείται μαζί με τη λέξη που παράχθηκε στην προηγούμενη χρονική στιγμή για να παράγει την επόμενη λέξη στην έξοδο ακολουθίας. Επειδή το δίκτυο αποκωδικοποιητή δεν έχει προηγούμενη έξοδο να αναφερθεί σε αυτήν την πρώτη χρονική στιγμή, συχνά χρησιμοποιείται ένα đặc biệt “ξεκίνημα” token.
Διαφορές Μεταξύ Transformer και RNNs/LSTMs
Ας καλύψουμε γρήγορα κάποιες από τις διαφορές μεταξύ RNN και LSTM.
Τα RNN επεξεργάζονται τις εισόδους σειριακά, ενώ διατηρείται και τροποποιείται ένα κρυφό διανύσματος κατάσταση από τις εισοδημένες λέξεις καθώς προχωρούν στο δίκτυο. Οι κρυφές καταστάσεις ενός RNN συνήθως περιέχουν πολύ λίγη σχετική πληροφορία σχετικά με τις προηγούμενες εισόδους. Νέες εισόδους συχνά ξαναγράφουν την τρέχουσα κατάσταση, που προκαλεί απώλεια πληροφορίας και επιβαρύνει την απόδοση με το χρόνο.
Σε αντίθεση, τα μοντέλα transformer επεξεργάζονται ολόκληρη την ακολουθία εισόδου την ίδια στιγμή. Ο μηχανισμός προσοχής επιτρέπει σε κάθε λέξη έξοδου να ενημερωθεί από κάθε εισοδημένη λέξη και κρυφή κατάσταση, καθιστώντας το δίκτυο πιο αξιόπιστο για μεγάλες ακολουθίες κειμένου.
Τα LSTM είναι τροποποιημένες εκδόσεις των RNN, προσαρμοσμένες για να χειρίζονται μεγαλύτερες ακολουθίες εισόδου. Η αρχιτεκτονική LSTM χρησιμοποιεί μια δομή που ονομάζεται “πύλες”, με “πύλες εισόδου”, “πύλες εξόδου” και “πύλες λήθης”. Η σχεδίαση με πύλες αντιμετωπίζει την απώλεια πληροφορίας που είναι κοινή στα μοντέλα RNN. Τα δεδομένα vẫn επεξεργάζονται σειριακά, και η αναδρομική σχεδίαση καθιστά τα μοντέλα LSTM δύσκολα να εκπαιδευτούν με παράλληλη επεξεργασία, καθιστώντας τον χρόνο εκπαίδευσης μεγαλύτερο συνολικά.
Οι μηχανικοί LSTM συχνά πρόσθεταν μηχανισμούς προσοχής στο δίκτυο, που ήταν γνωστό ότι βελτιώνει την απόδοση του μοντέλου. Ωστόσο, τελικά ανακαλύφθηκε ότι ο μηχανισμός προσοχής μόνο βελτίωνε την ακρίβεια. Αυτή η ανακάλυψη οδήγησε στη δημιουργία δικτύων transformer που χρησιμοποιούσαν μηχανισμούς προσοχής και παράλληλη επεξεργασία χάρη στις GPU.












