DESCRIPTION
TITRE : Procédé d’aide à l’apprentissage d’une pluralité d’informations par un utilisateur d’un terminal.
1. DOMAINE TECHNIQUE
Le domaine de l’invention est celui de l’aide à l’apprentissage.
Plus précisément, l’invention concerne un procédé d’aide à l’apprentissage d’informations par un utilisateur d’un terminal.
Par « informations », on entend notamment, mais non exclusivement, des noms de technologies, des concepts, des lieux, des personnes, etc., ou toute autre information (aussi appelée « connaissance » ou « compétence ») pouvant être utile à l’utilisateur.
Par « terminal », on entend notamment, mais non exclusivement, un ordinateur personnel (fixe ou portable), une tablette numérique, un assistant numérique personnel, un smartphone, un poste de travail, etc., ou tout autre dispositif qu’un utilisateur peut utiliser pour recevoir, envoyer ou rechercher des contenus de type texte et/ou image et/ou son.
Par « contenu », on entend notamment, mais non exclusivement, un courrier électronique, un message (instantané ou non), un document, une recherche (effectuée par exemple avec un navigateur web), un fil d’actualité d’un réseau social, un contenu publié sur un réseau social, etc.
L’invention peut s’appliquer dans de nombreux domaines, par exemple :
• dans le domaine des entreprises, pour les salariés (en effet, les entreprises souhaitent former en continu les salariés et optimiser leur parcours d’apprentissage ; l’apprentissage est également au cœur des préoccupations des salariés qui souhaitent acquérir de nouvelles connaissances et se développer professionnellement de manière continue) ;
• dans le domaine de l’éducation, pour les élèves et les étudiants (sur leur poste de travail ils peuvent bénéficier de la solution proposée pour réduire les temps de recherche et centraliser les définitions remontées) ;
• dans le domaine du développement personnel, pour tout utilisateur (par exemple, la solution proposée permet à l’utilisateur d’un réseau social d’être informé, en
temps réel ou en temps différé, dès qu’une nouvelle information (nouveau concept ou nouvel élément), jamais rencontrée précédemment, apparaît dans le fil d’actualités de son réseau social) ;
• etc.
2. ARRIÈRE-PLAN TECHNOLOGIQUE
Actuellement, l’apprentissage de nouvelles connaissances (informations, compétences) pour les salariés manipulant chaque jour énormément d’informations sur leur poste de travail (par exemple de type PC) ne se fait pas de manière assistée ou proactive. Lorsqu’il s’aperçoit d’un manque d’informations ou de compétences pour avancer dans une activité, c’est au salarié de faire ses propres recherches sur son poste de travail ou de demander de l’aide ou une formation spécifique. Il peut donc perdre du temps dans ce processus de recherche et d’apprentissage, voire ne pas trouver l’information souhaitée. De plus, débordé par la profusion de ces nouvelles informations, il peut également oublier de rechercher leur signification.
Une problématique proche ou similaire existe dans de nombreux domaines (domaine de l’éducation, domaine du développement personnel, etc.).
3. OBJECTIFS
L’invention, dans au moins un mode de réalisation, a notamment pour objectif de pallier ces différents inconvénients de l’état de la technique.
Plus précisément, dans au moins un mode de réalisation de l’invention, un objectif est de fournir une solution technique d’aide à l’apprentissage d’informations par l’utilisateur d’un terminal.
Au moins un mode de réalisation de l’invention a également pour objectif de fournir une telle solution qui soit simple à implémenter et facile d’utilisation.
Un autre objectif d’au moins un mode de réalisation de l’invention est de fournir une telle solution qui permette de limiter les ressources de calcul de la machine de calcul, ainsi que le trafic réseau vers et/ou depuis le terminal de l’utilisateur.
Un objectif complémentaire d’au moins un mode de réalisation de l’invention est de fournir une telle solution qui permette de s’adapter à la fois à l’utilisateur et à l’information à apprendre.
4. RÉSUMÉ
Dans un mode de réalisation particulier de l’invention, il est proposé un procédé, mis en œuvre par une machine de calcul, d’aide à l’apprentissage d’une pluralité d’informations par un utilisateur d’un terminal. Le procédé comprend, lors d’une rencontre de l’utilisateur avec une information donnée, parmi la pluralité d’informations, au cours d’une utilisation du terminal : o stockage dans une base de connaissance, d’une donnée de contexte relative à ladite rencontre, avec une entrée pour l’information donnée; o détermination d’un indice de connaissance de l’information donnée, propre à l’utilisateur, en fonction de données de contexte enregistrées dans la base de connaissance avec l’entrée pour l’information donnée ; et o proposition d’accès à au moins un élément de compréhension de l’information donnée en fonction de l’indice de connaissance déterminé.
Ainsi, la solution proposée propose une approche tout à fait nouvelle et inventive, consistant en un procédé d’aide à l’apprentissage qui est mis en œuvre dans une machine de calcul. Elle vise à identifier les informations qui peuvent être non connues, ou tout simplement oubliées, du salarié (mais pouvant être importantes, par exemple dans la nature de son métier) en déterminant un indice (ou degré) de connaissance pour chacune de ces informations. La solution proposée vise donc à proposer à l’utilisateur des éléments de compréhension en fonction de l’indice de connaissance déterminé. Ainsi, si l’indice de connaissance est jugé trop faible (par exemple parce qu’il est inférieur à un seuil), des éléments de compréhension sont proposés à l’utilisateur alors que si l’indice de connaissance est élevé, aucun élément de compréhension n’est proposé.
Ainsi, un avantage de la solution proposée est qu’elle permet de limiter les ressources de calcul utilisées par la machine de calcul, ainsi que le trafic réseau vers et/ou depuis le terminal de l’utilisateur, puisque le nombre de notifications, pour proposer à l’utilisateur d’accéder aux éléments de compréhension puis pour fournir ces éléments de compréhension (si l’utilisateur le souhaite), est limité (la machine de calcul sélectionne de manière automatique les informations pour lesquelles il est nécessaire de proposer des éléments de compréhension).
L’apprentissage de l’utilisateur est amélioré. De plus, en adaptant les éléments de compréhension en fonction de l’indice de connaissance, par exemple en réduisant la taille
de l’élément de compréhension choisi, cela permet également de limiter le trafic réseau. Par exemple, pour une valeur de l’indice indiquant que l’information donnée est non connue de l’utilisateur (par exemple la valeur 0 ou une valeur proche de 0), l’élément de compréhension proposé est une formation initiale complète, tandis que pour une valeur de l’indice proche d’un seuil (par exemple 0,45 » si le seuil est égal à 0,5) et indiquant que l’information donnée est possiblement oubliée de l’utilisateur, l’élément de compréhension proposé est par exemple une formation plus courte (ou bien un simple rappel de définition).
Un avantage de la solution proposée est qu’elle est simple à implémenter puisqu’il suffît, outre le terminal dont dispose déjà l’utilisateur, d’une machine de calcul (éventuellement celle déjà présente dans le terminal) coopérant avec une base de connaissance (base de données).
Un autre avantage de la solution proposée est qu’elle est facile d’utilisation puisque l’utilisateur se voit proposer des accès à des éléments de compréhension, pour des informations que la machine de calcul a elle-même sélectionnées de manière automatique, en fonction de l’indice de connaissance déterminé.
Un autre avantage de la solution proposée est qu’elle permet de s’adapter à la fois à l’utilisateur (puisque l’indice de connaissance est fonction du contenu de la base de connaissance, qui dépend lui-même des choix de l’utilisateur d’accéder ou non aux éléments de compréhension proposés) et à l’information à apprendre (puisque l’indice de connaissance est spécifique à une information donnée ; en d’autres termes, chacune des informations est associée à son propre indice de connaissance). Ainsi, la solution proposée permet de prendre en compte les facilités ou au contraire les difficultés que chaque utilisateur peut rencontrer dans des domaines de compétences particuliers (c'est-à-dire pour des informations particulières à apprendre).
Selon une caractéristique particulière, en cas d’accès, respectivement de non- accès, de l’utilisateur audit au moins un élément de compréhension, le procédé comprend un stockage, avec ladite entrée, d’au moins une donnée de contexte relative audit accès, respectivement audit non-accès.
Ainsi, le contenu de la base de connaissance est plus riche, ce qui permet d’améliorer encore le calcul de l’indice de connaissance.
Selon une caractéristique particulière, la rencontre de rutilisateur avec rinformation donnée appartient au groupe comprenant :
• présence de l’information donnée dans un courrier électronique écrit ou lu par l’utilisateur avec le terminal ;
• présence de l’information donnée dans un message, instantané ou non, écrit ou lu par l’utilisateur avec le terminal ;
• présence de l’information donnée dans un document écrit ou lu par l’utilisateur avec le terminal ;
• présence de l’information donnée dans une recherche effectuée par l’utilisateur avec le terminal ;
• présence de l’information donnée dans un fil d’actualité, d’un réseau social, lu par l’utilisateur avec le terminal ;
• présence de l’information donnée dans un contenu publié sur un réseau social par l’utilisateur avec le terminal ; et
• présence de l’information donnée dans un contenu textuel et/ou visuel et/ou sonore, reçu, transmis ou recherché par l’utilisateur avec le terminal.
Ainsi, la solution proposée peut tenir compte de la grande diversité dans les rencontres que G utilisateur peut faire avec une information donnée. Elle est efficace même si l’utilisateur manipule une grande quantité d’informations. La liste de types de rencontres n’est pas exhaustive.
Selon une caractéristique particulière, ledit au moins un élément de compréhension appartient au groupe comprenant :
• une définition de l’information donnée ;
• une explication de l’information donnée ;
• une formation sur l’information donnée ;
• une aide relative à l’information donnée ; et
• un élément d’apprentissage, écrit et/ou oral et/ou visuel, de l’information donnée. De cette façon, la solution proposée peut offrir une grande diversité dans les éléments de compréhension proposés à l’utilisateur pour son apprentissage d’une information donnée. La liste de types d’éléments de compréhension n’est pas exhaustive.
Selon une caractéristique particulière, ladite au moins une donnée d’information appartient au groupe comprenant :
• un libellé de l’information donnée ;
• un domaine auquel appartient l’information donnée ;
• une nature de l’information donnée ; et
• un type de l’information donnée.
Plus le nombre de données d’information gérées est grand (c'est-à-dire plus l’information est précisée), plus l’indice de connaissance peut être calculé finement. Par « type de la rencontre de l’utilisateur avec l’information donnée », on entend par exemple un choix parmi « lecture », « écriture » et « recherche » (liste non exhaustive).
Selon une caractéristique particulière, les données de contexte appartiennent au groupe comprenant :
• un type de contexte indiquant un type de la rencontre de l’utilisateur avec l’information donnée ou indiquant ladite proposition d’accès audit au moins un élément de compréhension ;
• une date de la rencontre de l’utilisateur avec l’information donnée ou de l’accès ou du non-accès audit au moins un élément de compréhension ; et
• un nombre de phrase d’un contenu dans lequel l’utilisateur a rencontré l’information donnée.
De même que pour les données d’information, plus le nombre de données de contexte gérées est grand (c'est-à-dire plus l’information est précisée), plus l’indice de connaissance peut être calculé finement.
Selon une caractéristique particulière, la détermination de l’indice de connaissance est fonction :
• d’un délai depuis une dernière rencontre de l’utilisateur avec l’information donnée, ledit délai étant calculé en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance ; et
• d’une courbe d’oubli.
De cette façon, l’indice de connaissance peut être calculé facilement lors d’un certain nombre de premières itérations du procédé d’aide à l’apprentissage et tant que la base de connaissance n’est pas suffisamment remplie pour qu’un calcul d’indice basé sur
un modèle d’apprentissage machine (voir détail ci-après) soit considéré comme acceptable.
Selon une caractéristique particulière, la détermination de l’indice de connaissance utilise un modèle d’apprentissage machine et comprend :
• génération d’une donnée d’entrée, comprenant une pluralité d’attributs eux- mêmes déterminés en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance ;
• fourniture de ladite donnée d’entrée au modèle d’apprentissage machine ; et
• calcul par le modèle d’apprentissage machine d’un résultat constituant l’indice de connaissance.
Grâce au recours à un modèle d’apprentissage machine (aussi appelé « apprentissage automatique » ou « machine leaming »), l’indice de connaissance peut être calculé de manière performante et en se basant sur plusieurs critères (correspondant aux différentes données d’information et de contexte).
Selon une caractéristique particulière, les attributs compris dans la donnée d’entrée appartiennent au groupe comprenant :
• au moins un attribut d’information, renseigné avec ladite au moins une donnée d’information ; et
• au moins un attribut de contexte, renseigné avec les données de contexte et appartenant au groupe comprenant : o une date de référence, définie comme la date la plus récente parmi une ou plusieurs date(s) de rencontre de l’information donnée et une ou plusieurs date(s) de proposition d’accès audit au moins un élément de compréhension ; o un nombre de rencontres de l’information donnée en lecture dans une période prédéterminée précédant la date de référence ; o un nombre de rencontres de l’information donnée en écriture dans ladite période prédéterminée ; o un nombre de recherche de l’information donnée, par l’utilisateur, dans ladite période prédéterminée ;
o un nombre moyen de phrases dans des contenus dans lesquels rutilisateur a rencontré l’information donnée en lecture dans ladite période prédéterminée ; o un nombre moyen de phrases dans des contenus dans lesquels G utilisateur a rencontré l’information donnée en écriture dans ladite période prédéterminée ; et o un nombre d’accès audit au moins un élément de compréhension, dans ladite période prédéterminée.
Plus le nombre d’attributs gérés dans la donnée d’entrée est grand, plus l’indice de connaissance peut être calculé finement. Cette liste d’attributs n’est pas exhaustive.
Selon une caractéristique particulière, le procédé comprend une construction du modèle d’apprentissage machine, en effectuant un nombre déterminé d’itérations de construction, correspondant chacune à une itération du procédé d’aide à l’apprentissage, et comprenant chacune les étapes suivantes :
• génération de ladite donnée d’entrée, comprenant ladite pluralité d’attributs eux- mêmes déterminés en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance ;
• détermination d’une estimation de l’indice de connaissance, en fonction de l’accès ou du non-accès de l’utilisateur audit au moins un élément de compréhension ;
• fourniture au modèle d’apprentissage machine de ladite donnée d’entrée et d’un résultat connu, défini comme ladite estimation de l’indice de connaissance.
Ainsi, le modèle d’apprentissage machine peut être construit grâce aux données d’information et de contexte stockées lors de certaines itérations du procédé, en tenant compte notamment de l’accès ou non par l’utilisateur aux éléments de compréhension.
Selon une caractéristique particulière, l’estimation de l’indice de connaissance est égale à :
• une première valeur indiquant que l’information donnée est non connue de l’utilisateur, en cas d’accès de l’utilisateur audit au moins un élément de compréhension ; et
• une deuxième valeur indiquant que l’information donnée est connue de l’utilisateur, en cas de non-accès de l’utilisateur audit au moins un élément de compréhension.
Par exemple, la première valeur est « 0 » et la deuxième est « 1 ».
Selon une caractéristique particulière, la construction du modèle d’apprentissage machine est effectuée à nouveau après un nombre prédéterminé d’itérations du procédé d’aide à l’apprentissage et/ou à une fréquence prédéterminée.
De cette façon, le modèle d’apprentissage machine peut évoluer dans le temps, pour améliorer l’apprentissage au fur et à mesure où le nombre d’itérations du procédé grandit, c'est-à-dire au fur et à mesure où le contenu de la base de connaissance augmente.
Dans un autre mode de réalisation de l'invention, il est proposé un produit programme d'ordinateur comprenant des instructions de code de programme qui, quand elles sont exécutées par une machine de calcul, provoquent la réalisation par la machine de calcul du procédé précité (dans l’un quelconque de ses différents modes de réalisation).
Dans un autre mode de réalisation de l'invention, il est proposé un médium de stockage lisible par ordinateur et non transitoire, stockant le produit programme d’ordinateur précité.
Dans un autre mode de réalisation de l’invention, il est proposé une machine de calcul configurée pour réaliser le procédé précité (dans l’un quelconque de ses différents modes de réalisation).
5. LISTE DES FIGURES
D’autres caractéristiques et avantages de l’invention apparaîtront à la lecture de la description suivante, donnée à titre d’exemple indicatif et non limitatif, et des dessins annexés, dans lesquels :
[Fig. 1] présente un organigramme simplifié du procédé selon l’invention ;
[Fig. 2] est un exemple de courbe d’oubli, utilisée dans certaines itérations de l’étape E5 de la figure 1 ;
[Fig. 3] présente un organigramme simplifié de la construction du modèle d’apprentissage machine utilisé dans certaines itérations de l’étape E5 de la figure 1 ; et
[Fig. 4] présente la structure d'une machine de calcul, selon un mode de réalisation particulier, configurée pour réaliser le procédé de la figure 1.
6. DESCRIPTION DÉTAILLÉE
Sur toutes les figures du présent document, les éléments et étapes identiques sont désignés par une même référence numérique.
On présente maintenant, en relation avec l’organigramme de la figure 1. un mode de réalisation particulier du procédé selon l’invention d’aide à l’apprentissage d’informations par un utilisateur d’un terminal.
Le procédé est mis en œuvre par une machine de calcul (aussi appelée « système » dans la suite de la description) dont un exemple de structure est présenté plus bas, en relation avec la figure 4. Dans une première implémentation, la machine de calcul mettant en œuvre le procédé est intégrée dans, ou confondue avec, le terminal de l’utilisateur (qui est par exemple un ordinateur personnel fixe ou portable, une tablette numérique, un assistant numérique personnel, un smartphone, un poste de travail, etc.). Dans une deuxième implémentation, la machine de calcul mettant en œuvre le procédé est intégrée dans, ou confondue avec, un autre dispositif qui coopère avec le terminal de l’utilisateur (comme par exemple une passerelle domestique, aussi appelée « box Internet »).
Dans une étape El, la machine de calcul scrute, grâce à une ou plusieurs sondes, l’activité de l’utilisateur sur le terminal, comprenant par exemple les contenus de type texte et/ou image et/ou son que l’utilisateur a reçus, envoyés ou recherchés. Comme déjà mentionné plus haut, par « contenu », on entend notamment, mais non exclusivement, un courrier électronique, un message (instantané ou non), un document, une recherche (effectuée par exemple avec un navigateur web), un fil d’actualité d’un réseau social, un contenu publié sur un réseau social, etc. Dans cette étape El, on suppose que les droits d’accès aux données des activités professionnelles de l’utilisateur en local sont autorisés dans le respect du règlement général sur la protection des données (RGPD).
Dans une étape E2, la machine de calcul analyse les contenus scrutés et tente d’en extraire des informations devant faire l’objet d’un apprentissage par l’utilisateur. L’extraction s’appuie par exemple sur des expressions linguistiques référentielles (entités nommées) et des locutions simples et étendues. Comme déjà mentionné plus haut, ces informations (aussi appelées « éléments clés ») sont par exemple des noms de
technologies, des concepts, des lieux, des personnes, etc., ou toute autre information (aussi appelée « connaissance » ou « compétence ») pouvant être utile à l’utilisateur.
En d’autres termes, la machine de calcul détecte une rencontre de l’utilisateur avec une ou plusieurs informations (éléments clés), au cours d’une utilisation du terminal. Par « rencontre de l’utilisateur avec une information donnée », on entend par exemple la présence de l’information donnée dans :
• un courrier électronique écrit ou lu par l’utilisateur avec le terminal ;
• un message, instantané ou non, écrit ou lu par l’utilisateur avec le terminal ;
• un document écrit ou lu par l’utilisateur avec le terminal ;
• une recherche effectuée par l’utilisateur avec le terminal ;
• un fil d’actualité, d’un réseau social, lu par l’utilisateur avec le terminal ;
• un contenu publié sur un réseau social par l’utilisateur avec le terminal ;
• un contenu textuel et/ou visuel et/ou sonore, reçu, transmis ou recherché par l’utilisateur avec le terminal (comme par exemple la lecture d’une page d’accueil d’un site web interne (Intranet)) ;
• etc.
Dans une étape de test E3, pour une information donnée extraite à l’étape E2 (c'est-à-dire pour une rencontre de l’utilisateur avec cette information donnée), la machine de calcul détermine s’il existe déjà une entrée pour l’information donnée dans une base de connaissance 1 (base de données) agrégeant des informations (éléments clés) pour l’utilisateur. Pour cela, la machine de calcul interroge la base de connaissance 1, comme symbolisé par la flèche référencée 2.
Si aucune entrée pour l’information donnée n’existe dans la base de connaissance (réponse négative au test de l’étape E3), l’algorithme passe à l’étape E7 dans laquelle la machine de calcul crée dans la base de connaissance 1 une entrée pour l’information donnée, et stocke avec cette entrée au moins une donnée d’information relative à l’information donnée et au moins une donnée de contexte relative à la rencontre.
Dans l’étape E7, la machine de calcul stocke par exemple :
• les données d’information suivantes : o libellé de l’information donnée,
o domaine auquel appartient l’information donnée, o nature de l’information donnée, o type de l’information donnée ; et • les données de contexte suivantes : o type de contexte, indiquant soit le type de la rencontre de l’utilisateur avec l’information donnée (par exemple, « lecture », écriture » ou « recherche ») soit qu’il s’agit d’une proposition de la machine de calcul pour un accès à l’élément de compréhension ; o date de la rencontre de l’utilisateur avec l’information donnée ou de l’accès ou du non-accès à l’élément de compréhension ; o nombre de phrases du contenu dans lequel G utilisateur a rencontré l’information donnée.
L’étape E7 est suivie d’une étape E8 dans laquelle la machine de calcul propose à l’utilisateur d’accéder à (au moins) un élément de compréhension de l’information donnée. Dans une implémentation particulière, l’élément de compréhension est choisi en fonction d’une valeur de l’indice de connaissance. Par « élément de compréhension », on entend par exemple : une définition de l’information donnée, une explication de l’information donnée, une formation sur l’information donnée, une aide relative à l’information donnée, un élément d’apprentissage (écrit et/ou oral et/ou visuel) de l’information donnée, etc.
Dans une implémentation particulière, l’élément de compréhension est structuré de telle manière qu’il comporte une information de base qui est complétée ou enrichie selon une arborescence définie, les éléments de cette arborescence étant sélectionnables en fonction de la valeur de l’indice de connaissance.
Dans une autre implémentation possible, l’élément de compréhension peut être structuré par des informations de taille ou de quantité de données différentes, dans une matrice de données par exemple. Cette matrice est construite en prenant en compte par exemple des caractéristiques de durée de lecture de cet élément de compréhension ou bien de complexité.
Ainsi, selon la valeur de l’indice de connaissance, un élément de compréhension de durée de lecture plus ou moins grande ou de complexité plus ou moins grande pourra être sélectionné dans cette matrice.
Ainsi plus l’indice de connaissance est faible et plus l’élément de compréhension devra être complet, et donc avoir un temps de lecture plus important et/ou une taille plus importante et inversement lorsque l’indice de connaissance est élevé.
Si une entrée pour l’information donnée existe déjà dans la base de connaissance (réponse positive au test de l’étape E3), l’algorithme passe à l’étape E4 dans laquelle la machine de calcul stocke dans la base de connaissance, avec l’entrée existante, au moins une (autre) donnée de contexte relative à la rencontre.
Puis, dans une étape E5, la machine de calcul calcule un indice de connaissance (par l’utilisateur) de l’information donnée, en fonction du contenu de la base de connaissance.
Pour le calcul de l’indice de connaissance, on utilise par exemple l’une et/ou l’autre de deux méthodes, en fonction du nombre d’itération du procédé déjà effectuées avant l’itération courante. Par exemple, pour les N premières itérations (dans une implémentation particulière, N=1000), on utilise une première méthode basée sur une courbe de l’oubli, et pour les itérations suivantes, on utilise une deuxième méthode basée sur un modèle d’apprentissage machine.
La première méthode comprend par exemple un calcul de l’indice de connaissance en fonction :
• d’un délai depuis une dernière rencontre de l’utilisateur avec l’information donnée ; ce délai est calculé par la machine de calcul en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance 1 ; et
• d’une courbe d’oubli, comme par exemple la courbe d’Ebbinghaus 21 illustrée sur la figure 2. avec en abscisse le temps et en ordonnée le pourcentage de rétention ; la courbe référencée 22 correspond au cas où l’utilisateur se voit rappeler l’information aux différents instant mentionnés en abscisse (10 min, 1 jour, 1 semaine, 1 mois et 6 mois) ; la double flèche référencée 23 illustre le gain obtenu
au bout de six mois (c'est-à-dire la différence entre les deux courbes précitées 21 et 22).
La deuxième méthode comprend par exemple les étapes suivantes pour calculer l’indice de connaissance :
• génération d’une donnée d’entrée, comprenant une pluralité d’attributs eux- mêmes déterminés en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance ;
• fourniture de la donnée d’entrée au modèle d’apprentissage machine ; et
• calcul par le modèle d’apprentissage machine d’un résultat constituant l’indice de connaissance (la construction de ce modèle est discutée en détail plus bas, en relation avec la figure 3).
Dans une implémentation particulière, la donnée d’entrée comprend les attributs suivants :
• attributs correspondant directement aux données d’information (dans l’exemple donné plus haut : libellé, domaine, nature et type de l’information donnée) et donc renseignés par les valeurs de celles-ci ; et
• attributs de contexte calculés (renseignés) avec les données de contexte, comme par exemple les attributs suivants : o date de référence, définie comme la date la plus récente parmi les dates stockées dans la base de connaissance pour l’information donnée (date(s) de la rencontre de l’utilisateur avec l’information donnée et date(s) l’accès ou du non-accès à l’élément de compréhension) ; o nombre de rencontres de l’information donnée en lecture dans une période prédéterminée précédant la date de référence ; o nombre de rencontres de l’information donnée en écriture dans la période précitée ; o nombre de recherche de l’information donnée, par l’utilisateur, dans la période précitée ; o nombre moyen de phrases dans des contenus dans lesquels l’utilisateur a rencontré l’information donnée en lecture dans la période précitée ;
o nombre moyen de phrases dans des contenus dans lesquels rutilisateur a rencontré l’information donnée en écriture dans la période précitée ; o nombre d’accès à l’élément de compréhension, dans la période précitée ; o etc.
L’étape E5 est suivie d’une étape de test E6, dans laquelle la machine de calcul compare l’indice de connaissance à un seuil prédéterminé. Si l’indice de connaissance est supérieur ou égal au seuil, l’algorithme revient à l’étape El, pour une nouvelle itération du procédé. Si l’indice de connaissance est inférieur au seuil, l’algorithme passe à l’étape E8 déjà expliquée plus haut (proposition d’accès à au moins un élément de compréhension) .
L’étape E8 est suivie d’une étape de test E9, dans laquelle la machine de calcul détermine si l’utilisateur a accédé à l’élément de compréhension.
En cas d’accès, l’algorithme passe à l’étape E10 dans laquelle la machine de calcul stocke dans la base de connaissance (comme symbolisé par la flèche référencée 3), avec l’entrée existante, au moins une autre donnée de contexte, relative à l’accès. Après l’étape E10, l’algorithme revient à l’étape El, pour une nouvelle itération du procédé.
En cas de non-accès, l’algorithme passe à l’étape El i dans laquelle la machine de calcul stocke dans la base de connaissance (comme symbolisé par la flèche référencée 4), avec l’entrée existante, au moins une autre donnée de contexte, relative au non-accès. Après l’étape El i, l’algorithme revient à l’étape El, pour une nouvelle itération du procédé.
La figure 3 présente un organigramme simplifié de la construction du modèle d’apprentissage machine, ce modèle étant utilisé dans certaines itérations de l’étape E5 de la figure 1 , comme discuté plus haut.
La construction du modèle comprend un nombre déterminé M d’itérations de construction, correspondant chacune à une des itérations du procédé d’aide à l’apprentissage de la figure 1.
Dans une implémentation particulière, les M itérations de construction correspondent aux N premières itérations du procédé de la figure 1 (par exemple N=M=1000). Ceci signifie que pendant la construction du modèle, le calcul de l’indice
de connaissance, à l’étape E5 de la figure 1, est effectué en utilisant la première méthode précitée (basée sur une courbe de l’oubli).
Dans une étape 31, la machine de calcul génère une donnée d’entrée telle que définie plus haut (voir étape E5 de la figure 1), c'est-à-dire comprenant la pluralité d’attributs (eux-mêmes déterminés en fonction des données d’information et de contexte stockés, avec l’entrée pour l’information donnée, dans la base de connaissance).
Dans une étape 32, la machine de calcul détermine une estimation de l’indice de connaissance, en fonction de l’accès ou du non-accès de l’utilisateur à l’élément de compréhension (voir étape de test E9 de la figure 1). Dans une implémentation particulière, l’estimation est égale à une première valeur (par exemple « 0 ») indiquant que l’information donnée est non connue de l’utilisateur, en cas d’accès de l’utilisateur à l’élément de compréhension (réponse positive à l’étape de test E9), et à une deuxième valeur (par exemple « 1 ») indiquant que l’information donnée est connue de l’utilisateur, en cas de non-accès de l’utilisateur à l’élément de compréhension (réponse négative à l’étape de test E9).
Dans une étape 33, la machine de calcul fournit au modèle d’apprentissage machine la donnée d’entrée, accompagnée du résultat connu (défini comme l’estimation de l’indice de connaissance, calculée à l’étape 32).
Dans une étape de test 34, la machine de calcul détermine si le nombre M d’itérations de construction a été effectué. Dans la négative, l’algorithme revient à l’étape 31, pour une nouvelle itération de construction. Dans l’affirmative, l’algorithme passe à l’étape de fin 35.
Le procédé de construction de la figure 3 peut être effectué à nouveau après un nombre prédéterminé d’itérations du procédé de la figure 1 (par exemple après les itérations M+l à 2M de la figure 1, puis après les itérations 2M+1 à 3M de la figure 1, et ainsi de suite). Le procédé de construction de la figure 3 peut aussi être effectué à nouveau à une fréquence prédéterminée (par exemple une fois par semaine).
La figure 4 présente un exemple de structure d'une machine de calcul 40 pour réaliser (exécuter) le procédé de la figure 1.
Cette structure comprend une mémoire vive 42 (par exemple une mémoire RAM), une mémoire morte 43 (par exemple une mémoire ROM ou un disque dur) et une unité de traitement 41 (équipée par exemple d'un processeur, et pilotée par un programme d'ordinateur 430 stocké dans la mémoire morte 43). A l'initialisation, les instructions de code du programme d'ordinateur 430 sont par exemple chargées dans la mémoire vive 42 avant d'être exécutées par le processeur de l'unité de traitement 41.
Cette figure 4 illustre seulement une manière particulière, parmi plusieurs possibles, d’implémenter une machine de calcul pour réaliser (exécuter) le procédé. En effet, la machine de calcul s’implémente indifféremment sous la forme d’une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d’instructions, ou sous la forme d’une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel).
Dans le cas d’une implémentation sous la forme d’une machine de calcul reprogrammable, le programme correspondant (c'est-à-dire la séquence d’instructions) pourra être stocké dans un médium de stockage amovible (tel que par exemple une disquette, un CD-ROM ou un DVD-ROM) ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur.
Exemple applicatif : cas de l’aide à l’apprentissage d’un salarié
Dans le présent exemple applicatif, on tente de résoudre la problématique suivante : comment identifier/détecter une information non connue ou mal connue (pouvant être oubliée) du salarié au regard de plusieurs critères (par exemple, le délai entre un nombre déterminé d’apparitions (rencontres) de cette même information dans ses activités, la nature ou le domaine associé à ladite information, ...).
Par exemple, un salarié d’une entreprise peut recevoir un message électronique (e- mail) de nature à contenir : « Pour cela il faut que tu fasses une DMI ». Si l’acronyme DMI (signifiant « Demande de Moyens Informatiques ») n’est pas une information connue du salarié, il risque fort d’être dans l’incapacité de réaliser l’action souhaitée. Le procédé d’aide à l’apprentissage (voir figure 1) va détecter que l’acronyme DMI n’est pas une information connue du salarié en question, et va pouvoir lui fournir un ou plusieurs
éléments de compréhension (dans le cas présent un accès vers l’outil permettant de formuler une demande de moyens informatiques).
Construction de la base de connaissance
Le procédé agrège dans une base de données des informations faisant l’objet de l’apprentissage (éléments clés) telles que : noms de technologies, concepts, lieus, personnes ou tout autre information que le salarié rencontre dans ses activités quotidiennes (e-mails, conversations sur messagerie (instantanée ou non), documents... écrits ou lus) pendant une période plus ou moins longue et configurable selon ses préférences ou son métier.
Les dates de rencontre de l’information par le salarié sont également répertoriées dans cette base de connaissance. Et la nature du contexte de rencontre notamment : est-ce dans les e-mails entrants ? Est-ce une recherche manuelle de l’information par le salarié ? Est-ce que la définition (constituant un élément de compréhension) de cette information proposée par le système (aussi appelé plus haut « machine de calcul ») a été lue ?
Ces données de contexte serviront à calculer l’indice de connaissance de cette information par le salarié.
Détection d’une information nouvelle ou possiblement oubliée
En analysant les entrées du salarié au fil de l’eau telles que les éléments (contenus) qu’il reçoit : e-mails, conversations, nouveaux documents lus, le système détecte les informations contenues dans ces entrées et vérifie la présence de ces informations dans la base de connaissances du salarié. Si une information détectée dans un des contenus n’est pas présente dans la base de connaissance : le système considère que cete information est potentiellement nouvelle, donc non connue du salarié.
Si l’information est déjà présente dans la base de connaissance, le système va calculer un indice de connaissance. Cet indice se base sur plusieurs critères, par exemple : le délai entre deux apparitions de l’information (pouvant suggérer un oubli si ce délai est long), le domaine associé à cette information (réseau, gestion de projet, nouvelles technologies, etc.), la nature de l’information (outils du SI, contact, organisation etc.), le contexte d’apparition de l’information, etc. L’indice sera calculé sur l’observation de la base de connaissance du salarié et, dans un mode de réalisation particulier, sur l’observation par le système de demandes par le salarié d’informations supplémentaires
(ou au contraire l’absence de demande d’informations supplémentaires) pour des informations de domaine ou de nature similaire. L’indice de connaissance est donc spécifique à l’information et propre à l’utilisateur.
Au démarrage du procédé, la base de connaissance peut être initialisée par des informations dont le salarié a donné accès sur une période donnée. Puis l’indice se basera sur des hypothèses de mémorisation moyennes, telles que celles que l’on peut voir sur la Courbe d’Ebbinghaus.
Principes de construction de la base de connaissance du salarié
A) Considérons l’information (acronyme) « APN » que le salarié lit dans un e- mail (étape El). Elle n’est pas présente (étape E3) dans la base de connaissance qui contient des informations correspondant par exemple à un mois (initialisation à partir d’informations issues de l’historique des e-mails, messages instantanés ou autres).
Le système stocke alors (étape E7) les données suivantes (liste non exhaustive) dans la base de connaissance :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : Cl
* Lecture de l’élément
* Dans un e-mail
* De 20 phrases
* Date d’apparition : XXXX.
Le système affiche (E8) une proposition d’accès à la définition de cet acronyme (information) à l’utilisateur.
Si l’utilisateur clique sur la définition (c'est-à-dire accède à l’élément de compréhension), le système considère que la définition lui était utile et ajoute (E10) dans la base de connaissance les nouvelles données de contexte suivantes (notamment une donnée de contexte indiquant « Information non connue »), qui permettront de produire un modèle d’apprentissage spécifique associé au salarié :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C2
* Définition proposée par le système
* Date d’apparition : XXXX
* Information non connue (car définition lue par le salarié).
Si l’utilisateur ne clique pas sur la définition (c'est-à-dire n’accède pas à l’élément de compréhension), le système extrapole et considère que l’utilisateur connaît cette information. Il ajoute (Eli) dans la base de connaissance les nouvelles données de contexte suivantes (notamment une donnée de contexte indiquant « Information connue »), qui permettront de produire le modèle d’apprentissage spécifique associé au salarié :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C2’
* Définition proposée par le système
* Date d’apparition : XXXX
* Information connue (car définition non lue par le salarié).
B) On suppose qu’un mois après, Tutilisateur lit l’acronyme (information) « APN » dans un message instantané (IM). Le système détecte (E3) que l’information existe dans la base de connaissance et ajoute (E4) dans la base de connaissance les nouvelles données de contexte suivantes :
- Libelle : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C3
* Lecture de l’élément
* Dans un IM
* De 1 phrase
* Date d’apparition : XXXX
A ce stade, la base de connaissance contient trop peu d’informations et de données pour extrapoler et calculer l’indice sur la connaissance qu’a le système du salarié. Il va donc calculer (E5) l’indice de connaissance sur la base de la courbe d’Ebbinghaus.
L’information (acronyme « APN ») n’a pas été vu depuis un mois : lors de l’affichage de la définition de l’information. Le système considère que, dans ces conditions (délai d’un mois), 20% de l’information ont été retenus : l’indice est donc affecté à 0,2. Le système affiche à nouveau la définition (E8).
Si l’utilisateur clique sur la définition (c'est-à-dire accède à l’élément de compréhension), le système considère que la définition lui était utile et ajoute (E10) dans la base de connaissance les nouvelles données de contexte suivantes (notamment une donnée de contexte indiquant « Information non connue ») :
- Libelle : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C4
* Définition proposée par le système
* Date d’apparition : XXXX...
* Information non connue (car définition lue par le salarié).
Si l’utilisateur ne clique pas sur la définition (c'est-à-dire n’accède pas à l’élément de compréhension), le système extrapole et considère que l’utilisateur connaît cette information. Il ajoute (Eli) dans la base de connaissance les nouvelles données de
contexte suivantes (notamment une donnée de contexte indiquant « Information connue ») :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C4’
* Définition proposée par le système
* Date d’apparition : XXXX...
* Information connue (car définition non lue par le salarié).
C) Si l’utilisateur recherche lui-même la définition de l’information (acronyme « APN ») (El), le système le détecte (E2). Si l’information n’est pas présente (étape E3) dans la base de connaissance, le système stocke alors (étape E7) les données suivantes dans la base de connaissance :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Contexte d’apparition :
* Identifiant de contexte : C5
* Recherche de l’élément
* Via un outil de recherche
* De 1 phrase
* Date d’apparition : XXXX
* Information non connue
Le système affiche (E8) une proposition d’accès à la définition de cet acronyme (information) à l’utilisateur. Voir paragraphe A plus haut pour la suite (selon que l’utilisateur clique ou non sur la définition, passage à l’étape E10 ou Eli).
Production du modèle d’apprentissage machine (via les algorithmes d’IA) pour calculer l’indice de connaissance d’une information
La base de connaissance va ainsi se remplir d’informations et de données spécifiques à rutilisateur et permettre la production d’un modèle capable d’affecter un indice de connaissance à chacune des informations.
Les données de la base de connaissances sont analysées et permettent la production de données d’entrée, pour un processus classique de construction (formation) du modèle d’apprentissage machine.
Chaque donnée d’entrée est accompagnée du résultat connu associé (indice de connaissance est égal à « 1 » si l’information est connue ou à « 0 » si l’information est non connue.
L'algorithme de construction identifie ensuite des tendances dans ces données d’entrée et résultats, qui mettront en correspondance les attributs des données d'entrée avec le résultat (cible, c’est-à-dire la valeur de l’indice de connaissance à prédire. Et il fournit en sortie un modèle d'apprentissage machine qui capture ces tendances.
Les attributs (caractéristiques) à prendre en compte pour produire une donnée d’entrée du modèle d’apprentissage machine sont par exemple (liste non exhaustive) :
- Libellé
- Domaine
- Nature
- Type
- Dernière apparition (rencontre)
- Nombre d’apparitions en lecture dans le mois précédant la dernière apparition
- Nombre d’apparitions en écriture dans le mois précédant la dernière apparition
- Nombre de phrases moyen du contexte d’apparition en lecture (c'est-à-dire du contenu lu dans lequel est apparue l’information)
- Nombre de phrases moyen du contexte d’apparition en écriture (c'est-à-dire du contenu écrit dans lequel est apparue l’information)
- Nombre de lecture de la définition dans le mois précédant la dernière apparition
- etc.
Le résultat (réponse) associé est : indice de connaissance = 1 (information connue) ou 0 (information non conne).
Exemple :
- Libellé : APN
- Domaine : réseau mobile
- Nature : Technologie
- Type : acronyme
- Dernière apparition : [0 ; 1 mois]
- Nombre d’apparitions en lecture dans le mois précédant la dernière apparition : <à calculer sur analyse de la base de connaissances>
- Nombre d’apparitions en écriture dans le mois précédant la dernière apparition : <à calculer sur analyse de la base de connaissances>
- Nombre de phrases moyen du contexte d’apparition en lecture : <à calculer sur analyse de la base de connaissances>
- Nombre de phrases moyen du contexte d’apparition en écriture : <à calculer sur analyse de la base de connaissances>
- Nombre de lecture de la définition dans le mois précédant la dernière apparition : <à calculer sur analyse de la base de connaissances>
- etc.
Le résultat (réponse) associé est : indice de connaissance = 1 (élément connu)
L’indice de connaissance est dans le procédé le résultat, c'est-à-dire la variable qualitative à prédire par apprentissage.
Chaque donnée d’entrée produite sur analyse de la base de connaissance est par exemple vectorisée. Chaque valeur d’un des attributs (caractéristiques) d’une donnée d’entrée est ramenée à une donnée numérique pour produire une donnée d’entrée vectorisée. Ensuite via des algorithmes d’intelligence artificielle (IA) de type classification, le modèle permettra d’obtenir l’indice de connaissance, valeur réelle variant de 0 (qui signifie que l’information n’est pas connue) à 1 (qui signifie que l’information est connue) pour une nouvelle donnée d’entrée vectorisée permettant de répondre à la question (avec des valeurs renseignées pour les indications A à L) : « quel est l’indice de connaissance d’une information au libellé A, du domaine B, de nature C, de type D, pour laquelle la dernière apparition ( rencontre ) a eu lieu entre E et F mois, pour laquelle le nombre d’apparitions en lecture a eu lieu G fois, en écriture H fois, dans un contexte d’apparition de plus de I phrases en lecture et J phrases en écriture, pour
laquelle les définitions ont été lues K fois le mois précédant la dernière apparition ... ? ». L’algorithme de construction retenu dépend par exemple (« deep leaming », « réseau de neurone LSTM » ...) de résultats de tests sur les données d’entrée et peut évoluer au fil du temps.