Un article technique très intéressant publié le 1er octobre sur le blog Apple Learning Journal d'Apple est passé inaperçu jusqu'à aujourd'hui.
Dans ce document, Apple explique en détail comment la fonctionnalité non liée «Hey Siri» tire parti du matériel, des logiciels et de la puissance d'iCloud pour permettre aux clients d'utiliser leur assistant mains libres.
Le système associe la reconnaissance vocale basée sur le cloud, l'interprétation en langage naturel et d'autres services au traitement sur appareil assisté par matériel. Un appareil iOS exécute en permanence «un très petit identificateur vocal», qui n'écoute que la phrase «Hey Siri».
Le microphone de votre iPhone ou Apple Watch enregistre 16 000 flux d'échantillons de forme d'onde instantanés par seconde. Voici pourquoi cela n'impose pas beaucoup la batterie de votre iPhone ou monopolise d'autres ressources système, comme la RAM et le CPU:
Pour éviter d'exécuter le processeur principal toute la journée juste pour écouter la phrase de déclenchement, le coprocesseur permanent de l'iPhone (AOP, qui est un processeur auxiliaire de faible puissance intégré au coprocesseur de mouvement Apple de la série M) a accès au signal du microphone sur votre iPhone 6s et versions ultérieures.
Nous utilisons une petite proportion de la puissance de traitement limitée de l'AOP pour faire fonctionner un détecteur avec une petite version du réseau neuronal. Lorsque le score dépasse un seuil, le coprocesseur de mouvement réveille le processeur principal, qui analyse le signal à l'aide d'un réseau neuronal plus grand.
En raison de sa batterie beaucoup plus petite, Apple Watch exécute le détecteur «Hey Siri» uniquement lorsque son coprocesseur de mouvement détecte un geste de remontée du poignet, ce qui allume l'écran - c'est pourquoi vous ne pouvez pas utiliser «Hey Siri» sur Apple Watch lorsque l'écran est éteint.
WatchOS alloue «Hey Siri» environ cinq pour cent du budget de calcul limité.
Alors, comment reconnaissent-ils la véritable phrase chaude "Hey Siri" en temps réel?
Une fois capturée par votre appareil, la forme d'onde est décomposée en une séquence d'images, chacune décrivant le spectre sonore d'environ 0,01 s. Une vingtaine de ces images à la fois (0,2 seconde d'audio) sont transmises au réseau neuronal profond.
Là, le son est converti en une distribution de probabilité sur un ensemble de classes de sons de la parole: celles utilisées dans la phrase "Hey Siri", plus le silence et d'autres paroles, pour un total d'environ 20 classes de sons. Il calcule ensuite un score de confiance que la phrase que vous avez prononcée était «Hey Siri».
Si le score est suffisamment élevé, Siri se réveille.
Sur iPhone, ils utilisent un réseau de neurones pour la détection initiale (fonctionnant sur la puce de mouvement à consommation d'énergie) et un autre comme vérificateur secondaire (fonctionnant sur le processeur principal). Pour réduire les faux déclencheurs, Apple compare également tous les nouveaux énoncés «Hey Siri» avec les cinq phrases enregistrées sur l'appareil pendant le processus d'inscription «Hey Siri».
«Ce processus réduit non seulement la probabilité que« Hey Siri »prononcé par une autre personne déclenche votre iPhone, mais réduit également la vitesse à laquelle d'autres phrases similaires semblent déclencher Siri», explique le document de recherche.
L'appareil télécharge également la forme d'onde sur le serveur Siri.
Si le principal identificateur de parole fonctionnant dans le cloud l'entend comme autre chose que «Hey Siri» (par exemple «Hey sérieusement», «Hey Syrie» ou quelque chose du genre), le serveur envoie un signal d'annulation au téléphone pour le remettre à sommeil.
«Sur certains systèmes, nous exécutons une version simplifiée de la reconnaissance vocale principale sur l'appareil pour fournir une vérification supplémentaire plus tôt», note Apple. Je suppose que par «certains systèmes», ils signifient des appareils connectés à l'alimentation, comme les Mac, les Apple TV et peut-être même les iPads.
Sur la photo ci-dessus: le motif acoustique lorsqu'il se déplace à travers le détecteur «Hey Siri», avec un spectrogramme de la forme d'onde du microphone montré tout en bas. Le score final, affiché en haut, est comparé à un seuil pour décider d'activer ou non Siri.
Le seuil lui-même est une valeur dynamique car Apple veut permettre aux utilisateurs d'activer Siri dans des conditions difficiles - s'il manque un véritable événement "Hey Siri", le système entre dans un état plus sensible pendant quelques secondes. La répétition de la phrase pendant ce temps déclenchera Siri.
Et voici comment ils ont formé le modèle acoustique du détecteur «Hey Siri»:
Bien avant la fonctionnalité Hey Siri, une petite proportion d'utilisateurs disait «Hey Siri» au début d'une demande, après avoir commencé en appuyant sur le bouton. Nous avons utilisé de tels énoncés «Hey Siri» pour l'ensemble de formation initiale pour le modèle de détecteur anglais américain.
Nous avons également inclus des exemples de discours généraux, tels qu'ils sont utilisés pour la formation du reconnaissance vocale principal. Dans les deux cas, nous avons utilisé la transcription automatique sur les phrases de formation. Les membres de l'équipe Siri ont vérifié l'exactitude d'un sous-ensemble des transcriptions.
Le modèle acoustique en anglais américain prend même en compte différentes premières voyelles dans «Siri», l'une comme «grave» et l'autre comme «Syrie».
La formation d'un modèle prend environ une journée et il y a généralement quelques modèles en formation à la fois. Ils entraînent généralement trois versions: un petit modèle pour le premier passage sur la puce de mouvement, un modèle de plus grande taille pour le deuxième passage et un modèle de taille moyenne pour Apple Watch.
Et la dernière friandise: le système est formé pour reconnaître aussi les phrases «Hey Siri» localisées.
Par exemple, les utilisateurs francophones disent «Dis Siri». En Corée, ils disent «Siri 야», qui ressemble à «Siri Ya». Les utilisateurs russophones utilisent la phrase «привет Siri» (sonne comme «Privet Siri») et en thaï «หวัด ดี Siri» (sonne comme «Wadi Siri»).
«Nous avons réalisé des enregistrements spécialement dans diverses conditions, comme dans la cuisine (proche et éloignée), la voiture, la chambre et le restaurant, par des locuteurs natifs de chaque langue», explique Apple..
Ils utilisent même des podcasts et des entrées Siri dans de nombreuses langues pour représenter à la fois les sons de fond (en particulier la parole) et les «types de phrases qu'un utilisateur pourrait dire à une autre personne».
"La prochaine fois que vous direz" Hey Siri ", vous penserez peut-être à tout ce qui se passe pour que cette réponse se produise, mais nous espérons que cela" fonctionne "," résume bien Apple..
L'article hautement technique fournit un aperçu fascinant de la technologie «Hey Siri» que nous tenons pour acquise, alors assurez-vous de la lire ou de l'enregistrer pour plus tard si vous souhaitez en savoir plus.