Adicionando Escalabilidade ao Framework de Recomendação Idealize

Slides:



Advertisements
Apresentações semelhantes
SISTEMAS DISTRIBUÍDOS BASEADOS EM COORDENAÇÃO
Advertisements

Agentes adaptativos às Normas externas
Requisitos de Software
Conceitos Gerais relacionados a Recuperação de Informação
Projeto conceitual Mostra ao cliente exatamente o que o sistema fará
SISTEMAS DE INFORMAÇÃO
Rational Unified Process(RUP)
Inteligência Artificial Alex F. V. Machado. Tecnologia de Processamento da Informação que envolve processos de raciocínio, aprendizado e percepção. Winston.
Projeto de Software Orientado a Objetos
Sistema Web para Departamentos
Lógica de Programação Módulo II
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Anderson Berg Orientador: Prof. Fernando Buarque
Engenharia de Software
Classes e objetos Modelagem
Classes e objetos P. O. O. Prof. Grace.
TÉCNICAS DE PROGRAMAÇÃO II
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
DESCRIÇÃO/OBJETIVOS O Controle de Acesso Nacional foi desenvolvido para suprir a necessidade de maior segurança e controle da informação administrada pelos.
Prof. Ilaim Costa Jr. Novas Tecnologias Prof. Ilaim Costa Jr.
Engenharia de Software para Sistemas de Apoio a Decisão
Enrique P. L. de Oliveira Tecnologia para Web Enrique P. L. de Oliveira
Diagramas de Colaboração e Componentes
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 12. Estados Objetivo: compreender a notação do diagrama de estados.
Sistemas de Recomendação
Sistemas de recomendação
Apresentação Intermédia José Graciano Almeida Ramos Orientador: Professor Dr. Jaime S. Cardoso Responsável INESC Porto : MSc. Ricardo Sousa 1 FEUP-MIEIC.
DIAGRAMA DE CLASSE Modelagem de Software
Adicionando Escalabilidade ao Framework de Recomendação IRF
Vivendo em um mundo centrado em redes
Tecnologia da Informação
Sistemas de Recomendação Mineração da Web
 São recomendações que utiliza o perfil do usuário para associar as busca e destacar as informações mais relevantes para o usuário. › Existe dois.
Introdução e Fundamentos Engenharia de Requisitos
Recuperação de Informação
Professor: Márcio Amador
Orientação a Objetos Parte I
Análise e Projeto de Sistemas
SISTEMAS DISTRIBUIDOS Aula 4
A abordagem de banco de dados para gerenciamento de dados
PROGRAMAÇÃO ORIENTADA A OBJETOS
Global Track Inovação e Agilidade nas Gestões Operacionais.
Elementos de um Sistema de Agentes Móveis Agentes e Places Comportamento de Agentes Comunicação Padronização OMG/MASIF.
Redes Sociais Colaborativas Patrícia Ramos | 22/05/2006.
Filtragem Colaborativa
Orientador: Prof. Msc. Silvio César Cazella Um protótipo de aplicação para recomendação de produtos baseado no interesse e comportamento de consumo do.
Sistemas de Recomendação
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Padrões de Interação com o Usuário
Diagrama de Colaboração. Diagramas de Interação Expressam informações bastante similares porém de maneira diferente Diagrama de seqüência: – Interação.
WordPress Universidade Federal Rural de Pernambuco Bacharelado em Economia Introdução à Microinformática Professor: Marcos Cardoso
Google Wave (Arquitetura) Ademir Junior / Felipe Ferreira / Fernando Kakimoto.
Utilizando UML e Padrões Prof. Fábio Botelho, MSc Redes e Sistemas Distribuídos Recife, Março de 2010.
Ding Yih An, Juan X. E. A. Calles, Karin S. Komati, Maxwell E. Monteiro Instituto Federal de Educação Ciência e Tecnologia do Espírito Santo Referências.
Construtores e Destrutores
Filtragem de Informação
Sistemas de Recomendação de Músicas
Modelo de Análise e Projeto
Engenharia de Software e Sistemas
Objetos Distribuídos Frameworks Orientados a Objetos.
CloudSim Um framework para modelagem e simulação de infraestrutura e serviços de Computação em Nuvem.
Daniel Epstein. O que é o GOOGLE WAVE Como funciona Nomenclatura Principais APIs Principais Extensões Robots Gadgets Embed API Sumário.
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
ARQUITETURA WEB SERVICE TGM
Interações entre objetos
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
CIn-UFPE1 Projeto de Gerenciamento de Dados. CIn-UFPE2 Objetivos n Definir o que significa gerenciamento de dados do sistema; n Entender abordagens diferentes.
Síntese do Negócio ONTOWEB. Ontoweb – Nova Geração de Ferramenta de Busca Possui comportamento inteligente que auxilia o usuário a organizar e compartilhar.
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Adicionando Escalabilidade ao Framework de Recomendação Idealize Alex Amorim Dutra Orientador: Álvaro R. Pereira Jr. Co-Orientador: Felipe Martins Melo

Um sistema de recomendação Muitas vezes desperdiçamos muito tempo tentando encontrar conteúdo relevante. Os dados na WEB tendem a crescer a cada dia. Sistemas de recomendação levam a seus utilizadores informações relevantes.

