SlideShare uma empresa Scribd logo
Sistemas de
Recomendação
Personalizando sua experiência de compra


        Marcel Pinheiro Caraciolo
                marcel@orygens.com /
       marcel@recday.com / marcel@muricoca.com
      @marcelcaraciolo
Quem é Marcel ?
Marcel Pinheiro Caraciolo - @marcelcaraciolo

   Sergipano, porém Recifense.
   Mestrando em Ciência da Computação no CIN/UFPE na área de mineração de dados
   Diretor de Pesquisa e Desenvolvimento na Orygens
   Membro e Moderador da Celúla de Usuários Python de Pernambuco (PUG-PE)


      Minhas áreas de interesse: Computação móvel e Computação inteligente


      Meus blogs: http://www.mobideia.com (sobre Mobilidade desde 2006)
                  http://aimotion.blogspot.com (sobre I.A. desde 2009)

             Jovem Aprendiz ainda nas artes pythonicas.... (desde 2007)
WEB
WEB
1.0                       2.0




Fonte de Informação   Fluxo Contínuo de Informação
                                 VI Encontro do PUG-PE
                                  VI Encontro do PUG-PE
WEB SITES
WEB APPLICATIONS
 WEB SERVICES
                   3.0          SEMANTIC WEB




                   USERS   VI Encontro do PUG-PE
                            VI Encontro do PUG-PE
Usar informação coletiva de
   forma efetiva afim de
 aprimorar uma aplicação
Intelligence from
                    Mining Data




                                                     User
                                                      User
User                                                   User
                                                        User
              Um usuário influencia outros
       por resenhas, notas, recomendações e blogs




          Um usuário é influenciado por outros
        por resenhas, notas, recomendações e blogs
aggregation information: lists
                                             ratings
   user-generated content
                                 reviews
   blogs                                    recommendations

       wikis      Collective Intelligence      voting
                    Your application             bookmarking
               Search
                            tag cloud        tagging
                                                        saving
   Natural Language Processing

    Clustering and                 Harness external content
   predictive models
WEB SITES
WEB APPLICATIONS
 WEB SERVICES
                   3.0            SEMANTIC WEB




                   USERS
                           antes...
                             VI Encontro do PUG-PE
                              VI Encontro do PUG-PE
Atualmente
estamos sobrecarregados
     de informações
muitas vezes inúteis
às vezes
procuramos
   isso...
e encontramos isso!
google?
google?




midias sociais?
eeeeuuuu...

    google?




midias sociais?
Sistemas de Recomendação
“A lot of times, people don’t know what
 they want until you show it to them.”
                                     Steve Jobs

“We are leaving the Information age, and
entering into the Recommendation age.”
                  Chris Anderson, from book Long Tail
Recomendações Sociais

                                      Família/Amigos
                                    Amigos/ Família
 O Que eu
deveria ler ?




                                                 Ref: Flickr-BlueAlgae



                                     “Eu acho que
                                    você deveria ler
 Ref: Flickr photostream: jefield     estes livros.
Recomendações por Interação

                  Entrada: Avalie alguns livros

   O Que eu
  deveria ler ?




                                                  Saída:
                                                  “Livros que você
                                                    pode gostar
                                                       são …”
Sistemas desenhados para sugerir algo para mim do meu
                       interesse!
Por que Recomendação ?
Netflix
 - 2/3 dos filmes alugados vêm de recomendação

Google News
 - 38% das notícias mais clicadas vêm de recomendação


Amazon
 - 38% das vendas vêm de recomendação

                                    Fonte: Celma & Lamere, ISMIR 2007
!"#$%"#&'"%(&$)")
 Nós+,&-.$/).#&0#/"1.#$%234(".#
  * estamos sobrecarregados de
               informação
    $/)#5(&6 7&.2.#"$4,#)$8
    * 93((3&/.#&0#:&'3".;#5&&<.#
      $/)#:-.34#2%$4<.#&/(3/"
Milhares de artigos e posts
    * =/#>$/&3;#?#@A#+B#4,$//"(.;#
    novos todos os dias
      2,&-.$/).#&0#7%&6%$:.#
      "$4,#)$8
    * =/#C"1#D&%<;#."'"%$(#
Milhões de Músicas, Filmes e
      2,&-.$/).#&0#$)#:"..$6".#
           Livros
      ."/2#2&#-.#7"%#)$8


   Milhares de Ofertas e
        Promoções
O que pode ser recomendado ?

                  Contatos em Redes Sociais    Artigos
  Produtos      Messagens de Propaganda
