sistemas de recomendação e mobilidade

64
Sistemas de Recomendação Marcel Pinheiro Caraciolo [email protected] / [email protected]/[email protected] @marcelcaraciolo Thursday, September 22, 2011

Upload: marcel-caraciolo

Post on 17-Dec-2014

1.206 views

Category:

Technology


0 download

DESCRIPTION

Apresentação Realizada na Disciplina de Redes Neurais no CIN/UFPE em 22.09.2011

TRANSCRIPT

Page 1: Sistemas de Recomendação e Mobilidade

Sistemas de Recomendação

Marcel Pinheiro Caraciolo

[email protected] / [email protected]/[email protected]

@marcelcaraciolo

Thursday, September 22, 2011

Page 2: Sistemas de Recomendação e Mobilidade

Quem é Marcel ?

Marcel Pinheiro Caraciolo - @marcelcaraciolo

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)

Sergipano, porém Recifense.

Thursday, September 22, 2011

Page 3: Sistemas de Recomendação e Mobilidade

WEB

Thursday, September 22, 2011

Page 4: Sistemas de Recomendação e Mobilidade

WEBWEB

Thursday, September 22, 2011

Page 5: Sistemas de Recomendação e Mobilidade

VI Encontro do PUG-PEVI Encontro do PUG-PE

1.0 2.0

Fonte de Informação Fluxo Contínuo de Informação

Thursday, September 22, 2011

Page 6: Sistemas de Recomendação e Mobilidade

VI Encontro do PUG-PEVI Encontro do PUG-PE

3.0

USERS

WEB SITESWEB APPLICATIONS

WEB SERVICESSEMANTIC WEB

Thursday, September 22, 2011

Page 7: Sistemas de Recomendação e Mobilidade

Usar informação coletiva de forma efetiva afim de

aprimorar uma aplicação

Thursday, September 22, 2011

Page 8: Sistemas de Recomendação e Mobilidade

Intelligence from Mining Data

UserUserUserUserUser

Um usuário influencia outrospor resenhas, notas, recomendações e blogs

Um usuário é influenciado por outrospor resenhas, notas, recomendações e blogs

Thursday, September 22, 2011

Page 9: Sistemas de Recomendação e Mobilidade

Collective IntelligenceYour application

Search

aggregation information: lists

Clustering and predictive models

recommendationsreviews

voting

blogs

Natural Language Processing

ratings

saving

bookmarking

wikis

user-generated content

taggingtag cloud

Harness external content

Thursday, September 22, 2011

Page 10: Sistemas de Recomendação e Mobilidade

VI Encontro do PUG-PEVI Encontro do PUG-PE

3.0

USERS

WEB SITESWEB APPLICATIONS

WEB SERVICESSEMANTIC WEB

antes...Friday, October 1, 2010Thursday, September 22, 2011

Page 11: Sistemas de Recomendação e Mobilidade

!"#$%&'()$*+$,-$&.#'/0'&%)#)$1(,0#

Atualmente

Thursday, September 22, 2011

Page 12: Sistemas de Recomendação e Mobilidade

estamos sobrecarregados de informações

Friday, October 1, 2010

Thursday, September 22, 2011

Page 13: Sistemas de Recomendação e Mobilidade

muitas vezes inúteis

Friday, October 1, 2010Thursday, September 22, 2011

Page 14: Sistemas de Recomendação e Mobilidade

às vezes procuramos

isso...

Friday, October 1, 2010Thursday, September 22, 2011

Page 15: Sistemas de Recomendação e Mobilidade

e encontramos isso!

Friday, October 1, 2010Thursday, September 22, 2011

Page 16: Sistemas de Recomendação e Mobilidade

google?

Friday, October 1, 2010Thursday, September 22, 2011

Page 17: Sistemas de Recomendação e Mobilidade

google?

midias sociais?

Friday, October 1, 2010Thursday, September 22, 2011

Page 18: Sistemas de Recomendação e Mobilidade

google?

midias sociais?

eeeeuuuu...

