Difficultés à élever un assistant vocal. Le regard d'un linguiste et développeur

Travailler avec un assistant vocal est souvent comparé à élever un enfant. Il apprend constamment quelque chose, répétant après les "anciens". Maîtrise progressivement la langue et la capacité à construire la communication. Parfois, il comprend tout trop littéralement ou donne simplement quelque chose de maladroit. En effet, le traitement de la langue est un processus long et complexe qui nécessite l'attention de plus d'un spécialiste. Nous avons demandé à notre collègue linguiste-développeur Ivan et à l'ingénieur principal Bassel de partager des cas intéressants tirés de leur expérience avec Sky Voice Assistant. Nous avons posé aux deux experts les mêmes questions afin de découvrir pourquoi les mathématiques seules ne peuvent pas gagner lors du traitement d'une langue, comment les assistants vocaux apprennent à plaisanter et pourquoi.

De quoi êtes-vous responsable? Qu'est-ce qui est inclus dans votre domaine de responsabilité?


Linguiste

Je suis responsable de tout ce qui touche à l'aspect linguistique du travail de l'assistant vocal. Il s'agit d'une analyse des questions de l'utilisateur, de la planification de la logique de la réponse, de la recherche ou de la création de texte pour lui. De plus, j'ai développé certains services qui étaient fortement liés au texte (y compris la météo, les rappels, les actualités, les toasts, les jeux de mots) et collecté du contenu pour la formation. Cela inclut, par exemple, l'enregistrement de diverses voix pour activer une colonne.

Développeur

Je suis responsable du cerveau de notre chatbot. J'écris sa logique: comment il reçoit les questions, comment il répond, d'où il obtient les données, quels services fonctionneront en lui. Il s'agit d'un service de communication et d'une base de connaissances pour répondre à toutes vos questions. Il peut se tourner vers elle et lui dire quel temps il fait, quel est le taux de change du dollar, commander un taxi pour vous, régler une alarme, etc.

Pensez-vous que travailler avec un assistant vocal, c'est comme élever un enfant?


Linguiste

En ce qui concerne les enfants et l'apprentissage automatique, il y avait un très bon article sur Habré, et en général c'est une analogie populaire.

Mais le problème est que l'IA n'a aucune compréhension du contexte au-delà de ce qui est inclus dans l'ensemble de formation, même les connaissances les plus élémentaires du monde en dehors d'une tâche spécifique et des méthodes d'évaluation inhérentes telles que le goût et le bon sens manquent. Pour cette raison, les résultats sont souvent imprévisibles.

Développeur

Nous ne pouvons pas dire que l'assistant vocal est un enfant, car l'enfant a la capacité d'analyser et d'apprendre. L'assistant vocal est une chose plutôt stupide. Vous voulez qu'il fasse quelque chose, lui confiez la tâche, et c'est tout - il le fera.
Nous ne pouvons même pas considérer un neurone comme un enfant - en soi, il ne peut pas apprendre. Nous devons toujours lui montrer le chemin. L'intelligence artificielle dans ce sens ne joue un rôle que lorsque le neurone peut trouver des situations similaires à celles que vous lui avez enseignées. Je ne pense pas que ce soit généralement de l'intelligence, juste de grandes opportunités.

Quels cas amusants surviennent en travaillant avec lui?


Linguiste,

je vais répondre pour deux. Une fois que nous avons sélectionné des mots pour le jeu Alias, qui est basé sur la recherche de mots similaires («associations») en utilisant le modèle word2vec. Nous avons choisi très attentivement, il était impossible d'imaginer que les associations au mot «nombril» soient des expressions sexuelles sélectives bien au-delà des limites de la censure. Il semblerait que le mot soit si enfantin et soit utilisé dans des contextes complètement différents.
Apparemment, nous ne savons rien de notre assistant, ni du collecteur de texte pour le cas utilisé.

Encore une chose. Une fois, nous avons décidé d'ajouter à la liste des salutations et des adieux russes leurs analogues de différentes langues. Du «bonjour» habituel aux expressions arabes et juives. De nouveaux mots ont été indexés par notre algorithme de recherche pour des expressions similaires, mais il n'y en avait même pas près! En conséquence, la colonne a répondu à toute demande incompréhensible ou déformée: "As-salamu alaikum wa-rahmatu-Llah" . Lorsque vous entendez cela d'une voix de machine pourchassée en réponse à l'habituel «où sont les États-Unis?», C'est déroutant.

