Skip to content

Repository per HW6, Corso di Ingegneria dei Dati 2023/24

Notifications You must be signed in to change notification settings

DecioXXIV/ID-hw6-DataIntegration

 
 

Repository files navigation

Progetto_Finale_IDD

Progetto di Data Integration per l'integrazione di 20 sorgenti contenenti dati di compagnie. Gli step del progetto possono essere riassunti in 2 passi:

  1. SCHEMA MATCHING: la definizione dello schema mediato prevede di indentificare gli attributi di interesse delle diverse sorgenti e definire uno schema che includa le diverse informazioni significative per un certo dominio. Per questos step piuttosto che procedere con un approccio manuale si è pensato di utilizzare la libreria FlexMatcher come indicatore dei mapping degli attributi delle sorgenti nello schema mediato.
  2. RECORD LINKAGE: il primo step del record liinkage è il blocking. Vengono implementate due strategie diverse: la prima rule based in cui si sono definite delle regole di matching dei record basate su intuzioni provenienti da Chat GPT riferiti a possibili condizioni per determinare se due record sono coppie candidate oppure no; la seconda strategia si basa sugli embedding e sulla loro clusterizzazione attraverso K-means. La seconda fase del record linkage è verificare se i record finiti nel medesimo blocco sono effettivamente record che matchano oppure no. Per fare ciò si sono passati i cluster ottenuti dalla fase di blocking con le due strategie a BERT che ha estratto una rappresentazione delle caratteristiche di queste coppie di record candidate ad essere in match e su questa nuova rappresentazione vettoriale si è effettuata una ulteriore fase di clustering con una tecnica di clustering agglomerativo. I risultati del record linkage vengono memorizzati su file di testo(record considerati in match in un formato di indici)

About

Repository per HW6, Corso di Ingegneria dei Dati 2023/24

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Jupyter Notebook 57.3%
  • Python 30.4%
  • Java 12.3%