Friday, October 1, 2010Thursday, September 22, 2011

Page 19: Sistemas de Recomendação e Mobilidade

Sistemas de Recomendação Friday, October 1, 2010

Sistemas de RecomendaçãoThursday, September 22, 2011

Page 20: Sistemas de Recomendação e Mobilidade

“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

Thursday, September 22, 2011

Page 21: Sistemas de Recomendação e Mobilidade

Recomendações Sociais

“Eu acho que

você deveria ler

estes livros.

Amigos/ Família O Que eu

deveria ler ?

Ref: Flickr photostream: jefield

Ref: Flickr-BlueAlgae

Família/Amigos

Thursday, September 22, 2011

Page 22: Sistemas de Recomendação e Mobilidade

Recomendações por Interação

“Livros que você

pode gostar

são …”

Saída:

Entrada:

O Que eu

deveria ler ?

Avalie alguns livros

Thursday, September 22, 2011

Page 23: Sistemas de Recomendação e Mobilidade

Sistemas desenhados para sugerir algo para mim do meu interesse!

Thursday, September 22, 2011

Page 24: Sistemas de Recomendação e Mobilidade

Por que Recomendação ?

Thursday, September 22, 2011

Page 25: Sistemas de Recomendação e Mobilidade

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

Thursday, September 22, 2011

Page 26: Sistemas de Recomendação e Mobilidade

Nós estamos sobrecarregados de informação

!"#$%"#&'"%(&$)")

* +,&-.$/).#&0#/"1.#$%234(".#

$/)#5(&6 7&.2.#"$4,#)$8

* 93((3&/.#&0#:&'3".;#5&&<.#

$/)#:-.34#2%$4<.#&/(3/"

* =/#>$/&3;#?#@A#+B#4,$//"(.;#

2,&-.$/).#&0#7%&6%$:.#

"$4,#)$8

* =/#C"1#D&%<;#."'"%$(#

2,&-.$/).#&0#$)#:"..$6".#

."/2#2&#-.#7"%#)$8

Milhares de artigos e posts novos todos os dias

Milhões de Músicas, Filmes e Livros

Milhares de Ofertas e Promoções

Thursday, September 22, 2011

Page 27: Sistemas de Recomendação e Mobilidade

O que pode ser recomendado ?

Messagens de Propaganda

Tags

Opções de Investimento

Restaurantes

Músicas

Filmes

Livros

Programas de Tv

Roupas

ProdutosArtigos

Futuras namoradas

Contatos em Redes Sociais

Cursos e-learning

VídeosProfissionais

Papers

Módulos de código

Thursday, September 22, 2011

Page 28: Sistemas de Recomendação e Mobilidade

E como funciona a recomendação ?

Thursday, September 22, 2011

Page 29: Sistemas de Recomendação e Mobilidade

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.

Thursday, September 22, 2011

Page 30: Sistemas de Recomendação e Mobilidade

Filtragem baseada por Conteúdo

O Vento Levou

Duro de Matar

Similar

Armagedon ToyStore

Marcel

gostarecomenda

Items

Usuários

Thursday, September 22, 2011

Page 31: Sistemas de Recomendação e Mobilidade

Problemas com filtragem por conteúdo

1. Análise dos dados Restrita

3. Efeito Portfólio

- Items e usuários pouco detalhados. Pior em áudio ou imagens

- Uma pessoa que não tem experiência com Sushi não recebe o melhor restaurante de Sushi da cidade

- Só porque eu vi 1 filme da Xuxa quando criança, tem que me recomendar todos dela

2. Dados Especializados

Thursday, September 22, 2011

Page 32: Sistemas de Recomendação e Mobilidade

Filtragem Colaborativa

O Vento Levou

Thor

Similar

Armagedon ToyStore

Marcel

gosta recomenda

Items

Rafael Amanda Usuários

Thursday, September 22, 2011

Page 33: Sistemas de Recomendação e Mobilidade

Problemas com filtragem colaborativa

1. Escabilidade

2. Dados esparsos

3. Partida Fria

