Você está na página 1de 40

Captulo

2
Explorando Redes Sociais Online: Da Coleta e Anlise de Grandes Bases de Dados s Aplicaes
Fabrcio Benevenuto, Jussara M. Almeida e Altigran S. Silva

Resumo Redes sociais online tm se tornado extremamente populares, levando ao surgimento e crescente popularizao de uma nova onda de aplicaes na Web. Associado a esse crescimento, redes sociais esto se tornando um tema central de pesquisas em diversas reas da Cincia da Computao. Este mini-curso oferece uma introduo ao pesquisador que pretende explorar esse tema. Inicialmente, apresentamos as principais caractersticas das redes sociais mais populares atualmente. Em seguida, discutimos as principais mtricas e anlises utilizadas no estudo dos grafos que formam a topologia das redes sociais. Finalmente, sumarizamos as principais abordagens para coleta e tratamento de dados de redes sociais online e discutimos trabalhos recentes que ilustram o uso de tais tcnicas. Abstract Online social networks have become extremely popular, causing the deployment and increasing popularity of a new wave of applications on the Web. Associated with this popularity growth, online social networks are becoming a key theme in several research areas. This short course offers an introduction to the researcher who aims at exploring this theme. Initially, we present the main characteristics of current online social network applications. Then, we discuss the main metrics and analyses employed to study the graphs that represent the social network topologies. Finally, we summarize the main approaches used to collect and process online social network datasets, and discuss recent work that illustrates the use of such approaches.

64

Minicursos Livro Texto

2.1. Introduo
Desde seu incio, a Internet tem sido palco de uma srie de novas aplicaes, incluindo email, aplicaes par-a-par, aplicaes de comrcio eletrnico assim como vrios servios Web. Atualmente, a Web vem experimentando uma nova onda de aplicaes associada proliferao das redes sociais online e ao crescimento da popularidade da mdia digital. Vrias redes sociais online (OSNs - Online Social Networks) surgiram, incluindo redes de prossionais (ex., LinkedIn), redes de amigos (ex., MySpace, Facebook, Orkut), e redes para o compartilhamento de contedos especcos tais como mensagens curtas (ex., Twitter), dirios e blogs (ex., LiveJournal), fotos (ex., Flickr), e vdeos (ex., YouTube). Redes sociais online tm atrado milhes de usurios. De acordo com a Nielsen Online [99], mdia social, termo usado em referncia a contedo criado e disseminado via interaes sociais, passou na frente de email como a atividade online mais popular. Mais de dois teros da populao online global visita ou participa de redes sociais e blogs. Como comparao, se o Facebook fosse um pas, este seria o terceiro pas mais populoso do mundo, graas aos seus 500 milhes de usurios registrados [5]. Tanta popularidade est associada a uma funcionalidade comum de todas as redes sociais online que permitir que usurios criem e compartilhem contedo nesses ambientes. Este contedo pode variar de simples mensagens de texto comunicando eventos do dia-a-dia at mesmo a contedo multimdia, como fotos e vdeos. Como conseqncia, as estatsticas sobre contedo gerado pelos usurios nesses stios Web so impressionantes. Por exemplo, o Facebook compartilha mais de 60 bilhes de fotos, que ocupam mais de 1.5 PB de espao [10]. A quantidade de contedo que o YouTube armazena em 60 dias seria equivalente ao contedo televisionado em 60 anos, sem interrupo, pelas emissoras norte-americanas NBC, CBS e ABC juntas [12]. De fato, o YouTube foi acessado por mais de 100 milhes de usurios apenas em Janeiro de 2009 [1], com uma taxa de upload de 10 horas de vdeo por minuto [14]. Apesar de tanta popularidade e da enorme quantidade de contedo disponvel, o estudo de redes sociais ainda est em sua infncia, j que esses ambientes esto experimentando novas tendncias e enfrentando diversos novos problemas e desaos. A seguir sumarizamos alguns elementos motivadores para o estudo de redes sociais online. Comercial: Com usurios passando muito tempo navegando em redes sociais online, esses stios Web tm se tornado um grande alvo para propagandas. De fato, em 2007, 1,2 bilhes de dlares foram gastos em propagandas em redes sociais online no mundo todo, e esperado que este nmero triplique at 2011 [21]. Alm disso, usurios de redes sociais online compartilham e recebem uma grande quantidade de informao, inuenciando e sendo inuenciados por seus amigos [40]. Conseqentemente, redes sociais online esto se tornando cada vez mais um alvo de campanhas polticas [59] e de diversas outras formas de marketing viral, onde usurios so encorajados a compartilhar anncios sobre marcas e produtos com seus amigos [78]. Sociolgica: No passado o estudo de redes sociais era um domnio de socilogos e antroplogos, que utilizavam, como ferramentas tpicas para se obter dados,

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

65

entrevistas e pesquisas com usurios voluntrios [113]. Como conseqncia, muitos desses estudos foram realizados com base em amostras de dados pequenas e possivelmente pouco representativas. Com a popularizao de aplicaes de redes sociais online, surgiu a oportunidade de estudos nesse tema com o uso de grandes bases de dados, coletadas de tais aplicaes. Sistemas como Facebook, Twitter, Orkut, MySpace e YouTube possuem milhes de usurios registrados e bilhes de elos que os conectam. Redes sociais online permitem o registro em larga escala de diversos aspectos da natureza humana relacionados comunicao, interao entre as pessoas e ao comportamento humano, em geral: elas permitem que as pessoas interajam mais, mantenham contato com amigos e conhecidos e se expressem e sejam ouvidas por uma audincia local ou at mesmo global. De fato, redes sociais online vm funcionando como um novo meio de comunicao, modicando aspectos de nossas vidas. Melhorias dos sistemas atuais: Assim como qualquer sistema Web, redes sociais online so vulnerveis a novas tendncias e esto sujeitas a experimentarem uma rpida transferncia de seus usurios para outros sistema, sem aviso prvio. Por exemplo, inicialmente o MySpace experimentou um crescimento exponencial no nmero de usurios. Entretanto, este crescimento foi seguido por uma forte queda depois de abril de 2008 devido a um aumento no nmero de usurios do Facebook [108]. Um outro exemplo o Orkut, que inicialmente cresceu muito rapidamente em diversos lugares, mas que teve sua popularidade concretizada somente em alguns pases. Dentre esses pases, o Brasil o com maior nmero de usurios registrados [11]. Vrias razes podem explicar este tipo de fenmeno, incluindo a interface e novas utilidades do sistema, problemas de desempenho e caractersticas dos usurios, etc. Finalmente, o grande volume de dados disponveis em diferentes redes sociais online abre um novo leque de opes para pesquisas relacionadas recuperao de contedo, onde estratgias de busca e recomendao de usurios e contedo so cada vez mais importantes. Outro aspecto importante est relacionado ao trfego gerado pelas redes sociais online. Intuitivamente, existe uma diferena crucial entre publicar contedo na Web tradicional e compartilhar contedo atravs de redes sociais online. Quando as pessoas publicam algum contedo na Web, elas tipicamente fazem isso para que todos os usurios da Internet, em qualquer lugar, possam acessar. Por outro lado, quando usurios publicam contedo em redes sociais online, eles geralmente possuem uma audincia em mente, geralmente, seus amigos. Algumas vezes, a audincia explicitamente denida por um usurio ou pela poltica do sistema. Conseqentemente, redes sociais online constituem uma classe nica de aplicaes com potencial para remodelar os padres de trfego na Internet. Estudar aspectos de sistemas relacionados a redes sociais pode ser de grande importncia para a prxima gerao da infra-estrutura da Internet e para o projeto de sistemas de distribuio de contedo mais ecientes, ecazes e robustos [71, 102]. Segurana e contedo indesejvel: Redes sociais online esto cada vez mais se tornando alvo de usurios maliciosos ou oportunistas que enviam propagandas no

66

Minicursos Livro Texto

solicitadas, spam, e at mesmo phishing. O problema se manifesta de diversas maneiras, tais como a incluso de vdeos contendo spams em listas de vdeos mais populares [29, 26], o envio de spam no Twitter [24], a incluso de metadados (particularmente tags) que no descrevem adequadamente o contedo associado (p.ex: tag spamming) [27], etc. Contedo no solicitado consome a ateno humana, talvez o recurso mais importante na era da informao. Em ltima instncia, o rudo e o distrbio causados por alguns usurios reduzem a efetividade da comunicao online.

Redes sociais online so ambientes perfeitos para o estudo de vrios temas da computao, incluindo sistemas distribudos, padres de trfego na Internet, minerao de dados, sistemas multimdia e interao humano-computador. Alm disso, por permitir que usurios criem contedo, redes sociais vm se tornando um tema chave em pesquisas relacionadas organizao e tratamento de grandes quantidades de dados, alm de constiturem um ambiente ideal para extrao de conhecimento e aplicao de tcnicas de minerao de dados. Neste mini-curso apresentamos uma viso geral sobre redes sociais, oferecendo uma base necessria ao pesquisador que pretende explorar o tema. Inicialmente, apresentamos as principais caractersticas das redes sociais mais populares atualmente. Em seguida, discutimos as principais mtricas e anlises utilizadas no estudo dos grafos que formam a topologia das redes sociais. Finalmente, sumarizamos as principais abordagens utilizadas para coletar e tratar dados de redes sociais online e discutimos trabalhos recentes que utilizaram essas tcnicas.

2.2. Denies e Caractersticas de Redes Sociais Online


Esta seo apresenta uma viso geral sobre as redes sociais online, suas principais caractersticas e mecanismos de interao entre os usurios. 2.2.1. Denio O termo rede social online geralmente utilizado para descrever um grupo de pessoas que interagem primariamente atravs de qualquer mdia de comunicao. Conseqentemente, baseado nessa denio, redes sociais online existem desde a criao da Internet. Entretanto, neste trabalho, ns utilizaremos uma denio um pouco mais restrita, adotada em trabalhos anteriores [35, 85]. Ns denimos uma rede social online como um servio Web que permite a um indivduo (1) construir pers pblicos ou semipblicos dentro de um sistema, (2) articular uma lista de outros usurios com os quais ele(a) compartilha conexes e (3) visualizar e percorrer suas listas de conexes assim como outras listas criadas por outros usurios do sistema. Com base nessa denio, existem vrias redes sociais online disponveis na Web, que variam de acordo com seus objetivos primrios. A Tabela 2.1 apresenta uma lista com vrias redes sociais online populares atualmente, juntamente com seus principais propsitos. Uma lista atualizada e exaustiva de redes sociais online, com mais de 150 stios Web, pode ser encontrada em [8].

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

67

Nome Orkut Facebook MySpace Hi5 LinkedIn YouTube Flickr LiveJournal Digg Twitter LastFM

Propsito Amizades Amizades Amizades Amizades Professionais Compartilhamento de vdeos Compartilhamento de fotos Blogs e dirios Compartilhamento de (bookmarks) Troca de mensagens curtas Compartilhamento de rdio/msicas

URL http://www.orkut.com http://www.facebook.com http://www.myspace.com http://www.hi5.com http://www.linkedin.com http://www.youtube.com http://www.ickr.com http://www.livejournal.com http://digg.com http://twitter.com http://www.last.fm

Tabela 2.1. Algumas Redes Sociais Online Populares

