Você está na página 1de 8

Semantic Enrichment of Web Data for the Provision of an

Unified Data Repository of Brazilian Missing Persons


Jorão Gomes Jr. Nicolas Ferranti Jairo Francisco de Souza
Programa de Pós-Graduação em Programa de Pós-Graduação em Departamento de Ciência da
Ciência da Computação Ciência da Computação Computação
Rua José Lourenço Kelmer, s/n. São Rua José Lourenço Kelmer, s/n. São Instituto de Ciências Exatas. Rua José
Pedro Pedro Lourenço Kelmer, s/n. São Pedro
Juiz de Fora, Minas Gerais 36036-900 Juiz de Fora, Minas Gerais 36036-900 Juiz de Fora, Minas Gerais 36036-900
joraojunior@ice.ufjf.br nicolas1@ice.ufjf.br jairo.souza@ufjf.edu.br
ABSTRACT Contudo, interoperar entre esses dados sempre foi um desafio e di-
Communication and data technologies are becoming closely lin- versos padrões foram sendo propostos [4] como fundamentação do
ked to people’s lives. Therefore it is natural to make use of all this que chamamos de Web Semântica. No contexto da Web Semântica,
progress to reduce and solve social problems. In order for govern- o termo Dados Ligados (Linked Data) é utilizado para descrever
ment and society to make the most appropriate decisions to deal um conjunto de práticas para publicar, compartilhar e conectar
with civilian disappearance, it’s necessary to have a well-structured dados estruturados na Web sobre diversos temas [6]. Atualmente,
source of information. In several countries, it’s difficult to access impulsionados por máquinas de busca e outras ferramentas que se
government data, since information is dispersed, not connected beneficiam de dados com melhor descrição, os princípios da Web
and poorly structured. So this work presents a framework to gather Semântica estão aumentando sua difusão pelos grandes produtores
information on civil disappearance in Brazil through techniques de conteúdo do mercado, como sites de notícias, entre outros. O inte-
such as Data Scraping and Linked Data. The goal is to make availa- resse no compartilhamento e consumo de dados Web tem motivado
ble an automatic data centralization of these individual cases, and a disponibilização de conjuntos de dados na Web e repositórios de
to encourage the use of standards for the publication of data that conjuntos de dados tem sido criados. A W3C em 2017, por exemplo,
are frequently ignored by organizations, hindering analysis and divulgou um conjunto de boas práticas para disponibilização de da-
decision making on data. dos na Web, reforçando a necessidade destes dados serem passíveis
de serem descobertos e compreendidos por humanos e máquinas
CCS CONCEPTS [16].
No setor público, por sua vez, existe grande interesse por parte de
• Information systems → Database management system en-
governos para que suas informações sejam publicadas de maneira
gines;
aberta, seguindo o exemplo do Reino Unido [19] onde o website
data.gov.uk reúne diversas informações de interesse como dados
KEYWORDS voltados à transparência do governo. No Brasil, as principais infor-
Data Scraping, Linked Data, Semantic Web mações divulgadas pelo governo também estão associadas à trans-
ACM Reference format: parência, sendo acessadas através do portaldatransparencia.gov.br.
Jorão Gomes Jr., Nicolas Ferranti, and Jairo Francisco de Souza. 2019. Seman- Uma das principais áreas de interesse do governo é a área de segu-
tic Enrichment of Web Data for the Provision of an Unified Data Repository rança pública, a qual carece de mão de obra especializada e investi-
of Brazilian Missing Persons. In Proceedings of XV Brazilian Symposium on mentos adequados para produzir índices estatísticos confiáveis a
Information Systems, Aracaju, Brazil, May 20–24, 2019 (SBSI’19), 8 pages. nível nacional [9].
https://doi.org/10.1145/3330204.3330267 Neste cenário, é difícil encontrar dados com qualidade em segu-
rança pública, como é o caso de desaparecimentos civis. Existem
algumas iniciativas do governo brasileiro para incentivar a locali-
1 INTRODUÇÃO zação de pessoas desaparecidas através do registro de desapareci-
Com o passar dos anos, é possível observar o crescimento do vo- mento online, como ocorre no Ministério da Justiça1 . Entretanto, a
lume de dados publicados na Web. Tal crescimento deve-se ao fato adesão é baixa, totalizando 1206 cadastros na presente data, entre
das inúmeras aplicações às quais esses dados podem ser submetidos. desaparecidos e encontrados. Em geral, a tarefa de coleta e divul-
gação das informações acaba delegada a entidades como ONGs e
Permission to make digital or hard copies of all or part of this work for personal or órgãos policiais regionais que, na maioria das vezes, atuam de forma
classroom use is granted without fee provided that copies are not made or distributed
for profit or commercial advantage and that copies bear this notice and the full citation separada e sem nenhum tipo de integração desses dados.
on the first page. Copyrights for components of this work owned by others than ACM Uma vez que cada entidade possui seu próprio conjunto de regras
must be honored. Abstracting with credit is permitted. To copy otherwise, or republish,
to post on servers or to redistribute to lists, requires prior specific permission and/or a
para lidar com o problema, a heterogeneidade de representação da
fee. Request permissions from permissions@acm.org. informação por cada entidade dificulta o processo de interoperabili-
SBSI’19, May 20–24, 2019, Aracaju, Brazil dade entre os dados. A proposta de integrar, de maneira estruturada
© 2019 Association for Computing Machinery.
ACM ISBN 978-1-4503-7237-4/19/05. . . $15.00
1 https://desaparecidos.mj.gov.br/
https://doi.org/10.1145/3330204.3330267
SBSI’19, May 20–24, 2019, Aracaju, Brazil J. Gomes Jr. et al.

