• Aucun résultat trouvé

Chapitre 8 Conclusion

8.3 Perspectives et recherches futures

Nos travaux permettent de conclure sur la performance des classicateur POKS et bayésiens naïfs dans certains cas. Cependant on a vu que certains jeux de données faisaient échec à ces classicateurs. Il faudrait donc déterminer les raisons qui font que les données recueillies lors des tests de mathématiques posent problèmes. Pour cela, il faudrait éventuellement construire un nouveau questionnaire qui suivrait des critères à déterminer. Le travail demandé serait alors d'identier les raisons qui font que certains jeux de données permettent d'avoir d'excellents résultats (diculté des questions par exemple) et de construire un questionnaire en fonction de ces critères.

De même, nous n'avons pas testé diérentes méthodes de sélection pour la pro- chaine question car celle qui a été retenue semblait susamment performante pour eectuer une comparaison éclairée. Cela dit, cela pourrait être intéressant de se pen- cher sur la question.

D'autre part, notre expérience ne prend pas en compte les compétences et les connaissances à mettre en 1

2uvre pour répondre à une question. Il faudrait donc s'in-

terroger sur les moyens disponibles pour prendre cela en compte, notamment au ni- veau de la sélection de la prochaine question dans le cadre d'un guide d'apprentissage complet.

Et pour nir, il faut tout simplement poursuivre le travail de création du guide d'apprentissage, d'un point de vue programmation de l'interface d'abord mais aussi pour ce qui est d'utiliser au mieux les évaluations précises que l'on possède des élèves.

Références

AINSWORTH, S. et FLEMING, P. (2005). Evaluating a mixed-initiative authoring environment : Is redeem for real ? Proceeding of the 2005 conference on Articial In- telligence in Education. IOS Press, Amsterdam, The Netherlands, The Netherlands, 916.

ALLEN, M. J. et YEN, W. (2001). Introduction to Measurement Theory. Waveland Press.

ANASTASI, A. (1994). Introduction à la psychomà c trie. Guà c rin à c diteur.

AROYO, L. et DICHEVA, D. (2004). The new challenges for e-learning : The educational semantic web. Educational Technology & Society, 7, 5969.

BRUSILOVSKY, P., EKLUND, J. et SCHWARZ, E. (1998). Web-based education for all : A tool for development adaptive courseware. Computer Networks and ISDN Systems. 17.

BRUSILOVSKY, P., SCHWARZ, E. et WEBER, G. (1996). Elm-art : An intelligent tutoring system on world wide web. Springer Verlag, 261269.

CEDERBERG, S. et WIDDOWS, D. (2003). Using lsa and noun coordination in- formation to improve the precision and recall of automatic hyponymy extraction. Proceedings of the seventh conference on Natural language learning at HLT-NAACL 2003. Association for Computational Linguistics, Morristown, NJ, USA, 111118.

CIMIANO, P. (2006). Ontology Learning and Population from Text : Algorithms, Evaluation and Applications. Springer.

COOPER, G. F. et DIETTERICH, T. (1992). A bayesian method for the induction of probabilistic networks from data, 309347.

D., B. (2005). Measuring the Mind : Conceptual Issues in Modern Psychometrics. Cambridge University Press.

DESMARAIS, M. et GAGNON, M. (2006). Bayesian student models based on item to item knowledge structures. EC-TEL. 111124.

DESMARAIS, M., MALUF, D. A. et LIU, J. (1995). User-expertise modeling with empirically derived probabilistic implication networks. User Model. User-Adapt. Interact., 5, 283315.

DESMARAIS, M. C. et LIU, J. (1993). Exploring the applications of user-expertise assessment for intelligent interfaces. S. Ashlund, K. Mullet, A. Henderson, E. Holl- nagel et T. White, éditeurs, Proceedings of the Conference on Human Factors in computing systems, INTERCHI'93. ACM Press, New York, 308313.

DESMARAIS, M. C., MESHKINFAM, P. et GAGNON, M. (2006a). Learned student models with item to item knowledge structures. User Modeling and User- Adapted Interaction, 16, 403434.

DESMARAIS, M. C., MESHKINFAM, P. et GAGNON, M. (2006b). Learned student models with item to item knowledge structures. User Modeling and User- Adapted Interaction, 16, 403434.

DESMARAIS, M. C., VILLARREAL, A. et GAGNON, M. (2008). Adaptive test design with a naive bayes framework. R. S. J. de Baker, T. Barnes et J. E. Beck, éditeurs, EDM. www.educationaldatamining.org, 4856.