2.2.2. Elementos das Redes Sociais Online Nesta seo, discutimos vrias funcionalidades oferecidas pelas principais aplicaes de redes sociais online atuais. O objetivo desta seo no prover uma lista completa e exaustiva de funcionalidades, mas apenas descrever as mais relevantes. Pers dos usurios: Redes sociais online possuem muitas funcionalidades organizadas ao redor do perl do usurio, na forma de uma pgina individual, que oferece a descrio de um membro. Pers podem ser utilizados no s para identicar o indivduo no sistema, mas tambm para identicar pessoas com interesses em comum e articular novas relaes. Tipicamente, pers contm detalhes demogrcos (idade, sexo, localizao, etc.), interesses (passatempos, bandas favoritas, etc.), e uma foto. Alm da adio de texto, imagens e outros objetos criados pelo usurio, o perl de um usurio na rede social tambm contm mensagens de outros membros e listas de pessoas identicadas como seus amigos na rede. Pers so geralmente acessveis por qualquer um que tenha uma conta na rede social online ou podem ser privados, de acordo com as polticas de privacidades denidas pelo usurio. Recentemente, Boyd e colaboradores [34] mostraram que, para a maior parte dos usurios de redes sociais online, existe uma forte relao entre a identidade do indivduo real e seu perl na rede social. Atualizaes: Atualizaes so formas efetivas de ajudar usurios a descobrir contedo. Para encorajar usurios a compartilhar contedo e navegar por contedo compartilhado por amigos, redes sociais online geralmente fazem as atualizaes imediatamente visveis aos amigos na rede social. Burke e colaboradores [39] conduziram um estudo utilizando dados de 140,000 novos usurios do Facebook para determinar que atividades como atualizaes so vitais para que novos usurios contribuam para o sistema. Como atualizaes podem receber comentrios de outros usurios, elas tambm so formas especiais de comunicao em redes sociais online.

68

Minicursos Livro Texto

Comentrios: A maior parte das aplicaes de redes sociais online permite que usurios comentem o contedo compartilhado por outros. Alguns sistemas tambm permitem que usurios adicionem comentrios nos pers de outros usurios. Comentrios so um meio primordial de comunicao em redes sociais online, e tambm podem ser interpretados como expresso de relaes sociais [19, 47]. Como exemplo, usurios do YouTube podem comentar os vdeos armazenados por outros no sistema, enquanto que tanto no Facebook quanto no Orkut, usurios podem adicionar comentrios s fotos de outros. Da mesma forma, usurios do LiveJournal podem postar comentrios em blogs, etc. Avaliaes: Em muitas redes sociais online, o contedo compartilhado por um usurio pode ser avaliado por outros usurios. Avaliaes podem aparecer em diferentes nveis de granularidade e formas. No Facebook, por exemplo, usurios podem apenas gostar de uma postagem, clicando no boto I like this. De fato, estatsticas recentes indicam que cada usurio do Facebook avalia, em mdia, 9 objetos por ms [5]. Ja no YouTube, vdeos podem ser avaliados com at 5 estrelas, de forma similar avaliao empregada na categorizao de hotis. O YouTube ainda prov uma avaliao binria (positiva ou negativa) para os comentrios recebidos por vdeos, na tentativa de ltrar comentrios ofensivos ou contendo alguma forma de spam. Avaliaes de contedo so teis de vrias formas. Como exemplo, elas ajudam usurios de sistemas como o YouTube a encontrar e identicar contedo relevante. Avaliaes podem ainda ajudar administradores a identicar contedo de baixa qualidade ou mesmo contedo inapropriado. Alm disso, avaliaes podem ser utilizadas para identicar contedo em destaque, para suportar sistemas de recomendao, etc. Uma rede social online que coloca as avaliaes dos usurios no centro do sistema o Digg. O Digg permite que usurios avaliem URLs, notcias ou estrias e utiliza aquelas mais votadas para expor o contedo mais popular [77]. Listas de Favoritos: Vrias aplicaes sociais utilizam listas de favoritos para permitir que usurios selecionem e organizem seu contedo. Listas de favoritos ajudam usurios a gerenciar seu prprio contedo e podem ser teis para recomendaes sociais. Como exemplo, usurios podem manter listas de vdeos favoritos no YouTube e de fotos favoritas no Flickr. Nesses sistemas, usurios podem navegar na lista de favoritos de outros usurios para buscar novos contedos [42]. Conseqentemente, listas de favoritos tambm facilitam a descoberta de contedo e a propagao de informao. Sistemas como o Orkut e o Twitter tambm provem listas de favoritos (fs). Listas de Mais Populares (Top Lists): Tipicamente, redes sociais online que tm o compartilhamento de contedo como elemento central do sistema, como o YouTube que centrado no compartilhamento de vdeos, provem listas de contedo mais popular ou usurios mais populares. Geralmente, essas listas so baseadas em avaliaes ou outras estatsticas do sistema relativas ao contedo (ex: nmero de visualizaes, avaliaes, ou comentrios) ou relativas aos usurios (ex: nmero de assinantes).

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

69

Metadados: Em vrias aplicaes de redes sociais online, tais como o YouTube e o Flickr, usurios tipicamente associam metadados, como ttulo, descrio e tags, ao contedo compartilhado. Metadados so essenciais para recuperao de contedo em redes sociais online, uma vez que grande parte dos servios de informao (p.ex: busca, organizao de contedo, recomendao, propaganda) ainda utilizam os metadados (particularmente as tags) como principal fonte de dados [33].

2.3. Teoria de Redes Complexas


da rea de redes complexa Redes sociais online so inerentemente redes complexas. Consequentemente, vrios estudos recentes analisaram as caractersticas de diferentes redes sociais online utilizando como base teorias existentes da rea de redes complexas [15, 87, 50, 72, 79, 23, 28]. De fato, o estudo de redes complexas cobre um grande nmero de reas e sua teoria tem sido utilizada como ferramenta para entender vrios fenmenos, incluindo o espalhamento de epidemias [88], propagao de informao [115], busca na Web [38], e consequncias de ataques a redes de computadores [17]. A seguir, vrias propriedades estatsticas e mtricas comumente utilizadas para analizar e classicar rede complexas so apresentadas na seo 2.3.1. As sees 2.3.2 e 2.3.3 discutem propriedades especcas comumente associadas a vrias redes complexas, a saber, redes small-world e redes power-law, respectivamente. Uma reviso detalhada sobre mtricas e teoria de redes complexas pode ser encontrada na referncia [93]. 2.3.1. Mtricas para o Estudo de Redes Complexas Uma rede um conjunto de elementos, que chamamos de vrtices ou nodos, com conexes entre eles, chamadas de arestas. A estrutura topolgica de uma rede pode ser ento modelada por um grafo, que, por sua vez, pode ser caracterizado a partir de diversas mtricas, discutidas a seguir. Assume-se que o leitor tenha um conhecimento sobre a terminologia utilizada em teoria de grafos. 2.3.1.1. Grau dos Vrtices Uma caracterstica importante da estrutura de uma rede a distribuio dos graus de seus vrtices. Tal distribuio j foi caraterizada em vrias redes (ex: redes de emails[64], a topologia da Internet [56], a Web [22], e redes neurais [36]) como seguindo uma lei de potncia. Em outras palavras, a probabilidade de um nodo ter grau k proporcional a k , Consequentemente, uma mtrica comumente utilizada para comparar diferentes redes o expoente , obtido atravs de uma regresso linear. Valores tpicos para o expoente cam entre 1.0 e 3.5 [54]. Para redes direcionadas, comum analisar as distribuies doso grau dos nodos em ambas as direes, isto , a distribuio do grau de entrada e a distribuio do grau de sada. Como exemplo, a Figura 2.1 mostra as distribuies dos graus de entrada (esquerda) e de sada (direita) para um grafo formado a partir das interaes entre usurios de vdeos do YouTube [23, 28]. Note que a curva da regresso linear, utilizada para se calcular o expoente , tambm exibida nesses grcos. Ferramentas como o Gnuplot [6] e o Matlab [9] podem ser utilizados para realizar a regresso e calcular o valor de . Para

70

Minicursos Livro Texto

105 10 # de nodos
4

= 2.096 fit, R2 = 0.987 # de nodos

106 10
5

= 2.759 fit, R2 = 0.987

103 10
2

104 103 102 101 100 0 10

101 100 0 10 10 10 10 Grau de entrada


1 2 3

10

101 102 Grau de saida

103

Figura 2.1. Distribuies dos Grau sde Entrada e de Sada em um Grafo de Interaes entre Usurios atravs de Vdeos do YouTube

vericar a acurcia da regresso, comum medir o coeciente de determinao R2 [109]. Quanto mais prximo o valor de R2 for de 1 (regresso perfeita), menor ser a diferena entre o modelo de regresso e os dados reais.

2.3.1.2. Coeciente de Agrupamento O coeciente de agrupamento (clustering coefcient) de um nodo i, cc(i), a razo entre o nmero de arestas existentes entre os vizinhos de i e o nmero mximo de arestas possveis entre estes vizinhos. Como exemplo, a Figura 2.2 mostra o valor do coeciente de agrupamento para o nodo escuro em trs cenrios diferentes1 . No primeiro, todos os vizinhos do nodo esto conectados entre si e, conseqentemente, o cc do nodo 1. No segundo cenrio, existe apenas 1 aresta entre os vizinhos do nodo dentre as 3 possveis, deixando o nodo com cc = 1/3. No ltimo cenrio, no h nenhuma aresta entre os vizinhos do nodo escuro e, portanto, o cc do nodo 0.

Figura 2.2. Clculo do Coeciente de Agrupamento de um Nodo em Trs Cenrios Diferentes

Podemos notar que o coeciente de agrupamento representa uma medida da densidade de arestas estabelecidas entre os vizinhos de um nodo. O coeciente de agrupamento
1 Arestas

tracejadas no existem e apenas ilustram as possveis conexes entre os vizinhos do nodo

escuro.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

71

de uma rede, CC, calculado como a mdia dos coeciente de agrupamento de todos os seus nodos. 2.3.1.3. Componentes Um componente em um grafo um conjunto de nodos, onde cada nodo possui um caminho para todos os outros nodos do conjunto. Para grafos direcionados, um componente chamado de fortemente conectado (SCC - Strongly Connected Component) quando existe um caminho direcionado entre cada par de nodos do conjunto. Um componente fracamente conectado (WCC - Weakly Connected Component) se o caminho no direcionado. Um trabalho que se tornou referncia no estudo de componentes em redes complexas aborda a estrutura da Web representada por um grafo em que nodos so pginas Web e arestas so elos existentes entre as pginas [38]. Os autores propem um modelo que representa como os componentes no grafo da Web se relacionam. Este modelo, aplicado somente em grafos direcionados, possui um componente central que o SCC, chamado tambm de core, e outros grupos de componentes que podem alcanar o SCC ou serem alcanados por ele. O modelo cou conhecido como bow tie [38], pois a gura que ilustrada o modelo lembra uma gravata borboleta.

(a) Web

(b) Frum de Java

(c) Interaes com vdeo Figura 2.3. Estrutura dos Componentes da Web [38], do Frum de Java [118] e do Grafo de Interaes de Usurios do YouTube [28]

Este modelo tem sido utilizado por outros estudos como forma de comparar a organizao dos componentes de um grafo direcionado [118, 28]. A Figura 2.3, por exemplo, ilustra o uso do modelo bow tie para comparar a estrutura dos componentes de trs

72

Minicursos Livro Texto

redes diferentes, a saber, a rede Web, uma rede formada pelas conexes estabelecidas em um Frum de Java e a rede estabelecidas entre usurios do YouTube. O componente central, core, das guras corresponde frao dos nodos do grafo que fazem parte do SCC. O componente in contm os nodos que apontam para algum nodo do core, mas no so apontados por nodos desse componente. Finalmente, o componente out corresponde aos nodos que so apontados por nodos do core. Note que h diferenas estruturais signicativas entre as 3 redes: a rede Web muito mais balanceada, em termos do tamanho dos componentes, enquanto que, para as outras duas, o componente in contm um percentual muito maior dos nodos.

2.3.1.4. Distncia Mdia e Dimetro A distncia mdia de um grafo o nmero mdio de arestas em todos todos os caminhos mnimos existentes entre todos os pares de nodos do grafo. Normalmente, a distncia mdia computada apenas no SCC para grafos direcionados ou no WCC para grafos no direcionados, j que no existe caminho entre nodos localizados em componentes diferentes. Outra mtrica relacionada o dimetro do grafo. O dimetro denido como a distncia do maior caminho mnimo existente no grafo e, em geral, tambm computado somente para nodos do WCC ou do SCC.

