SlideShare uma empresa Scribd logo
1 de 88
Baixar para ler offline
Sistemas de recomendação

Márcio Bortolini dos Santos
antes...
agora...
Há uma sobrecarga de informação
Muitas vezes inúteis
Gastamos muito tempo escolhendo
“A lot of times, people don’t know what
they want until you show it to them.”
Steve Jobs
“We are leaving the Information age, and
entering into the Recommendation age.”
Chris Anderson, from book Long Tail
O que é recomendar
Amigos

Que carro comprar?

Compre este..
Família

Recomendações sociais
Avalie itens

Sistema

Que carro comprar?

Compre este..

Recomendações por interações
Sistemas de recomendação
Os sistemas de recomendação surgiram
para auxiliar no processo social de
indicar e receber indicações

São projetados para nos sugerir
coisas de nosso interesse.
Motivação
Netflix
–

2/3 dos aluguéis de filmes vêm de recomendações

Google News
–

38% das notícias mais clicadas vêm de
recomendação

Amazon
–

35% das vendas vêm de recomendação
Estratégias de Recomendação

Existem algumas estratégias empregadas para
efetuar as recomendações.
Reategui e Cazella (2005) definem cinco estratégias mais
utilizadas para recomendação.
listas de recomendação
listas de recomendação
Vantagens/Desvantagens
Principal vantagem é a facilidade de implementação.,
basta manter-se listas de acordo com as necessidades de
marketing, de aumento de lucratividade, de disseminação
de informações, etc.
A desvantagem é que as recomendações não são
dirigidas a cada usuário independentemente, mas sim a
todos os usuários sem distinção, ou seja ao público em
geral, não sendo personalizadas para um usuário
específico.
Avaliações de usuários
Avaliações de usuários
Suas recomendações
Suas recomendações
Obtenção dos dados dos usuários

Implícita
Explícita
Usuários que se interessaram por X
também se interessaram por Y
Usuários que se interessaram por X
também se interessaram por Y
Usuários que se interessaram por X
também se interessaram por Y
Obtenção dos dados dos usuários

É a forma mais complexa de recomendação, pois ela exige
uma análise bastante profunda dos hábitos dos usuários, de
modo que possa identificar padrões e recomendar itens
com base nestes padrões (Reategui e Cazella, 2005).
Associação por conteúdo
Associação por conteúdo
Associação por conteúdo
Associação por conteúdo
Obtenção dos dados dos itens

Reategui e Cazella (2005), definem que, nesta estratégia, a
recomendação é feita com base no conteúdo de um item
em específico, por exemplo um autor, um compositor, um
editor, etc. Para tal, se faz necessário encontrar associações
entre os itens, porém estas estão num escopo mais restrito.
Técnicas de Recomendação

Segundo Reategui e Cazella (2005), são estas técnicas
fundamentam o funcionamento dos sistemas de
recomendação.
Colaborativos
Baseados em conteúdo
Híbridos
Colaborativos

A essência está na troca de experiências entre as pessoas
que possuem interesses comuns.
Filtra as avaliações dos usuários.
Recomenda itens para usuários com perfis semelhantes.
Colaborativos
Usuário

Tablet

Antônio

Desktop

x

Smartphone

Notebook

x
x

Juliana

Rosana

x

x
x

x

x
x

Paulo

Celular

x

Jéssica
Marcos

Ultrabook

x
x

x
Colaborativos
Passos
Armazenamento das informações dos usuários.
Cálculo de semelhança entre os usuários.
Agrupamento de usuários com preferências semelhantes.
Predição da pontuação de um item para o usuário baseado
nas avaliações dos usuários mais semelhantes a ele
Colaborativos

Forma de avaliação dos usuários
KNN (K vizinhos mais próximos)

similaridade de um usuário-alvo com outros usuários
Colaborativos Similaridade
Distância euclidiana
Colaborativos Similaridade
Função do Cosseno
Colaborativos Similaridade
Função do Cosseno
Colaborativos Similaridade
Predizer da pontuação de um item

•

•

Mais formalmente, a pontuação R(u,i) do item i para o usuário u é estimada
baseada na pontuação R(u’,i) atribuída ao mesmo item i pelos usuários u’ que são
similares ao usuário em questão.
O valor de uma pontuação desconhecida r(u,i) para o usuário u e item i é
normalmente computado como uma agregação de pontuações de outros usuários
(por exemplo, os N mais similares) para o mesmo item i.
Colaborativos Similaridade
Exemplo:

•

•

•

Supondo a existência de um sistema de recomendação de leituras onde os usuários
tem acesso aos livros e podem avaliá-los quanto a satisfação.
Para este feedback uma escala Likert de 5 pontos é disponibilizada
(5 significa adorei e 1 significa detestei o item).
Uma matriz de relação usuários x itens pode ser disponibilizada.
Colaborativos Similaridade

Esta matriz nos apresenta a relação usuário x item, onde 5 usuários pontuaram
5 itens (A, B, C, D e E). A esparcialidade desta matriz seria de 8%, ou seja,
apenas 8% das avaliações possíveis não foram feitas. Estes itens não avaliados
são potenciais recomendações.
Colaborativos Similaridade
Primeiro Passo
Calcula-se o peso em relação a similaridade do usuário-alvo.
Para tanto utiliza-se uma técnica denominada de “k-nearest-neighbor” ou “userbased”.
A definição da similaridade pode ser realizada através de diversos coeficientes,
sendo mais comumente aplicado o coeficiente de correlação de Pearson.
Observa-se a necessidade de mais de uma avaliação em comum para que a
correlação seja viável, e os resultados variam entre 1 para similaridade total, e -1
para total dissimilaridade.
Colaborativos

