Escolar Documentos
Profissional Documentos
Cultura Documentos
Deduplicao de Dados:
Uma Anlise Comparativa entre Abordagens
Ana Paula de C. Fernandes
Patrick B. A. de Lara
Maio, 2012
Abstract. Databases performance an important role in the economy and society. The
quality of information retrieval is based on a database without inconsistency. And this
search speed retrieval. The process of deduplication is the task of helping to identify
data repository replicas that relate to the same entity in the real world. Our work aims
to make a comparative analysis of the approaches proposed in related work. The focus
was a step in the process of deduplication, the comparison of records, but also quoted
the classification stage. The comparison was made up using the approaches and machine learning similarity metric.
Keywords: Deduplication, Genetic Programming, Classification, Similarity, Comparison of Records.
Resumo. Bancos de dados desempenham um papel importante na economia e na sociedade. A qualidade da recuperao das informaes tem como base um banco de dados sem inconsistncia. E busca rapidez nesta recuperao. O processo de deduplicao tem a tarefa de ajudar a identificar em repositrio de dados rplicas que refiram-se
a mesma entidade no mundo real. Nosso trabalho visa fazer uma anlise comparativa
sobre as abordagens propostas nos trabalhos relacionados. O foco foi em uma etapa
especfica do processo de deduplicao, a comparao de registros, mas citamos tambm a etapa de classificao. A comparao foi realizada em cima das abordagens que
utilizam aprendizagem de mquinas e mtricas por similaridade.
Palavras-chave: Deduplicao, Programao Gentica, Classificao, Similaridade,
Comparao de Registros.
1 Introduo
Os Bancos de Dados desempenham um importante papel na atual economia, baseada
em Tecnologia da Informao. Muitas indstrias e sistemas dependem da eficincia de
seus bancos de dados para conduzirem as suas operaes [1].
Entretanto, a falta de qualidade nas informaes armazenadas em bancos de dados
pode ter um custo significativo para as organizaes, e implicaes para os sistemas
que tratam as informaes de maneira a impossibilitar a conduo de seus negcios.
Em um sistema livre de erro e com dados perfeitamente limpos, a construo de uma
viso compreensiva dos dados consiste em ligaes, em termos de relacionais, unindo
duas ou mais tabelas com seus prprios campos-chave [1].
Porm, muitas vezes os dados no tm um nico identificador global que poderia
permitir estas operaes. Alm disso, os dados no possuem um controle de qualidade
cuidadoso e nem so definidas as fontes de dados de forma consistente. Assim, a qualidade dos dados comprometida por muitos fatores, incluindo erros de digitao,
como por exemplo, Ptrick ao invs de Patrick, e a falta de padronizao no armazenamento de informaes, como por exemplo, R. Mario Agostinelli, 50 e Rua Mario Agostinelli n. 50. Para tornar as coisas pior, em bancos de dados independentes,
no somente os valores, mas tambm a estrutura, a semntica, e diversas caractersticas
sobre os dados podem se diferenciar tambm. Muitas vezes, a integrao de dados de
diferentes fontes para implementar uma data warehouse, ocorre de forma cautelosa nas
organizaes, com um grande potencial de conflitos. Estes problemas so relacionados
no tema data heterogeneity [2].
O trabalho ser focado no problema de tratamento de dados duplicados de forma
Estrutural ou Lxica, ou seja, estudaremos duas dentre as vrias tcnicas que j foram
desenvolvidas para a abordagem e resoluo destes problemas especficos de deduplicao de dados, comparando as abordagens propostas pelos trabalhos relacionados.
No iremos estudar outras tcnicas que possuem soluo para outros problemas de
duplicao, como as tcnicas de mirror detection, onde o objetivo detectar pginas Web
idnticas ou similares [3], [4]. Tambm no vamos estudar solues para anaphora resolution [5], onde o problema consiste em localizar menes diferentes para uma mesma
entidade em um texto livre, como exemplo temos a palavra Presidenta, que se refere
mesma entidade que a atual presidente Dilma Rousseff. Existem algoritmos desenvolvidos para as solues de mirror detection e de anaphora resolution, que so aplicados
para tarefas de deteco de dados duplicados [1], [6].
O problema que ns vamos estudar j conhecido por mais de cinquenta anos como
the record linkage ou the record matching problem [7], [8], [9], [10], [11], [12] na comunidade de estatstica. O objetivo do record matching identificar os registros, na mesma base
ou em uma base de dados diferente, que se referem a uma mesma entidade no mundo
real, mesmo que os seus registros no sejam idnticos. Este mesmo problema possui
mltiplos nomes nas comunidades de pesquisas cientficas. Na comunidade de banco
de dados, o problema conhecido como merge-purge [13], data deduplication [14], e instance identification [15]. Na comunidade de Inteligncia Artificial, o mesmo problema
descrito como database hardening [16] e name matching [17]. Os nomes coreference resolution, identity uncertainty, e duplicate detection tambm so utilizados para esta tarefa.
Neste trabalho ns utilizaremos os termos duplicao e deduplicao de dados.
2 Deduplicao de Dados
2.1 Motivao
A identificao e a remoo de rplicas em repositrios de dados so essenciais para
manter o funcionamento com qualidade dos servios onde so disponibilizadas as informaes inseridas em seus bancos de dados. Sistemas que so dependentes da integridade das informaes para oferecer servios com qualidade, como as bibliotecas
digitais e os sistemas de comrcio eletrnico, podem ser afetados pela existncia de
rplicas em seus repositrios. Com isso, atualmente dada grande importncia aos
estudos de desenvolvimento de mtodos eficazes para remoo de dados duplicados,
ou rplicas, em grandes repositrios de dados [18], [19].
2.2 Desafios
Por ser um estudo bastante complexo, onde a tarefa de tratamento das informaes
requer muito tempo e poder de processamento, devido grande quantidade de comparaes de registros necessrias, as tcnicas de aprendizagem de mquina tm sido
utilizadas com notrio sucesso no tratamento do problema de deduplicao. Estas tcnicas necessitam de um treinamento, onde so gerados manualmente exemplos de dados replicados, para o aprendizado da tarefa de deduplicao. A etapa de gerao manual das rplicas dificulta a utilizao dessa tcnica em muitos casos, devido ao grande
custo e tempo que so necessrios para a criao de uma base de treinamento [20].
Os desafios deste trabalho so o estudo e a comparao entre as abordagens de tcnicas determinsticas, para sugerir de forma automtica exemplos de treino para um
mtodo de deduplicao baseado em programao gentica [21], [22] e as combinaes
de pontuaes de mtricas de similaridade [23].
3 Abordagens
Entre os pioneiros na rea de deduplicao, Felegi e Sunter formalizaram em um trabalho, a soluo para o problema de reconhecer registros duplicados (pessoas, aes ou
objetos idnticos) em dois arquivos de dados diferentes atravs de um modelo matemtico [11].
O mtodo proposto exige a definio de dois valores para o limiar. Aps definidos
os valores, uma funo de similaridade aplicada a um par de registros e o valor que
foi retornado ento comparado com os dois limiares anteriormente definidos. Se o
valor de similaridade for maior que ambos os limiares, os registros so considerados
duplicatas, ou rplicas. Caso o valor de similaridade seja menor do que ambos os limi-
ares, os registros so ento diferentes, e so determinados como no-rplicas. Os registros tambm podem ser classificados como possveis casamentos, ou possveis rplicas.
Isto ocorre quando o valor de similaridade retornado estiver entre os dois limiares.
Neste caso, necessria a interveno humana para julgar e decidir a similaridade.
A partir do trabalho de Fellegi e Sunter, a comunidade cientfica criou alternativas
que podem ser classificadas, de uma forma geral, sob dois principais aspectos: os que
utilizam mtodos baseados em tcnicas de aprendizagem de mquina e aqueles que
combinam os valores de pontuaes dos atributos atravs de alguma mtrica definida
de similaridade.
Em M.G. de Carvalho et al., os autores propem uma abordagem baseada na PG para a identificao automtica de rplica que combina evidncia com base no teor dos
dados, a fim de encontrar uma funo de similaridade que seja capaz de identificar se
duas entradas de um repositrio so rplicas ou no [21]. Os autores afirmam que esta
abordagem supera um mtodo basedo em SVM, alm disso as funes sugeridas so
computacionalmente menos exigentes, pois utilizam menos evidncias. E citam a capacidade de adaptao automtica a qualquer limite informado na identificao da rplica.
Recentemente, M.G. de Carvalho et al. propem uma abordagem de programao
gentica, para gravar a deduplicao que combina vrias partes de evidncias diferentes extradas a partir do contedo dos dados, a fim de encontrar uma funo de deduplicao que capaz de identificar se duas entradas de um repositrio so rplicas, ou
no-rplicas. Os experimentos demonstrados nessa abordagem supera alguns mtodos
considerado estado-da-arte, existente na literatura, como o de Fellegi e Sunter. Alm
disso, as funes sugeridas so computacionalmente menos exigentes, j que utilizam
menos evidncia. Alm de que, os autores afirmam que esta abordagem capaz de
adaptar automaticamente estas funes para um limite fixo de identificao dado
rplica, liberando o usurio do fardo de ter que escolher e ajustar este parmetro [22].
Mtrica de
Similaridade
Aprendizagem
de Mquina
Funo
Aplicao
Chaudhuri
et al. [23]
Algoritmo
Fuzzy
NA
NA
Limpeza
dados
de
NA
Carvalho e
Silva (2003)
[30]
NA
Programao
Gentica
NA
Deduplicao
em arquivos
XML
75%
de Carvalho
et al. [20]
NA
Programao
Gentica
Geradas automaticamente
Bibliotecas
digitais
12%
de Carvalho
et al. [21]
NA
Programao
Gentica
NA
Bibliotecas
digitais
6,5%
Borges et al.
(2006) [26]
Algoritmo de
complexidade linear para
a comparao
NA
YearSim; IniSim;
NameMatch;
MetadataMatch
Bibliotecas
digitais
31,5%
Borges et al.
(2011a) [27]
Heurstica
no supervisionada
NA
Especficas para
o domnio
Bibliotecas
digitais
188%
Borges et al.
(2011b) [28]
NA
Programao
Gentica
YearSim; IniSim;
NameMatch;
MetadataMatch
Bibliotecas
digitais
11%*
de Carvalho
et al. (2012)
[22]
NA
Programao
Gentica
Bibliotecas
digitais
6,52%
Legenda:
a) * 11% de melhora em relao ao percentual alcanado anteriormente (2011a) [27]; e
b) NA = No Aplicvel.
5 Referncias Bibliogrficas
[1] A. K. Elmagarmid, P. G. Ipeirotis and V. S. Verykios, Duplicate Record Detection:
A Survey, IEEE Transactions on Knowledge and Data Engineering, vol. 19, no. 1, Jan.
2007.
[2] A. Chatterjee and A. Segev, Data Manipulation in Heterogeneous Databases,
ACM SIGMOD Record, vol. 20, no. 4, pp. 64-68, Dec. 1991.
[3] A.Z. Broder, S.C. Glassman, M.S. Manasse, and G. Zweig, Syntactic Clustering of
the Web, International World Wide Web Conference (WWW6), pp. 1157-1166, 1997.
[4] J. Cho, N. Shivakumar, and H. Garcia-Molina, Finding Replicated Web Collections, ACM SIGMOD Intl Conf. Management of Data (SIGMOD 00), pp. 355-366,
2000.
[5] R. Mitkov, Anaphora Resolution, first ed., Longman, Aug. 2002.
[6] A. McCallum, Information Extraction: Distilling Structured Data from Unstructured Text, ACM Queue, vol. 3, no. 9, pp. 48-57, 2005.
[7] H.B. Newcombe, J.M. Kennedy, S. Axford, and A. James, Automatic Linkage of
Vital Records, Science, vol. 130, no. 3381, pp. 954-959, Oct. 1959.
[8] H.B. Newcombe and J.M. Kennedy, Record Linkage: Making Maximum Use of the
Discriminating Power of Identifying Information, Comm. ACM, vol. 5, no. 11, pp. 563566, Nov. 1962.
[9] H.B. Newcombe, Record Linking: The Design of Efficient Systems for Linking Records into Individual and Family Histories, Am. J. Human Genetics, vol. 19, no. 3, pp.
335-359, May 1967.
[10] B.J. Tepping, A Model for Optimum Linkage of Records, J. Am. Statistical
Assoc., vol. 63, no. 324, pp. 1321-1332, Dec. 1968.
[11] I.P. Fellegi and A.B. Sunter, A Theory for Record Linkage, J. Am. Statistical
Assoc., vol. 64, no. 328, pp. 1183-1210, Dec. 1969.
[12] H.B. Newcombe, Handbook of Record Linkage. Oxford Univ. Press, 1988.
[13] M.A. Hernandez and S.J. Stolfo, Real-World Data Is Dirty: Data Cleansing and
the Merge/Purge Problem, Data Mining and Knowledge Discovery, vol. 2, no. 1, pp.
9-37, Jan. 1998.
[14] S. Sarawagi and A. Bhamidipaty, Interactive Deduplication Using Active Learning, ACM SIGKDD International Conference Knowledge Discovery and Data Mining,
pp. 269-278, 2002.
[15] Y.R. Wang and S.E. Madnick, The Inter-Database Instance Identification Problem
in Integrating Autonomous Systems, IEEE International Conference Data Engineering
(ICDE 89), pp. 46-55, 1989.
[16] W.W. Cohen, H. Kautz, and D. McAllester, Hardening Soft Information Sources,
ACM SIGKDD International Conference Knowledge Discovery and Data Mining, pp.
255-259, 2000.
[17] M. Bilenko, R.J. Mooney, W.W. Cohen, P. Ravikumar, and S.E.
[18] R. Bell and F. Dravis, Is data ditty? (And does that matter?), Accenture White
Papper (http://www.accenture.com), 2006.
[19] M. Wheatley, Operation Clean Data, CIO Asia Magazine (http://www.cioasia.com), Aug. 2004.
[20] M.G. de Carvalho, M.A. Gonalves, A.H. F. Laender and A.S. da Silva, Learning
to deduplicate, ACM/IEEECS Joint Conf. on Digital Libraries, pp. 4150, 2006.
[21] M.G. de Carvalho, A.H.F. Laender, M.A. Gonalves and A.S. da Silva, Replica
identification using genetic programming, Annual ACM Symposium on Applied
Computing, pp. 18011807, 2008.
[22] M. G. de Carvalho, A.H.F. Laender, Marcos Andr Gonalves, and A. S. da Silva,
A Genetic Programming Approach to Record Deduplication, IEEE Transactions on
Knowledge and Data Engineering, vol. 24, no. 3, pp. 399-412, Mar. 2012.
[23] S. Chaudhuri, K. Ganjam, V. Ganti and R. Motwani, Robust and efficient fuzzy
match for online data cleaning, ACM SIGMOD: International Conference on Management of Data, pp. 313324, 2003.
[24] W. Banzhaf, P. Nordin, R. E. Keller and F. D. Francone, Genetic Programming
And Introduction: on the Automatic Evolution of Computer Programs and Its Applications, Morgan Kaufmann Publishers, 1998.
[25] J. R. Koza, Genetic Programming: on the Programming of Computers by Means
of Natural Selection, MIT Press, 1992.
[26] E.N. Borges, R.M. Galante, M.A. Gonalves, Uma Abordagem Efetiva e Eficiente
para Deduplicao de Metadados Bibliogrficos de Objetos Digitais, XXIII Simpsio
Brasileiro de Banco de Dados, 2008.
[27] E.N. Borges, K. Becker, C.A. Heuser, R. Galante (2011a), A Classification-based
Approach for Bibliographic Metadata Deduplication, ADIS International Conference,
pp. 221-228, 2011.
[28] E.N. Borges, M.G. de Carvalho, R. Galante, M.A. Gonalves, A.H.F. Laender
(2011b), An unsupervised heuristic-based approach for bibliographic metadata
deduplication, Information Processing and Management, 47(5), pp. 706718, 2011.
[29] R.A. Baeza-Yates and B.A. Ribeiro Neto, Modern Information Retrieval, ACM
Press/Addison-Wesley, 1999.
[30] J. C. P. Carvalho and A. S. Silva, Finding similar identities among objects from
multiple web sources, ACM International Workshop on Web Information and Data
Management , pp. 90 93, 2003.