2.3.1.5. Assortatividade De acordo com Newman [92], assortatividade uma medida tpica de redes sociais. Uma rede exibe propriedades assortativas quando nodos com muitas conexes tendem a se conectar a outros nodos com muitas conexes. Para caracterizar a assortatividade de uma rede, medimos o grau mdio de todos os vizinhos dos nodos com grau k, dado por knn(k). A assortatividade ou disassortatividade de uma rede geralmente estimada avaliando os valores de knn(k) em funo de k. Valores crescentes indicam assortatividade, isto , nodos com graus maiores tendem a se conectar a nodos com um nmero maior de conexes. Valores decrescentes de knn(k) em funo de k, por sua vez, indicam uma rede disassortativa.

2.3.1.6. Betweenness Betweeness uma medida relacionada centralidade dos nodos ou de arestas na rede. O betweeness B(e) de uma aresta e denido como o nmero de caminhos mnimos entre todos os pares de nodos em um grafo que passam por e [95]. Se existem mltiplos caminhos mnimos entre um par de nodos, cada caminho recebe um peso de forma que a soma dos pesos de todos os caminhos seja 1. Conseqentemente, o betweenness de uma aresta e pode ser expressado como: B(e) = e (u, v) (u, v)

uV,vV

(1)

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

73

onde (u, v) representa o nmero de caminhos mnimos entre u e v, e e (u, v) representa o nmero de caminhos mnimos entre u e v que incluem e. O betweenness de uma aresta indica a importncia dessa aresta no grafo em termos de sua localizao. Arestas com maior betweenness fazem parte de um nmero maior de caminhos mnimos e, portanto, so mais importantes para a estrutura do grafo. De forma similar, o betweenness pode ser computado para um nodo ao invs de uma aresta. Neste caso, a medida do betweenness mede o nmero de caminhos mnimos que passam pelo dado nodo. Nodos que possuem muitos caminhos mnimos que passam por eles possuem maior betweenness, indicando uma maior importncia para a estrutura da rede. 2.3.1.7. Reciprocidade Uma forma interessante de se observar a reciprocidade de um nodo i em um grafo direcionado medindo a porcentagem dos nodos apontados por i que apontam para ele. Em outras palavras, a reciprocidade (R(i)) dada por: R(i) = |O(i) I(i)| |O(i)| (2)

onde O(i) o conjunto de nodos apontados por i e I(i) o conjunto de nodos que apontam para i. Outra mtrica interessante de ser observada o coeciente de reciprocidade , uma mtrica que captura a reciprocidade das interaes em toda a rede [60]. O coeciente de reciprocidade denido pelo coeciente de correlao entre entidades da matriz de adjacncia representativa do grafo direcionado. Em outras palavras, seja a matriz a denida como ai j = 1 se h uma aresta de i para j no grafo, e ai j = 0, caso contrrio. Denimos a reciprocidade da rede como :

i= j (ai j a)(a ji a) , 2 i= j (ai j a)

(3)

onde o valor mdio a = i= j ai j /N(N 1) e N o nmero de usurios no grafo. O coeciente de reciprocidade indica se o nmero de arestas recprocas na rede maior ou menor do que o de uma rede aleatria. Se o valor maior do que 0, a rede recproca; caso contrrio, ela anti-recproca. 2.3.1.8. PageRank O PageRank um algoritmo interativo que assinala um peso numrico para cada nodo com o propsito de estimar sua importncia relativa no grafo. O algoritmo foi inicialmente proposto por Brin and Page [37] para ordenar resultados de busca do prottipo de mquina de busca da Google. A intuio por trs do PageRank que uma pgina Web

74

Minicursos Livro Texto

importante se existem muitas pginas apontando para ela ou se existem pginas importantes apontando para ela. A equao que calcula o PageRank (PR) de um nodo i, PR(i), denida da seguinte forma: PR(v) Nv vS(i)

PR(i) = (1 d) + d

(4)

onde S(i) o conjunto de pginas que apontam para i, Nv denomina o nmero de arestas que saem do nodo v, e o parmetro d um fator que pode ter valor entre 0 e 1. O algoritmo do PageRank tem sido aplicado em outros contextos, como por exemplo, para encontrar usurios experientes em fruns especializados [118] e usurios inuentes no Twitter [116, 73]. Alm disso, existem outras modicaes do PageRank com propsitos especcos, como por exemplo, a deteco de spam na Web [66]. 2.3.2. Redes Small-World O conceito de redes small-world cou bastante conhecido com o famoso experimento de Milgram [84]. Este experimento consistiu de um grupo de voluntrios tentando enviar uma carta para uma pessoa alvo atravs de outras pessoas que eles conheciam. Milgram enviou cartas a vrias pessoas. As cartas explicavam que ele estava tentando atingir uma pessoa especca em uma cidade dos EUA e que o destinatrio deveria repassar a carta para algum que ele achasse que poderia levar a carta o mais prximo do seu destino nal, ou entreg-la diretamente, caso o destinatrio nal fosse uma pessoa conhecida. Antes de enviar a carta, entretanto, o remetente adicionava seu nome ao m da carta, para que Milgram pudesse registrar o caminho percorrido pela carta. Das cartas que chegaram com sucesso ao destino nal, o nmero mdio de passos requerido para o alvo foi 6, resultado que cou conhecido como o princpio dos seis graus de separao. Em termos das propriedades das redes sociais que discutimos, uma rede pode ser considerada small-world se ela tiver duas propriedades bsicas: coeciente de agrupamento alto e dimetro pequeno [114]. Estas propriedades foram vericadas em vrias redes como a Web [18, 38], redes de colaborao cientca [91, 94] em que pesquisadores so nodos e arestas ligam co-autores de artigos, redes de atores de lmes [20] em que atores so nodos e arestas ligam atores que participaram do mesmo lme, e redes sociais online [15, 87, 50, 79, 23, 28]. Em particular, Mislove e colaboradores [87] vericaram propriedades small-world em quatro redes sociais online: LiveJournal, Flickr, Orkut, e YouTube. 2.3.3. Redes Power-Law e Livres de Escala Redes cujas distribuies dos graus dos nodos seguem uma lei de potncia (Seo 2.3.1.1) so ditas redes power-law. Redes livres de escala (scale free) so uma classe de redes que seguem leis de potncia caracterizadas pela seguinte propriedade: nodos de grau alto tendem a se conectar a outros nodos de grau alto. Barabsi e colaboradores [22] propuseram um modelo para gerar redes livre de escala, introduzindo o conceito de conexo preferencial (preferential attachment). O modelo diz que a probabilidade de um nodo se conectar a outro nodo proporcional ao seu grau. Os autores do modelo ainda

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

75

mostraram que, sob certas circunstncias, este modelo produz redes que seguem leis de potncia. Mais recentemente, Li e colaboradores [80] criaram uma mtrica para medir se uma rede livre de escala ou no, alm de prover uma longa discusso sobre o tema.

2.4. Tcnicas de Coleta de Dados


Em um passado recente, redes sociais eram um domnio de socilogos e antroplogos, que utilizavam pesquisas e entrevistas com pequenos grupos de usurios como ferramentas de coleta de dados [113]. Com o surgimento das redes sociais online, a obteno de dados reais em larga escala se tornou possvel, e pesquisadores de diversas reas da computao comearam a realizar coletas de dados. Diferentes reas de pesquisa demandam diferentes tipos de dados e, por isso, existem vrias formas de se obter dados de redes sociais online. A Figura 2.4 apresenta possveis pontos de coleta de dados, que variam desde entrevistas com os usurios at instalao de coletores localizados em servidores proxy ou em aplicaes. A seguir discutimos essas diferentes abordagens, bem como trabalhos que ilustram o uso dessas estratgias. 2.4.1. Dados dos Usurios

Figura 2.4. Possveis Pontos de Coleta de Dados

Um mtodo comum de se analisar o uso de redes sociais online consiste em conduzir entrevistas com usurios desses sistemas. Em particular, esta estratgia tem sido bastante empregada pela comunidade da rea de interface homem-mquina [107, 69, 43, 32, 97], para a qual entrevistas estruturadas so as formas mais populares de obteno de dados. Como exemplo, atravs de entrevistas com usurios do Facebook, Joinson e seus colaboradores [69] identicaram vrias razes pelas quais usurios utilizam o sistema, tais como conexo social, compartilhamento de interesses, compartilhamento e recuperao de contedo, navegao na rede social e atualizao do seu estado atual. Chapman e Lahav [43] conduziram entrevistas e analisaram os padres de navegao de 36 usurios de quatro nacionalidades diferentes para examinar diferenas etnogrcas no uso de redes sociais online.

76

Minicursos Livro Texto

2.4.2. Dados de Pontos Intermedirios Existem duas tcnicas comuns utilizadas para coletar dados de pontos de agregao de trfego na rede. A primeira consiste em coletar os dados que passam por um provedor de servios Internet (ISP) e ltrar as requisies que correspondem a acessos s rede sociais online. A segunda consiste em coletar dados diretamente de um agregador de redes sociais. A seguir, discutimos alguns trabalhos que zeram o uso dessas estratgias. 2.4.2.1. Servidores Proxy

Figura 2.5. Exemplo de um Servidor Proxy Intermediando o Trfego entre Clientes e Servidores

Coletar dados de um servidor proxy tem sido uma estratgia utilizada em vrios estudos sobre o trfego da Internet [52, 65, 82, 117]. A Figura 2.5 ilustra como um servidor proxy funciona como um agregador de trfego de seus clientes, podendo ser utilizados para delimitar uma poro da rede, composta por computadores em uma mesma localizao geogrcas. Dado o crescente interesse por vdeos na Web, alguns trabalhos recentes utilizaram servidores proxy para obter dados do trfego gerado por sistemas de compartilhamento de vdeos, como o YouTube. Gill e colaboradores [61] caracterizaram o trfego do YouTube coletando dados de um servidor proxy localizado na universidade de Calgary, no Canad. Eles mostraram que requisies de HTTP GET, utilizadas para fazer o download de contedo do YouTube, correspondem a 99.87% do total das requisies que passam pelo servidor proxy. Eles ainda caracterizaram diversas mtricas relacionadas a estas requisies tais como a durao, a idade e a categoria dos vdeos. Mais recentemente, os mesmos autores caracterizam sesses de usurios no YouTube [62]. Eles mostraram que uma sesso tpica dura cerca de 40 minutos, caracterizando tambm o tempo entre sesses e os tipos de contedo transferidos em cada sesso. Finalmente, Zink e colaboradores [119] tambm estudaram o trfego de vdeos do YouTube coletado no servidor proxy de uma universidade. Eles tambm analisaram, via simulao, os benefcios da adoo de abordagens de caches locais e globais para vdeos bem como do uso de arquiteturas P2P para

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

77

distribuio de vdeos. De maneira geral, eles mostraram que essas abordagens poderiam reduzir signicativamente o volume de trfego, permitindo acesso aos vdeos de forma mais rpida. Em um trabalho recente, Schneider e colaboradores [105] extraram dados de redes sociais online de um provedor de acesso a Internet e reconstruram aes realizadas pelos usurios em suas navegaes por diferentes redes sociais online. Em outras palavras, eles criaram o que foi chamado de clickstream [44] para redes sociais online, capturando cada passo da navegao dos usurios do ISP. Eles discutiram amplamente a metodologia de reconstruo dos acessos dos usurios e, com base nesses dados, analisaram as seqncias de requisies realizadas pelos usurios vrios sistemas, incluindo o Facebook. 2.4.2.2. Agregadores de Redes Sociais Agregadores de redes sociais so sistemas que permitem acesso a vrias redes sociais simultaneamente, atravs de um portal nico. Esses sistemas ajudam usurios que utilizam vrias redes sociais online a gerenciar seus pers de uma forma mais simples e unicada [70, 106]. Ao se conectarem a um agregador de redes sociais online, usurios podem acessar suas contas atravs de uma interface nica, sem precisar se conectar em cada rede social separadamente. Isto feito atravs de uma conexo HTTP em tempo real realizada em duas etapas: a primeira etapa ocorre entre o usurio e o agregador de redes sociais, enquanto a segunda etapa ocorre entre o sistema agregador e as redes sociais. Agregadores tipicamente comunicam com redes sociais online atravs de APIs, como o OpenSocial [7], e todo o contedo exibido atravs da interface do sistema agregador. A Figura 2.6 descreve o esquema de interao entre os usurios, um sistema agregador e algumas redes sociais online. Atravs dessa interface, um usurio pode utilizar vrias funcionalidades de cada rede social que ele est conectado, tais como checar atualizaes de amigos, enviar mensagens e compartilhar fotos.