Cursos e-learning                               Livros
        Tags        Músicas
                                Futuras namoradas
                      Roupas         Filmes
            Restaurantes
                                 Programas de Tv
    Vídeos               Papers
      Opções de Investimento             Profissionais
                  Módulos de código
E como funciona a
 recomendação ?
O que os sistemas de recomendação
        realmente fazem ?
 1. Prediz o quanto você pode gostar de um certo
                 produto ou serviço
2. Sugere um lista de N items ordenada de acordo
                  com seu interese
3. Sugere uma lista de N usuários ordernada
           para um produto/serviço
4. Explica a você o porque esses items foram
                 recomendados
5. Ajusta a predição e a recomendação baseado em
              seu feedback e de outros.
Filtragem baseada por Conteúdo

                  Similar




Duro de           O Vento                         Toy
                               Armagedon                    Items
 Matar             Levou                         Store


                                     recomenda
          gosta

                            Marcel                       Usuários
Problemas com filtragem por
              conteúdo
 1. Análise dos dados Restrita
  - Items e usuários pouco detalhados. Pior em áudio ou imagens

  2. Dados Especializados
 - Uma pessoa que não tem experiência com Sushi não recebe o
            melhor restaurante de Sushi da cidade
 3. Efeito Portfólio
- Só porque eu vi 1 filme da Xuxa quando criança, tem que me
                    recomendar todos dela
Filtragem Colaborativa




                 O Vento                         Toy
Thor                             Armagedon               Items
                  Levou                         Store

gosta
                                  recomenda


        Marcel        Rafael           Amanda           Usuários




                       Similar
Problemas com filtragem colaborativa
    1. Escabilidade
        - Amazon com 5M usuários, 50K items, 1.4B avaliações
   2. Dados esparsos
     - Novos usuários e items que não tem histórico
   3. Partida Fria
      - Só avaliei apenas um único livro no Amazon!
   4. Popularidade
     - Todo mundo lê ‘Harry Potter’
   5. Hacking
    - A pessoa que lê ‘Harry Potter’ lê Kama Sutra
Filtragem Híbrida
          Combinação de múltiplos métodos

Duro de         O Vento                              Toy
                              Armagedon                       Items
 Matar           Levou                              Store



                                                            Ontologias
                                                              Dados
                                                            Símbolicos




            Marcel        Rafael          Luciana           Usuários
Como eles são
               apresentados ?
   Destaques                 Mais sobre este artista...
  Alguem similar a você também gostou disso
              O mais popular em seu grupo...
Já que você escutou esta, você pode querer esta...
 Lançamentos         Escute músicas de artistas similares.
     Estes dois item vêm juntos..
Como eles são avaliados ?
Como sabemos se a recomendação é boa ?
Geralmente se divide-se em treinamento/teste (80/20)

Críterios utilizados:
 - Erro de Predição: RMSE

- Curva ROC*, rank-utility, F-Measure
                               *http://code.google.com/p/pyplotmining/
Minhas contribuições
Crab
                A Python Framework for Building
                    Recommendation Engines

Marcel Caraciolo Ricardo Caspirro             Bruno Melo
   @marcelcaraciolo       @ricardocaspirro        @brunomelo
What is Crab ?

 A python framework for building recommendation engines
A Scikit module for collaborative, content and hybrid filtering
       Mahout Alternative for Python Developers :D
             Open-Source under the BSD license


             https://github.com/muricoca/crab
The current Crab

Collaborative Filtering algorithms
  User-Based, Item-Based and Slope One

Evaluation of the Recommender Algorithms
 Precision, Recall, F1-Score, RMSE




                           Precision-Recall Charts
Why migrate ?
Old Crab running only using Pure Python
     Recommendations demand heavy maths calculations and lots of processing

Compatible with Numpy and Scipy libraries
   High Standard and popular scientific libraries optimized for scientific calculations in Python

Scikits projects are amazing!
    Active Communities, Scientific Conferences and updated projects (e.g. scikit-learn)

Turn the Crab framework visible for the community
 Join the scientific researchers and machine learning developers around the Globe coding with
                                 Python to help us in this project


                              Be Fast and Furious
How are we working ?
            Sprints, Online Discussions and Issues




https://github.com/muricoca/crab/wiki/UpcomingEvents
Future Releases
        Planned Release 0.1
   Collaborative Filtering Algorithms working, sample datasets to load and test


        Planned Release 0.11
       Evaluation of Recommendation Algorithms and Database Models support


        Planned Release 0.12
   Recommendation as Services with REST APIs




....
Join us!

1. Read our Wiki Page
    https://github.com/muricoca/crab/wiki/Developer-Resources

