Application mobile et intelligence artificielle : comment ça marche ?

Application mobile et intelligence artificielle : comment ça marche ?

Application mobile et intelligence artificielle : comment ça marche ?

Tribune

8 min

Mickaël Peyrot

Directeur conseil technique

Mickael Peyrot

Mickaël Peyrot

Directeur conseil technique

Mickael Peyrot

Mickaël Peyrot

Directeur conseil technique

Mickael Peyrot

Vous pouvez maintenant proposer des applications mobiles avec de l’Intelligence Artificielle.

En intégrant plusieurs technologies, logiciels et matériels, dans son dernier iPhone et dans iOS 11 disponible depuis septembre 2017 pour des centaines de millions d’utilisateurs, Apple permet aux entreprises d’intégrer de l’Intelligence Artificielle dans leurs applications si elles savent choisir et entraîner les modèles prédictifs proposés. Insign revient sur ces solutions et vous accompagne.

↳ Intelligence Artificielle : où en est-on ?

(R)établissons d’emblée quelques vérités. On ne peut pas parler de réelle Intelligence Artificielle (IA forte) avant un long moment. Les fantasmes journalistiques1 et l’esbroufe commerciale des sociétés qui le promettent, sont au mieux abusifs, sinon mensongers.
Il est plus sérieux de parler d’algorithmes créés par l’humain.

« L'évolution, ce sera de faire réfléchir les machines et ça moi je ne sais pas le faire », Luc Julia (le créateur de Siri)

L’Intelligence Artificielle est un véritable sujet scientifique, vaste et déjà ancien. Fortement corrélé aux mathématiques (c’est Cédric Villani qui prend en charge ce sujet pour la France), le sujet devient très vite ardu techniquement.

Pour autant, certaines disciplines de l’Intelligence Artificielle deviennent plus accessibles, comme désormais le Machine Learning.

Apple vient de mettre à disposition dans les iPhone2 et iPad, des solutions pour en démocratiser l’usage. Mais pour quoi faire et comment ?

↳ Qu'est-ce que le machine learning sur smartphone ?

Le Machine Learning, ce n’est ni de la voyance, ni de la divination. Sous cette appellation se trouvent des méthodes scientifiques qui s’appuient sur des modèles mathématiques, parfois empruntés à la biologie3. Ces algorithmes analysent des données pour réaliser des identifications et des classements.
Ce sujet fait le buzz, or ces algorithmes sont connus depuis plusieurs dizaines d’années et vous en faites déjà l’expérience dans votre quotidien :

  • Estimation du prix d’une maison en fonction de ses caractéristiques sur un site immobilier ;

  • Calcul du risque d’accident et des tarifs de votre assurance ;

  • Filtrage des e-mails « spam » de votre logiciel ou fournisseur.

Ce qui change cependant très rapidement, c’est l’extension de ces traitements à de nouvelles données (textes, audio, photos, localisation, vidéo, capteurs IoT) et la disponibilité d’immenses puissances de stockage et de calcul pour proposer de nouveaux usages moins verticaux, moins « industriels ».
Cette puissance de calcul disponible (dans le Cloud et avec des coûts qui baissent) et l’abondance de données renforcent les capacités et la précision d’un modèle pour :

  • Définir le contenu d’une image sur le web ou prise en photo avec votre smartphone : distinction (chien ou chat), identification (café ou restaurant), classement (nombre, ordre, plans)... Pour nous Insign, c’est la possibilité sur un site e-commerce de monter n’importe quelle photo pour en acheter les vêtements par exemple ;

  • Déterminer le risque d’occurrence d’une panne sur une machine en fonction de paramètres exogènes (météo, événements, usagers, ...) ; très utile désormais avec l’essor des objets connectés pour incarner vos services auprès de vos clients ;

  • Prédire le prochain mot sur un clavier en fonction du contexte (interlocuteur et historique de la relation, émotion mesurée, ...).
    Ce qui est nouveau, c’est qu’Apple (et Google avec une autre approche4) met à disposition des entreprises une solution de Machine Learning embarquée sur smartphones.
    Et dans ce domaine, plusieurs axes d’usage du Machine Learning nous semblent particulièrement intéressants à suivre car “accessibles” pour vous.
    Au-delà des reconnaissances visuelle et vocale, la valeur ajoutée du Machine Learning au sein d’une application pourrait bien se trouver dans le Context Aware Computing (tout message – qu’il soit audio, vidéo, photo, textuel – est adapté en temps réel à l’interlocuteur, au lieu, à la temporalité, au contexte,... en fonction des règles « apprises »).
    Il s’agit d’adapter un service à toute une série de données environnementales : l’utilisateur et ses données historiques connues, mais aussi ce qu’il porte comme vêtement, son visage, ses émotions, le lieu, la température, les personnes autour de lui, ses actions précédentes,... L’ensemble de ces données aura auparavant été modélisé pour fournir à l’algorithme une base de reconnaissance et de sélection de la meilleure réponse.
    Navigation dans un catalogue produit : recherche assistée, sélection de tendances, ciblage des promotions, téléchargement prédictif sur mobile, ordonnancement des images affichées, recommandation de produits en cross et up-selling ne se basent plus sur des règles métier mais sur la constatation de l’usage de chaque client.