e unificada, esses diversos repositórios de dados se mostra uma região e informações adicionais fornecidas por familiares ou conhe-
alternativa de padronização promissora, pois permite uma troca cidos. Contudo, ao analisar informações cadastradas em sites, tanto
de informações de maneira mais rápida e abrangente, permite que em ONGs quanto sites governamentais, observa-se uma grande
sistemas possam utilizar esses dados para auxiliar no processo de carência de dados, que incluem desde a ausência de informações
divulgação da ocorrência de desaparecimento, do encerramentos sobre a etnia do indivíduo quanto a inexistência de preenchimento
de casos, bem como facilita a identificação de duplicatas e inconsis- do nome do desaparecido [17].
tências. Conforme aponta [17], os registros policiais, que são um dos
Este trabalho possui como objetivo, através de um caso real de poucos instrumentos de cadastramento de desaparecidos, estão
aplicação, apresentar os problemas na estruturação dos dados na sujeitos a incontáveis problemas de tabulação e preenchimento, o
Web e apresentar um framework para melhorar a qualidade de que pode gerar a falta de dados. Outro motivo, conforme aponta
disponibilização desses dados. Como exemplo, será apresentado um [11], é que não existe uma instituição que centralize e padronize as
estudo de caso com a manipulação de dados de desaparecidos civis. informações e, muito menos, a forma como estes serão captados.
Dessa forma, pretende-se ajudar profissionais e mantenedores de Portanto, fica evidente que a falta de integridade em registros
conteúdo a melhorar a qualidade dos seus repositórios, viabilizando de desaparecidos compromete a divulgação dos casos, salientando
o desenvolvimento de aplicações mais inteligentes que explorem assim, a grande necessidade de se criar um repositório exclusivo de
com maior facilidade a semântica por trás dos dados. Além disso, dados que unifique as informações disponíveis. A solução proposta
como resultado, objetiva-se prover um repositório centralizado de neste trabalho objetiva tratar a falta de qualidade dos dados divul-
dados de desaparecidos civis, de forma a auxiliar na divulgação gação, geralmente em páginas Web sem metadados adequados ou
desses casos. com dados presentes apenas em imagens, além da incompletude
dos dados divulgados por diferentes órgãos.

2 DESAPARECIMENTO DE CIVIS NO BRASIL 3 TRABALHOS RELACIONADOS


A partir de um levantamento efetuado em 2017 por [8], pode-se Muitas aplicações lidam com problemas relacionados com a qua-
afirmar que, em média, 8 pessoas desaparecem no Brasil a cada hora. lidade dos dados na Web. Nesta seção, são apresentados alguns
O estudo realizado em todo o território brasileiro avaliou o cenário trabalhos que empregam meios de coleta e estruturação desses
de desaparecimento no período de 2007 a 2016 no qual constatou-se dados.
o registro de 694.007 desaparecidos durante os 10 anos entre todos Em [3], os autores apresentam um framework para extração de
os estados, ou seja, que aproximadamente 69.400 pessoas desapa- dados de páginas Web e semantização. O AgentMat executa agentes,
receram por ano. Sendo um estudo recente, a análise em questão que são programas projetados especificamente para extrair dados
enfatiza a frequência de casos relacionados ao desaparecimento civil de um determinado site. A arquitetura possui componentes defi-
no país, mostrando-se um fenômeno importante a ser estudado. nidos via XML. Cada componente faz uso de expressões regulares
Segundo [12], existem vários fatores que podem causar o de- para analisar as páginas. Ainda, é possível atribuir categorias ao
saparecimento de uma pessoa. No caso de crianças, as principais conteúdo extraído. Assim como o presente trabalho, o AgentMat
ocorrências envolvem tráfico infantil, venda de órgãos, trabalho es- também enfrenta o problema de heterogeneidade na forma com
cravo, prostituição, pedofilia e adoção ilegal. Já em adultos, fatores que conteúdos são publicados na Web. A abordagem baseada em
como dependência química e abstenção de suas responsabilidades componentes propõe um padrão para a escrita dos componentes
diárias, como envolvimento com dívidas e relacionamentos contur- de extração, bem como uma sequência de execução, incentivando
bados são fatores que contribuem para tal fato. Além disso, [13] usuários a trabalharem de forma colaborativa. A categorização da
aponta o sumiço de idosos por perda de memória, a fuga de adoles- informação também se assemelha a um dos processos propostos
centes de casas por maus tratos ou insatisfações pessoais e também por este trabalho. Enquanto o AgentMat utiliza os metadados das
casos nas quais vítimas de acidentes em que os cadáveres não são páginas para gerar a classificação, este trabalho propõe a utilização
reconhecidos, como casos de desaparecimentos relatados. de técnicas que fazem uso dos dados extraídos para atribuir novos
Devido à elevada taxa de desaparecimentos e suas diversas moti- metadados, aumentando o valor da informação.
vações, torna-se necessário um monitoramento adequado de desa- Por sua vez, em [10] os autores propõem um extrator Web cloud-
parecidos, que se dá através de documentações e cadastros de cada based para aplicações de Big Data, o qual faz uso de soluções da
caso. O objetivo desses cadastros é ser uma ferramenta de ajuda no Amazon1 para que o sistema possa ser utilizado na nuvem. A abor-
colhimento de informações que contribuam para a busca e divulga- dagem proposta pelo trabalho se dá pela utilização de uma fila para
ção de pessoas desaparecidas. Na maioria dos casos, a realização receber URLs a serem processadas e permitir que a alocação de
é feita a partir de boletins de ocorrência (BO’s) presencialmente motores de raspagem seja feita de acordo com a necessidade de
em postos policiais, onde deve ser apresentada a maior quanti- processamento. Os motores de raspagem utilizam uma biblioteca
dade de informação possível relacionadas àquele caso. É possível, para transformar as informações da página em um Document Object
também, realizar o cadastramento em sites do governo, como de- Model (DOM) onde vários seletores de elementos para o analisador
legaciacnpd.org ou de ONGs como desaparecidosdobrasil.org, que são usados com a biblioteca de analisadores HTML para extrair o
realizam a divulgação desses dados para a sociedade como forma conteúdo necessário do DOM. O conteúdo é formatado de acordo
de auxílio na solução desses casos. As principais informações divul- com a configuração, filtrado e armazenado no banco de dados. A
gadas são informações como sexo, idade, data do desaparecimento, 1 https://www.amazon.com/
Semantic Enrichment of Web Data for the Provision of an
Unified Data Repository of Brazilian Missing Persons SBSI’19, May 20–24, 2019, Aracaju, Brazil