2. Check out our current sprints and open issues
    https://github.com/muricoca/crab/issues

3. Forks, Pull Requests mandatory

4. Join us at irc.freenode.net #muricoca or at our
               discussion list in work :(
RecDay: Recomendações diariamente!
Dicas
Items Recomendados




Toby Segaran, Programming Collective   SatnamAlag, Collective Intelligence in
Intelligence, O'Reilly, 2007           Action, Manning Publications, 2009



 Sites como TechCrunch e ReadWriteWeb
Conferências Recomendadas
- ACM RecSys.

–ICWSM: Weblogand Social Media

–WebKDD: Web Knowledge Discovery and Data Mining

–WWW: The original WWW conference

–SIGIR: Information Retrieval

–ACM KDD: Knowledge Discovery and Data Mining

–ICML: Machine Learning
Onde você estará em tudo
         isso ?



                    Fonte: Hunch.com




      Obrigado !!
Sistemas de
Recomendação
A experiência de compra personalizada


      Marcel Pinheiro Caraciolo
              marcel@orygens.com /
     marcel@recday.com / marcel@muricoca.com
    @marcelcaraciolo

Mais conteúdo relacionado

Destaque

Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendação
Anderson Dantas
 
Sistemas de Recomendação
Sistemas de Recomendação Sistemas de Recomendação
Sistemas de Recomendação
Renato Shirakashi
 
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
Luciana Monteiro
 
Monitoramento de System Calls com DTrace
Monitoramento de System Calls com DTraceMonitoramento de System Calls com DTrace
Monitoramento de System Calls com DTrace
Rafael Barbolo
 
Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2
Ralph Rassweiler
 
Recomendação de conteúdo baseada em interações multimodais
Recomendação de conteúdo baseada em interações multimodaisRecomendação de conteúdo baseada em interações multimodais
Recomendação de conteúdo baseada em interações multimodais
Arthur Fortes
 
Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendaçãoRafael Barbolo
 
Sistemas de Recomendação
Sistemas de RecomendaçãoSistemas de Recomendação
Sistemas de Recomendação
Gabriel Benz
 
Sistemas de Recomendação e Mobilidade
Sistemas de Recomendação e MobilidadeSistemas de Recomendação e Mobilidade
Sistemas de Recomendação e Mobilidade
Marcel Caraciolo
 
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
Adelton Ribeiro
 
Sistemas de Recomendação na web
Sistemas de Recomendação na webSistemas de Recomendação na web
Sistemas de Recomendação na web
Lucas Augusto Carvalho
 
Introdução à sistemas de recomendação
Introdução à sistemas de recomendaçãoIntrodução à sistemas de recomendação
Introdução à sistemas de recomendação
Ralph Rassweiler
 
Sistemas de Recomendação Usando Mahout - Dia 1
Sistemas de Recomendação Usando Mahout - Dia 1Sistemas de Recomendação Usando Mahout - Dia 1
Sistemas de Recomendação Usando Mahout - Dia 1
Alison Marczewski
 
Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2
Alison Marczewski
 
Conceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de RecomendaçãoConceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de Recomendação
Joel Pinho Lucas
 
Técnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
Técnicas de Mineração de Dados Aplicadas a Sistemas de RecomendaçãoTécnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
Técnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
saspi2
 
Crab: A Python Framework for Building Recommender Systems
Crab: A Python Framework for Building Recommender Systems Crab: A Python Framework for Building Recommender Systems
Crab: A Python Framework for Building Recommender Systems
Marcel Caraciolo
 
Introduction to Crab - Python Framework for Building Recommender Systems
Introduction to Crab - Python Framework for Building Recommender SystemsIntroduction to Crab - Python Framework for Building Recommender Systems
Introduction to Crab - Python Framework for Building Recommender Systems
Marcel Caraciolo
 
Mining Scipy Lectures
Mining Scipy LecturesMining Scipy Lectures
Mining Scipy Lectures
Marcel Caraciolo
 

Destaque (20)

Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendação
 
Sistemas de Recomendação
Sistemas de Recomendação Sistemas de Recomendação
Sistemas de Recomendação
 
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
Sistema de recomendação para bibliotecas universitárias - KREBS, Luciana Mont...
 
Monitoramento de System Calls com DTrace
Monitoramento de System Calls com DTraceMonitoramento de System Calls com DTrace
Monitoramento de System Calls com DTrace
 
Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2Sistemas de Recomendação - Parte 2
Sistemas de Recomendação - Parte 2
 
Recomendação de conteúdo baseada em interações multimodais
Recomendação de conteúdo baseada em interações multimodaisRecomendação de conteúdo baseada em interações multimodais
Recomendação de conteúdo baseada em interações multimodais
 
Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendação
 
Sistemas de Recomendação
Sistemas de RecomendaçãoSistemas de Recomendação
Sistemas de Recomendação
 
Sistemas de Recomendação e Mobilidade
Sistemas de Recomendação e MobilidadeSistemas de Recomendação e Mobilidade
Sistemas de Recomendação e Mobilidade
 
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
RECOMENDAÇÃO DE DOCUMENTOS PARA OS USUÁRIOS DO AVA MOODLE A PARTIR DAS HASHTA...
 
Sistemas de Recomendação na web
Sistemas de Recomendação na webSistemas de Recomendação na web
Sistemas de Recomendação na web
 
Introdução à sistemas de recomendação
Introdução à sistemas de recomendaçãoIntrodução à sistemas de recomendação
Introdução à sistemas de recomendação
 
Sistemas de Recomendação Usando Mahout - Dia 1
Sistemas de Recomendação Usando Mahout - Dia 1Sistemas de Recomendação Usando Mahout - Dia 1
Sistemas de Recomendação Usando Mahout - Dia 1
 
Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2Sistemas de Recomendação Usando Mahout - Dia 2
Sistemas de Recomendação Usando Mahout - Dia 2
 
Conceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de RecomendaçãoConceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de Recomendação
 
Técnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
Técnicas de Mineração de Dados Aplicadas a Sistemas de RecomendaçãoTécnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
Técnicas de Mineração de Dados Aplicadas a Sistemas de Recomendação
 
Shideshare
ShideshareShideshare
Shideshare
 
Crab: A Python Framework for Building Recommender Systems
Crab: A Python Framework for Building Recommender Systems Crab: A Python Framework for Building Recommender Systems
Crab: A Python Framework for Building Recommender Systems
 
Introduction to Crab - Python Framework for Building Recommender Systems
Introduction to Crab - Python Framework for Building Recommender SystemsIntroduction to Crab - Python Framework for Building Recommender Systems
Introduction to Crab - Python Framework for Building Recommender Systems
 
Mining Scipy Lectures
Mining Scipy LecturesMining Scipy Lectures
Mining Scipy Lectures
 

Semelhante a Sistemas de Recomendação e Inteligência Coletiva

[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao
Ahirton Lopes
 
Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1
Ralph Rassweiler
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
Ahirton Lopes
 
Personalização: O que é?
Personalização: O que é?Personalização: O que é?
Personalização: O que é?
Elaine Cecília Gatto
 
27o Fórum de Relações Públicas PUC-Campinas
27o Fórum de Relações Públicas PUC-Campinas27o Fórum de Relações Públicas PUC-Campinas
27o Fórum de Relações Públicas PUC-Campinas
Gustavo Ferreira
 
SKY Social Digital - Interagindo com as pessoas
SKY Social Digital - Interagindo com as pessoasSKY Social Digital - Interagindo com as pessoas
SKY Social Digital - Interagindo com as pessoas
Bruno Biagioni Neto
 
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
belaamaral
 
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
IvairLima3
 
Como pesquisar na Internet
Como pesquisar na InternetComo pesquisar na Internet
Como pesquisar na Internetnuno.jose.duarte
 
Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011gracabib
 
AI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerceAI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerce
Renan Moreira de Oliveira
 
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º DiaWorkshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
André de Moraes
 
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º DiaWorkshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
TuddoWeb - Agência Digital
 
Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011gracabib
 
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
Anatalia Saraiva Martins Ramos
 
SC-cap15-recomendacao-apresentacao.ppt
SC-cap15-recomendacao-apresentacao.pptSC-cap15-recomendacao-apresentacao.ppt
SC-cap15-recomendacao-apresentacao.ppt
Jadna Almeida
 
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custoPesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
Ana Paula Batista
 

Semelhante a Sistemas de Recomendação e Inteligência Coletiva (20)

[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao[Jose Ahirton Lopes] Algoritmos de Recomendacao
[Jose Ahirton Lopes] Algoritmos de Recomendacao
 
Palestra unesp 2012
Palestra unesp 2012Palestra unesp 2012
Palestra unesp 2012
 
Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1Sistemas de Recomendação - Parte 1
Sistemas de Recomendação - Parte 1
 
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II[Jose Ahirton Lopes] Algoritmos de Recomendacao II
[Jose Ahirton Lopes] Algoritmos de Recomendacao II
 
Personalização: O que é?
Personalização: O que é?Personalização: O que é?
Personalização: O que é?
 
27o Fórum de Relações Públicas PUC-Campinas
27o Fórum de Relações Públicas PUC-Campinas27o Fórum de Relações Públicas PUC-Campinas
27o Fórum de Relações Públicas PUC-Campinas
 
SKY Social Digital - Interagindo com as pessoas
SKY Social Digital - Interagindo com as pessoasSKY Social Digital - Interagindo com as pessoas
SKY Social Digital - Interagindo com as pessoas
 
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
 
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
03 - Inteligencia Artificial e Aprendizado de Maquina.pptx
 
Trabalhos Escolares III
Trabalhos Escolares IIITrabalhos Escolares III
Trabalhos Escolares III
 
Como pesquisar na Internet
Como pesquisar na InternetComo pesquisar na Internet
Como pesquisar na Internet
 
Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011
 
AI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerceAI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerce
 
Tendências e Redes Sociais
Tendências e Redes SociaisTendências e Redes Sociais
Tendências e Redes Sociais
 
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º DiaWorkshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
 
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º DiaWorkshop: Aprendendo a usar as Redes Sociais 2º Dia
Workshop: Aprendendo a usar as Redes Sociais 2º Dia
 
Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011Guia elaboracaotrabalhos2010 2011
Guia elaboracaotrabalhos2010 2011
 
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
2023_Enanpad_Workshop Ferramentas de IA na Pesquisa.pdf
 
SC-cap15-recomendacao-apresentacao.ppt
SC-cap15-recomendacao-apresentacao.pptSC-cap15-recomendacao-apresentacao.ppt
SC-cap15-recomendacao-apresentacao.ppt
 
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custoPesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
Pesquisa de Guerrilha - Entendendo seu usuário com agilidade e baixo custo
 

Mais de Marcel Caraciolo

Como interpretar seu próprio genoma com Python
Como interpretar seu próprio genoma com PythonComo interpretar seu próprio genoma com Python
Como interpretar seu próprio genoma com Python
Marcel Caraciolo
 
Joblib: Lightweight pipelining for parallel jobs (v2)
Joblib:  Lightweight pipelining for parallel jobs (v2)Joblib:  Lightweight pipelining for parallel jobs (v2)
Joblib: Lightweight pipelining for parallel jobs (v2)
Marcel Caraciolo
 
Construindo softwares de bioinformática para análises clínicas : Desafios e...
Construindo softwares  de bioinformática  para análises clínicas : Desafios e...Construindo softwares  de bioinformática  para análises clínicas : Desafios e...
Construindo softwares de bioinformática para análises clínicas : Desafios e...
Marcel Caraciolo
 
Como Python ajudou a automatizar o nosso laboratório v.2
Como Python ajudou a automatizar o nosso laboratório v.2Como Python ajudou a automatizar o nosso laboratório v.2
Como Python ajudou a automatizar o nosso laboratório v.2
Marcel Caraciolo
 
Como Python pode ajudar na automação do seu laboratório
Como Python pode ajudar na automação do  seu laboratórioComo Python pode ajudar na automação do  seu laboratório
Como Python pode ajudar na automação do seu laboratório
Marcel Caraciolo
 
Python on Science ? Yes, We can.
Python on Science ?   Yes, We can.Python on Science ?   Yes, We can.
Python on Science ? Yes, We can.
Marcel Caraciolo
 
Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3
Marcel Caraciolo
 
Recommender Systems with Ruby (adding machine learning, statistics, etc)
Recommender Systems with Ruby (adding machine learning, statistics, etc)Recommender Systems with Ruby (adding machine learning, statistics, etc)
Recommender Systems with Ruby (adding machine learning, statistics, etc)
Marcel Caraciolo
 
Opensource - Como começar e dá dinheiro ?
Opensource - Como começar e dá dinheiro ?Opensource - Como começar e dá dinheiro ?
Opensource - Como começar e dá dinheiro ?
Marcel Caraciolo
 
Big Data com Python
Big Data com PythonBig Data com Python
Big Data com Python
Marcel Caraciolo
 
Benchy, python framework for performance benchmarking of Python Scripts
Benchy, python framework for performance benchmarking  of Python ScriptsBenchy, python framework for performance benchmarking  of Python Scripts
Benchy, python framework for performance benchmarking of Python Scripts
Marcel Caraciolo
 
Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?
Marcel Caraciolo
 
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
Marcel Caraciolo
 
Benchy: Lightweight framework for Performance Benchmarks
Benchy: Lightweight framework for Performance Benchmarks Benchy: Lightweight framework for Performance Benchmarks
Benchy: Lightweight framework for Performance Benchmarks
Marcel Caraciolo
 
Construindo Sistemas de Recomendação com Python
Construindo Sistemas de Recomendação com PythonConstruindo Sistemas de Recomendação com Python
Construindo Sistemas de Recomendação com Python
Marcel Caraciolo
 
Python, A pílula Azul da programação
Python, A pílula Azul da programaçãoPython, A pílula Azul da programação
Python, A pílula Azul da programação
Marcel Caraciolo
 
Construindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduceConstruindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduce
Marcel Caraciolo
 
Como Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no BrasilComo Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no Brasil
Marcel Caraciolo
 
Novas Tendências para a Educação a Distância: Como reinventar a educação ?
Novas Tendências para a Educação a Distância: Como reinventar a educação ?Novas Tendências para a Educação a Distância: Como reinventar a educação ?
Novas Tendências para a Educação a Distância: Como reinventar a educação ?
Marcel Caraciolo
 
Aula WebCrawlers com Regex - PyCursos
Aula WebCrawlers com Regex - PyCursosAula WebCrawlers com Regex - PyCursos
Aula WebCrawlers com Regex - PyCursos
Marcel Caraciolo
 

Mais de Marcel Caraciolo (20)

Como interpretar seu próprio genoma com Python
Como interpretar seu próprio genoma com PythonComo interpretar seu próprio genoma com Python
Como interpretar seu próprio genoma com Python
 
Joblib: Lightweight pipelining for parallel jobs (v2)
Joblib:  Lightweight pipelining for parallel jobs (v2)Joblib:  Lightweight pipelining for parallel jobs (v2)
Joblib: Lightweight pipelining for parallel jobs (v2)
 
Construindo softwares de bioinformática para análises clínicas : Desafios e...
Construindo softwares  de bioinformática  para análises clínicas : Desafios e...Construindo softwares  de bioinformática  para análises clínicas : Desafios e...
Construindo softwares de bioinformática para análises clínicas : Desafios e...
 
Como Python ajudou a automatizar o nosso laboratório v.2
Como Python ajudou a automatizar o nosso laboratório v.2Como Python ajudou a automatizar o nosso laboratório v.2
Como Python ajudou a automatizar o nosso laboratório v.2
 
Como Python pode ajudar na automação do seu laboratório
Como Python pode ajudar na automação do  seu laboratórioComo Python pode ajudar na automação do  seu laboratório
Como Python pode ajudar na automação do seu laboratório
 
Python on Science ? Yes, We can.
Python on Science ?   Yes, We can.Python on Science ?   Yes, We can.
Python on Science ? Yes, We can.
 
Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3
 
Recommender Systems with Ruby (adding machine learning, statistics, etc)
Recommender Systems with Ruby (adding machine learning, statistics, etc)Recommender Systems with Ruby (adding machine learning, statistics, etc)
Recommender Systems with Ruby (adding machine learning, statistics, etc)
 
Opensource - Como começar e dá dinheiro ?
Opensource - Como começar e dá dinheiro ?Opensource - Como começar e dá dinheiro ?
Opensource - Como começar e dá dinheiro ?
 
Big Data com Python
Big Data com PythonBig Data com Python
Big Data com Python
 
Benchy, python framework for performance benchmarking of Python Scripts
Benchy, python framework for performance benchmarking  of Python ScriptsBenchy, python framework for performance benchmarking  of Python Scripts
Benchy, python framework for performance benchmarking of Python Scripts
 
Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?
 
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
GeoMapper, Python Script for Visualizing Data on Social Networks with Geo-loc...
 
Benchy: Lightweight framework for Performance Benchmarks
Benchy: Lightweight framework for Performance Benchmarks Benchy: Lightweight framework for Performance Benchmarks
Benchy: Lightweight framework for Performance Benchmarks
 
Construindo Sistemas de Recomendação com Python
Construindo Sistemas de Recomendação com PythonConstruindo Sistemas de Recomendação com Python
Construindo Sistemas de Recomendação com Python
 
Python, A pílula Azul da programação
Python, A pílula Azul da programaçãoPython, A pílula Azul da programação
Python, A pílula Azul da programação
 
Construindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduceConstruindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduce
 
Como Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no BrasilComo Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no Brasil
 
Novas Tendências para a Educação a Distância: Como reinventar a educação ?
Novas Tendências para a Educação a Distância: Como reinventar a educação ?Novas Tendências para a Educação a Distância: Como reinventar a educação ?
Novas Tendências para a Educação a Distância: Como reinventar a educação ?
 
Aula WebCrawlers com Regex - PyCursos
Aula WebCrawlers com Regex - PyCursosAula WebCrawlers com Regex - PyCursos
Aula WebCrawlers com Regex - PyCursos
 

Sistemas de Recomendação e Inteligência Coletiva

  • 1. Sistemas de Recomendação Personalizando sua experiência de compra Marcel Pinheiro Caraciolo marcel@orygens.com / marcel@recday.com / marcel@muricoca.com @marcelcaraciolo
  • 2. Quem é Marcel ? Marcel Pinheiro Caraciolo - @marcelcaraciolo Sergipano, porém Recifense. Mestrando em Ciência da Computação no CIN/UFPE na área de mineração de dados Diretor de Pesquisa e Desenvolvimento na Orygens Membro e Moderador da Celúla de Usuários Python de Pernambuco (PUG-PE) Minhas áreas de interesse: Computação móvel e Computação inteligente Meus blogs: http://www.mobideia.com (sobre Mobilidade desde 2006) http://aimotion.blogspot.com (sobre I.A. desde 2009) Jovem Aprendiz ainda nas artes pythonicas.... (desde 2007)
  • 3. WEB
  • 4. WEB
  • 5. 1.0 2.0 Fonte de Informação Fluxo Contínuo de Informação VI Encontro do PUG-PE VI Encontro do PUG-PE
  • 6. WEB SITES WEB APPLICATIONS WEB SERVICES 3.0 SEMANTIC WEB USERS VI Encontro do PUG-PE VI Encontro do PUG-PE
  • 7. Usar informação coletiva de forma efetiva afim de aprimorar uma aplicação
  • 8. Intelligence from Mining Data User User User User User Um usuário influencia outros por resenhas, notas, recomendações e blogs Um usuário é influenciado por outros por resenhas, notas, recomendações e blogs
  • 9. aggregation information: lists ratings user-generated content reviews blogs recommendations wikis Collective Intelligence voting Your application bookmarking Search tag cloud tagging saving Natural Language Processing Clustering and Harness external content predictive models
  • 10. WEB SITES WEB APPLICATIONS WEB SERVICES 3.0 SEMANTIC WEB USERS antes... VI Encontro do PUG-PE VI Encontro do PUG-PE
  • 12. estamos sobrecarregados de informações
  • 18. eeeeuuuu... google? midias sociais?
  • 20. “A lot of times, people don’t know what they want until you show it to them.” Steve Jobs “We are leaving the Information age, and entering into the Recommendation age.” Chris Anderson, from book Long Tail
  • 21. Recomendações Sociais Família/Amigos Amigos/ Família O Que eu deveria ler ? Ref: Flickr-BlueAlgae “Eu acho que você deveria ler Ref: Flickr photostream: jefield estes livros.
  • 22. Recomendações por Interação Entrada: Avalie alguns livros O Que eu deveria ler ? Saída: “Livros que você pode gostar são …”
  • 23. Sistemas desenhados para sugerir algo para mim do meu interesse!
  • 25. Netflix - 2/3 dos filmes alugados vêm de recomendação Google News - 38% das notícias mais clicadas vêm de recomendação Amazon - 38% das vendas vêm de recomendação Fonte: Celma & Lamere, ISMIR 2007
  • 26. !"#$%"#&'"%(&$)") Nós+,&-.$/).#&0#/"1.#$%234(".# * estamos sobrecarregados de informação $/)#5(&6 7&.2.#"$4,#)$8 * 93((3&/.#&0#:&'3".;#5&&<.# $/)#:-.34#2%$4<.#&/(3/" Milhares de artigos e posts * =/#>$/&3;#?#@A#+B#4,$//"(.;# novos todos os dias 2,&-.$/).#&0#7%&6%$:.# "$4,#)$8 * =/#C"1#D&%<;#."'"%$(# Milhões de Músicas, Filmes e 2,&-.$/).#&0#$)#:"..$6".# Livros ."/2#2&#-.#7"%#)$8 Milhares de Ofertas e Promoções
  • 27. O que pode ser recomendado ? Contatos em Redes Sociais Artigos Produtos Messagens de Propaganda Cursos e-learning Livros Tags Músicas Futuras namoradas Roupas Filmes Restaurantes Programas de Tv Vídeos Papers Opções de Investimento Profissionais Módulos de código
  • 28. E como funciona a recomendação ?
  • 29. O que os sistemas de recomendação realmente fazem ? 1. Prediz o quanto você pode gostar de um certo produto ou serviço 2. Sugere um lista de N items ordenada de acordo com seu interese 3. Sugere uma lista de N usuários ordernada para um produto/serviço 4. Explica a você o porque esses items foram recomendados 5. Ajusta a predição e a recomendação baseado em seu feedback e de outros.
  • 30. Filtragem baseada por Conteúdo Similar Duro de O Vento Toy Armagedon Items Matar Levou Store recomenda gosta Marcel Usuários
  • 31. Problemas com filtragem por conteúdo 1. Análise dos dados Restrita - Items e usuários pouco detalhados. Pior em áudio ou imagens 2. Dados Especializados - Uma pessoa que não tem experiência com Sushi não recebe o melhor restaurante de Sushi da cidade 3. Efeito Portfólio - Só porque eu vi 1 filme da Xuxa quando criança, tem que me recomendar todos dela
  • 32. Filtragem Colaborativa O Vento Toy Thor Armagedon Items Levou Store gosta recomenda Marcel Rafael Amanda Usuários Similar
  • 33. Problemas com filtragem colaborativa 1. Escabilidade - Amazon com 5M usuários, 50K items, 1.4B avaliações 2. Dados esparsos - Novos usuários e items que não tem histórico 3. Partida Fria - Só avaliei apenas um único livro no Amazon! 4. Popularidade - Todo mundo lê ‘Harry Potter’ 5. Hacking - A pessoa que lê ‘Harry Potter’ lê Kama Sutra
  • 34. Filtragem Híbrida Combinação de múltiplos métodos Duro de O Vento Toy Armagedon Items Matar Levou Store Ontologias Dados Símbolicos Marcel Rafael Luciana Usuários
  • 35. Como eles são apresentados ? Destaques Mais sobre este artista... Alguem similar a você também gostou disso O mais popular em seu grupo... Já que você escutou esta, você pode querer esta... Lançamentos Escute músicas de artistas similares. Estes dois item vêm juntos..
  • 36. Como eles são avaliados ? Como sabemos se a recomendação é boa ? Geralmente se divide-se em treinamento/teste (80/20) Críterios utilizados: - Erro de Predição: RMSE - Curva ROC*, rank-utility, F-Measure *http://code.google.com/p/pyplotmining/
  • 38. Crab A Python Framework for Building Recommendation Engines Marcel Caraciolo Ricardo Caspirro Bruno Melo @marcelcaraciolo @ricardocaspirro @brunomelo
  • 39. What is Crab ? A python framework for building recommendation engines A Scikit module for collaborative, content and hybrid filtering Mahout Alternative for Python Developers :D Open-Source under the BSD license https://github.com/muricoca/crab
  • 40. The current Crab Collaborative Filtering algorithms User-Based, Item-Based and Slope One Evaluation of the Recommender Algorithms Precision, Recall, F1-Score, RMSE Precision-Recall Charts
  • 41. Why migrate ? Old Crab running only using Pure Python Recommendations demand heavy maths calculations and lots of processing Compatible with Numpy and Scipy libraries High Standard and popular scientific libraries optimized for scientific calculations in Python Scikits projects are amazing! Active Communities, Scientific Conferences and updated projects (e.g. scikit-learn) Turn the Crab framework visible for the community Join the scientific researchers and machine learning developers around the Globe coding with Python to help us in this project Be Fast and Furious
  • 42. How are we working ? Sprints, Online Discussions and Issues https://github.com/muricoca/crab/wiki/UpcomingEvents
  • 43. Future Releases Planned Release 0.1 Collaborative Filtering Algorithms working, sample datasets to load and test Planned Release 0.11 Evaluation of Recommendation Algorithms and Database Models support Planned Release 0.12 Recommendation as Services with REST APIs ....
  • 44. Join us! 1. Read our Wiki Page https://github.com/muricoca/crab/wiki/Developer-Resources 2. Check out our current sprints and open issues https://github.com/muricoca/crab/issues 3. Forks, Pull Requests mandatory 4. Join us at irc.freenode.net #muricoca or at our discussion list in work :(
  • 46.
  • 47.
  • 48. Dicas
  • 49. Items Recomendados Toby Segaran, Programming Collective SatnamAlag, Collective Intelligence in Intelligence, O'Reilly, 2007 Action, Manning Publications, 2009 Sites como TechCrunch e ReadWriteWeb
  • 50. Conferências Recomendadas - ACM RecSys. –ICWSM: Weblogand Social Media –WebKDD: Web Knowledge Discovery and Data Mining –WWW: The original WWW conference –SIGIR: Information Retrieval –ACM KDD: Knowledge Discovery and Data Mining –ICML: Machine Learning
  • 51. Onde você estará em tudo isso ? Fonte: Hunch.com Obrigado !!
  • 52. Sistemas de Recomendação A experiência de compra personalizada Marcel Pinheiro Caraciolo marcel@orygens.com / marcel@recday.com / marcel@muricoca.com @marcelcaraciolo

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n