• Aucun résultat trouvé

Une ontologie OWL pour le CDM-fr

N/A
N/A
Protected

Academic year: 2021

Partager "Une ontologie OWL pour le CDM-fr"

Copied!
13
0
0

Texte intégral

(1)

HAL Id: hal-01085992

https://hal.archives-ouvertes.fr/hal-01085992

Submitted on 21 Nov 2014

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Une ontologie OWL pour le CDM-fr

Nicolas Delestre, Nicolas Malandain, Boulares Ouchenne

To cite this version:

Nicolas Delestre, Nicolas Malandain, Boulares Ouchenne. Une ontologie OWL pour le CDM-fr. Con-

férence des Technologies de l’Information et de la Communication pour l’Enseignement, Nov 2014,

Béziers, France. �hal-01085992�

(2)

Application ` a la Liaison entre Offres de FormAtion et Ressources p´ edagogiques

Nicolas Delestre, Nicolas Malandain et Boulares Ouchenne LITIS, Normandie Universit´ e, INSA Rouen

Avenue de l’Universit´ e, 76801 Saint- ´ Etienne-du-Rouvray, France {nicolas.delestre,nicolas.malandain,boulares.ouchenne}@insa-rouen.fr

R´ esum´ e Le projet SemUNIT propose une version web s´ emantique du sch´ ema de m´ etadonn´ ees SupLOMfr. Ce travail n’a pas ´ et´ e r´ ealis´ e pour le CDM-fr, le sch´ ema de m´ etadonn´ ees d´ ecrivant les parcours p´ edagogiques.

Dans la premi` ere partie de l’article, nous ´ elaborons une version web s´ emantique du CDM-fr en r´ eutilisant au maximum des ontologies OWL ou sch´ emas RDF pr´ eexistants. L’exposition de ces donn´ ees ouvertes, dor´ enavant structur´ ees, permet la cr´ eation de nouveaux services dans le domaine des TICE. Ceci est l’objet de la deuxi` eme partie de l’article qui pr´ esente un moteur de recherche permettant de trouver des ressources compatibles avec un cours ou un parcours p´ edagogique.

Mots-cl´ e: Web S´ emantique, donn´ ees ouvertes structur´ ees, parcours p´ edagogiques, CDM-fr, ressources p´ edagogiques, SupLOMfr

1 Introduction

Grˆ ace aux travaux de Tim Berners-Lee, nous pouvons consulter facilement des documents multim´ edia ind´ ependemment de leur position g´ eographique. Tou- tefois, au regard du nombre exponentielle de documents disponibles sur le web, il est n´ ecessaire pour les consulter, de les retrouver et donc au pr´ ealable de les in- dexer. Il y a eu des moteurs de recherche bas´ es sur une indexation manuelle, mais ceux que nous utilisons aujourd’hui effectuent tous une indexation automatique.

Malheureusement les documents du Web sont pour la plupart des documents qui n´ ecessitent une interpr´ etation

intelligente

pour ˆ etre convenablement index´ es (par exemple pour les textes, il faut g´ erer l’ambigu¨ıt´ e des langues naturelles, pour les images, il faut associer un sens aux formes, etc.), tˆ ache qui ne peut pas ˆ

etre effectu´ ee par les robots des moteurs de recherche. D` es la deuxi` eme partie des ann´ ees 90, le W3C d´ efinit le Web pour les machines : le web des donn´ ees et le web s´ emantique. Les mots cl´ es de cette ´ evolution sont les m´ etadonn´ ees, leur repr´ esentation (triplets RDF), un langage formel d’expression (RDF) et la r´ eutilisation de sch´ emas de m´ etadonn´ ees (d´ ecrites en RDFS ou OWL) [3].

D` es le d´ ebut des ann´ ees 2000, dans le domaine de la p´ edagogie, des travaux

ont ´ et´ e initi´ es pour ´ elaborer des normes ou standards de sch´ emas de m´ etadonn´ ees

d´ ecrivant d’une part les ressources (par exemple LOM, LOMfr et SupLOMfr) et

(3)

d’autre part les parcours avec le CDM et sa d´ eclinaison fran¸ caise, le CDM-fr.

Toutefois, ` a l’exception du projet SemUnit [4] qui a propos´ e une version web s´ emantique du sch´ ema de m´ etadonn´ ees SupLOMfr (que l’on va nomm´ e dans cet article SemUNT), les autres sch´ emas ne sont pas mod´ elis´ es et repr´ esent´ es pour le Web Semantique. C’est par exemple le cas pour le sch´ ema de m´ etadonn´ ees CDM-fr. La figure 1 pr´ esente le cadre de notre travail : partir des sch´ emas de m´ etadonn´ ees pour cr´ eer des sch´ emas OWL et les instancier. Dans notre cas nous utilisons SemUNIT pour les ressources index´ ees d’UNIT 1 et nous cr´ eons SemINSA pour les cours du d´ epartement ASI de l’INSA de Rouen. Les zones gris´ ees correspondent aux travaux d´ ecrits dans cet article.

SupLOMfr CDM-fr

SemUNIT

LOFAR http://lofar.insa-rouen.fr

Ressources Parcours

Schéma OWL

Instance SemINSA

SemCDMfr SemUNT

Schéma de métadonnées

Service

Figure 1. Positionnement des mod` eles et du service LOFAR

