deduplicação de dados

10
1 IME Monografias em Sistemas e Computação n 01/2012 Deduplicação de Dados: Uma Análise Comparativa entre Abordagens Ana Paula de C. Fernandes Patrick B. A. de Lara Seção de Engenharia de Computação INSTITUTO MILITAR DE ENGENHARIA PRAÇA GENERAL TIBÚRCIO 80 CEP 22290-270 RIO DE JANEIRO BRASIL

Upload: patrick-lara

Post on 03-Sep-2015

212 views

Category:

Documents


0 download

DESCRIPTION

Bancos de dados desempenham um papel importante na economia e na sociedade. A qualidade da recuperação das informações tem como base um banco de dados sem inconsistência. E busca rapidez nesta recuperação. O processo de deduplicação tem a tarefa de ajudar a identificar em repositório de dados réplicas que refiram-se a mesma entidade no mundo real. Nosso trabalho visa fazer uma análise comparativa sobre as abordagens propostas nos trabalhos relacionados. O foco foi em uma etapa específica do processo de deduplicação, a comparação de registros, mas citamos também a etapa de classificação. A comparação foi realizada em cima das abordagens que utilizam aprendizagem de máquinas e métricas por similaridade.

TRANSCRIPT

  • 1

    IME

    Monografias em Sistemas e Computao

    n 01/2012

    Deduplicao de Dados:

    Uma Anlise Comparativa entre Abordagens

    Ana Paula de C. Fernandes

    Patrick B. A. de Lara

    Seo de Engenharia de Computao

    INSTITUTO MILITAR DE ENGENHARIA

    PRAA GENERAL TIBRCIO 80 CEP 22290-270

    RIO DE JANEIRO BRASIL

  • Monografias em Sistemas e Computao, No. 01/2012 Maio, 2012 Editor: Prof. Maria Claudia Cavalcanti

    Deduplicao de Dados: Anlise Comparativa entre Abordagens

    Ana Paula de Carvalho Fernandes e Patrick Baptista Amaral de Lara

    [email protected] e [email protected]

    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 ma-chine learning similarity metric.

    Keywords: Deduplication, Genetic Programming, Classification, Similarity, Compari-son of Records.

    Resumo. Bancos de dados desempenham um papel importante na economia e na soci-edade. A qualidade da recuperao das informaes tem como base um banco de da-dos sem inconsistncia. E busca rapidez nesta recuperao. O processo de deduplica-o 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 tam-bm 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 qua-lidade dos dados comprometida por muitos fatores, incluindo erros de digitao, como por exemplo, Ptrick ao invs de Patrick, e a falta de padronizao no arma-zenamento de informaes, como por exemplo, R. Mario Agostinelli, 50 e Rua Ma-rio 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 dedupli-cao 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 reso-lution [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 desen-volvidos 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 comunida-de 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 ins-tance identification [15]. Na comunidade de Inteligncia Artificial, o mesmo problema descrito como database hardening [16] e name matching [17]. Os nomes coreference resoluti-on, identity uncertainty, e duplicate detection tambm so utilizados para esta tarefa. Neste trabalho ns utilizaremos os termos duplicao e deduplicao de dados.

  • Nosso trabalho est organizado da seguinte maneira: na Seo 2, ns discutimos a motivao para o estudo e os desafios encontrados na rea de deduplicao de dados. Ento, a Seo 3 descreve as duas abordagens estudadas, as tcnicas de aprendizagem de mquina, e as combinaes de pontuaes de mtricas de similaridade, apresentan-do um comparativo entre estas abordagens. A Seo 4 conclui o estudo e apresenta a possibilidade de temas para trabalhos futuros nesta rea de pesquisa. Para finalizar, a Seo 5 apresenta as referncias bibliogrficas utilizadas para a inicializao ao nosso estudo em 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 in-formaes inseridas em seus bancos de dados. Sistemas que so dependentes da inte-gridade 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 com-paraes de registros necessrias, as tcnicas de aprendizagem de mquina tm sido utilizadas com notrio sucesso no tratamento do problema de deduplicao. Estas tc-nicas necessitam de um treinamento, onde so gerados manualmente exemplos de da-dos replicados, para o aprendizado da tarefa de deduplicao. A etapa de gerao ma-nual 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 tc-nicas 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 traba-lho, a soluo para o problema de reconhecer registros duplicados (pessoas, aes ou objetos idnticos) em dois arquivos de dados diferentes atravs de um modelo mate-mtico [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 regis-tros 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.

    Figura 1: A Comparao de Registros uma etapa no processo de deduplicao.

    3.1 Tcnicas de Aprendizagem de Mquinas

    A aprendizagem de mquina est relacionada ao desenvolvimento de algoritmos e as tcnicas que possibilitem ao computador aprender, isto , permitam ao computador aperfeioar seu desempenho em alguma tarefa, atravs da experincia.

    Programao Gentica (PG) uma tcnica de aprendizagem de mquina [24], [25], que ajuda a encontrar respostas para um dado problema, onde o espao de busca muito grande e h mais do que um objetivo a ser alcanado.

    Em um passado recente, M.G. de Carvalho et al. [20] apresentaram uma abordagem inovadora que identifica os registros duplicados em repositrios de dados utilizando a PG, atravs desta abordagem, os registros so deduplicados utilizando evidncias ex-tradas do contedo dos dados, criando uma funo de similaridade com a capacidade de determinar os registros do repositrio que so rplicas.

    Borges et al. estendem seu trabalho anterior [27], de modo que ao contrrio de defi-nir os limites baseados na pontuao retornada pela semelhana das funes, eles utilizam pontuaes para treinar algoritmos de classificao que identificam automaticamente as referncias duplicadas [28]. Os experimentos, segundo os autores, mostram que os classificadores aumentam a qualidade dos resultados, quando comparados com a abordagem utilizada no trabalho anterior.

  • Em M.G. de Carvalho et al., os autores propem uma abordagem baseada na PG pa-ra 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 capa-cidade de adaptao automtica a qualquer limite informado na identificao da rpli-ca.

    Recentemente, M.G. de Carvalho et al. propem uma abordagem de programao gentica, para gravar a deduplicao que combina vrias partes de evidncias diferen-tes extradas a partir do contedo dos dados, a fim de encontrar uma funo de dedu-plicao 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].

    3.2 Combinaes de Pontuaes de Mtricas de Similaridade

    Chaudhuri et al. [23] manipulam os registros como vetores de palavras. proposta uma funo de similariade que considera os pesos das palavras utilizando o mtodo Inverse Document Frequency (IDF) [29]. Atravs da similaridade proposta, um registro de entrada comparado a um conjunto de registros de referncia.

    Carvalho e Silva [30] utilizam o modelo vetorial que calcula a similaridade entre ob-jetos de mltiplas fontes. Esta abordagem pode ser utilizada para deduplicar objetos com estrutura complexa, como, por exemplo, arquivos XML.

    Borges et al. apresentam uma abordagem para identificar metadados duplicados em bibliotecas digitais distintas. A deduplicao realizada atravs do mapeamento entre os rtulos dos metadados em diferentes formatos e de funes de similaridade aplicadas sobre o contedo dos metadados. As principais contribuies do trabalho, segundos os autores, so a melhora na qualidade da identificao de metadados de objetos digitais duplicados e a especificao das funes de similaridade para o domnio das bibliotecas digitais. A qualidade da deduplicao avaliada atravs de uma serie de experimentos onde os resultados mostram que as funes propostas melhoram a qualidade da deduplicao de metadados utilizando um algoritmo de complexidade linear para a comparao de nomes de autores [26].

    Borges et al. propem uma abordagem que identifica os registros de metadados bibliogrficos duplicados de uma forma eficiente e eficaz. Propondo funes de similaridade especialmente concebidas para o domnio de biblioteca digital, e experimentos [27]. Ainda segundo os autores, os resultados mostram melhora na qualidade da deduplicao dos metadados em comparao a outras linhas de pesquisas diferentes, alm de equivaler estatisticamente quando comparados a um mtodo estado-da-arte (SVM) para identificao de rplica baseado em programao gentica. Isto sem o custo de qualquer processo de formao.

  • 3.3 Comparativo entre as abordagens

    Uma anlise comparativa entre as abordagens apresentadas anteriormente realizada nesta seo. So descritos a seguir os critrios utilizados na comparao, e a tabela a-baixo apresenta o comparativo entre as abordagens selecionadas.

    Mtrica por Similaridade - Indica como ocorre o processo de combinao dos valo-res de pontuao gerados para os atributos de um objeto aconteceu, atravs da mtrica por similaridade e especifica qual.

    Aprendizagem de Mquina - Indica como ocorre o processo de combinao dos va-lores de pontuao gerados para os atributos de um objeto aconteceu, atravs de a-prendizagem de mquinas e especifica qual.

    Funo - Indica qual a funo (funes) de similaridade utilizada para comparar os atributos de um objeto;

    Aplicao - Mostra em qual rea de aplicao o trabalho utilizado;

    Atributos - indica quais os atributos so comparados durante o processo. So colo-cadas duas alternativas: atributos comuns (C) aos dois objetos comparados ou todos (T) os atributos;

    Porcentagem (%) - Quantifica, atravs da porcentagem, a melhora que os experi-mentos trouxeram em comparao a outras abordagens especificadas em seus respec-tivos trabalhos.

    Comparativo entre as Abordagens Selecionadas

    Trabalho Mtrica de

    Similaridade Aprendizagem

    de Mquina Funo Aplicao %

    Chaudhuri et al. [23]

    Algoritmo Fuzzy

    NA NA Limpeza de dados

    NA

    Carvalho e Silva (2003) [30]

    NA Programao Gentica

    NA Deduplicao em arquivos XML

    75%

    de Carvalho et al. [20]

    NA Programao Gentica

    Geradas auto-maticamente

    Bibliotecas digitais

    12%

    de Carvalho et al. [21]

    NA Programao Gentica

    NA Bibliotecas digitais

    6,5%

    Borges et al. (2006) [26]

    Algoritmo de complexida-de linear para a comparao

    NA YearSim; IniSim; NameMatch; MetadataMatch

    Bibliotecas digitais

    31,5%

    Borges et al. (2011a) [27]

    Heurstica no supervi-sionada

    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

    Funes espec-ficas para cada domnio

    Bibliotecas digitais

    6,52%

  • Legenda:

    a) * 11% de melhora em relao ao percentual alcanado anteriormente (2011a) [27]; e

    b) NA = No Aplicvel.

    4 Concluses e Trabalhos Futuros

    A deduplicao de dados de dados segue como foco para buscar melhorias na recupe-rao da informao, atingir um repositrio limpo e livre de rplicas, e trazer dados mais concisos.

    A etapa de comparao de registros foi o foco deste trabalho de anlise comparati-va. Mas a etapa de classificao tambm entra no contexto, por ser a posterior a de comparao. Etapa onde os valores de similaridade obtidos anteriormente so classifi-cados.

    Alguns trabalhos propem o uso de mtricas de similaridade, enquanto outros pro-pem mtodos que utilizam tcnicas de aprendizado de mquina. Ambos buscam al-canar melhora objetiva na deduplicao dos dados. As abordagens estudadas mos-tram leve tendncia tcnica de aprendizagem de mquinas. O alto custo computacio-nal serve de desvantagem desta tcnica, porm tambm serve de incentivo para buscar a diminuio. Os trabalhos que propem o uso de mtrica tambm apresentaram resul-tados animadores.

    Como trabalhos futuros, podemos citar a busca de outros domnios de pesquisa, j que mais de 60% dos artigos pesquisados possuem o foco nas bibliotecas digitais, alm da busca por realizar comparaes em outras etapas do processo de deduplicao.

    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 Collec-tions, 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 Unstruc-tured 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. 563-566, Nov. 1962.

    [9] H.B. Newcombe, Record Linking: The Design of Efficient Systems for Linking Rec-ords 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 Learn-ing, 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.cio-asia.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.

    http://www.accenture.com/http://www.cio-asia.com/http://www.cio-asia.com/
  • [23] S. Chaudhuri, K. Ganjam, V. Ganti and R. Motwani, Robust and efficient fuzzy match for online data cleaning, ACM SIGMOD: International Conference on Man-agement 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 Applica-tions, 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.