DOIGNON, J.-P. et FALMAGNE, J.-C. (1999). Knowledge Spaces. Springer-Verlag, Berlin.

DOMINGOS, P. et PAZZANI, M. (1997). On the optimality of the simple Bayesian classier under zero-one loss. Machine Learning, 29, 103130.

HALD, A. (1999). On the history of maximum likelihood in relation to inverse probability and least squares. Statist. Sci., 14, 214222.

HAMBLETON, R. K., SWAMINATHAN, H. et ROGERS, H. J. (1991). Fundamen- tals of Item Response Theory. Sage Press.

HAMBLETON, R. K., SWAMINATHAN, H. et ROGERS, H. J. (2001). The Ba- sics of Item Response Theory. ERIC Clearinghouse on Assessment and Evaluation, University of Maryland, College Park, MD.

HECKERMAN, D. (1995). A tutorial on learning with Bayesian networks. Rapport technique MSR-TR-95-06, Microsoft Research (MSR), Redmond, WA.

JAMESON, A. (1996). Numerical uncertainty management in user and student modeling : An overview of systems and issues.

KAMBOURI, M., KOPPEN, M., VILLANO, M. et FALMAGNE, J.-C. (1994). Knowledge assessment : tapping human expertise by the query routine. Int. J.

Hum.-Comput. Stud., 40, 119151.

KOEDINGER, K., ANDERSON, J., HADLEY, W. et MARK, M. (1997). Intelligent tutoring goes to school in the big city. International Journal of Articial Intelligence in Education, 8, 3043.

KOEDINGER, K. R., ALEVEN, V., HEFFERNAN, N. T., MCLAREN, B. M. et HOCKENBERRY, M. (2004). Opening the door to non-programmers : Authoring intelligent tutor behavior by demonstration. Intelligent Tutoring Systems. 162174.

LEWIS, C. et SHEEHAN, K. (1990). Using Bayesian decision theory to design a computerized mastery test. Applied Psychological Measurement, 14, 367386.

LOOI, C.-K., MCCALLA, G. I., BREDEWEG, B. et BREUKER, J., éditeurs (2005). Articial Intelligence in Education - Supporting Learning through Intelligent and Socially Informed Technology, Proceedings of the 12th International Conference on Articial Intelligence in Education, AIED 2005, July 18-22, 2005, Amsterdam, The Netherlands, vol. 125 de Frontiers in Articial Intelligence and Applications. IOS Press.

MARTIN, J. et VANLEHN, K. (1995). Student assessment using bayesian nets. International Journal of Human-Computer Studies, 42, 575591.

MISLEVY, R. et CHANG, H. (2000). Does adaptive testing violate local indepen- dence ? Psychometrika, 65, 149156.

NUZZO-JONES, G., WALONOSKI, J. A., HEFFERNAN, N. T. et LIVAK, T. (2005). The extensible tutor architecture : A new foundation for its. Looi et al.

(2005), 902904, 902904.

QUINLAN, R. J. (1993). C4.5 : Programs for Machine Learning (Morgan Kaufmann Series in Machine Learning). Morgan Kaufmann.

RISH, I. (2005). An empirical study of the naive bayes classier. IJCAI-01 workshop on "Empirical Methods in AI".

RUDNER, L. M. (2002). An examination of decision-theory adaptive testing pro- cedures. Proceedings of American Educational Research Association. New Orleans, 437446.

SAVAGE, L. J. (1976). On rereading R. A. Fisher. Ann. Statist., 4, 441500. Edited posthumously by John W. Pratt, With a discussion by B. Efron, Churchill Eisenhart, Bruno de Finetti, D. A. S. Fraser, V. P. Godambe, I. J. Good, O. Kempthorne and Stephen M. Stigler.

THURSTONE, L. L. (1959). The Measurement of Values. The University of Chicago Press.

TURNER, T. E., MACASEK, M. A., NUZZO-JONES, G., HEFFERNAN, N. T. et KOEDINGER, K. R. (2005). The assistment builder : A rapid development tool for its. Looi et al. (2005), 929931, 929931.

VANLEHN, K., LYNCH, C., SCHULZE, K., SHAPIRO, J., SHELBY, R., TAYLOR, L., TREACY, D., WEINSTEIN, A. et WINTERSGILL, M. (2005). The andes physics tutoring system : Five years of evaluation. Proceedings of AIED'05. 678 685.

