Appariement sémantique – Use case : Job Matching

Introduction

Consulter et analyser une offre d’emploi ou un CV est une activité plutôt simple pour un être humain. Ce type de contenu est souvent assez structuré afin de distinguer chaque section. Pour permettre de retrouver facilement ce qui intéresse le lecteur et afin qu’il se repère rapidement dans ce type de document, on y insère souvent des éléments visuels ou des objets graphiques (tels que des icônes, puces, images, lettres en gras, de la marge, du retrait, etc.).

Cette analyse devient un réflexe chez l’humain, par contre, elle sera toujours dépendante de la puissance des algorithmes d’apprentissage et de traitement de langages pour une machine. L’appariement sémantique (matching) fait par un humain qui maîtrise le sujet est souvent pertinent. Ceux, même si les textes cachent de l’ironie, du sens figuré par exemple, un être humain est souvent capable d’identifier ces subtilités, n’est pas le point fort des ordinateurs. Heureusement qu’en job matching, la nature professionnelle des textes nous épargne ce type de contenu.

 

Qui réussira ? Algorithmes ou humains ?

 

En effet, le langage et sa symbolique évoluent constamment et leurs interprétations dépendent de nos connaissances, de notre culture générale et de nos repères personnels ; maintes concepts que l’informatique n’a pas réussi à coder. Heureusement, les algorithmes évoluent aussi pour essayer d’obtenir un résultat le plus proche possible de ce qu’un être humain peut accomplir. Nous vous présentons ici quelques approches et algorithmes d’appariement sémantique.

Un cas d’utilisation

Pour comprendre comment cela peut être utile, prenons l’exemple du job matching. Nous avons d’un côté des milliers de CVs/profils qui représentent des milliers de personnes, et de l’autre côté un ensemble d’employeurs à la recherche et la découverte des meilleurs profils. Le candidat publie une description de son parcours professionnels :  ses expériences, ses certifications et ses formations. Les employeurs souhaitent sélectionner le plus pertinemment possible la meilleure description de profil pour chacune de leurs requêtes, tout en espérant que cette description reflète bien le profil réel du candidat.

Aujourd’hui, cette description (CV, biographie) est une sorte de contrat tacite entre le candidat et son potentiel futur employeur afin d’accéder à l’étape d’entretien voire d’embauche, d’où l’importance de cette phase de découverte. D’habitude les requêtes des employeurs (ou de leurs clients) sont décrites sous forme d’une fiche de poste ou de mission. L’idée est de réussir à découvrir automatiquement les meilleurs profils uniquement à partir des requêtes sans aucune intervention humaine. Une des approches les plus répandues est d’annoter les CVs (les descriptions de profils) avec des tags.

Ces annotations permettent à la fois de résumer ces descriptions en quelques mots-clés et de les indexer. Cette approche a ses limites : d’une part, les mécanismes de découverte des profils consistent uniquement à apparier d’une manière syntaxique les termes d’une requête à une description offerte ; d’autre part, les mécanismes sémantiques actuels associent des annotations/tags/concepts (des simples termes, mots, c’est-à-dire de la syntaxe à associer) à une description sans préciser la nature sémantique de ces annotations. On ne précise pas le rôle/la relation/le sens de ces annotations/tags/concepts par rapport à la description.

Comment annoter sémantiquement les concepts ?

Comment annoter sémantiquement les concepts ?

 

La figure ci-dessus, issue des travaux de recherche en Web sémantique, offre une description sémantique standardisée d’un service de réservation de vol. Le service est annoté par des concepts du métier (la confirmation du vol, les infos complémentaire à la réservation). Ce ne sont pas des simples tags, car ici, chaque concept est annoté par sa signification : le sens est précisé par le rôle dans le service (SERVICECONCEPT) joué par le tag (MODELREFERENCE).

Exemple, le résultat (RESULT) de l’opération de réservation de vol (RESERVEFLIGHT) est le tag (RESERVATIONINFO). > Source

