CBR.tex
19.4 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
\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é sur la connaissance, c'est une technique d'intelligence artificielle dont l'idée est de résoudre un nouveau problème donné en utilisant l'analogie grâce aux connaissances déjà acquises par le système. Le RàPC est apparu comme une alternative pour améliorer les systèmes experts. Initialement, en 1977, \colorbox{pink}{je ne comprends pas les dates} les travaux de Shank et Abelson \cite{schank+abelson77} sur l'organisation hiérarchique de la mémoire pour imiter le raisonnement humain ont permis d'implémenter un système \colorbox{pink}{à?} a Kolodner \cite{KOLODNER1983281} en l'année 1983 pour arriver au terme RàPC en 1989 dans le travail de Riesbeck et Shank \cite{Riesbeck1989}.
Le raisonnement à partir de cas a été utilisé dans différents domaines comme : la médecine, la conception de produits,les sports, les systèmes de recommandation, etc. En médecine le RàPC a été appliqué pour explorer et aider la prise de décisions des médecins dans les traitements qui requièrent l'administration de doses précises selon les cas et les patients. \cite{PETROVIC201617} propose un algorithme de raisonnement à partir de cas qui indique quelle est la dose correcte de radiation pour le traitement du cancer. Pour administrer une dose de radiothérapie il est nécessaire de connaître avec précision deux paramètres: le nombre de faisceaux et l'angle de chacun d'eux. L'algorithme proposé essaie de trouver la valeur optimale pour la combinaison des deux paramètres en utilisant les réseaux de neurones et l'adaptation des cas connus pour modifier le nombre de faisceaux et adapter l'angle de chaque faisceau. 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 a été changé 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\% dans les cas \colorbox{pink}{pour le nombre de?}du nombre de faisceaux et 29\% \colorbox{pink}{pour le nombre de?}dans les cas de l'angle des faisceaux.
Plusieurs travaux ont obtenu de bons \colorbox{pink}{meilleurs?}résultats en appliquant le RàPC grâce à des modifications dans chacune des phases ou en combinant différents algorithmes au design \colorbox{pink}{? conception }de produits. 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 mélangée avec la recherche des états qui satisfassent le nouveau problème (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 (Accuracy), l'évaluation de commentaires faits par des experts et la complexité des transformations réalisées. Il n'est pas obligatoire de modifier tout le cycle du RàPC pour l'adapter à une problématique spécifique, par exemple, dans \cite{JUNG20095695} les auteurs développent un système basé 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. Avec 830 tests, \colorbox{pink} {je ne comprends pas la phrase qui suit}les nouveaux cas très similaires aux cas de la base initiale est obtenu un bon design en 99.4\% des cas, pour les cas dissemblables le pourcentage est de 94.8\%. Le RàPC peut également être utilisé comme outil secondaire pour aider d'autres algorithmes à trouver la bonne configuration. Dans \cite{10.1007/978-3-642-15973-2_50} un réseau de neurones classique est implémenté pour colorbox{pink} {désigner?}designer 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.
\mfigure[!ht]{width=\textwidth}{./Figures/ModCBR1.png}{Cycle du RàPC modifié. (Traduit de \cite{ROLDANREYES20151})}{figMCBR1}
%\begin{figure}
%\centering
%\includegraphics[scale=0.4]{./Figures/ModCBR1.png}
%\caption{Cycle du RàPC modifié. (\cite{ROLDANREYES20151})}
%\label{figMCBR1}
%\end{figure}
L’un des problèmes représentatifs(\colorbox{pink}{avant:L'une des problématiques la plus représentative et la plus fondamentale} de l'utilisation du RàPC est la création de recettes de cuisine à partir d'une base d'ingrédients et d'un ensemble de recettes déjà connues. Malgré l'apparente simplicité de ce problème il existe beaucoup de variations (\colorbox{pink}{pourquoi variations ?}et de modèles. Dans \cite{10.1007/978-3-319-47096-2_11} cette problématique est abordée, 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 il y a effectivement une amélioration de la qualité des recettes proposées et celles-ci sont plus en accord avec les critères définis. Sur la même problématique, mais plus focalisé sur la génération des recettes novatrices, \cite{10.1007/978-3-319-61030-6_1} utilise un modèle probabiliste qui considère les préférences des utilisateurs, un indicateur de curiosité et un composant (\colorbox{pink}{qui synthétise tout le design ??} . Une fois que toutes les exigences sont renseignées, la recette est créée en \colorbox{pink}{combinant les ingrédients avec un réseau d'apprentissage profond ??}. Les modifications dans la représentation des cas sont également une source d'amélioration des résultats. Cela car (\colorbox{pink}{je ne comprends pas la suite}parfois d'un côté il y a plus d'information et de l'autre certaines techniques ou algorithmes fonctionnent mieux. C'est le cas dans \cite{Muller} où les recettes sont codées comme un processus de transformation et mélangent des ingrédients en suivant une suite de pas (\colorbox{pink}{é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 changeant les ingrédients par des ingrédients proches. De la même façon 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.
Une autre type d'application du RàPC très notable est le génération, analyse et correction du texte écrit; pour la réalisation de ces tâches parfois il est nécessaire de transformer le texte en représentation numérique ou é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, en explorant les possibles transformations de forme que la nouvelle histoire ne soit pas très similaire aux histoire déjà connues mais que elle soit cohérent. Le travail est plus focalisé sur la phase de révision, car les résultats de la révision déterminent si la histoire générée corresponde avec les critères spécifiés ou si le cycle d'adaptation doit recommencer; l'adaptation se fait en cherchant dans la base des cas, les personnages, les contextes, les objets et en unifiant tout avec des actions; la plus part des histoires générées sont cohérents mais sont des 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 pas la transformation numérique des phrases, ni connaissances linguistiques, mais seulement retrouve les phrases similaires en utilisant l'algorithme LCS (Longest Common Subsequence) et en calculant la distance parmi toutes les phrases pour savoir si elle est bien écrite ou pas, sinon le système peut proposer une correction en changeant certains mots selon le contexte et calculer à nouveau les distances qui déterminent la cohérence et pertinence de la phrase.
Un autre type d'application du RàPC est 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 \colorbox{pink}{ok pour le système ?} explore les transformations de forme possibles afin que la nouvelle histoire ne soit pas similaire aux histoires déjà connues mais qu’elle soit 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 ??}. La plupart des histoires générées sont cohérents mais sont des 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 des connaissances linguistiques. Ils retrouvent des phrases similaires en utilisant l'algorithme LCS (Longest Common Subsequence) et en calculant la distance entre toutes les phrases 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 \colorbox{pink}{ots ?} ots selon le contexte et calculer à nouveau les distances qui déterminent la cohérence et pertinence de la phrase.
Le sport fait également partie des domaines explorés par le RàPC, qui est généralement employé pour suggérer des routines d'entraînement, prédire des temps de course, ainsi qu’évaluer et améliorer la performance des athlètes. 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 . \colorbox{pink}{où les coureurs ont été suivis et analysés pour la prédictions des temps de finalisation de une course, ?}. L’algorithme implémenté pour une course de marathon utilise l'algorithme KNN pour rechercher les cas similaires. Il prédit grâce à la moyenne pondérée des meilleurs temps d'arrivée 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 personnel pour des patineurs en se basant sur l'analogie avec des patineurs ayant des caractéristiques et une histoire de course similaires\colorbox{pink}{pas sûre de la structure de cette phrase}. Cependant, parfois calculer une moyenne des temps similaires trouvés ne suffit pas, car il y a des variables qui peuvent beaucoup changer la performance du patineur comme: le type de course, une piste spécifique, la distance de course, etc. L'algorithme a été testé avec une base de données qui contient l'information de 21 courses de 500m, 700m, 1000m, 1500m, 3km, 5km and 10km entre Septembre 2015 et Janvier 2020. Un système multi-fonctionnel apparait \colorbox{pink}{est décrit dans }dans \cite{10.1007/978-3-030-58342-2_5}, il 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 avec RàPC et en utilisant \colorbox{pink}{je ne comprends pas la suite}'information des coureurs qui présentent un parcours historique et des caractéristiques physiques similaires, les plans d'entraînement ont été définis génériquement sur 16 semaines avant le début du marathon parce que c'est le temps usuel pour la préparation de tous les coureurs. Le système a été évalué avec une base de données de 21000 coureurs des marathons de Dublin, Londres ou New-York pour la période de 2014 à 2017.
Les systèmes de recommandation et le RàPC peuvent aussi être combinés comme le font \cite{Obeid}, dont l’objectif est de minimiser les limitations des systèmes traditionnels ainsi que d’être capable d'analyser des données hétérogènes \colorbox{pink}{pas sûre de la suite} dans des grands espaces dimensionnels. Dans ce travail, le 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}). L’utilisation du RàPC dans les environnements informatiques pour l'apprentissage humain (EIAH) et la personnalisation montrent des résultats positifs comme l'indique le travail de \cite{8495930}. Le modèle proposé suit le cycle traditionnel du RàPC en combinant les modèles d'apprentissage traditionnel et digital \colorbox{pink}{numérique ?}. 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. Pour démontrer l'effectivité \colorbox{pink}{efficacité ?}du modèle, une base de cas initiaux a été créée. Celle-ci permet la recommandation du parcours de 120 apprenants. Les résultats ont été obtenus \colorbox{pink}{grâce à des examens}avec l'aide des examens avant et après avoir suivi le parcours recommandé par le modèle.
\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}
Certains travaux ont appliqué le raisonnement à partir de cas à un problème spécifique en proposant des représentations des cas et des solutions différentes, d'autres ont modifié le cycle conceptuel comme le montre la figure \figref{figMCBR2} extraite de \cite{10.1007/978-3-319-47096-2_11}. Dans cette proposition, un cycle complémentaire est additionné avec l'idée d'améliorer le résultat du processus du RàPC en utilisant le \textit{Deep Learning}. 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 \colorbox{pink}{d’ajouter} additionne pour chaque cas, une valeur d'utilité espérée selon chaque action possible avec laquelle il est possible d'obtenir une prédiction probabiliste de l'application des actions à un état initiale donné \colorbox{pink}{à revoir}.
\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}
Le tableau \ref{tabArts2} montre un récapitulatif des articles analysés dans l'état de l'art du RàPC.
\begin{table}
\footnotesize
\begin{tabular}{p{4.2cm}p{9cm}}
Ref&Limites et faiblesses\\
\hline
\cite{PETROVIC201617}&Grande quantité de données pour que l'algorithme fonctionne correctement. Recommandation limitée à un problème très spécifique.\\
\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{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{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{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-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{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{8495930}&Le modèle a été validé avec peu de données. Les recommandations se basent seulement sur l'information des autres apprenants.\\
\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}
Deux problèmes très communs des systèmes de recommandation sont : (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. 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.