Et l'homonymie? Quand les mots sonnent de la même façon, mais ce sont deux mots complètement différents. Par exemple, un verbe et un substantif


Linguiste

Oui, c'est pénible pour toutes les personnes impliquées dans le traitement des langues. Cela arrive avec des phrases entières, elles ont longtemps été simplement gravées dans la pierre. Des exemples tels que "Il a vu leur famille de ses propres yeux." Est-ce une sorte de créature qui a sept yeux, et il les voit. Soit il a lui-même vu leur famille. Soit à un moment, il lui semblait que c'étaient ses sept yeux.

Un exemple plus simple: "Ces types d'acier sont dans l'atelier." Soit plusieurs types de matériaux «acier» sont disponibles dans l'atelier, soit certains travailleurs boueux ont commencé à travailler non seulement dans l'atelier, mais existent également. Autrement dit, l'homonymie est un très gros problème, non seulement au niveau des mots, mais aussi au niveau des phrases entières. Il existe également un problème au niveau de la similitude des formes de mots. Disons que les cas nominatifs et accusatifs d'un mot ont la même sonorité. Par conséquent, même une tâche apparemment aussi simple que la détermination de la forme d'un mot nécessite l'utilisation de packages complexes pour l'analyse. Et ces packages ne donnent jamais de réponse définitive. Ils ne peuvent donner que la probabilité d'une forme ou d'une autre.

Comment résolvez-vous de tels problèmes? Partagez Lifehacks


Linguiste

Oui, pas de trucs surtout. Sélectionnez très soigneusement les données sur lesquelles le modèle est formé et testez soigneusement tout.

Quant à l'homonymie, si nous essayons maintenant de recycler le modèle de manière à ce qu'il détermine la forme correcte d'un mot spécifique, il mettra des correctifs pour la solution imparfaite actuelle. Pour vraiment apprendre à travailler avec l'homonymie, il existe bien sûr des méthodes linguistiques, mais elles ne sont pas toujours et partout utilisées. Et ils y travaillent toujours. Pour la langue russe, la situation est bien pire que pour l'anglais, car nous avons beaucoup plus de formes de mots.

Développeur

Nous revoyons le dialogue, la logique de reconnaissance, nous voyons que l'assistant vocal ne l'a pas si bien compris. Parfois, vous devez ajouter une nouvelle boîte de dialogue. Il peut y avoir des situations où il a répondu à une question, la réponse à laquelle il ne savait pas du tout. L'histoire du développement aide.

Est-il vrai qu'Alice en Russie fonctionne mieux que ses prédécesseurs? Pourquoi?


Linguiste

Une évaluation assez subjective: Siri fonctionne également très bien.

Cependant, Alice est désormais l'assistante vocale la plus compétitive, car Yandex dispose d'une énorme quantité de ressources et de services pour étendre son potentiel. De plus, ils ont déjà la possibilité d'ajouter des services tiers, c'est-à-dire que tout développeur ou équipe peut ajouter certaines de leurs fonctions. Cela rend ses opportunités vraiment larges.

D'une part, il s'agit des ressources et de l'expérience de Yandex: elles sont engagées dans le traitement de la langue depuis très longtemps, elles ont elles-mêmes développé de nombreuses ressources pour l'extraction de données, l'analyse syntaxique et l'analyse de la forme des mots. Beaucoup de bons linguistes sont venus vers eux.

D'autre part, il combine et complète avec compétence les autres algorithmes de réseau classiques et neuronaux. C'est pourquoi elle peut comprendre des demandes claires et maintenir une conversation sur n'importe quoi.

N'oubliez pas que c'est, bien que très bon, mais une imitation de conversation.

Développeur

Bien sûr. Parce que chez Google, la logique principale est basée sur la langue anglaise, et nous sommes en Russie. À Yandex, des personnes travaillant sur un assistant vocal dont la langue maternelle est le russe. Il me semble qu'Alice va mieux maintenant et va aller mieux. Parce que les Russes travaillent sur la logique.
Ici, la question n'est pas dans l'algorithme, pas dans le développement. Voici le contexte, la logique et en général l'âme de cette évolution. Alice semble plus naturelle.