VANLEHN, K. et MARTIN, J. (1998). Evaluation of an assessment system based on bayesian student modeling. INTERNATIONAL JOURNAL OF ARTIFICIAL INTELLIGENCE IN EDUCATION, 8, 179221.

VANLEHN, K. et NIU, Z. (2001). Bayesian student modeling, user interfaces and feedback : A sensitivity analysis. International Journal of Articial Intelligence in Education, 12, 154184.

VOMLEL, J. (2004). Bayesian networks in educational testing. Int. J. Uncertain. Fuzziness Knowl.-Based Syst., 12, 83100.

WITTEN, I. H. et FRANK, E. (2005). Data Mining : Practical Machine Learning Tools and Techniques, Second Edition (Morgan Kaufmann Series in Data Manage- ment Systems). Morgan Kaufmann.

WOOLF, B. P. et CUNNINGHAM, P. (1987). Building a community memory for intelligent tutoring systems. AAAI. 8289.

ZOUAQ, A. et NKAMBOU, R. (2009). Evaluating the generation of domain onto- logies in the knowledge puzzle project. IEEE Transactions on Knowledge and Data Engineering, 99.

Annexe A

Utilisation de WEKA à travers l'API

Java

An de pouvoir tester rapidement un grand nombre de classicateurs, il existe des bancs d'essais complets qui regroupent un grand nombre de classicateurs classiques. Parmi ceux-ci, il existe le banc d'essais WEKA développé en Java par l'université de Waikato. Pour un usage courant, il présente l'avantage de posséder une interface graphique de qualité qui permet d'eectuer rapidement des comparaisons simples pour lesquelles seul le type de classicateur change. Cependant, si on veut eectuer un très grand nombre de tests avec beaucoup de paramètres qui varient, il est plus ecace d'utiliser l'API Java existante et de programmer une classe qui permettra d'eectuer les tests voulus.

Nous allons donc présenter ici des extraits du code produit avec les commentaires adéquats an d'expliquer rapidement comment fonctionne cette API.

Listing A.1 Inclusion des librairies

1 import weka . core . ∗ ; // Paquets de l 'API weka

import java . i o . ∗ ;

3 // Paquets d ' e n t r e e / s o r t i e Java a f i n de charger l e s

f i c h i e r s de donnees

1 FileReader reader = new FileReader ( filename ) ;

//On charge l e f i c h i e r de donnees grace aux o u t i l s java

3 I n s t a n c e s datas = new I n s t a n c e s ( reader ) ;

//Et on i n s e r e l e tout dans l ' o b j e t I n s t a n c e s d e f i n i par WEKA

Listing A.3 Getters utiles de l'objet Instances

int nbA = datas . numAttributes ( ) ;

2 //Nombre d ' a t t r i b u t s d ' une i n s t a n c e

int nbI = datas . numInstances ( ) ;

4 //Nombre d ' i n s t a n c e s d ' un ensemble de donnees

Instance data = datas . i n s t a n c e (n) ; // i n s t a n c e de rang n

6

I n s t a n c e s testDatas = datas . testCV (n , i ) ;

8 I n s t a n c e s trainDatas = dats . trainCV (n , i ) ;

// Divi se l e s donnees en n p a r t i e s pour une v a l i d a t i o n c r o i s e e a n r e p l i s en extrayant l a i−eme pour l e s t e s t s

et l e r e s t e pour l ' entrainement

Listing A.4 Création des classicateurs

1 c l a s s i f i c a t e u r = new weka . c l a s s i f i e r s . r u l e s . ZeroR ( ) ;

c l a s s i f i c a t e u r = new weka . c l a s s i f i e r s . t r e e s . J48 ( ) ;

3 c l a s s i f i c a t e u r = new weka . c l a s s i f i e r s . bayes . NaiveBayes ( ) ;

c l a s s i f i c a t e u r = new weka . c l a s s i f i e r s . bayes . BayesNet ( ) ;

5 // I n s t a n c i a t i o n d ' un c l a s s i f i c a t e u r ( c f doc pour l e s

7 datas . se tC l as sI n de x ( k ) ;

//Pour i n d i q u e r au c l a s s i f i c a t e u r q u e l l e e s t l a c l a s s e

9

weka . c l a s s i f i e r s . bayes . net . search . l o c a l . K2 cK2 = new weka . c l a s s i f i e r s . bayes . net . search . l o c a l . K2( ) ;

11 cK2 . setInitAsNaiveBayes ( f a l s e ) ;

cK2 . setMaxNrOfParents (3) ;

13 c l a s s i f i c a t e u r . setSearchAlgorithm (cK2) ;

