1.1 Contribution L’objectif de ce rapport est de présenter les études que nous avons réalisées sur la nière dont nous pouvons améliorer la déduplication des données dans EBX1 en fonction
Trang 1UNIVERSITÉ NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL
ELIODOR EDNALSON GUY MIRLIN
SYSTÈME DE DÉDUPLICATION UTILISANT LES
TECHNIQUES D’APPRENTISSAGE AUTOMATIQUE
HỆ THỐNG PHÂN TÍCH DỮ LIỆU TRÙNG LẶP SỬ DỤNG
KĨ THUẬT MACHINE LEARNING
MÉMOIRE DE FIN D’ÉTUDES DU MASTER INFORMATIQUE
HANOI - 2018
Trang 2UNIVERSITÉ NATIONALE DU VIETNAM, HANOI
INSTITUT FRANCOPHONE INTERNATIONAL
ELIODOR EDNALSON GUY MIRLIN
SYSTÈME DE DÉDUPLICATION UTILISANT
LES TECHNIQUES D’APPRENTISSAGE
AUTOMATIQUE
H TH NG PHÂN TÍCH D LI U TRÙNG L P Ệ Ố Ữ Ệ Ặ
S D NG KĨ THU T MACHINE LEARNING Ử Ụ Ậ
Spécialité : Systèmes Intelligents et Multimédia
Code : Programme Pilote
MÉMOIRE DE FIN D’ÉTUDES DU MASTER
INFORMATIQUE
Sous la direction de :
Pierre Bonnet, COO-Orchestra Networks, Expert en SI
David Lapetina, Directeur des opérations Orchestra Networks
Vietnam - Hanoi
HANOI - 2018
Trang 3ATTESTATION SUR L’HONNEUR
J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les données etles résultats qui y sont présentés sont exacts et n’ont jamais été publiés ailleurs La sourcedes informations citées dans ce mémoire a été bien précisée
LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả nêu trongLuận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác.Các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc
Signature de l’étudiant
ELIODOR EDNALSON GUY MIRLIN
Trang 4La gestion des données de référence consiste à trouver ou créer un enregistrementunique contenant tout ce qu’une entreprise ou une organisation doit savoir sur une per-sonne, un emplacement, un produit, un fournisseur, une autre entreprise ou une autreentité en particulier Il peut également être appelé “master record” ou “golden record”
En fait, la notion de qualité des données, en particulier le problème de duplication, présente un défi très important pour une bonne gouvernance des données La présence
re-de doublons ou re-de données similaires soulève d’importantes préoccupations quant à laqualité des données qu’il faut ainsi supprimer
La déduplication des enregistrements est un processus important dans l’intégration
et le nettoyage des données Elle permet d’identifier les enregistrements d’une base dedonnées ou provenant de différentes sources qui représentent la même entité du monderéel Elle assure une meilleure qualité des données résultantes de ce processus Ce pro-cessus est utilisé pour créer un "golden record" Ainsi, l’extraction de connaissances àpartir de ces dernières sera plus précise Au cours des dernières années, diverses tech-niques d’apprentissage automatique ont été utilisées pour aborder ce problème Sachantque, le produit EBX d’Orchestra Networks utilise cette approche, notre travail consiste à :
— Comparez quelques techniques de détection d’enregistrements dupliqués en sant l’apprentissage automatique et évaluez leurs avantages et leurs inconvénients
utili-— Développer un prototype qui combine les meilleures caractéristiques et permet deproduire une détection d’enregistrements dupliquées améliorées dans EBX
L’approche que nous avons utilisée pour aborder le problème dans le cadre de notrestage est l’approche d’apprentissage actif Différentes expériences sont menées sur unensemble de données pour vérifier l’efficacité de l’algorithme dans la détection des enre-gistrements dupliqués
Mots clés : Prétraitement des données, détection de doublons, apprentissage
automa-tique, apprentissage supervisé, apprentissage non-supervisée, mesure de similarité, NLP, classification de texte, traitement du langage naturel, Data quality Management, Dédu- plication, doublons, similaire, record matching, machine learning, clustering, duplicated records, etc.
Trang 5Master data management is the process of finding or creating a single record thatcontains everything your organization needs to know about a particular person, location,product, supplier, business, or other entity It can also be referred to as the master record
or golden record Indeed, the notion of data quality particularly the duplication problempresents a very important challenge for good data governance in order to improve in-teractions between the different employees of one or more organizations concerned Thepresence of duplicate or similar data raises significant concerns about the quality of thedata
Record matching is an important process in data integration and data cleaning toidentify records from different sources representing the same real-world entity It ensures
a better quality of data results Thus, the extraction of knowledge from these data is moreaccurate This process is used to create a "golden record" In recent years, a variety of ma-chine learning techniques have been used in record linkage As EBX product of OrchestraNetworks is using this approach, our work is to :
— Compare a few record matching techniques using machine learning and evaluatetheir advantages and disadvantages
— Develop a technique that combines the best features from these techniques toproduce an improved record matching techniques in EBX
Our approach is the use of “dedupe” python library with “active Learning” and tering techniques to resolve record matching problem Various experiments are conducted
clus-on a dataset to verify the effectiveness of the algorithm in detecting the duplicate records
Keywords : Unsupervised Learning, Similarity Learning, Language Processing, Data
Quality Management, Deduplication, record matching, machine learning, clustering, plicated records, etc.
Trang 6La réalisation de ce document qui couronne la fin de notre formation de Master, rait été possible sans l’appui direct ou indirect des personnes et des institutions auxquellesnous tenons ici à exprimer nos sincères remerciements Il s’agit de :
n’au-— L’Agence Universitaire de la Francophonie (AUF), pour nous avoir donné tunité de poursuivre nos études de Master à l’IFI à travers une bourse de mobilité ;
l’oppor-— L’Institut Francophone International (IFI) et de tous les professeurs, pour la qualité
de la formation dispensée ;
— M David Lapetina et M Pierre Bonnet pour m’avoir accueilli au sein de leur équipe
et pour leur suivi et implication personnelle dans la réalisation de mes travaux ;
— L’ensemble du personnel d’Orchestra Networks à Hanoi, pour son accueil très leureux et pour les conditions de travail optimales ;
cha-— J’adresse mes sincères remerciements aux membres de AI Academy Vietnam pourl’honneur qu’ils m’ont fait par leur acceptation de participer à l’évaluation de montravail ;
— J’aimerais remercier toute ma famille pour leur soutien et leur amour tout au long
de mes études ;
— Enfin, tous ceux qui de près ou de loin m’ont apporté leur soutien durant maformation
Trang 71.1 Contribution 1
1.2 Organisation du rapport 1
2 Vue d’ensemble 3 2.1 Définition du problème 3
2.2 Qualité des données 4
2.3 Nettoyage des données 4
2.4 Problèmes causés par les données dupliquées 4
2.5 EBX.Platform 5
2.5.1 Pourquoi une solution MDM 5
2.5.2 Les fonctionnalités EBX.Platform 6
2.6 Motivation 8
3 Etat de l’Art 9 3.1 Mesures de similarité : revue de l’existant 9
3.1.1 Le problème de la comparaison des chaˆınes de caractères 9
3.1.1.1 Métriques basées sur des caractères 10
3.1.1.2 Métriques basées sur des Tokens(Lexèmes) 12
3.1.1.3 Métriques hybrides 13
3.1.2 Mesures de similarité numériques 14
3.2 Detection des enregistrements dupliqués 14
3.2.1 Techniques basées sur des règles 15
3.2.2 Techniques basées sur la distance 15
3.2.3 Approches probabilistes 16
3.2.4 Apprentissage automatique 16
3.2.4.1 Généralités 16
3.2.4.2 Utilisation d’algorithmes d’apprentissage pour combiner des fonctions de similarité 17
3.2.4.3 Apprentissage supervisé 17
3.2.4.4 Apprentissage non-supervisé 18
3.2.4.5 Apprentissage Actif 20
3.2.4.6 Synthèse 21
Trang 84 Solution proposée 22
4.1 Dedupe 22
4.1.1 Blocage et calcul de distance 23
4.2 Architecture globale 23
4.2.1 Prétraitement des données 25
4.2.2 Phase d’apprentissage 25
4.2.3 Regroupement 27
5 Expérimentations 28 5.1 Configuration de l’expérience 28
5.2 Interfaces Utilisateurs 29
5.3 Choix du bon seuil 31
5.4 Jeux de données 31
5.5 Analyse des expériences 31
5.5.1 Correspondance Exacte 32
5.5.2 Appariement flou ou Correspondance Approximative(Fuzzy mat-ching ) 32
5.5.2.1 Correspondance Approximative sur un(1) champ 33
5.5.2.2 Correspondance Approximative sur un(3) champs 33
Trang 9Liste des tableaux
2.1 Exemple de données dupliquées 35.1 Experimentations : Configuration logicielle et matérielle 28
Trang 10Table des figures
1 Classification des métriques de chaˆınes 10
2 Choix des attributs les plus utiles pour une tâche de déduplication dépen-damment du jeu de données en entrée 23
3 Architecture du système proposée 24
4 Phase de labellisation “Contribution Humaine” 26
5 Page d’acceuil et de chargement des données-système implémenté 29
6 Page de sélection des champs importants-système implémenté 29
7 Phase de labellisation-système implémenté 30
8 Métriques d’évaluation pour le matching exact- A gauche(sur 1 champ)- A droite(sur 3 champs) 32
9 Performance des deux systèmes pour le cas de détection de duplication (matching Exact) 32
10 Métriques d’évaluation du système proposé- Correspondance approxima-tive(1 champ) 33
11 Métriques d’évaluation du système proposé - Consumer.CSV(3 champs) 34
12 Extrait du fichier CSV généré en sortie d’EBX (appariement flou - 3 colonnes) 34 13 Extrait du fichier CSV généré en sortie du système proposé(appariement flou - 3 colonnes) 34
14 Extrait du fichier CSV généré en sortie du système proposé(appariement flou - 3 colonnes) 35
15 Extrait du fichier CSV généré en sortie d’EBX(appariement flou - 3 colonnes) 35 16 Extrait du fichier CSV généré en sortie du système implémenté(appariement flou - 3 colonnes) 35
Trang 11Chapitre 1
Introduction
De nos jours, les données représentent un actif pour les entreprises et les trations et contribuent ainsi à leur développement De nombreux secteurs et systèmesdépendent de la précision des bases de données pour effectuer des opérations telles que larecherche d’informations potentielles, utiles et auparavant inconnues dans leurs données
adminis-La qualité des informations liées à un grand système de gestion des données dépend de
la qualité des données collectées Ainsi, la qualité des données est une question très portante pour une meilleure gouvernance Malheureusement, la présence des doublons ousimilaires crée des problèmes de qualité de données importants La duplication des enre-gistrements constitue l’un des problèmes majeurs de la qualité des données car, une prise
im-de décision fondée sur im-de mauvaises informations peut être préjudiciable à l’entreprise, cequi entraˆıne un coˆut élevé et une très mauvaise prise de décision
Dans ce cas, la déduplication améliore la qualité des données dans la mesure ó, unefois ce nettoyage effectué, le système ne contiendra que des données fiables et pertinentes
1.1 Contribution
L’objectif de ce rapport est de présenter les études que nous avons réalisées sur la nière dont nous pouvons améliorer la déduplication des données dans EBX1 en fonctiondes variantes des fonctions de similarité classiques et l’application de l’approche d’appren-tissage automatique qui, de nos jours, sont couramment utilisées pour la détection desenregistrements dupliqués Nous présentons le système que nous avons développé, qui estcapable d’effectuer la tâche de détection des doublons en utilisant l’approche d’apprentis-sage actif Ensuite, des expériences ont été réalisées pour montrer l’efficacité du systèmeproposé
ma-1.2 Organisation du rapport
Ce rapport est organisé autour de six (6) chapitres
1 un logiciel MDM créé par la société Orchestra Networks
Trang 12Introduction 1.2 Organisation du rapport
Le chapitre 2 présente une vue d’ensemble du problème qui peut être catégorisé commeune solution à apporter dans le cadre du nettoyage des données (gestion de la qualité desdonnées)
Le chapitre 3 constitue l’état de l’art (approche classique et approche d’apprentissageautomatique)
Les chapitres 4 et 5 comportent les différentes étapes d’implémentation et d’évaluation
de nos approches Nous entamons tous les détails d’implémentation et de la réalisation denos propositions Ensuite nous exposons les démarches que nous avons suivies pour éva-luer notre système et nous discutons les différents résultats issus de nos expérimentations
Le chapitre 6 présente la conclusion générale de ce travail et esquisse nos diversesperspectives
Trang 13Chapitre 2
Vue d’ensemble
La détection des données dupliquées est la tâche d’identification, de correspondance
et de fusion des enregistrements qui correspondent aux mêmes entités à l’intérieur d’un
ou plusieurs jeu(x) de données(8) Les entités considérées se réfèrent le plus souvent à despersonnes, telles que des patients, des clients, des contribuables ou des voyageurs, maiselles peuvent également faire référence à des publications ou des citations, des produits
de consommation ou des entreprises
2.1 Définition du problème
La déduplication est une méthodologie permettant de prendre les mêmes décisionsquant à savoir si deux enregistrements ou plus représentent la même entité dans la réalitécomme aurait pu faire un humain(Christen) Brièvement, c’est la tâche de trouver desenregistrements qui font référence à la même entité dans une ou différentes sources dedonnées Ainsi, une entité est définie comme étant une chose unique (une personne, uneentreprise, un produit) avec un ensemble d’attributs la décrivant (un nom, une adresse,une forme, un titre, un prix, etc.) Cette même entité peut avoir plusieurs références surplusieurs sources de données, par exemple une personne avec deux adresses électroniquesdifférentes, une entreprise avec deux numéros de téléphone différents
William J Smith 1-2-73 Berkeley, California
Bill Smith 2 Janv 1973 Berkeley, Calif
Table 2.1 – Exemple de données dupliquées
Au cours de cette dernière décennie, divers domaines d’application et domaines derecherche ont développé leurs propres solutions au problème de duplication des données et,par conséquent, cette tâche est désormais connue sous plusieurs appellations : résolutiond’entité, appariement des enregistrements, réconciliation des données et la déduplication
Trang 14Vue d’ensemble 2.2 Qualité des données
2.2 Qualité des données
La qualité des données est un terme générique décrivant à la fois les caractéristiques
de données : complètes, fiables, pertinentes et à jour, cohérentes mais aussi l’ensemble
du processus qui permet de garantir ses caractéristiques(Aicha Ben Salem, 2017) Le butest d’obtenir des données sans doublons, sans fautes d’orthographes, sans omission, sansvariation superflue et conforme à la structure définie Les données sont dites de qualité sielles satisfont aux exigences de leurs utilisateurs En d’autres termes, la qualité des donnéesdépend autant de leur utilisation que de leur état Pour satisfaire à l’utilisation prévue,les données doivent être exactes, opportunes et pertinentes, complètes, non-redondantes,compréhensibles et dignes de confiance(24)
2.3 Nettoyage des données
Le nettoyage des données est un processus qui consiste à détecter et à supprimer deserreurs et des incohérences de données afin d’améliorer la qualité des données (12) Ceproblème émerge aussi bien dans les bases de données individuelles que lors de la fusion
et l’intégration de plusieurs bases Ainsi, il faut souligner que les préoccupations giques de nombreuses entreprises concernent aujourd’hui les données (bases de données,entrepôts de données, Big Data, ) Celles-ci sont devenues essentielles pour une meilleuregestion, pour aider à développer des outils de prise de décision et de prévision Parfois,les données sont très volumineuses, hétérogènes, distribuées et de qualité variable Dans
straté-ce cas, plusieurs types d’anomalies peuvent exister dans les données collectées ment les doublons, des valeurs aberrantes, des données obsolètes, des valeurs nulles, etc
notam-En conséquence, la qualité de la gestion et de l’extraction des connaissances à partir deces données peut être médiocre De plus, les coˆuts financiers liés à la mauvaise qualitédes données en considérant que la prise de décision sur ces dernières sera probablementimportante
2.4 Problèmes causés par les données dupliquées
De nos jours, des applications complexes telles que l’extraction de connaissances, ploration de données, l’apprentissage en ligne ou les applications Web utilisent des donnéeshétérogènes et distribuées La qualité des informations relatives à un système de gestion
l’ex-de données volumineux dépend l’ex-de la qualité l’ex-des données collectées Ainsi, la qualitédes données est une question très importante pour une bonne gouvernance des données.Malheureusement, la présence de doublons crée d’importants problèmes de qualité desdonnées Et, prendre des décisions basées sur de mauvaises informations peut être préju-diciable à l’entreprise, entraˆınant des coˆuts élevés et une prise de décision très médiocre
Trang 15Vue d’ensemble 2.5 EBX.Platform
L’absence de données riches, précises et fiables peut potentiellement conduire une prise à prendre de mauvaises décisions L’identification et la suppression de ces enregis-trements en double constituent un élément clé de la création d’une vue unique efficace
entre-et le principal avantage est que vous développerez une version complète de la vérité pourfonder les décisions stratégiques sur des données précises
2.5 EBX.Platform
EBX est une plateforme MDM et de gouvernance de données proactive développée parOrchestra Networks C’est une solution standard qui permet aux entreprises d’unifier et degérer leurs données de référence et leurs paramètres à travers leurs systèmes d’information
Il s’agit donc d’une nouvelle fa¸con de gérer et de partager les données de référence et lesmétadonnées EBX.Platform possède ainsi de très bonnes performances au niveau destraitements en raison de l’efficacité de son système de référence (17)
Actuellement, la majorité des systèmes d’information se caractérisent par une rogénéité en termes de données et de solutions de paramétrage En effet, cette hété-rogénéité concerne principalement trois aspects :
hété-1 Diversité des systèmes de stockage (bases de données, fichiers, répertoires )
2 Diversité des formats de données (tableaux, fichiers propriétaires, documents XML )
3 Diversité des solutions proposées pour gérer différents types de données
Cette hétérogénéité à la fois dans les données que dans les solutions existantes sur
le marché a pour conséquence de rendre complexe et coˆuteuse la mise en œuvre et ploitation de ces données par les applications de l’entreprise L’utilisation d’un ensembled’applications différentes pour gérer cette diversité de types de données entraˆıne inévita-blement une redondance des données et des outils Ainsi, un système d’information sans
l’ex-la technologie MDM présente les aspects suivants :
— Aucune vue unifiée des données de référence
— Données dupliquées entre plusieurs systèmes
— Pas de cohérence entre les sièges et les filiales
— Pas d’outils uniques pour les utilisateurs métier
Les conséquences d’un système sans MDM sont :
— Coˆut de maintenance plus élevé
Trang 16Vue d’ensemble 2.5 EBX.Platform
— Manque de réactivité
— Risques réglementaires
Afin de résoudre ces problèmes, Orchestra Networks a développé une solution pelée EBX.Platform qui permet d’avoir une solution MDM dans un système d’informa-tion L’intégrité et l’unification des données par le MDM, couplées à la gouvernance desdonnées, rend l’entreprise plus agile et facilite son développement
ap-Le modèle MDM (Master Data Management ou Gestion des Données de Référence
en fran¸cais) est une assurance qualité pour la gestion des données Il s’intéresse au tement des données dites de référence Une donnée de référence est une information debase, unique, sensible, vitale à la vie de l’entreprise (clients, fournisseurs, produits, ta-rif, ) Il faut identifier chaque donnée de référence de manière unique car c’est une donnéemétier Le modèle MDM centralise, qualifie et uniformise le mode de description desdonnées de référence afin de garantir une prise en compte juste et cohérente La gestiondes données de référence ou Master Data Management (MDM) réoriente la gestion desdonnées de manière progressive et durable((5)) Ainsi, un système d’information MDMutilisant EBX.Platform présente les aspects suivants :
trai-— Données unifiées dans un référentiel central
— Règles d’héritage entre les filiales et le siège
— Intégration des données de référence à travers le système d’information
— Disposition d’outils unique pour tous les utilisateurs métier
L’utilisation de EBX.Platform apporte les avantages suivants :
— Coˆut d’entretien réduit
— Meilleure réactivité
— Respect des règles légales
EBX.Platform présente les fonctionnalités suivantes :
— Modèle-MDM
EBX.Platform vous permet de créer des modèles de données fournissant unedescription unifiée des données de base EBX.Platform est basé sur le standardXML Schema qui permet de créer des modèles structurés et riches Les modèles dedonnées décrivent tous les objets et attributs (métadonnées) des données de basemais également tous les enrichissements nécessaires à la validation et à la docu-mentation des données
Trang 17Vue d’ensemble 2.5 EBX.Platform
— La gestion du cycle de vie
Les données de référence suivent fréquemment des cycles de vie complexes.Par exemple, une entreprise doit gérer une version actuelle de ses données tout entravaillant en parallèle sur de nombreux changements qui se produiront dans lefutur En outre, l’entreprise doit suivre les différentes étapes de la mise à jour deses données
— Gestion des droits
EBX.Platform vous permet de gérer tous les acteurs, droits, processus et règles
de sécurité qui régissent le référentiel MDM Basé sur un répertoire interne ou terne (par exemple LDAP), EBX.Platform permet de définir des profils d’accès àchaque domaine du référentiel et de configurer les droits sur chaque action, chaqueobjet et même chaque attribut Rights Management interprète automatiquementles modèles de données
ex-— Interface utilisateur de gouvernance des données
EBX.Platform fournit aux utilisateurs professionnels et techniques un outilWeb convivial et sécurisé pour la gestion des données de référence et des pa-ramètres : EBX.Manager
EBX.Manager est basé sur une technologie unique qui génère dynamiquement terface graphique à partir des modèles de données Cela signifie qu’une fois lemodèle de données créé, les utilisateurs peuvent immédiatement gérer leurs données
l’in-de référence
— Gestion de la hiérarchie
Les données de référence sont souvent basées sur des relations d’objet plexes À l’aide des fonctions de gestion de hiérarchie, EBX.Platform permet auxutilisateurs professionnels d’afficher et de gérer les hiérarchies de données Les hié-rarchies peuvent être générées automatiquement ou configurées Une hiérarchiepeut également combiner des relations récursives et non récursives entre les objets
com-— Gestion de la non-redondance
On observe fréquemment que plus de 80% des données sont identiques entredeux instances Il est important d’éviter la duplication des données car cela élimineles entrées longues, fastidieuses et remplies d’erreurs
— Services de données et API
La solution est basée sur les normes Java et XML, ce qui offre une grande
Trang 18flexi-Vue d’ensemble 2.6 Motivation
bilité pour l’intégration de données avec des systèmes externes et l’enrichissementdes fonctionnalités de gestion des données
2.6 Motivation
Notre motivation consiste à proposer une solution permettant d’améliorer le processus
de déduplication des données au sein de la plateforme EBX en se référant aux approchesd’apprentissage automatique qui apprennent des fonctions de similarité classiques (cou-ramment utilisées dans le processus de detection des enregistrements en double) pourproduire de meilleurs résultats Nous avons développé un système de détection de dupli-cation capable d’effectuer la tâche de déduplication en utilisant l’approche d’apprentissageactif et nous avons aussi effectué des expériences permettant d’étudier l’efficacité de laméthode proposée
Trang 19Chapitre 3
Etat de l’Art
En effet, la notion de la qualité de données présente un très grand enjeu pour une bonnegouvernance des données Celle-ci permet d’améliorer les interactions entre les différentscollaborateurs d’une ou plusieurs organisations concernées La présence de données endouble ou similaires engendre des préoccupations importantes autour de la qualité desdonnées Le principal défi d’une tâche de déduplication ou de détection des enregistre-ments en double(doublons) consiste à trouver une solution capable de résoudre le problèmelorsque deux ou plusieurs enregistrements font référence à la même entité en dépit deserreurs et des incohérences dans les données
Dans ce chapitre, nous passons en revue les techniques et algorithmes courammentutilisés pour résoudre le problème de la détection des doublons De plus, nous examinonsbrièvement certaines approches d’apprentissage automatique permettant aussi de résoudre
ce problème
3.1 Mesures de similarité : revue de l’existant
Une mesure de similarité est, en général, une fonction qui quantifie le rapport entredeux objets, comparés en fonction de leurs points de ressemblance et de dissemblance.Les deux objets comparés sont, bien entendu, de même type(19) Plusieurs méthodes decalcul de distance de similarité ont été présentées dans la littérature selon les types desdonnées à comparer
Les mesures de similarité existantes peuvent être classées en 2 catégories principales :D’une part, le problème de la comparaison des chaˆınes de caractères qui comporte lesméthodes basées sur des caractères, les méthodes basées sur des tokens et les méthodeshybrides et d’autre part, les mesures de similarités numériques
3.1.1 Le problème de la comparaison des chaˆınes de caractères
Les champs(colonnes) que nous avons besoin de comparer sont représentés ment par les chaˆınes de caractères qui peuvent se composer d’un mot ou d’un groupe
générale-de mots Comme montré par la figure 1, le problème générale-de la comparaison générale-des chaˆınes générale-decaractères peut être classé en trois(3) catégories principales : les méthodes basées sur des
Trang 20Etat de l’Art 3.1 Mesures de similarité : revue de l’existant
caractères, les méthodes basées sur des tokens(lexèmes) et les méthodes hybrides
Figure 1 – Classification des métriques de chaˆınes
3.1.1.1 Métriques basées sur des caractères
Plusieurs méthodes de calcul de distance de similarité ont été présentées dans la rature Nous présentons ci-dessous les méthodes les plus connues inspirées des travaux derecherche de Berti-Equille, 2006, Koudas et al., 2006 et Felix Naumann, 2013, qui pré-sentent plus clairement et donnent plus de détails sur le sujet Ces techniques traitent dedifférentes manières le processus de comparaison des chaˆınes utilisé pour regrouper et iden-tifier les doublons Les métriques basées sur des caractères considèrent les chaˆınes commeune séquence de caractères En conséquence, la similarité entre deux chaˆınes est déter-minée par des caractères communs et la position de ces caractères dans les chaˆınes (Jaro(Jaro, 1989), Jaro-Winkler (Winkler, 1999)) ou par le nombre d’opérations (suppression,insertion, remplacement) nécessaires pour construire une chaˆıne à partir de l’autre (Le-venshtein (Levenshtein, 1966), Needleman-wunsch (Needleman et Wunsch, 1970), Smith-Waterman (Smith et Waterman, 1981)) L’inconvénient principal des ces métriques est lanon distinction des mots lorsqu’une chaˆıne en comporte plusieurs
litté-— Distance de Hamming
La distance de Hamming est une technique proposée par Richard Hamming.Cette distance, entre deux chaˆınes de même longueur, est le nombre de positionsauxquelles les symboles correspondants sont différents En d’autres termes, il me-sure le nombre minimum de substitutions nécessaires pour changer une chaˆıne enune autre, ou le nombre minimum d’erreurs qui auraient pu transformer une chaˆıne
en une autre Dans un contexte plus général, la distance de Hamming est l’une des
Trang 21Etat de l’Art 3.1 Mesures de similarité : revue de l’existant
métriques de chaˆıne permettant de mesurer la distance d’édition entre deux quences
sé-— Distance de Jaro
La distance de Jaro(14) est une mesure de la similarité entre deux chaˆınes.Plus la distance Jaro est élevée pour deux chaˆınes de caractères, plus ces mots
en questions sont similaires Le score est normalisé de telle sorte que 0 équivaut
à aucune similitude et 1 correspond à une correspondance exacte La distance deJaro entre deux chaˆınes S1 et S2 est définie par :
dj D 13
|si| est la longueur de la chaˆıne de caractères s1 ;
m est le nombre de caractères correspondants ;
t est le nombre de transpositions
Deux caractères identiques de et de sont considérés comme correspondants si leuréloignement (i.e la différence entre leurs positions dans leurs chaˆınes respectives)
dj est la distance de Jaro entre s1 et s2
l est la longueur du préfixe commun (maximum 4 caractères)
p est un coefficient qui permet de favoriser les chaˆınes avec un préfixe mun
com-Winkler propose pour valeur p=0.1
— Distance de Levenshtein
Elle est égale au nombre minimal de caractères qu’il faut supprimer, insérer
Trang 22Etat de l’Art 3.1 Mesures de similarité : revue de l’existant
ou remplacer pour passer d’une chaˆıne à l’autre Son nom provient de VladimirLevenshtein qui l’a définie en 1965 Elle est aussi connue sous le nom de « distanced’édition » ou encore de « déformation dynamique temporelle », notamment enreconnaissance vocale
Cette distance est d’autant plus grande que le nombre de différences entre les deuxchaˆınes est grand La distance de Levenshtein peut être considérée comme unegénéralisation de la distance de Hamming On peut montrer en particulier que ladistance de Hamming est un majorant de la distance de Levenshtein
Le principe de la métrique Levenshtein a été repris dans plusieurs travaux Ceux
de (Zhang et al., 2010), (Wang et al., 2010) sont basés sur des structures de typeB-arbre1 et proposent des techniques permettant d’améliorer le calcul lors de lacomparaison des chaˆınes de caractères Toutefois, comme dans le cas de la mé-trique Levenshtein, ces métriques ne traitent pas l’ordre des tokens dans la chaˆıne
de caractères, bien que l’ordre des caractères est lui pris en compte Il existe ment des travaux, tel que I_Sub de (Stoilos et al., 2005) qui mesurent la similaritépar l’intermédiaire de la sous-séquence commune la plus longue Dans (Gorbenko
égale-et Popov, 2012), ce dernier problème est formalisé sous la forme d’un problèmeSAT2 Notons que, comme pour les autres méthodes, seul l’ordre des caractèresest considéré lors de la détermination de la sous-séquence commune la plus longue
3.1.1.2 Métriques basées sur des Tokens(Lexèmes)
Un lexème est une suite de caractères compris entre deux délimiteurs successifs Parexemple, si on considère les parenthèses et le tiret comme délimiteurs, le numéro de télé-phone «(999)555-1212» est formé de trois lexèmes : «999», «555» et «1212».Les méthodesbasées sur des tokens comme TF-IDF (Cohen et al., 2003), Jaccard (Hadjieleftheriou etSrivastava, 2010) considèrent une chaˆıne comme un ensemble de tokens
La métrique TF-IDF, comme son nom l’indique, réutilise la technique TF-IDF(en cherche d’information) en considérant le corpus à interroger et la requête comme deuxchaˆınes de caractères à comparer Cette méthode est étroitement liée aux modèles d’espacevectoriel, dans lesquels un corps de texte est représenté sous la forme d’un vecteur dans unespace vectoriel de mots La dimension de l’espace est le nombre de mots pertinents (lesautres mots sont supposés sans signification) et, pour un enregistrement donné, chaqueélément de la représentation vectorielle est la fréquence avec laquelle un mot apparaˆıtdans l’entrée (Il convient de noter que ces modèles ne tiennent pas compte de l’ordre des
re-1 Structure de données en arbre équilibré principalement mis en oeuvre dans les mécanismes de gestion de bases de données et de systèmes de fichiers
2 Problème de décision visant à savoir s’il existe une solution à une série d’équations logiques données
Trang 23Etat de l’Art 3.1 Mesures de similarité : revue de l’existant
mots.) Une extension plus puissante de ces modèles est le terme IDF (Inverse DocumentFrequency ) qui se traduit en fran¸cais en Fréquence Inverse du Document Ce schémapermet de peser différentes caractéristiques en fonction de leur fréquence dans un seulchamp ainsi que dans une entrée En conséquence, la similarité entre deux chaˆınes seradéterminée par les tokens communs et leur fréquence dans chaque chaˆıne
La métrique de Jaccard, quant à elle, détermine le rapport entre le nombre de tokenscommuns et le nombre total de tokens distincts Ces méthodes ne mettent pas en œuvre demétriques basées sur des caractères pour déterminer la similarité des tokens Par exemple,pour les chaˆınes “chemin de fer touristique” et “voie ferrée touristique”, les tokens fer etferrée sont considérés comme différents
3.1.1.3 Métriques hybrides
Enfin, il existe des méthodes hybrides qui, dans un premier temps, décomposent unepaire de chaˆınes de caractères en lexèmes et, dans un deuxième temps, comparent leslexèmes à l’aide d’une fonction de similarité basée sur l’analyse des caractères
Les méthodes hybrides (SoftTFIDF, Monge-Elkan, TagLink) proposent de combiner lesdeux types d’approches ci-dessus Ces trois méthodes utilisent une métrique basée surles caractères pour évaluer le degré de similarité de paires de tokens En effet, la mé-thode SoftTFIDF (Cohen et al., 2003) améliore la méthode TFIDF abordée ci-dessus enutilisant une métrique basée sur les caractères (JaroWinkler, par exemple) pour déter-miner des couples de tokens similaires (les tokens fer et ferrée seront considérés commeidentiques) avant d’appliquer la technique TFIDF D’autre part, l’idée principale de lamétrique TagLink (Camacho et Salhi, 2006) est de considérer le problème de comparaison
de chaˆınes comme étant celui d’affectation, un problème classique de recherche nelle :
opération-— Les caractères d’un token sont comparés à ceux des autres tokens (un score desimilarité est calculé pour chaque paire de tokens) ;
— Les tokens dans une chaˆıne sont comparés à ceux de l’autre chaˆıne (un score global
de similarité est calculé pour les deux chaˆınes)
La différence principale entre cette méthode et les méthodes TFIDF et SoftTFIDF estque le score de TagLink dépend du rapport entre le nombre de caractères communs entredes tokens et le nombre total de caractères des tokens.L’idée principale de la métrique Ta-gLink (Camacho et Salhi, 2006) est de considérer le problème de comparaison de chaˆınescomme étant celui d’affectation, un problème classique de recherche opérationnelle : (i)les caractères d’un token sont comparés à ceux des autres tokens (un score de similaritéest calculé pour chaque paire de tokens) ; (ii) les tokens dans une chaˆıne sont comparés
Trang 24Etat de l’Art 3.2 Detection des enregistrements dupliqués
à ceux de l’autre chaˆıne (un score global de similarité est calculé pour les deux chaˆınes).Dans la méthode Monge-Elkan (Monge et Elkan, 1996), à l’aide d’une métrique basée surdes caractères (JaroWinkler, par exemple), pour chaque token de la chaˆıne S1, on cherche
le token le plus proche dans la chaˆıne S2 et le score correspondant Le score global desimilarité entre deux chaˆıne S1, S2 correspond à la valeur moyenne de ces scores La ca-ractéristique commune aux méthodes hybrides et aux méthodes basées sur les tokens estqu’il n’y a pas de prise en compte de l’ordre des tokens dans les chaˆınes (par exemple,
le score de similarité calculé par Jaccard, TFIDF, SoftTFIDF, Monge-Elkan ou TagLinkpour les chaˆınes piste de ski et ski de piste est égal à 1)
Comme nous l’avons vu, de nombreuses approches ont été développées pour comparerdes chaˆınes Lors de la comparaison de valeurs numériques, les méthodes sont primitives.Dans la plupart des cas, quand il est judicieux de comparer des nombres, il s’agit d’unecomparaison de base et des requêtes peuvent être développées pour extraire facilement desdonnées numériques Il y a eu des recherches continues sur l’utilisation de la similarité descosinus et d’autres algorithmes dans l’analyse des données numériques Par exemple, lesnombres peuvent être comparées à l’aide des opérateurs primitifs identiques, supérieurs à
et peuvent être utilisés pour calculer la différence entre deux chaˆınes numériques
3.2 Detection des enregistrements dupliqués
Jusqu’à présent, nous avons vu différentes méthodes pouvant être utilisées pour parer des chaˆınes ou des champs individuels Cependant, dans les cas réels les données sontmultivariées et le nombre de champs est aussi dynamique que les données elles-mêmes.Ainsi, la tâche de détection des doublons devient plus compliquée Il y a eu de nombreuxarticles et approches sur cette question Ils peuvent être classées comme suit :
com-— Techniques basées sur des règles
— Techniques basées sur la distance
Trang 25Etat de l’Art 3.2 Detection des enregistrements dupliqués
Nous allons approfondir chacune de ces approches en détail ci-dessous
3.2.1 Techniques basées sur des règles
L’approche basée sur les règles consiste à utiliser des règles pour définir si deux gistrements sont similaires ou non Elle diffère de l’approche probabiliste en ce sens quechaque attribut re¸coit un poids égal à un(1) ou zéro(0), tandis que chaque attribut del’approche probabiliste se voit attribuer un poids
enre-Une exemple pratique d’utilisation d’une approche basée sur des règles pour identifierles enregistrements en double peut être représenté comme suit :
— Posons : r1 et r2 (deux(2) enregistrements donnés)
ne pas être évolutive et, ces règles étant spécifiques à un cas/domaine spécifique, elles nepeuvent pas être réutilisées dans des cas différents
3.2.2 Techniques basées sur la distance
Une approche simple consiste à mesurer la distance entre des champs individuels,
en utilisant la métrique de distance appropriée (décrite à la section 3.1.1) pour chaquechamp, puis à calculer la distance pondérée entre les enregistrements.L’un des problèmesdes techniques basées sur la distance est la nécessité de définir la valeur appropriée pour leseuil de duplication En présence de données d’apprentissage, il est possible de trouver lavaleur de seuil appropriée (une valeur numérique pouvant déterminer si une paire d’enre-gistrement est similaire) Cependant, cela annulerait le principal avantage des techniques
Trang 26Etat de l’Art 3.2 Detection des enregistrements dupliqués
basées sur la distance, à savoir la capacité de fonctionner sans données d’apprentissage
Comme son nom l’indique, l’approche probabiliste utilise la théorie du rapport devraisemblance (likelikood ratio) pour classer les données dupliquées L’idée d’utiliser cetteapproche dans le cas de détection des doublons a été proposée par Fellegi et Sunter(13)
L’un des modèles les plus populaires est le modèle de décision bayésien (Bayesian cision Model), basé sur le théorème de Bayes pour calculer les probabilités appropriéespermettant de décider si deux enregistrements se réfèrent ou non à la même entité enfonction du seuil définit par l’utilisateur
pré-Il existe de nombreux algorithmes d’apprentissage automatique et ils sont lement classés dans différentes catégories, en fonction du type de problèmes auxquelsils conviennent Par exemple, les algorithmes d’apprentissage automatique sont classéscomme supervisés ou non supervisés, selon que l’algorithme nécessite ou non l’annotationdes données avec une valeur cible Bien que cela soit rare, il existe également des algo-rithmes qui ne relèvent pas de l’apprentissage supervisé ou non supervisé : les algorithmessemi-supervisés, par exemple, peuvent utiliser des données étiquetées et non étiquetées