Similaridade

Coeficiente de Pearson
assumindo na correlação U1 = a e U2 = u, teríamos:

?

Avaliação que a deu para o item i
Avaliação que u deu para o item i
Média das avaliações de u em comun com a
Média das avaliações de a em comun com u

Alta similaridade
Média similaridade
Nada pode ser dito
Nada pode ser dito
Colaborativos
Segundo Passo
Seleciona-se um subconjunto de usuários com maiores similaridades :
Baseado no resultado do coeficiente de Pearson é definido este subconjunto
(com foco no usuário alvo da recomendação – U1).
Colaborativos
Segundo Passo
Calculam-se as predições (Recomendações): tendo um item a ser recomendado
para um usuário alvo (item que este usuário não teve acesso).
No exemplo o objetivo é predizer quanto o usuário U1 daria de avaliação para o
item B se tivesse acesso a ele.

?
Colaborativos
Cálculo da predição:
assumindo U1 = a como usuário alvo e B o item a ser predito

?
Nota da predição de um item i para um usuário a
(considera a partir de 3 pontos)
Média das avaliações do usuário-alvo a considerando
os artigos em comum com todos os seus similares.
Média das avaliações do usuário similar u
considerando artigos em comum com o usuário-alvo a.
Coeficiente de similaridade entre a e u.
Avaliação dada por u ao item i.

Recomendaria este item?
Colaborativos Vantagens

Independência de conteúdo
Geração de recomendações baseadas em preferências dos
usuários
Possibilidade de produzir recomendações inesperadas e de
alta qualidade.
Colaborativos Desvantagens
Problema do primeiro avaliador
Problema de pontuações esparsas
Similaridade
Novo item/usuário
Custo de processamento (Escalabilidade)
Baseados em conteúdo

Analisam as descrições de itens e de usuários.
Podem recomendar itens parecidos com outros itens que o
usuário teve interesse no passado.
Útil para produtos que contenham alguma informação
textual.
Modelos para recuperação da
informação
Modelo booleano
Modelo booleano estendido
Modelo de Espaço Vetorial (VSM) ou Modelo Vetorial
Modelo Probabilístico
Modelo baseado em agrupamento
Modelo booleano

Se baseia na teoria de conjuntos e na álgebra booleana
Documentos (D) são representados como conjuntos de
termos de indexação
As consultas (Q) são formuladas através de expressões
booleanas formadas por termos e conectivos de boole
(and, or e not)
Modelo booleano
Expressão booleana
(“modelos” and“booleanos”) or “conjuntos”
Modelo booleano
Um documento só pode ser dito como relevante ou nãorelevante
Há a necessidade de especificação de consultas
complexas
É incapaz de se representar pesos associados aos termos
desejados
Modelo booleano estendido
Considera o peso dos termos nos documentos e permite
que o usuário especifique as relevâncias dos termos para
uma determinada consulta
Esse modelo se baseia na interpretação dos operadores de
consulta conjuntivas e disjuntivas em termos de
distâncias euclidianas em um espaço t-dimensional
Modelo booleano estendido
Considerando dois termos:
Para expressões conjuntivas o ponto (1,1) é o mais
desejável.
Quanto menor a distância do documento em relação a
este ponto, maior é a similaridade em relação à busca.
Nas expressões disjuntivas o ponto (0,0) representa que
nenhum dos termos da expressão de busca está presente
no documento.
Modelo booleano estendido
Considerando dois termos t1 e t2
O espaço de busca será bidimensional
O documento é representado por um vetor de pesos
Os pesos definem a posição no espaço euclidiano
Modelo booleano estendido
A similaridade entre um documento di = (w1i, w2i) e
uma consulta q = t1 or t2 é dada por:
Modelo de Espaço Vetorial (VSM)
É definido como sendo um modelo baseado em conteúdo,
com pesos associados aos termos de indexação e, cujo
resultado da função de similaridade é dado na forma de
ranking.
Modelo de Espaço Vetorial (VSM)
Cada termo possuí um peso atrelado a si, para permitir
distinção entre os termos de acordo com sua importância.
Os pesos podem variar entre 0 e 1.
Modelo de Espaço Vetorial (VSM)
O VSM utiliza um espaço n-dimensional para representar
os termos. Neste espaço, n (ou número de dimensões)
representa o número de termos distintos.
Para cada vetor de documentos, ou de consulta, os pesos
representam as coordenadas do vetor na dimensão
correspondente.
Modelo de Espaço Vetorial (VSM)
Modelo de Espaço Vetorial (VSM)
trata como sendo vetores de valores reais contendo os pesos de cada termo
(wij) dos documentos.
A matriz é escrita na forma di = (wi1, wi2, …, win),
onde
wij corresponde ao peso do j-ésimo (j = 1, 2, ..., n) termo
do i-ésimo documento (i = 1, 2, ..., n).
Sendo assim, a coleção de objetos é representada como sendo uma matriz (D)
de termos de tamanho n x m
onde n é o número de documentos e m o número de termos.
Modelo de Espaço Vetorial (VSM)
O princípio do VSM é baseado na correlação inversa
entre a distância ou ângulo entre vetores de termos no
espaço e a similaridade entre os documentos que eles
representam.
Cálculo de similaridade
Cálculo de Similaridade
tf*idf
tf: frequência do termo no documento
idf: frequência inversa do documento
Modelo Probabilístico
Baseado na teoria das probabilidades como meio para
modelar o processo de recuperação de informação.
A similaridade é calculada pela probabilidade de tal
documento (D) ser relevante a tal consulta (Q), caso os
termos (t) da consulta apareçam no documento
Modelo Probabilístico
Presume-se que a distribuição dos termos, nos documentos
da coleção, é uma informação que é capaz de determinar a
relevância ou não de um documento em responder a uma
dada consulta.
Quando vetores de documentos e consultas (termos
envolvidos em ambas) são suficientemente similares, a
probabilidade de relevância correspondente é alta o
suficiente, para ser considerada a recuperação do documento
em resposta à consulta
Modelo Probabilístico
Cada documento é representado por um vetor de termos,
porém este difere do modelo de espaço vetorial apresentado
na seção anterior pois não há um peso atrelado a cada termo
mas sim um valor binário.
Modelo Probabilístico

