Nous avons eu le plaisir de nous entretenir avec Yann Lechelle, directeur des opérations chez Snips, acteur de l’IA spécialisé dans les interfaces vocales embarquées. Retrouvez dans cet entretien une présentation complète de Snips et de son engagement pour le Privacy By Design.
Bonjour, mon nom est Yann Lechelle. Je suis le directeur des opérations chez Snips, une société basée à Paris, qui développe des technologies d’assistants vocaux.
Snips a une particularité, c’est que nous développons une technologie en propre, qui permet d’avoir une interface vocale telle qu’on s’attend à la voir, pour connaître ce que proposent Apple, Google et Amazon, mais notre particularité est que cette technologie vocale fonctionne en vocal.
C’est à dire qu’on a la discipline et la particularité de la faire fonctionner sur des ordinateurs embarqués, de toute petite taille et en toute autonomie.
Sur quelles technologies repose Snips ?
Les technologies logicielles sont des technologies que l’on connait sous le nom de Deep Learning pour une partie du modèle, en tout cas l’interprétation du modèle acoustique, c’est à dire ce que les humains vocalisent, on utilise évidemment des réseaux de neurones pour en extraire les phonèmes, et donc le texte. Ensuite on utilise des techniques plus traditionnelles de NLP et de NLU pour extraire l’intention de ce que les humains communiquent. Tout cela fonctionne sur des OS modernes : soit Linux, soit iOS, soit Android. Donc la technologie est tout à fait intégrable dans des solutions sur ce genre de plateformes, mais la puissance de calcul nécessaire pour faire tourner nos modèles n’est autre que celle d’un Raspberry par exemple : 1Ghz de processeur sur un seul coeur et 512Mo de RAM suffisent pour la partie Snips Flow, c’est à dire la totalité du langage naturel sur ce genre d’architecture. On fait aussi des assistants beaucoup plus simples qui fonctionnent sur des micro-controlleurs.
Vos modèles peuvent donc fonctionner à 100% en local ?
La plupart des acteurs dominants sont des acteurs Cloud, donc toutes les solutions qu’ils proposent sont dépendantes du Cloud. Chez Snips en réalité, on a une valeur très très forte qui est le Privacy By Design. Donc depuis le début on se dit : il faut que les données soient traitées différemment, notamment parce que la sphère personnelle qui est celle de la voix doit être traitée différemment. Donc le curseur est bien celui de la sphère personnelle, et donc, il faut très probablement traiter la voix en local, ce qu’on arrive à faire.
C’est contre intuitif, on se dit finalement : les modèles sont complexes et nécessitent des Gigas et des Gigas, ça doit tourner sur des serveurs…plus aujourd’hui. On a réduit les modèles par force de discipline et de de différentiant pour qu’ils tiennent sur ce genre de machine. Evidemment, dans le monde industriel on ne parle pas de Raspberry Pi, mais plutôt de processeurs chez NXP par exemple qui vend le MX8, qui a 2 à 4 coeurs, autour d’1Ghz ou pas beaucoup plus. On est capables d’avoir des intégrations industrielles, avec des performances qui sont celles qu’on attend d’un assistant vocal en langage naturel, mais notre particularité, c’est qu’on va le développer en B2B pour le use case de l’intégrateur.
Le vocabulaire pris en charge par Snips est-il donc plus limité ?
On peut parler de dictionnaire limité, mais en réalité, force est de constater qu’on est toujours déçus par les capacités des soit-disant assistants généralistes et des soit-disant ASR.
La question du vocabulaire est tout à fait particulière, il faut plutôt parler de contexte. Un assistant vocal, qui par exemple traite la totalité du vocabulaire d’un dictionnaire dans une langue donnée, va pouvoir traiter 40 000 – 60 000 mots. Or, certains use cases, comme la musique par exemple, nécessitent de traiter des centaines de milliers voire des millions d’articles dans un catalogue.
Donc la question est plutôt : quel est le contexte, et est-on capables d’avoir des performances industrielles sur la compréhension de ce que demande l’humain ? Et non pas, “peut-on tout transcrire et n’importe quoi ?”. Donc Snips est capable, sur ce genre d’architecture, d’avoir des vocabulaires très riches et résoudre (c’est documenté sur notre site web), les use cases les plus complexes, comme celui de la musique.
Vous proposez notamment de l’open source, quel est le Business Model de Snips ?
On a la volonté d’open sourcer les choses qui ne sont pas déterminantes dans notre business model. Donc on va vouloir avoir une approche très communautaire, justement, pour donner envie de travailler avec Snips.
La réalité, c’est qu’on a besoin aussi d’attirer des développeurs, qui se disent par défaut : ” Je vais travailler avec Google et Microsoft parce que je connais”. Ces acteurs sont très très très forts, puisqu’ils ont réussi à fédérer globalement tous les décideurs qui sont des développeurs. Donc Snips a une approche d’open sourcing, pour montrer que:
- on a une technologie qui est open source, qui est performante. D’ailleurs notre NLU a été open sourcé et il est l’un des plus compacts qui soit. Donc on peut faire tourner un NLU avec des performances extraordinaires sur des petites architectures.
- Notre business Model est évidemment commercial, mais des plus traditionnels qui soit. Danas le monde de l’embarqué, on vend une licence par objet, c’est le modèle de Windows 95. C’est un coût de licence par objet. Evidemment, c’est gratuit pour ceux qui développent et c’est gratuit pour ceux qui en font un usage non commercial.
Quelles compétences en programmation sont nécessaires pour mettre en oeuvre une interface vocale basée sur Snips ?
N’importe quel développeur peut intégrer le résultat des modèles d’IA qui sont générés par notre self-service web (on a une console qui est en accès libre et qui génère des modèles). On peut intégrer ces modèles dans du Linux, de l’iOS, de l’Android. Donc si l’on est développeur sur l’un de ces environnements, on est capable de télécharger soit une bibliothèque, soit des binaires et de faire fonctionner un assistant.
Maintenant, la réalité, c’est que développer un assistant vocal est de l’ordre de l’UX ( User Experience). Donc il faut que les personnes se penchent sur la conduite du projet pour aboutir à la meilleure expérience utilisateur. Donc les développeurs d’aujourd’hui ont une capacité fonctionnelle, mais la question est de savoir s’ils ont la capacité de rentrer dans l’usage du consommateur final, qui est un humain commun, c’est à dire Monsieur et Madame tout-le-monde si c’est du B2C, ou alors un professionnel si c’est du B2B. Et la manière d’intéragir avec une machine par le vocal est quelque chose de tout à fait inédit, tout à fait nouveau, donc il faut développer de nouvelles compétences.
Donc je pense que pour aboutir sur un projet, il faut bien évidemment le développeur qui a toute la palette pour intégrer l’assistant vocal dans le use case, mais il faut probablement des linguistes, peut être même des scénaristes et des product manager pour imaginer le use case.
A quelles verticales s’adresse Snips ?
Il y a plusieurs grandes verticales qui nous apparaissent comme évidentes. Par exemple l’industrie 4.0 qui se préoccupe de la productivité de l’opérateur. Aujourd’hui, on est tous dans l’évidence d’utiliser le clavier, le tactile. Mais le vocal, c’est quelque chose qui libère les mains.
On peut imaginer un radiologue, un chirurgien ou quelqu’un qui travaille sur une chaîne de maintenance, pouvoir profiter d’une interface vocale pour se libérer les mains. Imaginons même de combiner une interface vocale avec une interface de réalité augmentée. On ouvre le champ des possibles et l’humain est réellement augmenté, pour accomplir des tâches de plus en plus complexes. Donc ça c’est pour l’industrie 4.0.
Ensuite on a un tas de use cases dans l’électronique grand public. Toutes les télévisions pourraient être connectées. Elle peuvent avoir de l’android TV, mais que se passe-t-il si le constructeur de cet objet veut être indépendant de Google, veut que la télévision fonctionne indépendamment du cloud, in dépendamment des GAFA. On peut intégrer une interface vocale pour pouvoir dire “Allume la 12, monte le son, mets toit en pause pendant que je prends cet appel” etc.
Ces interfaces vocales ont vocation à être intégrées en mode endogène dans des objets destinés au grand public autant que pour des applications industrielles. On a une autre verticale qui est celle de la mobilité. Finalement, que ce soit pour des automobiles, des navires, des sous-marins, la technologie vocale embarquée fait beaucoup de sens.
Comment les performances de Snips se comparent-elles à celles de Google ou Amazon ?
On est capables de comparer nos performances aux autres technologies en B2B. Donc on ne compare pas Snips à un assistant vocal tel que Siri ou Alexa, car ces assistants ne sont pas ce que l’on propose nous.
Nous, on propose une technologie. Un opérateur Telecom pourrait par exemple pouvoir développer un assistant qui est lui même concurrent d’Alexa. En revanche, les technologies comparables, même si elles ne sont pas embarquées, alors que notre spécialité est d’être embarqué, sont par exemple l’ASR de Google, l’ASR de Microsoft, l’ASR de Nuance. Et puis quand on a l’ASR, il faut aussi compléter par le NLU, donc DialogFlow de Google, ou l’équivalent chez Microsoft, etc.
Donc ça, on est capables de le comparer, et on a publié un benchmark sur notre site web qui est très transparent sur la manière dont on a effectué ce benchmark, et qui montre qu’on est capables d’avoir des performances supérieures à ce que les modèles cloud proposent, ce qui peut paraitre contre-intuitif et qui est rassurant pour nous.
Notre approche embarquée nous permet d’avoir un modèle contextuel, par usage, par utilisateur, par contexte fini, alors que les technologies cloud n’ont pas de contexte et ont une approche qui est centralisée et une taille pour tous. Donc en fait, ce modèle est toujours inférieur et va devoir se rattraper côté NLU parce qu’il aura mal entendu pour manque de contexte. Snips ayant un modèle local, on aura un contexte plus fin, et donc une écoute affinée avec un taux d’erreur qui sera plus faible.
Quelles sont les actualités de Snips ?
Au CES 2019, où nous avons d’ailleurs remporté le prix de l’embarqué, et à la conférence Embedded World aussi, on a lancé 3 produits qui sont :
Snips Flow, c’est un peu notre produit historique et le meilleur, c’est à dire celui qui permet de proposer une expérience en langage naturel complet sur Micro-processeur.
On a lancé aussi Snips Commands, qui fonctionne cette fois-ci sur Micro-controlleur. L’objectif étant d’offrir une interface vocale simplifiée, mais à des coûts embarqués qui sont de l’ordre de quelques euros. C’est un produit qui est très différent, puisque c’est un produit qui n’est pas encore du langage naturel, on est plutôt sur des commandes vocales mais nous travaillons sur la phase d’après évidemment.
Nous avons égalaement lancé Snips Satellite, qui est une manière de créer de petits satellites dans la maison, qui travaille avec un Snips Flow, et permet de distribuer l’interface vocale dans un périmère circonscrit, donc une maison ou un espace collectif.
A titre personnel, quelle est la dernière évolution par laquelle vous avez été bluffé en terme d’IA ?
J’essaye de beaucoup démystifier l’IA, parce que c’est tout de même, à la fois du fantasme qui nous est proposé par la science fiction Hollywoodienne ou même la littérature de science fiction. L’IA serait cette entité malveillante qui nous voudrait du mal. Il n’y a guère qu’un film qui en parle bien, c’est plutôt Her, de Spike Jones.
Pour moi l’IA, c’est ni plus ni moins qu’une collection d’algorithmes qui nous permet de programmer différemment sur des environnements à géométrie variable. Donc tout ce qui est vision évidemment se prête bien à l’IA, la voix évidemment : on est dans la captation de signaux variables avec beaucoup d’amplitude de variation, donc les réseaux de neurones sont particulièrement bien ajustés.
Ce qui m’étonne, c’est l’adoption par certains pays, par exemple la Chine, qui développe des technologies d’IA qui en soi ne sont pas une révolution, mais qui au niveau de la société, créent un modèle tout particulier. Donc la Chine risque d’aller très très très vite car ils n’ont pas de contraintes sur l’exploitation de l’IA, notamment sur le contrôle de la foule.
Ce n’est pas quelque chose qui me surprend d’un point de vue technologique, mais c’est quelque chose qui me surprend du point de vue de l’usage, parce que ça va leur donner une avance particulière sur le comportemental, et peut être même un pouvoir trop puissant sur les individus. Donc je me méfie de l’homme qui va utiliser l’IA à des fins qui seraient peut être détrimentale à l’humain.
Comment peut-on faire face à ces dérives selon vous ?
Loin de moi l’idée de commenter sur la politique intérieure de la Chine. Snips en tout cas a une réponse toute claire, toute faite : En ce qui concerne l’interprétation du vivant dans une sphère domestique, alors le Privacy by Design est nécessaire. Il faut tirer une ligne, tracer et délimiter l’exploitation des Data. Cette limite, c’est justement les murs de chez moi.
Ce Privacy by Design impose un traitement côté Edge et pas côté Cloud. C’est notre réponse est c’est aussi ce vers quoi les GAFA vont devoir tendre tôt ou tard. Il faut distinguer l’IA qui interprête et l’IA qui transactionne.
En réalité, quand je dis à ma lampe : “Allume-toi”, il n’y a aucune raison que ma voix aille à Seattle et revienne pour allumer ma lampe. Il faut que ce soit traité localement.
Donc aujourd’hui, je pense qu’il y a une certaine facilité et négligence de la part des opérateurs nationaux, des régulateurs qui n’ont pas encore compris l’enjeu, et des citoyens qui se disent : “c’est magique, je vais acheter tel ou tel smart speaker”.
Il n’est pas smart, c’est Amazon qui est smart, c’est Apple qui est smart, c’est google qui est smart. Le speaker en lui même n’est qu’un amoncellement de plastique et de quelques microphones. Ce qui est intéressant, c’est de voir comment on peut créer un environnement de transaction homme-machine qui est serein, et aujourd’hui on n’y est pas.