↳ CoreML : la technologie machine learning sur iOS

Derrière ce nom, CoreML, on trouve un kit logiciel d’Apple pour exécuter de façon optimisée des algorithmes basés sur des modèles de Machine Learning.

L’exécution des calculs et le stockage de données se font sur le smartphone. Cela permet un temps de traitement rapide sans connexion à un serveur et va certainement être un élément de valorisation de vos services face aux inquiétudes sur la protection des données personnelles.

Le champs des possibles a servi, dans le Cloud à accoucher d’une matrice universelle qui permet localement une analyse et un classement rapides sans avoir besoin d’une connexion pour faire transiter massivement des données.

En fonction des applications visées, Apple propose d’utiliser différents types de modèles de Machine Learning. Certains sont supportés par défaut, d’autres peuvent être importés.

Insign adopte l’approche « Best of breed » pour sélectionner l’algorithme le plus adapté et performant pour le besoin.


Model type Supported models Applications Scripts Neural networks/réseaux neuronaux Feedforward (convolutional), recurrent Reconnaissance d’images, traitement du langage naturel, mécanismes de recommandation (musique par ex.) Caffe v1
Keras 1.2.2+ Tree ensembles/ensemble d’arbres de décision Random forests, boosted trees, decision trees Détection de sensibilité d’une population à une offre scikit-learn 0.18
XGBoost 0.6 Support vector machines/Machines à vecteurs de support Scalar regression, multiclass classification
Catégorisation, classification (images), reconnaissance de formes scikit-learn 0.18
LIBSVM 3.22 Generalized linear models Linear regression, logistic regression Estimation de prix personnalisée
Détection du « Churn » scikit-learn 0.18 Feature engineering Sparse vectorization, dense vectorization, categorical processing Conception produit par extension d’un existant scikit-learn 0.18 Pipeline models   Sequentially chained models scikit-learn 0.18


L’utilisation de modèles existants réduit les temps de développements. Apple propose des outils pour convertir des modèles pour CoreML, les modèles sont réutilisables ailleurs dans l’entreprise. Quelques modèles prêts à l’emploi sont également disponibles, notamment pour la détection d’objets sur des images par exemple.

Autre nouveauté, ces développements ne sont pas réservés aux développeurs mobiles, ils sont conçus dans des langages accessibles au plus grand nombre (Python par exemple ou C++) : ainsi les développeurs qui travaillent sur des sites web, des applications métiers, des modèles statistiques, ... peuvent travailler avec ces modèles.

Mais il reste à mobiliser deux autres piliers du Machine Learning qu’Apple ou Google ne peuvent pas vous offrir : l’humain (pour fixer les objectifs & paramétrer) et la data (pour entraîner les modèles).

Insign vous accompagne pour identifier les améliorations que le Machine Learning peut apporter à votre business sous forme d’audit de votre existant et d’une recommandation de Stratégie Data intégrant le training du modèle avec vos données : « Train Your Model ».

↳ Le machine learning nécessite une phase d'apprentissage

Afin de pouvoir décider, la machine doit apprendre ...

Cette technologie fonctionne de la manière suivante : à partir de données « connues », on va entraîner le modèle par itérations. A chaque itération, la qualité des prévisions obtenues est testée (sur un jeu de données « témoin »). Si l’erreur de prévision est importante, on fait varier certains paramètres de l’algorithme. Les itérations s’arrêtent quand l’erreur de prévision ne baisse plus et le modèle est implémenté en production ; la machine a appris des « patterns » et est en mesure de détecter très efficacement les cas similaires.


A date peu de méthodes permettent aux algorithmes de se re-paramétrer ensuite de manière autonome (sauf le Reinforcement ML : qui détermine automatiquement le comportement idéal dans un contexte spécifique). Il faut donc régulièrement enrichir l’entraînement du modèle ; l’analyse des logs que nous faisons permet de le faire.

L’apprentissage autonome n’est pas encore une réalité. La plupart des bots proposés aujourd’hui « prêt à l’emploi » sont basés sur des questions pré-programmées.

Insign vous accompagne dans l’apprentissage de vos algorithmes car si votre marque participe aux conversations (business conversationnel), c’est à vous de gérer cette production de contenus.

 

Insights
Insights
Insights
Décider c’est votre métier. Le nôtre,
c’est de vous donner les moyens de le faire.
Décider c’est votre métier. Le nôtre,
c’est de vous donner les moyens de le faire.
Décider c’est votre métier. Le nôtre,
c’est de vous donner les moyens de le faire.