representação DOM permite ao desenvolvedor navegar pelas tags e para diferentes necessidades do desenvolvedor, o qual pode utilizar
coletar apenas as informações relevantes. algoritmos distintos para extrair informação dos dados que estão
[21] também lida com a coleta e estruturação de dados para sua sendo coletados.
aplicação. Em seu trabalho, apresenta um sistema de dados sobre o
clima que foi projetado para coletar dados de forma automática e 4 FRAMEWORK PARA COLETA DE DADOS
de diferentes fontes, concentrando a informação em um repositório Para facilitar coleta e unificação de dados para repositórios de do-
central e a entregando através de uma interface Web. A arquitetura mínio específico, esta seção apresenta um framework para coleta,
do sistema é dividida em módulos, sendo um deles encarregado de validação, agrupamento e atribuição de metadados para essas bases.
processar páginas predefinidas e coletar os dados que, em geral, O framework é formado por um conjunto de tarefas para estrutu-
estão acessíveis via FTP dentro do conjunto de fontes selecionadas. ração de dados, atribuição de semântica e normalização dos dados.
Parte fundamental do trabalho é conhecer a estrutura dos sites de Todo esse processo é ilustrado através da Figura 1, na qual é apre-
referência para que os dados possam ser consultados. Por sua vez, sentado um processo modular dividido em 3 etapas.
[14] coleta automaticamente dados de conferências científicas para Definição do extrator: O processo de extração é realizado uti-
auxiliar pesquisadores que se guiam pelo Qualis para encontrar e lizando a técnica de raspagem de dados. Essa técnica leva em conta
acompanhar deadlines. Para resolver a heterogeneidade de estrutura a análise da estruturação de uma página HTML. Para cada site, é
das páginas de cada conferência, os autores aplicam o modelo esto- definido um extrator especializado que recupera as informações
cástico Conditional Random Fields para etiquetar dados de interesse, através de expressões regulares ou consultas XPath. Extratores
como nome da conferência, datas, local, entre outros. Por ser um são definidos a partir de uma interface única que possui métodos
modelo que exige treinamento, esta abordagem se torna aplicável específicos fornecidos pela solução. Estes métodos auxiliam na iden-
para domínios específicos. No contexto de dados de desaparecidos tificação da disposição dos dados na página e atribuem cada dado a
civis, entretanto, as variações com que os dados podem estar divul- uma propriedade que representa o seu significado no vocabulário
gados nas páginas de ONGs e órgãos governamentais (por extenso, utilizado pelo repositório (Figura 2b). Cada extrator instanciado no
tabulado, como figuras, etc), dificulta o uso de técnicas automati- framework é executado de forma paralela. Ao definir um extrator,
zadas. Além disso, por ser um domínio sensível para a população, são definidos quais dados o extrator irá gerar e por qual processo
a tolerância a erros na coleta dos dados é muito pequena, o que (tarefas) esses dados passarão. A definição de cada coletor é feita
justifica o uso de raspagem de dados. utilizando um documento XML, o qual será lido e instanciado no
No contexto deste trabalho, a publicação de conteúdo estrutu- framework. A Figura 2a apresenta a definição de um coletor em
rado de forma livre e acessível é fundamental para que aplicações formato JSON.
inteligentes possam fazer uso desse conteúdo. Uma iniciativa para Tarefas: Cada dado gerado pelo extrator passa por um conjunto
incentivar o crescimento do compartilhamento de dados de forma de tarefas definidas pelo desenvolvedor. O objetivo das tarefas é
livre é a Linking Open Data (LOD). O objetivo do projeto é incen- enriquecer o dado, extraindo informação, ou realizar algum tipo de
tivar o crescimento da Web de Dados através da disponibilização normalização no dado (Figura 3). O framework proposto conta com
de conjuntos de dados que estão disponíveis sob licenças abertas, um conjunto de tarefas predefinidas que podem ser empregadas
convertendo-os para RDF, de acordo com os princípios de Dados por qualquer coletor, como é o caso do normalizador e o anota-
Ligados e publicá-los na Web [5]. dor semântico. Tarefas de normalização são aquelas que realizam
Segundo [6], as três principais categorias de aplicações de Dados alterações sintáticas no dado, como capitalização, tratamento de
Ligados podem ser definidas como: navegadores de Dados Ligados, codificação do dado, alteração por sinônimos, resolução de abrevia-
motores de Busca de Dados Ligados e aplicações de domínio especí- turas, etc. Cada tarefa realiza uma ação atômica no dado e o usuário
fico. Todas as categorias trazem o enriquecimento semântico como pode enfileirar diferentes tarefas de normalização no seu coletor.
diferencial para as aplicações. Um exemplo é o DBpedia Mobile Além das tarefas de normalização, é possível utilizar tarefas para en-
[2], um aplicativo para dispositivos móveis que coleta informações riquecimento do dado. A partir da utilização de métodos de geração
do GPS e busca, em bases abertas de Dados Ligados, informações de metadados, pode-se inferir dados que não estão necessariamente
relativas a estabelecimentos, fotos e outras informações de inte- explícitos. Neste contexto, entram métodos de processamento de
resse sobre locais nas redondezas, compilando toda a informação linguagem natural (PLN), Optical Character Recognition (OCR), ou
e entregando conteúdo relevante ao usuário. Em [20], os autores qualquer outra ferramenta ou técnica de agregação semântica que a
apresentam uma abordagem para enriquecimento semântico de aplicação do usuário do framework requeira. Estão disponíveis para
repositórios de conjuntos de dados. A abordagem inclui as etapas o usuário tarefas de enriquecimento pré-programadas para OCR,
de indexação do conjunto de dados, recomendação de vocabulá- o qual faz uso do Tesseract2 , tarefas básicas de PLN como identi-
rios de domínio para os metadados, identificação do domínio de ficação de entidade nomeadas e POS tagging utilizando o Apache
conhecimento ao qual o conjunto de dados pertence e a geração do OpenNLP3 e de anotação semântica, no qual é utilizado o DBpedia
perfil do conjunto de dados composto por metadados descritivos e Spotlight4 . Além das tarefas disponíveis, o usuário pode incluir
estruturais. No presente trabalho, os princípios de automatização código próprio, em linguagem PHP, criando uma classe que imple-
do processo de enriquecimento semântico do repositório também mente uma interface br.ufjf.workflow.task.ITask, onde uma
é seguido, embora com objetivo distinto. O processo de enrique-
cimento também utiliza técnicas de processamento de linguagem 2 https://github.com/tesseract-ocr/tesseract
natural, mas é apresentado um framework que pode ser adaptado 3 https://opennlp.apache.org/
4 https://www.dbpedia-spotlight.org/
SBSI’19, May 20–24, 2019, Aracaju, Brazil J. Gomes Jr. et al.

