Sistemas de recomendação

2,850 views

Published on

A rede mundial de computadores vivencia o processo de transformação de um “mar de
documentos” em um “mar de conhecimento”, sistemas que entendam como fazer o melhor uso
da informação, representa um “conselheiro” para os usuários, passando a conquistar sua con-
fiança e possibilitando o aumento de valores de vendas para as empresas, através da qualidade
das recomendações apresentadas.

Published in: Technology
  • Be the first to comment

Sistemas de recomendação

  1. 1. Revisão Bibliográca - Sistemas de Recomendação E. Q. Silva Technical Report - RT-INF_006-11 - Relatório Técnico October - 2011 - Outubro The contents of this document are the sole responsibility of the authors.O conteúdo do presente documento é de única responsabilidade dos autores. Instituto de Informática Universidade Federal de Goiás www.inf.ufg.br
  2. 2. Revisão Bibliográfica - Sistemas de Recomendação Edjalma Queiroz da Silva ∗ Celso G. Camilo Jr † edjalma@ambientinformatica.com.br celso@inf.ufg.br1 Introdução O acesso a novas tecnologias de informação de maneira cada vez mais fácil, contribuipara o crescimento exponencial no volume de dados e o seu tratamento em tempo útil tornou-seinexequível. Para se ter uma ideia deste crescimento, em três anos (período entre 2005 e 2008)o percentual de brasileiros de dez anos ou mais de idade que acessaram ao menos uma vez aInternet pelo computador aumentou 75, 3%, passando de 20, 9% para 34, 8% das pessoas nessafaixa etária, ou 56 milhões de usuários, em 2008. No mesmo período, a proporção dos quetinham telefone celular para uso pessoal passou de 36, 6% para 53, 8% da população de dezanos ou mais de idade, sendo que, para 44, 7% dessas pessoas (ou cerca de 38,6 milhões debrasileiros), o celular era o único telefone para uso pessoal. Os números são do Suplemento daPesquisa Nacional por Amostra de Domicílios (Pnad) 2008 sobre Acesso à Internet e Posse deTelefone Móvel Celular para Uso Pessoal. Este crescimento impulsiona o surgimento de um fenômeno complexo que abarca o con-junto de novas tecnologias de comunicação mais participativas, mais rápidas e mais popularese as apropriações sociais que foram e que são geradas em torno dessas ferramentas. É ummomento de hiperconexão em rede, onde estamos não apenas conectados, mas onde transcreve-mos nossos grupos sociais e, através do suporte, geramos novas formas de circulação, filtrageme difusão dessas informações. O paradigma da web social pode ser observado na manifestação de uma crescente tendên-cia em explorar, de maneira explícita ou implícita, a riqueza dos elos que se firmam com ainteração social mediada pelas tecnologias de informação. Essa mudança de paradigma revela-se também no desenvolvimento e no crescimento de popularidade de uma nova classe de apli-cações para web, a exemplo dos sistemas colaborativos para produção de conhecimento (e.g.enciclopédias livres).[11] A rede mundial de computadores vivencia o processo de transformação de um “mar dedocumentos” em um “mar de conhecimento”, sistemas que entendam como fazer o melhor usoda informação, representa um “conselheiro” para os usuários, passando a conquistar sua con-fiança e possibilitando o aumento de valores de vendas para as empresas, através da qualidadedas recomendações apresentadas. Um dos objetivos da maioria das empresas é proporcionar a melhor experiência de compraaos seus clientes. Pode-se elencar desde fatores concretos, como preço e prazo de pagamento,até questões subjetivas, como qualidade do produto, tempo de entrega, tratamento individual-izado para dizer o que está relacionado com à experiência de compra. Com a grande variedade ∗ Mestrando em Ciência da Computação, INF-UFG † Orientador 1
  3. 3. Revisão Bibliográfica - Sistemas de Recomendação 2de produtos e serviços e entre as várias alternativas que lhe são apresentadas, as pessoas seesbarram na dificuldade em tomar uma decisão. Surgem os “sistemas de recomendação” com-putacionais, que têm por objetivo reduzir a sobrecarga de informação, através da seleção deconteúdo baseado em preferências do usuário. Além disso sistemas de compras se apoiam emexperiência de compra (bem ou mal sucedida) dos usuários para sugerir (recomendar) produtosà outros usuários que estão de alguma forma relacionados. Esses sistemas têm sido classificados em três categorias no que tange à abordagem uti-lizada para recomendação [3]: 1. Abordagem baseada em conteúdo, nos quais são recomendados itens similares com aque- les que o usuário mostrou preferência no passado; 2. Abordagem colaborativa, na qual são recomendados itens escolhidos por pessoas com preferências similares às do usuário e; 3. Abordagens híbridas, que de alguma forma combinam técnicas na tentativa de solucionar alguns problemas potenciais das abordagens puras anteriores. Dizer aqui o que será tratado neste artigo.2 Personalização através de Sistemas de Recomendação A adequação de um produto ou serviço para atender as necessidades de um indivíduo po-dem trazer várias vantagens. Por exemplo, através da constante seleção de conteúdos relaciona-dos aos interesses do usuário, um sistema personalizado pode reduzir o tempo em estes levampara encontrar informações relevantes. O tratamento individualizado do usuário em sistemacomputacional necessita de um conjunto específico de funções. Enquanto o usuário navega nosistema, toda sua interação deve ser monitorada de alguma forma como citado em 3.2. A apre-sentação do documento pode ser modificada de modo a sugerir ao usuário os próximos passos.Em um contexto geral os sistemas de recomendação conseguem solucionar este problema coma criação de uma página personalizada por usuário, ou seja, cada usuário possui sua “própria”home page. Nestas páginas o sistema adicionam, removem, modificam e reorganizam links como intuito de apresentar, esconder ou enfatizar fragmentos de uma página, assegurando que seuconteúdo inclua informação apropriada para o usuário em questão. Desta forma a probabilidade de que um usuário acesse ou adquira um item é bem maiordo que em sistemas não personalizados. Do ponto de vista empresarial e adotando esta abor-dagem sistemática de “recomendar” itens mais interessantes para o usuário, o sistema consegue“fidelizar” um cliente pois representa um “conselheiro” para os usuários, passando a conquistarsua confiança e possibilitando o aumento de valores de vendas para as empresas, através daqualidade das recomendações apresentadas. Os Sistemas de Recomendação são grandes aliados da personalização de sistemas com-putacionais, principalmente na plataforma web. Da literatura, a definição do termo “sistema derecomendação” varia de acordo com o autor. Alguns pesquisadores usam “filtragem colabo-rativa” e “Filtragem social”[4]. Inversamente, outros “sistema de recomendação”, e “filtragemsocial” tratam “sistema de recomendação”, como um descritor genérico que representa diversasrecomendação/previsões técnicas, incluindo colaboração, social e filtragem baseada em con-teúdo, redes Bayesianas e regras de associação [22, 8].
  4. 4. Revisão Bibliográfica - Sistemas de Recomendação 33 Usuário e o seu perfil Para que seja possível recomendar produtos, serviços ou pessoas a um usuário énecessário ter-se conhecimento sobre quem é este usuário. Antes mesmo de pensar em cap-turar e armazenar suas informações pessoais e comportamentais é necessário identificar qualo tipo de informação será relevante para a geração da recomendação visando uma eficientepersonalização dos produtos, serviços e pessoas. Para a correta geração da recomendação adefinição do perfil do usuário e coleta de informações é imprescindível.[6] De acordo com (Cazella et al. 2010) [6] para a formação de perfis de usuários é necessárioestar atento a 3 aspectos que serão tratados nas próximas seções.3.1 Identidade do Usuário Note que no mundo virtual onde não há presença física e consequentemente não há per-cepção de características sutis da Identidade, várias pistas que possivelmente identificariamdicas de preferências, comportamentos, habilidades sociais, entre outras, são ausentes, ao con-trário do que ocorre no mundo real [9]. Donath [10] afirma que conhecer a Identidade dapessoa é vital para uma adequada personalização de uma ambiente no mundo virtual. Giddens[12] concorda que sem experiências sociais o “eu” não pode internalizar evolução. Giddensainda afirma que a identidade de um individuo não é estática, ela pode ser representada em con-stante evolução, principalmente porque o componente social é dinâmico e esta sempre sendomodificado. Considerando a identidade como um canal importante onde as características objetivas esubjetivas das pessoas emergem, denomina-se de fundamental importância seu uso em Sistemasde Recomendação no intuito de fornecer pistas sobre os futuros comportamentos e necessidadesdos usuários em um dado ambiente onde a personalização se faz eficaz, por exemplo.3.1.1 Perfil de Usuário Donath [9] afirma que para a formação eficiente de uma Identidade Virtual é crucial queo usuário tenha definida sua Identidade Interna e sua Identidade Social. No mundo virtual aIdentidade Interna do usuário é definida por ele próprio similar ao mundo real (algumas vezestambém é descoberta através de técnicas de Machine Learning). Enquanto a Identidade Social édefinida pelos outros membros do mundo virtual. Tanto a Identidade Interna, como a IdentidadeSocial são armazenadas no Perfil do Usuário. Perfis de Usuários são conceitos aproximados, eles refletem o interesse do usuário comrelação a vários assuntos em um momento particular. Cada termo que um Perfil de Usuárioexpressa é, num certo grau, características de um usuário particular [7] incluindo todas as in-formações diretamente solicitadas a ele e aprendidas implicitamente durante sua interação naweb [19]. Fisicamente, o Perfil do Usuário pode ser visto como uma base de dados onde ainformação sobre o usuário, incluindo seus interesses e preferências, é armazenada e pode serdinamicamente mantido [7].3.1.2 Reputação A reputação pode ser definida como o retorno social recebido sobre a personalidade dealguém. A reputação pode ser compatível ou não com a descrição feita no Perfil de Usuário. Areputação ajuda as pessoas escolherem parceiros confiáveis no mundo virtual que são credíveis
  5. 5. Revisão Bibliográfica - Sistemas de Recomendação 4no mundo real. Geralmente nas redes de Reputação, os usuários encorajam os comportamentosconfiáveis discriminando a participação de pessoas desabilitadas moralmente ou desonestas.[6] Em processos comerciais, como por exemplo, no eBay [17, 16] um consumidor compraum certo produto de alguém. Depois disso, ele deixa um feedback sobre o produto comprado e,ou o comportamento do vendedor durante o processo de venda. Em contraste, em situações sociais como, por exemplo, Orkut, IKarma, Opinity, LinkedIn,Mendeley [5], usuários são membros de comunidades virtuais ou redes sociais. Eles são capazesde coletar gerenciar e promover Reputação de usuário entre seus clientes e contatos da comu-nidade ou rede. Isto é, usuários (prestadores de serviço) que tem profile na Rede de Reputação,que é também uma rede social podem ser “tagged” e rankeados pelos seus clientes e, ou con-tatos. Usuários podem ser encontrados através de tags em e-mail ou, também, alguém podeencontrar um contato de um prestador de serviço simplesmente procurando em tags na própriarede de reputação.3.2 Coleta de Informações Hoje é bastante comum no mundo dos negócios a coleta de informações do usuário. Aoabrir uma conta bancária, adquirir um bem imobilizado ou até para fazer uma compra pelainternet por exemplo, é exigido que o cliente forneça dados pessoais como nome, endereço,telefone, etc, até números de documentos. E isso se torna importante para se ter conhecimentosobre quem é este usuário. Diante deste fato é necessário identificar o usuário no momento em que ele acessa o sis-tema onde foram implantadas as rotinas de recomendação. De acordo com [20] há duas formasmais habituais de identificação de usuário. A primeira é a Identificação no servidor, que nor-malmente disponibiliza ao usuário uma área de cadastro com informações pessoais, tais como:nome, data de nascimento e outros. Além disso, solicita obrigatoriamente um login1 e senha.Este mecanismo permite que o web site identifique com mais precisão o usuário que nele seconecta. A segunda forma é a Identificação no cliente, que normalmente utiliza cookies2 , ummecanismo pelo qual um web site consegue identificar que determinado computador está seconectando mais uma vez a ele. Este método assume que a máquina conectada é utilizada sem-pre pela mesma pessoa. Trata de um mecanismo mais simples que o primeiro, porém menosconfiável, principalmente se o computador identificado for utilizado por mais de uma pessoa.Ainda de acordo com [20] depois de identificar o usuário, é possível coletar dados sobre estede forma implícita ou explícita. Na modalidade de coleta explícita o usuário indica espontanea-mente o que lhe é importante. Por exemplo, o usuário pode indicar suas seções favoritas emuma livraria virtual são Design e Música. Na modalidade implícita, através de ações do usuário infere-se informações sobre suasnecessidades e preferências. Por exemplo, armazenando-se dados de navegação do usuário(páginas consultadas, produtos visualizados, etc) é possível detectar que ele se interessa por A 1 De acordo com a Wikipédia : Em termos informáticos, Login (derivado do inglês log in, sendo por vezestambém utilizada a alternativa sign in) define o processo através do qual o acesso a um sistema informático écontrolado através da identificação e autenticação do utilizador através de credenciais fornecidas por esse mesmoutilizador. Essas credenciais são normalmente constituídas por um Nome de Utilizador ou apenas Utilizador (doinglês username) e uma Palavra-passe ou Senha (do inglês Password) - ocasionalmente, dependendo do sistema,apenas é pedida a Senha. 2 De acordo com a Wikipédia: Cookie (do inglês, literalmente: bolacha), testemunho de conexão, ou simples-mente, testemunho é um grupo de dados trocados entre o navegador e o servidor de páginas, colocado num arquivo(ficheiro) de texto criado no computador do utilizador. A sua função principal é a de manter a persistência desessões HTTP.
  6. 6. Revisão Bibliográfica - Sistemas de Recomendação 5ou B. Figura 1: Exemplo de recomendação do website da Amazon.com Utilizando-se desta estratégia é possível conhecer melhor a preferência dos usuários semque eles tenham que fornecer informações explicitamente, e em seguida utilizar estes dadospara fazer recomendações. A figura 1 mostra uma página da Amazon.com personalizada paraum usuário que se mostra interessado por diversos assuntos listados na parte inferior da página.3.3 Privacidade em Sistemas de Recomendação Pesquisas mostram que a maior parte dos usuários está disposta a fornecer informaçõessuas para que possam receber ofertas personalizadas. No entanto, o censo americano mostra que75% dos usuários daquele país se preocupam com a possível divulgação de dados que fornecemàs empresas [2]. Os usuários buscam sempre conhecer os objetivos da coleta de dados e seestes dados serão fornecidos a terceiros. A figura 2 mostra uma coleta de dados incentivando aparticipação do usuário para que as recomendações feitas a ele sejam mais eficientes. Ao analisar a informação anterior notamos que não teria problema algum se as empre-sas que empregam Sistemas de Recomendação tivessem uma coleta de dados associada a umapolítica de privacidade adequada. Porém, não é incomum encontrar empresas que, além decoletar dados para personalizar o relacionamento com seus clientes, vendam estes dados paraoutras empresas, uma prática que alimenta o aumento de spam. Estas atitudes prejudicam orelacionamento com o cliente e aumentam a distância entre estes e a empresa. A figura 3 mostra um trecho da página contendo a política de privacidade do serviço decoleta de dados para melhoria das recomendações do website da Amazon.com. Sites como estecumprem uma exigência legal, que visa garantir que uma empresa agirá com honestidade eprotegerá as informações dos seus clientes. Algumas instituição com a preocupação de transmitir ao usuário uma melhor reputação(seção 3.1.2) trabalham com selos que garantem que a política de privacidade é adequada ecumprida com rigor. A figura 4 apresenta dois destes selos, fornecidos por grandes instituiçõesna área (TRUSTe, BBBOnline).
  7. 7. Revisão Bibliográfica - Sistemas de Recomendação 6Figura 2: Exemplo de Coleta de Dados para melhoria das recomendações do website da Sub-marino Figura 3: Política de privacidade do website da Amazon.com. Apesar das garantias oferecidas por estas instituições, questiona-se o fato de que muitasvezes os padrões exigidos não são rígidos o suficiente, e as estratégias de controle das normasnão são rigorosas [1].
  8. 8. Revisão Bibliográfica - Sistemas de Recomendação 7 Figura 4: Selos de Privacidade.4 Estratégias de Recomendação Dizemos que o principal objetivo dos Sistemas de Recomendação é a fidelização docliente para uma dada empresa, trazendo para esta benefícios como a lucratividade. Para tal,empresas investem em sistemas que trata cada usuário como sendo único, para que isso ocorraexistem diversas técnicas como à lista de Produtos Recomendados, itens Semelhantes e MalaDireta Personalizada, que são descritas abaixo: • Lista de Produtos Recomendados: é uma técnica bem simples que gera uma lista de produtos por algum critério de avaliação, como: mais vistos, mais vendidos, lista de interesse, dentre outros. Dessa forma o sistema mostra para todos os usuários a mesma lista sem nenhuma personalização da mesma. • Itens Semelhantes: é uma técnica que recomenda produtos semelhantes ao que está sendo comprado pelo usuário. O sistema varre o banco de dados em busca de produtos que já foram vistos, avaliados ou comprados por este ou outros usuários que se assemelha de alguma forma ao item corrente. • Mala Direta Personalizada: é uma técnica baseada em contato direto com o usuário através do email. Este contato pode se dar por algum motivo, mas sempre baseado no interesse do usuário, tal como: produto indisponível e que passou estar disponível, pro- moção de algum produto, recomendação de algum item baseado na técnica “Itens Semel- hantes”, dentre outras. Por considerarmos mais importante daremos destaque a quatro estratégias de recomen-dação que serão apresentadas nas próximas subseções. O Sistemas de Recomendação realizam“filtragens” para definir quais produtos serão recomendados a cada perfil de usuário, esse ato éconhecido como Técnicas de Recomendação e será tratado na seção 5.4.1 Reputação do Produto Um grande exemplo de empresas que se apoiam neste mecanismo são as empresas queexploram o mercado de comércio eletrônico. Elas utilizam Sistemas de Recomendação baseadano uso das avaliações dos usuários sobre um produto para estabelecer qual é grau de satisfaçãoque este produto representa para pessoas que o compraram. A eficiência deste tipo de abor-dagem está relacionada com a ideia de que as pessoas que compraram o produto voltarão aosite para avaliar o produto adquirido e publicar sua opinião, acreditando assim na veracidadedas informações fornecidas. Alguns sistemas utilizam da técnica de incentivo dando ao usuáriobrindes, descontos entre outros, para estimular usuários a contribuir com as suas opiniões.
  9. 9. Revisão Bibliográfica - Sistemas de Recomendação 8 Figura 5: Avaliação de um Ar-Condicionado no site do Carrefour www.carrefour.com.br.4.2 Recomendação por Associação É um outro tipo de recomendação bastante utilizado por web sites de comércio eletrônico.Em uma base de dados que contem as avaliações dos produtos descrita em 4.1, o sistema con-segue encontrar associação entre os produtos e recomendar estes produtos para o usuário osprodutos com as melhores avaliações ao que ele demonstrou interesse. Figura 6: Recomendação por Associação no site da Amazon www.amazon.com. Esta apresentação é a implementação do termo, “Clientes que compraram este item tam-bém comprou. . . ”. No exemplo mostrado na figura 6, a partir da seleção de um Livro sobre“Mineração de Dados em Redes Sociais”, o sistema apresentou itens similares de interesse dousuário.4.3 Associação por Conteúdo A associação por conteúdo faz a recomendação de duas formas, a primeira é a recomen-dação de objetos classificados no perfil do usuário e a segunda é a recomendação de objetossimilares aos objetos que o usuário já comprou. Para a primeira forma de recomendação é feito o uso da avaliação do conteúdo de umdeterminado item, por exemplo, um autor, um compositor ou uma outra propriedade especí-fica. Os itens que possuírem maior “ranking” e que se encaixem no critério de busca serãorecomendados para o usuário.
  10. 10. Revisão Bibliográfica - Sistemas de Recomendação 9 Independente da forma escolhida, a recomendação neste tipo de técnica trabalha em umescopo mais restrito e sempre vai retornar produtos bastante similar ao que o usuário está visu-alizando. Ela se baseia na ideia de busca de produto por algum critério importante mostrandopara o usuário os itens de maior relevância. Figura 7: Recomendação por Associação no site da Submarino www.submarino.com.br. Na exemplo ilustrado na figura 7 a partir da seleção de um câmera fotográfica outrascâmeras são apresentados. Note que não são apresentados produtos como filmadoras, celularese notebooks que também tem a função de câmera fotográfica, porém não sendo este o focoprincipal destes tipos de produtos não entrando assim no critério de seleção.4.4 Análise de Sequências de Ações Assim como ocorre na medicina, administração, no direito e em outros domínios a análisede Sequências de Ações é um tipo importante de coleta de informações. De acordo com [6] naweb, sequências podem ser utilizadas para capturar o comportamento de usuários através dehistóricos de atividade temporal, como em weblogs e histórico de compras de clientes. As in-formações encontradas nestas sequências temporais podem ser empregadas nas identificaçõesde padrões de navegação e consumo, que em seguida podem servir aos Sistemas de Recomen-dação. Ainda de acordo com [6] alguns algoritmos buscam agrupar as sequências de ações emclusters como forma de identificar e representar os padrões de comportamentos encontradosnos dados. Por exemplo, representam padrões de sequências em grafos não direcionados eutilizam algoritmos evolucionários com múltiplos objetivos como no processo clusterização.No entanto, um dos algoritmos mais conhecidos na análise de sequência de ações é o SPADE(Sequential PAttern Discovery using Equivalence classes - Descoberta de Padrões Sequenciaisutilizando classes equivalentes). O algoritmo busca associar a cada sequencia encontrada umalista de objetos nos quais ela ocorre. Através deste mecanismo a busca por objetos e sequênciasé otimizada. O algoritmo também reduz o número de varreduras na busca por padrões, o queimplica em um tempo de execução menor.5 Técnicas de Recomendação Sistemas de Recomendação como dito na seção 4 funcionam como um conselheiro, secomportando de tal maneira a guiar as pessoas em suas descobertas de produtos que podem vira gostar, agindo assim como um amigo que lhe recomenda um livro ou um restaurante.
  11. 11. Revisão Bibliográfica - Sistemas de Recomendação 10 As Técnicas que implementam as estratégias de recomendação (vista em 4) podem serclassificados em três tipos básicos: A primeira são às Técnicas Baseadas em Conteúdo, a se-gunda são as baseadas na Filtragem Colaborativa e a terceira são uma abordagem Híbrida. Essastécnicas são à base dos Sistemas de Recomendação e são apresentadas nas próximas seções.5.1 Filtragem Baseada em Conteúdo É notório que a web é formada por um grande volume de informação, esse aculumo de da-dos também é a realidade de inúmeros sistemas que armazenam informações dos mais variadostipos e assuntos. Um problema bastante comum é a ocorrência da sobrecarga de informações.Abstrair informações de grande importância neste mar de informação, gerando de forma au-tomática descrições dos conteúdos dos itens e comparar estas descrições com os interesses dosusuários é conhecida como filtragem baseada em conteúdo. Ela é conhecida por este nome porrealizar uma seleção baseada na análise de conteúdo dos itens e no perfil do usuário. A obtenção de informação relevante é o objetivo de alguns softwares que trabalhambaseado na filtragem baseada em conteúdo. Esses softwares não são os primeiros com esteobjetivo que, na verdade, tem suas origens na área de recuperação de informação. De acordocom [6] devido aos significativos avanços feitos pelas comunidades de filtragem de informação efiltragem de conteúdo, muitos sistemas baseados em filtragem de conteúdo focam na recomen-dação de itens com informações textuais, como documentos e websites. As melhorias sobreos sistemas tradicionais de recuperação de informação vieram com a utilização do perfil dousuário, que contém suas preferências e necessidades. Aplicando-se técnicas como indexação de frequência de termos é possível obter infor-mações de interesses do usuário através da análise das informações cedidas pelo próprio usuárioou através de mapeamento de suas interações com o sistema, como aquisição de itens (produ-tos), pesquisa de produtos, dentre outras. Segundo [20] neste tipo de indexação, informaçõesdos documentos e necessidades dos usuários são descritas por vetores com uma dimensão paracada palavra que ocorre na base de dados. Cada componente do vetor é a frequência que umarespectiva palavra ocorre em um documento ou na consulta do usuário. Claramente, os vetoresdos documentos que estão próximos aos vetores da consulta do usuário são considerados osmais relevantes para ele. Ainda de acordo com [20] outros exemplos de tecnologias aplicadas para filtragembaseada em conteúdo são índices de busca booleana, onde a consulta constitui-se em um con-junto de palavras- chave unidas por operadores booleanos; sistemas de filtragem probabilística,onde raciocínio probabilístico é aplicado para determinar a probabilidade que um documentopossui de atender as necessidades de informação de um usuário; e interfaces de consultas comlinguagem natural, onde segundo o autor as consultas são colocadas em sentenças naturais. A filtragem baseada em conteúdo foca no principio de que usuários tendem a interessar-sepor itens similares aos objetos que o usuário já comprou ou que demonstrou algum tipo de inter-esse. Assim vários itens são comparados com itens que o usuário gostou no passado e que foramavaliado positivamente, e os itens com maior similaridade serão recomendados. Vale lembrarque estabelecer essa similaridade pode ser mais difícil de ocorrer em alguns casos. Adomavícius[3] formaliza os Sistemas de Recomendação baseado em conteúdo (ContentBasedPRofile(c))como sendo o perfil do usuário c. Este perfil é obtido através de uma análise do conteúdo dositens previamente avaliados pelo usuário utilizando técnicas de recuperação de informação. Porexemplo, ContentBasedProfile(c) pode ser definido como um vetor de pesos (wc1 , ..., wck ) ondecada peso wci denota a importância do termo ki para o usuário c utilizando-se a medida TF-IDF(term frequency-inverse document frequency).
  12. 12. Revisão Bibliográfica - Sistemas de Recomendação 11 Em Sistemas de Recomendação Baseados em Conteúdo, a função de utilidade u(c, s) égeralmente definida conforme a equação: u(c, s) = score(ContentBasedPro f ile(c), Content(s)) Tanto o ContentBasedProfile(c) do usuário c como o Content(s)) podem ser representadoscomo vetores (TF-IDF) de pesos e termos − c e − s . Além disso, a função utilidade u(c, s) → w w →normalmente é representada, na literatura de recuperação de informação, por algum tipo depontuação heurística sobre vetores, como por exemplo, a medida de similaridade do cosseno.Ainda de acordo com Adomavícius [3] o cálculo para a medida de similaridade do cosseno podeser feito de acordo com a equação abaixo, onde k é o número total de palavras no sistema: − .− →→ w ws Σk w w u(c, s) = cos(− c , − s ) = − c − = √ k i=12 i,c i,s 2 → → w w → 2× w 2 → √ wc s Σi=1 wi,c Σk wi,s i=1 Desta forma, o cálculo de similaridade é realizado computando o cosseno do ângulo for-mado pelos dois vetores que representam os documentos (termos e frequências). A descriçãode interesses do usuário é obtida através de informações fornecidas por ele próprio ou atravésde ações, como seleção e aquisição de itens. Segundo Adomavícius [3], a abordagem baseada em conteúdo tem as seguintes limi-tações: 1. Análise de conteúdo é limitada: o conteúdo de dados pouco estruturados é difícil de ser analisado. A aplicação da filtragem baseada em conteúdo para extração e análise de conteúdo multimídia por exemplo (vídeo, som), é muita mais complexa do que a extração e análise de documentos textuais. Outro problema, relativo a análise de conteúdo textual, é que sistemas baseados em filtragem em conteúdo não conseguem distinguir um artigo bem escrito de um artigo mal escrito se eles utilizam termos muito semelhantes. 2. Super especialização: quando o Sistema de Recomendação pode recomendar somente itens similares a itens avaliados positivamente, pode ocorrer a super especialização. Desta forma, os itens que não fechem com o perfil do usuário não serão apresentados.5.2 Filtragem Colaborativa Na filtragem colaborativa (FC), ações de um usuário bem como a análise a respeito dasinformações gravadas (por exemplo utilizando-se a reputação do produto 4.1) de um determi-nado item são utilizadas para o benefício de uma comunidade maior. Sendo assim membrosdessa comunidade podem se beneficiar da experiência de outros usuários antes de decidir sobrea compra de um determinado produto. A não exigência de reconhecer ou compreender con-teúdo dos itens torna-se a grande diferença entre Filtragem baseada em conteúdo e a FiltragemColaborativa. A essência da Filtragem Colaborativa está na forma como é recomendado o item, a re-comendação ocorre em função das experiências entre as pessoas que possuem interesses co-muns, os itens então são filtrados baseado nas avaliações feitas pelos usuários. O primeirosistema criado com esta abordagem foi o Tapestry [13], que era um sistema com recursos com-pletos de filtragem de documentos eletrônicos. Neste sistema um usuário poderia criar regrasde filtragem de e-mail como “Mostre-me todos os documentos que são respondidos por outrosmembros do meu grupo de pesquisa”. Este sistema exigia que o usuário para determinar asrelações relevantes preditivas ficasse com uma grande carga cognitiva, como resultado, essessistemas só foram valiosos em pequenas comunidades fechadas onde todo mundo estava cientede interesses e deveres de outros usuários. Esta técnica tem o objetivo de sugerir novos itens baseado nos hábitos dos usuários parapredizer suas decisões futuras. De posse de uma base de dados de preferências de itens, um novo
  13. 13. Revisão Bibliográfica - Sistemas de Recomendação 12usuário é comparado a esta base de forma a descobrir vizinhos, os quais são outros usuários quepossuem características similares. Os itens de interesse para esses vizinhos são então recomen-dados para o usuário inicial. Essa abordagem parte da premissa de que, se dois usuário X e Ytiverem interesses similares, então os usuários demonstraram interesses pelos mesmos produ-tos. De maneira geral, considere-se uma lista de m usuários U = {u1 , u2,...,um } e uma lista de nitens I = {i1 , i2,...,in }. Cada usuário ui possui uma lista de itens Iui para os quais expressou seuinteresse. Logo, se Iui ⊂ I e que é possível que Iiu seja um conjunto nulo, existe um usuáriodistinguível Ua U, denominado usuário ativo, para o qual é tarefa o filtro colaborativo encon-trar um item de interesse, em particular buscando recomendações. Assim, haverá uma lista deN itens, Ir ⊂ I, pelos quais o usuário ativo mais se interessará. A lista recomendada deve serde itens ainda não comprados pelo usuário ativo. Esta interface dos algoritmos de FiltragemColaborativa é também conhecida como recomendação Top-N. Destacam-se, entre as técnicas de filtragem colaborativa baseadas em memória, o métodobaseado em item, que observa o conjunto de itens que o usuário-alvo avaliou previamente, com-puta quão similares são eles com relação a um item- alvo i e então seleciona os k itens mais sim-ilares {i1 , i2 , i3 , . . . ik }. Ao mesmo tempo, as suas similaridades correspondentes {s1 , s2 , s3 , . . . sk }também são computadas. Encontrados os itens mais similares, a predição é então computadaconsiderando-se a média ponderada das avaliações do usuário-alvo com relação aos itens simi-lares [15]. De acordo com [18] um ponto crítico no algoritmo de FC baseado em itens é computar asimilaridade entre itens e selecionar os mais semelhantes. A ideia básica no cálculo de similar-idade entre dois itens i e j é, primeiramente, isolar usuários que tenham avaliados esses itens eentão aplicar a técnica de cálculo de similaridade para determinar a similaridade si j entre eles.A Figura 8 apresenta o processo, onde as linhas da matriz representam usuários e as colunas,itens. Figura 8: Isolando itens co-avaliados e cálculo de similaridade O algoritmo de FC necessita de uma forma de comparar itens de forma a descobrir aquelesmais próximos entre si. A similaridade por cosseno de vetor considera os vetores de avaliaçãoentre dois itens com os quais se quer avaliar a similaridade. Seja A a matriz m × n usuário-item;então, a similaridade entre dois itens i e j é definida pelo cosseno entre os vetores de dimensãon correspondentes à i-ésima e à j-ésima coluna da matriz A. A similaridade por cosseno entreitens i = {i1 , i2 , . . . , in} e j = { j1 , j2 , . . . , jn} é dada por: →→ −− →→ − − i.j wi, j = cos( i , j ) = → → = √ 2 i1 j1 +i2 22√ 2 n 2n 2 − − j +...+i j i × j i1 +i2 +...+in j1 + j2 +...+ jn 2
  14. 14. Revisão Bibliográfica - Sistemas de Recomendação 13 onde “.” denota o produto escalar entre ambos os vetores [21]. Apesar da Filtragem Colaborativa apresentar-se como uma boa opção na maioria das apli-cações e apresentar a vantagem de sugerir aos usuários produtos inesperados, ainda existemgrandes desafios, por este tipo de sistema apresentar alguns problemas como: Problema doprimeiro avaliador - que é a situação onde um novo item aparece no banco de dados e nãoexiste assim uma maneira deste ser recomendado para o usuário; Problema de pontuaçõesesparsas - caso o número de usuários seja pequeno em relação ao volume de informações nosistema; Similaridade - que é a situação em que um usuário tenha gostos que variam do normaleste terá dificuldades para encontrar outros usuários com gostos similares. Esses problemastornam-se mais evidentes em aplicações reais de filtragem colaborativa para sistemas de re-comendação, pois tais aplicações tratam com grande volume de produto, o que torna a avaliaçãodos usuários em cima de uma quantidade substancial de itens uma tarefa difícil.5.3 Filtragem Híbrida A abordagem da filtragem híbrida procura, basicamente, combinar os pontos fortes dafiltragem colaborativa e filtragem baseada em conteúdo visando criar um sistema que possamelhor atender as necessidades do usuário [14]. Entre as vantagens da abordagem híbrida é que é possível recomendar bons itens a umusuário mesmo que não haja usuários semelhantes a ele, pois com essa abordagem é possívellidar com itens não vistos por outros usuários e caso ocorra o contrário as experiências de outrosusuários são levadas em consideração e o sistema assim sugere alguns itens. A figura 9 expressa bem a definição da abordagem híbrida que propõem unir duas dasmelhores técnicas de filtragem de informação, eliminando as fraquezas existente em cada uma. Figura 9: Filtragem Híbrida6 Conclusão A proposta deste trabalho foi apresentar de maneira consistente o que são Sistemas deRecomendação e como esses sistemas podem ser utilizados para que se possa conhecer melhoros hábitos de consumo e de interesses dos clientes. Foi objetivo também demonstrar as técnicasde conhecimento público mais utilizadas para fazer um bom uso deste tipo de conhecimento,objetivando trazer o cliente mais próximo da empresa, através de boas recomendações e emconsequência disso conseguir a fidelização do mesmo.
  15. 15. Revisão Bibliográfica - Sistemas de Recomendação 14 Trabalhamos em sua maioria com exemplos que se referiam à personalização de websites.No entanto, Sistemas de Recomendações podem ser aplicados nos mais diversos tipos de inter-esse. Uma dessas aplicações é a de Call centers. Otimizar serviços de Call centers e diminuir ocusto de pessoal é um dos benefícios que um Sistema de Recomendação poderia trazer. Segundo [6] quando de posse do perfil do cliente (empresas de Call centers), o atendentetem maior facilidade de estabelecer a comunicação com ele e de efetuar, por exemplo, algumavenda de produto em oferta. Além disso outras vantagens na utilização de serviços de atendi-mento personalizados são: • Redução do tempo de atendimento em 7% • Aumento na satisfação do cliente em 8% • Redução no abandono de comunicações em 19%Referências [1] Web Site Privacy Seals: Are they worth it? J. Cline, 2003. [2] Personalização na Internet. R. Torres, 2004. [3] Adomavicius, G.; Tuzhilin, A. Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, 17(6):734–749, 2005. [4] Breese, J. S.; Heckerman, D.; Kadie, C. Empirical analysis of predictive algorithms for collaborative filtering. p. 43–52. Morgan Kaufmann, 1998. [5] C. Jensen, J. Davis, S. F. Finding others online: reputation systems for social online spaces. Proceedings of the SIGCHI conference on Human factors in computing systems, New York,NY, USA.ACM., 2002. [6] Cazella, S.; Nunes, M.; Reategui, E. A Ciência da Opinião: Estado da arte em Sis- temas de Recomendação. CSBC - XXX Congresso da SBC - Jornada de Atualização de Informática-JAI, p. 161–216, 2010. [7] D. Poo, B. Chng, J. G. A hybrid approach for user profiling. Proceedings of the 36th Annual Hawaii International Conference on System Sciences (HICSS’03) - IEEE Computer Society, 2003. [8] Delgado, J. A. Agent-Based Information Filtering and Recommender System on the Internet. PhD thesis, Nagoya Institute of Technology. Dept. of Intelligence Computer Science, 2000. [9] Donath, J. S. Identity and deception in the virtual community. M. A. Smith and P. Kollock, editors, Communities in Cyberspace, 1999.[10] Donath, J. S. Being real: Questions of tele-identity. Ken Goldberg, editor, The Robot in the Garden: Telerobotics and Telepistemology in the Age of the Internet, 2000.[11] Filho, F. M. F.; Geus, P. L.; Albuquerque, J. a. P. Sistemas de Recomendação e Interação na Web Social. I Workshop de Aspectios da Interação Humano-Computador na Web Social, p. 24–27, 2008.
  16. 16. Revisão Bibliográfica - Sistemas de Recomendação 15[12] Giddens, A. Modernity and self-identity. self and society in the late modern age. Stanford university Press, Stanford, California, 1991.[13] Goldberg, D.; Nichols, D.; Oki, B. M.; Terry, D. Using collaborative filtering to weave an information tapestry. Commun. ACM, 35:61–70, December 1992.[14] Herlocker, J. L. Understanding and improving automated collaborative filtering sys- tems. PhD thesis, University of Minnesota, 2000. AAI9983577.[15] Karypis, G. Evaluation of item-based top-n recommendation algorithms. p. 247–254, 2000.[16] P. Resnick, R. Zeckhauser, J. S. K. L. The value of reputation on ebay: A controlled experiment. Experimental Economics, 2006.[17] P. Resnick, K. Kuwabara, R. Z. E. F. Reputation systems. Commun. ACM, 2000.[18] Pinto, M. A. G.; Tanscheit, R.; Vellasco, M. Sistema de recomendação de produtos em marketing com uso de métodos de apoio à decisão. Computational Intelligence, d:1–7, 2011.[19] R. Carreira, J.M. Crato, D. G. J. J. Evaluating adaptive user profiles for news classi- fication. Proceedings of the 9th international conference on Intelligent user interfaces, New York, NY, USA. ACM Press, 2004.[20] Reategui, Eliseo Berni;Cazella, S. C. Sistemas de Recomendação. XXV Congresso da Sociedade Brasileira de Computação. A Universalidade da Computação: Um Agente de Inovação e Conhecimento, p. 306–348, 2005.[21] Sarwar, B.; Karypis, G.; Konstan, J.; Riedl, J. Analysis of recommendation algorithms for e-commerce. In: Proceedings of the 2nd ACM conference on Electronic commerce, EC ’00, p. 158–167, New York, NY, USA, 2000. ACM.[22] Terveen, L.; Hill, W. Beyond recommender systems: Helping people help each other. In: HCI in the New Millennium, p. 487–509. Addison-Wesley, 2001.

×