Pour comparer la description d’un profil requis à celle d’un profil offert, le processus d’appariement sémantique effectue un appariement à chaque niveau d’éléments des descriptions (appariement entre compétences requises et offertes, appariement entre tâches requises et offertes…). Ceci est appelé un appariement élémentaire. L’ensemble des résultats de tous les appariements élémentaires peut être agrégés selon différents principes afin de calculer le degré global d’appariement sémantique.

Dans cet article, nous présentons une approche d’appariement élémentaire et trois principales approches d’agrégation pour l’appariement global : Min-Average, Cupid et Combinatory. Cette approche d’appariement sémantique m’a permis de concevoir et de réaliser un nouveau matchmaker sémantique (apparieur sémantique) entre les offres et les demandes. Ce matchmaker sémantique peut être adapté à la découverte des CVs, des biographies et des profils.

Appariement sémantique élémentaire

Pour réaliser un appariement sémantique entre deux descriptions, nous proposons une approche d’appariement global basée sur l’agrégation des appariements sémantiques élémentaires entre les éléments composants de chacune des descriptions de profils.

Principe de l’appariement global

L’appariement est dit élémentaire lorsqu’il s’applique à la comparaison de couples d’éléments de même nature de part et d’autre : compétences offertes avec compétences requises, rôles offerts avec rôles requis, tâches offertes avec tâches requises et technologies maîtrisées offertes avec technologies requises.

Un degré d’appariement élémentaire représente donc à quel point deux sections / types d’éléments sont similaires.

L’appariement est dit global lorsqu’il produit l’évaluation finale de toutes les valeurs d’appariement élémentaires, une agrégation qui permet de consolider toutes les valeurs propres aux différents éléments d’un profil et de les substituer par une seule valeur, propre au profil, appelée degré d’appariement.

La phase d’appariement sémantique se déroule sur deux étapes :

  1. Calcul des valeurs d’appariements élémentaires entre éléments des descriptions de profils,
  2. Agrégation des valeurs d’appariements élémentaires et le calcul des degrés globaux d’appariement.
Le matching global est une agrégation de matchings élémentaires
Le matching global est une agrégation de matchings élémentaires

 

Dans ce qui suit, nous présentons une échelle de degrés d’appariement sémantique ainsi que les principes de l’appariement sémantique élémentaire.

Degrés d’appariement sémantique élémentaire

L’appariement élémentaire repose sur une approche logique et déductive. Au lieu d’utiliser des simples tags syntaxiques, les éléments -des offres et des demandes- sont annotés sémantiquement avec des concepts logiques provenant d’ontologies. L’appariement de ces éléments -entre offre et demande- se résume à un appariement entre les concepts qui les annotent.

Les concepts ici annotent les compétences, les rôles, les tâches, les technologies, etc. La similarité entre deux concepts est évaluée par un degré d’appariement. Les degrés d’appariement élémentaire utilisés dans notre approche sémantique sont :

– “Exact” : si le concept offert et le concept requis sont les mêmes (ou équivalents)
– “Subsumes” : si le concept offert est un sous concept du concept requis,
– “Subsumes-by” : si le concept requis est un sous concept du concept offert,
– “Has-same-class” : si les concepts (offert et requis) sont sous concepts du même concept,
– “Unclassified” : si au moins un des deux concepts n’est pas spécifié,
Fail” : si les deux concepts sont spécifiés mais aucune relation ne peut être déterminée entre eux.

Ces degrés d’appariement sont fortement inspirés de la théorie de subsomption utilisée pour déterminer les relations logiques et donc les valeurs d’appariement entre deux concepts. De plus, certains degrés permettent de distinguer avec précision certains cas d’appariement qui manquaient à l’état de l’art. Certains degrés sont propres à notre approche (Has-Same-Class et Unclassified) et les autres trouvent leurs origines dans l’état de l’art sur l’appariement des profils.

 

Structure d’un CV à apparier sémantiquement – Premier exemple

Voici la structure type d’un CV :