Figura 1: Visão geral do processo de coleta de dados, normalização e atribuição de metadados.

Armazenamento: Por fim, os dados são armazenados em um


repositório central em formato RDF. Nesta etapa, os dados já con-
tam com uma estrutura de representação semântica dos atributos
utilizando vocabulários à escolha do usuário (Figura 2b). O armaze-
namento padrão do framework é feito no AllegroGraph5 , mas novos
conectores para outros bancos de dados RDF podem ser incluídos
no framework. O AllegroGraph permite consultar as triplas RDF
através de APIs de consulta como SPARQL e Prolog, utiliza da lógica
RDF++ e inclui suporte para Federation e raciocínio Temporal [1].
Quando se trabalha com grandes volumes de dados, existem grandes
probabilidades de encontrar dados repetidos. Assim, é necessário
que esses elementos duplicados sejam tratados e verificados antes
de serem inseridos. Para evitar duplicatas, o usuário pode definir,
para cada extrator, o conjunto de dados que formam o identificador
do dado. Antes de inserir um novo registro no banco de dados, é
consultada a existência dele na base utilizando o conjunto de dados
definido como identificador, onde:
• Caso não exista registro com mesmo identificador, é criado
um novo objeto e persistido todos os metadados referentes
a ele.
• Caso contrário, é realizada a verificação dos novos metada-
dos a serem inseridos:
– Se eles já existirem na base, não são inseridas as du-
(a) Definição das tarefas que serão executadas plicatas.
– Se não, os novos dados são persistidos e referencia-
dos ao objeto do registro já existente, aumentando os
metadados referentes àquele registro.

5 REPOSITÓRIO CENTRALIZADO DE DADOS