Apr` es une description de l’existant, nous allons proposer un sch´ ema OWL pour le CDM-fr. Ensuite nous pr´ esenterons une application, le projet LOFAR (Liaison entre Offres de FormAtion et Ressources p´ edagogiques) qui va tirer parti d’une part de ces descriptions de parcours p´ edagogiques et d’autre part des des- criptions de ressources p´ edagogiques propos´ ees par le serveur SemUNIT. Enfin, apr` es une validation exp´ erimentale, nous pr´ esenterons l’architecture logiciel de notre prototype, librement accessible via le Web.

2 Le Sch´ ema de M´ etadonn´ ees CDM-fr

D´ ebut des ann´ ees 2000, la Norv` ege a propos´ e un sch´ ema de m´ etadonn´ ees pour d´ ecrire les ´ etablissements d’enseignements sup´ erieurs et les parcours propos´ es par ces derniers (CDM pour Course Description Metadata). En 2004 la SDTICE 2 a constitu´ e un groupe de travail qui a propos´ e en 2005 un profil d’application fran¸ cais de ce sch´ ema : le CDM-fr (Cf.[8]).

Un conteneur d’information CDM-fr regroupe l’ensemble des informations relatives ` a l’enseignement sup´ erieur. Il est constitu´ e de descriptions d’entit´ es organisationnelles, de personnes, de programmes d’´ etudes et de cours. L’implan- tation technique de CDM-fr est structur´ ee sous la forme d’un sch´ ema XML comportant quatre ´ el´ ements constitutifs principaux :

1. Universit´ e Num´ erique Ing´ enierie et Technologie, http://www.unit.eu/

2. Sous-direction des technologies de l’information et de la communication pour

l’´ education

(4)

1. OrgUnit : contient la description et les coordonn´ ees des ´ etablissements d’enseignement ou des composantes responsables de l’organisation et du d´ eroulement des programmes d’´ etudes et des cours.

2. Person : contient la description et les coordonn´ ees des acteurs qui inter- viennent dans la gestion, l’organisation et le d´ eroulement des programmes d’´ etudes et/ou des cours.

3. Program : contient les unit´ es d’enseignement pr´ eparant ` a un examen ou aboutissant ` a un diplˆ ome, un titre, une qualification, une certification.

4. Course : contient les informations relatives ` a une unit´ e d’enseignement (nom, nombre de cr´ edits, pr´ erequis, etc).

L’´ etude de ce sch´ ema de m´ etadonn´ ees met en exergue plusieurs probl` emes, dont les deux principaux sont d’une part l’absence de mod` ele conceptuel de donn´ ees (seul un sch´ ema XML est propos´ e) et d’autre part la mauvaise formali- sation de certaines informations, via l’utilisation des ´ el´ ements XML infoBlock et subBlock. Ces ´ el´ ements peuvent ˆ etre inclus ` a tous les ´ el´ ements principaux (OrgUnit, Person, Program et Course) et leurs descendants. Les ´ el´ ements info- Block et subBlock permettent d’inclure des informations non formalis´ ees, en langue naturelle (multilingue) qui peuvent de plus ˆ etre mises en forme (utili- sation de balises provenant du HTML). Or ces ´ el´ ements sont tr` es utilis´ es. Par exemple un module du logiciel Scolp´ edagogie de la suite Coktail (syst` eme d’in- formation universitaires) utilise abondamment ces deux ´ el´ ements, excluant de fait un post traitement efficace des fichiers XML produits. La figure 2 montre un exemple de code XML, o` u l’on voit que pour la description d’un cours, le mˆ eme

´

el´ ement XML subBlock est utilis´ e pour indiquer l’URL des ressources propos´ ees par ce cours, la langue utilis´ ee pour dispenser ce cours et enfin les heures de cours magistraux ou de travaux dirig´ es. Ces informations sont ici propos´ ees en anglais, mais dans le mˆ eme fichier XML on peut les retrouver en fran¸ cais.

< f o r m O f T e a c h i n g >

< s u b B l o c k >

s i t e web : h t t p : // X X X X X / c o u r s e / v i e w . php ? id =68 < / s u b B l o c k >

< a l t L a n g B l o c k l a n g u a g e = " en - gb " >

< s u b B l o c k >

L e c t u r e s : 21 h < / s u b B l o c k >

< s u b B l o c k >

E x e r c i s e s : 42 h < / s u b B l o c k >

< s u b B l o c k >

l a n g u a g e : f r e n c h < / s u b B l o c k >

< s u b B l o c k >

h t t p : // X X X X / c o u r s e / v i e w . php ? id =68 < / s u b B l o c k >

< / a l t L a n g B l o c k >

< / f o r m O f T e a c h i n g >

Figure 2. Exemple de code XML produit par le logiciel Scolp´ edagogie

On en d´ eduit que les donn´ ees contenues dans les XML CDM et CDM-fr

sont moins structur´ ees que les donn´ ees stock´ ees dans le syst` eme d’information :

