Contraste et catégorisation

Encadrants : 

Occurrences : 

2018

Nombre d'étudiants minimum: 

3

Nombre d'étudiants maximum: 

6

Nombre d'instances : 

1

Les techniques de clustering produisent des classes d’objets et des jugements d’appartenance à ces classes.

L’idée du contraste consiste à opérer une différence vectorielle entre un objet et la classe la plus proche, puis de caractérser cette différence. Ainsi, une tomate noire sera décrite comme telle parce que la différence avec le prototype "tomate" sera proche du prototype "noir".

L’opération de contraste permet à une IA :

  • de comprendre le sens de "petite bactérie" et de "petite galaxie" sans passer par l’ensemble des objets petits, car dans les deux cas "petit" correspond au contraste avec le prototype,
  • de produire des descriptions pertinentes : "c’est un chanteur qui a dix millions de vues sur Youtube", car c’est ce qui le distingue du prototype de chanteur,
  • de produire des négations et des explications : ce n’est pas un écrivain, parce qu’il n’a pas écrit de romans,
  • de détecter des anomalies : un chat qui parle,
  • d’appendre à partir d’un seul exemple : un enfant qui voit pour la première fois un chat blanc, noir aux extrémités, comprend et mémorise l’expression "chat siamois."

Il s’agit de réaliser une première implémentation du contraste sur un jeu de données réel ou artificiel. L’algorithme sera appliqué deux fois: une fois sur les objets eux-mêmes, une deuxième fois sur les contrastes (différences objets-prototypes). La deuxième application du contraste est censée faire ressortir des modifieurs interprétables comme des adjectifs.

La suite du projet consiste à placer le contraste au coeur de l’activité d’apprentissage, en l’utilisant pour former les catégories. L’idée est de permettre un apprentissage pertinent en présence de (très) peu de données.

Langage de réalisation: python

URL du projet : http://teaching.dessalles.fr/Projects/P18051801.html