DE DESAPARECIDOS CIVIS
Nesta seção é apresentado o processo de criação de um repositó-
rio centralizado sobre casos de desaparecimento de civis, o qual
foi construído utilizando o framework proposto. A motivação para
(b) Definição do vocabulário dos atributos coletados
aplicação nesse cenário surgiu a partir do envolvimento com o
Núcleo de Apoio a Familiares de Pessoas Desaparecidas da Univer-
Figura 2: Definição dos processos e vocabulário dos dados
sidade Federal de Juiz de Fora, o qual tem como objetivo ajudar
famílias que tiveram parentes desaparecidos a encontrarem seus
entes. Neste sentido, o repositório auxilia na disponibilização de
tarefa recebe uma coleção de texto e deve também produzir uma
dados em formato que permite que novas aplicações processem essa
coleção de textos. A Figura 3 representa diferentes tarefas definidas
para dados distintos dentro de um coletor. 5 https://franz.com/agraph/allegrograph/
Semantic Enrichment of Web Data for the Provision of an
Unified Data Repository of Brazilian Missing Persons SBSI’19, May 20–24, 2019, Aracaju, Brazil

Figura 3: Especificação do processo executado no coletor

informação com maior facilidade e permite uma ampla divulgação propriedades diferentes requisitadas durante o cadastro das ocor-
e visualização dos dados dessas pessoas. rências de desaparecimento: nome, idade, data de nascimento, data
do desaparecimento, gênero, altura, peso, etnia, apelido, estado do
5.1 Seleção das fontes de dados desaparecimento, cidade do desaparecimento, cor do cabelo, cor
Uma dificuldade na busca por pessoas desaparecidas é encontrar dos olhos, local do desaparecimento, circunstâncias do desapareci-
veículos que disseminem informações sobre elas. Em geral, esses mento, foto do desaparecido, característica do desaparecimento e
dados são disponibilizados por ONGs e órgãos de segurança pública dados adicionais sobre o desaparecimento. Para preservar a origem
que tentam disseminar essas informações para conhecimento do desses dados, também foi coletada a fonte de onde os dados eram
público. Entretanto, a falta de qualidade do dado, a falta de infor- extraídos.
mações, o formato do site e sua baixa popularidade, entre outros Para cada fonte, foi instanciado um coletor no framework, os
problemas, acabam dificultando que o dado seja visualizado e com- quais geram dados com propriedades de ontologias conhecidas na
partilhado por usuários da rede. Parte do problema pode se dar pelo literatura, como a FOAF6 e DBpedia Ontology7 .
baixo orçamento dessas organizações, que nem sempre conseguem
custear o desenvolvimento de soluções computacionais de melhor 5.3 Normalizador e definição de identificadores
qualidade. O normalizador conta com funcionalidades para padronização dos
Neste sentido, surgem problemas de duplicação e completude dados. Essa é a etapa pré-armazenamento, na qual todas as informa-
de dados, onde mais de uma fonte reproduz a mesma informação ções são verificadas antes de serem inseridas em um banco de dados.
e dados que poderiam ser complementares entre sites distintos, Paro o cenário apresentado, todos os coletores usam duas tarefas
encontram-se divulgados separadamente. Ainda nessa questão, ou- simples de normalização: (1) os caracteres são transformados para
tro problema encontrado está na forma com que o HTML de sites minúsculo e são (2) removidos todos os possíveis espaços em branco
de divulgação são estruturados. Geralmente, as informações são nos inícios e finais dos dados extraído.
apresentadas em blocos únicos sem que haja qualquer identifica- Neste cenário, um mesmo indivíduo desaparecido pode estar
ção de quais dados estão sendo apresentados ou são apresentadas sendo divulgado em sites distintos. Assim, ao inserir o dados dessa
em formato de imagem e documentos PDF, dificultando a coleta e mesma pessoa, deve-se tomar as precauções para diminuir dados
identificação dos itens. duplicados. Por falta de uma chave primária nestes dados, foram
Para criar o repositório unificado, foi realizada uma busca exten- definidas como identificadores nos coletores as propriedades nome,
siva na Web por sites que contém dados de desaparecidos civis brasi- data de desaparecimento e local de desaparecimento do indi-
leiros e foram selecionados como fontes para extração os sites: bair- víduo.
ronet.com.br, criancadesaparecida.org, data.policiacivil.pa.gov, de-
saparecidos.gov.br, desaparecidos.mg.gov.br, desaparecidos.pr.gov.br,
desaparecidosdobrasil.org, disquedenuncia.com, divulgandodesapa- 5.4 Atribuição de metadados
recidos.org, pm.sc.gov.br , policiacil.am.gov, policiacivil.pe.gov, po- No cenário de desaparecimento civil, os dados são divulgados nos
liciacivil.go.gov, portal.mj.gov.br e soscriancasdesaparecidas.rj.gov. sites de forma heterogênea. As informações, em geral, são apresen-
tadas em formatos tão díspares que soluções automatizadas para
5.2 Definição dos extratores
Inicialmente foram estudadas as estruturas dos sites e quais tipos
de dados eram oferecidos por eles afim de tornar possível a padro- 6 Friend of a Friend
7 http://wiki.dbpedia.org/services-resources/ontology
nização da coleta dos dados. Após a anaĺise, foram classificadas 19
SBSI’19, May 20–24, 2019, Aracaju, Brazil J. Gomes Jr. et al.