probabilidade de um documento que possui o termo de indexação ser relevante
probabilidade de um documento que não possui o termo de indexação não ser
relevante
probabilidade de um documento que possui o termo de indexação não ser
relevante
probabilidade de um documento que não possui o termo de indexação ser
relevante
Modelo Probabilístico
Um documento dj é relevante a uma consulta q quando:

Assim, dada uma consulta q, o modelo probabilístico atribui a
cada documento d (como medida de similaridade) um peso Wd/q
Modelo Probabilístico
Aplicando a regra de Bayes:

probabilidade de se selecionar aleatoriamente um documento dj do
conjunto de documentos relevantes
probabilidade de se selecionar um documento dj do conjunto de documentos
não-relevantes
probabilidade que um documento selecionado aleatoriamente de uma coleção
inteira seja relevante
probabilidade que um documento selecionado aleatoriamente de uma coleção
inteira não seja relevante
Modelo Probabilístico
Considerando que P(Rel) e P(Rel) é inicialmente a mesma
para todo documento da coleção tem-se:
Modelo Probabilístico
Sabendo-se que
após transformações algébricas pode-se escrever

expressão utilizada para classificação computacional pelo modelo probabilístico
Modelo Probabilístico
1 – P(ti|Rel) é constante para todo termo de indexação ki e igual a 0,5
(50% de possibilidade de ser ou não relevante);
P(ti|Rel) = 0,5
2 – a distribuição dos termos de indexação entre os documentos nãorelevantes pode ser aproximada da distribuição dos termos de indexação
entre todos os documentos da coleção;
P(ti|Rel) = ni / N
ni é o número de documentos que contém o termo de indexação
N é o número total de documentos da coleção
Modelo Probabilístico vantagens

Necessidade da suposição da separação inicial dos
documentos nos conjuntos relevantes ou não-relevantes
Não leva em conta a frequência com que um termo de
indexação ocorre no documento (somente considera
pesos binários)
Adoção da suposição da independência dos termos
Modelo Probabilístico vantagens

O ranking dos documentos é realizado em ordem
decrescente da probabilidade de relevância.
Modelo baseado em agrupamento
Para a extração e armazenamento dos dados são
utilizados conceitos de recuperação de informação e
rede neural.
Para a busca é explorada a organização dos metadados
de itens no banco de dados para promover mecanismos
eficazes para a sua localização e reuso.
Modelo baseado em agrupamento
Nessa abordagem itens são representados por termos,
que são extraídos automaticamente, normalizados e
armazenados em repositórios.
Essas informações são utilizadas no agrupamento dos
itens.
Após a normalização dos termos são obtidas as
frequências de ocorrência no item e calculados os pesos
Modelo baseado em agrupamento

fi é a frequência do termo i
n é a quantidade total de itens
ni é a quantidade de itens que possuem o termo i.
Modelo baseado em agrupamento
O agrupamento é realizado através da identificação de
conjuntos de itens similares.
Para a recuperação de informação são utilizadas duas
formas alternativas, uma que utiliza o modelo espaço
vetorial e outra usando o modelo booleano, que,
aplicados aos agrupamentos, trazem ao usuário o
conjunto resposta.
Baseados em conteúdo Vantagens

Não possui o problema do primeiro avaliador
Possui capacidade de recomendar todos os itens
Aplica esquema de atribuição de pesos aos termos
Utiliza estratégia de casamento parcial
Documentos são ordenados de acordo com o grau de
similaridade
Baseados em conteúdo Desvantagens

Não considera aspectos como qualidade do texto e renome
do autor
Super especialização
Conteúdo dos dados pouco estruturados
Não considera a correlação entre os termos de indexação
Híbrido

Faz uso de umas ou mais técnicas de recomendação
Pode ser feita:
●

●

●

