490 likes | 597 Views
ESCOLA POLITÉCNICA DE PERNAMBUCO. Um serviço de recomendação inter-aplicações baseado em filtragem colaborativa. Aluno: Jefferson Silva de Amorim Orientador: Prof. Dr. Byron Leite Dantas Bezerra. Objetivos.
E N D
ESCOLA POLITÉCNICA DE PERNAMBUCO Um serviço de recomendação inter-aplicações baseado em filtragem colaborativa Aluno: Jefferson Silva de Amorim Orientador: Prof. Dr. Byron Leite Dantas Bezerra
Objetivos • Realizar uma revisão da literatura e propor novos sistemas e técnicas de recomendação inter-aplicações • Adaptar a implementação de uma técnica de filtragem colaborativa para realizar recomendações inter-aplicações • Desenvolver um Web Service que expõe as principais funcionalidades da técnica de filtragem colaborativa adaptada
Objetivos • Desenvolver uma ferramenta web para coleta de dados e suporte à análise de recomendações • Analisar as recomendações realizadas pelo serviço de recomendação desenvolvido
Sistemas de Recomendação • Se utilizam de tecnologias de personalização • Oferecem uma experiência personalizada aos usuários • Possuem geralmente 2 funcionalidades: • Predizer Nota • Gerar Lista Personalizada
Sistemas de Recomendação • Engenho de personalização
Sistemas de Recomendação • Personalização de conteúdo • Utiliza de informações do usuário para recomendar itens • Função utilidade
Sistemas de Recomendação • Técnicas de personalização de conteúdo • Baseada em conteúdo • Filtragem colaborativa • Demográfica
Sistemas de Recomendação • Filtragem colaborativa • Duas abordagens podem ser utilizadas para definir a função utilidade: • Memory-based • Definem-se heurísticas • Model-based • Define-se um modelo a partir das avaliações
Sistemas de Recomendação • Filtragem colaborativa (Memory-based) • Medida de similaridade • Coeficiente de correlação de Pearson • Função utilidade • Baseada em kNN
Sistemas de Recomendação • Filtragem colaborativa (Memory-based) • Vantagens: • Recomendação inovadoras e surpreendentes • Alto grau de reusabilidade • Facilidade de extensão • Desvantagens • Problemas • Novo usuário • Novo item • Esparsidade • Ovelhas negras
Arquitetura Orientada a Serviços • Unidades lógicas representadas como pequenas unidades • Utiliza o paradigma de orientação a serviços • Características: • Direcionada ao negócio • Independente de plataforma • Centrada na empresa • Direcionada à composição
Arquitetura Orientada a Serviços • Serviço
Arquitetura Orientada a Serviços • Web Services
Arquitetura Orientada a Serviços • Princípios de orientação a serviços
Sistema de recomendação inter-aplicações • Modelo conceitual
Inter-Applications Recommendation Service • Desenvolvido utilizando as tecnologias: • Java EE • JBoss AS • MySQL • Mahout
Inter-Applications Recommendation Service • Modelo arquitetural
Inter-Applications Recommendation Service • Módulo de Serviço
Inter-Applications Recommendation Service • Módulo de Contextualização
Inter-Applications Recommendation Service • Módulo de Contextualização • Descontextualização • Contextualização
Inter-Applications Recommendation Service • Módulo de Recomendação
Inter-Applications Recommendation Service • Módulo de Recomendação • Adaptações realizadas em 2 momentos: • Coeficiente de correlação de Pearson • Cálculo da utilidade
Inter-Applications Recommendation Service • Repositório de Conhecimento
Coleta de dados e análise de recomendações • Ferramenta desenvolvida para dar suporte a coleta de dados e as análises realizadas • JSF • Facelets • Primefaces • Composta por 3 módulos • Coleta de dados • Recomendação • Usuário
Coleta de dados e análise de recomendações • Módulo de coleta de dados
Coleta de dados e análise de recomendações • Módulo de recomendação
Coleta de dados e análise de recomendações • Módulo de usuário
Coleta de dados e análise de recomendações • Base de dados • Existentes • Wikilens, MovieLens, Book-Crossing e Jester Joke • Coletada • 3 contextos • 30 itens/contexto • 52 usuários • 1560 avaliações
Coleta de dados e análise de recomendações • Análise das recomendações • Recomendação inter-aplicações X Recomendação clássica • Itens recomendados • Vizinhos do usuário
Coleta de dados e análise de recomendações • Itens recomendados • Novos itens
Coleta de dados e análise de recomendações • Itens recomendados • Omissão de itens
Coleta de dados e análise de recomendações • Itens recomendados • Itens com notas e ordens de utilidade iguais
Coleta de dados e análise de recomendações • Itens recomendados • Itens com notas iguais e ordens de utilidade diferentes
Coleta de dados e análise de recomendações • Itens recomendados • Itens iguais com notas diferentes
Coleta de dados e análise de recomendações • Vizinhos do usuário • Vizinhos iguais com mesma ordem de semelhança
Coleta de dados e análise de recomendações • Vizinhos do usuário • Vizinhos iguais com ordens de semelhança diferentes
Coleta de dados e análise de recomendações • Vizinhos do usuário • Vizinhos diferentes
Coleta de dados e análise de recomendações • Vizinhos do usuário • Vizinhança híbrida
Resultados e Dificuldades • Resultados promissores • Ameniza alguns problemas • Novo usuário e Ovelha negra • Problemas como o do novo item e de esparsidade persistem • Houve dificuldade em encontrar uma base de dados para teste • Coleta de dados
Trabalhos futuros • Experimentos baseados em análises estatísticas • Outras técnicas de filtragem • CMBF, SMBF e HMBF • Representação do conteúdo descritivo de itens pertencentes a diferentes aplicações • Análise de Dados Simbólicos
Obrigado! O código fonte do projeto está disponível em http://code.google.com/p/iars