Figura 2.6. Ilustrao de um Usurio se Conectando a Mltiplas Redes Sociais Online Simultaneamente Atravs de um Portal Agregador

Recentemente, a partir de uma colaborao com um agregador de redes sociais online, ns coletamos dados da navegao dos usurios (i.e., clickstream) em 4 redes sociais online: Orkut, Hi5, MySpace e LinkedIn [30]. A Tabela 2.2 mostra o nmero de usurios, sesses e requisies HTTP para cada uma dessas redes. Baseados nesses dados e em dados coletados do Orkut, ns examinamos o comportamento dos usurios

78

Minicursos Livro Texto

nas redes sociais online, caracterizando as interaes estabelecidas entre eles atravs das vrias atividades realizadas.

# usurios # sesses Orkut 36.309 57.927 515 723 Hi5 MySpace 115 119 85 91 LinkedIn Total 37.024 58.860

# requisies 787.276 14.532 542 224 802.574

Tabela 2.2. Sumrio dos Dados Obtidos de um Agregador de Redes Sociais Online

2.4.3. Dados de Servidores de Redes Sociais Online Idealmente, servidores de aplicaes de redes sociais online so os locais mais adequados para a coleta de dados, uma vez que eles tm uma viso completa de todas as aes e atividades realizadas por todos os usurios do sistema um dado perodo de tempo. Entretanto, o acesso a dados armazenados por estes servidores, ainda que anonimizados, tipicamente muito difcil. Dentre os poucos trabalhos que utilizaram dados obtidos diretamente de servidores de redes sociais online, podemos citar o estudo de Chun e seus colaboradores [47] sobre as interaes textuais entre os usurios do Cyworld, uma rede social bastante popular na Coria do Sul. Eles compararam as propriedades estruturais da rede de amizades explcita criada naquela aplicao com as propriedades da rede implcita estabelecida a partir de trocas de mensagens no livro de visitas do Cyworld, discutindo diversas similaridades e diferenas. Citamos tambm o trabalho de Baluja e colaboradores, que utilizaram dados do histrico de navegao de usurios do YouTube para criar um grafo onde cada vdeo um nodo e arestas ligam vdeos freqentemente vistos em seqncia. Baseados nesse grafo, eles criaram um mecanismo capaz de prover sugestes de vdeos personalizadas para os usurios do YouTube. Finalmente, Duarte e seus colaboradores [53] caracterizaram o trfego em um servidor de blogs do UOL (www.uol.com.br), enquanto ns estudamos a navegao dos usurios em um servidor de vdeos do UOL, chamado UOL Mais [25]. Dada a diculdade em se obter dados diretamente de servidores de redes sociais online, uma estratgia comum consiste em visitar pginas de redes sociais com o uso de uma ferramenta automtica, que chamamos de crawler ou rob, e coletar sistematicamente informaes pblicas de usurios e objetos. Tipicamente, os elos entre usurios de uma rede social online podem ser coletados automaticamente, permitindo que os grafos de conexes entre os usurios sejam reconstrudos. Essa estratgia tem sido amplamente utilizada em uma grande variedade de trabalhos, incluindo estudos sobre a topologia das redes sociais online [87, 16], padres de acesso no YouTube [41] e interaes reconstrudas atravs de mensagens trocadas pelos usurios [112]. A seguir discutimos vrios aspectos relacionados coleta de dados de redes sociais online.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

79

Figura 2.7. Exemplo de Busca em Largura em um Grafo

2.4.3.1. Coleta por Amostragem Idealmente, sempre mais interessante coletar o grafo inteiro de uma rede social online para evitar que a coleta seja tendenciosa a um grupo de usurios da rede. Entretanto, na maior parte das vezes, no h uma forma sistemtica de se coletar todos os usurios de uma rede social online. Para esses casos necessrio coletar apenas parte do grafo. Uma abordagem comumente utilizada, chamada snowball (ou bola de neve), consiste em coletar o grafo de uma rede social online seguindo uma busca em largura, como ilustra a Figura 2.7. A coleta inicia-se a partir de um nodo semente. Ao coletar a lista de vizinhos desse nodo, novos nodos so descobertos e ento coletados no segundo passo, que s termina quando todos os nodos descobertos no primeiro passo so coletados. No passo seguinte todos os nodos descobertos no passo anterior so coletados, e assim sucessivamente. Recomenda-se o uso de um grande nmero de nodos sementes para evitar que a coleta no que restrita a um pequeno componente do grafo. Um ponto crucial sobre a coleta por snowball a interrupo da coleta em um passo intermedirio, antes que todos os nodos alcanvels pela busca em largura sejam atingidos. Esta interrupo pode ter que ser forada para tornar a coleta vivel. Em particular, a busca completa em componentes muito grandes pode gastar um tempo excessivamente longo e proibitivo. Entretanto, importante ressaltar que o resultado de uma coleta parcial pode gerar medidas tendenciosas, tais como distribuies de graus dos nodos com uma tendncia maior para valores grandes, o que pode, em ltima instncia, afetar as anlises e concluses observadas. Em outras palavras, os dados obtidos via coleta por snowball com interrupo precisam ser tratados e analisados com cautela. Em outras palavras, o tipo de anlise a ser feita precisa ser considerado. Por exemplo, se realizarmos 3 passos da coleta, podemos calcular, com preciso, o coeciente de agrupamento dos nodos semente. Entretanto, se quisermos computar o coeciente de agrupamento mdio de toda a rede ou outras mtricas globais como distribuio de graus, distncia mdia, etc., a coleta por snowball pode resultar em nmeros tendenciosos caso ela no inclua pelo menos um componente completo representativo da rede completa [76, 16]. Uma abordagem bastante difundida consiste em coletar o maior componente fracamente conectado (WCC) do grafo. Mislove e colaboradores [87] argumentam que o

80

Minicursos Livro Texto

maior WCC de um grafo estruturamente a parte mais interessante de ser analisada, pois o componente que registra a maior parte das atividades dos usurios. Alm disso, eles mostram que usurios no includos no maior WCC tendem a fazer parte de um grande grupo de pequenos componentes isolados ou at mesmo totalmente desconectados. A coleta de um componente inteiro pode ser realizada com uma estratgia baseada em um esquema de busca em largura ou busca em profundidade. Quanto maior o nmero de sementes utilizadas maior a chance de se coletar o maior componente do grafo. Em trabalhos recentes, ns realizamos uma busca por palavras aleatrias no YouTube para vericar se o componente coletado era o maior componente [28, 23]. Como a maior parte dos usurios encontrados nessas buscas estavam no WCC do nosso grafo, os resultados desse teste sugeriram que o componente coletado era o maior WCC. Mislove e colaboradores [87] argumenta que o maior WCC de um grafo estruturamente a parte mais interessante de ser analisada, pois o componente que registra a maior parte das atividades dos usurios. Alm disso, eles mostram que usurios no includos no maior WCC tendem fazer parte de um grande grupo de pequenos componentes isolados ou at mesmo totalmente desconectados.

Figura 2.8. Exemplo de Coleta do WCC em um Grafo Direcionado

Note que, em algumas redes sociais online como o Twitter ou o Flickr, o conceito de amizade direcionado. Ou seja, um usurio u pode seguir um outro usurio v, sem necessariamente ser seguido por ele. Em casos como estes, ou seja, em grafos direcionados, necessrio percorrer as arestas do grafo em ambas as direes a m de coletar o WCC completamente. Caso contrrio, se coletarmos o grafo seguindo as arestas em apenas uma direo, no garantido que consigamos coletar todos os nodos do WCC. A Figura 2.8 mostra que o conjunto de nodos coletados quando seguimos as arestas em ambas as direes maior do que quando seguimos apenas uma das direes. Em algumas redes no possvel percorrer o grafo em ambas as direes e, portanto, no possvel coletar o maior WCC. Essa limitao tpica de estudos que envolvem a coleta da Web [38]. Ti-

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

81

picamente, a Web freqentemente coletada seguindo apenas uma direo dos elos entre pginas, j que no possvel determinar o conjunto de pginas que apontam para uma pgina. Uma outra estratgia de coleta por amostragem em redes baseada em caminhadas aleatrias (random walks) [100]. A idia bsica consiste em, a partir de um nodo semente v, prosseguir selecionando aleatoriamente um dos vizinhos de v, e assim sucessivamente at que um nmero pre-denido B de nodos tenham sido selecionados. Um mesmo nodo pode ser selecionado mltiplas vezes. Esta a estratgia de caminhada aleatria mais comum disponvel na literatura embora existam outras abordagens que diferem em termos de como os vizinhos so selecionados [81, 101] Assim como a coleta por snowball, a coleta atravs de caminhadas aleatrias tambm tem suas limitaes: a preciso das estimativas depende no somente da estrutura do grafo mas tambm da caracterstica sendo estimada. Em particular, dependendo da estrutura do grafo, a coleta pode car presa"dentro de um subgrafo. Neste caso, as estimativas podem ser imprecisas se as caractersticas do subgrafo no forem representativas da rede como um todo. Para mitigar este problema, Ribeiro e Towsley propuseram uma estratgia de coleta por caminhas aleatrias chamado Frontier sampling, que comea com m nodos sementes[100]. Eles ainda propuseram estimadores sem tendncia para vrias mtricas de redes complexas, incluindo o coeciente de agrupamento global da rede, usando as arestas coletadas pelo mtodo proposto. 2.4.3.2. Coleta em Larga Escala A coleta de grandes bases de dados de redes sociais online geralmente envolve o uso de coletores distribudos em diversas mquinas. Isso acontece no s devido ao processamento necessrio para tratar e salvar os dados coletados, mas tambm para evitar que servidores de redes sociais interpretem a coleta de dados pblicos como um ataque a seus servidores. Uma forma de se realizar tal coleta, conforme descrito em [45], est representada na Figura 2.9. A estratgia consiste em utilizar (1) uma mquina mestre que mantm uma lista centralizada de usurios a serem visitados e (2) mquinas escravas, que coletam, armazenam e processam os dados coletados para identicar novos usurios. Novos usurios identicados pelas mquinas escravas so repassados para a mquina mestre, que por sua vez, distribui novos usurios a serem coletados para as mquinas escravas. 2.4.3.3. Coleta por Inspeo de Identicadores Como discutido anteriormente, idealmente, a coleta de uma rede social online deveria incluir a rede completa e no somente uma poro dela. Em alguns sistemas como o MySpace e o Twitter possvel realizar uma coleta completa. Esses sistemas atribuem um identicador (ID) numrico e seqencial para cada usurio cadastrado. Como novos usurios recebem um identicador seqencial, podemos simplesmente percorrer todos os IDs, sem ter que vericar a lista de amigos desses usurios em busca de novos IDs para coletar.

82

Minicursos Livro Texto

Figura 2.9. Exemplo de Coleta Realizada de Forma Distribuda

Recentemente, ns realizamos uma coleta do Twitter seguindo essa estratgia. Ns solicitamos aos administradores do Twitter a permisso para realizar uma coleta em larga escala. Em resposta, eles adicionaram os endereos IPs de 58 mquinas sob nosso controle em uma lista branca, com permisso para coletar dados. Cada uma das 58 mquinas, localizadas no Max Planck Institute for Software Systems (MPI-SWS), na Alemanha2 , teve permisso para coletar dados a uma taxa mxima de 20 mil requisies por hora. Utilizando a API do Twitter, nosso coletor investigou todos os 80 milhes de IDs de forma seqencial, coletando todas as informaes pblicas sobre esses usurios, bem como seus elos de seguidores e seguidos e todos os seus tweets. Dos 80 milhes de contas inspecionadas, ns encontramos cerca 55 milhes em uso. Isso acontece porque o Twitter apaga contas inativas por um perodo maior do que 6 meses. No total, coletamos cerca de 55 milhes de usurios, quase 2 bilhes de elos sociais e cerca de 1.8 bilhes de tweets. Ao inspecionar as listas de seguidores e seguidos coletadas, ns no encontramos nenhum identicador acima dos 80 milhes inspecionados, sugerindo que ns coletamos todos os usurios do sistema na poca. Esses dados foram utilizados recentemente em dois trabalhos, um sobre deteco de spammers no Twitter [24] e o outro sobre medio de inuncia no Twitter [40]. Torkjazi e colaboradores [108] tambm exploraram o uso de IDs sequenciais para inspecionar o surgimento de novos usurios no MySpace.