Coordonnées

  • prénom, nom
  • adresse
  • téléphone privé/mobile (quand peut-on vous joindre ?)
  • téléphone professionnel (éventuellement la ligne directe)
  • adresse e-mail
  • date de naissance
  • nationalité (éventuellement le permis de séjour)
  • état civil et nombre d’enfants (année de naissance)

Expérience professionnelle

  • les dates
  • entreprise, lieu
  • intitulé du poste/fonction
  • domaine et activités (tâches principales et vos responsabilités, les plus gros succès/projets).

Formation scolaire

  • hautes écoles (dates et lieux)
  • centre de formation professionnelle (éventuellement école de maturité professionnelle, dates et lieu)
  • second cycle / lycée (dates et lieu)
  • école primaire (les années et le lieu)

Formation professionnelle

  • formations de plusieurs années avec un diplôme professionnel telles que : étude HES, EPF/fac, Master/Bachelor
  • formation professionnelle de base

Formation secondaire

  • Les cours, les ateliers, les séminaires

Connaissances linguistiques (à indiquer avec le degré de maîtrise, les qualifications)

  • langue maternelle
  • langues étrangères

Connaissances informatiques (liste des connaissances générales et spécifiques)

Autres

  • hobbies
  • service militaire/civil

Références

  • volontiers sur demande

Comme vous le remarquez, toutes les informations citées ci-dessus ne sont pas souvent utiles lors de la première phase du job matching, appelons la : découverte sémantique. Cette phase permet de découvrir ce que nous pouvons obtenir de façon automatique en lançant notre requête auprès de la base de CV. C’est une première sélection très importante qui permet de gagner du temps en éliminant tous les CVs impertinents pour le poste convoité et sélectionner les CVs les plus adéquats sémantiquement. Il est important de ne garder que les informations potentiellement pertinentes pour cibler avec une plus grande précision les compétences et les savoir-faire des personnes.

Sélection des informations pertinentes

Rappelons tout d’abord qu’une information ne peut être considérée pertinente que dans un contexte donné. C’est pour cela, que le paramétrage des requêtes reste une étape essentielle dans le processus de matching. Plus le paramétrage est soigné, plus la découverte est pertinente.

Pour notre exemple, un poste pour début janvier 2019 au nouveau parc technologique de Saclay, ingénieur junior sur les technologies liées aux drones et aux problématiques d’autonomie auprès du ministère de la défense, à l’aise avec l’anglais académique. Nous gardons les informations suivantes :

Coordonnées

  • adresse, nationalité

Expérience professionnelle

  • les dates, entreprise, lieu, intitulé du poste/fonction
  • domaine et activités (tâches principales et vos responsabilités, les plus gros succès/projets).

Formation scolaire

  • hautes écoles (dates et lieux)

Formation professionnelle

  • formations de plusieurs années avec un diplôme professionnel tel que : étude HES, EPF/fac, Master/Bachelor
  • formation professionnelle de base

Formation secondaire

  • Les cours, les ateliers, les séminaires

Connaissances linguistiques (à indiquer avec le degré de maîtrise, les qualifications)

  • langue maternelle, langues étrangères

Connaissances informatiques (liste des connaissances générales et spécifiques)

Maintenant, nous avons les informations élémentaires. Sur chacune d’elles on va appliquer un matching élémentaire, puis calculer le matching global. C’est la fin de cette première partie d’article.

Conclusion 

Dans la prochaine partie, nous examinerons ensemble le cas particulier où la requête ne contient pas toutes les informations requises et ainsi démontrer comment ceci n’est guère un souci pour le matching. Ensuite, nous reprendrons notre exemple afin de comprendre comment préparer la requête pour la découverte pour enfin réaliser le matching sémantique.

À lire également : Voice-IT : La Sémantique pour les assistants virtuels

 

Des questions sur le sujet ? N’hésitez pas ! 

CONTACTEZ-NOUS !

 

Share
Yassin CHABEB
Yassin CHABEB

855

Leave a Reply

Your email address will not be published. Required fields are marked *