identificação de dados, como em [14], não são aplicáveis ou neces- source 10.499 foaf:birthday 6427
sitam de uma criação de uma base de treinamento tão grande que foaf:name 10.499 skin 4258
se tornam inviáveis. id 10.499 cityDes 4153
Nas fontes que foram selecionadas, as informações são apresen- foaf:img 8277 dbpedia:hairColor 4046
tadas em formatos de texto em linguagem natural que não possuem foaf:age 7473 dbpedia:height 3517
metadados que permitam a sua fácil identificação ou estão dispos- stateDes 7345 foaf:gender 3072
tas em formato parecido com chave-valor, mas também sem uso moreCharacteristics 6787 dbpedia:eyeColor 1996
de metadados. Em alguns casos, as informações são apresentadas additionalData 7005 dbpedia:weight 1113
em formato de imagem ou em documento PDF. Para tratar essas disappearancePlace 6755 circumstanceLocation 921
questões, foram utilizadas as tarefas abaixo, onde as duas primeiras disappearanceDate 6715 foaf:nick 199
estão programadas no framework e a última, por ser específica desse Tabela 1: Base inicial sem enriquecimento de dados
cenário, foi desenvolvida à parte e acrescentada como extensão do
framework.
Anotação Semântica: Nas fontes analisadas, alguns registros
dos desaparecimentos possuíam campos de descrição com relatos nenhum gênero para aquele nome. Para a auxiliar na realização
adicionais sobre o momento e a forma do desaparecimento. Estas in- desses cálculos, utilizou-se a biblioteca na linguagem R genderBR10 .
formações eram descritas em linguagem natural, sem qualquer tipo
de metadado associado aos termos ao longo do texto. Por exemplo, 5.5 Resultados
ao invés de divulgar o local de desaparecimento de um indivíduo Após o processo de extração, foram coletados 11.242 registros de de-
como um campo do registro, essas informações ficavam aglomera- saparecidos civis, distribuídos entre os 15 repositórios selecionados.
das com diversas outras, perdendo os valores desses dados. Para Foi possível observar uma distribuição de quase 750 desaparecimen-
recuperá-las, os coletores dessas fontes foram instanciados para tos por sítio. Dadas as estatísticas de desparecimentos civis no Brasil
utilizar a tarefa de anotacão semântica. Na tarefa disponível no (Seção 2), essa análise exemplifica como as entidades que divulgam
framework, é utilizado o Dbpedia Spotlight, o qual foi parametri- informação na Web não conseguem acompanhar a intensidade com
zado para processar o texto e retornar apenas nomes de lugares. que casos de desaparecimento acontecem no país. Devido a não exis-
Todos os nomes retornados pela ferramenta são relacionados com tência de interação entre as fontes, foram encontrados 743 registros
identificadores de recursos da DBpedia. duplicados, tratados pelo framework. Entre essas duplicatas, 163
OCR: Com a necessidade de que informações sejam facilmente puderam ser utilizadas para complementar informações do registro,
inseridas em páginas para serem visualmente bem apresentadas, incompleto nas fontes usadas. A Tabela 1 apresenta a composição
é comum que dados sejam divulgados em formato compactados e inicial da base após a normalização e filtragem de duplicatas.
de fácil visualização como png, jpeg e pdf. Esse problema acontece Foram cadastrado 10.499 desaparecidos únicos. Desses, 20 foram
também com sites de órgãos públicos, como é o caso da fonte polici- recuperados através da utilização de coletores especializados para
acivil.pe.gov.br. Para essa fonte, todos os dados gerados pelo coletor extração de informações em imagens. Porém, mesmo com a coleta
passaram pela tarefa de OCR, a qual recuperou o dados do registro de informações em diversas fontes, é possível ver a falta de homoge-
do desaparecido. Expressões regulares foram utilizadas para filtrar nização da base. Tentando diminuir esse problema, foram aplicados
o dado correto. os processos de atribuição de metadados. Para exemplificação da
Inferência de gênero: Um dos dados extraídos pelos coletores melhoria da base, é apresentado na Figura 4 o enriquecimento de
é a classe de gênero a qual um desaparecido está inserido. Em alguns dados após a utilização de tarefas de inferência. Na Figura 4a, é
casos, essa informação não é informada pela fonte. Para resolução possível ver que a base era composta com mais de 70% de dados
para esse problema, foi criado uma tarefa para inferência de gênero. faltantes sobre o gênero dos desaparecidos. Após a utilização de
Foi utilizado o nome do desaparecido já coletado e, através do Censo uma base de conhecimento externa, foi possível diminuir quase
demográfico de 2010, realizada a tentativa de inferência do gênero. totalmente a quantidade desses dados faltantes (Figura 4b).
A pesquisa8 feita pelo IBGE disponibiliza a quantidade de pessoas Através da utilização da anotação semântica nas descrições do
que possuem um determinado nome para cada um dos gêneros. desaparecimento (propriedade moreChareacteristics), foram anota-
O IBGE disponibiliza também uma API9 para consultas diretas ao das as cidades e estados aonde os desaparecidos foram vistos pela
banco de dados da aplicação. Assim com esses dados, é possível última vez. Nas fontes utilizadas, os cadastros de desaparecimentos
inferir de forma probabilística a qual gênero um desaparecido pode eram feitos apenas as descrições dos casos, as quais continham
se enquadrar. Para considerar que um nome X é do gênero Y, foi inúmeras informações em um único bloco de texto. Assim, especia-
feita uma regressão linear e utilizado como threshold de 0.9. Assim, lizando o processo de anotação para extração apenas de palavras
uma pessoa X é considerada do gênero Y sempre que a divisão entre que remetem a lugares (processo chamado de Reconhecimento de
a quantidade de pessoas X do gênero Y pelo somatório de pessoas Entidades Nomeadas), foi possível identificar os dados do lugar de
X de todos os gêneros for maior que 90%. Caso isso não ocorra ou desaparecimento desses indivíduos. Além disso, foram utilizadas
esse nome não conste no banco de dados do IBGE, não é inferido métricas para calcular e complementar os dados de nascimentos
e idades atuais faltantes dos desaparecidos. A Tabela 2 apresenta
a base final, destacando o crescimento da base após a aplicação
8 https://censo2010.ibge.gov.br/nomes/
9 https://servicodados.ibge.gov.br/api/docs/censos/nomes?versao=2 10 https://cran.r-project.org/web/packages/genderBR/index.html
Semantic Enrichment of Web Data for the Provision of an
Unified Data Repository of Brazilian Missing Persons SBSI’19, May 20–24, 2019, Aracaju, Brazil

