Análise de Padrões de Propagação no Twitter Arlei Silva, Fernando Mourão, Lívia Simões, Nathan Mariano Wagner Meira Jr., Walter Santos, Gisele Pappa, Adriano Veloso 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais {arlei,fhmourao,livia,nathanr,meira,walter,glpappa,adrianov}@dcc.ufmg.br Abstract. As a consequence of the popularization of the social networks, analyzing the information propagation in such networks has become a relevant task in several scenarios. Propagation patterns support the understanding of phenomena such as opinion formation and the emergence leaders in social networks. In this paper we present a methodology for propagation analysis on Twitter, the most popular micro-blogging service in the Web currently. Challenges related to the efficiency and scalability of the methodology are described and evaluated through its application in a real site, the Observatorio da Web. Resumo. Com a popularização das chamadas redes sociais, analisar a propagação de informação nessas redes se tornou uma tarefa relevante em diversos contextos. Padrões de propagação podem permitir o entendimento de fenômenos como a formação de opinião e o surgimento de líderes em redes sociais. Neste artigo apresentamos uma metodologia para a análise de propagação no Twitter, o serviço de micro-blogging mais popular na Web atualmente. Desafios relacionados à eficiência e escalabilidade de aplicação da metodologia são descritos e avaliados através de uma instanciação em um portal real, o Observatório da Web. 1. INTRODUÇÃO É notória a atual popularidade e relevância alcançadas pelas chamadas redes sociais na Web. Essas redes têm sido utilizadas, principalmente, para a troca de informações entre usuários, tais como vídeos no Youtube, fotos no Flickr e notícias em blogs. Diversos trabalhos se propuseram a estudar diferentes aspectos associados à troca de informação entre usuários em redes sociais. Recentemente, um tópico que tem atraído o interesse da comunidade científica é a propagação de informação nessas redes. A análise de propagação de informação em redes sociais tem como objetivo o entendimento de fenômenos importantes, dentre os quais podemos destacar a formação de opinião e o surgimento de líderes. A partir da representação de uma rede social como um grafo e da identificação dos itens que um dado vértice pode propagar através de sua vizinhança, pode-se modelar variados cenários onde a propagação desempenha um papel importante. Exemplos incluem a transmissão de doenças contagiosas, a difusão de rumores, estratégias de marketing viral e a disseminação de vírus de computador. Recentemente, a grande popularidade do Twitter, serviço de micro-blogging onde um dado usuário pode ler e postar tweets (mensagens com no máximo 140 caracteres), e a Este trabalho é parcialmente financiado por CNPq, CAPES, FAPEMIG, FINEP e INWeb.
facilidade de obtenção de dados a partir do serviço (através de uma interface de uso gratuito) motivaram a sua utilização no monitoramento de opiniões e tendências tanto para uso comercial como no desenvolvimento de trabalhos científicos. Com base nas relações entre usuários (seguidor-seguido) podemos modelar o Twitter como uma rede social onde a informação se propaga através de tweets, o que torna esse serviço um interessante cenário para a análise de propagação de informação. Uma propriedade importante dos tweets é que eles são usados frequentemente para a postagem de conteúdos de outros sites através da URL para o dado conteúdo. Não estamos a par de nenhum trabalho na literatura que tenha como objetivo estudar a propagação de URLs através tweets. Este artigo apresenta uma metodologia para a análise de propagação de URLs no Twitter. A metodologia proposta é composta por diversos passos envolvidos na análise de propagação: coleta, extração, processamento e visualização dos resultados obtidos. Essa metodologia é aplicada a um portal real, o Observatório da Web, que tem como objetivo monitorar a repercussão de diferentes eventos (tais como eleições e a copa do mundo de futebol) na Web. 2. TRABALHOS RELACIONADOS Diversos trabalhos se propõem a estudar a propagação ou disseminação de informação em redes sociais, como notícias em blogs [Leskovec et al. 2007], campanhas de marketing viral através de email [Iribarren and Moro 2007] e fotos em sites de compartilhamento [Cha et al. 2009]. Essas análises têm um apelo econômico muito forte, principalmente devido ao poder da influência social [Anagnostopoulos et al. 2008] sobre o sucesso de produtos. Alguns estudos mostram que nos EUA cerca de 2/3 da economia é regida pela publicidade boca-a-boca (do inglês word-of-mouth) [Iribarren and Moro 2007]. Com a popularização do Twitter, trabalhos recentes têm explorado bases de dados de tweets e redes de seguidores para análise de propagação de informação. Em [Cha et al. 2010], os autores avaliam a influência de usuários do Twitter em diferentes tópicos ao longo do tempo. O principal resultado do artigo é que o número de seguidores de um dado usuário não reflete a sua capacidade de influência. Além disso, o fato de o Twitter ser um serviço de tempo real tem motivado a sua utilização no monitoramento de eventos. [Sakaki and Okazaki Makoto 2010] propõe um algoritmo para a detecção de eventos, tais como terremotos, com base em tweets. Os resultados obtidos mostram que a técnica proposta foi capaz de detectar até 96% dos terremotos de escala superior a 2 no Japão, país com um grande número de usuários do Twitter. O uso do Twitter como ferramenta de debate político e protestos contra os resultados das eleições ocorridas em 2009 no Irã é analisado em [Gaffney 2010]. A aplicação de técnicas estatísticas e de análise de sentimento a grandes bases de tweets têm se mostrado capaz de refletir resultados de pesquisas convencionais e até mesmo de eleições, como mostrado em [Tumasjan et al. 2010]. 3. ANÁLISE DE PROPAGAÇÃO DE URLs NO TWITTER Nesta seção é proposta uma metodologia para análise de propagação de informação no Twitter. A Seção 3.1 descreve como é construída a rede social a partir do Twitter e quais são os itens de informação que podem se propagar através dessa rede. As seções seguintes apresentam as diferentes etapas da metodologia proposta. Dois importantes desafios que
influenciam a maior parte das etapas da metodologia são: (1) o grande volume de dados trafegados e (2) a limitação de número de requisições à interface por unidade de tempo, imposta pelo Twitter. 3.1. Rede social e itens de informação no Twitter A rede social do Twitter é construída com base nas relações seguidor-seguido. Cada usuário é representado por um nó na rede e existe uma aresta direcionada (u i,u j ) se o usuário u j é um seguidor do usuário u i. Diferentemente de outras rede sociais, os relacionamentos na rede do Twitter não são simétricos, já que a existência de uma aresta (u i,u j ) não implica na existência de uma aresta (u j,u i ). Com base na rede social do Twitter, é possível se identificar diferentes itens de informação que podem se propagar através dela, listados a seguir: 1. Tópicos: Definem os assuntos tratados nos tweets e permitem que tweets escritos de forma diferente, mas que tratem do mesmo assunto possam ser agrupados. 2. Termos: Um tweet é composto basicamente por texto. Consequentemente, é possível avaliar como os termos utilizados por um usuário afetam sua vizinhança. 3. Hashtags: Hashtags são cadeias de caracteres iniciadas com o marcador #. Elas refletem o assunto do tweet e são populares entre os usuários. 4. URLs: É muito comum o uso de tweets para a divulgação de conteúdo (notícias, vídeos, imagens, etc.). Com base na URL que aponta para o dado conteúdo, podemos analisar como URLs são difundidas no Twitter. 5. Tweets: Através da função re-tweet, um usuário pode postar um tweet já existente de forma explícita, o que permite que um dado tweet se propague. Este artigo descreve uma metodologia para a análise de propagação de URLs no Twitter. Trabalhos futuros incluem a análise de propagação de outros itens de informação. As seções a seguir descrevem as etapas da metodologia proposta. 3.2. Coleta de Tweets A primeira etapa da metodologia proposta é a coleta de tweets. O Twitter oferece uma interface 1 para coleta de dados de uso gratuito. No entanto, essa interface limita o número de requisições a 150/hora. Como o volume de dados que trafega no Twitter diariamente é muito grande, coletar todos os tweets se torna inviável. A estratégia utilizada na metodologia proposta é a utilização de palavras-chave. Palavras-chave são termos que estão relacionados ao contexto (assunto, evento, etc.) da análise. Se o contexto a ser analisado são as eleições presidenciais de um dado país, por exemplo, palavras-chave aplicáveis incluem os nomes dos candidatos e dos partidos envolvidos. Além disso, hashtags também podem ser utilizadas na seleção dos tweets a serem coletados. Um desafio importante da etapa de coleta de tweets é a seleção de palavras-chave e hashtags a serem utilizadas. Por se tratar de uma tarefa subjetiva, o uso de técnicas automáticas ou semi-automáticas para a seleção de palavras-chave e hashtags através de técnicas existentes apresenta limitações. A solução adotada na metodologia proposta é a seleção manual de palavras-chave e hashtags por um especialista no contexto de análise. Com base nessa seleção, todos os tweets que contêm a dada palavra-chave ou hashtag 1 http://apiwiki.twitter.com/
selecionada são coletados e armazenados em um banco de dados. Além do conteúdo dos tweets, é necessário coletar também o momento em que o tweet foi postado e o identificador do usuário que fez o post, essas informações são indispensáveis para a análise de propagação. 3.3. Extração Nesta etapa, os itens de informação a serem analisados (no caso, as URLs) são extraídos a partir dos tweets coletados na etapa anterior. A primeira tarefa desta etapa é a identificação dos tweets que possuem pelo menos uma URL. Em seguida, é realizada a expansão das URLs, que é indispensável devido à ampla utilização de URLs compactadas no Twitter, uma consequência direta da limitação do tamanho do tweet a 140 caracteres. Após a expansão, se torna necessária a aplicação de métodos de seleção de URLs, já que o número de URLs a serem analisadas impacta no número de usuários cujas listas de seguidores devem ser coletadas (o que será descrito na seção a seguir). É importante que um método de seleção de URLs seja capaz de: (1) identificar URLs com alto potencial de propagação o mais rápido possível e (2) eliminar URLs que se propagaram em um passado distante mas deixaram de ser interessantes e de se propagar em seguida, ou seja, devem ser selecionadas URLs de interesse recente. Na metodologia proposta, é utilizado como critério de seleção de URLs a frequência da URL em uma janela de tempo. Essa estratégia tem sido aplicada na seleção de tópicos de interesse em fluxos de notícias [Wang et al. 2007]. 3.4. Coleta da Rede A partir das URLs selecionadas na etapa anterior, é necessário construir a rede social dos usuários que postaram alguma das URLs selecionadas. Essa rede constitui apenas parte da rede social do Twitter, já que o limite de requisições impossibilita a coleta de toda a rede. Para cada usuário que postou uma URL selecionada, é coletada a sua lista de seguidores. Como cada lista de seguidores coletada pode exigir uma ou mais requisições, essa etapa é a mais influenciada pelo limite de requisições. Como consequência, o uso de um coletor distribuído (que utiliza diversas máquinas) é necessário para permitir uma cobertura satisfatória da rede e do conjunto de URLs em um intervalo de tempo curto. 3.5. Processamento Nesta etapa são identificados os padrões de propagação. A rede social, obtida de acordo com a seção anterior, as URLs selecionadas e os dados dos tweets que contêm tais URLs são utilizados na construção de um grafog = (V,E,I,π,σ), tal quev = {v 1,v 2,...v n } é o conjunto de vértices (usuários), E = {(v i,v j ) : v i,v j V} é o conjunto de arestas (direcionadas), I = {i 1,i 2,...i n } o conjunto de URLs, π : V I {0,1} é uma função que resulta em 1 se o usuário v i postou a URL i k, ou 0 caso contrário, e σ : V V I { 1,0,1} uma função que retorna 0 se v i ou v j não postaram i k, 1 se v i postou i k antes de v j, ou -1 caso contrário. A Figura 1(a) mostra um exemplo de grafo com um conjunto de vértices V = {A,B,C,D,E}, um conjunto de arestas E = {(A,C),(A,D),(B,D),(C,E),(D,E),(E,D)} e um conjunto de URLs unitário I = {x}. Timestamps do momento em que a URL é postada por cada usuário são mostrados entre parênteses ao lado da URL.
A (x,1) C (x,2) A (x,1) C (x,2) B (x,4) D (x,3) E (x,4) D (x,3) E (x,4) (a) Grafo. (b) Padrão de propagação. Figura 1. Exemplos de grafo e padrão de propagação Um padrão de propagação é uma tripla (V i,e i,i), V i V, i I, tal que π(v,i) = 1 para todo v V i e que existe um vértice origem v i a partir do qual existe um caminho ((v i,v k )...(v l,v j )) entre v i e v j em G para todo v j V i tal que σ(v i,v k,i) = 1,...σ(v l,v j,i) = 1. O conjunto de arestas E i é o subconjunto de arestas de G que conectam vértices em V i, ou seja E i = {(v i,v j ) E v i V i v j V i }. A Figura 1(b) mostra um exemplo de padrão de propagação extraído do grafo mostrado na Figura 1(a). O padrão ({A,C,D,E},{(A,C),(A,D),(C,E),(D,E)},x) descreve a propagação da URLxapartir do vértice A para os vértices C,D e E. Algorithm 1: Extração dos Padrões de Propagação 1 2 3 4 5 6 7 8 9 10 11 Input :G(V,E,I,π,σ) Output: P P ; fori I do V i ; E i ; g G(i); remove-arestas-invalidas(g, σ); whileg do v vertice-mais-antigo(g); ifv / V i then V i V i v; busca-em-profundidade(v,g,v i,e i ); 12 P P (V i,e i,i); O Algoritmo 1 descreve em alto nível a extração de padrões de propagação a partir de um grafo G = (V,E,I,π,σ). Para cada URL i contida no grafo, o subgrafo G(i) de vértices cujos usuários postaramiéextraído. Arestas inválidas em termos de propagação são removidas. Uma aresta (v i,v j ) é considerada inválida se σ(v i,v j,i) = 1. Em seguida, o algoritmo itera selecionando o vértice mais antigo v, ou seja σ(v,u,i) 0 para todo u V i, e realiza uma busca em profundidade a partir de v. Ao longo da busca em profundidade, vértices descobertos são adicionados a V i e as arestas descobertas são adicionadas a E i. Cada nova tripla (V i,e i,i) é adicionada ao conjunto de padrões de propagação que será retornado como resultado do algoritmo. 3.6. Visualização A partir dos padrões de propagação identificados no Twitter, são extraídas duas informações importantes: o número de usuários alcançados por uma dada URL e a sua taxa de propagação.
O número de usuários alcançados determina o impacto da uma URL sobre o conjunto de usuários do Twitter e é obtido a partir do tamanho do padrão de propagação de uma URL em um dado instante do tempo. URLs que atingem muitos usuários podem representar campanhas de marketing viral ou conteúdos de grande popularidade no Twitter em um dado período. Neste trabalho são propostas duas visualizações para o número de usuários alcançados por uma URL. A primeira, é um gráfico do total de usuários alcançados ao longo do tempo e a segunda é uma forma de representar a mesma informação através de círculos concêntricos, onde cada círculo representa uma data e seu raio é determinado pelo número de usuários alcançados. Além do alcance de uma URL, é interessante avaliar a receptividade da mesma por parte dos usuários, o que é denominado taxa de propagação. Ela é a razão entre o número de vértices com grau de saída (outdegree) maior que zero e o número de usuários com grau de entrada (indegree) maior que zero no padrão de propagação de uma dada URL. URLs com uma alta taxa de propagação foram postadas por grande parte dos usuários que as visualizaram. 4. ESTUDO DE CASO De forma a avaliar a metodologia proposta em cenários reais, é apresentada a seguir uma instanciação dessa metodologia em um Portal, o Observatório da Web, desenvolvido para analisar a repercussão de grandes eventos, como a copa do mundo de futebol 2 e as eleições presidenciais 3, na Web. Neste estudo de caso, são utilizados resultados gerados para o Observatório da Copa. O Observatório da Web utiliza dados disponíveis em mídias online, tais como blogs, Twitter e portais de notícias. Dentre os principais desafios computacionais inerentes ao Observatório, destacam-se a necessidade de processar informação em tempo real de forma eficiente, a análise de ampla diversidade de fontes simultaneamente e a disponibilização de indicadores efetivos sobre as mudanças de comportamentos analisados de forma escalável. Diversas técnicas de recuperação de informação, mineração de dados, aprendizado de máquina, gerência de dados na web e caracterização são utilizadas no Observatório da Web. Dentre essas técnicas está a análise de propagação de URLs no Twitter, que é o tema deste artigo. 4.1. Base de Dados Os dados analisados consistem em um conjunto de tweets coletados entre os dias 01/06/2010 a 22/06/2010. Foram definidas 50 palavras-chave relacionadas às seleções que participam da copa do mundo e seus respectivos jogadores, com base nas quais foram coletados 14.742.750 tweets distintos, postados por 2.274.293 usuários distintos. As URLs analisadas correspondem às 500 URLs mais frequentes na base de dados. 4.2. Resultados Nesta seção, é apresentada e discutida a aplicação da metodologia proposta na análise de propagação de duas URLs relacionadas à copa do mundo de futebol. 2 Observatório da Copa http://observatoriodacopa.inweb.org.br 3 Observatório das Eleições: http://observatorio.inweb.org.br/
A primeira URL analisada é mostrada na Figura 2. Ela refere-se à uma página do próprio Twitter sobre a copa do mundo. Pode-se notar que a URL alcançou cerca de 5 milhões de usuários em um período muito curto, próximo ao dia 10 de junho, quando a página foi lançada, o que pode ser notado no gráfico da Figura 2(a). A visualização mostrada na Figura 2(b) é ideal para analisarmos a velocidade da propagação da URL. O primeiro círculo (ao centro) ocupa grande parte da figura, o que indica que grande parte do volume de usuários foi alcançada nos primeiros dias. A taxa de propagação dessa URL foi de apenas 0,006%, o que evidencia que ela foi difundida por usuários com muitos seguidores, mas poucos usuários que a visualizaram decidiram postá-la. Número de Usúarios 5 10 6 4 10 6 4 10 6 3 10 6 2 10 6 2 10 6 2 10 6 1 10 6 5 10 5 0 10 0 10/06 11/06 12/06 13/06 14/06 15/06 16/06 Momento (a) #usuários alcançados 17/06 18/06 19/06 20/06 21/06 (b) Visualização Figura 2. URL1: http://twitter.com/worldcup/worldcup A segunda URL analisada é mostrada na Figura 3 e aponta para uma promoção cujo prêmio era uma camisa da seleção brasileira de futebol. Um dos critérios para que um usuário participasse da promoção era re-tweetar um tweet que continha a URL (prática comum de marketing viral no Twitter). Apesar de atingir um número de usuários muito menor que a primeira URL (pouco mais de 10.000 usuários), essa URL apresenta um padrão de propagação interessante. Após o dia 17 de junho, quando a URL atinge um grande número de usuários, ela continua se popularizando expressivamente, o que pode ser visto através da visualização mostrada na Figura 3(b). A taxa de propagação dessa URL é de 1,3%, um valor muito superior ao da primeira URL analisada. 5. DISCUSSÃO Neste artigo, propomos uma metodologia para a análise de propagação de URLs no Twitter. As diferentes etapas da metodologia (coleta de tweets, extração, coleta da rede, processamento e visualização) foram descritas e implementadas no portal Observatório da Web, que tem como objetivo analisar a repercussão de grandes eventos na web. Para demonstrar a aplicabilidade da metodologia proposta, apresentamos um estudo de caso onde são discutidas as análises de duas URLs associadas à copa do mundo. As informações sobre a propagação das URLs analisadas são úteis para o entendimento do padrão de propagação de URLs no Twitter em termos do número de usuários alcançados e também da taxa de propagação. Duas visualizações para a variação do número de usuários alcançados permitem a avaliação da velocidade da propagação das URLs, assim como a identificação dos momentos em que a propagação foi mais efetiva.
Número de Usúarios 1 10 4 1 10 4 8 10 3 6 10 3 4 10 3 2 10 3 0 10 0 17/06 18/06 18/06 19/06 19/06 20/06 20/06 21/06 21/06 22/06 Momento (a) #usuários alcançados (b) Visualização Figura 3. URL2: http://www.tcmoveis.com.br/blog/?p=5656 Este artigo descreve um trabalho em andamento. É de interesse dos autores implementar e avaliar diversas técnicas relacionadas à metodologia apresentada, dentre as quais podemos citar: a identificação de palavras-chave e tópicos associados às URLs, a análise de propagação de outros itens de informação e a identificação de usuários com grande capacidade de propagar informação no Twitter. Referências Anagnostopoulos, A., Kumar, R., and Mahdian, M. (2008). Influence and correlation in social networks. In ACM Int l Conf. on Knowledge Discovery and Data Mining. Cha, M., Haddadi, H., Benevenuto, F., and Gummadi, K. (2010). Measuring user influence in twitter: The million follower fallacy. In AAAI Int l Conf. on Weblogs and Social Media. Cha, M., Mislove, A., and Gummadi, K. P. (2009). A measurement-driven analysis of information propagation in the flickr social network. In ACM Int l Conf. on World Wide Web. Gaffney, D. (2010). #iranelection: Quantifying online activism. In ACM Int l Conf. on World Wide Web. Iribarren, J. L. and Moro, E. (2007). Information diffusion epidemics in social networks. Leskovec, J., Mcglohon, M., Faloutsos, C., Glance, N., and Hurst, M. (2007). Patterns of cascading behavior in large blog graphs. In SIAM Int l Conference on Data Mining. Sakaki, T. and Okazaki Makoto, Matsuo, Y. (2010). Earthquake shakes twitter users: Real-time event detection by social sensors. In ACM Int l Conf. on World Wide Web. Tumasjan, A., Sprenger, T. O., Sandner, P. G., and Welpe, I. M. (2010). Predicting elections with twitter: What 140 characters reveal about political sentiment. In AAAI Int l Conf. on Weblogs and Social Media. Wang, X., Zhai, C., Hu, X., and Sproat, R. (2007). Mining correlated bursty topic patterns from coordinated text streams. In ACM Int l Conf. on Knowledge Discovery and Data Mining.