4. Popularidade

- Amazon com 5M usuários, 50K items, 1.4B avaliações

- Novos usuários e items que não tem histórico

- Só avaliei apenas um único livro no Amazon!

- A pessoa que lê ‘Harry Potter’ lê Kama Sutra5. Hacking

- Todo mundo lê ‘Harry Potter’

Thursday, September 22, 2011

Page 34: Sistemas de Recomendação e Mobilidade

Filtragem Híbrida

Marcel Rafael Luciana

O Vento Levou

Duro de Matar Armagedon Toy

StoreItems

Usuários

OntologiasDados

Símbolicos

Combinação de múltiplos métodos

Thursday, September 22, 2011

Page 35: Sistemas de Recomendação e Mobilidade

Como eles são apresentados ?

Destaques Mais sobre este artista...

Escute músicas de artistas similares...

Alguem similar a você também gostou disso

Já que você escutou esta, você pode querer esta...

Estes dois item vêm juntos..

O mais popular em seu grupo...

Lançamentos

Thursday, September 22, 2011

Page 36: Sistemas de Recomendação e Mobilidade

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/

Thursday, September 22, 2011

Page 37: Sistemas de Recomendação e Mobilidade

Mobile Recommenders

Thursday, September 22, 2011

Page 38: Sistemas de Recomendação e Mobilidade

Por que mobile ?

Mais de 5 bilhões de apps baixadas

http://vimeo.com/29323612

Mais de 1 bilhão de Aparelhos

Destaque no segmento mobilehttp://foursquare.com

Thursday, September 22, 2011

Page 39: Sistemas de Recomendação e Mobilidade

Sistemas de Recomendação Móvel

Deve-se levar em conta informações temporais e espaciais

Como definir que contexto ele está inserido ?

E as avaliações como ser capturadas em uma tela limitada?

Thursday, September 22, 2011

Page 40: Sistemas de Recomendação e Mobilidade

Arquitetura

Recomendações processadas via Mobile (Inviável Hoje)

- Tudo é processado em Back-End (Servidor) e enviado ao celular via Web

repackage the heterogeneous data and service, and republic them as web service. The successful design of this module is the key problem for realization of cross-platform service and data sharing.

The functional layer has three components as Multi-Mode Location Information Index, Context-based Collaborative Filtering Algorithm, and Location-based Personalized Recommendation and Navigation. We will discuss every function component in details as follows.

Fig 1. Architecture of the Mobile Information Pushing System !!

3 Location-based Data and Service Middleware based on SOA

Service-Oriented Architecture! "SOA is considered as the next generation of Web services infrastructure. Its central idea is to design software applications from the perspective of integrated services, and to consider how to reuse existing services#! SOA encourages the use of alternative technologies and methods (such as message mechanism). It prefers

service combination rather than the preparation of new code to the framework of the application.

After an appropriate design and development, the new application based on this kind of message mechanism can be simply by adjusting the original service model rather than be forced to carry out large-scale code development of new applications. Thus it can response quickly in according to the changing market conditions.

So in this system, we implement a special Data and Service Combination service similar with Middleware based on Service-Oriented Architecture. This method can solve the following two technical issues: multiple formats of data integration and conversion, as well as a combination of a wide range of services.

!!Despite the existing network information service platforms have already accumulated a lot of useful information, as the Public-Rating “Da Zhong Dian Ping” website (the famous and successful public facilities rating, comments and recommendation website, which has already millions of users) [12]. However, its text-based geographical information or static guiding map can not be used directly in the mobile location-based navigation. This is also very inconvenient for users, especially who is not familiar with the visiting area. In order to solve this problem, we analyze a scenario as restaurant query based current location, and propose the possible query process.

Let us place typical query information as an example. Users want to know the restaurants’ location and introduction data within 500 meters from its current location. For the query, users first through the mobile terminal to obtain a coordinate information, According to the coordinates information and then calculate the distance of their current location within 500 meters of the regional information (for example, all the street names in the target area). From the existing network information service platform, it will search all matching restaurant with the same street information.