Escalabilidade Processamento de dados de forma distribuída. Demanda de processamento de dados de acordo com a necessidade do cliente. Adicionar máquinas para processar os dados à medida que estes aumentarem.

Crescente interesse na área acadêmica Crescente ocorrência de artigos nas conferências relacionadas como KDD e CIKM. Criação de uma nova conferência pela ACM, a RecSys (ACM Conference on Recommender Systems).

Podemos recomendar Imagens (photoree.com) Músicas (lastfm.com) Vídeos (youtube.com) Filmes (movielens.umn.edu) Produtos (amazon.com) Notícias (idgnow.com.br) E diversos outros itens

Notícias – idgnow.com.br

Notícias – idgnow.com.br

Formas para coletar dados do usuário Explícita Dados fornecidos pelo usuário. Ex. : crítica ou questionários. Implícita Comportamento ao utilizar a aplicação – dados de uso (objetos comprados, vistos, baixados, clicados). Inferência Aprender o perfil ou comportamento do usuário.

Abordagens de sistemas de recomendação Top N Baseada em Conteúdo Filtragem Colaborativa Baseada em Dados de Uso Híbrida

Top N Mais lidos, vendidos, baixados, apontados ou citados. Uma das técnicas de recomendação mais vista hoje em dia. Não oferece conteúdo para usuários específicos.

Recomendação Baseada em conteúdo A recomendação é feita comparando conteúdo que o usuário já acessou, recomendando itens similares.

Recomendação Baseada em conteúdo Perfil X Item: recomendar itens classificados no perfil do usuário. Ex.: Livros com assuntos definidos no perfil do usuário. Item X Item: recomendar itens similares a itens relacionados ao usuário. Ex.: Outros CDs do mesmo artista.

Recomendação Baseada em conteúdo Problemas Um novo usuário não possui itens classificados. Usuário não irá receber conteúdo muito diferente do que já foi visto.

Filtragem Colaborativa É o processo de filtragem por informação ou padrões usando técnicas que envolvem colaboração entre múltiplos agentes.

Filtragem Colaborativa Usuário X Usuário: recomendar itens relacionados a pessoas com características semelhantes (atributos ou preferências).

Filtragem Colaborativa

Filtragem Colaborativa

Filtragem Colaborativa

Filtragem Colaborativa Problemas Um novo usuário não pertence a nenhum grupo. Novos itens são adicionados o tempo todo e ainda não foram avaliados.

Baseada em dados de uso A recomendação é realizada analisando as ações de um usuário em determinada aplicação. Exemplo: A sequência de links que determinado usuário clicou ao navegar em um site de compras.

Híbrida Combinação entre as diversas abordagens de recomendação, desta forma uma abordagem supre as falhas das outras.

Framework de Recomendação Idealize (IRF) e Aplicação de recomendação baseada em conteúdo desenvolvida utilizando o IRF

Objetivo de um framework Um framework provê uma solução para uma família de problemas semelhantes. Um conjunto de classes e interfaces que mostra como decompor a família de problemas.

Descrição do IRF O IRF é composto por três setores, sendo eles: Input, Cache e Batch. Estes setores são utilizados em três máquinas, cada uma instanciada com um setor correspondente.

Setor de Cache Este setor é destinado a armazenar as recomendações já calculadas. Fornece respostas rápidas aos pedidos de recomendações que chegam a sua fachada.

Setor de Batch Este setor é responsável por executar recomendações em lote e processar os feedbacks. Este setor é destinado a ser executado em um cluster de modo a ser capaz de lidar com a enorme quantidade.

Setor de Input Através deste setor o usuário pode fazer operações tais como inserção, remoção e atualização sobre os itens e os dados do usuário. Foi criado a fim de dissociar a produção de recomendações e feedbacks das tarefas de gerenciamento das bases de dados.

Modelo de Produção

Principais Componentes do IRF Base Cache, CacheObserver, Constants, IdealizeExceptions, IdelizeFacades, PropertiesLoader, IdealizeLogger Hot Spots InstantiatorWorker, IdealizeDataModel, BaseBean, InputInterpreter, Controller, DataManipulator, BatchProcessors, RecommendationSerializer, IdealizeRecommender, BaseStorable classes.properties

Arquitetura do Setor de Batch

Execução da Aplicação de Recomendação Baseada em Conteúdo

Estudos realizados para desenvolvimento das aplicações Padrões de projeto. Tecnologia RMI provida pela linguagem Java. Sistemas de recomendação e métodos de recomendação. Início dos estudos sobre Hadoop e sistemas escaláveis.

Trabalhos Futuros Implementação da arquitetura escalável no IRF. Desenvolver uma aplicação que utilize a nova arquitetura escalável, sendo esta aplicação de qualquer abordagem de recomendação.

Cronograma Ano 2011 Tarefa a ser realizada Janeiro Estudo do Hadoop e sistemas escaláveis Implementação da arquitetura escalável no IRF Fevereiro Março Implementação de uma aplicação de recomendação escalável sobre o IRF Abril Realização de testes e correções Maio Escrever monografia II Junho Apresentar

Perguntas?