mais homogênea, com suas informações consistentes, correlaciona-


das e centralizadas melhorando a forma de visualização, divulgação
e entendimento dos casos de desaparecimentos. Por fim, os dados
gerados pela aplicação do framework estão disponibilizados para
uso de outras aplicações através de um endpoint SPARQL e para
consulta de outras pessoas em um website11 .

6 CONCLUSÕES
Segundo [8], oito pessoas desaparecem no Brasil a cada hora, em
média. Por conta desse número elevado de registros de desapareci-
mentos civis no país, órgãos públicos e ONGs tem trabalhado para
divulgar casos de desaparecimentos na Web na tentativa de uma
solução mais rápida para esses casos. Contudo, a falta de padrões,
a má qualidade dos dados divulgados, a falta de estrutura dos da-
(a) Dados faltantes na base inicial dos e a baixa visibilidade desses repositórios impedem que essa
informação seja amplamente consumida pelos usuários.
Este trabalho apresentou um framework para apoiar a coleta,
estruturação, padronização e enriquecimento semântico de dados
da Web para criação de repositórios de domínio específico. Na forma
como foi proposto, o framework permite que o usuário faça uso de
tarefas já existentes para melhorar a qualidade dos dados. Além
disso, extensões do framework podem ser feitas para inserir novas
tarefas específicas para o domínio do usuário.
O framework foi empregado dentro de um cenário de aplicação
que lida com dados relativos ao problema de desaparecimento civil
no Brasil. Foram identificados 15 sites como fontes de informação
para o repositório, os quais continham 11.242 registros de desapa-
recidos. Após o processo de coleta e enriquecimento, houve um
aumento de aproximadamente 10% nos dados presentes na base. O
repositório criado, assim como os dados coletados, estão disponíveis
(b) Crescimento da base após inferência de gênero para outros usuários e aplicações. Com esse repositório, espera-se
que estes dados possam ser usados no desenvolvimento de aplica-
Figura 4: Processo de inferência ções inteligentes capazes de auxiliar as autoridades competentes
a desenvolver políticas públicas de combate ao desaparecimento
source 10.499 disappearancePlace 6755 civil.
foaf:name 10.499 disappearanceDate 6715 A ferramenta desenvolvida neste trabalho será disponibilizada
id 10.499 cityDes 5321 para a comunidade de forma a auxiliar em outros projetos similares.
foaf:birthday 10.148 skin 4258 Embora as técnicas utilizadas no trabalho não sejam inovadoras, a
foaf:age 10.141 dbpedia:hairColor 4046 maior contribuição desse trabalho está na aplicação das técnicas
foaf:gender 10.051 dbpedia:height 3517 em um cenário real e atual. Além disso, vislumbra-se que, com a
foaf:img 8277 dbpedia:eyeColor 1996 disponibilização gratuita do framework de coleta, a comunidade
stateDes 8026 dbpedia:weight 1113 de software livre possa contribuir para melhoria dessa ferramenta.
moreCharacteristics 6787 circumstanceLocation 921 Neste sentido, destacamos algumas melhorias que pretendem ser
additionalData 7005 foaf:nick 199 realizadas como trabalhos futuros. Entre elas, está a inserção de
técnicas de deduplicação de dados [18] para auxiliar a identificação
Tabela 2: Base final utilizando atribuidores de metadados
das entidades, o que é um dos grandes problemas ao integrar dados
oriundos da Web. Ainda, técnicas para inferência de expressões re-
gulares podem ser utilizadas para auxiliar no processo de raspagem
de dados [7].
das tarefas de atribuição de metadados proposta no framework da
Figura 1.
A partir dos resultados apresentados na Tabela 2, é possível ver
REFERÊNCIAS
[1] Jans Aasman. 2006. Allegro graph: RDF triple database. Cidade: Oakland Franz
que os dados cresceram em aproximadamente 60% para a proprie- Incorporated 17 (2006).
dade de data de nascimento, 40% para as propriedade de idade, 220% [2] Christian Becker and Christian Bizer. 2008. DBpedia Mobile: A Location-Enabled
Linked Data Browser. Ldow 369 (2008), 2008.
para os gêneros, 10% para os estados e 30% para as cidades. Com
esses novo volume de dados, o crescimento geral do repositório
unificado foi de mais de 10%. Isso fez com que a base se tornasse 11 http://desaparecidos.ice.ufjf.br/index.php/sparql
SBSI’19, May 20–24, 2019, Aracaju, Brazil J. Gomes Jr. et al.