According to personal preferences, the user continues to review the feedback restaurant list, and select the places he wishes to go. Based on this new query, the system should obtain the coordinate information of the selected restaurant and visualize the corresponding navigation information through the mobile navigation software.

In Figure 2, we abstract the above scenario for the query process of a portfolio of services. The whole scene is composed by a number of Service Components. According to every Service

Location-based DB Traffic-info E-Map

Value-added DB Comments Tags Ratings …..….

Location-based Services GPS Navigation Location-based info Booking

Entity-query

Value-added Services in Web 2.0 User Tagging Information Publish Recommendation ……...

Mobile Information Pushing Platform

Location-based Data and Service Middleware

Context-based Collaborative Filtering

Multi-Mode Location Information Index

Location-based personalized recommendation and Navigation

WSEAS TRANSACTIONS on COMPUTERS Fan Yang, Zhi-Mei Wang

ISSN: 1109-2750 727 Issue 4, Volume 8, April 2009

involved in more platforms and components, including the Internet, GIS, positioning equipment and telecommunications technology and so on.

From the data perspective, LBS needs to obtain data from different sources, such as remote sensors, positioning systems, electronic maps, traffic and transportation databases and so on.

Therefore, from the system architecture perspective, LBS has a strong heterogeneity. At the same time, the user's location is constantly changing. Thus, the data-processing capability in the server side LBS services on the system server-side has brought new challenges [4-6].

For this new type of location-based information retrieval approach, users want to be able to obtain more real-time and targeted content services, not just the indexed information based simply on a static database[7-8]. Recently, the rise of a large number of Web2.0 applications (blog, community forums, Web Albums, Blog and Taggings, etc.) indicates that users have the very pressing requirements of direct, rapid, useful and personalized information recommendation and sharing services [9-13].

If the information can be user-friendly visualized in the client mobile terminals, It should doubtless be a very important research topic, and will have a very wide market prospect.

This paper designs and realizes a location-based mobile restaurant recommendation and navigation system. In order to improve server-side response speed for real-time query, we propose a memory pool model, the expansion Accept command, no-data client polling and interrupt mechanism, which aims to greatly optimize the server-side control procedures. On the client side, we combine the latest Web2.0 application data with the location-based data, and propose a collaborative assessment and recommend mechanisms, which can provide users with real-time location-based restaurant and recommend personalized navigation.

Users can also manually provide personalized tagging and recommendation to build their own social networks, which can help them to consider other similar community users!collaborative

comemnts and obtain more presice content pushing service.

Section 2 presents a simple description of the system's overall architecture and component. The server-side operating mechanism, working threads, listening thread mechanism and optimize the statement is discussed in Section 3. And in section4 you can find the introduction of the functional in the client side considering the users commend and recommend mechanisms . A case study is carried out in Section 5. Finaly, the conclusion of this paper and future work overview are discussed in Section 6. 2 System Workflow and Architecture Figure 1 gives the workflow of our system. Users can send their inquiries demand by operating in the mobile phone. And the client will get the current location information and sent it together with users’ inqueries demand to the server. Server-side application will analyze the relevant data and provide matched restaurant recommendation and navigation.

Application data information of our system can be divided into two parts: the location-based data (such as traffic and road condition data, GPS map, and entity information, etc.) and the value-added data provided by users (such as Ratings, Comments, Blog and Tags, etc.).

Fig.1. System Workflow

Clien

Client

User

Server

Prescribed Location-based Info.

Matched Entity & Route Info.

Personalized Location-based Restaurant Recommendation & Navigation Services

Location-based DBGPS-info E-MapEntity-info ……...

Restaurant Query

Users‘ Collaborative Recommendation & Entity Feature Info.

Value-added DB Comments Tags Ratings …..….

WSEAS TRANSACTIONS on INFORMATION SCIENCE and APPLICATIONS Zhi-Mei Wang, Fan Yang

ISSN: 1790-0832 810 Issue 5, Volume 6, May 2009

Thursday, September 22, 2011