(5)

les utiliser comme source pour des outils d’indexation et de recherche serait d` es lors moins performant. Dans la pratique ces fichiers XML sont uniquement utilis´ es en entr´ ee de feuilles XSLT pour g´ en´ erer des pages HTML des sites Web d’´ etablissement, pr´ esentant l’offre de formation 3 .

C’est ` a la suite de ce constat que nous avons d´ ecid´ e de proposer un sch´ ema de m´ etadonn´ ees de description de parcours p´ edagogiques compatible avec les mod` eles et outils du Web S´ emantique.

3 SemCDMfr : un mod` ele OWL pour le sch´ ema de m´ etadonn´ ees CDM-fr

Pour d´ efinir le mod` ele OWL de ce sch´ ema de m´ etadonn´ ees CDM-fr, nous sommes partis des sch´ emas XML (XSD) existant tout en appliquant les bonnes pratiques propos´ ees dans [1]. Nous avons suivi les ´ etapes suivantes :

Etape 1 ´ Cr´ eation d’un mod` ele conceptuel de donn´ ees ` a partir des sch´ emas XML. L’objectif est de partir des ´ el´ ements et attributs XML pour en ex- traire les concepts et relations formant le mod` ele. Cependant, nous avons rencontr´ e beaucoup de difficult´ es pour interpr´ eter convenablement cer- tains ´ el´ ements XML. En effet, le peu de documentation et la redondance d’information dans certains ´ el´ ements ont compliqu´ e ´ enorm´ ement notre travail. En outre, comme nous le signalions pr´ ec´ edemment, une grande partie des informations n’est pas formalis´ ee et apparaˆıt dans le contenu d’´ el´ ements de type infoBlock (un m´ elange de texte avec des informations semi-structur´ ees et non structur´ ees).

Etape 2 ´ Identification de sch´ emas RDF ou OWL pr´ e existants qui propose- raient des classes et propri´ et´ es ´ equivalentes ` a celles identifi´ ees ` a l’´ etape pr´ ec´ edente. Afin de proposer une ontologie qui soit le plus interop´ erable, nous avons retenu des ontologies identifi´ ees par le W3C 4 ou fr´ equemment utilis´ ees, et donc r´ ef´ erenc´ ees dans des entrepˆ ots d’ontologies, comme par exemple Linked Open Vocabularies 5 . Ainsi nous avons utilis´ e les sch´ emas suivants :

