CBR.tex
25.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
\chapter{\'Etat de l'art (Raisonnement à Partir de Cas)}
\section{Raisonnement à partir de cas (RàPC)}
Le raisonnement à partir de cas est une approche fondée sur la connaissance. Il s'agit d'une technique d'intelligence artificielle dont l'idée est de résoudre un nouveau problème grâce aux connaissances déjà acquises par le système et en tenant un raisonnement fondé sur l'analogie. Le RàPC est apparu comme une alternative pour améliorer les systèmes experts. Shank et Abelson \cite{schank+abelson77} ont initialement mené des travaux sur l'organisation hiérarchique de la mémoire pour imiter le raisonnement humain. Ceux-ci ont servi de fondement aux travaux de Janet Kolodner \cite{KOLODNER1983281} et ont abouti à l'implémentation un système fondé sur ces principes en 1983. Le terme \textit{raisonnement à partir de cas} est utilisé pour la première fois en 1989 par Riesbeck et Shank \cite{Riesbeck1989}.
Comme vu dans le chapitre du contexte, le raisonnement à partir de cas utilise quatre conteneurs de connaissance pour représenter la connaissance complète du système, chaque conteneur stocke l'information associée à une fonction spécifique et tout est fondé sur le carré d'analogie, c'est-à-dire des solutions ayant permis de résoudre un problème ancien sont réutilisées afin de résoudre un problème nouveau similaire. La plupart des systèmes de RàPC utilisent pour son fonctionnement comme base un cycle composé de quatre étapes (retrouver, réutiliser, réviser et retenir).
Les travaux ici cités sont des travaux représentatifs parce que ils ont permis de trouver certaines points d'amélioration du RàPC, ont donné des pistes d'intégration avec d'autres techniques ou ont donné des idées de modification pour obtenir bons résultats en gagnant de la performance.
Plusieurs travaux combinent le RàPC avec les réseaux de neurones (Deep Learning) avec l'objectif d'améliorer les réponses générées et optimiser les performances de chaque algorithme. C'est une idée qui marche dans certains cas, mais qui n'est pas très récente comme par exemple dans \cite{JUNG20095695} les auteurs développent un système fondé sur l'hybridation du RàPC avec des réseaux de neurones pour concevoir des produits. Le système se focalise uniquement dans les phases "rechercher" et "réutiliser" du RàPC dans lesquelles sont exécutés les algorithmes implémentés. Le système détermine de façon automatique les valeurs pour les paramètres nécessaires à la conception d'un produit particulier en suivant le cycle traditionnel du RàPC. Avec l'algorithme de k-moyennes, est extrait un cas représentatif de la base de cas et l'adaptation des solutions des voisins trouvées est faite avec le réseau de neurones RBFN (Radial Basis Function Network). L'évaluation du système est faite en utilisant une base de données contenant 830 tests, les résultats démontrent que les produits conçus s'ajustent avec un grand pourcentage aux normes définies.
Dans \cite{10.1007/978-3-642-15973-2_50} un réseau de neurones classique est implémenté pour définir la géométrie d'une matrice pour l'extrusion de l'aluminium. En effet, actuellement c'est un processus qui se fait manuellement et par essai et erreur. Le RàPC est alors utilisé pour aider à déterminer les valeurs optimales des paramètres du réseau, en utilisant l'information des matrices d'extrusion déjà testées.
Aussi le travail de \cite{PETROVIC201617} où les auteurs proposent un système de raisonnement à partir de cas pour calculer la dose optimale de radiation pour le traitement du cancer. Dans ce domaine particulier de la radiothérapie, administrer une dose nécessite de connaître avec précision le nombre de faisceaux et l'angle de chacun d'eux. L'algorithme proposé tente de trouver la combinaison de valeurs optimales pour ces deux paramètres en utilisant les réseaux de neurones. L'utilisation des réseaux de neurones intervient lors de l'adaptation des cas connus : ils modifient le nombre et les angles des faisceaux. La validation de l'algorithme est évaluée avec une base de 80 cas réels de cancer du cerveau extraits de l'hôpital de Nottingham City. Le nombre de neurones et de couches ont été définis de façon empirique. Les résultats montrent que l'utilisation des cas historiques et la construction des solutions à partir des solutions déjà connues permet une amélioration de 12\% concernant la décision du nombre de faisceaux et de 29\% concernant la décision liée à leur angle.
Plus récemment se trouvent travaux comme \cite{wolf2024keep} où le RàPC est employée comme technique pour expliquer les résultats générés par un réseau qui classifie les images en fonction de certains attributs et zones dans les images, le résultats permettent conclure que les explications trouvées avec RàPC sont très fidèles aux images testées. Aussi \cite{PAREJASLLANOVARCED2024111469} utilisent le RàPC et ses avantages pour le coupler à un réseau profond (Deep Learing) pour sélectionner la meilleure explication au résultat donné par le classificateur d'images dans ce cas, la base de connaissance sont certaines images avec des étiquettes qui contiennent l'information associée à l'image, la comparaison réalisée avec les algorithmes représentatifs de l'état de l'art suggèrent que la combinaison Deep Learning marche bien dans ce type de problèmes.
Certains travaux ont appliqué le raisonnement à partir de cas à un problème spécifique en modifiant les représentations des cas et des solutions, d'autres ont modifié le cycle conceptuel comme le montre la figure \figref{figMCBR2} avec l'objectif d'obtenir des réponses dynamiques et plus aptes à problèmes complexes. Dans \cite{10.1007/978-3-319-47096-2_11} est proposé un cycle complémentaire incluant un outil d'apprentissage profond (\textit{Deep Learning}) pour améliorer le résultat du processus du RàPC. Dans \cite{10.1007/978-3-642-15973-2_50}, la phase de stockage est modifiée en retenant les cas dont les résultats n'ont pas eu de succès, pour guider le processus dans la fabrications de nouvelles pièces. Enfin, dans \cite{Robertson2014ARO}, les auteurs proposent d'ajouter à chaque cas une valeur d'utilité espérée selon chaque action possible. Cet ajout s'accompagne d'une prédiction probabiliste des actions que l'application engendrera en réponse. Cette prédiction probabiliste dépend bien entendu de l'état initial du système avant mise en oeuvre de l'action.
\mfigure[!ht]{width=\textwidth}{./Figures/ModCBR2.png}{Ajout d'un cycle complémentaire avec \textit{Deep Learning} au RàPC (Traduit de \cite{10.1007/978-3-319-47096-2_11})}{figMCBR2}
Plusieurs travaux appliquent le RàPC avec succès en proposant des modifications dans chacune des phases ou en combinant différents algorithmes. Certains systèmes de RàPC appliqués au domaine de la conception de produits sont remarquables à ce titre. Dans \cite{ROLDANREYES20151} les auteurs proposent, comme le montre la figure \figref{figMCBR1}, un algorithme pour produire le propylène glycol dans un réacteur chimique. Dans ce cas, la phase de réutilisation du RàPC est couplée à la recherche des états qui satisfassent le nouveau problème (\textit{Constraint satisfaction problems CSP}) en utilisant l'information des cas de base déjà résolus. Les solutions trouvées sont évaluées selon le nombre de changements réalisés sur les solutions déjà connues (parcimonie), le nombre de solutions possibles trouvées (précision), l'évaluation de commentaires faits par des experts et la complexité des transformations réalisées.
\mfigure[!ht]{width=\textwidth}{./Figures/ModCBR1.png}{Cycle du RàPC modifié. (Traduit de \cite{ROLDANREYES20151})}{figMCBR1}
Dans \cite{10.1007/978-3-319-47096-2_11}, les auteurs ajoutent un nouveau cycle au cycle traditionnel du RàPC. Le premier cycle génère des descriptions abstraites du problème avec un réseau de neurones et des algorithmes génétiques; le second cycle prend les descriptions abstraites comme des nouveaux cas, cherche les cas similaires et adapte les solutions rencontrées. L'exécution des deux cycles prend en compte certains critères prédéfinis par l'utilisateur. En comparant le même problème avec le cycle traditionnel du RàPC, les auteurs mesurent une amélioration de la qualité des recettes proposées et montrent que celles-ci sont plus en accord avec les critères définis.
\cite{10.1007/978-3-319-61030-6_1} s'intéressent quant à eux à la génération de recettes de cuisine originales. Les auteurs modifient le cycle traditionnel du RàPC et créent deux cycles, combinant l'apprentissage profond et la récupération de cas basée sur la similarité, le premier cycle génère des descriptions abstraites de la conception avec des algorithmes génétiques et un réseau neuronal profond, le second cycle utilise les descriptions abstraites pour récupérer et adapter des objets, cette structure donne lieu à un prototype appelé Q-chef qui génère une recette basée sur la base de données d'ingrédients et les demandes de l'utilisateur. Ce travail ne montre pas de métriques standard génériques mais utilise deux nombres indicatifs (plausibilité et surprise) pour démontrer la génération efficace de nouvelles recettes selon les critères de l'utilisateur en comparant le RàPC à deux cycles avec le RàPC à un cycle, démontrant plus de plausibilité et de surprise dans les recettes générées.
Par rapport à l'intégration du RàPC avec d'autres algorithmes nous pouvons citer X\cite{buildings13030651} qui mettent en œuvre un RáPC avec une méthode d'agrégation bootstrap (bagging) pour améliorer la précision du CBR et réduire la variance. Le problème qui ils essaient de résoudre est l'estimation des coûts conceptuels dans les décisions de faisabilité d'un projet, lorsque l'on ne dispose pas de suffisamment d'informations sur la conception détaillée et les exigences du projet. Les résultats ont révélé que la performance de prédiction de la méthode CBR agrégée bootstrap est meilleure que la performance de prédiction de la méthode CBR traditionnelle.
Un modèle d'ensemble fondé sur le raisonnement à partir de cas est proposé par \cite{YU2023110163} appliqué à la prédiction financière et au remplissage des données manquantes. Dans ce cas, pour retrouver les plus proches voisins, le modèle utilise trois mesures de distance différentes et une étape de vote pour l'intégration. Le modèle a été testé avec une base de données comportant onze dimensions d'informations financières provenant de 249 entreprises. La comparaison est faite avec deux objectifs. Premièrement, le remplissage des données manquantes avec d'autres algorithmes tels que KNN ou RandomForest, et deuxièmement, la comparaison de la prédiction avec des algorithmes uniques utilisant une métrique de distance spécifique. En effet, les résultats montrent une meilleure performance dans le remplissage des données manquantes et les meilleurs résultats dans la prédiction.
La représentation des cas peut permettre également d'améliorer les résultats d'un système de RàPC. La performance d'un système de RàPC dépend de la quantité d'informations stockées, mais également des algorithmes implémentés. C'est le cas dans \cite{Muller} où les recettes de cuisine sont codées comme un processus de transformation et mélangent des ingrédients en suivant une suite d'étapes ordonnés. Pour créer des recettes innovantes, une mesure de distance est utilisée entre les ingrédients. Cette mesure permet de trouver une recette en substituant certains ingrédients par d'autres, similaires ou aux qualités et/ou caractéristiques similaires. De la même manière, il est possible de créer des recettes plus proches des exigences des utilisateurs. Les étapes de transformation appelées aussi opérateurs sont stockées et catégorisées grâce à une métrique permettant de les échanger afin d'obtenir une nouvelle recette.
La génération, analyse et correction de texte constitue également un domaine d'application intéressant du RàPC. Pour la réalisation de ces tâches il est parfois nécessaire de transformer le texte en représentation numérique ou de mesurer la proximité sémantique de mots. Le travail de \cite{10.1007/978-3-319-24586-7_20} utilise le RàPC pour générer des histoires en utilisant le texte d'autres histoires. Le système décrit explore les transformations possibles afin que la nouvelle histoire ne soit pas très similaire aux histoires déjà connues mais que elle soit cohérente. Le travail est plus focalisé sur la phase de révision, car les résultats de celle-ci déterminent si l'histoire générée correspond aux critères spécifiés ou si le cycle d'adaptation doit recommencer; l'adaptation se fait en recherchant les personnages, les contextes, les objets dans la base de cas, et en les unifiant avec des actions; la plupart des histoires générées sont cohérentes mais elles sont constituées de paragraphes très courts.
Dans \cite{10.1007/978-3-030-58342-2_20} les phrases écrites en langue française sont corrigées. Ce travail n'utilise ni la transformation numérique des phrases, ni de connaissances linguistiques, mais retrouve les phrases similaires en utilisant l'algorithme LCS (\textit{Longest Common Subsequence}) et en calculant une mesure de distance avec les phrases correctes et incorrectes de la base de connaissances. Si les phrases similaires sont incorrectes, le système peut proposer une correction en changeant certains mots selon le contexte et recalculer les distances afin de mesurer la cohérence et pertinence de la phrase proposée.
Une étape très importante dans le RàPC est l'adaptation. Dans \cite{10.1007/978-3-031-63646-2_4} l'objectif est changer la représentation de la connaissance pour évaluer s'il y a un impact positif en les solutions générées, ce changement permet aussi d'établir règles de adaptation, les résultats permettent de dire que choisir une représentation adéquate et des règles correctes en fonction du problème étudié peut améliorer la qualité des solutions pour résoudre des problèmes complexes.
Étant donne la versatilité du RàPC dans la littérature se trouvent des travaux qui l'utilisent comme un outil de prédiction, car en connaissant l'information historique généralement est possible d'inférer la structure ou le comportement des données et avec le RàPC les résultats sont assez bons.
L'objectif du travail de \cite{10.1007/978-3-030-01081-2_25} est la prédiction du temps de course pour un athlète. L'algorithme KNN est utilisé pour rechercher les cas similaires. Le système interpole un temps final grâce au calcul d'une moyenne pondérée des meilleurs temps des cas similaires retrouvés dans la première étape du RàPC.
Dans \cite{10.1007/978-3-030-58342-2_8}, les auteurs essaient de prédire le meilleur temps d'un patineur par analogie avec ceux des patineurs ayant des caractéristiques et une histoire de course similaires. Cependant parfois, calculer une moyenne des temps similaires trouvés ne suffit pas. Certaines caractéristiques liées au contexte, à l'environnement et à la nature de la course (le type de course, le type de piste, la distance à parcourir, etc.), peuvent en effet influencer de manière importante la performance du patineur. L'algorithme a été testé avec une base de données contenant les informations de 21 courses de 500m, 700m, 1000m, 1500m, 3km, 5km and 10km réalisées entre Septembre 2015 et Janvier 2020.
Un système multi-fonctionnel est décrit dans \cite{10.1007/978-3-030-58342-2_5}. Celui-ci permet d'obtenir une prédiction du temps de course, de suggérer un plan du rythme de la course et il recommande également un plan d'entraînement pour une course donnée. Les trois fonctionnalités sont implémentées en utilisant le RàPC. Les calculs de la similarité sont fondés sur un historique et des caractéristiques physiques des coureurs. Les plans d'entraînement sont génériques et sont proposés sur les 16 semaines précédant le début du marathon ciblé (selon les auteurs, c'est en effet le temps usuel pour une préparation à ce type d'épreuve). Le système a été évalué avec une base de données constituée de caractéristiques de 21000 coureurs des marathons de Dublin, Londres ou New-York pour la période de 2014 à 2017.
Dans \cite{YU2024123745} est proposé un algorithme en deux stages pour prédire avec précision et robustesse la détresse financière, les deux stages utilisent le RàPC. Le premier stage permet de compléter les valeurs manquantes de la base de données choisie afin de obtenir une meilleure performance fiable et stable, après est exécutée une version du RàPC combinée avec un LVQ (Learning Vector Quantization) algorithme pour faire la prédiction de classification. Les résultats démontrent compétitive solutions pour compléter les valeurs manquantes et classification.
\cite{Sadeghi} présentent un nouvel algorithme pour la prévision de la demande de matériel de secours utilisant le RàPC avec la méthode du meilleur-pire (Best-Worst Method - BWM) et les modèles de Markov cachés (Hidden Markov Model - HMM). Le HMM est entrainé avec des données historiques de demande de matériel, une fois l'algorithme détecte une situation de catastrophe, le RàPC cherche les cas similaires pour proposer le matériel nécessaire. D'après les résultats, l'indice d'erreur de prévision est inférieur à 10\%, par conséquent, le CBR-BWM-HMM proposé est un algorithme solide et robuste.
Les systèmes de recommandation et le RàPC peuvent aussi être combinés comme dans le système proposé par \cite{8495930} montre les bénéfices de l'utilisation du RàPC dans les environnements informatiques pour l'apprentissage humain (EIAH). Le modèle proposé suit le cycle traditionnel du RàPC en combinant les modèles d'apprentissages traditionnels et numériques. Les principales contributions sont la représentation des cas et la recommandation des parcours d'apprentissage personnalisés selon les informations issues des autres apprenants. Une base de cas initiaux a été créée pour mesurer l'efficacité du modèle. Celle-ci stocke la recommandation du parcours de 120 apprenants. Des examens sont réalisés avant et après avoir suivi le parcours recommandé par le système permettent de mesurer l'efficacité de la recommandation proposée.
\cite{Obeid}. Le système décrit dans cette étude présente la particularité d'être capable d'analyser des données hétérogènes et multidimensionnelles. Dans ce travail, un parcours de carrière et les universités/collèges est recommandé aux élèves du secondaire en fonction de leurs intérêts. Ce travail montre également une taxonomie des techniques algorithmiques généralement utilisées dans les systèmes de recommandation pour les EIAH (figure \figref{figTax}).
En fonction de certains paramètres comme type d'école, nombre d'étudiants, nombre d'étudiants admis, nombre d'étudiants non-admis, total nombre de classes, etc.
\cite{skittou2024recommender} développent un modèle hybride entre RàPC et le raisonnement à partir de règles pour recommander des actions de planification de l'éducation en réponse à des cas éducatifs des écoles primaires. Le modèle a été testé des bases de données réelles et a donné de bons résultats avec une grande précision.
%Le RàPC a également été mis en oeuvre dans différents travaux liés à la génération, l’analyse et la correction de textes écrits. Pour la réalisation de ces tâches, il est parfois nécessaire de transformer le texte en représentation numérique ou d’établir une fonction ou mesure qui va indiquer quels mots ont une proximité sémantique. Le travail de \cite{10.1007/978-3-319-24586-7_20} utilise le RàPC pour générer des histoires en utilisant le texte d'autres histoires. Le système décrit dans ce travail explore les transformations de forme possibles afin que la nouvelle histoire ne soit pas similaire aux histoires déjà connues tout en étant cohérente. Le travail est plus focalisé sur la phase de révision, car les résultats de la révision déterminent si l’histoire générée correspond aux critères spécifiés ou si le cycle d'adaptation doit être recommencé. L'adaptation se fait en cherchant dans la base des cas, les personnages, les contextes, les objets et en \colorbox{pink}{unifiant tout avec des actions ??}. Les résultats montrent que la plupart des histoires générées sont cohérentes mais qu'elles sont constituées de paragraphes très courts. Dans \cite{10.1007/978-3-030-58342-2_20}, les phrases écrites en langue française sont corrigées, ce travail n'utilise ni la transformation numérique \colorbox{yellow}{?} des phrases, ni des connaissances linguistiques. Le système conçu retrouve des phrases similaires en utilisant l'algorithme LCS (\textit{Longest Common Subsequence}) et en calculant la distance entre toutes les phrases \colorbox{yellow}{lesquelles ?} pour savoir \colorbox{pink}{je ne comprends pas la suite }si elle est bien écrite ou pas. Si la phrase n’est pas bien écrite, le système peut proposer une correction en changeant certains mots selon le contexte et calculer à nouveau les distances mesurant la cohérence et pertinence de la phrase.
\mfigure[!ht]{width=\textwidth}{./Figures/taxonomieEIAH.png}{Taxonomie des techniques algorithmiques employées pour des modules de recommandation dans les EIAH (Traduit de \cite{Obeid})}{figTax}
%\begin{figure}
%\centering
%\includegraphics[scale=21]{./Figures/taxonomieEIAH.png}
%\caption{Taxonomie des techniques algorithmiques employées pour des modules de recommandation dans les EIAH (\cite{Obeid})}
%\label{figTax}
%\end{figure}
Le tableau \ref{tabArts2} montre un récapitulatif des articles analysés dans cet état de l'art du RàPC, où on montre chacun d'eux en ordre d'apparition dans le chapitre et les limitations trouvées par rapport aux données, flexibilité, généralité de l'algorithme proposé, validité des solutions proposées, automatisation du processus et complexité du modèle proposée. A part les limites identifiés dans le tableau, nous avons trouvé deux problèmes très communs des systèmes de recommandation de façon générale : (1)le \textit{cold-start} qui se produit au début d'une recommandation lorsque il n'y a pas suffisamment de données pour calculer ou inférer une recommandation appropriée \cite{HU2025127130}. Et (2) le \textit{gray-sheep} qui se produit lorsqu'un utilisateur présente un comportement très différent de ceux qui sont stockés dans la base de données. Le système ne peut donc pas générer des recommandations en se basant sur l'information disponible \cite{ALABDULRAHMAN2021114061}.
\begin{table}
\footnotesize
\begin{tabular}{p{4.2cm}p{9cm}}
Ref&Limites\\
\hline
\cite{JUNG20095695}&Le modèle d'adaptation proposé fonctionne seulement avec des cas très proches. L'apprentissage dans le RàCP se limite à stocker les nouveaux cas.\\
\cite{10.1007/978-3-642-15973-2_50}&Le RàPC n'est pas modifié ou amélioré. La révision dans le RàPC n'est pas automatique\\
\cite{PETROVIC201617}&Grande quantité de données pour que l'algorithme fonctionne correctement. Recommandation limitée à un problème très spécifique.\\
\cite{wolf2024keep}\\
\cite{PAREJASLLANOVARCED2024111469}\\
\cite{Robertson2014ARO}\\
\cite{ROLDANREYES20151}&Une seule méthode d'adaptation est utilisée. Le modèle n'exploite pas les cas qui présentent une erreur.\\
\cite{10.1007/978-3-319-47096-2_11}&Beaucoup de données sont nécessaires pour entrainer le modèle de 'Deep Learning'. Les solutions générées n'ont pas été validées.\\
\cite{10.1007/978-3-319-61030-6_1}&L'évaluation des solutions générées n'est pas automatique. Les solutions sont produites avec un seul point de vue.\\
\cite{buildings13030651}\\
\cite{YU2023110163}\\
\cite{Muller}&Une seule approche pour adapter les cas dans le RàPC. La révision dans le RàPC n'est pas automatique.\\
\cite{10.1007/978-3-319-24586-7_20}&Les solutions générées peuvent présenter des incohérences. Il n'y a pas une métrique objective pour mesurer la qualité des réponses.\\
\cite{10.1007/978-3-030-58342-2_20}&Les résultats ne sont pas très bons. Le modèle n'a pas de connaissances linguistiques.\\
\cite{10.1007/978-3-031-63646-2_4}\\
\cite{10.1007/978-3-030-01081-2_25}&Les prédictions n'ont pas été testées dans le monde réel. Les données sont très spécifiques et peu variées.\\
\cite{10.1007/978-3-030-58342-2_8}&Les prédictions sont pour des cas limités. Le modèle est entrainé pour un type d'utilisateur spécifique.\\
\cite{10.1007/978-3-030-58342-2_5}&Seulement une technique de sélection de solutions. Les données nécessaires pour le modèle sont complexes.\\
\cite{YU2024123745}\\
\cite{Sadeghi}\\
\cite{8495930}&Le modèle a été validé avec peu de données. Les recommandations se basent seulement sur l'information des autres apprenants.\\
\cite{Obeid}&L'ontologie peut être \colorbox{pink}{limitée?}limitée pour évaluer plusieurs cas inconnus ou imprévus. Il est nécessaire d'avoir une forte connaissance du domaine.\\
\cite{skittou2024recommender}\\
\end{tabular}
\caption{Tableau de synthèse des articles analysés dans l’état de l’art du RàPC}
\label{tabArts2}
\end{table}
%\begin{figure}
%\centering
%\includegraphics[scale=0.4]{./Figures/ModCBR2.png}
%\caption{Addition d'un cycle complémentaire avec \textit{Deep Learning} au RàPC (\cite{10.1007/978-3-319-47096-2_11})}
%\label{figMCBR2}
%\end{figure}