View
1
Download
0
Category
Preview:
Citation preview
Coleta, Integração e Pré-processamento de Dados de Múltiplas Fontes
Natércia A. BatistaEstudante de Mestrado, PPGCC/UFMG
2
Olá
Michele A. BrandãoProfessora IFMG
PosDoc, PPGCC/UFMG
Daniel H. DalipProfessor CEFET-MG
Doutor, PPGCC/UFMG
Michele BritoMestre, PPGCC/UFMG
Mirella M. MoroProfessora DCC/UFMG
Doutora, UC Riverside
IntroduçãoMotivação e Tópicos Abordados
1
3
DadosQuem são?
De onde vêm?Como se comportam?
É possível domesticá-los?4
Quem são?
5
Como se Comportam?
7Fonte: https://seobrien.com/how-big-data-is-finding-its-market-in-texas
The Big Data Pipeline
8Fonte: H. V. Jagadish ACM SIGMOD Blog - 06/2012
É possível domesticá-los?
9Fonte: https://www.forbes.com/sites/gilpress/2016/03/23/data-preparation-most-time-consuming-least-enjoyable-data-science-task-survey-says
Building training sets: 3%Cleaning and organizing data: 60%Collecting data sets: 19%Mining data for patterns: 9%Refining algorithms: 4%Other: 5%
É possível domesticá-los?
10Fonte: https://www.forbes.com/sites/gilpress/2016/03/23/data-preparation-most-time-consuming-least-enjoyable-data-science-task-survey-says
Building training sets: 10%Cleaning and organizing data: 57%Collecting data sets: 21%Mining data for patterns: 3%Refining algorithms: 4%Other: 5%
Data ScienceData Engineering
11
Uma coisa é uma coisa
12
Science
knowledge or a system of knowledge covering general truths or the operation of general laws especially as obtained and tested through scientific method
Engineering
the application of science and mathematics by which the properties of matter and the sources of energy in nature are made useful to people
Fonte: https://www.merriam-webster.com
Scientists study the physical world. Engineers apply this knowledge of science to solve problems efficiently.
Interessante
EngenhariaCiência
13
dados
Objetivo deste TutorialEngenharia de Dados (com base na ciência) para fazer mais Ciência de Dados
14
Tópicos Abordados
15
Coleta
Integração
Pré-processamento
Análise e Aplicação
Coleta de DadosTipos de Fontes de Dados e Métodos de Coleta
2
16
Tipos de fonte de dados 17
web
Dados Abertos
Dados Conectados
APIs
Páginas da Web
Dados Abertos
18
Dados Abertos 19
Fonte: https://okfn.org/opendata/
Disponibilidade e AcessibilidadeDados devem ser disponibilizados de forma completa em formato conveniente e modificável.
Reúso e RedistribuiçãoDados devem ser disponibilizados sobre termos que permitam reutilização e redistribuição, além de um formato legível por máquina.
Participação UniversalTodos devem poder reutilizar e redistribuir os dados sem discriminação quanto à campos de atuação, pessoas ou grupos.
Dados Abertos - Portais 20
dados.gov.br
data.gov
europeandataportal.eu
Dados Conectados
21
Dados Conectados 22
Resource Description Framework - RDF 23
Sujeito Objeto(Valor)
Predicado
RDF com URIs 24
http://exemplo.org/pessoa/13 Joãohttp://exemplo.org/nome
APIs
26
APIs 27
API
Bases de Dados Aplicações
APIs 28
Requisições e Respostas FormatadasRequisições e respostas são formatadas e pré-estabelecidas pelos desenvolvedores através do contrato de cada função ou endpoint.
Registro PrévioAs APIs em geral requerem um registro prévio das aplicações consumirão seus dados. Após registrar, desenvolvedor recebe uma chave para realizar e autenticar suas requisições.
Limite de RequisiçõesBoa parte das APIs disponíveis para consulta limitam o número de requisições que podem ser realizadas pelos usuários. Comumente medido em requisições/período de tempo ou tempo.
APIs Disponíveis 29
Páginas Web
30
Páginas da Web 31
Page
Page
Page
Page
Page
Page
Page
Page
web
Páginas da Web - HTML 32
33
Páginas da Web 34
Dados em Tags HTMLOs dados em páginas da web estão organizados tags HTML ou em seus atributos.A obtenção do dado é feita percorrendo o arquivo e extraindo os dados nesses locais.O processo muitas vezes é referido como scraping.
Limite de RequisiçõesLimite de requisições é definido no arquivo “robots.txt” presente na raíz dos websites.Geralmente medido em intervalo de tempo entre requisições (Crawl-delay).
MÉTODOS DE COLETA
35
Métodos de Coleta
36
◉ Breadth-First Search (BFS)
◉ Depth-First Search (DFS)
◉ SnowBall
◉ Random Walk (RW)
◉ Metropolis-Hastings Random Walk (MHRW)
Métodos de Coleta
37
◉ Breadth-First Search (BFS)
◉ Depth-First Search (DFS)
◉ SnowBall
◉ Random Walk (RW)
◉ Metropolis-Hastings Random Walk (MHRW)
Breadth-First Search (BFS) 38
Relashionship
Relashionship
Relashionship
Profundidade (Depth)
Breadth-First Search - Redes Sociais 39
Amizade
Profundidade (Depth)
Amizade
Amizade
Breadth-First Search - Páginas da Web/Wikipédia 40
Link
Profundidade (Depth)
Link
Link
Breadth-First Search - Redes Sociais Acadêmicas 41
Co-autor
Profundidade (Depth)
Co-autor
Co-autor
Autor
Paper
Breadth-First Search - Redes Sociais Acadêmicas 42
Co-autor
Co-autor
Co-autor
Profundidade (Depth)
Integração de DadosDefinição
3
43
Desafios
44
◉ Heterogêneos, não-estruturados ou semi-estruturados
◉ Modelos distintos
◉ Diferentes representações para objetos do mundo real
◉ Não confiáveis
Devido aos
próprios dados
A integração de dados consiste em combinar dados de
diferentes fontes para obter informações valiosas.
ETL (Extract Transform Load)
Principais etapas para integração de dados de múltiplas fontes. 46
240.000 pessoasbuscam pelo termo "ETL" por mês
ETL ou Integração de dados?
74.000 pessoasbuscam por "data integration" por mês
47
48
Integração de Dados
Limpeza dos dados
ETL
Perfil dos dados
Modelagem dos dados
Segurança dos dados
Dados estruturados
e não estruturados
Suporte à integração em tempo
realFusão dos dados
Integração de DadosAbordagens
49
Coletar ConsultarArmazenarIntegrado
Integração de DadosAbordagens
50
Coletar
Consultar
Armazenar
Integrar
Integração de DadosAbordagens
51
Coletar
Consultar
Armazenar
Integrar
Lago de dados (Data Lake)
Estratégias para Integração de Dados
52
◉ Sistemas de mediação - esquema global Golshan et al. [2017]
◉ Processamento de linguagem naturalMa et al. [2017]
◉ Abordagem bayesiana
Wang et al. [2017]
Estratégias para Integração em BD Relacional
Vertical
Tabelas com essencialmente as mesmas informações são concatenadas.
Horizontal
Diferentes tipos de dados são combinados com o objetivo de enriquecer uma tabela existente.
53
54
Exemplo: estratégia horizontal
id nome sobrenome gênero
c2 Joana Oliveira F
c5 Isis Lima F
c7 Rafael Silva M
... ... ... ...
cliente_id item_id preço
c2 i254 12,50
c5 i4245 1,99
c5 i32123 1,29
c5 i254 12,50
c5 i21435 5,99
c7 i254 12,50
... ... ...
item_id preço nome sobrenome gênero
i254 12,50 Joana Oliveira F
i4245 1,99 Isis Lima F
i32123 1,29 Isis Lima F
i254 12,50 Isis Lima F
i21435 5,99 Isis Lima F
i254 12,50 Rafael Silva M
... ... ... ... ...
Pré-processamentoDesafios no pré-processamento dos dados
4
55
Pré-processamento dos dados
56
◉ Dados coletados da web fornecem vários recursos para os pesquisadores
◉ Geralmente contam com alguns principais problemas:○ Dados incompletos○ Veracidade dos dados○ Duplicidade dos dados○ Ausência de padronização○ Redução de dados
Pré-processamento dos dados
57
Dados Incompletos
58
Nenhum valor armazenado em alguma variável○ Extrair de outra fonte?○ Remover valores?○ Substituir por default?
Dados Incompletos
59
Alves et al., 2016
GHTorrentInformações sobre
quantidade de commits
Dados Incompletos
60
GHTorrentDados sobre quantidade
de commits
Dados sobre linhas adicionadas e deletadas
em cada commit
Alves et al., 2016
Dados Incompletos
61
Dados divergente entre si
Projetos inexistentes ou transformados em particulares
Definição dos autores
Exclusão dos commits que não possuíam informação
Alves et al, 2016
Veracidade dos Dados
62
Melhoria da precisão dos dados○ Vieses○ Ruídos○ Anormalidades
Veracidade dos Dados
63
Geerts et al., 2018
DeFacto - Deep Fact Validation○ Estrutura de validação tripla em bases de
conhecimento○ Reconhecimento e verbalização da entidade
nomeada
Remoção de Duplicatas
64
◉ Dados duplicados podem ocorrer entre fontes distintas ou até mesmo na mesma origem
◉ Podem ser utilizados recursos de contexto para identificar duplicatas
Remoção de Duplicatas
65
de Souza Silva et al., 2018
Indexação Classifica-ção
Compara-ção de
Registros
Remoção de Duplicatas
66
de Souza Silva et al., 2018
◉ Seleção dos melhores atributos para a indexação○ Não utiliza técnicas de aprendizado de máquina○ Não exige a intervenção de especialistas
◉ Conjunto de métricas○ Duplicidade○ Distinção○ Densidade○ Repetição
Redução dos Dados
67
◉ Problema de minimizar a quantidade de dados a serem armazenados no conjunto de dados
◉ Soluções incluem○ Minimizar dados (outra forma de
armazenamento)○ Amostragem sem perda de generalidade
Redução dos Dados
68
Batista et al., 2017
Conjunto muito grande de repositórios
Redução dos Dados
69
Batista et al., 2017
Seleção de linguagens de programação específicas○ Maior número de repositórios○ Apenas repositórios ativos
Redução dos Dados
70
Batista et al., 2017
Ausência de Padronização
71
◉ Conjunto de dados heterogêneo e com formatos diferentes
◉ Reestruturação de dados em formato comum
Aplicações ReaisEstudos que utlizaram dados de mútiplas fontes
5
7272
Aplicações Reais
73
◉ Identificação de dados do Perfil de Usuários em Redes Sociais
Farnardi [2018]
◉ Visualização de Dados de Pesquisadores
Brandão [2018]
◉ Predição de Efeitos Colaterais de Medicamentos
Ma et al. [2017]
◉ Arcabouço para a Estimativa Automática da Qualidade na Web 2.0
Dalip et al. [2017]
Como o usuário pode determinar a qualidade da informação que ele acessa?Dalip et al., 2017
74
◉ Já existem meios manuais para tentar garantir a qualidade do conteúdo
◉ Problemas da Avaliação manual:○ Tamanho da coleção○ Velocidade que expande
◉ Possível Solução: Avaliar automaticamente a qualidade de conteúdo.
Como o usuário pode determinar a qualidade da informação que ele acessa?Dalip et al., 2017
75
◉ Diversos autores definem que a qualidade pode ser vista como um conceito multidimensional
◉ Tejay, et al. [2006] agrupou dimensões de qualidade em níveis semióticos. ○ Sintático, Semântico e Pragmático
◉ Dimensões são estimadas por indicadores
◉ Indicadores são extraídos de fontes
Fontes de dados - Wikipédia Dalip et al., 2017
76
Fontes de dados - Wikipédia Dalip et al., 2017
77
# Seções# Citações# Imagens
...
# letras# erros ort.Métricas de legibilidade
# de R# de R feitas por U registrados
...
# de documentos editados por UMédia de edições por D de U
...
Grau de entrada de DPagerank de D
...
Fontes de dados - Wikipédia Dalip et al., 2017
78
# Seções# Citações# Imagens
...
# letras# erros ort.Métricas de legibilidade
# de R# de R feitas por U registrados
...
# de documentos editados por UMédia de edições por D de U
...
Grau de entrada de DPagerank de D
...
Nível SintáticoAparênciaCorretude
OrganizaçãoLegibilidade
...
Fontes de dados - Wikipédia Dalip et al., 2017
79
# Seções# Citações# Imagens
...
# letras# erros ort.Métricas de legibilidade
# de R# de R feitas por U registrados
...
# de documentos editados por UMédia de edições por D de U
...
Grau de entrada de DPagerank de D
...
Nível SemânticoCoerência
ConfiabilidadeRedundância
...
Fontes de dados - Wikipédia Dalip et al., 2017
80
# Seções# Citações# Imagens
...
# letras# erros ort.Métricas de legibilidade
# de R# de R feitas por U registrados
...
# de documentos editados por UMédia de edições por D de U
...
Grau de entrada de DPagerank de D
...
Nível PragmáticoAdequabilidade
ImportânciaMaturidade
...
Formas de Coleta - Wikis
◉ Dump ○ Wikipédia: https://dumps.wikimedia.org/enwiki○ Wikia:
http://starwars.wikia.com/wiki/Special:Statistics
◉ API (Wikipédia):○ https://en.wikipedia.org/wiki/Special:Export
◉ Extração do conteúdo do HTML
81
Coleta de Cada Fonte - Wikipédia Dalip et al., 2017
Dump
◉ Grafo ◉ Documentos ◉ Texto atual
API
◉ Histórico de Edições ◉ Info. de Cada Usuário
82
Método Multivisão para Estimativa da QualidadeDalip et al., 2017
83
ArtigoWiki
Estruturado Artigo
Grafodo Artigo
Históricodo Artigo...
Modelo 1 Modelo 2 Modelo 3
Combinador
1.3 3.3 3.5
3.5
https://github.com/daniel-hasan/multiview-method
Avaliação - Amostras UtilizadasDalip et al., 2017
84
Amostra # de artigos Tamanho do Grafo Data da Coleta
WIKIPEDIA 3.294 Arestas: 86.077.675Vértices: 3.185.457 jan/2008
MUPPETS 1.550 Arestas: 282.568Vértices: 29.868 set/2009
StarWars 1.446 Arestas: 1.017.241Vértices: 106.434 out/2009
Amostras disponíveis em: http://www.lbd.dcc.ufmg.br/lbd/collections/wiki-quality
Metodologia de AvaliaçãoDalip et al., 2017
85
◉ Baseline: SVR sem usar multivisão
◉ Métrica para Comparação: Mean Squared error
◉ Avaliação Manual○ Wikipedia e StarWars: Comunidade avalia
manualmente quanto a qualidade○ Muppets: Usuários pontuam artigos de 1 a 5 estrelas
Avaliação - ResultadosDalip et al., 2017
86
Amostra Método MSE % Ganho
SVR 0,887
MVIEW 0,873* 1,6%
MVIEW 0,834* 5,9%
SVR 0,084
MVIEW 0,058* 30,9%
MVIEW+F0 0,068* 19%
SVR 1,69
MVIEW 1,693 -0,2%
MVIEW+F0 1,703 -0,8%
* = Diferenças estatisticamente significativas
ConclusõesFinalizando
6
8787
Conclusões
88
◉ PROBLEMA: lidar com fontes de dados heterogeneas
◉ Grandes DESAFIOS *antes* de fazer qualquer pesquisa ○ Coleta○ Integração○ Pré-processamento
◉ Aplicações discutidas○ Predição da qualidade de artigos em Wikis○ Efeitos colaterais em medicamentos○ Visualização de dados de pesquisadores
Tem *muito* mais, inclusive em artigos publicados aqui no SBBD
89
Dúvidas?
Contato
natercia@dcc.ufmg.br
Links úteis
bit.ly/proj-apoena
www.labcsx.dcc.ufmg.br
Agradecimentos
90
Recommended