Pourquoi les mathématiques ne peuvent-elles pas gagner? Comment les compétences linguistiques vous aident-elles à travailler avec votre assistant vocal?


Les

programmeurs linguistes , comme les philosophes, ont probablement une illusion compréhensible, mais parfois dangereuse, qu'ils peuvent comprendre n'importe quel autre domaine à l'aide de leur appareil de connaissances. Autrement dit, il leur suffit de lire la documentation d'un module de traitement de langue et ils apprendront à travailler avec. Malheureusement, ce n'est pas entièrement vrai, car la langue est un système trop complexe. Même les linguistes eux-mêmes comprennent maintenant mal comment cela fonctionne.

Si nous approfondissons la recherche, il devient clair que le langage dans l'aspect cognitif (la façon dont il fonctionne généralement dans la tête, comment les pensées sont transformées dans notre discours) est très difficile à séparer de tous les autres niveaux. Afin de créer des systèmes de traitement vraiment intelligents, nous devrons en quelque sorte apprendre à formaliser ce côté et d'autres aussi.

Nous devions souvent attirer des recherches purement linguistiques. Par exemple, nous avons travaillé sur un module de traitement du temps, c'est-à-dire lorsqu'une personne dit: "Rappelle-moi de le faire au premier étage." Des difficultés sont apparues dans le traitement du mot minuit. Demain à minuit, c'est demain à 0 heures ou demain à 24 heures? Trouver la réponse à cette question sans recourir aux méthodes de la linguistique ou de la philologie est impossible. On ne pouvait que deviner le marc de café. Ils le disent ou non. L'étude a été que j'ai examiné le Corps national de la langue russe tous les cas d'utilisation du mot "minuit" avec des références horaires différentes, c'est-à-dire aujourd'hui / demain. Regardé ce que les gens avaient en tête. La marge était de 60% contre 40% en faveur du fait qu'aujourd'hui à minuit - demain à 0 heures.

Il est impossible, juste en regardant certains cas d'utilisation, sans savoir comment fonctionne le langage, de formuler une règle et une liste finale de façons de dire quelque chose. Pour une raison quelconque, vous pouvez dire un nombre infini de propositions. Essayer de régler tout cela avec des algorithmes finis est très difficile. Les systèmes qui n'utilisent pas d'analyse linguistique ne donneront jamais une précision de 100%.

Développeur

Le linguiste aide beaucoup. Il peut trouver un grand nombre d'options sur la façon dont les gens demandent quelque chose. De plus, faire fonctionner des machines est une chose dangereuse. Nous ne pouvons accepter aucune demande. Le linguiste nous aide à déterminer quelles seront ces questions, sous quelle forme, il aide à organiser les bonnes réponses. Il analyse également le texte, en retire des sujets qui ne valent pas la peine d'être abordés: politique, propos racistes, etc.

, ? , ?




Bien sûr, le traitement du langage est un problème interdisciplinaire. Et maintenant, et toujours il fallait attirer des spécialistes en psychologie et psycholinguistique, qui déterminent comment une personne comprend la langue. À un niveau plus profond, la recherche cognitive est également nécessaire maintenant. Parce que ce n'est que maintenant que nous avons des technologies qui nous permettent de suivre le fonctionnement du cerveau humain lors du traitement des erreurs de syntaxe telles que le mauvais ordre des mots et les erreurs sémantiques, comme lorsque quelque chose d'inattendu est dit, complètement inapproprié de sens. Et les résultats de ces études mettent en doute tout ce qui était auparavant considéré comme universellement reconnu en linguistique. Parce qu'il s'avère que ces erreurs sont gérées de manière très similaire, à la fois pour la langue, c'est-à-dire les informations vocales, et pour les vidéos ou les bandes dessinées,ou même pour la musique et toutes les séquences sonores. Autrement dit, le mécanisme de recherche d'erreurs dans la structure et le sens est universel pour toutes les informations qu'une personne perçoit. Ceci suggère qu'il est nécessaire de travailler sur l'analyse de la syntaxe et de la sémantique non pas dans le cadre du langage, mais dans le cadre de la perception générale de l'information.