2 Esta

coleta foi realizada durante uma visita de 5 meses ao MPI-SWS

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

83

2.4.3.4. Coleta em Tempo Real Redes sociais online possibilitam que usurios comuns expressem suas opinies sobre os mais diversos assuntos, e propaguem informaes que consideram relevantes em tempo real. interessante notar como a interatividade e a avaliao do uxo de informaes em tempo real passou a ser um fator importante para vrias aplicaes Web, que monitoram fenmenos dinmicos ocorridos na Web. Como exemplo, Google e Bing j indexam tweets pblicos como forma de prover busca por informao em tempo real. Do ponto de vista cientco, informaes disponibilizadas em tempo real na Web tm sido utilizadas de diferentes formas. O Google Insights3 , por exemplo, permite que o usurio consulte informaes geogrcas e temporais relacionadas ao volume de uma determinada consulta, permitndo tambm que o usurio salve essas informaes em formato CSV. De fato, informaes extradas em tempo real do Google Insights foram utilizadas para demonstrar que o volume de buscas na Web permite monitorar eventos tais como o nvel de desemprego e a ocorrncia de doenas em tempo real [46, 63]. Em particular, Ginsberg e colaboradores [63] propuseram um mtodo para monitorar ocorrncias de gripe baseado em buscas realizadas no Google. Eles mostraram que, em reas com grande populao de usurios de mquinas de buscas, o volume de buscas relacionadas gripe proporcional ocorrncia da doena. Em um trabalho recente, Sakaki e colaboradores [103] mostraram o poder da informao disponibilizada em tempo real nas redes sociais online propondo um mecanismo para deteco de ocorrncias de terremotos baseado em monitoramento do Twitter. A abordagem, que consiste em simplesmente identicar tweets relacionados a terremotos por regio, foi capaz de enviar alertas sobre terremotos mais rapidamente do que agncias meteorolgicas. Mais recentemente, Tumasjan e colaboradores [110] mostraram que opinies identicadas em tweets relacionados eleio federal alem foi capaz de reetir o sentimento poltico registrado fora das redes sociais. Para o caso especco do Twitter, bastante simples coletar informaes em tempo real, uma vez que o sistema oferece uma API com diversas opes relacionadas coleta de dados em tempo real. Como exemplo, para coletar em tempo real uma amostra aleatria de tweets pblicos basta executar o seguinte comando em algum terminal UNIX, fornecendo o usurio e senha de um usurio registrado no Twitter.
curl http://stream.twitter.com/1/statuses/sample.json -uLOGIN:SENHA

2.4.3.5. Utilizando APIs No contexto de desenvolvimento Web, uma API tipicamente um conjunto de tipos de requisies HTTP juntamente com suas respectivas denies de resposta. Em aplicaes de redes sociais online comum encontrarmos APIs que listam os amigos de um usurio, seus objetos, suas comunidades, etc. APIs so perfeitas para a coleta de dados de redes sociais online, pois oferecem
3 http://www.google.com/insights/search

84

Minicursos Livro Texto

Figura 2.10. Exemplo da API do Twitter: http://twitter.com/users/show/fbenevenuto.xml

os dados em formatos estruturados como XML e JSON. Como exemplo, a Figura 2.10 mostra o resultado de uma busca por informaes de um usurio no Twitter. Alm dessa funo, o Twitter ainda oferece vrias outras funes em sua API. Com a API do Twitter possvel coletar 5000 seguidores de um usurio atravs de uma nica requisio. A coleta dessa informao atravs do stio Web convencional necessitaria de centenas de requisies, visto que o Twitter s mostra alguns seguidores por pgina. Alm disso, cada pgina conteria uma quantidade muito grande de dados desnecessrios, que deveriam ser tratados e excludos. Vrios sistemas possuem APIs, incluindo Twitter, Flickr, YouTube, Google Mapas, Yahoo Mapas, etc. Com tantas APIs existentes, comum ver aplicaes que utilizam duas ou mais APIs para criar um novo servio, que o que chamamos de Mashup. Uma interessante aplicao chamada Yahoo! Pipes [13], permite a combinao de diferentes APIs de vrios sistemas para a criao automatizada de Mashups.

2.4.3.6. Ferramentas e Bibliotecas Desenvolver um coletor pode ser uma tarefa bastante complicada devido diversidade de formatos de pginas. Entretanto, coletar redes sociais online , e m geral, diferente de coletar pginas da Web tradicional. As pginas de uma rede social online so, em geral, bem estruturadas e possuem o mesmo formato, pois so geradas auto maticamente, enquanto que, na Web tradicional, as pginas podem ser criadas por qualquer pessoa em qualquer formato. Alm disso, como cada indivduo ou objeto em uma rede social, em geral, possui um identicador nico, temos certeza sobre quais as informaes obtivemos quando coletamos uma pgina. Existem vrias ferramentas que podem ser utilizadas para se coletar dados de redes sociais online. Como cada pesquisa requer um tipo de coleta e cada coleta de dados possui sua particularidade, desenvolver o prprio coletor pode ser necessrio. A Figura 2.11 mostra o uso da biblioteca LWP na linguagem Perl. Este cdigo realiza a coleta dos seguidores de um usurio no Twitter atravs de sua API. De maneira similar, o cdigo

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

85

em Python da Figura 2.12 utiliza a biblioteca URLLIB para realizar a mesma tarefa. O resultado da execuo dos coletores a lista de seguidores de um usurio do Twitter em formato XML, como ilustra a Figura 2.13.

Figura 2.11. Exemplo de Uso da Biblioteca LWP em Perl

Figura 2.12. Exemplo de Uso da Biblioteca URLLIB em Python

2.4.3.7. tica dos Coletores importante ressaltar que o uso de ferramentas automticas de coleta (coletores ou robs), se feito sem o devido cuidado, pode causar problemas de sobrecarga nos servidores alvos da coleta, o que, em ltima instncia, pode afetar a qualidade de servio da aplicao alvo. Para evitar que isto acontea, muitos servidores adotam um protocolo conhecido como Robots.txt, no qual stios Web regulamentam o que pode e o que no pode ser coletado do sistema. Este mtodo bastante utilizado pelos administradores de sistemas para informar aos robs visitantes quais diretrios de um stio Web no devem ser coletados. Ele se aplica a qualquer tipo de coleta, seja ela parte de uma pesquisa sobre redes sociais online, ou um dos componentes centrais de uma mquina de busca como o Google [37]. O Robots.txt nada mais do que um arquivo que ca no diretrio raiz dos stios e contm regras para coleta. Estas regras podem ser direcionadas a robs especcos ou podem ser de uso geral, tendo como alvo qualquer rob. Ao visitar um site, os robs devem primeiramente buscar pelo arquivo Robots.txt a m de vericar suas permisses. Exemplos desses arquivos so: http://portal.acm.org/robots.txt http://www.google.com/robots.txt

86

Minicursos Livro Texto

Figura 2.13. Resultado da Execuo dos Coletores em Perl e Python

http://www.globo.com/robots.txt http://www.orkut.com.br/robots.txt http://www.youtube.com/robots.txt http://www.robotstxt.org/robots.txt A seguir mostramos um exemplo simples de regra em um arquivo Robots.txt. Essa regra restringe todos os crawlers de acessarem qualquer contedo no sistema. User-agent: * Disallow: / possvel ainda especicar restries a alguns robs especcos ou restringir o acesso a alguns diretrios especcos. Como exemplo, o stio Web www.globo.com oferece restries para todos os robs nos seguintes diretrios. User-agent: * Disallow: Disallow: Disallow: Disallow: Disallow: Disallow: Disallow: Disallow: Disallow: /PPZ/ /Portal/ /Java/ /Servlets/ /GMC/foto/ /FotoShow/ /Esportes/foto/ /Gente/foto/ /Entretenimento/Ego/foto/

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

87

R obots.txt

No caso de coleta de redes sociais online, importante vericar no s o arquivo dos sistemas, mas tambm os termos de uso do sistema.

2.4.4. Dados de Aplicaes Em uma tentativa bem sucedida de enriquecer a experincia dos usurios de redes sociais online, o Facebook realizou uma de suas maiores inovaes: abriu sua plataforma para desenvolvedores de aplicaes [4]. Com esta inovao, desenvolvedores so capazes de criar diferentes tipos de aplicaes. Com o sucesso no Facebook, outros sistemas como Orkut e MySpace tambm adotoram essa estratgia. Como consequncia, o nmero e a variedade de aplicaes criadas nestes sistemas cresceram signicativamente. O Facebook sozinho possui atualmente mais de 81,000 aplicaess4 [2]. Empresas como a Zynga, especializadas em desenvolver essas aplicaes, contam com mais de 80 milhes de usurios registrados em suas aplicaes [2].

Figura 2.14. Funcionamento de Aplicaes no Facebook e no Orkut

A Figura 2.14 mostra o funcionamento de uma aplicao terceirizada em execuo em redes sociais online como o Facebook ou o Orkut. Aplicaes so caracterizadas pela presena de um servidor da rede social intermediando toda a comunicao entre o cliente e o servidor da aplicao. Tipicamente, o cliente envia a requisio ao servidor da rede social online, que a repassa ao servidor da aplicao. Ento, o servidor da aplicao manda de volta a resposta ao servidor da rede social, que a repassa ao cliente [90]. Aplicaes podem ser utilizadas para o estudo de interaes entre os usurios que utilizam as aplicaes e tambm podem ser teis para coletar outras informaes dos usurios, tais como lista de amigos e atividades executadas durante uma sesso. Alguns trabalhos zeram uso dessa estratgia para estudar os usurios de redes sociais online. Nazir e colaboradores [89] analisaram caractersticas de aplicaes no Facebook, desenvolvendo e lanando suas prprias aplicaes. Em particular, eles estudaram a formao
4 Uma

grande lista de aplicaes do Facebook pode ser encontrada na seguinte referncia [3].

88

Minicursos Livro Texto

de comunidades online a partir de grafos de interao entre os usurios de suas aplicaes. Mais recentemente, os mesmos autores estudaram vrias caractersticas relacionadas ao desempenho de suas aplicaes no Facebook [90].

2.5. Extrao de Informao