// Creation d ' une i n s t a n c e pour u t i l i s e r l e mode de recherche K2 pour l e reseau bayesien avec l e s parametres c h o i s i s

15

c l a s s i f i c a t e u r [ i ] . b u i l d C l a s s i f i e r ( datas ) ;

17 // Calcul du c l a s s i f i c a t e u r a p a r t i r des donnees datas

Listing A.5 Ordre des questions

1 int nbA = datas . numAttributes ( ) ;

in diceQuestion = ( int ) Math . round ( (nbA−1)∗Math . random ( ) ) ;

3 // Choix a l e a t o i r e

5 proba = c l a s s i f i c a t e u r . d i s t r i b u t i o n F o r I n s t a n c e ( reponsesJusqueLa ) ;

// P r o b a b i l i t e s de chaque p o s s i b i l i t e s (0 ou 1)

7 entro = −proba [ 0 ] ∗ Math . log ( proba [ 0 ] )−proba [ 1 ] ∗ Math . log ( proba [ 1 ] ) ;

// Calcul de l ' e n t r o p i e pour chaque question Listing A.6 Inférence et comparaison

2 i n f e r e n c e = c l a s s i f i c a t e u r . c l a s s i f y I n s t a n c e ( datas . i n s t a n c e ( i ) ) ;

r e e l l e = datas . i n s t a n c e ( i ) . value ( k ) ;

4 //On veut l a valeur devinee et l a v a l e u r e r e e l l e pour l e i

−eme repondant a l a question k

Pour plus d'information, se référer au chapitre 2.13 de Witten et Frank (2005) et à la documentation en ligne à http://weka.sourceforge.net/doc/.

Annexe B

Applications client/serveur

Dans cette section, on présente les chiers XML échangés entre le client et le serveur et on explique l'utilité de chaque élément. Il faut garder à l'esprit que le serveur ne garde pas de sessions et que l'ensemble des échange est sans état.

En premier lieu, voici l'arbre envoyé par le client au serveur. An de simplier la compréhension de l'échange, on présentera ici l'état des arbres XML dans 3 cas :

1. avant de commencer le test ;

2. avant de poser la première question, après le choix du questionnaire ; 3. le cas courant.

Client → Serveur : Initialisation, début du test

Dans ce cas, il sut d'envoyer un arbre vide au serveur qui en déduira qu'il s'agit du début du test. Il renverra alors la liste des questionnaires disponibles ainsi que la liste des méthodes de sélection de la prochaine question.

Listing B.1 Le début du test

<?xml version=" 1 .0 "?>

Client → Serveur : Après le choix du questionnaire

Le choix du questionnaire et de la méthode n'a pas besoin d'être précisé au serveur dans un échange à part car le serveur ne garde de toute façon pas trace de l'échange. On est maintenant avant la première question et il s'agit de déterminer quel est l'indice de cette dernière. Pour cela, on envoie au serveur le nom du questionnaire, la méthode de sélection de la prochaine question et on indique que l'on a encore répondu à aucune question.

Listing B.2 Avant la première question

<?xml version=" 1 .0 "?>

2 <C l i e n t S t a t e>

<c u r r e n t Q u e s t i o n n a i r e>

4 nom_du_questionnaire

</ c u r r e n t Q u e s t i o n n a i r e>

6 <currentMethod> nom_de_la_methode </ currentMethod>

<l a s t I t e m> 8 <index>−1</ index> <!−− −1 indique qu' i l n 'y en a pas −−> 10 <value>0</ value> <!−− 1 s i juste , 0 s i faux −−> 12 </ l a s t I t e m </C l i e n t S t a t e>

Client → Serveur : État courant

Par la suite, le client doit renvoyer au serveur l'état présent. En fonction du clas- sicateur choisi, on aura soit la solution de renvoyer l'historique des bonnes et des

mauvaises réponses ou plutôt les probabilités de chaque question. Cet historique est en fait ce que le serveur a envoyé après la question précédente et ne doit pas être modié par le client.

Listing B.3 État courant

1 <?xml version=" 1 .0 "?>

<C l i e n t S t a t e>

3 <c u r r e n t Q u e s t i o n n a i r e>

nom_du_questionnaire

5 </ c u r r e n t Q u e s t i o n n a i r e>

<currentMethod> nom_de_la_methode </ currentMethod>

7 <l a s t I t e m> <index> n </ index> 9 <!−− i n d i c e de l a d e r n i e r e question repondue −−> <value> 1 ou 0 </ value> 11 <!−− 1 s i juste , 0 s i faux −−> </ l a s t I t e m 13 <State> <item> x1 </ item> 15 <item> x2 </ item>