Le développeur

Turing a déclaré: "Un ordinateur mériterait d'être appelé intelligent s'il pouvait tromper un humain en lui faisant croire qu'il était humain" - Un ordinateur ne peut être appelé intelligent que si vous ne comprenez pas qu'il s'agit d'une machine, pas d'une personne.

C'est en cela que les psychologues aideront à l'avenir. Nous ne dépendons pas seulement des mots. Les émotions ... comment une personne comprend est également importante. Une personne a cinq sens, au moins deux sont utilisés lors d'une conversation. Et l'assistant vocal a une seule source. Ce sont ses «oreilles».
Le psychologue peut travailler avec des développeurs qui analysent les signaux audio et nous aident à déterminer les émotions par la voix, pour comprendre si la personne est en colère ou de bonne humeur. Et en fonction de cela, déterminez quand l'assistant vocal doit plaisanter et quand - pour être sérieux. En tant que programmeurs, nous ne pouvons pas contrôler cela. Si nous disons «blague» à la voiture, elle le fera dans toute situation étrange. Par exemple, apprenez-lui la question "Que faire?" répondre "Enlevez votre pantalon et courez." Si l'utilisateur avant cette question dit que son père est décédé ou qu'il a rompu avec la fille, il n'est pas d'humeur, la machine ne prendra pas en compte toutes ces informations et fera une blague.

Puisque nous parlons de blagues, comment développer un sens de l'humour chez un assistant vocal?


Linguiste

Le sens de l'humour est un phénomène intrinsèquement humain qui aide à s'adapter aux changements, à endurer des difficultés, à renforcer l'interaction sociale et bien plus encore. Dans sa forme exacte, je pense que cela n'est guère nécessaire pour l'IA. La recherche dans ce domaine est en cours, mais il s'agit de comprendre et de simuler l'humour. Nous devons en quelque sorte expliquer à la voiture que les sacs en cuir lui font parfois des choses incompréhensibles - ils plaisantent - et attendent des blagues en retour.

Avec la compréhension, tout est très compliqué, donc je vais répondre à propos de l'imitation. Il existe deux solutions:

  1. utiliser des blagues créées par des personnes - spécialement écrites ou obtenues par le système lui-même à partir du corpus de textes;
  2. essayez de comprendre ce qui fait rire les gens (connexions sémantiques cachées, parallèles et inattendues, une combinaison de mots de différents champs sémantiques, inversion de casse et significations), et réalisez cela.

Il existe déjà des solutions techniques: les mêmes jeux de mots sont créés simplement sur la base de séquences de lettres communes. Le problème est toujours d'évaluer objectivement le résultat du travail et de dépasser en quelque sorte le seuil de 5 à 10% d'exemples ridicules.

En règle générale, l'IA ne plaisante pas ou n'est pas drôle, et des recherches complexes sont nécessaires pour changer la situation.
Le moyen le plus simple et le plus fiable d'ajouter de l'humour aux assistants vocaux consiste simplement à écrire des scripts ou, dans des cas extrêmes, une sorte de schéma de plaisanterie. Ensuite, nous pouvons les générer intelligemment pour une raison ou une autre. Je suis sûr que dans Yandex Alice, cela fonctionne souvent de cette façon. Beaucoup ont remarqué qu'Alice comprend les chansons et les blagues de la série The Witcher. Vous pouvez lui demander quelque chose comme «Comment payer le sorceleur?» Et elle plaisantera en retour. Ces éléments sont susceptibles d'être enregistrés manuellement.

Développeur

Un linguiste participe à la collecte de réponses qui peuvent être drôles. Il les recherche dans l'enceinte linguistique, puis ils se retrouvent dans la base de données de l'assistant vocal. Et, lorsque nous lui demandons de plaisanter, il trouve la bonne dans la base de données et fait une blague. Il peut aussi plaisanter spontanément s'il voit des situations similaires à celles sur lesquelles il a été formé. Tout dépend du contexte.

Pourquoi pensez-vous que les gens veulent un assistant vocal pour plaisanter?


Linguiste