Page 41: Sistemas de Recomendação e Mobilidade

Informações Disponíveis

Localização, Tags, Contexto

Thursday, September 22, 2011

Page 42: Sistemas de Recomendação e Mobilidade

Informações Disponíveis

Avaliação Implícita

Thursday, September 22, 2011

Page 43: Sistemas de Recomendação e Mobilidade

Um dos mais populares sistemas de localização móvel

Checkins, diga aonde você está!

Recomendações de lugares

Thursday, September 22, 2011

Page 44: Sistemas de Recomendação e Mobilidade

Assistente Virtual Móvel Conversacional

Já se utiliza de informações das redes Sociais

Recomendação de Restaurantes

Thursday, September 22, 2011

Page 45: Sistemas de Recomendação e Mobilidade

Google HotPot

Repositório de Reviews

Recomendação de Lugares

Thursday, September 22, 2011

Page 46: Sistemas de Recomendação e Mobilidade

Minhas contribuições

Thursday, September 22, 2011

Page 47: Sistemas de Recomendação e Mobilidade

Offering Products and Services Using ProductReviews from Social Networks in Mobile Decision

Aid SystemsMarcel Caraciolo! and Germano Vasconcelos†

Informatics CenterFederal University Of PernambucoWebSite: http://www.cin.ufpe.br/Email: [email protected]

[email protected]

Abstract—Recommendation engines provide information fil-tering functions and decision aids that have a great potentialapplication the mobile context. An aspect that hasn’t beenextensively exploited yet in the current recommendations isthe improvement in the explanation of the recommendation.For instance, exploiting the service and product descriptionand the opinion of users about the recommended products,where associated would bring a better explanation for the user.In this paper we will present the foundations for a mobileproduct/service recommender system which incorporate bothstructured (supplier driven) product descriptions and subjectproduct information, extracted from user reviews. We believethat this type of recommendation system could be extremelyuseful in the mobile context, where people must take decisionsin a rather short of time, with a limited availability of productinformation as also with limited device capabilities. Our researchfocus on the exploration of methodologies and data miningtechniques for improving the user acceptance of product/servicerecommendations and how explain these recommendations inthe mobile context. To achieve this task, we have proposed anew approach where both product/service descriptions and userreviews are incorporated in the recommendation process. Wethink this approach, exploiting the hidden knowledge insidethe reviews and descriptions, when associated, will bring tothe user more confidence on the recommendation and a betterunderstanding of the product. The products considered by thismobile recommender system are restaurants and retail stores.

I. INTRODUCTION

Recently, the rise of a large number of Web 2.0 applica-tions (blog, community forums, Web Albums, etc.) points outthat the users have the very pressing requirements of direct,rapid, useful and personalized information recommendationand sharing services [1], [2]. When it comes to choose aproduct to purchase, many consumers look for different waysto obtain more precise information for measuring the qualityof these products and services such as electronics, restaurants,merchants, etc. Current approaches supporting consumers intheir buying decision are, amongst others, provided throughweb-based product recommendation systems [3], [4]. Theyprovide personal reviews submited by another users, supportedby rating and their experience by comments as continuous text.The online reviews are not new in the web scenario and are

extremely used by users to give a more nuanced view abouta product in order to make an informed decision [5].Nonetheless, providing users with relevant recommenda-

tion information it is a difficult task. Besides the technicalcomponents such as the user model representation and infor-mation filtering techniques to generate the recommendations,the information must be user-friendly visualized. This is arequirement specially to support the user in the purchasedecision process, and to convince him about the utility of thegiven recommendation.In the mobile context this can be considered as a challenging

task. The product recommendation systems in the Internet donot meet the needs of customers in physical stores and conse-quently they do not meet the needs of mobile users. Severalreasons point out the limitation in the interaction of those typeof systems: data exchange costs, enviromental disturbances(light, noise, etc.), even parallel activities (driving, travelling,etc.) [6]. There are also the device restrictions, such as , smallcomputation capabilities and limited small displays. Whetherthis information can be user-friendly visualized in the clientmobile terminals, it should doubtlesss be a very importanttopic research.This work presents our research focused on methodologies