A extrao e o tratamento de informao a partir dos dados coletados so etapas essenciais para permitir diferentes anlises incluindo identicao de padres de comportamento de usurios em diferentes sistemas, identicao de tpicos de interesse dos usurios, etc. Nesta seo, discutimos brevemente os principais desaos relacionados a essas etapas. Em particular, a identicao de entidades nomeadas, tais como pessoas, organizaes e produtos, encontradas em pores de texto, assim como a derivao de relacionamentos entre estas entidades, representam importantes problemas, com diversas aplicaes interessantes. O nosso objetivo nesta seo no detalhar todas as particularidades e solues para estes problemas, que so tipicamente abordados por pesquisadores de outras reas tais como Bancos de Dados, Recuperao de Informao, Minerao de Dados e Processamento de Linguagem Natural. Entretanto, reconhecendo a necessidade de expertises complementares para o estudo de redes sociais online, achamos benco para o leitor o contato, ainda que supercial, com estes tpicos. 2.5.1. Viso Geral As redes sociais online so atualmente importantes plataformas para produo, processamento e uxo de informao. Tal informao pode se originar dentro das redes ou fora delas e pode ser utilizada como fonte primria ou complementar para derivar conhecimento sobre a prpria rede, seus membros, seus temas, suas comunidades, etc. No entanto, esta informao quase sempre ocorre em um formato textual, no estruturado, em linguagem natural e at mesmo em estilo telegrco ou informalmente codicado. Isso um grande empecilho para que esta informao possa ser processada de maneira automtica e para que dela se possa derivar conhecimento latente. Como exemplo, uma mesma entidade (p.ex: uma pessoa ou uma localidade) pode ser referenciada de vrias formas, devido s variaes introduzidas por diferentes formas de graa, aspectos regionais ou culturais, uso de abreviaturas, erros tipogrcos e outras razes associadas com o uso convencional. Em contextos j bastante explorados como stios e pginas da Web, tcnicas de reas como Recuperao de Informao, Minerao de Dados e Processamento de Linguagem Natural tm sido aplicadas com muito sucesso para extrair informao e derivar conhecimento de corpus textuais. No entanto, no contexto de redes sociais online, este corpus tem uma natureza totalmente diversa. De fato, nestas redes, o corpus textual formado por micro-documentos como tweets, blog posts, comentrios, feeds, tags, cujo tratamento deve ser necessariamente diferente do que normalmente aplicado a, por exemplo, pginas Web. Alm disto, dado o carter informal de vrias informaes disponibilizadas em redes sociais online, tcnicas de processamento de linguagem natural so difceis de serem aplicadas devido ausncia de padres lingusticos. Alm disso, nos corpora textuais encontrados em redes sociais online existe muito lixo e rudo informacional (palavras escritas erradas, de baixa qualidade sinttica ou semntica) dicultando esta tarefa ainda mais.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

89

Por exemplo, tcnicas de extrao aberta de informaes na Web [55] que se baseiam em modelos lingusticos gerais de como relacionamentos so expressos em um idioma, so o estado da arte em extrao de entidades e relacionamentos de pginas Web. No entanto, como os modelos utilizados nestas tcnicas so construdos a partir de caractersticas lingusticas atravs da identicao de partes de discurso nos documentos-alvo, elas dicilmente poderiam ser aplicadas em micro-documentos (por exemplo, tweets), onde estas caractersticas podem no se apresentar. Apesar das diculdades mencionadas, a extrao de informaes contidas no corpus textual de redes sociais pode ajudar a responder de forma automtica e efetiva questes como: Quem fala com quem sobre que assunto? Quem so os atores principais nas redes? Onde esto localizados? Que assuntos e tpicos emergem, se disseminam e desaparecem nos eco-sistemas sociais digitais? Que indivduos e grupos promovem e suprimem estes assuntos e tpicos? Qual a polaridade (positiva, negativa ou neutra) das opinies emitidas na rede sobre assuntos, pessoas, empresas, etc.? Um Exemplo: Observatrio da Web Um exemplo de como a identicao de entidades uma tarefa importante para a anlise de redes sociais online o Observatrio das Eleies 20105 , que uma instncia do Observatrio da Web [104], projeto desenvolvido no mbito do InWeb (Instituto Nacional de Cincia e Tecnologia para a Web). Este observatrio foi desenvolvido para monitorar, em tempo real, o que estava sendo veiculado sobre as eleies de 2010 nas vrias mdias e pelos vrios usurios da Web. O seu objetivo era ajudar a traar um panorama do cenrio eleitoral do ponto de vista das informaes e das opinies que circulavam na Web e nas redes sociais online, incluindo jornais, revistas, portais e o Twitter. Foi implementado como um portal utilizando dezenas de ferramentas softwares inditas de captura e anlise de dados baseadas em cdigo livre ou aberto. As entidades correlatas ao contexto das eleies foram o alvo principal do monitoramento. Isso inclua alm dos candidatos presidncia, polticos com inuncia na eleio, como o ex-presidente Lula. Em muitos casos, o monitoramento era concentrado em eventos, ou seja, acontecimentos importantes no contexto observado, tais como um debate, por exemplo, e que pudessem ter um grande efeito no contedo das fontes observadas. A partir da identicao das entidades no textos coletados em tempo real, possvel gerar uma srie de produtos de anlise e visualizao. Um exemplo de um destes produtos apresentado na Figura 2.15.
5 http://www.observatorio.inweb.org.br/eleicoes2010.

90

Minicursos Livro Texto

Figura 2.15. Exemplo de Visualizao de Dados Gerados a Partir da Identicao de Entidades no Observatrio das Eleies.

No observatrio, antes da extrao propriamente dita, realizado um prprocessamento dos textos coletados, incluindo a padronizao da codicao dos caracteres, a eliminao de cdigo HTML, cabealhos e anncios de pginas coletadas atravs de feeds, e o uso de mtodos tradicionais de pr-processamento de textos [83] tais como a remoo de stop words (palavras de pouco valor informacional como artigos, preposies e conjunes) e o stemming, que consiste na extrao dos radicais das palavras do texto. A identicao de entidades nos textos feita atravs da ferramenta Illinois Named Entity Tagger [98], que utiliza tcnicas de processamento de linguagem natural para identicar referncias a entidades (pessoas, organizaes, locais, etc.) em texto livre. Apos a fase de identicao, segue-se uma fase de desambiguao de entidades. Isso necessrio porque os mtodos identicao de entidades tm diculdade, em geral, de diferenciar Jos Serra de Serra da Piedade, ou Lula presidente de Lula Molusco. Para isso, um mtodo de classicao foi utilizado para aprender a associar entidades a determinados contextos. A Figura 2.16 ilustra um RSS feed processado para identicao de entidades pelo Observatrio das Eleies. As tags so usadas como identicadores para distinguir as duas entidades em todos os textos processados. A pr-candidata do PT Presidncia da Repblica <Person2> Dilma Rousseff </Person2> , quer juntar ao seu redor o maior nmero de legendas que hoje esto na base aliada do presidente <Person1> Luiz Incio Lula da Silva </Person1>
Figura 2.16. Exemplo de RSS Feed com Entidades Identicadas no Observatrio das Eleies

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

91

2.5.2. Identicao de Entidades O problema de identicao de entidades nomeadas (Named Entity Recognition NER) consiste em encontrar palavras que ocorrem em um documento ou trecho de texto no estruturado e que faam referncia a entidades do mundo real. Este problema tem sido estudado em vrios contexto como identicao de nomes de pessoas e companhias em notcias, identicao de genes e protenas e publicaes biomdicas, etc. [48]. A Figura 2.17(a) ilustra o resultado tpico da aplicao de um mtodo de extrao de entidades. <pessoa> Odorico Paraguau <pessoa> foi <cargo> prefeito </cargo> eterno de <local> Sucupira </local>, cidadezinha localizada em algum lugar da <local> Bahia </local>, a qual governou com muita sabedoria e inteligncia. Dotado de uma habilidade incrvel com as palavras fruto de seu curso na <organizao> Universidade de Sourbone </organizao>), cativava as massas numa poca em que os comcios no tinham nem fanfarra, quanto mais bandas completas.6 (a) Odorico pessoa Paraguau foi pessoa outro prefeito cargo (b) eterno de outro outro Sucupira local

Figura 2.17. Exemplo de um trecho de texto com entidades identicadas (a) e como uma sequncia rotulada (b)

Uma abordagem comum para o problema de NER a de rotulamento de sequncias. Um documento representado como uma sequncia x de tokens x1 , . . . , xn e um classicador associa x a uma sequncia paralela de rtulos y = y1 , . . . , yN , onde cada yi um rtulo pertencente a um conjunto Y . Uma atribuio correta dos rtulos permite a identicao direta das entidades. Por exemplo, na sequncia ilustrada na Figura 2.17(b), cada token recebe um rtulo, sendo que um rtulo especial outro associado aos tokens que no so partes de nomes de entidades. A construo do classicador pode ser feita usando tcnicas de aprendizagem de mquina, ou seja, utilizando dados de treinamento que representam exemplos de mapeamento de sequncias x para sequncias y. Isso feito, em geral, atravs de documentos manualmente anotados de forma similar ao que est ilustrado na Figura 2.17(b). Estes classicadores so gerados pelo no aprendizado de modelos sequenciais tais como Hidden Markov Models [58] ou Conditional Random Fields [74] ou suas variaes (por exemplo, [49]). 2.5.3. Resoluo de Entidades Uma vez que as referncias a entidades so identicadas em um certo corpus, algumas aplicaes podem requerer ainda que sejam estabelecidas correspondncias entre referncias distintas que se reram a uma mesma entidade do mundo real. Este problema conhecido como Resoluo de Entidades [31]. Existem na realidade dois subproblemas relacionados ao problema de resoluo

92

Minicursos Livro Texto

de entidades, os quais ilustramos pelos trechos de texto apresentados na Figura 2.18. D1 O Acre o estado mais oeste do Brasil, seu territrio inteiramente recoberto pela Floresta Amaznica. tambm bero de grandes nomes como <pessoa>Marina Silva</pessoa>, poltica, e <pessoa>Glria Perez</pessoa>, novelista. Ao lado da ento ministra da Casa Civil, <pessoa>Dilma Rousseff</pessoa>, <pessoa>Lula</pessoa> acabou recebendo uma amostra do leo na <pessoa>Marina</pessoa> da <pessoa>Glria</pessoa>, no Rio, para onde o evento foi transferido. A candidata <pessoa>Dilma</pessoa>, vencedora do primeiro turno das eleies, telefonou hoje para a candidata <pessoa>Marina</pessoa> do PV e a parabenizou pelo seu desempenho nas urnas.
Figura 2.18. Exemplo de um Trecho de Texto com Entidades Identicadas (a) e como uma Sequncia Rotulada (b).

D2

D3

O primeiro subproblema consiste em determinar o conjunto de referncias distintas no corpus que so utilizadas para se referir a mesma entidade no mundo real. Este caso de Marina Silva em D1 e Marina em D3 , e tambm de Dilma Rousseff em D2 e Dilma em D3 . Este subproblema conhecido como Identicao [31] ou Coreferncia [68]. Note que este problema tambm pode ser causado por erros de escrita, formatao, etc., ou mesmo pelo uso de apelidos (p.ex., Dilma) e anforas (p.ex., a ministra). O segundo subproblema consiste em distinguir quando referncias muito similares, ou at mesmo exatamente iguais, se referem a diferentes entidades do mundo real. Esse o caso de Marina em D3 e em D2 e tambm de Glria Perez em D3 e Glria em D2 . Este problema chamado de Desambiguao [31]. Note que neste caso especco o problema foi causado por uma falha do processo de identicao de entidades em D2 . Tais problemas so comuns e, dependendo do domnio de aplicao, podem ser exacerbados pelo uso de abreviaes. A soluo do problema de resoluo de entidades pode ser determinante para a qualidade dos resultados obtidos a partir da anlise das entidades extradas. Por outro lado, se neglicenciado, este problema pode comprometer o conhecimento derivado destes resultados. Por exemplo, as anlises realizadas pelo Observatrio das Eleies poderiam ser seriamente afetadas se referncias ao candidato Jos Serra e Serra da Piedade no sofressem desambiguao. Na literatura recente, o problema de resoluo entidades tem sido tratado atravs do clculo da similaridade entre os atributos associados s entidades (no caso de bancos de dados) [51] ou utilizando, quando possvel, grafos de co-ocorrncia de entidades [31]. Em corpora textuais, ferramentas lingusticas tm sido usadas para soluo deste problema [96]. No caso do Observatrio das Eleies, o problema foi tratado atravs de uma soluo simples baseada em classicao usando centroides [67], que neste caso so usado para representar o contexto em que determinada entidade tipicamente encontrada

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

93

em termos de vocabulrio recorrente.

2.6. Bases de Dados Disponveis na Web


