SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

52
SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira

Transcript of SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Page 1: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS

Natália Cabral e Tiago Ferreira

Page 2: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Roteiro

Motivação

Redes Sociais

Sistemas de Recomendação

Mecanismo de recomendação baseado na topologia

Extensão do Mecanismo de Recomendação

Conclusão

Page 3: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Motivação

“ 43,9 milhões de usuários utilizando Redes Sociais no Brasil”

" 90,8% dos usuários da internet no Brasil, fazem parte de alguma rede social.”

* dados da comScore - Junho de 2011 ( http://www.comscore.com/por/ )

Page 4: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Motivação

Como encontrar usuários relevantes em meio a uma imensidão? Navegar entre listas de amizades dos

usuários Busca de usuários Catálogo de usuários

Sistemas de Recomendação pode ser a solução

Page 5: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Redes Sociais

“Estruturas organizacionais

dinâmicas que visam conectar um conjunto de indivíduos, promovendo o

relacionamento, a comunicação, e a

partilha de experiências,

agrupando-os de acordo com interesses em

comum.”

Page 6: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Sistema de Recomendação

Um sistema que tenta prever o gosto de cada usuário baseado em informação submetida por si e pelos restantes

utilizadores.

Page 7: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Sistemas de Recomendação de Usuários

Necessidade de encontrar pessoas para adicionar na lista de amigos

Dois objetivos: Encontrar pessoas que você já conhece Encontrar pessoas que você gostaria de

conhecer

Page 8: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Facebook

Sistemas de Recomendação de Usuários

Page 9: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Diferente dos outros sistemas de recomendação: Relação de amizade bi-direcional Apresentação da lista de amigos no perfil

Sistemas de Recomendação de Usuários

Page 10: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Estudo de Caso

Encontrar as repostas para:

Qual a diferença em eficiência de diferentes algoritmos de recomendação?

Que características são diferentes na recomendação de uma pessoa conhecida e uma desconhecida?

Um sistema de recomendação é efetivo em aumentar a quantidade de amigos numa rede social?

Qual o impacto que um sistema de recomendação causa em um site?

Page 11: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Estudo de Caso

Implementação de sistemas de recomendação de usuários para o sistema Beehive Quatro algoritmos diferentes

Realização de dois experimentos Personalized Survey Controlled field study

Page 12: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Beehive

Rede Social Corporativa da IBM Lançada em setembro de 2007 Mais de 38000 usuários Média de 8.2 amigos por usuário Conceito de amizade unidirecional

Page 13: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmos

 Baseado em Conteúdo

 Baseado na Estrutura da

Rede

Content Matching Content-plus-Link

Friend-of-Friend SONAR

Page 14: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Content Matching

“Se duas pessoas escrevem na rede sobre assuntos similares, essas têm interesse em se conhecer”

Cada usuário passou a ter uma “nuvem de tags”

A e B são considerados similares se eles

compartilham tags em comum e também se

somente poucas pessoas compartilham

tal tag

Page 15: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Content-plus-Link

Tem como objetivo diminuir a quantidade de pessoas desconhecidas na recomendação

Content Matching + Social link information A similaridade entre dois usuários é

aumentada em 50% se entre esse houver um link válido na rede. Ex.: Alice comentou no perfil de Bob, que é amigo

de Charles

Page 16: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Friend-of-Friend

“Se muitos dos meus amigos têm Alice como amiga, Alice pode ser minha amiga” Algoritmo base do You May Know do

Facebook

Não pode fazer recomendações para pessoas sem amigos adicionados

Page 17: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

SONAR

Algoritmo baseado no sistema SONAR Sistema que têm dados públicos sobre IBM

Publicações, Amizade, Blogs, Orgonograma, Patentes, Sistema de tags dos usuários, Project Wiki

Através desses dados, pode-se saber se dois usuários têm alguma interação. Ex.: Ser co-autor do mesmo artigo, comentar no blog, ...

Lista de usuários foi ranqueada baseada na proximidade e frequência da interação com cada usuários

Page 18: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Primeiro Experimento: Personalized Survey

500 usuários foram selecionados para participar do experimento

Para cada usuário foi apresentada uma página web com 12 usuários recomendados 3 de cada algoritmo

Page 19: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Para cada recomendação feita, o usuário deveria responder: Você já conhece essa pessoa? Foi uma boa recomendação? A razão pela qual foi recomendada ajudou na

decisão? Você vai adicionar essa pessoa?

Primeiro Experimento: Personalized Survey

Page 20: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Resultados do Primeiro Experimento

Entendendo a necessidade do usuário 95% considerou útil a recomendação de

usuários e gostaria que o site tivesse essa funcionalidade

Mais de 60% disse estar interessada em conhecer novas pessoas na rede A grande maioria dos entrevistados

adicionam desconhecidos por amigos em comum ou interesses similares

Page 21: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Resultados do Primeiro Experimento

Page 22: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

A avaliação dos usuários é diretamente proporcional a porcentagem de conhecidos recomendados

Usuários afirmaram que mostrar o motivo da recomendação é necessário Muitas tags foram consideradas aleatórias, genéricas,

fracas ou irrelevantes Usuários querem o máximo de informação útil possível

sobre a recomendação

Resultados do Primeiro Experimento

Page 23: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

A quantidade de pessoas adicionadas foi menor que a quantidade de boas recomendações

Usuários sugeriram adicionar outras opções além de adicionar Adicionar pessoa à lista de interesse Recomendar a pessoa para outra

Resultados do Primeiro Experimento

Page 24: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Segundo Experimento: Controlled Field Study

Testar os algoritmos de uma forma mais natural

Content Matching

Content plus Link

Friend of Friend

SONAR

Nenhum sistema de recomenda

ção

Page 25: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Resultados do Segundo Experimento

Porcentagem de pessoas adicionadas

Todos os algoritmos foram eficientes em aumentar a quantidade de amigos na rede SONAR – 13% Grupo sem sistema de recomendação – 5%

SONAR FoF CplusLink Content

59,7% 47,7% 40,0% 30,5%

Page 26: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Sistemas de recomendação são efetivos em aumentar a quantidade de atividades no site:

Content

Matching

Content plus Link

Friend of

Friend

SONAR

Nenhum sistema de

recomendação

+ 13,7% -24,4%

Resultados do Segundo Experimento

Page 27: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Conclusão dos Experimentos Todos os quatro algoritmos são eficientes

na recomendação de usuários e aumentam significativamente a lista de amigos

Algoritmos baseados na estrutura da rede obtiveram melhores avaliações que algoritmos baseados em conteúdo

Page 28: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Conclusão dos Experimentos SONAR foi o algoritmo que mais se

adequou a rede. Algoritmos baseados na estrutura da

rede são melhores em encontrar pessoas conhecidas

Algoritmos baseados em conteúdo são melhores em encontrar pessoas que o usuário ainda não conhece

Page 29: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Conclusão dos Experimentos Algoritmo ideal:

Inicialmente baseado na estrutura da rede Formar a lista de amigos

Em segundo plano, baseado em conteúdo

Depois da lista de amigos estabilizada, encontrar pessoas com interesses em comum

Page 30: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmo Proposto

Dissertação de mestrado de Nitai B. Silva• Proposta de um algoritmo de

recomendação de usuários para a rede Oro-Aro

• Algoritmo baseado na topologia da rede• Utiliza FoF

Page 31: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Oro-Aro

Rede social corporativa construída pelo C.E.S.A.R. Desenvolvido com o objetivo de facilitar a

troca de conhecimento e experiência entre os alunos do CIn e dos colaboradores do C.E.S.A.R

Há 634 usuários e 5076 arestas (relacionamento unidirecional)

Foram selecionados para a pesquisa apenas os relacionamentos bidirecionais

Page 32: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Visão Geral do Algoritmo

Etapas do mecanismo recomendação: Filtering Ordering

Além das fases tradicionais, na fase de ordering, é proposta uma solução utilizando Algorimo Genético

Page 33: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Etapa de Filtering

Baseado no conceito de coeficiente de clusterização, das redes Small Word

“It’s more probable that you know a friend of your friend tha any other random person”

Page 34: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Etapa de Ordenação

Avalia o grau de relacionamento entre o nó central e o nó que poderá ser avaliado

A métrica utilizada é um único valor, que será extraída de uma média ponderada entre 3 índices

Os 3 índices medem propriedades específicas de um sub-grafo

Page 35: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Etapa de Ordenação

Primeiro Índice Conceito de FOF (Friend-of-Friends) Número de nós adjacentes que são ligado

ao mesmo tempo ao nó central e ao nó que será recomendado

Amigos em comum

Page 36: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Etapa de Ordenação

Segundo Índice Mede o grau de coesão entre o “pequeno”

grupo formado pelos amigos em comum Se o índice tiver um valor baixo então as

pessoas dentro deste grupo não são bem relacionadas

Page 37: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Etapa de Ordenação

Terceiro Índice Mede o grau de coesão entre o “grande”

grupo formado pelos amigos de ambos os nós

O terceiro e segundo índice, apesar de parecidos, são independentes

Page 38: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmo Genético

Técnica utilizada para encontrar soluções aproximadas de problemas de otimização e

busca.

Page 39: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmo Genético

Gerar os 3 índices automaticamente para que possa oferecer a melhor taxa de acerto

Utilizar toda a topologia em volta do nó central Mais quantidade de informação Modificar a etapa de filtragem para

adicionar nós adjacentes

Page 40: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmo Genético

Algoritmo:1. Geração de 200 indivíduos de forma aleatória

2. Calcular a função de avaliação para todos os indivíduos

3. Escolher os 13 melhores segundo a função de avaliação

4. Realizar Crossjoin entre os 13 melhores, não podendo repetir os pesos

5. Para cada elemento do item anterior gerar filhos, com mutação e crossover

6. Recalcular a função de avaliação para os nós

7. Pegar a média das 7 melhores funções de avaliação

8. Enquanto a média da função de avaliação não se repetir por 4x, repetir os passos de 1 a 7

Page 41: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Algoritmo Genético

200 indivíduos

Calcula função de avaliação

13 melhores indivíduo

s

Gerar filhos

Recalcular função de avaliação

Média das 7

melhores

Crossjoin entre os

13

Page 42: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Experimento do Algoritmo Proposto

Usuários da rede social Oro-Aro Requisitos:

Possuir no mínimo 13 relacionamentos Ter acessado a rede nos últimos 45 dias

70 usuários selecionados Dois sistemas de recomendação

testados, FOF e o Algoritmo Proposto 14 usuários para FOF e 56 para o

Algoritmo Proposto

Page 43: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Resultados

Oro-Aro

Friends-of-Friends Algoritmo Proposto

72,22% 77,69%

Page 44: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Extensão do Mecanismo

Objetivo Melhorar taxa de acerto Lever em conta mais dados da topologia,

dados que são exclusivos da Redes Sociais Educacionais

Abordagens propostas Alteração do algoritmo genético Adição de mais um índice que envolva a

topologia de uma rede social educacional Avaliar e aplicar utilizando o Redu (Rede

Social Educacional)

Page 45: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Extensão do Mecanismo

Alteração do algoritmo genético A.G. não converge para determinados

dados Reavaliar a função de avaliação

Page 46: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Extensão do Mecanismo

Adição de mais um índice que envolva a topologia de uma rede social educacional Explocar a hierarquia do Redu

Page 47: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

AVA

Curso

Disciplina

Módulos

Aulas

Curso Curso

Disciplina

Disciplina

Extensão do Mecanismo

Page 48: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Extensão do Mecanismo

Avaliar e aplicar solução no Redu Escolher usuários para utilizar os 3 tipos de

sistemas recomendações existente FOF, baseado em heurísticas e o Algoritmo

Proposto Analisar os pontos positivos de cada

sistema de recomendação Escolher a melhor abordagem para cada

situação

Page 49: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Conclusão

Sistema de recomendação é extremamente necessário pela quantidade de informação (usuário)

Aplicação de várias técnicas auxiliam na resolução de problemas

Quanto mais dados são analisados, menor a eficiência na execução

A topologia é um importante meio para extrair informações

Page 50: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Conclusão

As vezes a topologia não é suficiente para aplicar boas recomendações

Para análise da topologia, deve existir dados suficientes

Page 51: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Dúvidas?

Page 52: SISTEMA DE RECOMENDAÇÃO DE USUÁRIOS EM REDE SOCIAIS Natália Cabral e Tiago Ferreira.

Referências

Cho, H., Gay, G., Davidson, B., and Ingraffea, A. R. (2007). Social networks, communi-cation styles, and learning performance in a cscl community. Computers & Education,49(2), 309–329

Chen, J., Geyer, W., Dugan, C., and Guy, I. Make new friends, but keep the old:  recommending people on social networking sites. Proc. CHI, pp. 201-210. 2009.

N. B. Silva, I.FR. Tsang, G. D. C. Cavalcanti, and I.FJ. Tsang, “A graph-based friend recommendation system using genetic algorithm,” in Evolutionary Computation (CEC), 2010 IEEE Congress on, jul. 2010, pp. 1 –7.

http://www.cgi.br/publicacoes/pesquisas/govbr/cgibr-nicbr-censoweb-govbr-2010.pdf