sistemas de recomendação usando mahout - dia 1

13
Sistemas de Recomendação usando Mahout Alison Marczewski Álvaro Reis Neto Workshop de Mineração de Dados Julho de 2012

Upload: alison-marczewski

Post on 04-Jul-2015

265 views

Category:

Technology


3 download

DESCRIPTION

Minicurso de 3 dias sobre um pouco da teoria em sistemas de recomendação e uso do framework mahout no desenvolvimento dos mesmos. Esse minicurso faz parte de um dos trabalhos realizados no projeto de cooperação em sistemas inteligentes em nuvem entre o Instituto Nokia de Tecnologia(INdT) e o Instituto de Computação(IComp) da Universidade Federal do Amazonas(UFAM).

TRANSCRIPT

Page 1: Sistemas de Recomendação Usando Mahout - Dia 1

Sistemas de Recomendação usando

Mahout Alison Marczewski

Álvaro Reis Neto Workshop de Mineração de Dados

Julho de 2012

Page 2: Sistemas de Recomendação Usando Mahout - Dia 1

Agenda

• Objetivo

• Mahout Framework

– O que é

– Quem usa

– Utilizando o Mahout com o Eclipse

– O que é Recomendação

Page 3: Sistemas de Recomendação Usando Mahout - Dia 1

Agenda

• Mahout Framework

– Rodando o primeiro sistema de recomendação

– Avaliando um Recomendador

– Avaliando Precision e Recall

– Representando dados de Recomendação

Page 4: Sistemas de Recomendação Usando Mahout - Dia 1

O que é

Apache Mahout é um conjunto de bibliotecas de aprendizagem de máquinas projetado para ser

escalável e robusta

• Classificação

• Clusterização

• Recomendação

Page 5: Sistemas de Recomendação Usando Mahout - Dia 1

Quem usa

Page 6: Sistemas de Recomendação Usando Mahout - Dia 1

Utilizando o Mahout com o Eclipse

• Instalar Eclipse

• Baixar Apache Mahout

• Baixar base de dados Grouplens

Page 7: Sistemas de Recomendação Usando Mahout - Dia 1

O que é Recomendação

• Filtragem Colaborativa

– Pessoas com gostos similares

– Itens parecidos com os que você gosta

• Baseada em Conteúdo

UserSimilarity

UserNeighborhood

DataModel Recommender App

Page 8: Sistemas de Recomendação Usando Mahout - Dia 1

Rodando o primeiro Sistema de Recomendação

Let’s Work!

Page 9: Sistemas de Recomendação Usando Mahout - Dia 1

Avaliando um Recomendador

• Qual a melhor recomendação para um usuário?

Dados Treino Teste

Page 10: Sistemas de Recomendação Usando Mahout - Dia 1

Avaliando Precision e Recall

DocumentosRelevantes

Documentos Recuperados

Todos os possíveis Documentos

Precision

Rec

all

Page 11: Sistemas de Recomendação Usando Mahout - Dia 1

Representando dados de Recomendação

• Preferência – Userid, itemid, preference_value

• Preferência no Mahout – new GenericPreference(123, 456, 4.0f); PreferenceArray userPref = new

GenericUserPreferenceArray(10); userPref.setUserID(0, 1L); userPref.setItemID(0, 101L); userPref.setValue(0, 2.0f); userPref.setItemID(1, 106L); userPref.setValue(1, 5.0f); Preference pref = userPref.get(0);

Page 12: Sistemas de Recomendação Usando Mahout - Dia 1

Representando dados de Recomendação

• DataModel

Page 13: Sistemas de Recomendação Usando Mahout - Dia 1

Obrigado!

Até amanhã? …