implementando ambos métodos separadamente e combinando os
resultados
incorporando algumas características da abordagem baseada em
conteúdos na a abordagem colaborativa
construindo um modelo unificado que incorpora as características de
ambos
Híbrido
Dúvidas?
Fontes
BONFIM, Marcello Erick. RECUPERAÇÃO DE DOCUMENTOS TEXTO USANDO MODELOS PROBABILISTICOS
ESTENDIDOS. Iniciação Científica Cesumar, v. 11, n. 2, 2009.
LOPES, Rafael Barbolo. sistemas de recomendação <http://www.slideshare.net/barbolo/sistemas-de-recomendacao>
Gois, Adriana; Berg, Anderson; Teixeira, Joyce V. . Sistemas de recomendação <
http://www.slideshare.net/berg_pe/sistemas-de-recomendao-9889295>
Cazella, . Sílvio César . SISTEMAS DE RECOMENDAÇÃO. <
http://www.nuted.ufrgs.br/compoa_2012_1/SRFColaborativa.pdf>
MORAIS, Edison Andrade Martins; AMBRÓSIO, Ana Paula L. Mineração de Textos. Relatório Técnico–Instituto de
Informática (UFG), 2007.
GERALDO, André Pinto. Aplicando algoritmos de mineração de regras de associação para recuperação de informações
multilíngues. 2009.
BAEZA-YATES e RIBEIRO-NETO apud LOPES, Giseli Rabello - Sistema de Recomendação para Bibliotecas Digitais sob
a Perspectiva da Web Semântica. Porto Alegre: Programa de Pós-Graduação em Computação, 2007.
BASU, Chumki et al. Recommendation as classification: Using social and content-based information in recommendation.
In: AAAI/IAAI. 1998. p. 714-720.
BRADLEY, Keith; SMYTH, Barry. Improving recommendation diversity. In:Proceedings of the Twelfth National
Conference in Artificial Intelligence and Cognitive Science (AICS- 01). 2001.
GOLDBERG et.al. apud HERLOCKER, Jonathan Lee. Understanding and improving automated collaborative filtering
systems. 2000. Tese de Doutorado. University of Minnesota.
Fontes
FERREIRA, Vinicius Hartmann. Sistema de Recomendação de Objetos de Aprendizagem. TCC (graduação em Ciência da
Computação) - Universidade do Vale do Itajaí, Itajaí, 2009. Disponível em : <http://Siaibib01.univali.br/pdf/Vinicius
Hartmann Ferreira.pdf>.
LOPES, Giseli Rabello - Sistema de Recomendação para Bibliotecas Digitais sob a Perspectiva da Web Semântica. Porto
Alegre: Programa de Pós-Graduação em Computação, 2007.
HERLOCKER, Jonathan Lee. Understanding and improving automated collaborative filtering systems. 2000. Tese de
Doutorado. University of Minnesota.
KIM, Byeong Man et al. A new approach for combining content-based and collaborative filters. Journal of Intelligent
Information Systems, v. 27, n. 1, p. 79-91, 2006.
LICHTNOW, Daniel et al. O uso de técnicas de recomendação para apoio à aprendizagem colaborativa. Revista Brasileira
de Informática na Educação. vol. 14, n.3, set. 2006.
PAZZANI, Michael J.; BILLSUS, Daniel. Content-based recommendation systems. In: The adaptive web. Springer Berlin
Heidelberg, 2007. p. 325-341.
SALTON, Gerard; BUCKLEY, Christopher. Term Weighting Approaches in Automatic Text Retrieval. Information
Processing & Management 24 (5), 513-523, 1988.
VIEIRA, Felipe José Rocha; NUNES, Maria Augusta Silveira Netto. DICA: Sistema de Recomendação de Objetos de
Aprendizagem Baseado em Conteúdo. Scientia Plena, v. 8, n. 5, 2012.
ZAINA, L., BRESSAN, G., CARDIERI, M., RODRIGUES JÚNIOR, J.. e-LORS: Uma Abordagem para Recomendação de
Objetos de Aprendizagem. Revista Brasileira de Informática na Educação, 20, abr. 2012. Disponível em:
<http://www.brie.org/pub/index.php/rbie/article/view/1289>. Acesso em: 15 Mai. 2013.

Mais conteúdo relacionado

Destaque

Modelo de Espaço Vetorial
Modelo de Espaço VetorialModelo de Espaço Vetorial
Modelo de Espaço Vetorial
Alexandre Duarte
 
Aula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
Aula 02 - Recuperação da Informação / Modelos de Sistemas de RecuperaçãoAula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
Aula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
Nilton Heck
 

Destaque (18)

Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e Classificação
 
L'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrainL'agriculture intelligente face au climat sur le terrain
L'agriculture intelligente face au climat sur le terrain
 
Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendação
 
Atividades Científica
Atividades CientíficaAtividades Científica
Atividades Científica
 
Causalidade e Abdução
Causalidade e AbduçãoCausalidade e Abdução
Causalidade e Abdução
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de Dados
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis Nominais
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de Experimentos
 
Transformação de Dados
Transformação de DadosTransformação de Dados
Transformação de Dados
 
Agrupamento com K-Means
Agrupamento com K-MeansAgrupamento com K-Means
Agrupamento com K-Means
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!
 
Modelo de Espaço Vetorial
Modelo de Espaço VetorialModelo de Espaço Vetorial
Modelo de Espaço Vetorial
 
Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de Experimentos
 
Transmissão de rádio terrestre e por satélite
Transmissão de rádio terrestre e por satéliteTransmissão de rádio terrestre e por satélite
Transmissão de rádio terrestre e por satélite
 
Aula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
Aula 02 - Recuperação da Informação / Modelos de Sistemas de RecuperaçãoAula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
Aula 02 - Recuperação da Informação / Modelos de Sistemas de Recuperação
 
GIS in land suitability mapping
GIS in land suitability mappingGIS in land suitability mapping
GIS in land suitability mapping
 
Projeto de Experimentos
Projeto de ExperimentosProjeto de Experimentos
Projeto de Experimentos
 

Semelhante a Tchêlinux Porto Alegre 2013 - Sistemas de Recomendação

Ferramentas de Recomendação
Ferramentas de RecomendaçãoFerramentas de Recomendação
Ferramentas de Recomendação
Joao Alqueres
 
Aprendizagem Ativa em Sistemas de Filtragem Colaborativa
Aprendizagem Ativa em Sistemas de Filtragem ColaborativaAprendizagem Ativa em Sistemas de Filtragem Colaborativa
Aprendizagem Ativa em Sistemas de Filtragem Colaborativa
igorsampaio
 
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
IvairLima3
 