foaf ce sch´ ema permet de d´ ecrire une organisation et/ou une personne et ses relations (http://xmlns.com/foaf/0.1/).

vcard ce sch´ ema permet de d´ ecrire les coordonn´ ees d’une personne ou d’une entit´ e organisationnelle (http://www.w3.org/TR/vcard-rdf/).

aiiso ce sch´ ema permet de d´ ecrire la structure organisationnelle interne d’une institution acad´ emique (http://vocab.org/aiiso/schema).

Etape 3 ´ Enrichissement de l’ontologie en ajoutant des caract´ eristiques ` a cer- taines relations, comme par exemple le fait qu’une propri´ et´ e soit transi- tive, r´ eflexive, sym´ etrique, . . .

3. C’est le cas pour l’INSA de Rouen : http://formations.insa-rouen.fr/cdm/

4. http://www.w3.org/wiki/Good_Ontologies

5. http://lov.okfn.org/dataset/lov/

(6)

foaf:Person

- foaf:firstName - foaf:familyName - foaf:title

- vcard:role - vcard:hasEmail - cdmfr:hasVisitHour

vcard:Vcard

- cdmfr:extAddress - cdmfr:hasPoBox - vcard:street-address - vcard:locality - vcard:region - cdmfr:countryCode - vcard:postal-code - vcard:country-name

vcard:Address

vcard:hasAddress cdmfr:hasVcard

cdmfr:URL

- vcard:value - cdmfr:url-Role

vcard:hasURL vcard:TelephoneType

- vcard:value

vcard:hasTelephone

Figure 3. Mod` ele OWL de l’´ el´ ement Person.

Afin d’ˆ etre plus lisible, ` a l’image du sch´ ema CDM-fr initial, notre ontologie peut ˆ etre d´ ecompos´ ee en quatre parties : les personnes, les ´ etablissements ou or- ganismes de formation, les parcours et enfin les cours. Dans la suite de cet article, chaque partie est pr´ esent´ ee par un diagramme de classes UML, tel que les classes UML repr´ esentent des classes OWL, les attributs de classe UML repr´ esentent des OWL data properties (les types de donn´ ees n’ont pas ´ et´ e ajout´ es afin de ne pas alourdir la pr´ esentation) et les relations d’association repr´ esentent des OWL object properties. Chaque identifiant est pr´ efix´ e par un nom de domaine. Seuls ceux pr´ efix´ es par cdmfr (en bleu) sont r´ eellement d´ ecrits dans notre sch´ ema, les autres sont des r´ eutilisations des trois sch´ emas pr´ esent´ es pr´ ec´ edemment. Enfin, lorsque deux identifiants d’OWL object properties sont associ´ es ` a une relation bidirectionnelle, cela signifie que ces deux propri´ et´ es sont sym´ etriques (tr` es sou- vent l’un commen¸ cant par is et l’autre par has).

3.1 Partie d´ ecrivant les personnes

La classe Person permet de d´ ecrire les diff´ erentes personnes intervenant dans le cycle d’apprentissage. La figure 3 repr´ esente le sch´ ema OWL de cette premi` ere partie de l’ontologie. On peut constater que nous avons r´ eutilis´ e au maximum les sch´ emas foaf et vcard, nous avons juste ajout´ e six propri´ et´ es et une classe.

3.2 Partie d´ ecrivant l’´ etablissement

La classe Organization est la classe centrale de l’ontologie qui d´ ecrit une entit´ e organisationnelle, celle qui g` ere ou propose des unit´ es d’enseignement et des programmes d’´ etudes. La structure d’une entit´ e organisationnelle peut ˆ

etre de type hi´ erarchique avec des entit´ es organisationnelles subordonn´ ees (par

exemple pour les universit´ es : les facult´ es), d’o` u les relations is-sub-unit et

(7)

foaf: Organization

- foaf:name - cdmfr:hasAcronym - cdmfr:orgUnitKind - aiiso :code - cdmfr:studentFacilities - cdmfr:universalAdjustment - cdmfr:hasRegulations

- aiiso:description

cdmfr:AdmissionInfo

- cdmfr:studentPlaces - cdmfr:teachingStart - cdmfr:cancelDeadline - cdmfr:registrationDeadline - aiiso :description

cdmfr:Expenses

- cdmfr:price - cdmfr:currency cdmfr:hasExpenses

aiiso:Program

vcard:Vcard

cdmfr:hasVcard

foaf:Person

aiiso:Course

cdmfr:has-affiliated-person cdmfr:has-affiliation

cdmfr:OffersCourses

cdmfr:P-isOfferedBy cdmfr:OffersPrograms

cdmfr:C-isOfferedBy

cdmfr:is-sub-unit cdmfr:has-sub-unit

cdmfr:hasAdmissionInfo

Figure 4. Mod` ele OWL de l’´ el´ ement OrgUnit.

has-sub-unit. Elle a ´ et´ e con¸ cue pour int´ egrer toutes les structures proposant des programmes d’enseignement (universit´ e, ´ ecoles d’ing´ enieur, etc). La figure 4 pr´ esente ce mod` ele. On constate que nous avons r´ eutilis´ e ici le sch´ ema aiiso, et qu’en comparaison de la partie pr´ ec´ edente, nous avons ajout´ e beaucoup plus de classes et de propri´ et´ es.

3.3 Partie d´ ecrivant les parcours

Un parcours p´ edagogique est d´ ecrit par la classe Programme. Deux types d’informations sont associ´ es ` a cet ´ el´ ement. Tout d’abord il y a des informations administratives, comme le lieu du parcours, la dur´ ee, la date de d´ ebut, le nombre de cr´ edits ECTS obtenus apr` es validation, etc. Ensuite il y a des informations p´ edagogiques, par exemple les cours du parcours, les parcours ou cours pr´ erequis, la forme p´ edagogique (en pr´ esentiel ou ` a distance), etc. Un parcours p´ edagogique peut ˆ etre divis´ e en d’autres parcours p´ edagogiques. La figure 5 repr´ esente le sch´ ema OWL de cette partie.

3.4 Partie d´ ecrivant les cours

Enfin la classe Course contient les informations relatives ` a un cours. Encore une fois, les informations le caract´ erisant sont des informations administratives ou p´ edagogiques. La figure 6 synth´ etise l’ensemble de ces informations.

3.5 Conclusion

L’ensemble de ces classes et propri´ et´ es OWL forment l’ontologie SemCDMfr.

Toutes les informations pr´ esentes dans le sch´ ema de m´ etadonn´ ees CDM-fr initial sont aussi pr´ esentes dans cette ontologie.

Un ´ etablissement d’enseignement sup´ erieur exposant une instantiation de

cette ontologie permettrait ` a toute personne ou organisation d’en tirer partie et

(8)

aiiso: Programme

- aiiso:name - aiiso:code - cdmfr:studyAbroad - cdmfr:regulations - aiiso:description - cdmfr:targetGroup - cdmfr:learningObjectives - cdmfr:universalAdjustment

- cdmfr:ECTScredits - cdmfr:hoursPerWeek

cdmfr:is-involved-in cdmfr:involves

cdmfr:isSubProgram cdmfr:isFor-Prerequisites cdmfr:isRec-Prerequisites cdmfr:hasSubProgram cdmfr:hasFor-Prerequisites cdmfr:hasRec-Prerequisites

cdmfr:hasQualification

cdmfr:Qualification

- foaf::name - cdmfr:description - cdmfr:degree - cdmfr:studyQualification - cdmfr:profession

cdmfr:Credits

- cdmfr:level

- cdmfr:competenceYielding

cdmfr:Level

cdmfr:hasCredits cdmfr:hasLevel

- cdmfr:room - cdmfr: building

vcard:Location

cdmfr:hasPlace

- cdmfr:formOfTeachingOrgValue - cdmfr:formOfTeachingMethodValue

cdmfr:FormOfTeaching cdmfr:hasForm OfTeaching

- cdmfr:duration - cdmfr:start - cdmfr:studyPace - cdmfr:timeOfDay

cdmfr:Duration cdmfr:hasDuration cdmfr:isComposedOf

cdmfr:hasFor-Prerequisites cdmfr:hasRec-Prerequisites cdmfr:isPartOf cdmfr:isFor-Prerequisites cdmfr:isRec-Prerequisites foaf:Organization

foaf:Person aiiso:Course

cdmfr:is-involved-in cdmfr:involves

cdmfr:Expenses cdmfr:hasExpenses

cdmfr:hasAdmissionInfo cdmfr:AdmissionInfo

cdmfr:hasURL vcard:URL

vcard:Address

vcard:hasAddress

1

Figure 5. Mod` ele OWL de l’´ el´ ement Program.

aiiso:Course

- aiiso:name - aiiso:code

- cdmfr:hasInstructionLanguage - cdmfr:hasTargetGroup - cdmfr:hasOverlap - cdmfr:hasSyllabus - cdmfr:universalAdjustment - cdmfr:hasFormOfAssessment - cdmfr:hasLearningObjectives - aiiso:description - cdmfr:hasBenefits

- cdmfr:hasTerm - cdmfr:start - cdmfr:studyPace - cdmfr:timeOfDay

cdmfr:TeachingTerm

cdmfr:hasExam

cdmfr:hasTeachingTerm

- foaf:name

- cdmfr:registrationDeadline - cdmfr:cancelDeadline - cdmfr:evaluationDeadline - cdmfr:start

- cdmfr:end - cdmfr:duration

cdmfr:Exam

- foaf:name

- cdmfr:TeachingActivityType - cdmfr:formOfTeachingOrgValue - cdmfr:timeOfDay - cdmfr:duration

- cdmfr:hasInstructionLanguage

cdmfr:TeachingActivity cdmfr:hasTeaching Activity

cdmfr:ExamKind

- cdmfr:examKindValue - cdmfr:examFormValue cdmfr:hasKind

- cdmfr:partStructureValue - cdmfr:hasPartStructure

cdmfr:Structure

cdmfr:TimeTable cdmfr:has SingleEvent

- cdmfr:start - cdmfr:end cdmfr:SingleEvent

cdmfr:has ReoccurringEvents

- cdmfr:start - cdmfr:end - cdmfr:occurenceRule cdmfr:ReoccurringEvents cdmfr:hasTimeTable

cdmfr:hasParts cdmfr:hasStructure

cdmfr:isParts cdmfr:hasParts

cdmfr:hasStructure cdmfr:isParts cdmr:is-involved-in cdmfr:involves -cdmfr:hasFor-Prerequisites -cdmfr:hasRec-Prerequisites -cdmfr:isFor-Prerequisites -cdmfr:isRec-Prerequisites foaf:Organization

foaf:Person aiiso:Program

cdmfr:is-involved-in cdmfr:involves

cdmfr:isFor-Prerequisites cdmfr:isRec-Prerequisites cdmfr:hasFor-Prerequisites cdmfr:hasRec-Prerequisites cdmfr:isComposedOf cdmfr:isPartOf cdmfr:URL cdmfr:hasURL

cdmfr:Credits cdmfr:hasCredits

cdmfr:AdmissionInfo

vcard:Location cdmfr:Expenses

cdmfr:hasExpenses

cdmfr:hasAdmissionInfo

cdmfr:hasPlace

cdmfr:hasPlace

cdmfr:hasPlace cdmfr:is-invol ved-in

cdmfr:in volves

Figure 6. Mod` ele OWL de l’´ el´ ement Course.

(9)

de proposer des services innovants utilisant ces informations. C’est ce que nous nous allons pr´ esenter maintenant ` a travers un exemple de service : le serveur LOFAR.

4 Liaison entre offres et ressources p´ edagogiques

On se propose dans cette section de concevoir une application, nomm´ ee LO- FAR, pour Liaison entre OFfres de formAtion et Ressources p´ edagogiques, qui utiliserait une instance de l’ontologie SemUNT et une instance de SemCDMfr.

4.1 Cas d’utilisation de l’application LOFAR

Avant de s’int´ eresser ` a la conception de cette application, identifions quelques cas d’utilisation.

Le premier cas est celui d’un ´ etudiant qui recherche des ressources pour un parcours auquel il vient de s’inscrire. Il se connecte sur LOFAR, il saisit ou choisit l’URL de l’´ etablissement exposant ses informations au format SemCDMfr. Le serveur LOFAR cherche alors les ressources UNIT compatibles avec les cours de ce parcours.

Un deuxi` eme cas d’utilisation envisageable est celui d’un enseignant repre- nant le cours d’un coll` egue. Si l’enseignant n’est pas sp´ ecialiste du dit cours, il devra ´ etudier les supports que lui donnera son coll` egue, mais afin d’avoir un point de vue plus large, il devra aussi ´ etudier d’autres ressources sur ce mˆ eme sujet. Il pourra alors utiliser LOFAR pour les obtenir.

4.2 LOFAR : un moteur de recherche d’information

Ces deux cas d’utilisation montrent que le serveur LOFAR est un moteur de recherche d’information (RI) qui utilise conjointement deux ontologies, l’une d´ ecrivant des ressources p´ edagogiques (SemUNT) et l’autre d´ ecrivant des par- cours p´ edagogiques (SemCDMfr). Ainsi pour un cours donn´ e, d´ ecrit ` a l’aide de SemCDMfr, le syst` eme doit proposer les meilleures ressources, d´ ecrites ` a l’aide de SemUNT.

La constitution d’un tel classement n´ ecessite tout d’abord d’identifier les m´ etadonn´ ees des cours et ressources qui sont utiles ` a cet ordonnancement. Pour chaque couple de m´ etadonn´ ees retenu, il est n´ ecessaire d’´ etablir une mesure de similarit´ e (M S m

i

) permettant d’estimer la proximit´ e s´ emantique de leurs instances. Enfin par combinaison de ces similarit´ es entre m´ etadonn´ ees, on veut d´ efinir une mesure de similarit´ e (M S CR ) entre cours et ressource. Ainsi, une ressource R i sera mieux class´ ee qu’une ressource R j pour un cours C donn´ e, si et seulement si M S CR (C, R i ) > M S CR (C, R j ).

La mesure de similarit´ e M S CR entre un cours C et une ressource R utilisant k couples de m´ etadonn´ ees (m C , m R ) peut alors ˆ etre d´ ecrite par :

M S CR (C, R) =

k

X

i=1

α i M S m

i

(m C

i

, m R

i

)

(10)

telles que toutes les mesures de similarit´ e sont comprises entre 0 (pour des donn´ ees totalement orthogonales) et 1 (pour des donn´ ees totalement similaires) et la somme des α i vaut 1.

Apr` es l’´ etude de notre ontologie SemCDMfr et de l’ontologie SemUNT, nous avons pour l’instant retenu deux couples de m´ etadonn´ ees :

1. le titre des cours et des ressources (aiiso:Name et dc:title) ; 2. leurs descriptions (aiiso:Description et dc:description).

De ce fait, en notant m Ct et m Rt les valeurs des m´ etadonn´ ees pour les titres (cours et ressources), et m Cd et m Rd les valeurs des m´ etadonn´ ees pour les des- cription, M S CR peut maintenant s’´ ecrire :

M S CR (C, R) = α t M S t (m Ct (C), m Rt (R)) + α d M S d (m Cd (C), m Rd (R)) Les m´ etadonn´ ees d´ ecrivant les cours et les ressources peuvent ˆ etre de diff´ erents types. Si l’on se situait dans un web s´ emantique id´ eal, on disposerait des r´ eseaux s´ emantiques d´ ecrivant les valeurs de chaque m´ etadonn´ ees d’un cours et d’une ressource. Dans ce cas, il serait n´ ecessaire de calculer une similarit´ e entre deux graphes. En r´ ealit´ e aujourd’hui, nous ne disposons pas de repr´ esentations aussi fines. Par exemple, dans notre cas, les m´ etadonn´ ees

description

d’un cours ou d’une ressource sont purement textuelles. Nous allons donc devoir utiliser un algorithme de mesure de similarit´ e entre des m´ etadonn´ ees textuelles afin de calculer M S t et M S d .

4.3 Mesures de similarit´ e entre textes

Nous avons besoin th´ eoriquement de deux mesures de similarit´ e, l’une entre titres et l’autre entre descriptions. Toutefois les valeurs de ces m´ etadonn´ ees ´ etant de mˆ eme type (textuelles), bien que de natures diff´ erentes (les titres sont plus concis que les descriptions) nous faisons le choix d’une unique mesure de simila- rit´ e.

Deux grandes cat´ egories d’algorithmes existent : ceux repr´ esentant les textes par des ensembles de mots et ceux repr´ esentant les textes par des vecteurs num´ eriques. Une fois la repr´ esentation choisie, on peut choisir l’algorithme de calcul de similarit´ e comme par exemple la distance cosinus, la distance de Jac- card, le coefficient de Dice, etc. (Cf. [5], p299).

Avant chaque algorithme, les textes peuvent subir un pr´ e traitement, comme celui de la l´ ematisation ou de la racinisation. La l´ ematisation consiste ` a remplacer les pluriels par leurs singuliers, les verbes conjugu´ es par leurs infinitifs, etc. La racinisation quant ` a elle, remplace les mots par leurs racines, soit par troncature fixe (ind´ ependemment de la langue), soit par l’utilisation d’algorithmes plus complexes, fonction de la langue, comme par exemple PORTER pour l’anglais ou CARRY [6] pour le fran¸ cais.

Il est ` a noter qu’il existe aussi un troisi` eme type de pr´ etraitement, nomm´ e

n−grammes qui consiste ` a mettre le texte en minuscule, puis ` a enlever tous les

caract` eres de ponctuation, espace compris, pour enfin le d´ ecouper en ´ el´ ements

(11)

successifs de n caract` eres, chacun d´ ecal´ e du pr´ ec´ edent d’un caract` ere. Ainsi le texte

Un exemple

sera transform´ e en l’ensemble de 4-grammes suivants {unex, nexe, exem, xemp, empl, mple}. n est habituellement choisi en essayant plusieurs valeurs (g´ en´ eralement comprises entre 2 et 5) et en retenant celle qui retourne le meilleur indicateur de performance sur un corpus contrˆ ol´ e.

4.4 Choix de la mesure pour M S t et M S d

Afin de choisir une bonne mesure de similarit´ e pour nos deux couples de m´ etadonn´ ees nous avons test´ e trois algorithmes diff´ erents :

— distance de Jaccard avec pr´ etraitement n-grammes ;

— distance de Jaccard avec racinisation fixe ;

— variante de la distance cosinus, bas´ ee sur une repr´ esentation tf.idf avec ra- cinisation utilisant l’algorithme de CARRY [6](propos´ e par l’API Luc` ene).

Il existe plusieurs crit` eres permettant de qualifier un algorithme de RI. Mais la plupart, comme le rappel, la pr´ ecision ou l’AUC (Area Under Curve) n´ ecessite d’´ etiqueter, pour une requˆ ete donn´ ee, l’ensemble des documents, ce qui n’est pas envisageable lorsque la taille de la base est grande. Toutefois, il existe entre autres le crit` ere

pr´ ecision moyenne au rang k

qui permet de qualifier un algorithme de RI uniquement en fonction des k documents retourn´ es.

La pr´ ecision moyenne au rang k n´ ecessite d’´ etiqueter, au regard d’une requˆ ete q, les k documents retourn´ es avec leur valeur V i qui vaut 0 lorsque le document i est non pertinent et 1 lorsqu’il est pertinent. Cet indicateur est alors la moyenne de ces k valeurs :

P k (q) = 1 k

k

X

i=1

V i

Nos trois algorithmes ont ´ et´ e test´ es sur un corpus de treize cours scienti- fiques dispens´ es par le d´ epartement Architecture des Syst` emes d’Information de l’INSA de Rouen. Pour chaque cours les dix premi` eres ressources propos´ ees par chaque algorithme ont ´ et´ e ´ etiquet´ ees par deux enseignants comme ´ etant

per- tinentes

ou

non pertinentes

. La figure 7 pr´ esente les valeurs de pr´ ecision moyenne au rang 10 pour les treize cours, telles que valeurs pour les α t et α d

soient de 0, 5 (on attribue autant d’importance aux titres qu’aux descriptions).

Nous constatons que c’est l’algorithme propos´ e par l’API Luc` ene qui retourne en g´ en´ eral les meilleurs classements. Il est ` a noter que cet algorithme ne fonc- tionne pas (seulement une ressource jug´ ee pertinente) pour le seul cours

UML et design pattern

(n

o

11). Apr` es ´ etude de la description de ce cours, c’est semble-t-il l’utilisation fr´ equente du mot

diagramme

qui pose probl` eme. Au final en moyenne pour une requˆ ete donn´ ee, 65% des documents retourn´ es sont consid´ er´ es comme pertinents avec une m´ ediane ` a 70%.

5 Architecture du syst` eme

La figure 8 pr´ esente l’architecture logicielle du prototype. Nous proposons

deux nouveaux services : SemINSA qui fournit un acc` es SPARQL ` a la base

(12)

1 2 3 4 5 6 7 8 9 10 11 12 13 0

0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1

Jaccard (racinisation) Jaccard (n-gramme) Deriv. Cosinus (tf.idf) Lucène

Cours

Précision moyenne

Figure 7. Pr´ ecision moyenne des trois algorithmes pour les treize cours

ontologique CDM-fr du d´ epartement ASI de l’INSA de Rouen, LOFAR qui pro- pose les dix meilleures ressources UNIT pour un cours donn´ e. Le service LO- FAR (ensemble de pages JSP et de classes m´ etiers Java) interroge part d´ efaut (param´ etrable) les services SemUNIT et SemINSA en SPARQL. Ce dernier ser- vice a ´ et´ e instanci´ e ` a partir des donn´ ees XML du Syst` eme d’Information du d´ epartement ASI.

triplets RDF SemUNT

triplets RDF SemCDMFr

entrée SPARQL http://semunt.supelec.fr http://seminsa.insa-rouen.fr

XML SI ASI

LOFAR

http://lofar.insa-rouen.fr

Légende

transformation XSLT importation requête SPARQL

Serveur Sesame Serveur Fuseki

Serveur JEE API Jena et Lucène

XML triplets

RDF

Figure 8. Architecture du prototype

6 Conclusion

Dans cet article nous avons d’une part propos´ e une ontologie permettant de d´ ecrire des parcours p´ edagogiques SemCDMfr et d’autre part propos´ e le service LOFAR qui utilise une instance de cette derni` ere ainsi que SemUNIT pour pro- poser des ressources au regard d’un cours. Les r´ esultats de notre exp´ erimentation sont de nature ` a valider notre approche mˆ eme s’ils pourraient ˆ etre encore am´ elior´ es.

Une premi` ere am´ elioration serait de fixer automatiquement l’importance des deux appariements de m´ etadonn´ ees utilis´ ees pour construire la mesure de simi- larit´ e M S CR . On pourrait ainsi faire varier les coefficients α i entre 0 et 1 (tel que P

α i = 1) et choisir le couple de valeur qui donne un meilleur indicateur.

(13)

Une deuxi` eme perspective serait de tester d’autres similarit´ es entre textes.

En effet dans certains cas, la mesure que nous utilisons n’est pas performante (par exemple lorsque les m´ etadonn´ ees textuelles contiennent des mots fortement polys´ emiques). Nous devrions tester et comparer d’autres repr´ esentations de texte, comme par exemple lsa [2], voire tester des mesures de similarit´ e con¸ cues sp´ ecialement pour des textes courts, comme par exemple [7].

Une troisi` eme am´ elioration serait d’utiliser d’autres m´ etadonn´ ees, lors de la recherche (par exemple celles d´ ecrivant le niveau d’´ etude), cela aurait toutefois comme inconv´ enient d’augmenter le nombre de param` etres α i de M S CR . Ou encore lors de la restitution, il serait possible de structurer les r´ esultats.

Enfin nous pr´ evoyons d’´ etudier plus en d´ etail les sch´ emas des bases de donn´ ees utilis´ es dans les deux logiciels les plus utilis´ es par les ´ etablissements de l’ensei- gnement sup´ erieur fran¸cais (les suites de logiciels Cocktail et de l’AMUE) ainsi que les usages qui en sont faits, de fa¸ con ` a concevoir des traducteurs automa- tiques ou semi-automatiques des donn´ ees issues de ces syst` emes d’information vers notre ontologie.

Nous remercions la fondation UNIT pour avoir en partie financ´ e ce travail.

R´ ef´ erences

1. Jean Charlet, Bruno Bachimont, and Rapha¨ el Troncy. Ontologies pour le web s´ emantique. Revue I3, page 31p, 2004.

2. Scott Deerwester, Susan T. Dumais, George W. Furnas, Thomas K. Landauer, and Richard Harshman. Indexing by latent semantic analysis. Journal of the American Society for Information Science, 41(6) :391–407, 1990.

3. Fabien Gandon, Catherine Faron-Zucker, and Olivier Corby. Le WEB s´ emantique, comment lier les donn´ ees et les sch´ emas sur le web. Dunod, 2012.

4. Yoann Isaac, Yolaine Bourda, and Monique Grandbastien. SemUNIT - French UNT and Linked Data. In Proceedings of the 2nd International Workshop on Learning and Education with the Web of Data, volume 840, page 6 pages, Lyon, France, 2012.

CEUR workshop proceedings.

5. Christopher D. Manning and Hinrich Sch¨ utze. Foundations of Statistical Natural Language Processing. MIT Press, Cambridge, MA, USA, 1999.

6. M. Paternostre, P. Francq, J. Lamoral, D. Wartel, and M. Saerens. Carry, un algorithme de d´ esuffixation pour le fran¸ cais. Technical report, Paul Otlet Institute, 2002.

7. Mehran Sahami and Timothy D. Heilman. A web-based kernel function for measu- ring the similarity of short text snippets. In Proceedings of the 15th International Conference on World Wide Web, WWW ’06, pages 377–386. ACM, 2006.

8. SDTICE. Sp´ ecification des m´ etadonn´ ees de description de cours (cdm). Technical

report, MENESR, 2004.

Références

Documents relatifs

Le Gouvernement congolais et la Société de Sciages Industriels Panneaux et Moulures (SIPAM) ont signé une convention de transformation industrielle, ap- prouvée par arrêté n° 7340

Le projet Saphir faisait appel à la notion de graphe patron pour définir des modèles de description sous la forme de graphes conceptuels partiellement instanciés. C’est-à-dire

[r]

Les matières professionnalisantes du cursus de pharmacie telles que la pharmacognosie (ou chimie des substances naturelles d’intérêt thérapeutique), la chimie thérapeutique (ou

Cette phrase montre que Solvay prend appui sur son référentiel de compétences dans son nouvel accord de GPEC pour saisir les différentes sources de compétences : lors de la

M (masse de la nacelle et de l’enveloppe de la montgolfière) = 800 kg ; R (rayon du ballon de la montgolfière) = 10 m, ρ (masse volumique de l’air à 20°C) = 1 ,2 kg/m3, T a

Il s’agira, à partir du texte de Hugo, de construire un schéma d’argumentation (modèle p145 du livre Méthodes et techniques, Nathan 1996) en isolant les arguments adverses à

L’expression onto-poétique est de notre fait et non de notre auteur, mais, au risque de verser dans le jargon philosophique, cette expression permet, nous semble-t-il, de