and techniques for exploiting the user acceptance of productrecommendations and for explaining these recommendationsin the mobile context. To achieve this task, we shall presenta new approach where the product description and user re-views are incorporated. We believe this approach, reveallingthe hidden knowledge inside the reviews, will bring moreconfidence to the user on the recommendations and a betterproduct understanding. The products considered by this mobilerecommender system are hotels and restaurants.The main contributtion of our work is the incorporation

of reviews from Web 2.0 applications (Taggings, comments,rating etc.) in a structured way into the recommendationprocess. We believe that reviews as great source of recom-mendation information, in which can improve the productinformation, the product experience and influence the userbuying decision [8]. To exploit this kind of information, we

Meu trabalho de Mestrado

Thursday, September 22, 2011

Page 48: Sistemas de Recomendação e Mobilidade

How reviews from web services sources can be aggregated in the mobile recommendation process?

source, the recommendation architecture that we propose willaggregate the results of such filtering techniques.We aim at integrating the previously mentioned hybrid prod-

uct recommendation approach in a mobile application so theusers could benefit from useful and logical recommendations.Moreover, we aim at providing a suited explanation for eachrecommendation to the user, since the current approaches justonly deliver product recommendations with a overall scorewithout pointing out the appropriateness of such recommen-dation [13]. Besides the basic information provided by thesuppliers, the system will deliver the explanation, providingrelevant reviews of similar users, we believe that it willincrease the confidence in the buying decision process and theproduct accepptance rate. In the mobile context this approachcould help the users in this process and showing the useropinions could contribute to achieve this task.

!"#$%&'%($)

!"*+#,$+'-)

!".,"/#)

!"*+#,$+'-)

0+($"($)1%#"2)

3,4$"',(5)

!"#$%&"'()*+,#&-,.)

/$%,0"12()*3$4%)3""5.)

0+44%6+'%$,.")1%#"2)

3,4$"',(5)

)))67,8,#%)+,4%$91$'%4)-1":))))

))))1,;&,<4)<1&%%,')=2)4&:&8$1))

)))))))))))%$4%,5)94,14>?)

7"$%)

