Visualisation représentant l'encodage phonétique des initiales Pinyin. Crédit :IBM
Effectuer la gymnastique mentale consistant à faire la distinction phénétique entre des mots et des phrases tels que « Je suis entendu » à « Je suis là » ou « Je ne peux pas mais des tonnes » à « Je ne peux pas coudre de boutons, " est familière à tous ceux qui ont rencontré des messages texte corrigés automatiquement, messages chétifs sur les réseaux sociaux et autres. Bien qu'à première vue, il puisse sembler que la similarité phonétique ne puisse être quantifiée que pour les mots audibles, ce problème est souvent présent dans des espaces purement textuels.
Les approches d'IA pour l'analyse et la compréhension du texte nécessitent une entrée propre, ce qui à son tour implique une quantité nécessaire de pré-traitement des données brutes. homophones et synophones incorrects, qu'il soit utilisé par erreur ou par plaisanterie, doit être corrigé comme toute autre faute d'orthographe ou de grammaire. Dans l'exemple ci-dessus, transformer avec précision les mots « entendre » et « donc » en leurs équivalents corrects phonétiquement similaires nécessite une représentation robuste de la similitude phonétique entre les paires de mots.
La plupart des algorithmes de similarité phonétique sont motivés par des cas d'utilisation anglais, et conçu pour les langues indo-européennes. Cependant, de nombreuses langues, comme le chinois, ont une structure phonétique différente. Le son de la parole d'un caractère chinois est représenté par une seule syllabe en pinyin, le système officiel de romanisation du chinois. Une syllabe pinyin se compose de :une initiale (facultative) (telle que 'b', 'zh', ou 'x'), une finale (comme 'a', 'vous', 'wai', ou « yuan ») et le ton (il y en a cinq). La mise en correspondance de ces sons vocaux avec des phonèmes anglais donne une représentation assez imprécise, et l'utilisation d'algorithmes de similarité phonétique indo-européens aggrave encore le problème. Par exemple, deux algorithmes bien connus, Soundex et Double Métaphone, indexer les consonnes en ignorant les voyelles (et n'avoir aucune notion de tons).
Pinyin
Comme une syllabe pinyin représente en moyenne sept caractères chinois différents, la prépondérance des homophones est encore plus grande qu'en anglais. Pendant ce temps, l'utilisation du Pinyin pour la création de texte est extrêmement répandue dans les applications mobiles et de chat, à la fois lors de l'utilisation de la synthèse vocale et lors de la saisie directe, car il est plus pratique de saisir une syllabe Pinyin et de sélectionner le caractère souhaité. Par conséquent, les erreurs de saisie phonétiques sont extrêmement courantes, mettant en évidence la nécessité d'un algorithme de similarité phonétique très précis sur lequel on peut s'appuyer pour corriger les erreurs.
Motivé par ce cas d'utilisation, qui se généralise à de nombreuses autres langues qui ne rentrent pas facilement dans le moule phonétique de l'anglais, nous avons développé une approche pour apprendre un encodage phonétique n-dimensionnel pour le chinois, Une caractéristique importante du pinyin est que les trois composantes d'une syllabe (initiale, finale et ton) doivent être considérés et comparés indépendamment. Par exemple, la similitude phonétique des finales "ie" et "ue" est identique dans les paires Pinyin {"xie2, " "xue2"} et {"lie2, " "lue2"}, malgré les initiales différentes. Ainsi, la similitude d'une paire de syllabes pinyin est une agrégation des similitudes entre leurs initiales, finales, et des tons.
Cependant, contraindre artificiellement l'espace d'encodage à une faible dimension (par exemple, indexation de chaque initiale à une seule catégorie, ou même valeur numérique) limite la précision de capture des variations phonétiques. La bonne, L'approche data-driven est donc d'apprendre organiquement un codage de dimensionnalité appropriée. Le modèle d'apprentissage dérive des encodages précis en considérant conjointement les caractéristiques linguistiques du pinyin, tels que le lieu d'articulation et les méthodes de prononciation, ainsi que des ensembles de données d'entraînement annotées de haute qualité.
Démontrer une amélioration de 7,5 fois par rapport aux approches de similarité phonétique existantes
Les encodages appris peuvent donc être utilisés pour, par exemple, accepter un mot en entrée et renvoyer une liste classée de mots phonétiquement similaires (classés par similarité phonétique décroissante). Le classement est important car les applications en aval ne s'adapteront pas pour prendre en compte un grand nombre de candidats de remplacement pour chaque mot, surtout lors de l'exécution en temps réel. Comme exemple du monde réel, nous avons évalué notre approche pour générer une liste classée de candidats pour chacun des 350 mots chinois tirés d'un ensemble de données de médias sociaux, et a démontré une amélioration de 7,5 fois par rapport aux approches de similarité phonétique existantes.
Nous espérons que les améliorations apportées par ce travail pour représenter la similarité phonétique spécifique à la langue contribuent à la qualité de nombreuses applications multilingues de traitement du langage naturel. Ce travail, dans le cadre du projet IBM Research SystemT, a récemment été présenté à la conférence SIGNLL 2018 sur l'apprentissage numérique du langage naturel, et le modèle chinois pré-entraîné est disponible pour les chercheurs à utiliser comme ressource dans la création de chatbots, applications de messagerie, correcteurs orthographiques et toute autre application pertinente.