Le son devient des nombres
Un micro mesure la pression de l’air, des milliers de fois par seconde, et note chaque mesure sous forme de nombre. Un enregistrement n’est rien d’autre que ça : une très longue liste de nombres décrivant les mouvements d’une membrane.
La première chose que fait n’importe quel système de reconnaissance, c’est réduire cette liste. L’audio brut contient bien plus de détail que la parole n’en a besoin, donc le système le découpe en tranches courtes, généralement quelques centièmes de seconde chacune, et décrit chaque tranche par les fréquences présentes et leur intensité.
Le résultat est un résumé compact du son au fil du temps. Le volume, la hauteur et la forme du bruit, tranche par tranche. Que la personne semble fatiguée ou que la pièce ait un ronflement de fond reste visible là-dedans, et ça a son importance plus loin.
Le modèle cherche des formes déjà vues
Ce résumé part ensuite vers le modèle, la partie que les gens désignent quand ils disent reconnaissance vocale.
Un modèle est un gros fichier de nombres produit par un entraînement : on montre à un système beaucoup d’heures de parole enregistrée à côté du texte correct, et on ajuste ces nombres jusqu’à ce qu’il fasse correspondre l’un à l’autre de façon fiable. Personne n’écrit de règle du genre « cette forme veut dire un s ». La correspondance est apprise sur des exemples.
Ce qu’il produit n’est pas une certitude, c’est une vraisemblance. Pour chaque portion de son, le modèle a un avis sur les sons, puis sur les mots, qui ont été les plus probablement prononcés.
Le contexte travaille plus que tu ne le crois
Le son seul ne suffit pas, parce qu’énormément de mots se prononcent pareil. « Ces » et « ses ». « La mer », « la mère » et « le maire ». Rien dans le signal sonore ne les distingue.
Le français ajoute une difficulté que d’autres langues n’ont pas : une bonne partie des marques du pluriel ne s’entendent pas. « Le modèle vocal » et « les modèles vocaux » diffèrent nettement à l’écrit et à peine à l’oreille. Le système doit trancher à partir du reste de la phrase, jamais à partir du son du mot.
Il résout ça avec le contexte : les mots déjà produits rendent certains mots suivants bien plus probables que d’autres. Le système répond en fait à deux questions en même temps, à quoi ce son ressemblait-il et qu’est-ce qui aurait du sens ici, puis il combine les deux.
Cela explique une frustration courante. Dicte une phrase entière et elle sort juste. Dicte un mot inhabituel tout seul et il sort faux. Sans contexte, il n’y avait rien sur quoi s’appuyer, donc le son devait porter toute la décision.
Cela explique aussi pourquoi tes propres noms et ton jargon sont difficiles. Un modèle entraîné sur de la parole générale n’a jamais rencontré le nom de famille de ta collègue ni le sigle interne de ta boîte, donc il substitue quelque chose d’ordinaire qui sonne pareil. Voilà pourquoi ajouter des mots toi-même aide autant : tu fournis le contexte qui manquait.
Pourquoi les accents et le bruit sont durs
Les deux problèmes viennent du même endroit.
Un modèle reconnaît ce qu’il a beaucoup entendu. Si un accent donné était peu représenté dans la matière d’entraînement, le système a moins d’expérience sur laquelle s’appuyer et s’en tire moins bien. Ce n’est pas un jugement sur l’accent, c’est une conséquence de ce qu’on a montré au modèle.
Le bruit de fond est plus dur encore, parce que le micro capte la pièce en même temps que toi. La parole et le bruit arrivent mélangés dans les mêmes nombres, et le modèle doit démêler quelles portions étaient des mots. Un café, une voiture, un ventilateur, quelqu’un d’autre qui parle, tout cela se dispute les mêmes mesures.
Les gros modèles s’en sortent généralement mieux sur les deux points, parce qu’ils ont plus de capacité pour représenter les cas inhabituels. C’est la principale raison pratique pour laquelle la taille d’un modèle compte.
Où tourne le modèle, et pourquoi ça change tout
C’est l’embranchement de la route, et la seule décision dont tu ressentes vraiment les effets.
Le fichier du modèle peut vivre sur un serveur. Ton appareil enregistre, envoie, attend, et reçoit du texte. Les serveurs ont de la mémoire, du refroidissement et du matériel spécialisé, donc le modèle peut être très gros et très capable, et il peut être amélioré sans que tu lèves le petit doigt.
Ou le fichier peut vivre sur ton propre appareil. Rien n’est envoyé, rien n’est attendu, et la reconnaissance marche que tu aies du signal ou non. La limite, c’est ton matériel : un téléphone a quelques gigaoctets de mémoire partagés avec tout le reste, pas de ventilateur, et une batterie à ménager, donc le modèle doit être assez petit pour se charger vite et finir avant que tu t’impatientes.
Tout ce qui touche à la confidentialité, au fonctionnement sans réseau et à la vitesse découle de ce seul choix, et c’est pour ça qu’il faut le comprendre avant de choisir une app.
D’où vient la ponctuation
Presque plus personne ne dicte la ponctuation, donc le système doit l’inventer.
Il le fait à partir des deux mêmes sources que tout le reste : le son, où les pauses et l’intonation descendante suggèrent une frontière, et la langue, où la forme d’une phrase implique la place d’une virgule. Aucune des deux n’est concluante, ce qui explique que la ponctuation soit la partie qui a le plus souvent l’air un peu de travers même quand chaque mot est correct.
Cela explique aussi une habitude à prendre. Parler en phrases complètes avec des pauses naturelles donne au système les indices acoustiques dont il a besoin. Laisser une phrase en suspens, repartir au milieu d’une idée ou enfiler cinq propositions supprime exactement les signaux sur lesquels il comptait, et c’est la ponctuation qui se dégrade en premier.
Pourquoi la dictée paraît lente parfois
La reconnaissance ne peut généralement pas commencer avant qu’il y ait quelque chose à reconnaître. Beaucoup de systèmes attendent une pause naturelle, puis traitent ce qu’ils viennent d’entendre. Une phrase longue produit donc une pause à la fin, à peu près proportionnelle à ta durée de parole et à la taille du modèle.
Sur un téléphone, ça se voit franchement. Un petit modèle rend le texte plus tôt et se trompe de temps en temps ; un gros attend plus longtemps et vise plus juste. Aucun réglage ne donne les deux, et c’est bien pourquoi les apps proposent un choix de tailles.
Ce que ça veut dire au moment de choisir
Les conclusions pratiques qui en découlent ne coûtent rien.
Parle en phrases complètes plutôt qu’en mots isolés, parce que le contexte travaille plus que le son. Mets le micro raisonnablement près et à l’abri du vent, parce que le bruit se mêle au signal et ne s’en sépare plus ensuite. Et ajoute ton propre vocabulaire si l’app le permet, parce que c’est la seule partie du problème que tu peux corriger directement.
Une dernière chose qui fait trébucher
La reconnaissance travaille sur ce qui est arrivé au micro, pas sur ce que tu voulais dire. Si tu avales la fin d’un mot, si tu recommences une phrase à mi-chemin, ou si ta voix baisse pendant que tu te détournes du téléphone, les indices pour ces portions sont réellement plus faibles et le résultat s’en ressent.
Retiens-le, parce que c’est la seule variable entièrement sous ton contrôle, et elle fait d’ordinaire plus de différence que de changer d’app.
Le modèle tourne sur le téléphone
LocalType fait tourner le modèle sur le téléphone. C’est toute la décision de conception, et le reste du produit en découle : une dictée qui marche hors ligne, un audio qui n’est jamais transmis, et un choix de tailles de modèle pour que l’arbitrage entre vitesse et justesse te revienne plutôt qu’à nous. Les trois tailles, 60, 190 et 539 Mo, sont littéralement le compromis décrit plus haut, rendu réglable au lieu d’être décidé pour toi.
Cela veut dire aussi que les limites décrites plus haut s’appliquent à lui autant qu’à n’importe quoi d’autre. Un téléphone fait tourner un modèle plus petit qu’un serveur, la précision n’est pas identique sur les dix-huit langues qu’il traite, et une pièce bruyante reste une pièce bruyante.