Personalização
Prof.ª Ms. Elaine Cecília Gatto
Prof.º Dr. Sergio Donizetti Zorzo




                  Universidade Federal de São Carlos – UFSCar
                            Departamento de Computação – DC
                Grupo de Sistemas Distribuídos e Redes – GSDR
                            Privacidade & Personalização – P&P
Personalização
Automatiza 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ção
   Pessoas 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ção
   Sistemas 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
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/C
  onhecimento 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
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 Colaborativa
 Ao 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 Colaborativa
 Normalmente, 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 Colaborativa
   FBC: 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:
Vantagens
 Produz 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:
Desvantagens
 Esparsidade:
 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:
Desvantagens
 Problema 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:
Desvantagens
 Cold-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
Filtragem Híbrida
 Quando 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 ou
             Combinador




               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
Cosseno
 O 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óximos
   A 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 Sistema
 Quã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étricas

Métricas
 Mé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áficas
 RICCI, 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.

Palestra unesp 2012

  • 1.
    Personalização Prof.ª Ms. ElaineCecília Gatto Prof.º Dr. Sergio Donizetti Zorzo Universidade Federal de São Carlos – UFSCar Departamento de Computação – DC Grupo de Sistemas Distribuídos e Redes – GSDR Privacidade & Personalização – P&P
  • 2.
    Personalização Automatiza um processocomum 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!
  • 3.
    Personalização  Pessoas 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
  • 4.
    Personalização Muito aplicada emsistemas de e- commerce: - Submarino - Amazon
  • 5.
    Sistemas de Recomendação: componentesbá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.
  • 6.
    Etapas Básicas deum S. R.  De quem são esses dados?  Pra quem vai a recomendação?
  • 7.
    Etapas Básicas deum 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;
  • 8.
    Etapas Básicas deum 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.
  • 9.
    Etapas Básicas deum 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!”
  • 10.
    Filtragem de Informação  Sistemas 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;
  • 11.
    Filtragem Baseada emConteú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.
  • 12.
    Filtragem Baseada emConteú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)
  • 13.
    Filtragem Baseada emConteúdo – FBC
  • 14.
    Filtragem Baseada emConteú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
  • 15.
    Filtragem Baseada emConteú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;
  • 16.
    Filtragem Baseada emConteú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/C onhecimento do domínio de aplicação
  • 17.
    Filtragem Baseada emConteú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
  • 18.
    Filtragem Baseada emConteú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.
  • 19.
    Filtragem Colaborativa  Aoinvé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.
  • 20.
    Filtragem Colaborativa  Normalmente,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;
  • 21.
    Filtragem Colaborativa  FBC: 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;
  • 22.
    Filtragem Colaborativa: Vantagens  Produzrecomendaçõ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.
  • 23.
    Filtragem Colaborativa: Desvantagens  Esparsidade: 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.
  • 24.
    Filtragem Colaborativa: Desvantagens  Problemado 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.
  • 25.
    Filtragem Colaborativa: Desvantagens  Cold-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
  • 26.
    Filtragem Híbrida  Quandoo sistema é construído utilizando tanto a técnica de filtragem de informação de conteúdo, quanto colaborativa  Configurações possíveis:
  • 27.
    Filtragem Híbrida FBC FC Mesclador ou Combinador Lista de Recomendações
  • 28.
    Filtragem Híbrida Sistema com Filtragem Colaborativa Filtro de Conteúdo Lista de Recomendações
  • 29.
    Filtragem Híbrida Sistema com Filtragem de Conteúdo Filtro Colaborativo Lista de Recomendações
  • 30.
    Cosseno  O Cossenomede 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 ].
  • 31.
    Cosseno  Baixa similaridade
  • 32.
    Vizinhos mais próximos  A 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.
  • 33.
  • 34.
    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.
  • 35.
    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
  • 36.
    Avaliação do Sistema Quã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;
  • 37.
  • 38.
    Métricas  Métrica paraavaliar 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%
  • 39.
    Referências Bibliográficas  RICCI,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.