[3] M. Beno, J. Misek, and F. Zavoral. 2009. AgentMat: Framework for data scraping
and semantization. In 2009 Third International Conference on Research Challenges
in Information Science. IEEE, Fez, Morocco, 225–236. https://doi.org/10.1109/
RCIS.2009.5089286
[4] Tim Berners-Lee, James Hendler, and Ora Lassila. 2001. The semantic web.
Scientific american 284, 5 (2001), 34–43.
[5] Christian Bizer, Tom Heath, and Tim Berners-Lee. 2009. Linked data-the story
so far. International journal on semantic web and information systems 5, 3 (2009),
1–22.
[6] Christian Bizer, Tom Heath, Tim Berners-Lee, and AP Sheth. 2011. Linked data-
the story so far. Semantic services, interoperability and web applications: emerging
concepts 1, 1 (2011), 205–227.
[7] Duy Duc An Bui and Qing Zeng-Treitler. 2014. Learning regular expressions for
clinical text classification. Journal of the American Medical Informatics Association
21, 5 (2014), 850–857.
[8] Lorenzo Caraffi. 2017. Pessoas Desaparecidas - Acabar com o Silêncio. 11º
Anuário Brasileiro de Segurança Pública 11 (2017), 38–41.
[9] Daniel Cerqueira, Waldir Lobão, and Alexandre X de Carvalho. 2005. O jogo
dos sete mitos e a miséria da segurança pública no Brasil. Instituto de Pesquisa
Econômica Aplicada (Ipea), Rio de Janeiro, RJ, Brasil.
[10] R. S. Chaulagain, S. Pandey, S. R. Basnet, and S. Shakya. 2017. Cloud Based Web
Scraping for Big Data Applications. In 2017 IEEE International Conference on
Smart Cloud (SmartCloud). IEEE, Columbia University New York EUA, 138–143.
https://doi.org/10.1109/SmartCloud.2017.28
[11] Marcus Roberto Claudiano. 2014. Mortos sem sepultura: O desaparecimento de
pessoas e seus desdobramentos. PalavraCom Editora Ltda., Florianópolis, SC,
Brasil. ISBN 978-85-64034-07-5.
[12] Aline Gabriela de Oliveira and Rosana Figueiredo Vieira. 2017. Volta vem viver
outra vez ao meu lado: Análise dos impacos psicológicos vivenciados por famili-
ares de pessoas desaparecidas. Pretextos-Revista da Graduação em Psicologia da
PUC Minas 2, 3 (2017), 326–344.
[13] Letícia Carvalho de Mesquita Ferreira. 2013. "Apenas preencher papel": reflexões
sobre registros policiais de desaparecimento de pessoa e outros documentos.
Mana 19, 1 (2013), 39–68.
[14] Cássio Alan Garcia and Viviane P. Moreira. 2017. Extração de Dados de Confe-
rências a Partir da Web, See [15], 64–75. http://sbbd.org.br/2017/wp-content/
uploads/sites/3/2018/02/p064-075.pdf
[15] Carmem S. Hara (Ed.). 2017. XXXII Simpósio Brasileiro de Banco de Dados, Uber-
landia, MG, Brazil, October 4-7, 2017. SBC.
[16] Bernadette Farias Lóscio, Caroline Burle, Newton Calegari, Annette Greiner,
Antoine Isaac, Carlos Iglesias, and Carlos Laufer. 2017. Data on the web best
practices. W3C Recommendation 31 January 2017 (2017).
[17] Dijaci David de Oliveira. 2007. Desaparecidos civis: conflitos familiares, institucio-
nais e segurança pública. Ph.D. Dissertation. Universidade de Brasília.
[18] Tomer Sagi, Avigdor Gal, Omer Barkol, Ruth Bergman, and Alexander Avram.
2017. Multi-source uncertain entity resolution: Transforming holocaust victim
reports into people. Information Systems 65 (2017), 124–136.
[19] Nigel Shadbolt, Kieron O’Hara, Tim Berners-Lee, Nicholas Gibbins, Hugh Glaser,
Wendy Hall, et al. 2012. Linked open government data: Lessons from data. gov.
uk. IEEE Intelligent Systems 27, 3 (2012), 16–24.
[20] Natacha Targino, Damires Souza, and Ana Carolina Salgado. 2017. Uma Proposta
de Perfil de Conjuntos de Dados na Web com Enriquecimento Semântico, See [15],
172–183. http://sbbd.org.br/2017/wp-content/uploads/sites/3/2018/02/p172-183.
pdf
[21] Y Yang, LT Wilson, and J Wang. 2010. Development of an automated climatic data
scraping, filtering and display system. Computers and Electronics in Agriculture
71, 1 (2010), 77–87.

Você também pode gostar