Post on 27-Jun-2015
PersonalizaçãoProf.ª Ms. Elaine Cecília GattoProf.º Dr. Sergio Donizetti Zorzo
Universidade Federal de São Carlos – UFSCarDepartamento de Computação – DC
Grupo de Sistemas Distribuídos e Redes – GSDR Privacidade & Personalização – P&P
PersonalizaçãoAutomatiza um processo comum do cotidiano das pessoas. Exemplo:
Eu gostaria de assistir a um
“anime”. Mas não sei qual!
Eu tenho uma sugestão para você. Que tal
assistir “Death Note”? É um
‘anime’ muito bom. Hehehehe!
PersonalizaçãoPessoas gostam de:
◦Descrever seu grau de satisfação sobre coisas/pessoas;
◦Confiam na opinião dos outros;
Pessoas sempre estão sobrecarregadas de informação;
Mas o que interessa de fato para cada um?
Motivação: Sobrecarga de informação
Personalização
Muito aplicada em sistemas de e-commerce:- Submarino- Amazon
Sistemas de Recomendação: componentes básicos
Sistemas de recomendação concentram-se em encontrar informações que podem ser úteis ao usuário. A recomendação é obtida a partir da identificação das preferências – perfil do usuário – e da interação com o próprio sistema.
Etapas Básicas de um S. R.De quem são esses dados? Pra quem vai a recomendação?
Etapas Básicas de um S. R.Explícita: o usuário fornece as suas
preferências usualmente pelo preenchimento de um formulário;
Implícita: o sistema obtém as informações do usuário pelo registro de sua navegação;
Etapas Básicas de um S. R. Aplicadas para descobrir as similaridades
entre as preferências dos usuários e os itens a serem recomendados e, em seguida, gerar as recomendações;
Núcleo do sistema de recomendação; Utiliza algoritmos da ciência cognitiva, teoria
da aproximação, recuperação de informação, filtragem de informação, teorias de previsão e/ou mineração de dados, etc.
Etapas Básicas de um S. R.Entrega da recomendação ao usuário. Duas
formas:Push: o usuário não precisa pedir a
recomendação, o sistema se encarrega de apresentá-las;
Pull: é necessário que o usuário solicite a recomendação para que a mesma seja apresentada. Exemplo: “Temos recomendações para você, veja!”
Filtragem de InformaçãoSistemas de Filtragem de Informação:
São projetados para a filtragem de dados não estruturados ou semi-estruturados;
Descrevem uma variedade de processos que envolvem a prestação de informações a pessoas que delas necessitam;
Filtragem Baseada em Conteúdo – FBC A filtragem de informação é baseada
na análise do conteúdo do item e no perfil do usuário;
Princípio: os usuários tendem a se interessar por itens que já se interessaram antes;
Técnicas para medir a similaridade e recomendar itens relevantes: índices de busca booleana, filtragem probabilística, modelos vetoriais, etc.
Filtragem Baseada em Conteúdo – FBC Avaliação de Itens (ranking) como
fazer?
Como descobrir o quanto um item é importante/relevante para aquele usuário?
O usuário deve dizer isso explicitamente ou o sistema implementa uma forma para tal;
Obs.: Itens são descritos por suas características (ou atributos)
Filtragem Baseada em Conteúdo – FBC
Filtragem Baseada em Conteúdo – FBC: Vantagens
Usuário Independente: Sistemas que utilizam FBC exploram apenas
as avaliações fornecidas pelo usuário ativo para construir o seu próprio perfil.
Já os métodos de filtragem colaborativa precisam das avaliações de outros usuários, a fim de encontrar os "vizinhos mais próximos" do usuário ativo, ou seja, os usuários que têm gostos semelhantes, uma vez que avaliaram os mesmos itens de forma semelhante. Assim, apenas os itens que são mais apreciados pelos vizinhos do usuário ativo serão recomendados;
Filtragem Baseada em Conteúdo – FBC: Vantagens Novo Item:Capazes de recomendar itens
que ainda não foram avaliados por qualquer usuário;
Não sofrem com o problema do primeiro avaliador (FC);
Em sistemas que usam FC é necessário que um item seja avaliado por um número considerável de usuários;
Filtragem Baseada em Conteúdo – FBC: Desvantagens
Análise de conteúdo limitada:Nenhum sistema de recomendação
baseado em conteúdo pode fornecer sugestões adequadas se, o conteúdo analisado não contém informação suficiente para discriminar os itens que o usuário gosta, de itens que o usuário não gosta.
Características/Atributos/Ontologias/Conhecimento do domínio de aplicação
Filtragem Baseada em Conteúdo – FBC: Desvantagens
Superespecialização: Não tem nenhum método inerente para encontrar
algo inesperado/surpresa. O sistema sugere os itens cujas pontuações são
altas quando comparadas com o perfil do usuário, portanto, o usuário sempre vai receber recomendações de itens já recomendados (semelhantes aos já classificados).
Grau limitado de novidade; Para dar um exemplo, quando um usuário gosta de
filmes dirigido por Stanley Kubrick, ele sempre vai receber recomendações sobre esse tipo de filme.
A "perfeita" técnica com base em conteúdo raramente encontraria romance, limitando o leque de aplicações para o qual seria útil.
Filtragem Baseada em Conteúdo – FBC: Desvantagens
Novo Usuário:“Avaliações” suficientes têm de ser
recolhidas antes de um sistema baseado em conteúdo poder realmente entender as preferências do usuário e fornecer recomendações precisas (gde qtde dados);
Para um novo usuário, o sistema não será capaz de fornecer recomendações confiáveis, pois ainda não o conhece suficiente.
Filtragem ColaborativaAo invés de recomendar itens que
são semelhantes aos que um usuário tenha preferido no passado, recomenda-se itens semelhantes às preferências de outros usuários que tenham interesses em comum;
Métodos utilizados: Cosseno, Pearson, Vizinhos mais próximos, etc.
Filtragem ColaborativaNormalmente, um sistema FC
utiliza uma matriz em que os usuários são representados por linhas e os itens por colunas;
É necessário que os usuários avaliem os itens;
Filtragem ColaborativaFBC: recomenda de acordo com as
características inerentes aos itens;FC:
◦Método baseado no usuário:- Encontra usuários parecidos comigo
(em termos de itens) e recomenda o que eles gostaram;
◦Método baseado em item:- Recomenda itens que se parecem
(em termos de audiência) com itens que eu gostei no passado;
Filtragem Colaborativa: VantagensProduz recomendações
inesperadas;Independente de conteúdo;Produz recomendações de alta
qualidade: Como perceber a qualidade de um item? Avaliações dos itens pelos usuários.
Filtragem Colaborativa: DesvantagensEsparsidade:Quando a matriz possui poucas
avaliações (muitos usuários que não avaliaram itens);
O que recomendar se não há avaliação?
Soluções: técnicas de aprendizagem de máquina, regras de associação, técnicas de recuperação de informação, etc.
Filtragem Colaborativa: DesvantagensProblema do primeiro
avaliador:Quando novos itens são
adicionados ao sistema, compreensivelmente, os usuários não os avaliaram ainda.
Com apenas o uso de filtragem colaborativa, o sistema não pode recomendar esses itens até que um número suficiente de usuários os avaliem.
Filtragem Colaborativa: DesvantagensCold-Start:Causado por novos usuários que não
tenham apresentado quaisquer avaliações;
Utiliza avaliações dos usuários para associar os usuários semelhantes;
O que este usuário, que ainda não avaliou nada, contribuirá na geração das recomendações? Com quem ele é parecido?
Solução: enquanto não avaliar um número N de itens, não receberá recomendações
Filtragem HíbridaQuando o sistema é construído
utilizando tanto a técnica de filtragem de informação de conteúdo, quanto colaborativa
Configurações possíveis:
Filtragem Híbrida
FBC FC
Mesclador ouCombinador
Lista de Recomendações
Filtragem Híbrida
Sistema com Filtragem
Colaborativa
Filtro de Conteúdo
Lista de Recomendações
Filtragem Híbrida
Sistema com Filtragem de
Conteúdo
Filtro Colaborativo
Lista de Recomendações
CossenoO Cosseno mede o ângulo existente
entre dois vetores que representam usuários e itens ou usuários e usuários e retorna valores entre 1 (um) – máxima correlação – e 0 (zero) – mínima correlação.
Exemplo: Calcular a similaridade entre o perfil do usuário João com os valores [ 0, 1, 5, 9, 7 ] e o perfil do usuário Douglas com os valores de [ 9, 5, 1, 3, 7 ].
Cosseno
Baixa similaridade
Vizinhos mais próximosA técnica é implementada como
um algoritmo de classificação em que, para cada item/usuário não conhecido, verifica-se a similaridade entre ele e todos os outros itens/usuários da base, através de uma medida de distância, como: o Cosseno, a distância euclidiana, a manhatan, etc.
Predição de Avaliação
Predição de Avaliação Quem é semelhante a quem? Itens não avaliados pelos usuários; O sistema fará a previsão de qual avaliação o
usuário Valter dará para o livro 3.
Predição de Avaliação
Ana e Valter compartilham os mesmos gostos; Edson, Rosalina e Paula não compartilham - totalmente -
dos mesmos gostos que Ana e Valter (isso é visualizado pelas pontuações dadas)
Portanto, Ana influenciará na previsão da nota de Valter Cálculos matemáticos – que medem a similaridade - são
utilizadas para fazer a previsão
Avaliação do SistemaQuão boa é uma recomendação?Quanto o sistema está acertando?Ordenação das melhores
recomendações;Comparação entre previsto e real;Precisão: proporção dos realmente
bons entre os previstos como bons;Revocação: proporção dos realmente
bons entre todos os bons;Medida F: média harmônica de
precisão e revocação;
MétricasMétrica para analisar a precisão do
sistema em apresentar conteúdo relevante às expectativas do usuário. Precisão > = 70% indica que as recomendações sendo ofertadas são relevantes aos usuários.
* 100
MétricasMétrica para avaliar o grau de
relevância da lista de recomendação aos usuários.
Considera a ordem dos elementos na lista para calcular a eficiência das recomendações ofertadas.
O primeiro item da lista é de fato relevante para este usuário?
Se o usuário seleciona sempre a primeira recomendação da lista, então o sistema tem eficiência de 100%
Referências BibliográficasRICCI, F.; ROKACH, L.; SHAPIRA,
B.; KANTO, P. B. Recommender Systems Handbook. Editora Springer.
ZORZO, S. D.; GATTO, E. C. Relatório Técnico: Aplicando Filtragem Baseada em Conteúdo aos dados de TV fornecidos pelo IBOPE.