Collaborative filtering
Collaborative filteringCollaborative filtering
Collaborative filtering
Zhang Yi Ling
 
Análise de Clusters - White Paper ELOGroup
Análise de Clusters - White Paper ELOGroupAnálise de Clusters - White Paper ELOGroup
Análise de Clusters - White Paper ELOGroup
EloGroup
 

Semelhante a Tchêlinux Porto Alegre 2013 - Sistemas de Recomendação (20)

Palestra unesp 2012
Palestra unesp 2012Palestra unesp 2012
Palestra unesp 2012
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
 
Personalização: O que é?
Personalização: O que é?Personalização: O que é?
Personalização: O que é?
 
Ferramentas de Recomendação
Ferramentas de RecomendaçãoFerramentas de Recomendação
Ferramentas de Recomendação
 
Sistemas de Recomendação na web
Sistemas de Recomendação na webSistemas de Recomendação na web
Sistemas de Recomendação na web
 
Aprendizagem Ativa em Sistemas de Filtragem Colaborativa
Aprendizagem Ativa em Sistemas de Filtragem ColaborativaAprendizagem Ativa em Sistemas de Filtragem Colaborativa
Aprendizagem Ativa em Sistemas de Filtragem Colaborativa
 
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
 
Sistemas Cooperativos Aula 14 - Técnicas (Sistemas de recomendação)
Sistemas Cooperativos Aula 14 - Técnicas (Sistemas de recomendação)Sistemas Cooperativos Aula 14 - Técnicas (Sistemas de recomendação)
Sistemas Cooperativos Aula 14 - Técnicas (Sistemas de recomendação)
 
Sistemas de Recomendação
Sistemas de Recomendação Sistemas de Recomendação
Sistemas de Recomendação
 
Tcc Parte 1 Desenvolvendo Plano De Trabalho
Tcc   Parte 1  Desenvolvendo Plano De TrabalhoTcc   Parte 1  Desenvolvendo Plano De Trabalho
Tcc Parte 1 Desenvolvendo Plano De Trabalho
 
Sistema_de_Recomendacao_Publico.pptx
Sistema_de_Recomendacao_Publico.pptxSistema_de_Recomendacao_Publico.pptx
Sistema_de_Recomendacao_Publico.pptx
 
Case Recommender: Fazendo recomendação em Python
Case Recommender: Fazendo recomendação em PythonCase Recommender: Fazendo recomendação em Python
Case Recommender: Fazendo recomendação em Python
 
Solutionrank
SolutionrankSolutionrank
Solutionrank
 
O que é Analytics?
O que é Analytics?O que é Analytics?
O que é Analytics?
 
Lógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendaçãoLógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendação
 
Collaborative filtering
Collaborative filteringCollaborative filtering
Collaborative filtering
 
Sld 4
Sld 4Sld 4
Sld 4
 
Pesquisa Exploratória em Marketing
Pesquisa Exploratória em MarketingPesquisa Exploratória em Marketing
Pesquisa Exploratória em Marketing
 
Análise de Clusters - White Paper ELOGroup
Análise de Clusters - White Paper ELOGroupAnálise de Clusters - White Paper ELOGroup
Análise de Clusters - White Paper ELOGroup
 