Vrios trabalhos que coletaram dados de redes sociais online oferecem disponibilizam os dados coletados para a comunidade acadmica. A seguir, algumas bases contendo dados pblicos disponveis na Web so relacionadas. Dados sobre Orkut, Flickr, LiverJournal e YouTube. Foram utilizados no trabalho [87] e esto disponveis em http://socialnetworks.mpi-sws.org/ data-imc2007.html Dados sobre os vdeos de duas categorias inteiras do YouTube. Coletados em 2007 e utilizados no artigo [41]. Disponvel em http://an.kaist.ac.kr/ traces/IMC2007.html. Dados do Flickr coletados ao longo do tempo. Esses dados foram utilizados na referncia [86] e esto disponveis em http://socialnetworks.mpi-sws. org/data-wosn2008.html. Dados sobre a popularidade de vdeos do YouTube com registro do crescimento e fontes dos acessos ao longo do tempo. Foram utilizados na referncia [57] e esto disponvis em http://vod.dcc.ufmg.br/traces/youtime/. Grafo completo contendo 55 milhes de usurios do Twitter e cerca de 1.8 bilhes de tweets. Esses dados foram utilizados nas referncias [40, 24] e esto disponveis no endereo http://twitter.mpi-sws.org/. Dados sobre o grafo de amizade e postagens de amostra de usurios do Facebook. Utilizados na referncia [111] e disponveis em http://socialnetworks. mpi-sws.org/data-wosn2009.html. Coleo de usurios do YouTube, manualmente classicados como spammers, promoters ou usurios legtimos. Esses dados foram utilizados nos seguintes trabalhos [26, 29, 75]. A base de dados est disponvel em http://homepages. dcc.ufmg.br/~fabricio/testcollectionsigir09.html. Coleo de dados do Del.icio.us e do Digg. Coleo utilizada em diferentes artigos e disponvel em http://www.public.asu.edu/~mdechoud/ datasets.html.

2.7. Concluses
Redes sociais online se tornaram extremamente populares e parte do nosso dia a dia, causando o surgimento de uma nova onda de aplicaes disponveis na Web. A cada dia, grandes quantidades de contedo so compartilhadas, e milhes de usurios interagem atravs de elos sociais. Apesar de tanta popularidade, o estudo de redes sociais ainda est em sua infncia, j que estes ambientes esto ainda experimentando novas tendncias e enfrentando diversos novos problemas e desaos.

94

Minicursos Livro Texto

Redes sociais online compem ambientes perfeitos para o estudo de vrios temas da computao, incluindo sistemas multimdia e interao humano-computador. Alm disso, por permitir que usurios criem contedo, aplicaes de redes sociais vm se tornando um tema chave em pesquisas relacionadas organizao e tratamento de grandes quantidades de dados, alm de constiturem um ambiente ideal para extrao de conhecimento e aplicao de tcnicas de minerao de dados. Este trabalho oferece uma introduo ao pesquisador que pretende explorar o tema. Inicialmente, foram apresentadas as principais caractersticas das redes sociais mais populares atualmente. Em seguida, discutimos as principais mtricas e tipos de anlises utilizadas no estudo dos grafos que formam a topologia das redes sociais. Finalmente, sumarizamos as principais abordagens utilizadas para se obter dados de redes sociais online e discutimos trabalhos recentes que utilizaram essas tcnicas.

Agradecimentos
Este trabalho foi parcialmente nanciado pelo Instituto Nacional de Cincia e Tecnologia para a Web (InWeb), pelo CNPq, FAPEMIG e UOL (www.uol.com.br).

Referncias
[1] comscore: Americans viewed 12 billion videos online in may 2008. http:// www.comscore.com/press/release.asp?press=2324. Acessado em Maro/2010. [2] Developer analytics. http://www.developeranalytics.com. Acessado em Maro/2010. [3] Facebook application directory. http://www.facebook.com/apps. Acessado em Maro/2010. [4] Facebook platform. http://developers.facebook.com. Acessado em Maro/2010. [5] Facebook Press Room, Statistics. http://www.facebook.com/press/ info.php?statistics. Acessado em Maro/2010. [6] Gnuplot. http://www.gnuplot.info/. Acessado em Agosto/2010. [7] Google OpenSocial. http://code.google.com/apis/opensocial/. Acessado em Maro/2010. [8] List of social network web sites. http://en.wikipedia.org/wiki/ List_of_social_networking_websites. Acessado em Maro/2010. [9] Matlab. http://www.mathworks.com/products/matlab/. Acessado em Agosto/2010. [10] Needle in a Haystack: Efcient Storage of Billions of Photos. Facebook Engineering Notes, http://tinyurl.com/cju2og. Acessado em Maro/2010.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

95

[11] New york times. a web site born in u.s. nds fans in brazil. http:// www.nytimes.com/2006/04/10/technology/10orkut.html. Acessado em Maro/2010. [12] New york times. uploading the avantgarde. http://www.nytimes. com/2009/09/06/magazine/06FOB-medium-t.htm. Acessado em Julho/2010. [13] Yahoo! pipes. Agosto/2010. http://pipes.yahoo.com/pipes. Acessado em

[14] YouTube fact sheet. http://www.youtube.com/t/fact_sheet. Acessado em Maro/2010. [15] L. Adamic, O. Buyukkokten, and E. Adar. A social network caught in the web. First Monday, 8(6), 2003. [16] Y.-Y. Ahn, S. Han, H. Kwak, S. Moon, and H. Jeong. Analysis of topological characteristics of huge online social networking services. In World Wide Web Conference (WWW), pages 835844, 2007. [17] R. Albert, H., Jeong, and A. Barabasi. Error and attack tolerance of complex networks. Nature, 406(6794):378382, 2000. [18] R. Albert, H. Jeong, and A. Barabasi. Diameter of the world wide web. Nature, 401:130131, 1999. [19] N. Ali-Hasan and L. Adamic. Expressing social relationships on the blog through links and comments. In AAAI Conference on Weblogs and Social Media (ICWSM), 2007. [20] A. Amaral, A. Scala, M. Barthelemy, and E. Stanley. Classes of small-world networks. 97(21):1114911152, 2000. [21] B. Williamson. Social network marketing: ad spending and usage. EMarketer Report, 2007. http://tinyurl.com/2449xx. Acessado em Maro/2010. [22] A. Barabasi and R. Albert. Emergence of scaling in random networks. Science, 286(5439), 1999. [23] F. Benevenuto, F. Duarte, T. Rodrigues, V. Almeida, J. Almeida, and K. Ross. Understanding video interactions in YouTube. In ACM Conference on Multimedia (MM), pages 761764, 2008. [24] F. Benevenuto, G. Magno, T. Rodrigues, and V. Almeida. Detecting spammers on twitter. In Annual Collaboration, Electronic messaging, Anti-Abuse and Spam Conference (CEAS), 2010. [25] F. Benevenuto, A. Pereira, T. Rodrigues, V. Almeida, J. Almeida, and M. Gonalves. Characterization and analysis of user proles in online video sharing systems. Journal of Information and Data Management, 1(2):115129, 2010.

96

Minicursos Livro Texto

[26] F. Benevenuto, T. Rodrigues, V. Almeida, J. Almeida, and M. Gonalves. Detecting spammers and content promoters in online video social networks. In Intl ACM Conference on Research and Development in Information Retrieval (SIGIR), pages 620627, 2009. [27] F. Benevenuto, T. Rodrigues, V. Almeida, J. Almeida, M. Gonalves, and K. Ross. Video pollution on the web. First Monday, 15(4), April 2010. [28] F. Benevenuto, T. Rodrigues, V. Almeida, J. Almeida, and K. Ross. Video interactions in online video social networks. ACM Transactions on Multimedia Computing, Communications and Applications (TOMCCAP), 5(4):125, 2009. [29] F. Benevenuto, T. Rodrigues, V. Almeida, J. Almeida, C. Zhang, and K. Ross. Identifying video spammers in online social networks. In Workshop on Adversarial Information Retrieval on the Web (AIRWeb), pages 4552, 2008. [30] F. Benevenuto, T. Rodrigues, M. Cha, and V. Almeida. Characterizing user behavior in online social networks. In ACM SIGCOMM Internet Measurement Conference (IMC), pages 4962, 2009. [31] I. Bhattacharya and L. Getoor. Collective entity resolution in relational data. ACM Trans. Knowl. Discov. Data, 1, 2007. [32] J. Binder, A. Howes, and A. Sutcliffe. The problem of conicting social spheres: effects of network structure on experienced tension in social network sites. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 965 974, 2009. [33] S. Boll. Multitubewhere web 2.0 and multimedia could meet. IEEE MultiMedia, 14(1):913, 2007. [34] D. Boyd. Why Youth (Heart) Social Network Sites: The Role of Networked Publics in Teenage Social Life. Cambridge, MA, 2007. [35] D. Boyd and N. Ellison. Social network sites: Denition, history, and scholarship. Journal of Computer-Mediated Communication, 13(1-2), 2007. [36] V. Braitenberg and A. Schz. Cortex: Statistics and Geometry of Neuronal Connectivity. Springer-Verlag, 1998. [37] S. Brin and L. Page. The anatomy of a large-scale hypertextual web search engine. Computer Networks and ISDN Systems, 30(1-7):107117, 1998. [38] A. Broder, R. Kumar, F. Maghoul, P. Raghavan, S. Rajagopalan, R. Stata, A. Tomkins, and J. Wiener. Graph structure in the web. Computer Networks, 33:309320, 2000. [39] M. Burke, C. Marlow, and T. Lento. Feed me: Motivating newcomer contribution in social network sites. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 945954, 2009.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

97

[40] M. Cha, H. Haddadi, F. Benevenuto, and K. Gummadi. Measuring user inuence in twitter: The million follower fallacy. In In 4th International AAAI Conference on Weblogs and Social Media (ICWSM), 2010. [41] M. Cha, H. Kwak, P. Rodriguez, Y.-Y. Ahn, and S. Moon. I tube, you tube, everybody tubes: Analyzing the worlds largest user generated content video system. In ACM SIGCOMM Conference on Internet Measurement (IMC), pages 114, 2007. [42] M. Cha, A. Mislove, and K. Gummadi. A measurement-driven analysis of information propagation in the Flickr social network. In World Wide Web Conference (WWW), pages 721730, 2009. [43] C. Chapman and M. Lahav. International ethnographic observation of social networking sites. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 31233128, 2008. [44] P. Chatterjee, D. L. Hoffman, and T. P. Novak. Modeling the clickstream: implications for web-based advertising efforts. Marketing Science, 22(4):520541, 2003. [45] D. Chau, Pandit, S. Wang, and C. Faloutsos. Parallel crawling for online social networks. In World Wide Web Conference (WWW), pages 12831284, 2007. [46] H. Choi and H. Varian. Predicting the present with google trends. http://bit. ly/2iujV3. Accessed in Jan/2011, 2009. [47] H. Chun, H. Kwak, Y. Eom, Y.-Y. Ahn, S. Moon, and H. Jeong. Comparison of online social relations in volume vs interaction: a case study of Cyworld. In ACM SIGCOMM Internet Measurement Conference (IMC), pages 5770, 2008. [48] W. Cohen and S. Sarawagi. Exploiting Dictionaries in Named Entity Extraction: Combining Semi-Markov Extraction Processes and Data Integration Methods. In Proc. 10th ACM SIGKDD Intl. Conf. on Knowl. Discov. and Data Mining, pages 8998, 2004. [49] E. Cortez, A. S. da Silva, M. A. Gonalves, and E. S. de Moura. Ondux: ondemand unsupervised learning for information extraction. In Proceedings of the 2010 international conference on Management of data, SIGMOD 10, pages 807 818, 2010. [50] X. Dale and C. Liu. Statistics and social network of YouTube videos. In Intl Workshop on Quality of Service (IWQoS), 2008. [51] J. de Freitas, G. L. Pappa, A. S. da Silva, M. A. Gonalves, E. S. de Moura, A. Veloso, A. H. F. Laender, and M. G. de Carvalho. Active learning genetic programming for record deduplication. In IEEE Congress on Evolutionary Computation, pages 18, 2010. [52] F. Duarte, F. Benevenuto, V. Almeida, and J. Almeida. Locality of reference in an hierarchy of web caches. In IFIP Networking Conference (Networking), pages 344354, 2006.

98

Minicursos Livro Texto