<!−− i l y a autant d items que de q u e s t i o n s . −−>

17 <!−− x peut e t r e s o i t l a reponse donnee a

l a question correspondante ou a l o r s l a p r o b a b i l i t e de bonne reponse −−>

</ State>

On va maintenant s'intéresser à la réponse du serveur dans tous les cas. En résumé, il va renvoyer la liste des méthodes et des questionnaires après l'initialisation du client et il va renvoyer la liste ordonnée des questions et l'état actualisé après chaque question répondue par le client.

Serveur → Client : Initialisation

Lorsque le serveur reçoit de la part du client un arbre vide, il va renvoyer la liste des méthodes de sélection de la prochaine question qu'il connaît ainsi que la liste des questionnaires dont il a soit un modèle déjà construit soit les archives à partir desquelles il saura recréer un modèle. Il renvoie alors ces deux listes au client.

Listing B.4 Avant la première question

1 <?xml version=" 1 .0 "?> <S erve rS ta te> 3 <l i s t Q u e s t i o n n a i r e> <q u e s t i o n n a i r e> q u e s t i o n n a i r e 1 </ q u e s t i o n n a i r e> 5 <q u e s t i o n n a i r e> q u e s t i o n n a i r e 2 </ q u e s t i o n n a i r e> </ l i s t Q u e s t i o n n a i r e> 7 <listMethod>

<method> methode1 </method>

9 <method> methode2 </method>

</ listMethod>

Serveur → Client : État courant

Lorsque le client envoie la réponse à une nouvelle question, le serveur va calculer le nouvel état du modèle ainsi que l'ordre préférentiel des questions. Dans le cas où le client indique qu'il n'a encore répondu à aucune question, le serveur renvoie l'état initial du modèle.

Listing B.5 État courant

1 <?xml version=" 1 .0 "?>

<S erve rS ta te>

3 <c u r r e n t Q u e s t i o n n a i r e>

nom_du_questionnaire

5 \\ <currentMethod> nom_de_la_methode </ currentMethod>

<State>

7 <item> x1 </ item>

<item> x2 </ item>

9 <!−− i l y a autant d items que de

q u e s t i o n s . −−>

<!−− x peut e t r e s o i t l a reponse donnee a l a question correspondante ou a l o r s l a p r o b a b i l i t e de bonne reponse −−> 11 </ State> <l i s t I t e m> 13 <item> n1 </ item> <item> n2 </ item> 15 <!−− c e t t e l i s t e e s t ordonnee et correspond a l i n d i c e des q u e s t i o n s a poser −−>

</ l i s t I t e m>

Annexe C

Exemples de questions

Voici quelques questions telles que posées lors d'un questionnaire typique de ma- thématiques.

1. Soit les graphes suivants

- 6 x y a) - 6 A A A A        x y b) - 6 x y c) - 6 '$ x y d) - 6 '$ x y e) - 6 ' & $ % x y f)

Les graphes représentant des fonctions sont

1) seulement (a),(b) et (d) 2) seulement (a),(b),(c) et (d) 3) tous

4) tous sauf (c) et (f) 5) je ne sais pas

2. Si l'aire du carré intérieur est de 6 cm , l'aire du carré extérieur est de 1) 9 cm2 2) 12 cm2 3) 24 cm2 4) 36 cm2 5) je ne sais pas @ @ @ @ @ @ @ @ 3. Soit la fonction g(x) =            1 si x = 0 1 x si x 6= 0 . Alors

1) g(x) est continue partout

2) g(x) est continue partout sauf en x = 0 3) g(x) est continue partout sauf en x = 1 4) g(x) est croissante pour x > 0

5) je ne sais pas

4. Soit M(2, π/3) un point en coordonnées polaires. Soit x et y les coordonnées cartésiennes de M. Alors la distance de M à l'origine est

1) x2+ y2 2) 2

3) 2 cos π/3 4) 4

5. L'équation de la tangente au cercle d'équation (x−1) + (y − 2) = 4 passant par le point A(3, 2) est

1) x = 2 2) y = 3 3) 2x − 3y = 0 4) autre chose 5) je ne sais pas 6. Si −→bc = x −→ab + y −mb→ alors 1) x = 1 et y = −1 2) x = 2 et y = −1 3) x = 1 et y = −2 4) x = 2 et y = −2 5) je ne sais pas                             A A A A A A A A a b c d m

Documents relatifs