UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO CRISTIANO ROBERTO CERVI Um Estudo sobre Mineração de Dados em Redes Sociais Trabalho Individual II Profa. Dra. Renata de Matos Galante Orientadora Prof. Dr. José Palazzo Moreira de Oliveira Co-orientador Porto Alegre, dezembro de 2008. SUMÁRIO LISTA DE FIGURAS .......................................................................................... 4 LISTA DE TABELAS ......................................................................................... 5 RESUMO............................................................................................................ 6 ABSTRACT........................................................................................................ 7 1 INTRODUÇÃO ............................................................................................. 8 2 REDES SOCIAIS.......................................................................................... 9 2.1 2.2 2.3 2.4 2.5 Conceitos gerais de redes sociais .......................................................................... 9 Conceitos básicos de grafos em redes sociais .................................................... 10 Análise de redes sociais ....................................................................................... 11 Aplicações de redes sociais.................................................................................. 12 Considerações finais ............................................................................................ 13 3 DESCOBERTA DE CONHECIMENTO EM BASES DE DADOS............... 14 3.1 Processo de KDD e a mineração de dados......................................................... 14 3.1.1 Pré-processamento.............................................................................................. 15 3.1.2 Mineração de dados ............................................................................................ 15 3.1.3 Pós-Processamento ............................................................................................. 19 3.2 Mineração de Dados em Redes Sociais .............................................................. 19 3.2.1 Mineração de links.............................................................................................. 19 3.2.2 Predicação de links ............................................................................................. 20 3.3 Considerações Finais ........................................................................................... 22 4 ANÁLISE DE DADOS EM REDES SOCIAIS............................................. 23 4.1 Revisão da Literatura.......................................................................................... 23 4.1.1 Social Network Extraction of Academic Researchers........................................ 23 4.1.2 ArnetMiner - Extraction and Mining of Academic Social Networks................. 24 4.1.3 POLYPHONET - An Advanced Social Network Extraction System From the Web 25 4.1.4 Semantic Analytics on Social Networks - Experiences in Addressing the Problem of Conflict of Interest Detection ...................................................................... 25 4.1.5 Extracting Keyphrases to Represent Relations in Social Networks from Web.. 26 4.1.6 Expert Finding in a Social Network ................................................................... 26 4.1.7 An Integrated Method For Social Network Extraction ...................................... 27 3 4.1.8 A Unified Approach to Researcher Profiling ..................................................... 27 4.1.9 Finding Experts Using Social Network Analysis ............................................... 27 4.1.10 Expertise Modeling for Matching Papers with Reviewers............................... 28 4.1.11 Identifying User Behavior in Online Social Networks..................................... 28 4.1.12 EOS – Expertise Oriented Search Using Social Networks............................... 29 4.1.13 ArnetMiner – An Expertise Oriented Search System for Web Community .... 30 4.1.14 Group Formation in Large Social Networks – Membership, Growth, and Evolution ........................................................................................................................ 30 4.1.15 A Framework for Analysis of Dynamic Social Networks................................ 31 4.1.16 Structure and Evolution of Online Social Networks ........................................ 31 4.1.17 Discovering Temporal Communities from Social Network Documents.......... 31 4.1.18 Pruning Social Networks Using Structural Properties and Descriptive Attributes ........................................................................................................................ 32 4.2 Considerações Finais ........................................................................................... 32 5 CONCLUSÕES .......................................................................................... 33 REFERÊNCIAS................................................................................................ 35 LISTA DE FIGURAS Figura 3.1 - Etapas do processo de KDD ....................................................................... 14 Figura 3.2 - Mapeamento entre registros e classes de uma base de dados ..................... 16 Figura 3.3 - Árvore de decisão representando regras extraídas pelo algoritmo J48....... 17 Figura 3.4 – Representação visual de três agrupamentos gerados pelo algoritmo KMeans ............................................................................................................................. 18 LISTA DE TABELAS Tabela 3.1 - Exemplo de conjunto de dados para aplicação de Classificação................ 16 RESUMO Durante os últimos anos, as redes sociais ganharam um destaque considerável na comunidade científica. Esse tipo de estrutura passou a fazer parte das aplicações mais utilizadas desde então, as redes de relacionamento. Sites como Orkut, MySpace, Facebook e HI5 passaram a fazer parte da vida das pessoas. Um exemplo prático é a rede de colaboração de pesquisadores. Nela têm-se pesquisadores colaborando entre si e formando uma espécie de rede de contatos, na qual os indivíduos da rede são os pesquisadores, e os relacionamentos são os trabalhos desenvolvidos em cooperação. Para que seja possível analisar comportamento de indivíduos e sua evolução dentro de uma rede social é preciso que técnicas computacionais de mineração de dados sejam utilizadas. As técnicas de mineração para redes sociais são diferentes das técnicas clássicas de mineração em bases de dados. Os trabalhos na área de redes sociais usam principalmente as técnicas de mineração para grafos em virtude das características de objetos (nodos) e seus relacionamentos (arestas) que são o mais importante quando se analisa grafos. Assim, este trabalho apresenta um estudo sobre redes sociais e mineração de dados, principalmente dando enfoque nas técnicas de mineração de dados para redes sociais, como mineração de links e predição de links. O trabalho ainda apresenta uma seleção de artigos científicos publicados nos últimos 5 anos em conferências importantes na área de mineração de dados e que possuem como área de abrangência a mineração em redes sociais. A metodologia adotada foi a de analisar cada artigo e apresentar seu objetivo, suas aplicações e quais técnicas, métodos e algoritmos que utiliza em seu desenvolvimento. Palavras-Chave: Redes sociais, Mineração de dados, Mineração de links, Predição de links. Data Mining in Social Networks ABSTRACT During the last few years, the social networks had gained a considerable prominence in the scientific community. This type of structure started to be part of the used applications more since then, the relationship networks. Sites as Orkut, MySpace, Facebook and HI5 had started to be part of the life of the people. An example is researcher’s contribution network. In it researchers have themselves collaborating between itself and forming a contacts network, in which the individuals of the network are the researchers, and the relationships are the works developed in cooperation. So that it is possible to analyze behavior of individuals and its evolution inside of a social network are necessary that computational techniques of data mining are used. The techniques of data mining for social networks are different of the classic techniques of mining in databases. The works in the area of social networks mainly use the techniques of mining for graphs so that the nodes (objects) and the edges (relationship) that they are most important when analyzes graphs. This work presents a study of social networks and data mining, mainly giving approach in the techniques of data mining for social networks, as link mining and link prediction. The work still presents a published scientific papers election in last the 5 years in important conferences in the area of data mining and that they possess as include area the mining in social networks. The apply methodology was to analyze each paper and to present its objective, its applications and which techniques, methods and algorithms that it uses in its development. Keywords: Social networks, Data mining, Link mining, Link prediction. 1 INTRODUÇÃO Nos últimos anos tem havido um interesse crescente pelas chamadas “redes sociais”. Uma rede social é um grafo onde pessoas ou organizações (dependendo da aplicação) são representadas por nodos conectados por arestas que podem corresponder tanto a fortes relacionamentos sociais como ao compartilhamento de alguma característica. Redes sociais tornaram-se especialmente relevantes devido à grande variedade de sites que utilizam o conceito, como Orkut1, MySpace2, FaceBook3, Flickr4 e HI55. Seus usuários formam bases de dados que provêem um importante meio de compartilhar, organizar e encontrar conteúdo e contatos. Devido ao uso intenso, estes sites reúnem material suficiente para subsidiar estudos de características de redes sociais em larga escala. A análise e extração de conhecimento de redes sociais vêm sendo amplamente utilizada em várias áreas, incluindo as ciências sociais e comportamentais, economia e marketing, onde a compreensão do comportamento da sociedade é estratégica. As redes sociais estão entre os mais complexos e importantes desafios no gerenciamento de grandes volumes de dados. Tal complexidade é justificada principalmente pela inerente interdisciplinaridade envolvida na construção dessas aplicações que integram resultados de pesquisa de disciplinas tais como Gerenciamento de Grandes Volumes de Dados, Recuperação de Informação, Visualização de Informações, Engenharia de Software, Multimídia/Hipermídia, Interação Humano-Computador, Algoritmos, Inteligência Artificial, entre outras. Este trabalho tem por objetivo apresentar conceitos gerais sobre redes sociais, o processo de descoberta de conhecimento em bases de dados, bem como fazer uma descrição sobre trabalhos publicados em conferência e periódicos que abordem o tema mineração de dados em redes sociais. O trabalho está dividido como segue. O capítulo 2 apresenta conceitos sobre redes sociais. No capítulo 3 o processo de descoberta de conhecimento em bases de dados é apresentado, com destaque para mineração de links e predição de links. O capítulo 4 descreve trabalhos que envolvem mineração de dados em redes sociais. Por fim, no capítulo 5 são apresentadas as considerações finais. 1 Disponível em http://www.orkut.com Disponível em http://www.myspace.com 3 Disponível em http://www.facebook.com 4 Disponível em http://www.flickr.com 5 Disponível em http://hi5.com 2 9 2 REDES SOCIAIS O objetivo deste capítulo é apresentar uma visão geral de redes sociais, o uso de formalismo e algoritmos de grafos para a implementação de redes sociais, bem como algumas aplicações que podem ser utilizadas nesta área. 2.1 Conceitos gerais de redes sociais Durante os últimos anos, as redes sociais ganharam um destaque considerável na comunidade científica. Esse tipo de estrutura passou a fazer parte das aplicações mais utilizadas desde então, as redes de relacionamento. Sites como Orkut, MySpace, Facebook e HI5 passaram a fazer parte da vida das pessoas. Um exemplo prático é a rede de colaboração de pesquisadores. Nela têm-se pesquisadores colaborando entre si e formando uma espécie de rede de contatos, na qual os indivíduos da rede são os pesquisadores, e os relacionamentos são os trabalhos desenvolvidos em cooperação. Desde os estudos clássicos de redes sociais até os mais recentes, concorda-se que não existe uma “teoria sobre redes sociais” e que o conceito pode ser empregado de diversas formas, necessitando de dados claros, além da identificação das relações entre indivíduos. Para Emirbayer e Goodwin (1994) uma rede social é um grafo, orientado ou não, que mapeia uma realidade ou um mundo restrito, no qual os nodos representam as entidades (indivíduos ou classes de indivíduos – também chamados atores) e as arestas representam os relacionamentos entre essas entidades. Os relacionamentos podem ser o compartilhamento de um ou mais atributos. A realidade representada pelas redes sociais são fontes de dados heterogêneos e multi-relacionais, cujos relacionamentos podem ser unidirecionais e não necessariamente precisam ser binários. Han e Kamber (2006) definem que, do ponto de vista de implementação, uma rede social é um conjunto de dados heterogêneos e multirelacionais representados por um grafo. O grafo é tipicamente muito grande, com nós correspondendo os objetos e as arestas correspondendo as ligações que representam relacionamentos ou interações entre os objetos. Os objetos e as ligações possuem atributos, sendo que os objetos podem ter rótulos de classe e as ligações podem ser unidirecionais. As redes sociais são normalmente classificadas em três categorias: redes aleatórias, redes de mundos pequenos e redes sem escala. Erdös e Rényi (1960) foram os criadores do modelo de redes aleatórias com o modelo de "grafos randômicos", definindo como se formam as redes sociais. Os nodos das redes sociais são conectados aleatoriamente e possuem mais ou menos a mesma quantidade de conexões entre si. 10 Essa teoria foi explicada usando o exemplo de uma festa, no qual foi demonstrado que bastava apenas uma conexão entre cada um dos convidados da festa para que todos os convidados estivessem conectados ao final da festa. Além disso, pela primeira vez introduziu-se a noção de agrupamento (clusters) nas redes, verificando que quanto mais conexões são adicionadas, maior a possibilidade do surgimento de agrupamentos. Portanto, uma festa pode ser definida como um conjunto de agrupamentos que estabelecem ligações aleatórias, de tempos em tempos, com outros grupos. O fato de as entidades da rede terem mais ou menos as mesmas quantidades de conexões trouxe às redes sociais o conceito de redes igualitárias (BARABASI 2003). Em 1960, nasceu o conceito de redes de mundo pequeno, trazido com o experimento de Milgram (DEGENNE e FORSE 1999). O objetivo do experimento foi observar o grau de separação entre as pessoas (entidades da rede social proposta), consistindo em envio de cartas entre as diversas pessoas da rede. O envio ocorreu da seguinte forma: cartas foram enviadas aleatoriamente a várias pessoas, pedindo que elas as enviassem a um alvo específico que, caso não conhecessem, e que deveria ser acionada através de outra pessoa. Assim, das cartas que chegaram ao alvo final, a maioria havia passado por um pequeno número de pessoas. Concluiu-se, então, que as pessoas estariam a poucos graus de separação umas das outras. Por isso a idéia de "mundo pequeno". Esse estudo é chamado de fenômeno do mundo pequeno (small world phenomenon), conhecido popularmente como o "princípio dos seis graus de separação". Esse modelo está intrinsecamente ligado às redes sociais: cada indivíduo tem amigos e conhecidos ao redor do mundo, que por sua vez também tem outros amigos e conhecidos, fazendo, assim, com que as pessoas estejam todas unidas entre si com um grau pequeno de separação. Durante esse estudo, outros conceitos foram sendo elaborados. Mark Granovetter criou o conceito de laços fracos (weak ties, aqueles que se desfazem com mais facilidade, dinâmicos) e laços fortes (strong ties, laços mais constantes, estáticos). Os laços fracos são mais importantes que os laços fortes na manutenção de uma rede social, pois eles conectam os atores de grupos sociais diversos, dando aos agrupamentos as características adequadas, fazendo com que essas estruturas possam fazer parte de uma rede social de fato. O modelo de redes de mundo pequeno se aplica coerentemente ao modelo de redes aleatórias anteriormente proposto, pelo fato de que, se as redes social possuem mais ou menos a mesma quantidade de relacionamentos, a distância média entre os nodos dessa rede social é bem pequena. Barabasi (2003) mostra que as redes não são formadas de modo aleatório, no qual há uma ordem dinâmica na estruturação e organização das redes, e essas não são igualitárias. Alguns nós são altamente conectados (os chamados hubs ou conectores), enquanto outros têm poucas ligações. Barabasi (2003) determinou esse tipo de rede como modelo de redes sem escala e trouxe o conceito de "preferencial attachment" (anexo preferencial), dizendo que um novo nodo a ser introduzido na rede tende a se conectar a um nodo mais denso do que a um nodo mais esparso. 2.2 Conceitos básicos de grafos em redes sociais Modelos de geração de grafos podem ser construídos incorporando características de redes sociais. Essas características podem ser usadas para prever como uma rede se comportará no futuro. Modelos de geração de grafos também podem ser usados quando os grafos que representam as redes são muito grandes, e, assim, difíceis de serem 11 aplicados. Um exemplo é a rede social do Orkut, que possui uma quantidade grande de dados, muitas vezes de natureza repetida. Grafos podem ser entendidos como estruturas formadas por dois conjuntos: um conjunto de vértices (nós) e um conjunto de arestas (arcos). Cada aresta incide em dois vértices, sendo o primeiro a ponta inicial da aresta e o segundo a ponta final. Como exemplo, um mapa rodoviário pode ser representado através de um grafo, no qual as cidades são os vértices e as estradas que ligam as cidades são as arestas. A maioria dos estudos em redes sociais examinam a topologia do grafo, em particular, o grau dos nós das redes sociais, ou seja, o número de arcos incidentes àqueles nós, e a distância entre um determinado par de vértices da rede, como o medido pelo caminho de tamanho mínimo. O caminho de tamanho mínimo incorpora a noção do mundo pequeno, no qual os indivíduos de uma rede social estão unidos por cadeias curtas. Uma medida em particular é o diâmetro da rede, que mede a distância máxima entre pares de entidades dentro da estrutura do grafo. Outras medidas incluem a distância média e o diâmetro efetivo. O diâmetro efetivo é a distância mínima d que faz com que no mínimo 90% dos pares de nodos da rede sejam alcançados com uma distância de no máximo d. Uma das características das redes sociais é que elas raramente são estáticas. A representação gráfica da rede social evolui à medida que os relacionamentos e as entidades são incluídos e excluídos ao longo do tempo. Em geral, as redes sociais tendem a apresentar os seguintes fenômenos Han e Kamber (2006): • Densification power law: anteriormente acreditava-se que, à medida que a rede evoluía, o diâmetro da rede aumenta linearmente com o número de nodos. Esse fenômeno era conhecido como a premissa do grau médio constante. Entretanto, experimentos mostraram que, pelo contrário, as redes tendem a ficar mais densas ao longo do tempo com o aumento do grau médio; • Shrinking diameter: ficou experimentalmente provado que o diâmetro efetivo tende a diminuir com o aumento da rede social, contradizendo o que se anteriormente se acreditava. Por exemplo, considere uma rede social de coautoria, onde os nós são artigos e as arestas (direcionadas) são as citações. As arestas de saída de um nodo estão congeladas no momento em que elas são incorporadas à rede. A diminuição da distância entre os pares de nós parece ser resultado da adição dos artigos subseqüentes, fazendo com que eles atuem como pontes, citando artigos de outras áreas. Nesse contexto pode ser mapeado o conceito de comunidades, sendo essas pontes são as arestas que irão conectar os agrupamentos. 2.3 Análise de redes sociais Redes sociais podem ser aplicadas no estudo de diferentes situações e questões, nas diferentes áreas do conhecimento. A análise de redes sociais é uma abordagem oriunda da Sociologia, da Psicologia Social e da Antropologia (FREEMAN 1996). Tal abordagem estuda as ligações relacionais entre atores sociais. Os atores, na análise de redes sociais, cujas ligações são analisadas, podem ser tanto pessoas e empresas, analisadas como unidades individuais, quanto unidades sociais coletivas. Como exemplos podem ser citados departamentos dentro de uma organização, agências de 12 serviço público em uma cidade, estados-nações de um continente ou do mundo (WASSERMAN e FAUST 1999). Conforme Wattenberg (2006), a análise de redes sociais envolve três tarefas fundamentais: • Identificar comunidades: os atores devem ser agrupados em comunidades, de acordo com os seus atributos. É importante a avaliação da densidade de uma comunidade em termos de conexão e identificar cliques e relacionamentos abertos; • Identificar atores centrais: é necessária a identificação dos atores que possuem o maior número de conexões, assim como pontos de articulação atores que formam pontes entre comunidades. Esta tarefa requer a visualização e compreensão global da rede; • Analisar papel e posição de relacionamentos e indivíduos: essa tarefa requer interpretação da estrutura da rede e depende dos atributos de atores e relacionamentos. 2.4 Aplicações de redes sociais As redes sociais não precisam ter um contexto social, podendo também mapear situações em vez de mundos reais. Por exemplo, redes elétricas, espalhamento de um vírus de computador, telefonia móvel ou a rota traçada por uma ligação telefônica. As conexões das redes podem ser desde esparsas, como as presentes em árvores genealógicas, até muito densas, como as conexões de uma rede de contatos na Internet (HAN e KAMBER 2006). Um exemplo de aplicação para redes sociais é abordado no The Oracle of Bacon. Um jogo on-line que mostra como um ator se relaciona com os demais artistas. Os dados são informados periodicamente com informações provenientes do portal IMDB (Internet Movie Database). Quando o usuário digita o nome de um determinado artista, o sistema faz uma busca e exibe os filmes em que ambos tiveram participação. O serviço LinkedIn6 usa aplicações de redes sociais na Internet para mapear as redes sociais de caráter profissional. O LinkedIn oferece aos seus usuários a possibilidade de mapear sua rede de contatos. Para isso, possui uma aplicação que permite copiar os contatos da lista de contatos do software Outlook e enviar um convite para cada um dos usuários. Estes usuários, ao se cadastrarem no site e criarem seu próprio perfil poderão visualizar sua rede de contatos e buscar oportunidades de trabalho ou de emprego através desta rede. Na área e-Learning, a plataforma Moodle7, que é um sistema de gestão de cursos, no qual os utilizadores podem interagir com o ambiente reconstruindo conhecimentos. O ambiente dispõe de um editor visual para edição de conteúdos e um conjunto de outras ferramentas para gestão de fóruns, criação de jornais eletrônicos, testes, chats, dentre outros. Outros tipos de aplicações como Blogs e Fotologs também apresentam um campo aplicação de redes sociais, uma vez que possuem listas de amigos, bem como 6 7 Disponível em http://www.linkedin.com Disponível em http://moodle.org 13 mecanismos de interação, como ferramenta de comentários. Weblogs e Fotologs, portanto, podem representar redes sociais, na medida em que cada um representa um indivíduo (ou um grupo) e a exposição de sua individualidade. Redes sociais de co-autoria estão sendo muito utilizadas atualmente. Um dos trabalhos importantes nessa área é o Erdös Number Project8, que tem por objetivo estudar a colaboração nos trabalhos de pesquisa entre cientistas. Paul Erdös foi um matemático que escreveu diversos artigos com pesquisadores de áreas diferentes, sendo um dos primeiros cientistas a analisar co-autoria de trabalhos científicos. Seu número de Erdös é 0. Os seus co-autores têm número de Erdös 1. Outras pessoas que publicaram trabalhos em conjunto com pessoas que possuem número de Erdös 1, mas não com o próprio Erdös, possuem número de Erdös 2, e assim por diante. Se uma pessoa não possui ligação de co-autoria com Erdös, mesmo que de forma indireta, seu número de Erdös é dito infinito. Redes sociais de pesquisa também são exemplos de como relacionamentos são importantes para a geração de novos conhecimentos. As bases de dados científicos DBLP (DBLP 2008), BDBComp (LAENDER, GONÇALVES E ROBERTO 2004), CiteSeer (CITESEER 2008) e a Plataforma Lattes9 podem ser utilizadas para se extrair redes sociais de pesquisadores através de seus dados de produção. Estas bases de dados armazenam dados interessantes que podem ser úteis em diversas aplicações de mineração de dados, como, por exemplo, quando pretende-se identificar padrões de comportamento de pesquisadores, nível de relação com co-autores, consultas a históricos de produção científica, trajetória de carreira ou identificação de tendências. 2.5 Considerações finais Este capítulo apresentou conceitos gerais sobre redes sociais, a relação de grafos na implementação de redes sociais e algumas aplicações que podem ser utilizadas nesta área, principalmente com relação a redes de co-autoria, que é um dos objetivos do trabalho. 8 9 Disponível em http://www.oakland.edu/enp/ Disponível em http://lattes.cnpq.br 14 3 DESCOBERTA DE CONHECIMENTO EM BASES DE DADOS O objetivo deste capítulo é apresentar os principais conceitos sobre o processo de descoberta de conhecimento em bases de dados (DCBD, ou KDD – Knowledge Discovery Database), bem como uma análise da etapa de mineração de dados, onde são apresentados alguns métodos e ferramentas para a manipulação dessa etapa. Conceitos e técnicas de mineração de dados em redes sociais também são apresentados, envolvendo estudos sobre mineração de links e predição de links. 3.1 Processo de KDD e a mineração de dados O processo de KDD, bem como a mineração de dados, é caracterizado por várias etapas, que se tornam necessárias para a obtenção do resultado desejado, conforme apresentado na Erro! Fonte de referência não encontrada.. Figura 1 - Etapas do processo de KDD Fonte: Adaptado de Fayyad et al. (1996) As etapas do processo de KDD são: Seleção, Pré-processamento, Transformação, Mineração de Dados e Interpretação/Validação (FAYYAD et al., 1996). Desse esquema, autores como Brusso (2000) e Goldschmidt e Passos (2005), concordam em agrupar ainda mais as etapas, tornando o processo de KDD dividido em apenas três 15 etapas operacionais, sendo estas: Pré-Processamento, Mineração de Dados e PósProcessamento. 3.1.1 Pré-processamento A etapa de pré-processamento inclui operações básicas de manipulação de dados, tais como remover ruídos ou subcamadas, coletando informação necessária para as tarefas de descoberta de conhecimento. Além disso, nessa etapa são decididas estratégias para manusear (tratar) campos que não são necessários no processo posterior de mineração de dados. Uma descrição mais detalhada dessas operações abrange os seguintes itens (GOLDSCHIMDT e PASSOS, 2005): • Seleção de Dados: função que compreende a identificação de quais informações, dentre as bases de dados existentes, devem ser efetivamente consideradas durante o processo de KDD; • Limpeza de Dados: envolve qualquer tipo de tratamento referente aos dados selecionados de forma a assegurar a qualidade da informação por eles representada; • Codificação dos Dados: os dados devem ser codificados de forma que possam ser utilizados como entrada para os algoritmos de mineração de dados. Por exemplo, transformar valores numéricos em categorias ou intervalos; ou o inverso, como representar numericamente valores de atributos categóricos; • Transformação e Enriquecimento dos Dados: A transformação consiste em reduzir as variáveis envolvidas por atributos que representem as características principais dos dados das bases. Já o enriquecimento é um item onde se buscam mais informações que possam ser agregadas a base de dados, para prover melhores resultados. Para isso, podem-se realizar consultas a bases externas de dados, pesquisas de campo e outras técnicas (GOLDSCHIMDT e PASSOS, 2005). 3.1.2 Mineração de dados A mineração de dados consiste em uma etapa de KDD responsável pela seleção dos métodos a serem utilizados para detectar padrões nos dados (FAYYAD et al., 1996). Parte desse processo está na busca por padrões de interesse em uma forma particular de representação, juntamente com a busca pelo melhor ajuste dos parâmetros do algoritmo para realizar uma tarefa (SILVA, 2004). As tarefas de mineração de dados podem ser classificadas em duas categorias, de acordo com Han e Kamber (2006): padrões descritivos e padrões preditivos. As tarefas descritivas caracterizam as propriedades gerais dos dados em uma base de dados. Já os padrões preditivos buscam através de inferências predizer valores desconhecidos. Padrões preditivos são construídos para resolver problemas específicos de predição, em um ou mais atributos de um banco de dados. Ainda afirma que esses padrões não precisam necessariamente prever o futuro, mas sim fazer a descoberta de um atributo desconhecido a partir de outros atributos conhecidos. Em contrapartida, os padrões descritivos não têm por objetivo resolver um problema específico, mas apresentar padrões interessantes que o especialista em um domínio desconhece (JOHN, 1997). 16 Two Crows Corporation (2005) apresenta a definição de que padrões descritivos são geralmente usados para criar subgrupos significativos, como agrupamentos de dados demográficos, por exemplo. 3.1.2.1 Métodos Preditivos • Classificação: função que mapeia (classifica) um registro de uma base de dados a uma ou mais classes (rótulos) pré-definidos. Feito isso, é possível aplicar essa função a novos registros que venham ser incorporados à base de dados. As formas mais comuns de representação de conhecimento dos algoritmos de classificação são regras e árvores. Y1 X1 X2 : Xn Y2 : Yk Figura 2 - Mapeamento entre registros e classes de uma base de dados Fonte: Adaptado de Goldschmidt e Passos (2005) Na Erro! Fonte de referência não encontrada., é representado um exemplo de mapeamento entre registros e classes de maneira que dois registros X1 e X2 podem ser mapeados para um registro Y1. Um exemplo de classificação é o caso de uma base de dados com os seguintes atributos: nome, sexo, total de atuações profissionais e número de orientações feitas por pesquisadores, como na Erro! Fonte de referência não encontrada.. Tabela 1 - Exemplo de conjunto de dados para aplicação de Classificação 1 2 3 4 5 6 7 8 9 10 11 12 13 14 NOME A B C D E F G H I J K L M N SEXO(M/F) M M F M M M M M M M M M F M ATUAÇÕES 6 5 5 3 2 3 2 3 2 6 1 2 10 1 ORIENTAÇÕES 9 32 50 60 40 9 22 77 0 33 63 27 38 54 17 A partir dos dados expressos na Erro! Fonte de referência não encontrada., aplicando o algoritmo de classificação J4810, a saída obtida na forma de árvore de decisão na Figura 3.3. Atuações >3 <=3 Masc. (9) Orientações < = 33 Masc. (3) > 33 Fem. (2) Figura 3 - Árvore de decisão representando regras extraídas pelo algoritmo J48 Descrevendo-se de formar textual a informação contida na árvore de decisão da Erro! Fonte de referência não encontrada., pode-se inferir que: (i) quando o total de atuações profissionais de uma pessoa é menor ou igual a três esta pessoa é do sexo masculino; e (ii) se as atuações forem maiores que três e o número de orientações feitas por pesquisadores for maior ou igual a trinta e três, as pessoas pertencem ao sexo masculino, caso contrário se maiores que trinta e três, as pessoas pertencem ao sexo feminino. • Regressão: consiste na busca por uma função que mapeia os registros de um banco de dados em valores reais (GOLDSCHIMDT e PASSOS, 2005). Essas funções podem ser lineares ou não, e se restringem a dados numéricos. Um exemplo dessa técnica é o mapeamento de informações de tempo de experiência (variável X) em anos e salário anual dos funcionários de uma empresa (variável Y). Aplicando-se o modelo de regressão linear pode-se chegar a uma função linear. Dessa maneira, baseado nos dados armazenados, obtem-se uma função linear que pode ser utilizada para predizer o valor de uma variável em função da outra. Por exemplo, pode-se formular a seguinte questão, cuja resposta pode ser prevista por meio da aplicação de uma função obtida com dados anteriores: • Quantos anos de experiência é preciso para ganhar X salário anual, com base nos valores passados que a empresa armazena? 3.1.2.2 Métodos Descritivos • Agrupamento: é a classificação de objetos ou registros em diferentes grupos, ou seja, particionamento do conjunto de dados em subconjuntos ou agrupamentos, assim cada subconjunto compartilha similaridades. Diferente da tarefa de classificação que possui rótulos pré-definidos, no agrupamento é o algoritmo 10 J48: Implementação em Java do algoritmo de árvore de decisão C4.5 encontrada na ferramenta Weka. Disponível em: <www.cs.waikato.ac.nz/ml/weka/>. 18 que identifica automaticamente os rótulos (FAYYAD et al., 1996). Os itens de um conjunto de dados são agrupados de acordo com alguma métrica de similaridade11, como a distância euclidiana. Assim, padrões pertencentes a um agrupamento devem ser mais similares entre si do que em relação aos outros agrupamentos. É função do usuário definir a quantidade de agrupamentos a serem representados. A análise que pode ser feita após essa definição é quais são as características comuns aos elementos de cada agrupamento, a fim de definir um rótulo que o represente. Na Erro! Fonte de referência não encontrada., tem-se uma representação de agrupamentos definidos através do algoritmo KMeans (MACQUEEN, 1967; HUANG, 1998), que trabalha somente com dados numéricos e não categóricos: Cluster 1 Cluster 3 Cluster 2 Figura 4 – Representação visual de três agrupamentos gerados pelo algoritmo K-Means Fonte: (MATHWORKS, 2008) 11 • Sumarização: envolve métodos para encontrar uma descrição das características comuns para conjuntos de dados ou agrupamentos obtidos através da técnica de agrupamento. O uso de técnicas de sumarização ajuda na compreensão de um domínio (NATARAJAN e SHEKAR, 2005). Isso pelo fato de a sumarização levantar características essenciais de um domínio. Entretanto, de maneira geral, ela não pretende buscar nada novo. Isso ocorre porque as descrições reveladas fazem parte de um conhecimento já difundido no domínio do usuário, tornandose uma técnica que permite apenas uma melhor visualização da informação, deixando de lado a descoberta por novos padrões e interesses que estão implícitos nos dados. • Regras de Associação: esta tarefa tem por objetivo encontrar padrões freqüentes entre conjunto de itens de dados e é muito usada no âmbito das aplicações comerciais e na área de marketing. Isso porque através do uso dessas regras é possível obter, por exemplo, a análise da freqüência com que um cliente adquire Métrica de similaridade: determina o quão parecidos são dois conjuntos de caracteres. As métricas são avaliadas por um valor que varia de 0 a 1 ([0;1]) onde 0 implica que são totalmente diferentes e 1 que são idênticos. Esse valor é calculado com base em uma métrica de distância a ser escolhida dependendo da função de similaridade utilizada. 19 um item A e também leva um item B na mesma compra. Desse modo, o objetivo das regras de associação é encontrar tendências que possam ser usadas para entender e explorar padrões de comportamento dos dados. Estudo sobre extração de regras de associação na mineração da web foi desenvolvido por Brusso (2000), visando obter os padrões de comportamento de usuários ao navegarem em páginas web. Dois algoritmos que implementam a tarefa de descoberta de regras de associação são: Apriori (AGRAWAL e SRIKANT, 1994) e C4.5 (QUINLAN, 1993). 3.1.3 Pós-Processamento Após o pré-processamento e a mineração de dados, a etapa de pós-processamento é de suma importância para que o resultado final seja obtido. Esta é a fase que engloba a visualização, a análise e a interpretação das saídas geradas na etapa de Mineração de Dados. Com isso, é gerado um modelo de conhecimento, ou seja, qualquer abstração de conhecimento, expresso em alguma linguagem, que descreva algum conjunto de dados (GOLDSCHIMDT e PASSOS, 2005; FAYYAD et al. 1996). 3.2 Mineração de Dados em Redes Sociais As técnicas de mineração para redes sociais são diferentes das técnicas clássicas de mineração em bases de dados. Os trabalhos na área de redes sociais usam principalmente as técnicas de mineração para grafos em virtude das características de objetos (nodos) e seus relacionamentos (arestas) que são o mais importante quando se analisa grafos. As próximas subseções apresentam conceitos e características de predição de links e mineração de links. 3.2.1 Mineração de links Atualmente conjuntos de dados são descritos como coleções de objetos interrelacionados. Isto pode representar redes homogêneas, onde há um único tipo de objeto ou ainda redes heterogêneas, onde existem múltiplos objetos e vários relacionamentos entre eles. Os relacionamentos entre os objetos podem exibir padrões que indicam propriedades como importância, a ordem ou a categoria desses objetos. Em alguns casos nem todos os relacionamentos devem ser observados, mas em muitos pode ser interessante predizer a existência de relacionamentos entre objetos (GETOOR e DIEHL 2005). Em muitos domínios, onde os relacionamentos evoluem ao longo do tempo, o objetivo pode ser prever se um relacionamento vai existir no futuro, mediante um conjunto de relacionamentos já observados. Tendo em vista que com o passar do tempo os relacionamentos aumentam, a complexidade da análise também tende a aumentar, surgindo padrões mais complexos de serem analisados. Isto leva a desafios na descoberta de novas estruturas, tais como comunidades, grupos ou subgrafos. Mineração de Links (Link Mining) é a união de várias pesquisas em redes sociais, tais como, análise de links, mineração de hipertextos na Web, mineração de grafos, aprendizagem relacional e programação lógico-indutiva e engloba uma modelagem descritiva e preditiva. Tanto técnicas de classificação e agrupamento no domínio de relacionamentos entre objetos requerem novos algoritmos para mineração de dados. (GETOOR 2003). Mas com a utilização de links, novas aplicações também foram 20 descobertas. Exemplos incluem a predição de um número de relacionamentos, predição do tipo de relacionamento entre dois objetos, deduzir a existência de um relacionamento, supor a identidade de um objeto, encontrar co-referências e ainda descobrir subgrafos padrão. De acordo com Getoor (2003), os desafios e tarefas na área de mineração de links são: • Classificação baseada em relacionamentos – visa predizer a categoria de um objeto, baseado não somente em seus atributos, mas nos relacionamentos em que participa e nos atributos dos objetos ligados por um certo caminho. Um exemplo é a classificação de um paper, onde se deseja predizer sua categoria, baseado em suas citações, nos papers que ele cita e nos papers que são citados dele; • Análise de agrupamento baseada em relacionamentos – o objetivo é encontrar ocorrências de subclasses. Isto é feito pela divisão dos dados em grupos, onde objetos em um grupo são similares a cada objeto do mesmo grupo e não similares a objetos de outros grupos. Diferente da classificação, o agrupamento é não supervisionado e pode ser aplicado para descobrir padrões ocultos nos dados. Um exemplo é encontrar grupos de autores que comumente publicam juntos e descobrir áreas de pesquisa, baseado em citações comuns e descoberta de locais de publicações comuns; • Identificação de tipos de relacionamentos – o tipo de relacionamento pode ser modelado de diferentes maneiras. Em alguns casos o tipo pode ser simplesmente um atributo de um relacionamento. Neste caso, é preciso que se conheça a existência de uma ligação entre duas entidades para que seja possível predizer seu tipo. Um exemplo é verificar se existe um relacionamento de orientador e orientado entre dois autores de papers; • Predição da força de relacionamentos – relacionamentos também podem ter pesos associados a eles. Em uma coleção de páginas web, o peso pode ser interpretado como a autoridade de um relacionamento novo ou seu ranking. Em um domínio epidemiológico, o peso de um relacionamento entre pessoas pode ser uma indicação do tamanho de sua exposição ou contato; • Cardinalidades de relacionamentos – há muitas inferências práticas que envolvem a determinação do número de relacionamentos entre dois objetos. Esse número é geralmente usado como peso para atributos de relacionamentos, cuja semântica vai depender da área de aplicação do problema. Um exemplo é determinar que a quantidade de citações de um artigo é uma indicação do impacto de um trabalho na comunidade científica, ou seja, artigos mais citados são trabalhos mais aceitos e mais importantes; • Ligação de registros – visa identificar quando dois itens similares se referem ao mesmo objeto. Isto não se refere apenas à similaridade de seus atributos, mas também a seus relacionamentos. Isto é um problema 21 recorrente quando se trabalha com extração de informação, eliminação de duplicação e casamento de citações. 3.2.2 Predicação de links Predição de Links ou Link Prediction é uma técnica usada para predizer a formação de ligações dentro de uma rede. Ela pode ser usada para recomendar novos relacionamentos, tais como amigos em uma rede social ou para descobrir previamente relacionamentos desconhecidos como interações reguladoras entre genes (LIBENNOWELL e KLEINBERG 2003). Mais genericamente, a predição de links pode ser formulada como um problema de classificação binária onde, dado um nodo busca-se prever se existe um relacionamento combinado baseado em seus atributos, estrutura vizinha ou outras propriedades da topologia da rede (KASHIMA e ABE 2006). Os conjuntos de dados conectados e que possuem maior interesse são mais esparsos, o que torna difícil a tarefa de predição de links. Uma das dificuldades em construir modelos estatísticos para se predizer links entre objetos é que a probabilidade anterior de um link é relativamente bem pequena. A probabilidade anterior é uma probabilidade marginal, a qual descreve o que se conhece a respeito de um objeto com a ausência de algumas evidências. Isso gera dificuldade tanto na evolução do modelo, quanto em quantificar o nível de confiança das predições. Segundo Liben-Nowell e Kleinberg (2003) a grande questão a ser respondida na área de predição de links é: até que ponto a evolução de uma rede pode ser modelada usando-se características da própria rede? Considere uma rede de co-autoria entre cientistas, por exemplo. Há muitas razões, alheias à rede, para que dois cientistas que nunca publicaram juntos o façam nos próximos anos. Caso um deles mude de Instituição eles podem ficar geograficamente mais próximos. Mas casos como esse podem ser difíceis de predizer. Entretanto, essas colaborações podem ser apontadas pela topologia da rede, ou seja, dois cientistas que são "próximos" na rede terão colegas em comum e estes trabalharão em áreas semelhantes, formando um círculo de aproximação. Isso sugere que eles estejam mais aptos a estarem no mesmo círculo de publicação, sendo prováveis colaboradores em trabalhos num futuro próximo. Métodos eficazes para predição de links podem ser usados para analisar uma rede social e sugerir promissoras interações que ainda não tenham sido utilizadas dentro da rede. Os métodos estudados por Liben-Nowell e Kleinberg (2003) definem uma função com peso para a conexão entre um par de nodos <x,y>, sendo denotada por score(x,y) baseando-se em um grafo de entrada G, e produzem uma lista em ordem decrescente de score(x,y). Assim, eles podem ser vistos como um cálculo da medida de similaridade entre os nodos x e y, relativos à topologia da rede. Em geral, os métodos são adaptados de técnicas usadas nas áreas de Teoria dos Grafos e Análise de Redes Sociais. Em alguns casos, essas técnicas não foram feitas para calcular a similaridade entre nodos, sendo necessária a modificação do método para esse propósito. Segundo Liben-Nowell e Kleinberg (2003) alguns métodos para predição de links são descritos: • Métodos baseados na vizinhança de um nodo – algumas abordagens são baseadas na idéia de que dois nodos x e y têm maior possibilidade de se relacionarem no futuro se seus conjuntos de vizinhos possuem uma grande intersecção. Essa definição segue uma definição natural de que tais nodos x e y representam autores com vários colegas em comum, logo 22 tendo maior possibilidade de entrar em contato com eles mesmos no futuro. Métodos assim, como Viznhos Comuns, Coeficiente de Jaccard e Adamic/Adar e Anexo Preferencial podem ser encontrados em Jin, Girvan e Newman (2001), Davidsen, Ebel e Bornholdt (2002), Newman (2001), Salton e Mcgill (1983), Mitzenmacher (2001), Barabasi et al. (2002); • Métodos baseados no conjunto de todos os caminhos – alguns métodos refinam a noção do caminho mínimo por considerar implicitamente o conjunto de todos os caminhos entre dois nodos. Métodos assim, como Katz, Hitting Time, PageRank e SimRank podem ser encontrados em Katz (1953), Brin e Page (1998) e Jeh e Widom (2002); • Abordagens de alto nível – estes métodos podem ser utilizados combinando os métodos baseados na vizinhança de um nodo e métodos baseados no conjunto de todos os caminhos. Métodos assim, como Aproximação de Baixa Ordem, Pares Desconhecidos e Agrupamento podem ser encontrados em Deerwester et al. (1990), Essen e Steinbiss (1992) e Lee (1999). 3.3 Considerações Finais Este capítulo apresentou alguns conceitos sobre o processo de descoberta de conhecimento em bases de dados, bem como um detalhamento da etapa de mineração de dados, onde foram apresentados métodos preditivos e descritivos. Também foi apresentado o problema de mineração de dados em redes sociais, através de trabalhos relacionados com mineração de links e predição de links, onde são encontradas as técnicas mais recomendadas para ser trabalhar com redes sociais. 23 4 ANÁLISE DE DADOS EM REDES SOCIAIS Este capítulo tem por objetivo apresentar os principais trabalhos relacionados com o tema mineração de dados em redes sociais. De um modo geral são detalhados trabalhos que envolvem, dentre outros assuntos, extração de redes sociais, extração de informações, similaridade textual, desambiguação de nomes, bem como técnicas, métodos e algoritmos para análise de dados em redes sociais. 4.1 Revisão da Literatura Foi realizada uma pesquisa nas principais conferências12 que tem como áreas de abrangência assuntos relacionados como descoberta de conhecimento em bases de dados, mineração de dados, extração de dados e inteligência artificial. Essa pesquisa levou em consideração os artigos que foram publicados nos últimos 5 anos e que envolvem as áreas citadas anteriormente juntamente com o tema Redes Sociais. A seguir, cada trabalho selecionado é apresentado em detalhes. 4.1.1 Social Network Extraction of Academic Researchers O trabalho de Tang, Zhang e Yao (2007) aborda assuntos relativos à extração de uma rede social acadêmica de pesquisadores e envolve a busca, a extração e a junção de dados da web para definir o perfil do pesquisador baseado em semântica. Os autores formalizam o problema, depois identificam documentos relevantes da web através de um classificador, então propõem uma abordagem unificada para executar o perfil do pesquisador. O trabalho foca no problema de como são extraídos os dados para definição do perfil dos pesquisadores e em como fazer a desambiguação entre pesquisadores que apresentam o mesmo nome. Tanto para a extração dos dados como para a desambiguação de nomes é utilizada a teoria de Markov Random Field (MRF) utilizando-se de Condicional Random Fields (CRF). A abordagem para definir o perfil do pesquisador consiste de dois passos: preprocessamento, onde o texto é separado em tokens, e marcação, onde são determinadas possíveis marcas para cada token. Os tokens forman a unidade básica e na 12 International Conference on Knowledge Discovery and Data Mining (KDD), International Conference on Data Mining (ICDM), International World Wide Web Conference (WWW), International Joint Conferences on Artificial Intelligence (IJCAI), International Conference on Database Systems for Advanced Applications (DASFAA), International Semantic Web Challenge, International Conference on Web Intelligence, International Conference on Intelligent Agent Technology e Workshop on Social Network Systems (In Eurosys). 24 marcação, dada uma sequência de unidades, é determinada a provável correspondência de sequências de marcas usando um modelo de marcação. Como fonte de dados das publicações utilizam metadados da DBLP (DBLP 2008) e na integração propõem um modelo probabilístico baseado em restrições para desambiguação de nomes usando Hidden Markov Random Fields (HMRF). Este modelo incorpora restrições e uma medida de distância parametrizada, onde é definida a probabilidade a-posteriori como função objetiva e incorporadas 6 tipos de restrições. Caso um artigo analisado viole uma restrição, ele será penalizado de alguma forma, uma vez que afetará o resultado da desambiguação. 4.1.2 ArnetMiner - Extraction and Mining of Academic Social Networks O trabalho de Tang et al. (2008 ) apresenta diversas questões que envolvem o sistema ArnetMiner, que objetiva extrair e minerar redes sociais acadêmicas. Especificamente, o sistema: 1) Extrai perfis de pesquisadores automaticamente da web; 2) Integra os dados de publicação na rede de bibliotecas digitais existentes; 3) Modela toda a rede acadêmica; e 4) Fornece serviços de pesquisa para a rede acadêmica. Para validar o sistema utilizaram 448.470 pesquisadores e 981.599 publicações. Extraíram e integraram dados ao longo de 2 anos de utilização do sistema usando uma abordagem de marcação unificada. São integradas publicações de bases de dados da web e é proposto um framework probabilístico para tratar o problema de desambiguação de nomes. Além disso, o trabalho propõe uma abordagem de modelagem unificada para modelar simultaneamente aspectos atuais de artigos, dos autores, e do local da publicação. Os serviços de pesquisa, tais como a busca por especialistas e associação de pessoas tem sido fornecidas baseado nos resultados de modelagem. O trabalho descreve a arquitetura e as principais características do sistema. Também apresenta alguns resultados experimentais dos métodos propostos. A arquitetura é dividida em módulos: • Extração: extração automática do perfil do pesquisador da web (das páginas pessoais dos pesquisadores) e de suas publicações na DBLP (DBLP 2008); • Integração: integra os dados extraídos do pesquisador com publicações (faz desambiguação de nomes entre os dados do perfil do pesquisador e de suas publicações); • Armazenamento e acesso: fornece armazenamento e indexação para os dados extraídos e integrados; • Busca: fornece três tipos de busca: por pessoa, por publicação e por categoria; • Mineração: fornece serviços de mineração, entre eles procura por especialista em um dado assunto e encontra associação entre pessoas. Para diversas características do sistema, em especial na extração do perfil do pesquisador, desambiguação de nomes na integração e na busca por especialistas, o trabalho propõe novas abordagens visando superar os problemas que existem em métodos convencionais. Para outras características como armazenagem e acesso, utilizam métodos já existentes. Mas não fica explicitado no artigo como são os métodos, citando apenas alguns experimentos sem fundamentar como chegaram aos resultados. 25 4.1.3 POLYPHONET - An Advanced Social Network Extraction System From the Web O trabalho de Matsuo et al. (2006) apresenta algoritmos avançados para extração de redes sociais da web, bem como mostra pseudocódigos de algoritmos de estudo com o mesmo propósito. Ainda investiga novas classes de relacionamentos entre pessoas, técnicas de escalabilidade e uma matriz de pessoa-palavra. É proposta também uma arquitetura chamada “Mineração de Redes Sociais Iterativas” e é caracterizada por ter escalabilidade, facilidade de expansão e ter um processo um processo de identificação de relacionamentos. Um sistema de mineração de redes sociais, denominado Polyphonet, foi desenvolvido para que os algoritmos propostos pudessem ser experimentados. O sistema visa promover o processo de comunicação entre participantes de conferências. Experimentos foram realizados no 17º, 18º e 19º Annual Conference of the Japan Society of Artificial Intelligence (JSAI2003, JSAI2004 e JSAI2005), bem como na International Conference on Ubiquitous Computing (UbiComp 2005). Mais de 500 participantes de cada conferência aceitaram realizar os testes, sendo que 200 deles continuaram utilizando o sistema. O sistema coleta e disponibiliza informações sobre os participantes, tais como: pesquisadores podem ser consultados por nome, instituição, palavras-chave e área de atuação, bem como pode ser traçada uma relação entre participantes que possuam áreas de atuação em comum. 4.1.4 Semantic Analytics on Social Networks - Experiences in Addressing the Problem of Conflict of Interest Detection A aplicação proposta por Aleman-Meza (2006) trata o problema de detecção do conflito de interesse entre revisores e autores de artigos científicos. A aplicação descobre associações semânticas entre os autores e revisores e popula uma ontologia para determinar o grau de conflito de interesse. A ontologia foi criada para integrar entidades e relacionamentos de duas redes sociais, a FOAF (Friend-of-a-Friend) e a DBLP (DBLP 2008). O trabalho descreve como computar pesos para relacionamentos entre pessoas na integração das redes sociais, bem como o algoritmo para detectar conflito de interesse. Apresenta ainda experimentos para validar a classificação dos tipos de conflitos de interesse que a aplicação proposta identifica. Para a detecção do conflito de interesse existe apenas uma situação em que isto ocorre, ou seja, se existe um forte relacionamento entre os objetos envolvidos. Para outras situações foi desenvolvido um algoritmo para identificar o conflito através da definição de duas categorias denominadas Potencial COI e Definite COI, sendo a primeira dividida em três níveis: baixo, médio e alto. Desta forma o algoritmo pode identificar o potencial do conflito. Já a definição de pesos nos relacionamentos pode auxiliar no processo de determinar o potencial do conflito de interesse. O peso 1 indica que o relacionamento é muito forte, já o peso 0 indica que existe um fraco relacionamento. O algoritmo para a detecção do conflito de interesse primeiro encontra todas as associações semânticas entre duas entidades, onde uma entidade é o avaliador e a outra é o autor do artigo a ser avaliado. Depois cada associação semântica encontrada é 26 analisada para encontrar o peso de seus relacionamentos individuais. Assim, cada associação semântica é analisada independentemente das outras e todas as direções dos relacionamentos são considerados pelo algoritmo. 4.1.5 Extracting Keyphrases to Represent Relations in Social Networks from Web O objetivo do trabalho de Mori, Ishizuka e Matsuo (2007) é extrair a base de relações por meio de entidades que estão embutidas na rede social. Para isso é proposto um método que extrai automaticamente rótulos que descrevem relações entre estas entidades. Ele agrupa pares de entidades similares de acordo com o contexto coletivo em documentos da Web. A descrição dos rótulos para as relações são obtidas através dos resultados do processo de agrupamento. O método proposto no trabalho é completamente não supervisionado e pode ser incorporado a outros métodos de extração de redes sociais existentes. O processo de extração segue os seguintes passos: 1) coleta informações de co-ocorrência e contexto local de uma entidade par; 2) extrai a rede social que é composta de entidades pares; 3) gera um modelo de contexto de cada entidade par; 4) calcula a similaridade de contexto entre entidades pares; 5) agrupa entidades pares; e 6) seleciona rótulos representativos para descrever relacionamentos de cada agrupamento. Os experimentos foram realizados em redes sociais de pesquisadores e redes sociais políticas e alcançaram altos resultados de precision e recall. 4.1.6 Expert Finding in a Social Network O trabalho de Zhang, Tang e Li (2007) apresenta uma abordagem unificada para usar informações parciais de pessoas e relacionamentos entre estas pessoas para encontrar especialistas em determinada área, utilizando uma rede social. A abordagem consiste de dois passos: 1) Inicialização: utilizar informações parciais de pessoas para estimar um escore de especialista inicial para cada pessoa e selecionar as principais pessoas como candidatas a especialistas. As pessoas selecionadas são usadas para construir um sub-grafo; 2) Propagação: a abordagem propaga o escore pertencente ao especialista para as pessoas com as quais ele possui relação. Na inicialização são utilizadas informações pessoais para calcular um escore de especialista inicial para cada pessoa, uma vez que se uma pessoa tem escrito vários documentos em um tópico ou se o nome de uma pessoa co-ocorre em muitos tópicos, então é muito provável que esta pessoa seja candidato a especialista neste tópico. A estratégia para calcular o escore inicial é baseada em um modelo de recuperação de informação probabilístico. Para cada pessoa é primeiro criado em documento d para combinar todas as suas informações pessoais. Após, é estimado um modelo probabilístico para cada documento, sendo este modelo utilizado para calcular o escore relevante do documento para o tópico. Assim, esse escore é considerado como o escore inicial de especialista da pessoa. Na propagação, são utilizados relacionamentos entre pessoas para melhorar a precisão de especialista encontrada. A estratégia é que se uma pessoa conhece muitos especialistas em determinado tópico ou se o seu nome aparece há muito tempo com outros especialistas, então ela é um especialista naquele tópico. O trabalho assume que a rede social é um grafo e nele são atribuídos pesos em cada aresta para indicar como o escore de especialista de uma pessoa se propaga para seus 27 vizinhos. Isto é chamado de coeficiente de propagação e pode variar numa escala engtre 0 e 1, podendo ser computado de muitas formas diferentes. Para os experimentos os autores utilizam uma rede social acadêmica de pesquisadores que é construída automaticamente usando abordagens para extração de informações. Nesta rede, uma pessoa pode ter diversos tipos de dados, tais como perfil pessoal, informações de contato e suas publicações. 4.1.7 An Integrated Method For Social Network Extraction O modelo proposto por Hope, Nishimura e Takeda (2006) visa integrar dados obtidos de várias redes sociais através de três abordagens: 1) É baseado em técnicas de mineração na web, onde pode criar redes iniciais automaticamente através de informações disponíveis na web; 2) É baseado na interação do usuário com o mundo real, como por exemplo, comunicação face-a-face do usuário em comunidades (o método extrai redes sociais com a captura de interação do usuário; e 3) É baseado na interação do usuário em sistemas web, como em Serviços de Redes Sociais (SNS – Social Networking Services) (os usuários podem construir eles mesmos suas redes sociais). 4.1.8 A Unified Approach to Researcher Profiling O trabalho de Yao, Tang e Li (2007) aborda o problema da criação do perfil de pesquisadores através de anotações semânticas de informações extraídas da web. Para realizar esta tarefa utiliza uma abordagem usando Conditional Random Fields (CRF) e incorpora dependência entre diferentes tipos de informação. Para a modelagem do perfil é construída uma ontologia que representa as informações pessoas e profissionais do pesquisador. Para o desenvolvimento do trabalho são consideradas 3 etapas: encontrar páginas relevantes, preprocessamento e marcação. Para a identificação de páginas relevantes, dado o nome de um pesquisador, é pego uma lista de páginas web através de um buscador e são identificadas as páginas pessoais do pesquisador. O endereço da página web serve como identificador para este pesquisador em seu perfil. No preprocessamento, o texto é segmentado em tokens e são assumidos possíveis marcações para cada token. Os tokens formam a unidade básica e as páginas web formam a sequência de unidades no problema de marcação. Para a marcação, dada uma sequência de tokens, é determinada a provável sequência correspondente de marcas usando um modelo de marcação treinado. Para o modelo de marcação são utilizados CRFs, que é uma distribuição de probabilidade condicional de uma sequência de rótulos. O método proposto foi aplicado para encontrar especialistas e os resultados mostram que a abordagem utilizada se mostrou mais eficiente que em trabalhos de mesma natureza. A justificativa é que como as anotações semânticas das propriedades do pesquisador são interdependentes, e em outras abordagens não é possível executar simultaneamente as tarefas das anotações semânticas. Já no método proposto neste trabalho, a abordagem de execução unificada encontrou melhor desempenho. 4.1.9 Finding Experts Using Social Network Analysis O trabalho de Fu et al. (2007) visa encontrar especialistas através da descoberta de relação entre pessoas, mediante e-mails trocados por elas e acesso a páginas web. 28 Baseado em redes sociais, o trabalho apresenta um algoritmo de propagação de especialidade que tem como princípio: dada uma lista com ranking de candidatos com probabilidades de serem especialistas em determinado tópico, é selecionado um pequeno conjunto dos principais elementos e então se usa a rede social entre os candidatos para descobrir outros potenciais especialistas. A estrutura para representação dos especialistas se dá através de um grafo, onde os nodos são os candidatos e as arestas correspondem ao nível de ligação entre eles. Através da análise do grafo pode-se quantificar esse nível, ou seja, um valor mais alto indica que duas pessoas têm mais interesse comum e a comunicação entre elas é mais freqüente. Para construir a rede social são utilizadas as páginas web de pessoas, onde a coocorrência dessas pessoas em determinado contexto pode significar que existe um interesse similar compartilhado. Entretanto, uma intuitiva maneira de quantificar o tamanho da associação entre duas pessoas é contar suas ocorrências em um documento. Mas uma função de co-ocorrência apresentada no trabalho não é sensível o bastante para representar a associação precisamente. Como podem ser muitos tópicos dentro do documento, também a distância entre duas pessoas é menos provável que sejam do mesmo tópico. Essa constatação sugere que se enfraqueça a força da ligação entre as pessoas, separando-os uns dos outros. Para isso o trabalho propõe um esquema que emprega a reciprocidade do número de palavras entre a ocorrências e a intensidade da co-ocorrência. 4.1.10 Expertise Modeling for Matching Papers with Reviewers O trabalho proposto por Mimno e Mccallume (2006) aborda uma maneira de modelar a experiência de uma pessoa com base em artigos publicados de sua autoria. Têm-se várias formas de se avaliar a associação entre um artigo a ser revisado e um autor, representados pelos seus trabalhos anteriores. Os autores apresentam diversas abordagens baseadas em modelos de linguagem e propõem uma nova abordagem baseada em tópicos, denominada APT (Author-Persona-Topic). O objetivo é encontrar pessoas relevantes em vez de documentos relevantes. Para isso eles construíram um modelo em que cada revisor em potencial tem uma distribuição de palavras em um vocabulário. Então classificam revisores para um dado artigo com base na probabilidade de palavras encontradas nesse artigo. A abordagem é baseada em um modelo de linguagem onde cada documento é representado como um polinômio de palavras. A avaliação da probabilidade máxima deste polinômio é o número de vezes que cada tipo de palavra aparece no documento, dividido pelo número total de número de tokens no documento. 4.1.11 Identifying User Behavior in Online Social Networks O trabalho de Maia, Almeida e Almeida (2008) apresenta uma metodologia para caracterizar e identificar o comportamento de usuários em redes sociais online. Para isso utilizam dados coletados do YouTube13 e um algoritmo de agrupamento para agrupar usuários que compartilham padrões de comportamento similares. 13 Disponível em http://www.youtube.com 29 O algoritmo agrupa usuário através de uma medida de distância que é computada baseada nos valores da representação de um vetor normalizado de usuários. O vetor é unidimensional, possui 9 posições e representa as seguintes características dos usuários: número de uploads, número de vídeos assistidos, números de páginas visitadas, data de inserção no sistema; idade, coeficiente de agrupamento (medida de interconexão entre usuários e seus vizinhos), reciprocidade (indica a probabilidade de mútua submissão), número de submissões feitas pelo usuário e número de submissões recebidas do usuário. Essas 9 características são de diferentes unidades e de diferentes magnitudes. Considerando que a medida de distância usada pelo algoritmo é calculada baseada em valores de cada característica, é feita a normalização dos dados para assegurar que a distância é computada com características de igual peso. A normalização é feita pelo valor máximo de cada característica de forma que todas elas fiquem em um intervalo entre 0 e 1. Para identificar grupos de usuários que compartilham padrões comportamentais é utilizado o algoritmo de agrupamento K-means (MACQUEEN, 1967; HUANG, 1998) e a distância euclidiana como medida de distância. No processo, o K-means seleciona k pontos no espaço para ter uma suposição inicial dos k centróides14. Os pontos restantes são então alocados para o próximo centróide. O processo é repetido até que não haja mais pontos a serem verificados no agrupamento. O trabalho mostra que atributos oriundos das interações sociais dos usuários, em contraste com atributos relativos a cada usuário individualmente, são bons descritores e permitem a identificação de comportamentos de usuários relevantes. 4.1.12 EOS – Expertise Oriented Search Using Social Networks O trabalho de Li et al. (2007) apresenta um sistema denominado EOS (Expertise Oriented Search) de buscas orientadas a especialistas que contém informação de 448.289 cientistas da computação, incluindo seus perfis e suas publicações. Estas informações são coletadas da web, da DBLP (DBLP 2008) e do CiteSeer (CITESEER 2008), e integradas em uma rede social após passarem por um processo de complemento e limpeza de dados. O sistema oferece 4 tipos de serviço de busca orientada a especialistas: (i) procura por informações de determinada pessoa; (ii) procura por publicações; (iii) procura por especialistas em determinada área; e (iv) procura por associação entre dois pesquisadores. A construção da rede social consiste de 3 etapas: (1) identificar páginas web relacionadas; (2) anotar informações pessoais; e (iii) construir a rede social. A partir dos dados da DBLP (DBLP 2008), o sistema obtém uma lista de nomes de pesquisadores e utiliza cada nome como uma palavra-chave para realizar uma busca no Google15 e selecionar as primeiras 20 páginas mais retornadas. Após, um modelo baseado em classificação SVM (Support Vector Machines) é utilizado para identificar o que realmente é relevante das páginas web retornadas com informações do pesquisador. Para o processo de anotações é utilizada uma ferramenta baseada em regra de aprendizagem para obter as informações pessoais dos pesquisadores. As informações sobre os co-autores e sua produção são extraídas da DBLP (DBLP 2008). Depois de 14 O centróide é definido como o ponto em que as coordenadas são a média entre todos os pontos do agrupamento. 15 Disponível em http://www.google.com 30 realizar a fusão de todos os dados é definido o perfil do pesquisador são aplicadas regras heurísticas para resolver o problema da desambiguação de nomes. 4.1.13 ArnetMiner – An Expertise Oriented Search System for Web Community O trabalho de Tang et al. (2007) apresenta um sistema de busca orientado a especialista para comunidades na Web denominado ArnetMiner. O sistema envolve diversos pontos importantes no problema de extração e mineração de pesquisadores em redes sociais. Ele fornece serviços baseado em semântica para busca e mineração de comunidades web, tais como encontrar especialistas, encontrar associação entre pessoas e encontrar temas atuais. Para o desenvolvimento do sistema foi necessário resolver alguns problemas, tais como: (i) como automaticamente extrair o perfil de pesquisadores de dados não estruturados da web; (ii) como integrar esses dados de diferentes fontes; (iii) como fornecer um serviço de busca útil baseado na construção de comunidades na web; e (iv) como minerar uma comunidade da web de modo a fornecer serviços que satisfaçam os usuários. O trabalho ainda desenvolveu uma ontologia para o perfil do pesquisador e se utiliza de uma abordagem unificada para construir o perfil deste pesquisador. Ainda integra publicações da DBLP (DBLP 2008) e propõem um modelo probabilístico baseado em restrições para resolver o problema da desambiguação de nomes. 4.1.14 Group Formation in Large Social Networks – Membership, Growth, and Evolution O trabalho de Backstrom et al. (2006) aborda o desafio de se coletar e analisar o tempo em grande escala de dados em grupos sociais e comunidades. Nesse sentido levantam questões como: quais são as características fundamentais para que indivíduos formem comunidades, quais comunidades crescerão rapidamente e como as sobreposições entre pares de comunidades mudam através do tempo. Nesse sentido o trabalho foca na questão de usar duas grandes fontes de dados: LiveJournal16 e a DBLP (DBLP 2008). Ambos os conjuntos de dados fornecem explícitas comunidades definidas pelo usuário, onde as conferências são as comunidades na DBLP. O trabalho faz um estudo de como a evolução destas comunidades se relaciona às propriedades da base das redes sociais. Foi identificado que a propensão dos indivíduos de se juntarem às comunidades, e das comunidades crescerem rapidamente, depende da base da rede social. Por exemplo, a tendência de um indivíduo juntar-se a uma comunidade é influenciada não apenas pelo número de amigos que ele tem dentro da comunidade, mas também por aqueles amigos conectados a outros indivíduos. No trabalho são usadas técnicas de árvores de decisão para identificar a mais significante estrutura determinante de propriedades. Também desenvolveram uma nova metodologia para medir a movimentação dos indivíduos entre as comunidades e ainda mostram como os movimentos são alinhados com mudanças nos tópicos de interesse dentro das comunidades. 16 Disponível em http://www.livejournal.com 31 4.1.15 A Framework for Analysis of Dynamic Social Networks O trabalho de Berger-Wolf e Saia (2006) apresenta que uma das principais características de interações sociais é sua mudança contínua. Entretanto, a maioria das análises do passado de redes sociais são essencialmente estáticas. Dessa forma, é proposto um framework matemático e computacional que permite análise de redes sociais dinâmicas e que emprega explicitamente a informação sobre quando as interações sociais ocorrem. O trabalho apresenta diversos algoritmos para obter informação sobre a estrutura de redes sociais dinâmicas no framework proposto e ainda é demonstrada a utilidade desses algoritmos utilizando-se de dados reais. 4.1.16 Structure and Evolution of Online Social Networks O trabalho de Kumar, Novak e Tomkins (2006) considera a evolução da estrutura dentro de grandes redes sociais online. São apresentadas uma série de medições de duas dessas redes, juntamente com mais de 5 milhões de pessoas e 10 milhões de ligações de amizade, anotando com captura de metadados o tempo de cada evento na vida da rede. As redes sociais escolhidas foram Flickr17 e Yahoo! 36018. O trabalho apresenta um modelo do crescimento das redes que capturam os aspectos da estrutura da rede. O modelo é utilizado para testes experimentais, caracterizando usuários como um ou outro membros passivos da rede; convidando que incentivem amigos offline a ficarem online; e ligando quem participam inteiramente da evolução social da rede. 4.1.17 Discovering Temporal Communities from Social Network Documents O trabalho de Zhou et al. (2007) apresenta um estudo de descoberta de comunidades de produção de documentos de comunicação através do tempo, incluindo a descoberta de tendências temporais em membros de comunidades. Primeiramente é formulada a descoberta estática da comunidade em um único período do tempo como um grafo tripartido que divide o problema. Então busca-se descobrir as comunidades temporais deixando as comunidades estaticamente derivadas em períodos de tempo diferentes usando um algoritmo de particionamento forçado, que particiona os grafos baseados na topologia assim como a informação prévia a respeito da associação do vértice. A abordagem proposta foi avaliada utilizando-se um conjunto de dados do CiteSeer (CITESEER 2008). A avaliação quantitativa em dados sintéticos demonstrou uma precisão elevada da descoberta e uma melhoria sobre a aproximação normalizada generalizada do corte. A avaliação qualitativa dos dados do CiteSeer (CITESEER 2008) mostrou a eficácia da abordagem proposta em descoberta de autor de comunidades e na pesquisa de documentos de comunidades. 17 18 Disponível em www.flickr.com Disponível em http://360.yahoo.com 32 4.1.18 Pruning Social Networks Using Structural Properties and Descriptive Attributes A escala é muitas vezes um assunto compreensivo e racional de grandes redes sociais. No trabalho de O trabalho de Singh, Getoor e Licamele (2005) são investigados métodos para “cortar” redes sociais para determinar os relacionamentos mais relevantes. É medida a importância em termos de precisão de predição em um conjunto atributosalvo da rede social. O objetivo é criar uma rede menor que modela somente as afiliações e os relacionamentos mais informativos. São apresentados métodos “cortar” redes baseadas em propriedades estruturais e em atributos descritivos, demonstrando sua aplicabilidade nas redes de negócios Nasdaq19 e Nyse20, bem como na rede bibliográfica da ACM SIGMOD21. 4.2 Considerações Finais Este capítulo apresentou os principais trabalhos relacionados com o tema mineração de dados em redes sociais. Os trabalhos envolvem, dentre outros assuntos, extração de dados, similaridade textual, desambiguação de nomes, bem como técnicas, métodos, algoritmos e arquiteturas para extração e análise de dados em redes sociais. 19 Disponível em http://www.nasdaq.com Disponível em http://www.nyse.com 21 Disponível em http://www.sigmod.org 20 33 5 CONCLUSÕES Este trabalho teve por objetivo apresentar conceitos gerais sobre redes sociais, o processo de descoberta de conhecimento em bases de dados, bem como fazer uma descrição sobre trabalhos publicados em conferência e periódicos que abordaram o tema mineração de dados em redes sociais. Para que seja possível analisar comportamento de indivíduos e sua evolução dentro de uma rede social é preciso que técnicas computacionais de mineração de dados sejam utilizadas. As técnicas de mineração para redes sociais são diferentes das técnicas clássicas de mineração em bases de dados. Os trabalhos na área de redes sociais usam principalmente as técnicas de mineração para grafos em virtude das características de objetos (nodos) e seus relacionamentos (arestas) que são o mais importante quando se analisa grafos. Áreas como mineração de links e predição de links tem sido muito utilizadas para se analisar dados de redes sociais, pois possuem técnicas que se enquadram nas necessidades que a estrutura de grafos requer quando se analisa ou quando se extrai uma rede social. Mineração de links é a união de várias pesquisas em redes sociais, tais como, análise de links, mineração de hipertextos na Web, mineração de grafos e aprendizagem. Tanto técnicas de classificação e agrupamento no domínio de relacionamentos entre objetos requerem novos algoritmos para mineração de dados. Predicação de links é uma técnica usada para predizer a formação de ligações dentro de uma rede. Ela pode ser usada para recomendar novos relacionamentos, tais como amigos em uma rede social ou para descobrir previamente relacionamentos desconhecidos como interações reguladoras entre genes. Os artigos analisados demonstraram que existem muitos desafios a serem explorados na área de mineração em redes sociais. Em sua grande maioria, os trabalhos apresentaram algoritmos, métodos, processos e arquiteturas para abordar problemas relativos à como extrair dados de relacionamentos para construir uma rede social, como se analisar a diminuição ou o aumento no número de objetos e relacionamentos em uma rede, bem como identificar se uma rede evolui ao longo tempo ou como ela se comporta. Nos artigos estudados muitos problemas foram expostos bem como boas soluções foram propostas. As áreas de aplicação dos trabalhos estudados envolveram co-autoria em trabalhos científicos, descoberta de relação entre pesquisadores, definição de perfil de pesquisadores, descoberta de especialistas em determinada área do conhecimento, identificação de comunidades on-line, formação de grupos dentro de redes, análise de 34 comportamento de usuários em sistemas corporativos, detecção do conflito de interesse e desambiguação de nomes. 35 REFERÊNCIAS AGRAWAL, R.; SRIKANT, R. Fast Algorithms for Mining Association Rules. VLDB, p. 487-499. 1994. ALEMAN-MEZA, B.; NAGARAJAN, M.; RAMAKRISHNAN, C.; DING, L.; KOLARI, P; SHETH, A. P.; ARPINAR, I. B.; JOSHI, A.; FININ, T. Semantic Analytics on Social Networks - Experiences in Addressing the Problem of Conflict of Interest Detection. Proceedings of the 15th International Conference on World Wide Web (WWW 2006). Edinburgh, Scotland, 2006. BARABASI, A. L. (2003). Linked: How Everything Is Connected to Everything Else and What It Means for Business, Science and Everyday Life. Plume Books. BARABASI, A. L.; JEONG, H.; NÉDA, Z.; RAVASZ, E.; SCHUBERT, A.; VICSEK, T. Evolution of the Social Network of Scientific Collaboration. Physica A, 311(34):590-614, 2002. BACKSTROM, L.; HUTTENLOCHER, D.; KLEINBERG, J.; LAN, X. Group Formation in Large Social Networks – Membership, Growth and Evolution. In Proceedings of the 12th International Conference on Knowledge Discovery and Data Mining (KDD 2006). Philadelphia, USA, 2006. BERGER-WOLF, T. Y.; SAIA, J. A Framework for Analysis of Dynamic Social Networks. In Proceedings of the 12th International Conference on Knowledge Discovery and Data Mining (KDD 2006). Philadelphia, USA, 2006. BRIN, S.; PAGE, P. The anatomy of a large-scale hypertextual Web search engine. Computer Networks and ISDN Systems, 30(1-7):107-117, 1998. BRUSSO, M. J. Access Miner: Uma Proposta Para a Extração de Regras de Associação Aplicada à Mineração do Uso da Web. 2000. Dissertação (Mestrado em Ciência da Computação) – Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2000. DAVIDSEN, J.; EBEL, H.; BORNHOLDT, S. Emergence of a small world from local interactions: Modeling acquaintance networks. Physical Review Letters, 88(128701), 2002. DEERWESTER, S.; DUMAIS, S. T.; FURNAS, G. W.; LANDAUER, T. K.; HARSHMAN, R. Indexing by latent semantic analysis. Journal of the American Society for Information Science, 41(6):391-407, 1990. 36 DEGENNE, A.; FORSE, M. (1999). Introducing Social Networks. Sage Publications. DIGITAL BIBLIOGRAPHY & LIBRARY PROJECT (DBLP). University of Trier. Disponível em <http://dblp.uni-trier.de>. Acesso em outubro, 2008. EMIRBAYER, M.; GOODWIN, J. (1994). Networ analysis, culture and the problem of agency. American Journal of Sociology, 99(6):1411–1454. ERDÖS, P.; RÉNYI, A. (1960). On the evolution of random graphs. In Publ. Math. Inst. Hungar. Acad. Sci., pages 17-61. ESSEN, U.; STEINBISS, V. Cooccurrence smoothing for stochastic language modeling. In Proceedings of the International Conference on Acoustics, Speech, and Signal Processing, v.1, pages 161-164, 1992. FAYYAD, U.; PIATETSKY-SHAPIRO, G.; SMYTH, P. From data mining to knowledge discovery in databases. AI Magazine. 1996. p. 37-54. FREEMAN, L. C. (1996). Some Antecedents of Social Network Analysis. CiteSeerx. Connections, Boston, 19(1):39-42. FU, Y.; XIANG, R.; LIU, Y.; ZHANG, M.; MA, S. Finding Experts Using Social Network Analysis. Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (Web Intelligence 2007). Silicon Valley, USA, 2007. GETOOR, L. Link Mining: A New Data Mining Challenge. ACM SIGKDD Explorations Newsletter, v.5 n.1, July 2003. GETOOR, L; DIEHL, C. P. Link Mining: A Survey. ACM SIGKDD Explorations Newsletter, v.7 n.2, p.3-12, December 2005. GOLDSCHMIDT, R.; PASSOS, E. Data Mining: Um Guia Prático. Rio de Janeiro: Editora Campus, 2005. GOMES, S. R. V. Mineração de Dados Sibre Redes Sociais. Trabalho Individual. Porto Alegre, RS. Universidade Federal do Rio Grande do Sul. 2008. HAN, J. and KAMBER, M. Data Mining: Techniques and Concepts. Morgan Kaufmann, 2006. Second Edition. 600p. HOPE, T.; NISHIMURA, T.; TAKEDA, H. An Integrated Method for Social Network Extraction. Proceedings of the 15th International Conference on World Wide Web (WWW 2006). Edinburgh, Scotland, 2006. HUANG, Z. Extensions to the k-means algorithm for clustering large data sets with categorical values. In: Data Mining and Knowledge Discovery, Kluwer Academic Publishers, Hingham, MA, USA, v. 2, p. 283-304. 1998. JEH, G.; WIDOM, J. SimRank: A measure of structural-context similarity. In Proceedings of the 8th International Conference on Knowledge Discovery and Data Mining (KDD 2002). Edmonton, Canada, 2002. JENSEN, D.; NEVILLE, J. Data Mining in Social Networks. In: National Academy of Sciences Symposium on Dynamic Social Network Analysis. Washington, USA, 2002. 37 JIN, E. M.; GIRVAN, M.; NEWMAN, M. E. J. The structure of growing social networks. Physical Review Letters E, 64(046132), 2001. JOHN, G. H. Enhancements To The Data Mining Process. Phd. Dissertation – Stanford University. Phd. Dissertation, 1997. KASHIMA, H.; ABE, N. A parameterized probabilistic model of network evolution for supervised link prediction. In Proceedings of the 6th International Conference on Data Mining (ICDM 2006), Hong Kong, China, 2006. KATZ, L. A new status index derived from sociometric analysis. Psychometrika, 18(1):39-43, March 1953. KUMAR, R.; NOVAK, J.; TOMKINS, A. Structure and Evolution of Online Social Networks. In Proceedings of the 12th International Conference on Knowledge Discovery and Data Mining (KDD 2006). Philadelphia, USA, 2006. LAENDER, A. H. F.; GONÇALVES, M. A.; ROBERTO, P. A. (2004). BDBComp: Building a Digital Library for the Brazilian Computer Science Community. In Proc. Joint Conference on Digital Libraries (JCDL), Tucson, Arizona, USA. New York: ACM Press. LEE, L. Measures of distributional similarity. In Proceedings of the Annual Meeting of the Association for Computational Linguistics, pages 25-32, 1999. LI, J.; TANG, J.; ZHANG, J.; LUO, Q.; LIU, Y.; HONG, M. EOS - Expertise Oriented Search Using Social Networks. In Proceedings of the 16th International Conference on World Wide Web (WWW 2007). Banff, Canada, 2007. LIBEN-NOWELL, D; KLEINBERG, J. The link prediction problem for social networks. In: Proceedings of the 12th International Conference on Information and Knowledge Management (CIKM 2003), New Orleans, Louisiana, 2003. MACQUEEN, J. B. (1967). Some Methods for classification and Analysis of Multivariate Observations. Proceedings of 5th Berkeley Symposium on Mathematical Statistics and Probability. Berkeley, University of California Press, 1:281-297. MAIA, M.; ALMEIDA, J.; ALMEIDA, V. Identifying User Behavior in Online Social Networks. In Proceedings of the 1st International Workshop on Social Network Systems (Co-located with EuroSys 2008). Glasgow, Scotland, 2008. MATHWORKS “Statistics Toolbox: K-means clustering”. Disponível em: http://www.mathworks.com/access/helpdesk/help/toolbox/stats/kmeans.html. Acesso em: 30 mai. 2008. MATSUO, Y.; MORI, J.; HAMASAKI, M.; ISHIDA, K.; NISHIMURA, T.; TAKEDA, H.; HASIDA, K.; ISHIZUKA, M. POLYPHONET – An Advanced Social Network Extraction System from the Web. Proceedings of the 15th International Conference on World Wide Web (WWW 2006). Edinburgh, Scotland, 2006. MIMNO, D.; MCCALLUM, A. Expertise Modeling for Matching Papers With Reviewers. In Proceedings of the 13th International Conference on Knowledge Discovery and Data Mining (KDD 2007). San Jose, USA, 2007. 38 MITZENMACHER, M. A brief history of lognormal and power law distributions. In Proceedings of the Allerton Conference on Communication, Control, and Computing, pages 182-191, 2001. MORI, J.; ISHIZUKA, M.; MATSUO, Y. Extracting Keyphrases to Represent Relations in Social Networks from Web. International Joint Conference on Artificial Intelligence (IJCAI 2007). Hyderabad, India, 2007. NATARAJAN, R.; SHEKAR, B. Interestingness of association rules in data mining: issues relevant to e-commerce. India: Sadhana, 2005. p. 291-309. NEWMAN, M. E. J. Clustering and preferential attachment in growing networks. Physical Review Letters E, 64(025102), 2001. QUINLAN, J. R. C4.5: programs for machine learning. San Mateo, CA: Morgan Kaufmann, 1993. QUINLAN, J. R. Discovering rules from large collections of examples: a case study. In D. Michie, editor, Expert Systems in the Micro-electronic Age, pages 168-201. Edinburgh University Press, Edinburgh, 1979. SALTON, G.; MCGILL, M. J. Introduction to Modern Information Retrieval. McGrawHill, 1983. SCIENTIFIC LITERATURE DIGITAL LIBRARY (CiteSeer). Disponível em <http://citeseer.ist.psu.edu>. Acesso em outubro, 2008. SILVA, M. P. S. Mineração de Dados: Conceitos, Aplicações e Experimentos com Weka. Livro da Escola Regional de Informática Rio de Janeiro - Espírito Santo. Porto Alegre: Sociedade Brasileira de Computação, 2004, v. 1, p. 1-20. SINGH, L.; GETOOR, L.; LICAMELE, L. Pruning Social Networks Using Structural Properties and Descriptive Attributes. In Proceedings of the 5th International Conference on Data Mining (ICDM 2005). Houston, USA, 2005. TANG, J.; ZHANG, J.; ZHANG, D.; YAO, L.; ZHU, C.; LI, J. ArnetMiner – An Expertise Oriented Search System for Web Community. In Proceedings of Semantic Web Challenge 2007 (co-located with ISWC 2007 + ASWC 2007). Busan, Korea, 2007. TANG, J.; ZHANG, J.; YAO, L.; LI, J.; ZHANG, L.; SU, Z. ArnetMiner – Extraction and Mining of Academic Social Networks. In Proceeding of the 14th International Conference on Knowledge Discovery and Data Mining (KDD 2008). Las Vegas, USA, 2008. TANG, J; ZHANG, D.; YAO, L. Social Network Extraction of Academic Researchers. In Proceedings of 7th International Conference on Data Mining (ICDM 2007). Omaha, USA, 2007. TWO CROWS CORPORATION. Introduction to data mining and knowledge discovery. 3 ed. 2005. Disponível em: <http://www.twocrows.com/intro-dm.pdf>. Acesso em: 15 mai. 2008. 39 VOLTOLINI, R. F. Discretização e Geração de Dados em Aprendizado de Máquina. 2006. Dissertação (Mestrado em Ciências da Computação e Matemática Computacional) – Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo, São Paulo, 2006. WASSERMAN, S.; FAUST, K. (1999). Social network analysis: methods and applications. Cambridge University Press, Cambridge. WATTENBERG, M. Visual Exploration of Multivariate Graphs. In Proceedings of Conference Human Factors in Computing Systems (SIGCHI 2006). Montreal, Canada, 2006. YAO, L.; TANG, J.; LI, J. A Unified Approach to Researcher Profiling. Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (Web Intelligence 2007). Silicon Valley, USA, 2007. ZHANG, J.; TANG, J.; LI, J. Expert Finding in a Social Network. Proceedings of 12th International Conference on Database Systems for Advanced Applications (DASFAA 2007). Bangkok, Thailand, 2007. ZHOU, D.; COUNCILL, I.; ZHA, H.; GILES, C. L. Discovering Temporal Communities from Social Network Documents. In Proceedings of the 7th International Conference on Data Mining (ICDM 2007), Omaha, USA, 2007.