Il me semble qu'il y a tellement de raisons pour lesquelles les gens veulent tellement y voir de l'humour. Un sens de l'humour est une qualité purement humaine. Ce qui nous rend humains. Voulant trouver l'humanité dans le chatbot, ils y recherchent un sens de l'humour. Cela peut être vu, même si vous regardez tous les exemples d'intelligence artificielle dans la culture: tout robot vraiment intelligent du film plaisantera.

Selon vous, quel assistant vocal est le plus adulte?


Linguiste

Si un adulte est vieux, c'est difficile à dire. La commande vocale est presque la même chose ancienne que la synthèse vocale, assez curieusement inventée au XVIIIe siècle. Ils y font face depuis le début du XXe siècle, et les premières solutions de travail sont apparues dans les années 1960 et se sont développées depuis. Des assistants vocaux intelligents ont été créés chez IBM dans les années 90 et ont atteint les smartphones en 2011.

Si un adulte est ennuyeux mais fiable, alors Siri. Il semble que les textes des réponses pour la langue russe y aient été récemment mis à jour, et il donne les réponses les plus correctes et sûres pour la réputation. Pratique pour une grande entreprise, mais pas non plus pour jouer. Il n'y a aucun moyen de discuter et de rassembler des dialogues plausibles comme dans Alice. Mais il n'a pas un tel objectif, car il s'agit d'un assistant vocal intégré dans un smartphone (ou dans n'importe quel équipement). Il a principalement une fonction utilitaire de tout contrôler. Je me souviens qu'au début, les réponses étaient encore plus intéressantes et controversées qu'aujourd'hui. Mais, apparemment, ils ont décidé que les gens avaient déjà assez joué avec un assistant vocal, et il était temps pour lui de devenir sérieux. Faites votre travail.

Alice est présente soit dans l'application, soit dans un produit distinct - dans une colonne. Là et là, il est important d'intéresser une personne pour qu'elle veuille acheter une colonne ou ouvrir une application. Une commande vocale sèche semblera ennuyeuse.

Développeur

Pas d'adultes. Tous les assistants vocaux avaient peu de connaissances, et maintenant il y en a plus. Ils ne se sont pas appris. Je me souviens à quel point Alice avait travaillé stupide il y a environ 3-4 ans. Mais chaque jour, elle allait mieux. Les développeurs ont surveillé des situations spécifiques et corrigé des erreurs, créé de nouveaux cas, des scripts. Les utilisateurs les ont aidés, ont noté certaines nuances. Yandex a de grandes ressources: il y a un moteur de recherche, il y a des serveurs et tout pour stocker des données.

Pourtant, il y a une opinion que Siri est le plus adulte, car il est informatif, mais il a moins de blagues, de jeux, etc. Êtes-vous d'accord?



Oui. Parce qu'ils jouent avec ce qui est fiable. C'est mieux que de répondre à 100 questions, mais 40 d'entre elles ont tort. Ils sont très soignés dans la conception. Ils veulent que l'assistant dise toujours quelque chose de bien et ne soit pas idiot comme Alice auparavant.

Résumer


Tout le monde ne prend pas en charge l'analogie entre l'apprentissage automatique et la parentalité.
La langue est sans fin. Un locuteur natif peut exprimer la même pensée dans un nombre infini d'énoncés. Sans utiliser des méthodes d'analyse linguistique, vous n'obtiendrez pas une précision de 100%.

La connaissance d'autres domaines contribue également à l'apprentissage automatique. La recherche cognitive et psycholinguistique aidera à comprendre comment le cerveau traite le traitement de l'information, en particulier, comment une personne comprend une langue afin de transférer ces connaissances à l'apprentissage automatique. Et pour résoudre les problèmes éthiques, les psychologues viendront à la rescousse.
Habituellement, les blagues sur l'IA ne sont pas drôles ou pas, mais les gens ont besoin de blagues! Par conséquent, la recherche dans ce domaine est en cours.

L'assistante vocale la plus puissante et la plus compétitive de Russie est Alice. Une conversation avec elle est proche d'une conversation avec une personne. Et le plus adulte (par ce mot, nous entendons l'accent non pas sur les moments de jeu, mais sur la fiabilité et la précision du traitement des demandes) - Siri.

All Articles