!"8+99"(2"'))

!"8+99"(2%$,+(#)

Fig. 1. Meta Recommender Architecture

Since one of the goals of this work is to incorporatedifferent data sources of user opinions and descriptions, wehave addopted an meta recommendation architecture. By usinga meta recommender architecture, the system would providea personalized control over the generated recommendation listformed by the combination of rich data [16]. The influenceof the specific data sources could be explicitly controlled byevaluating the past user interaction with the recommender todecide how to balance the different knowledge sources. Forinstance, if the product or service to be recommended has arich structured description (e.g. restaurant) , then the systemtends to use more content-based filtering approach. Otherwise,if the product is poorly described (attributes), then the system

would rely more on collaborative-filtering techniques, that is,the reviews from similar users.Figure 1 shows a overview of our meta recommender

approach. By combining the content-based filtering and thecollaborative-based one into a hybrid recommender system, itwould use the services/products repositories which cataloguesthe services to be recommended, and the review repositorythat contains the user opinions about those services. All thisdata can be extracted from data source containers in the websuch as the location-based social network Foursquare [17] asdisplayed at the Figure 2 and the location recommendationengine from Google: Google HotPot [18].

Fig. 2. User Reviews from Foursquare Social Network

The content-based filtering approach will be used to filterthe product/service repository, while the collaborative basedapproach will derive the product review recommendations. Inaddition we will use text mining techniques to distinct thepolarity of the user review between positive or negative one.This information summarized would contribute in the productscore recommendation computation. The final product recom-mendation score is computed by integrating the result of bothrecommenders. By now, we are considering to use differentoptions regarding this integration approach, one at specialis the symbolic data analysis approach (SDA) [19], whicheach product description and user ratings/reviews are modeledas set of modal symbolic descriptions that summarizes theinformation provided by the corresponding data sources. It isa novel approach in hybrid recommender systems which,i nour domain, can encapsulate in entities the levels of influenceof both user reviews and product descriptions.

B. Symbolic Recommendation ApproachThe Symbolic Data Analysis (SDA) is a research field that

provides suitable tools to manage aggregated data detailedby multi-valued variables, where data table entries are sets

of categories, ordered list of categories, intervals or weighthistograms [19]. It is also provides approaches for informationfiltering algorithms such as Content-Based , Collaborative-Based and Hybrid Base ones. The main idea is to representthe user profile, in our domain the product to be recom-mended, through symbolic data structures and the user anditem correlations are computed through dissimilarity functionsadapted from the symbolic data analysis (SDA) domain. Theadvantage of using SDA based information-filtering methodsin the context of recommendations is that the user descriptionsynthetizes the entire body of information taken from the itemdescriptions belonging to the user profile. Therefore, itensare described by histogram-value symbolic data, so it can becompared through a dissimilarity function. By using the userreviews and the product descriptions modeled by histogram-value symbolic data, it would attend our requirements sinceour recommendations would be balanced by both structures.Bezerra and Carvalho proposed approaches where the resultsachieved showed to be very promising [19].

III. SYSTEM DESIGNApplication data information our mobile recommender sys-

tem can be divided into two parts: the product description(such as location, description and its attributes) and the userreviews or ratings provided by user (such as rating, comments,tags, etc.). The Figure 3 gives the system’s architecture andrelative components.

!"#$"%&'$

!(#$()&'*&%$+,-*.&$

/01&'234&$

5&-$

!6#$6,00&41&7$

8&4,99&0731*,0$:0;*0&$

<',7)41$

8&=,%*1,'>$

8&?*&@$

8&=,%*1,'>$

8&%).1%$

!<#$<'&2&'&04&%A$B,431*,0A$&14C$

!B#$B*%1$,2$D4,'&7$<',7)41%$

!8#$830E&7$<',7)41%$

!(#$()&'*&%$

Fig. 3. Mobile Recommender System Architecture

In our mobile product/service recommender, the user couldfilter some products or services and get a list of recommen-tations. The user also can enter his preferences or give hisfeedback to some offered product recommendation.Other functionalities are the retrieval of the next ve best

recommendations, the search for reviews satisfying somegiven constraints (text-length, date, review attitude) or thosecontaining some keywords. Let us place a typical use scenarioof this recommender by showing a restaurant query example.For instance, a user wants to know good restaurants for eating

a chinese food around his current location (the system alsocould integrate location-based services). Refining the querythe user also searches for places with highly positive reviews.According to the coordinate information and then calculate thedistance of their current location, the system would provide alist ranked by the highly positive reviews of restaurants joinedby summarized reviews written by the most similar users,that reviewed the restaurant services. According to personalpreferences, the user continues to review the recommendationrestaurant list, and select places he wishes to go. After gonethe places he selected, the user coult enter his feedback, inform of wishes or critiques, to the service recommendation.This information would be added to the reviews repository forthose places where it would be processed and summarized byour recommender, extracting useful information such as thepolarity and adding new keywords for the product featuresvector.

IV. METHODOLOGY AND EXPECTED RESULTSA. MethodologyOur research focuses on methodologies and techniques

for improving the user acceptance of product and servicesrecommendations and explaining these suggestions in themobile context. To achieve this, we have used a new approachwhere both product descriptions and user reviews are incor-porated into the mobile recommendation process. We believethis approach will bring to the user more condence on therecommendations and a better understanding of the productsspecially supporting him in the buying decision process. Toaccomplish this task, we will do a overview of the context inwhich mobile recommender systems are included and the mainresearch concerns about the topic. We wil also analyze and in-vestigate approaches for filtering algorithms, where could baseour design and implementation choices on previous failures orsucesses and reuse and adapt successful solutions. We will alsopropose our meta-recommender system by providing a detailedexplanation of our recommender architecture, implementation,main processes, and crucial features. Finally, to validate it,we will use standard measures of recommendation systemscomparing our suggestions to mobile users in a real datasetextracted from Web and discussing the results.

B. Expected ResultsWe believe that our product mobile recommender incorpo-

rating user reviews will increase the user trust in the recom-mended products, since he can read opinions, both positiveand negative from a group of similar users. Moreover, viewingother reviews, the user can feel more estimulated to share hisown experiences as also obtain recognition from other users.Reviews also provide a better product understanding sincethere will be more information for the user to decide if theproduct is (or is not) suitable for him. Finally, presenting alist of recommendations aside with explanations may provide’local Hidden knowledge’. Local hidden knowledge can bedescribed as knowledege that you gain only after purschasinga product or visiting a place. It can not be found using

Thursday, September 22, 2011

Page 49: Sistemas de Recomendação e Mobilidade

Sentiment Analysis for Extracting the Polarity

Text Mining A Lot!

Meta-Recommender Engines

Content-Based Filtering

kNN - Nearest Neighbors

Hybrid Meta Recommender

Symbolic Data Analysis (SDA)

Architectural Proposal for Mobile Recommender

Evaluation in Experimental DataSets

Thursday, September 22, 2011

Page 50: Sistemas de Recomendação e Mobilidade

CrabA Python Framework for Building

Recommendation Engines

Marcel Caraciolo@marcelcaraciolo

Bruno Melo@brunomelo

Ricardo Caspirro@ricardocaspirro

Thursday, September 22, 2011

Page 51: Sistemas de Recomendação e Mobilidade

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

Thursday, September 22, 2011

Page 52: Sistemas de Recomendação e Mobilidade

The current Crab

Collaborative Filtering algorithms

Evaluation of the Recommender Algorithms

User-Based, Item-Based and Slope One

Precision, Recall, F1-Score, RMSE

Precision-Recall Charts

Thursday, September 22, 2011

Page 53: Sistemas de Recomendação e Mobilidade

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

Thursday, September 22, 2011

Page 54: Sistemas de Recomendação e Mobilidade

How are we working ?

Sprints, Online Discussions and Issues

https://github.com/muricoca/crab/wiki/UpcomingEvents

Thursday, September 22, 2011

Page 55: Sistemas de Recomendação e Mobilidade

Future Releases

Planned Release 0.1Collaborative Filtering Algorithms working, sample datasets to load and test

Planned Release 0.11Evaluation of Recommendation Algorithms and Database Models support

Planned Release 0.12Recommendation as Services with REST APIs

....

Thursday, September 22, 2011

Page 56: Sistemas de Recomendação e Mobilidade

Join us!

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

2. Check out our current sprints and open issueshttps://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 :(

Thursday, September 22, 2011

Page 57: Sistemas de Recomendação e Mobilidade

RecDay: Recomendações diariamente!

Thursday, September 22, 2011

Page 58: Sistemas de Recomendação e Mobilidade

Thursday, September 22, 2011

Page 59: Sistemas de Recomendação e Mobilidade

Thursday, September 22, 2011

Page 60: Sistemas de Recomendação e Mobilidade

Dicas

Thursday, September 22, 2011

Page 61: Sistemas de Recomendação e Mobilidade

Items Recomendados

SatnamAlag, Collective Intelligence in Action, Manning Publications, 2009

Toby Segaran, Programming Collective Intelligence, O'Reilly, 2007

Sites como TechCrunch e ReadWriteWeb

Thursday, September 22, 2011

Page 62: Sistemas de Recomendação e Mobilidade

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

Thursday, September 22, 2011

Page 63: Sistemas de Recomendação e Mobilidade

Obrigado !!

Fonte: Hunch.com

Onde você estará em tudo isso ?

Thursday, September 22, 2011

Page 64: Sistemas de Recomendação e Mobilidade

Sistemas de Recomendação

Marcel Pinheiro Caraciolo

[email protected] / [email protected]/[email protected]

@marcelcaraciolo

Thursday, September 22, 2011