Tchêlinux Porto Alegre 2013 - Sistemas de Recomendação

  • 1. Sistemas de recomendação Márcio Bortolini dos Santos
  • 4. Há uma sobrecarga de informação
  • 6. Gastamos muito tempo escolhendo
  • 7. “A lot of times, people don’t know what they want until you show it to them.” Steve Jobs
  • 8. “We are leaving the Information age, and entering into the Recommendation age.” Chris Anderson, from book Long Tail
  • 9. O que é recomendar
  • 10. Amigos Que carro comprar? Compre este.. Família Recomendações sociais
  • 11. Avalie itens Sistema Que carro comprar? Compre este.. Recomendações por interações
  • 12. Sistemas de recomendação Os sistemas de recomendação surgiram para auxiliar no processo social de indicar e receber indicações São projetados para nos sugerir coisas de nosso interesse.
  • 13. Motivação Netflix – 2/3 dos aluguéis de filmes vêm de recomendações Google News – 38% das notícias mais clicadas vêm de recomendação Amazon – 35% das vendas vêm de recomendação
  • 14. Estratégias de Recomendação Existem algumas estratégias empregadas para efetuar as recomendações. Reategui e Cazella (2005) definem cinco estratégias mais utilizadas para recomendação.
  • 17. Vantagens/Desvantagens Principal vantagem é a facilidade de implementação., basta manter-se listas de acordo com as necessidades de marketing, de aumento de lucratividade, de disseminação de informações, etc. A desvantagem é que as recomendações não são dirigidas a cada usuário independentemente, mas sim a todos os usuários sem distinção, ou seja ao público em geral, não sendo personalizadas para um usuário específico.
  • 22. Obtenção dos dados dos usuários Implícita Explícita
  • 23. Usuários que se interessaram por X também se interessaram por Y
  • 24. Usuários que se interessaram por X também se interessaram por Y
  • 25. Usuários que se interessaram por X também se interessaram por Y
  • 26. Obtenção dos dados dos usuários É a forma mais complexa de recomendação, pois ela exige uma análise bastante profunda dos hábitos dos usuários, de modo que possa identificar padrões e recomendar itens com base nestes padrões (Reategui e Cazella, 2005).
  • 31. Obtenção dos dados dos itens Reategui e Cazella (2005), definem que, nesta estratégia, a recomendação é feita com base no conteúdo de um item em específico, por exemplo um autor, um compositor, um editor, etc. Para tal, se faz necessário encontrar associações entre os itens, porém estas estão num escopo mais restrito.
  • 32. Técnicas de Recomendação Segundo Reategui e Cazella (2005), são estas técnicas fundamentam o funcionamento dos sistemas de recomendação. Colaborativos Baseados em conteúdo Híbridos
  • 33. Colaborativos A essência está na troca de experiências entre as pessoas que possuem interesses comuns. Filtra as avaliações dos usuários. Recomenda itens para usuários com perfis semelhantes.
  • 35. Colaborativos Passos Armazenamento das informações dos usuários. Cálculo de semelhança entre os usuários. Agrupamento de usuários com preferências semelhantes. Predição da pontuação de um item para o usuário baseado nas avaliações dos usuários mais semelhantes a ele
  • 36. Colaborativos Forma de avaliação dos usuários KNN (K vizinhos mais próximos) similaridade de um usuário-alvo com outros usuários
  • 40. Colaborativos Similaridade Predizer da pontuação de um item • • Mais formalmente, a pontuação R(u,i) do item i para o usuário u é estimada baseada na pontuação R(u’,i) atribuída ao mesmo item i pelos usuários u’ que são similares ao usuário em questão. O valor de uma pontuação desconhecida r(u,i) para o usuário u e item i é normalmente computado como uma agregação de pontuações de outros usuários (por exemplo, os N mais similares) para o mesmo item i.
  • 41. Colaborativos Similaridade Exemplo: • • • Supondo a existência de um sistema de recomendação de leituras onde os usuários tem acesso aos livros e podem avaliá-los quanto a satisfação. Para este feedback uma escala Likert de 5 pontos é disponibilizada (5 significa adorei e 1 significa detestei o item). Uma matriz de relação usuários x itens pode ser disponibilizada.
  • 42. Colaborativos Similaridade Esta matriz nos apresenta a relação usuário x item, onde 5 usuários pontuaram 5 itens (A, B, C, D e E). A esparcialidade desta matriz seria de 8%, ou seja, apenas 8% das avaliações possíveis não foram feitas. Estes itens não avaliados são potenciais recomendações.
  • 43. Colaborativos Similaridade Primeiro Passo Calcula-se o peso em relação a similaridade do usuário-alvo. Para tanto utiliza-se uma técnica denominada de “k-nearest-neighbor” ou “userbased”. A definição da similaridade pode ser realizada através de diversos coeficientes, sendo mais comumente aplicado o coeficiente de correlação de Pearson. Observa-se a necessidade de mais de uma avaliação em comum para que a correlação seja viável, e os resultados variam entre 1 para similaridade total, e -1 para total dissimilaridade.
  • 44. Colaborativos Similaridade Coeficiente de Pearson assumindo na correlação U1 = a e U2 = u, teríamos: ? Avaliação que a deu para o item i Avaliação que u deu para o item i Média das avaliações de u em comun com a Média das avaliações de a em comun com u Alta similaridade Média similaridade Nada pode ser dito Nada pode ser dito
  • 45. Colaborativos Segundo Passo Seleciona-se um subconjunto de usuários com maiores similaridades : Baseado no resultado do coeficiente de Pearson é definido este subconjunto (com foco no usuário alvo da recomendação – U1).
  • 46. Colaborativos Segundo Passo Calculam-se as predições (Recomendações): tendo um item a ser recomendado para um usuário alvo (item que este usuário não teve acesso). No exemplo o objetivo é predizer quanto o usuário U1 daria de avaliação para o item B se tivesse acesso a ele. ?
  • 47. Colaborativos Cálculo da predição: assumindo U1 = a como usuário alvo e B o item a ser predito ? Nota da predição de um item i para um usuário a (considera a partir de 3 pontos) Média das avaliações do usuário-alvo a considerando os artigos em comum com todos os seus similares. Média das avaliações do usuário similar u considerando artigos em comum com o usuário-alvo a. Coeficiente de similaridade entre a e u. Avaliação dada por u ao item i. Recomendaria este item?
  • 48. Colaborativos Vantagens Independência de conteúdo Geração de recomendações baseadas em preferências dos usuários Possibilidade de produzir recomendações inesperadas e de alta qualidade.
  • 49. Colaborativos Desvantagens Problema do primeiro avaliador Problema de pontuações esparsas Similaridade Novo item/usuário Custo de processamento (Escalabilidade)
  • 50. Baseados em conteúdo Analisam as descrições de itens e de usuários. Podem recomendar itens parecidos com outros itens que o usuário teve interesse no passado. Útil para produtos que contenham alguma informação textual.
  • 51. Modelos para recuperação da informação Modelo booleano Modelo booleano estendido Modelo de Espaço Vetorial (VSM) ou Modelo Vetorial Modelo Probabilístico Modelo baseado em agrupamento
  • 52. Modelo booleano Se baseia na teoria de conjuntos e na álgebra booleana Documentos (D) são representados como conjuntos de termos de indexação As consultas (Q) são formuladas através de expressões booleanas formadas por termos e conectivos de boole (and, or e not)
  • 53. Modelo booleano Expressão booleana (“modelos” and“booleanos”) or “conjuntos”
  • 54. Modelo booleano Um documento só pode ser dito como relevante ou nãorelevante Há a necessidade de especificação de consultas complexas É incapaz de se representar pesos associados aos termos desejados
  • 55. Modelo booleano estendido Considera o peso dos termos nos documentos e permite que o usuário especifique as relevâncias dos termos para uma determinada consulta Esse modelo se baseia na interpretação dos operadores de consulta conjuntivas e disjuntivas em termos de distâncias euclidianas em um espaço t-dimensional
  • 56. Modelo booleano estendido Considerando dois termos: Para expressões conjuntivas o ponto (1,1) é o mais desejável. Quanto menor a distância do documento em relação a este ponto, maior é a similaridade em relação à busca. Nas expressões disjuntivas o ponto (0,0) representa que nenhum dos termos da expressão de busca está presente no documento.
  • 57. Modelo booleano estendido Considerando dois termos t1 e t2 O espaço de busca será bidimensional O documento é representado por um vetor de pesos Os pesos definem a posição no espaço euclidiano
  • 58. Modelo booleano estendido A similaridade entre um documento di = (w1i, w2i) e uma consulta q = t1 or t2 é dada por:
  • 59. Modelo de Espaço Vetorial (VSM) É definido como sendo um modelo baseado em conteúdo, com pesos associados aos termos de indexação e, cujo resultado da função de similaridade é dado na forma de ranking.
  • 60. Modelo de Espaço Vetorial (VSM) Cada termo possuí um peso atrelado a si, para permitir distinção entre os termos de acordo com sua importância. Os pesos podem variar entre 0 e 1.
  • 61. Modelo de Espaço Vetorial (VSM) O VSM utiliza um espaço n-dimensional para representar os termos. Neste espaço, n (ou número de dimensões) representa o número de termos distintos. Para cada vetor de documentos, ou de consulta, os pesos representam as coordenadas do vetor na dimensão correspondente.
  • 62. Modelo de Espaço Vetorial (VSM)
  • 63. Modelo de Espaço Vetorial (VSM) trata como sendo vetores de valores reais contendo os pesos de cada termo (wij) dos documentos. A matriz é escrita na forma di = (wi1, wi2, …, win), onde wij corresponde ao peso do j-ésimo (j = 1, 2, ..., n) termo do i-ésimo documento (i = 1, 2, ..., n). Sendo assim, a coleção de objetos é representada como sendo uma matriz (D) de termos de tamanho n x m onde n é o número de documentos e m o número de termos.
  • 64. Modelo de Espaço Vetorial (VSM) O princípio do VSM é baseado na correlação inversa entre a distância ou ângulo entre vetores de termos no espaço e a similaridade entre os documentos que eles representam.
  • 66. Cálculo de Similaridade tf*idf tf: frequência do termo no documento idf: frequência inversa do documento
  • 67. Modelo Probabilístico Baseado na teoria das probabilidades como meio para modelar o processo de recuperação de informação. A similaridade é calculada pela probabilidade de tal documento (D) ser relevante a tal consulta (Q), caso os termos (t) da consulta apareçam no documento
  • 68. Modelo Probabilístico Presume-se que a distribuição dos termos, nos documentos da coleção, é uma informação que é capaz de determinar a relevância ou não de um documento em responder a uma dada consulta. Quando vetores de documentos e consultas (termos envolvidos em ambas) são suficientemente similares, a probabilidade de relevância correspondente é alta o suficiente, para ser considerada a recuperação do documento em resposta à consulta
  • 69. Modelo Probabilístico Cada documento é representado por um vetor de termos, porém este difere do modelo de espaço vetorial apresentado na seção anterior pois não há um peso atrelado a cada termo mas sim um valor binário.
  • 70. Modelo Probabilístico probabilidade de um documento que possui o termo de indexação ser relevante probabilidade de um documento que não possui o termo de indexação não ser relevante probabilidade de um documento que possui o termo de indexação não ser relevante probabilidade de um documento que não possui o termo de indexação ser relevante
  • 71. Modelo Probabilístico Um documento dj é relevante a uma consulta q quando: Assim, dada uma consulta q, o modelo probabilístico atribui a cada documento d (como medida de similaridade) um peso Wd/q
  • 72. Modelo Probabilístico Aplicando a regra de Bayes: probabilidade de se selecionar aleatoriamente um documento dj do conjunto de documentos relevantes probabilidade de se selecionar um documento dj do conjunto de documentos não-relevantes probabilidade que um documento selecionado aleatoriamente de uma coleção inteira seja relevante probabilidade que um documento selecionado aleatoriamente de uma coleção inteira não seja relevante
  • 73. Modelo Probabilístico Considerando que P(Rel) e P(Rel) é inicialmente a mesma para todo documento da coleção tem-se:
  • 74. Modelo Probabilístico Sabendo-se que após transformações algébricas pode-se escrever expressão utilizada para classificação computacional pelo modelo probabilístico
  • 75. Modelo Probabilístico 1 – P(ti|Rel) é constante para todo termo de indexação ki e igual a 0,5 (50% de possibilidade de ser ou não relevante); P(ti|Rel) = 0,5 2 – a distribuição dos termos de indexação entre os documentos nãorelevantes pode ser aproximada da distribuição dos termos de indexação entre todos os documentos da coleção; P(ti|Rel) = ni / N ni é o número de documentos que contém o termo de indexação N é o número total de documentos da coleção
  • 76. Modelo Probabilístico vantagens Necessidade da suposição da separação inicial dos documentos nos conjuntos relevantes ou não-relevantes Não leva em conta a frequência com que um termo de indexação ocorre no documento (somente considera pesos binários) Adoção da suposição da independência dos termos
  • 77. Modelo Probabilístico vantagens O ranking dos documentos é realizado em ordem decrescente da probabilidade de relevância.
  • 78. Modelo baseado em agrupamento Para a extração e armazenamento dos dados são utilizados conceitos de recuperação de informação e rede neural. Para a busca é explorada a organização dos metadados de itens no banco de dados para promover mecanismos eficazes para a sua localização e reuso.
  • 79. Modelo baseado em agrupamento Nessa abordagem itens são representados por termos, que são extraídos automaticamente, normalizados e armazenados em repositórios. Essas informações são utilizadas no agrupamento dos itens. Após a normalização dos termos são obtidas as frequências de ocorrência no item e calculados os pesos
  • 80. Modelo baseado em agrupamento fi é a frequência do termo i n é a quantidade total de itens ni é a quantidade de itens que possuem o termo i.
  • 81. Modelo baseado em agrupamento O agrupamento é realizado através da identificação de conjuntos de itens similares. Para a recuperação de informação são utilizadas duas formas alternativas, uma que utiliza o modelo espaço vetorial e outra usando o modelo booleano, que, aplicados aos agrupamentos, trazem ao usuário o conjunto resposta.
  • 82. Baseados em conteúdo Vantagens Não possui o problema do primeiro avaliador Possui capacidade de recomendar todos os itens Aplica esquema de atribuição de pesos aos termos Utiliza estratégia de casamento parcial Documentos são ordenados de acordo com o grau de similaridade
  • 83. Baseados em conteúdo Desvantagens Não considera aspectos como qualidade do texto e renome do autor Super especialização Conteúdo dos dados pouco estruturados Não considera a correlação entre os termos de indexação
  • 84. Híbrido Faz uso de umas ou mais técnicas de recomendação Pode ser feita: ● ● ● implementando ambos métodos separadamente e combinando os resultados incorporando algumas características da abordagem baseada em conteúdos na a abordagem colaborativa construindo um modelo unificado que incorpora as características de ambos
  • 87. Fontes BONFIM, Marcello Erick. RECUPERAÇÃO DE DOCUMENTOS TEXTO USANDO MODELOS PROBABILISTICOS ESTENDIDOS. Iniciação Científica Cesumar, v. 11, n. 2, 2009. LOPES, Rafael Barbolo. sistemas de recomendação <http://www.slideshare.net/barbolo/sistemas-de-recomendacao> Gois, Adriana; Berg, Anderson; Teixeira, Joyce V. . Sistemas de recomendação < http://www.slideshare.net/berg_pe/sistemas-de-recomendao-9889295> Cazella, . Sílvio César . SISTEMAS DE RECOMENDAÇÃO. < http://www.nuted.ufrgs.br/compoa_2012_1/SRFColaborativa.pdf> MORAIS, Edison Andrade Martins; AMBRÓSIO, Ana Paula L. Mineração de Textos. Relatório Técnico–Instituto de Informática (UFG), 2007. GERALDO, André Pinto. Aplicando algoritmos de mineração de regras de associação para recuperação de informações multilíngues. 2009. BAEZA-YATES e RIBEIRO-NETO apud LOPES, Giseli Rabello - Sistema de Recomendação para Bibliotecas Digitais sob a Perspectiva da Web Semântica. Porto Alegre: Programa de Pós-Graduação em Computação, 2007. BASU, Chumki et al. Recommendation as classification: Using social and content-based information in recommendation. In: AAAI/IAAI. 1998. p. 714-720. BRADLEY, Keith; SMYTH, Barry. Improving recommendation diversity. In:Proceedings of the Twelfth National Conference in Artificial Intelligence and Cognitive Science (AICS- 01). 2001. GOLDBERG et.al. apud HERLOCKER, Jonathan Lee. Understanding and improving automated collaborative filtering systems. 2000. Tese de Doutorado. University of Minnesota.
  • 88. Fontes FERREIRA, Vinicius Hartmann. Sistema de Recomendação de Objetos de Aprendizagem. TCC (graduação em Ciência da Computação) - Universidade do Vale do Itajaí, Itajaí, 2009. Disponível em : <http://Siaibib01.univali.br/pdf/Vinicius Hartmann Ferreira.pdf>. LOPES, Giseli Rabello - Sistema de Recomendação para Bibliotecas Digitais sob a Perspectiva da Web Semântica. Porto Alegre: Programa de Pós-Graduação em Computação, 2007. HERLOCKER, Jonathan Lee. Understanding and improving automated collaborative filtering systems. 2000. Tese de Doutorado. University of Minnesota. KIM, Byeong Man et al. A new approach for combining content-based and collaborative filters. Journal of Intelligent Information Systems, v. 27, n. 1, p. 79-91, 2006. LICHTNOW, Daniel et al. O uso de técnicas de recomendação para apoio à aprendizagem colaborativa. Revista Brasileira de Informática na Educação. vol. 14, n.3, set. 2006. PAZZANI, Michael J.; BILLSUS, Daniel. Content-based recommendation systems. In: The adaptive web. Springer Berlin Heidelberg, 2007. p. 325-341. SALTON, Gerard; BUCKLEY, Christopher. Term Weighting Approaches in Automatic Text Retrieval. Information Processing & Management 24 (5), 513-523, 1988. VIEIRA, Felipe José Rocha; NUNES, Maria Augusta Silveira Netto. DICA: Sistema de Recomendação de Objetos de Aprendizagem Baseado em Conteúdo. Scientia Plena, v. 8, n. 5, 2012. ZAINA, L., BRESSAN, G., CARDIERI, M., RODRIGUES JÚNIOR, J.. e-LORS: Uma Abordagem para Recomendação de Objetos de Aprendizagem. Revista Brasileira de Informática na Educação, 20, abr. 2012. Disponível em: <http://www.brie.org/pub/index.php/rbie/article/view/1289>. Acesso em: 15 Mai. 2013.