Brian Jackson - Fotolia
Quand choisir un moteur de règles ou le machine learning
Le choix entre un moteur de règles et un algorithme de machine learning dépend de la complexité de la tâche décisionnelle à accomplir et du niveau d'expertise des équipes en interne.
Pour les organisations qui créent et mettent en œuvre des systèmes décisionnels, le choix entre les outils basés sur des règles et ceux basés sur l'apprentissage machine est essentiel pour la commodité d'utilisation, la compatibilité et le cycle de vie des applications.
Un moteur de règles permet d'obtenir des résultats rapidement sans déployer d'IA, mais un investissement dans le machine learning doit grandement accélérer les tâches complexes. Les entreprises doivent comprendre les différences fondamentales entre les deux, leurs avantages individuels et leurs limites avant de tirer parti de l'un ou l'autre.
Les différences entre un moteur de règles et un modèle de machine learning
Le fonctionnement des systèmes basés sur des règles dépend de mécanismes conçus en amont de leur déploiement. Tout d'abord, une liste de règles est créée, souvent par un développeur interne, puis un moteur d'inférence ou un moteur de raisonnement sémantique effectue un cycle de correspondance, de résolution et d'action, en mesurant les informations à prendre en compte en fonction de ces règles. Ici, les connaissances humaines sont encodées sous forme d’arbre de décision à partir d’énoncés composés de « si » et « ensuite » pour une règle spécifique. C’est le même principe qu’applique IFTTT, le populaire moteur de chaînes d’instructions.
Par exemple, avec un moteur de règles, les informations personnelles et financières d'un client d'une banque peuvent être mesurées par rapport à un ensemble de critères programmés. Si les chiffres correspondent aux attentes de l’établissement, il peut accorder un prêt à un demandeur.
« Dans le cadre de ce scénario, les informations du client passent par un processus d'analyse créé par un humain et basé sur des règles commerciales fournies aux développeurs », constate Gus Walker, directeur principal de la société spécialisée dans l'IA, Veritone, basée à Costa Mesa, en Californie.
À l'autre extrémité du spectre se trouve le machine learning. Ici, le processus de décision n’est pas codé manuellement, il est créé en sélectionnant un modèle d'IA approprié et en l'entraînant avec un très large volume de données, indique Gus Walker. L'algorithme analyse l'ensemble de données et détermine leurs relations. La logique qui sous-tend la décision est intégrée dans l'algorithme et n'a pas été codée par un humain. Le modèle de machine learning apprend à partir des informations à sa disposition, créant ainsi une relation cohérente entre les données en entrée et celles en sortie, au moment de l'inférence.
Un processus de décision à réfléchir
Le choix entre un moteur de règles et des algorithmes de machine learning dépend des besoins organisationnels. Différents systèmes décisionnels créent différents types d'action, d'analyse ou d'intuition.
Un moteur de règles n'apprend pas, il applique à la lettre les instructions qui lui ont été données. L'algorithme peut lui s'instruire sous la supervision d'une équipe de data science. L'apprentissage machine est conçu pour traiter des questions complexes et exigeantes dans un environnement relativement variable, tandis qu'un moteur de règles doit éviter le manque de transparence que peuvent provoquer certains algorithmes de machine learning et de deep learning. Par ailleurs, l'adaptabilité et la rapidité des systèmes d'intelligence artificielle ont un coût. Ils nécessitent énormément de données - des centaines de milliers d'enregistrements - afin de faire des prévisions précises.
« Le machine learning n'est applicable que pour les cas d'usage en grand volume, comme la qualification de prospects ou les réponses automatiques du service clientèle », estime Jeff Grisenthwaite, vice-président des produits chez Catalytic. « Le machine learning est également mieux adapté aux situations qui présentent un grand nombre de variables ou critères ».
L’entraînement sur ces données peut prendre beaucoup de temps. Adopter un moteur de règles peut s’avérer un bon choix pour des cas d’usage plus simples. Quoique, certains grands acteurs comme le spécialiste de la vente en ligne Rakuten préfère son moteur de règles maison pour lutter contre la fraude au paiement plutôt qu’un algorithme car celui-ci serait moins sensible aux faux positifs. À l’inverse, le ministère de l’Intérieur français a choisi la plateforme DSS de Dataiku pour développer des algorithmes de détection de fraude aux titres nationaux (passeports, cartes d’identités, permis de conduire).
« Les systèmes basés sur des règles sont mieux adaptés aux situations dans lesquelles il y a de plus faibles volumes de données. Souvent, les règles sont relativement simples », croit Jeff Grisenthwaite. « De nombreuses entreprises utilisent des systèmes basés sur des règles pour l'approbation des dépenses, définissant les seuils en dollars qui nécessitent l'approbation de la direction à différents niveaux ».
Les limites de ces deux paradigmes
Bien que les moteurs de règles ne soient généralement pas complexes par nature, l’ajout de nouvelles règles peut provoquer des chevauchements. Si l'on prend l'exemple du revenu moyen nécessaire pour obtenir un prêt immobilier, un statisticien pourrait créer une règle, telle que « revenu = trois fois le montant mensuel du prêt ». Cependant, ce n'est jamais aussi simple. Il faut prendre en compte d’autres critères qui compliquent le processus de décision dans l’application.
Ces modifications peuvent dépendre de paramètres comme la localisation du logement et le ralentissement économique qui pourrait influencer le temps de remboursement du prêt. Ces nouvelles règles augmentent considérablement le temps et la planification par rapport aux prévisions initiales. Cela demande un travail supplémentaire aux développeurs qui doivent ajouter de nouvelles variables et les tester afin d’éviter les conflits avec d’autres critères déjà embarqués dans le système.
Le recours à des modèles de machine learning est également judicieux lorsque le moteur de règles ne suffit plus. Le modèle lui-même peut utiliser la rétro-propagation pour l'optimisation afin de trouver la règle d'approbation (par exemple : revenu = 3 x le montant mensuel du prêt x 0,025 cote de solvabilité + 0,001 localisation) au fur et à mesure qu'il apprend à partir des données.
Attention, la qualité des données d’entraînement doit être quasi irréprochable. Les modèles statistiques peuvent prendre en compte de nombreuses variables, mais doivent être formés sur des données historiques et pertinentes. Le travail de préparation des données est une étape obligatoire et essentielle.
Si votre modèle de machine learning tente de découvrir des événements nouveaux ou rares, comme il le ferait dans le domaine de la protection contre la fraude, le champ à partir duquel des exemples peuvent être récoltés sera limité au départ. Le manque de données étiquetées entravera ses performances. L'apprentissage machine exige également un niveau d'expertise supplémentaire de la part de votre équipe. L'écriture de l'algorithme, l'identification des données utiles et le contrôle de celles-ci nécessitent une équipe de data scientists/data engineers et des employés correctement formés.
Enfin, il n’est pas recommandé d’appliquer une prise de décision automatisée dans des cas d’usage complexes. Idéalement, un algorithme, un moteur de règles détecte la suspicion de fraude ou encore le non-respect de droit d’auteur, il ne bannit/punit pas derechef l’utilisateur d’un service. La supervision humaine reste à minima l’étape finale du processus de décision.