23 KiB
Υποστήριξη πολλαπλών γλωσσών
Σκίτσο από τη Nitya Narasimhan. Κάντε κλικ στην εικόνα για μεγαλύτερη έκδοση.
Αυτό το βίντεο παρέχει μια επισκόπηση των υπηρεσιών ομιλίας του Azure, καλύπτοντας τη μετατροπή ομιλίας σε κείμενο και κειμένου σε ομιλία από προηγούμενα μαθήματα, καθώς και τη μετάφραση ομιλίας, ένα θέμα που καλύπτεται σε αυτό το μάθημα:
🎥 Κάντε κλικ στην παραπάνω εικόνα για να παρακολουθήσετε το βίντεο
Ερωτηματολόγιο πριν το μάθημα
Εισαγωγή
Στα τελευταία 3 μαθήματα μάθατε για τη μετατροπή ομιλίας σε κείμενο, την κατανόηση γλώσσας και τη μετατροπή κειμένου σε ομιλία, όλα με τη βοήθεια της τεχνητής νοημοσύνης. Ένας άλλος τομέας ανθρώπινης επικοινωνίας που μπορεί να βοηθήσει η τεχνητή νοημοσύνη είναι η μετάφραση γλώσσας - η μετατροπή από μία γλώσσα σε άλλη, όπως από τα Αγγλικά στα Γαλλικά.
Σε αυτό το μάθημα θα μάθετε πώς να χρησιμοποιείτε την τεχνητή νοημοσύνη για να μεταφράζετε κείμενο, επιτρέποντας στο έξυπνο χρονόμετρό σας να αλληλεπιδρά με χρήστες σε πολλές γλώσσες.
Σε αυτό το μάθημα θα καλύψουμε:
- Μετάφραση κειμένου
- Υπηρεσίες μετάφρασης
- Δημιουργία πόρου μεταφραστή
- Υποστήριξη πολλαπλών γλωσσών σε εφαρμογές με μεταφράσεις
- Μετάφραση κειμένου χρησιμοποιώντας μια υπηρεσία τεχνητής νοημοσύνης
🗑 Αυτό είναι το τελευταίο μάθημα αυτού του έργου, οπότε μετά την ολοκλήρωση του μαθήματος και της εργασίας, μην ξεχάσετε να καθαρίσετε τις υπηρεσίες cloud σας. Θα χρειαστείτε τις υπηρεσίες για να ολοκληρώσετε την εργασία, οπότε βεβαιωθείτε ότι την ολοκληρώσατε πρώτα.
Ανατρέξτε στον οδηγό καθαρισμού του έργου σας εάν χρειάζεστε οδηγίες για το πώς να το κάνετε.
Μετάφραση κειμένου
Η μετάφραση κειμένου αποτελεί πρόβλημα της επιστήμης των υπολογιστών που ερευνάται για πάνω από 70 χρόνια, και μόνο τώρα, χάρη στις προόδους της τεχνητής νοημοσύνης και της υπολογιστικής ισχύος, πλησιάζει στο να λυθεί σε σημείο που να είναι σχεδόν εξίσου καλή με τους ανθρώπινους μεταφραστές.
💁 Οι απαρχές της μπορούν να εντοπιστούν ακόμη πιο πίσω, στον Αλ-Κίντι, έναν Άραβα κρυπτογράφο του 9ου αιώνα που ανέπτυξε τεχνικές για τη μετάφραση γλωσσών.
Μηχανικές μεταφράσεις
Η μετάφραση κειμένου ξεκίνησε ως μια τεχνολογία γνωστή ως Μηχανική Μετάφραση (Machine Translation - MT), που μπορεί να μεταφράζει μεταξύ διαφορετικών ζευγών γλωσσών. Η MT λειτουργεί αντικαθιστώντας λέξεις από μία γλώσσα με λέξεις σε άλλη, προσθέτοντας τεχνικές για την επιλογή των σωστών τρόπων μετάφρασης φράσεων ή τμημάτων προτάσεων όταν μια απλή λέξη προς λέξη μετάφραση δεν έχει νόημα.
🎓 Όταν οι μεταφραστές υποστηρίζουν τη μετάφραση μεταξύ μιας γλώσσας και μιας άλλης, αυτά είναι γνωστά ως ζεύγη γλωσσών. Διαφορετικά εργαλεία υποστηρίζουν διαφορετικά ζεύγη γλωσσών, και αυτά μπορεί να μην είναι πλήρη. Για παράδειγμα, ένας μεταφραστής μπορεί να υποστηρίζει τα Αγγλικά προς Ισπανικά ως ζεύγος γλωσσών, και τα Ισπανικά προς Ιταλικά ως ζεύγος γλωσσών, αλλά όχι τα Αγγλικά προς Ιταλικά.
Για παράδειγμα, η μετάφραση του "Hello world" από τα Αγγλικά στα Γαλλικά μπορεί να γίνει με αντικατάσταση - "Bonjour" για το "Hello" και "le monde" για το "world", οδηγώντας στη σωστή μετάφραση "Bonjour le monde".
Οι αντικαταστάσεις δεν λειτουργούν όταν διαφορετικές γλώσσες χρησιμοποιούν διαφορετικούς τρόπους για να πουν το ίδιο πράγμα. Για παράδειγμα, η αγγλική πρόταση "My name is Jim" μεταφράζεται στα Γαλλικά ως "Je m'appelle Jim" - κυριολεκτικά "Εγώ ονομάζομαι Jim". Το "Je" είναι το γαλλικό "I", το "moi" είναι "me", αλλά συνδέεται με το ρήμα καθώς ξεκινά με φωνήεν, οπότε γίνεται "m'", το "appelle" είναι "to call", και το "Jim" δεν μεταφράζεται καθώς είναι όνομα και όχι λέξη που μπορεί να μεταφραστεί. Η σειρά των λέξεων επίσης γίνεται πρόβλημα - μια απλή αντικατάσταση του "Je m'appelle Jim" γίνεται "I myself call Jim", με διαφορετική σειρά λέξεων από τα Αγγλικά.
💁 Ορισμένες λέξεις δεν μεταφράζονται ποτέ - το όνομά μου είναι Jim ανεξάρτητα από τη γλώσσα που χρησιμοποιείται για να με συστήσει. Όταν μεταφράζουμε σε γλώσσες που χρησιμοποιούν διαφορετικά αλφάβητα ή διαφορετικά γράμματα για διαφορετικούς ήχους, τότε οι λέξεις μπορούν να μεταγραφούν, δηλαδή να επιλεγούν γράμματα ή χαρακτήρες που δίνουν τον κατάλληλο ήχο ώστε να ακούγονται όπως η δεδομένη λέξη.
Οι ιδιωματισμοί αποτελούν επίσης πρόβλημα για τη μετάφραση. Αυτές είναι φράσεις που έχουν μια κατανοητή έννοια διαφορετική από την άμεση ερμηνεία των λέξεων. Για παράδειγμα, στα Αγγλικά ο ιδιωματισμός "I've got ants in my pants" δεν αναφέρεται κυριολεκτικά στο να έχεις μυρμήγκια στα ρούχα σου, αλλά στο να είσαι ανήσυχος. Αν μεταφραστεί αυτό στα Γερμανικά, θα προκαλέσει σύγχυση στον ακροατή, καθώς η γερμανική έκδοση είναι "I have bumble bees in the bottom".
💁 Διαφορετικές τοπικές διαλέκτοι προσθέτουν διαφορετικές πολυπλοκότητες. Με τον ιδιωματισμό "ants in your pants", στα Αμερικανικά Αγγλικά το "pants" αναφέρεται σε εξωτερικά ρούχα, ενώ στα Βρετανικά Αγγλικά το "pants" είναι εσώρουχα.
✅ Αν μιλάτε πολλές γλώσσες, σκεφτείτε κάποιες φράσεις που δεν μεταφράζονται άμεσα.
Τα συστήματα μηχανικής μετάφρασης βασίζονται σε μεγάλες βάσεις δεδομένων κανόνων που περιγράφουν πώς να μεταφράζονται συγκεκριμένες φράσεις και ιδιωματισμοί, μαζί με στατιστικές μεθόδους για την επιλογή των κατάλληλων μεταφράσεων από πιθανές επιλογές. Αυτές οι στατιστικές μέθοδοι χρησιμοποιούν τεράστιες βάσεις δεδομένων έργων που έχουν μεταφραστεί από ανθρώπους σε πολλές γλώσσες για να επιλέξουν την πιο πιθανή μετάφραση, μια τεχνική που ονομάζεται στατιστική μηχανική μετάφραση. Πολλές από αυτές χρησιμοποιούν ενδιάμεσες αναπαραστάσεις της γλώσσας, επιτρέποντας τη μετάφραση μιας γλώσσας στην ενδιάμεση και από την ενδιάμεση σε άλλη γλώσσα. Με αυτόν τον τρόπο, η προσθήκη περισσότερων γλωσσών περιλαμβάνει μεταφράσεις προς και από την ενδιάμεση, όχι προς και από όλες τις άλλες γλώσσες.
Νευρωνικές μεταφράσεις
Οι νευρωνικές μεταφράσεις χρησιμοποιούν τη δύναμη της τεχνητής νοημοσύνης για τη μετάφραση, συνήθως μεταφράζοντας ολόκληρες προτάσεις χρησιμοποιώντας ένα μοντέλο. Αυτά τα μοντέλα εκπαιδεύονται σε τεράστια σύνολα δεδομένων που έχουν μεταφραστεί από ανθρώπους, όπως ιστοσελίδες, βιβλία και έγγραφα των Ηνωμένων Εθνών.
Τα νευρωνικά μοντέλα μετάφρασης είναι συνήθως μικρότερα από τα μοντέλα μηχανικής μετάφρασης, καθώς δεν χρειάζονται τεράστιες βάσεις δεδομένων φράσεων και ιδιωματισμών. Οι σύγχρονες υπηρεσίες τεχνητής νοημοσύνης που παρέχουν μεταφράσεις συχνά συνδυάζουν πολλαπλές τεχνικές, συνδυάζοντας στατιστική μηχανική μετάφραση και νευρωνική μετάφραση.
Δεν υπάρχει 1:1 μετάφραση για οποιοδήποτε ζεύγος γλωσσών. Διαφορετικά μοντέλα μετάφρασης θα παράγουν ελαφρώς διαφορετικά αποτελέσματα ανάλογα με τα δεδομένα που χρησιμοποιήθηκαν για την εκπαίδευση του μοντέλου. Οι μεταφράσεις δεν είναι πάντα συμμετρικές - δηλαδή, αν μεταφράσετε μια πρόταση από μια γλώσσα σε άλλη και μετά πίσω στην πρώτη γλώσσα, μπορεί να δείτε μια ελαφρώς διαφορετική πρόταση ως αποτέλεσμα.
✅ Δοκιμάστε διαφορετικούς διαδικτυακούς μεταφραστές όπως το Bing Translate, το Google Translate ή την εφαρμογή Apple Translate. Συγκρίνετε τις μεταφρασμένες εκδόσεις μερικών προτάσεων. Δοκιμάστε επίσης να μεταφράσετε σε έναν και μετά να μεταφράσετε πίσω σε άλλον.
Υπηρεσίες μετάφρασης
Υπάρχουν αρκετές υπηρεσίες τεχνητής νοημοσύνης που μπορούν να χρησιμοποιηθούν από τις εφαρμογές σας για τη μετάφραση ομιλίας και κειμένου.
Υπηρεσία ομιλίας Cognitive Services
Η υπηρεσία ομιλίας που χρησιμοποιήσατε στα προηγούμενα μαθήματα διαθέτει δυνατότητες μετάφρασης για την αναγνώριση ομιλίας. Όταν αναγνωρίζετε ομιλία, μπορείτε να ζητήσετε όχι μόνο το κείμενο της ομιλίας στην ίδια γλώσσα, αλλά και σε άλλες γλώσσες.
💁 Αυτό είναι διαθέσιμο μόνο από το SDK ομιλίας, το REST API δεν έχει ενσωματωμένες μεταφράσεις.
Υπηρεσία μεταφραστή Cognitive Services
Η υπηρεσία Translator είναι μια ειδική υπηρεσία μετάφρασης που μπορεί να μεταφράσει κείμενο από μία γλώσσα σε μία ή περισσότερες γλώσσες-στόχους. Εκτός από τη μετάφραση, υποστηρίζει ένα ευρύ φάσμα επιπλέον λειτουργιών, όπως η απόκρυψη βωμολοχιών. Σας επιτρέπει επίσης να παρέχετε μια συγκεκριμένη μετάφραση για μια συγκεκριμένη λέξη ή πρόταση, να δουλεύετε με όρους που δεν θέλετε να μεταφραστούν ή να έχετε μια συγκεκριμένη γνωστή μετάφραση.
Για παράδειγμα, όταν μεταφράζετε την πρόταση "I have a Raspberry Pi", αναφερόμενοι στον υπολογιστή μιας πλακέτας, σε άλλη γλώσσα όπως τα Γαλλικά, θα θέλατε να διατηρήσετε το όνομα "Raspberry Pi" ως έχει και να μην το μεταφράσετε, δίνοντας "J’ai un Raspberry Pi" αντί για "J’ai une pi aux framboises".
Δημιουργία πόρου μεταφραστή
Για αυτό το μάθημα θα χρειαστείτε έναν πόρο Translator. Θα χρησιμοποιήσετε το REST API για να μεταφράσετε κείμενο.
Εργασία - δημιουργία πόρου μεταφραστή
-
Από το τερματικό ή τη γραμμή εντολών σας, εκτελέστε την παρακάτω εντολή για να δημιουργήσετε έναν πόρο μεταφραστή στην ομάδα πόρων
smart-timer
.az cognitiveservices account create --name smart-timer-translator \ --resource-group smart-timer \ --kind TextTranslation \ --sku F0 \ --yes \ --location <location>
Αντικαταστήστε το
<location>
με την τοποθεσία που χρησιμοποιήσατε κατά τη δημιουργία της Ομάδας Πόρων. -
Αποκτήστε το κλειδί για την υπηρεσία μεταφραστή:
az cognitiveservices account keys list --name smart-timer-translator \ --resource-group smart-timer \ --output table
Κρατήστε ένα αντίγραφο ενός από τα κλειδιά.
Υποστήριξη πολλαπλών γλωσσών σε εφαρμογές με μεταφράσεις
Σε έναν ιδανικό κόσμο, ολόκληρη η εφαρμογή σας θα πρέπει να κατανοεί όσο το δυνατόν περισσότερες διαφορετικές γλώσσες, από την ακρόαση ομιλίας, την κατανόηση γλώσσας, μέχρι την απάντηση με ομιλία. Αυτό απαιτεί πολύ δουλειά, οπότε οι υπηρεσίες μετάφρασης μπορούν να επιταχύνουν τον χρόνο παράδοσης της εφαρμογής σας.
Φανταστείτε ότι δημιουργείτε ένα έξυπνο χρονόμετρο που χρησιμοποιεί τα Αγγλικά από άκρη σε άκρη, κατανοώντας προφορικά Αγγλικά και μετατρέποντάς τα σε κείμενο, εκτελώντας την κατανόηση γλώσσας στα Αγγλικά, δημιουργώντας απαντήσεις στα Αγγλικά και απαντώντας με ομιλία στα Αγγλικά. Αν θέλατε να προσθέσετε υποστήριξη για τα Ιαπωνικά, θα μπορούσατε να ξεκινήσετε μεταφράζοντας προφορικά Ιαπωνικά σε Αγγλικό κείμενο, να διατηρήσετε τον πυρήνα της εφαρμογής ίδιο και μετά να μεταφράσετε το κείμενο της απάντησης στα Ιαπωνικά πριν μιλήσετε την απάντηση. Αυτό θα σας επέτρεπε να προσθέσετε γρήγορα υποστήριξη για τα Ιαπωνικά και να επεκταθείτε στην πλήρη υποστήριξη Ιαπωνικών αργότερα.
💁 Το μειονέκτημα της εξάρτησης από τη μηχανική μετάφραση είναι ότι διαφορετικές γλώσσες και πολιτισμοί έχουν διαφορετικούς τρόπους να λένε τα ίδια πράγματα, οπότε η μετάφραση μπορεί να μην ταιριάζει με την έκφραση που περιμένετε.
Οι μηχανικές μεταφράσεις ανοίγουν επίσης δυνατότητες για εφαρμογές και συσκευές που μπορούν να μεταφράζουν περιεχόμενο που δημιουργείται από χρήστες καθώς δημιουργείται. Η επιστημονική φαντασία συχνά περιλαμβάνει "καθολικούς μεταφραστές", συσκευές που μπορούν να μεταφράζουν από εξωγήινες γλώσσες σε (συνήθως) Αμερικανικά Αγγλικά. Αυτές οι συσκευές είναι λιγότερο επιστημονική φαντασία και περισσότερο επιστημονικό γεγονός, αν αγνοήσετε το μέρος με τους εξωγήινους. Υπάρχουν ήδη εφαρμογές και συσκευές που παρέχουν μετάφραση σε πραγματικό χρόνο της ομιλίας και του γραπτού κειμένου, χρησιμοποιώντας συνδυασμούς υπηρεσιών ομιλίας και μετάφρασης.
Ένα παράδειγμα είναι η εφαρμογή για κινητά Microsoft Translator, που παρουσιάζεται σε αυτό το βίντεο:
Αποποίηση ευθύνης:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης Co-op Translator. Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν σφάλματα ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.