[53] F. Duarte, B. Mattos, A. Bestavros, V. Almeida, and J. Almeida. Trafc characteristics and communication patterns in blogosphere. In Conference on Weblogs and Social Media (ICWSM), 2007. [54] H. Ebel, L. Mielsch, and S. Bornholdt. Scale free topology of e-mail networks. Physical Review E, 66(3):35103, 2002. [55] O. Etzioni, M. Banko, S. Soderland, and D. S. Weld. Open information extraction from the web. Commun. ACM, 51(12):6874, December 2008. [56] M. Faloutsos, P. Faloutsos, and C. Faloutsos. On power-law relationships of the Internet topology. In Annual Conference of the ACM Special Interest Group on Data Communication (SIGCOMM), pages 251262, 1999. [57] F. Figueiredo, F. Benevenuto, and J. Almeida. The tube over time: Characterizing popularity growth of youtube videos. In Proceedings of the 4th ACM International Conference of Web Search and Data Mining (WSDM), 2011. [58] D. Freitag and A. McCallum. Information Extraction with HMM Structures Learned by Stochastic Optimization. In Proc. of the 17th Nat. Conf. on Art. Intell. and 12th Conf. on Innov. Appl. of Art. Intell., pages 584589, 2000. [59] E. Gabrilovich, S. Dumais, and E. Horvitz. Newsjunkie: Providing personalized newsfeeds via analysis of information novelty. In World Wide Web Conference (WWW), pages 482490, 2004. [60] D. Garlaschelli and M. Loffredo. Patterns of link reciprocity in directed networks. Physical Review Letters, 93(26):268701, 2004. [61] P. Gill, M. Arlitt, Z. Li, and A. Mahanti. YouTube trafc characterization: A view from the edge. In ACM SIGCOMM Conference on Internet Measurement (IMC), pages 1528, 2007. [62] P. Gill, M. Arlitt, Z. Li, and A. Mahanti. Characterizing user sessions on YouTube. In IEEE Multimedia Computing and Networking (MMCN), 2008. [63] J. Ginsberg, M. H. Mohebbi, R. S. Patel, L. Brammer, M. S. Smolinski, and L. Brilliant. Detecting inuenza epidemics using search engine query data. Nature, 457:10124, 2009. [64] L. Gomes, J. Almeida, V. Almeida, and W. Meira. Workload models of spam and legitimate e-mails. Performance Evaluation, 64(7-8), 2007. [65] K. Gummadi, R. Dunn, S. Saroiu, S. Gribble, H. Levy, and J. Zahorjan. Measurement, modeling, and analysis of a peer-to-peer le-sharing workload. In ACM Symposium on Operating Systems Principles (SOSP), 2003. [66] Z. Gyngyi, H. Garcia-Molina, and J. Pedersen. Combating web spam with trustrank. In Intl. Conference on Very Large Data Bases (VLDB), pages 576587, 2004.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

99

[67] E.-H. Han and G. Karypis. Centroid-based document classication: Analysis and experimental results. In Proceedings of the 4th European Conference on Principles of Data Mining and Knowledge Discovery, pages 424431, 2000. [68] J. Hobbs. Coherence and coreference*. Cognitive science, 3(1):6790, 1979. [69] A. Joinson. Looking at, looking up or keeping up with people?: motives and use of Facebook. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 10271036, 2008. [70] R. King. When your social sites need networking, BusinessWeek, 2007. http: //tinyurl.com/o4myvu. Acessado em Maro/2010. [71] B. Krishnamurthy. A measure of online social networks. In Conference on Communication Systems and Networks (COMSNETS), 2009. [72] R. Kumar, J. Novak, and A. Tomkins. Structure and evolution of online social networks. In ACM SIGKDD Intl Conference on Knowledge Discovery and Data Mining (KDD), 2006. [73] H. Kwak, C. Lee, H. Park, and S. Moon. What is twitter, a social network or a news media? In Intl World Wide Web Conference (WWW), 2010. [74] J. D. Lafferty, A. McCallum, and F. C. N. Pereira. Conditional random elds: Probabilistic models for segmenting and labeling sequence data. In Proceedings of the Eighteenth International Conference on Machine Learning, ICML01, pages 282289, 2001. [75] H. Langbehn, S. Ricci, M. Gonalves, J. Almeida, G. Pappa, and F. Benevenuto. A multi-view approach for detecting spammers and content promoters in online video social networks. Journal of Information and Data Management, 1(3):116, 2010. [76] S. Lee, P. Kim, and H. Jeong. Statistical properties of sampled networks. Physical Review E, 73(30):102109, 2006. [77] K. Lerman. Social information processing in news aggregation. IEEE Internet Computing, 11(6):1628, 2007. [78] J. Leskovec, L. A. Adamic, and B. A. Huberman. The dynamics of viral marketing. ACM Transactions on the Web (TWEB), 1(1):228237, 2007. [79] J. Leskovec and E. Horvitz. Planetary-scale views on a large instant-messaging network. In World Wide Web Conference (WWW), 2008. [80] L. Li, D. Alderson, J. Doyle, and W. Willinger. Towards a theory of scale-free graphs: Denition, properties, and implications. Internet Mathematics, 2(4), 2005. [81] L. Lovsz. Random Walks on Graphs: A Survey. Combinatorics, 2:146, 1993.

100

Minicursos Livro Texto

[82] A. Mahanti, D. Eager, and C. Williamson. Temporal locality and its impact on web proxy cache performance. Performance Evaluation Journal, 42(2-3):187 203, 2000. [83] C. D. Manning, P. Raghavan, and H. Schtze. Introduction to Information Retrieval. Cambridge University Press., 2008. [84] S. Milgram. The small world problem. Psychology Today, 2:6067, May 1967. [85] A. Mislove. Online Social Networks: Measurement, Analysis, and Applications to Distributed Information Systems. PhD thesis, Rice University, Department of Computer Science, 2009. [86] A. Mislove, H. Koppula, K. Gummadi, P. Druschel, and B. Bhattacharjee. Growth of the ickr social network. In ACM SIGCOMM Workshop on Social Networks (WOSN), pages 2530, 2008. [87] A. Mislove, M. Marcon, K. Gummadi, P. Druschel, and B. Bhattacharjee. Measurement and analysis of online social networks. In ACM SIGCOMM Conference on Internet Measurement (IMC), pages 2942, 2007. [88] C. Moore and M. Newman. Epidemics and percolation in small-world networks. Physical Review E, 61(5):5678, 2000. [89] A. Nazir, S. Raza, and C. Chuah. Unveiling facebook: A measurement study of social network based applications. In ACM SIGCOMM Conference on Internet Measurement (IMC), pages 4356, 2008. [90] A. Nazir, S. Raza, D. Gupta, C. Chua, and B. Krishnamurthy. Network level footprints of facebook applications. In ACM SIGCOMM Conference on Internet Measurement (IMC), pages 6375, 2009. [91] M. Newman. The structure of scientic collaboration networks. 98(2):404409, 2001. [92] M. Newman. Assortative mixing in networks. Physical Review E, 89(20):208701, 2002. [93] M. Newman. The structure and function of complex networks. SIAM Review, 45:167256, 2003. [94] M. Newman. Coauthorship networks and patterns of scientic collaboration. 101(1):52005205, 2004. [95] M. Newman and M. Girvan. Finding and evaluating community structure in networks. Physical Review E, 69(2):26113, 2004. [96] V. Ng. Shallow semantics for coreference resolution. In Proceedings of the 20th International Joint Conference on Articial Intelligence, pages 16891694, 2007.

XXIX Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos - SBRC 2011

101

[97] J. Otterbacher. helpfulness in online communities: a measure of message quality. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 955964, 2009. [98] L. Ratinov and D. Roth. Design challenges and misconceptions in named entity recognition. In Proceedings of the Thirteenth Conference on Computational Natural Language Learning, CoNLL 09, pages 147155, 2009. [99] N. O. Report. Social networks & blogs now 4th most popular online activity, 2009. http://tinyurl.com/cfzjlt. Acessado em Maro/2010. [100] B. Ribeiro and D. Towsley. Estimating and Sampling Graphs with Multidimensional RandomWalks. In Proceedings ACM SIGCOMM Internet Measurement Conference, 2010. [101] C. P. Robert and G. Casella. Monte Carlo Statistical Methods. Springer-Verlag, second edition, 2005. [102] P. Rodriguez. Web infrastructure for the 21st century. WWW09 Keynote, 2009. http://tinyurl.com/mmmaa7. Acessado em Maro/2010. [103] T. Sakaki, M. Okazaki, and Y. Matsuo. Earthquake shakes twitter users: realtime event detection by social sensors. In WWW 10: Proceedings of the 19th international conference on World wide web, pages 851860, 2010. [104] W. Santos, G. Pappa, W. Meira Jr., D. Guedes, A. Veloso, V. Almeida, A. Pereira, P. Guerra, A. Silva, F. Mouro, T. Magalhes, F. Machado, L. Cherchiglia, L. Simes, R. Batista, F. Arcanjo, G. Brunoro, N. Mariano, G. Magno, M. T. Ribeiro, L. Teixeira, A. S. Silva, B. W. Reis, and R. H. Silva. Observatrio da web: Uma plataforma de monitorao, sntese e visualizao de eventos massivos em tempo real. In Anais do XXXVII Seminrio Integrado de Hardware e Software, SEMISH10, pages 110120, 2010. [105] F. Schneider, A. Feldmann, B. Krishnamurthy, and W. Willinger. Understanding online social network usage from a network perspective. In ACM SIGCOMM Internet Measurement Conference (IMC), pages 3548, 2009. [106] S. Schroeder. 20 ways to aggregate your social networking proles, Mashable, 2007. http://tinyurl.com/2ceus4. Acessado em Maro/2010. [107] J. Thom-Santelli, M. Muller, and D. Millen. Social tagging roles: publishers, evangelists, leaders. In ACM SIGCHI Conference on Human factors in Computing Systems (CHI), pages 10411044, 2008. [108] M. Torkjazi, R. Rejaie, and W. Willinger. Hot today, gone tomorrow: On the migration of myspace users. In ACM SIGCOMM Workshop on Online social networks (WOSN), pages 4348, 2009. [109] K. S. Trivedi. Probability and statistics with reliability, queuing and computer science applications. John Wiley and Sons Ltd., Chichester, UK, 2002.

102

Minicursos Livro Texto

[110] A. Tumasjan, T. Sprenger, P. Sandner, and I. Welpe. Predicting elections with twitter: What 140 characters reveal about political sentiment. 2010. [111] B. Viswanath, A. Mislove, M. Cha, and K. Gummadi. On the evolution of user interaction in facebook. In Proceedings of the 2nd ACM SIGCOMM Workshop on Social Networks (WOSN09), 2009. [112] B. Viswanath, A. Mislove, M. Cha, and K. P. Gummadi. On the evolution of user interaction in Facebook. In ACM SIGCOMM Workshop on Online Social Networks (WOSN), pages 3742, 2009. [113] S. Wasserman, K. Faust, and D. Iacobucci. Social Network Analysis: Methods and Applications (Structural Analysis in the Social Sciences). Cambridge University Press, 1994. [114] D. Watts. Small Worlds: the Dynamics of Networks Between Order and Randomness. Princeton University Press, 1999. [115] D. Watts. A simple model of global cascades on random networks. 99(9):5766 5771, 2002. [116] J. Weng, E.-P. Lim, J. Jiang, and Q. He. Twitterrank: nding topic-sensitive inuential twitterers. In ACM international conference on Web search and data mining (WSDM), pages 261270, 2010. [117] C. Williamson. On lter effects in web caching hierarchies. ACM Transactions on Internet Technology (TOIT), 2(1):4777, 2002. [118] J. Zhang, M. Ackerman, and L. Adamic. Expertise networks in online communities: Structure and algorithms. In World Wide Web Conference (WWW), pages 221230, 2007. [119] M. Zink, K. Suh, Y. Gu, and J. Kurose. Watch global, cache local: YouTube network traces at a campus network - measurements and implications. In IEEE Multimedia Computing and Networking (MMCN), 2008.