Teaching - MAIAD


MAIAD: boosting pour la classification de texte

Soutenance le 18 janvier dans la salle habituelle

Nous allons procéder en 2 groupes:

Les personnes dont le nom commence par la lettre A -> K (inclus) viennent à 8h30 Les autres viennent dans le second créneau, à 10h45

Rappel des critères de notations de la soutenance:

- Clarté de la présentation

- Qualité de l'oral et des slides

- Originalité de présentation (insister sur les améliorations que vous avez apporté, ne pas passer trop de temps sur Adaboost/perceptron qui ont été expliqué en cours)

- Réponses aux questions

Les performances de vos méthodes seront évaluées dans une seconde note sur le rapport/code.

>>block border="3px dotted red"<< Soutenance le 22 janvier en salle 31-207 à partir de 10h30 >><<

MAJ suite aux problèmes d'algorithmique de la deuxième séance

Consignes et évaluation de l'UE

Soumission des scores

Résultats de la compétition officielle:

resultsDEFT05.pdf

Ressources


Séance 1

Cours 1

TD 1 Scripts octave: Code octave

TDPerceptron_09.pdf (Facultatif)

Une version plus complète, avec certaines réponses concernant le TD (slides de J. Mary): ici

TDBoosting.pdf


Séance 2/3

Cours 2

Données encodées en UTF-8 (apprentissage et test) DonneesMAIAD.zip

Version 2 logicielle, remplace la précédente

Code java

  • résous quelques bugs identifiés en séances
  • simplifie le perceptron fourni pour plus de clarté
  • propose un code octave de base pour vérifier le bon fonctionnement du Java
  • NB: la plupart du code fourni est assez simple... N'hésitez pas à éliminer le code que vous ne comprenez pas pour partir d'une base saine (reprogrammer le perceptron, changer le calcul de performance...)

Si vous rencontrez des problèmes mémoire:

 -Xmx1024m

dans Run->Run configuration->Arguments->VM arguments

Si vous rencontrez des problèmes de transposée sur les matrices sparse avec octave 3.2.3, soit vous bidouillez, soit vous revenez à octave 3.0.5 (c'est plus lent mais plus stable !).

NB: je continuerai à mettre à jour cette page avec vos différents retours

V2 -> Encodage du code JAVA en utf8 Code java

Si vous rencontrez des problèmes d'encodage sur le corpus ->
iconv -f latin1 -t utf8 corpus.tache1.learn > corpus.tache1.learn.utf8


Séance 3

Les résultats sur les données de test sont à fournir au format suivant:

un fichier result.txt contenant sur chaque ligne:

CLASSE

La ligne du fichier doit correspondre à la ligne contenant la phrase dans le fichier original. La classe est M ou C.

NB: en octave, il suffit de créer un vecteur colonne avec des M et des C puis de faire save("filename", "nom_vecteur"); Ensuite, vous lancerez un script pour éliminer les lignes en trop.


Constitution du rapport/soutenance?

Pour aller plus loin

  • tester différentes représentations:
    • tf-idf lien wikipedia
    • application de différentes heuristiques de votre choix
    • application de stratégies issues de la bibliographie présente sur le site de DEFT: http://deft.limsi.fr/
  • lemmatisation: une idée classique en représentation de texte consiste à regrouper les mots similaires comme les différentes conjugaisons d'un verbe. Cette opération s'appelle la lemmatisation, elle peut être effectuée à l'aide d'un logiciel comme tree-tagger.