Advertisement
Guest User

Untitled

a guest
Mar 19th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.19 KB | None | 0 0
  1. Buongiorno a tutti sono Marco Monteleone e l'argomento della mia tesi è stato lo schema alignment su cataloghi di prodotti online.
  2.  
  3. In particolare gli obiettivi del mio lavoro sono stati: la realizzazione di un sistema che permetta di effettuare schema alignment su sorgenti web contenenti pagine di prodotti; la generazione di un dataset sintetico che possa essere utilizzato come sostituto di quello reale in fase di testing; il test e la valutazione del sistema.
  4.  
  5. Le sorgenti che compongono il dataset utilizzato sono caratterizzate da due proprietà: un dominio (che può essere relativo ad un motore di ricerca di prodotti o ad un semplice sito di e-commerce) ed una categoria di prodotti. Ad ogni sorgente appartengono più pagine di prodotti, ciascuna contenente le specifiche di un certo prodotto, nella forma attributo-valore. È possibile che pagine di sorgenti diverse facciano riferimento allo stesso prodotto; le corrispondenze tra le varie pagine sono state individuate con un processo di record linkage.
  6.  
  7. Lo schema alignment consiste nella mappatura di elementi di uno schema di una fonte di dati, agli elementi corrispondenti in una seconda fonte. Nel contesto di una sorgente di pagine di prodotti, lo schema corrisponde all'insieme degli attributi che compaiono all'interno delle sue pagine. L'obiettivo è quindi quello di individuare attributi in sorgenti diverse che rappresentano lo stesso concetto. Quest'operazione presenta però delle problematiche: infatti non basta confrontare i nomi degli attributi (attributi con nomi diversi potrebbero in realtà corrispondere) e non è neanche sufficiente confrontare i valori che gli attributi assumono (attributi diversi potrebbero avere valori uguali e viceversa; basti pensare ad un attributo relativo alle dimensioni: uno stesso valore può essere rappresentato in maniera differente utilizzando unità di misura diverse).
  8.  
  9. La soluzione proposta è un sistema realizzato attraverso l'implementazione e l'estensione di approcci già noti in letteratura, con particolare riferimento agli studi effettuati sulle mutue informazioni e il sistema realizzato per la sintesi di prodotti (che ha come obiettivo la generazione di nuove istanze di prodotti appartenenti al catalogo di un motore di ricerca di prodotti, a partire dalle offerte dei venditori). Le sorgenti vengono analizzate in seguenza, utilizzando un classificatore per indentificare corrispondenze tra le nuove sorgenti ed il catalogo generato progressivamente attraverso la fusione delle sorgenti già analizzate. Il risultato finale è una specifica univoca per una certa categoria di prodotti, composta da cluster, ognuno dei quali contiene attributi che rappresentano lo stesso attributo concettuale.
  10.  
  11. Le tecnologie utilizzate nella realizzazione del sistema sono MongoDB per la gestione del dataset ed R per l'implementazione del classificatore.
  12.  
  13. Il classificatore è il componente principale del sistema che permette di stimare per ogni coppia di attributi la probabilità che esista una corrispondenza tra di loro. Tuttavia il classificatore necessita di una fase iniziale di addestramento nella quale vengono dati in input esempi per i quali sia già nota la presenza o meno di una corrispondenza. Per l'addestramento viene utilizzato un training set generato automaticamente contenente prevalentemente esempi negativi, in modo da ridurre la probabilità di generare falsi positivi. Il classificatore utilizza 6 feature per la valutazione dei casi, corrispondenti a tre metriche calcolate su 2 insiemi di coppie di pagine(JS, una metrica di dissimilarità tra distribuzioni di probabilità di token, JC, una metrica di similarità tra due insiemi di token, e òe Mutue informazioni, che esprimono la quantità di informazione contenuta in un attributo relativa ad un altro attributo); le coppie di pagine vengono selezionate in base a 2 criteri: tutte le pagine della sorgente in esame con linkage verso il catalogo, tutte le pagine della categoria con linkage verso il catalogo.
  14.  
  15. Alla componente di schema alignment è stata affiancata una componente per la generazione di un dataset sintetico. Le motivazioni principali sono il fatto che non si ha piena conoscenza del dataset reale (ad esempio non si conoscono a priori le corrispondenze di tutti gli attributi di tutte le sorgenti), la possibilità di verificare automaticamente i risultati (operazione non possibile sul dataset reale, in quanto le corrispondenze devono essere verificate manualmente,con costi potenzialmente elevati a livello di tempo) ed infine la possibilità di verificare le prestazioni del sistema al variare delle caratteristiche del dataset.
  16.  
  17. I parametri utilizzati sono relativi alle dimensioni delle sorgenti, il numero totale di sorgenti ed di attributi appartenti allo schema del catalogo, le variazioni di dimensioni delle sorgenti e del linkage dei prodotti e degli attributi, la configurazione dei token che compongono i valori degli attributi (ovvero quanti token contengono e come variano), le probabilità di errori randomici, linkage di prodotti errato o mancante ed infine di cambiamento di rappresentazione e formato dei valori.
  18.  
  19. I sistema è stato testato sia sul dataset reale che su quello sintetico. Per quanto riguarda i test su dataset reale sono state calcolate la precision in termini di cluster corretti (ovvero contenenti solo attributi in corrispondenza tra di loro) e di singole coppie di attributi correttamente considerate in corrispondenza. È stata inoltre considerata la coverage, ovvero il numero di cluster individuati con cardinalità di almeno due attributi. Il sistema è stato testato su 5 categorie. In generale i risultati sono stati peggiori per le categorie che presentavano una più forte eterogeneità tra le varie sorgenti e solo per le categorie Monitor ed Headphone si è arrivati a buoni livelli di precision. Tuttavia nell'analisi dei risultati è emerso che la maggior parte degli abbinamenti errati avvenivano per attributi che assumevano solo pochi valori all'interno delle sorgenti (2 o 3 al massimo).
  20.  
  21. Per quanto riguarda gli esperimenti effettuati sul dataset sintetico le metriche utilizzate sono state la precision, la recall e l'f-measure (in tutti i casi calcolate sui singoli abbinamenti di attributi). Come ci si aspettava è risultato che le probabilità di errori e cambi di formato o rappresentazione, sono le caratteristiche che più hanno impatto (negativo) sulle prestazioni del sistema. Fa eccezione il linkage mancante che invece non sembra avere grande rilevanza, se non per valori molto elevati (+ del 50%).
  22.  
  23. Inoltre in questo caso sono stati valutati sia i risultati ottenuti effettuando schema alignment su un dataset generato con una configurazione che rispecchiasse quello reale, sia i risultati ottenuti simulando un'operazione di sintesi dei prodotti, per verificare il sistema realizzato potesse raggiungere gli stessi livelli di prestazioni di quello originale. I risultati tuttavia non hanno inizialmente rispecchiato le aspettative: in entrambi i casi la precision è risultata molto inferiore a quella dell'85% ottenuta dal sistema originale. Anche in questo caso però si è notato che la maggior parte di abbinamenti errati avviene per attributi con un basso numbero di valori.
  24.  
  25. È stato quindi testato il sistema su un nuovo dataset sintetico che contenesse solo attributi con più di 4 valori; in questo caso c'è stato un netto miglioramento della precision, che arriva a livelli superiori al 95%. La recall invece ha subito solo un lieve miglioramento.
  26.  
  27. In conclusione si può dire che il sistema realizzato può essere utilizzato per effettuare schema alignment ma solo in assenza di attributi con pochi valori. È possibile generare un dataset rappresentativo di quello reale, utilizzando una giusta configurazione di parametri, utilizzabile per il testing di questo sistema così come di altri sistemi pensati per elaborare informazioni contenute in pagine di prodotti. Possibili sviluppi futuri sono l'aggiunta di nuove feature che valutino la somiglianza tra stringhe, valutare le prestazioni del sistema addestrando il classificatore con un training set contenente una percentuale maggiore di esempi positivi (per cercare di aumentare la recall), modificare il sistema in modo da utilizzare approcci differenti in base alla cardinalità degli attributi.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement