Towards a framework that allows using a cognitive architecture to personalize recommendations in e-commerce Jordi Sabater-Mir, Joan Cuadros and Pere Garcia.

Slides:



Advertisements
Similar presentations
Semantic Business Management November 5, 2009 Paul Haley Automata, Inc. (412)
Advertisements

Decision Support and Artificial Intelligence Jack G. Zheng July 11 th 2005 MIS Chapter 4.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Personalized Navigation in the Semantic Web: An Enhanced Faceted Browser Michal Tvarožek FIIT STU BA.
Customers Request the Darndest Things* 10 Challenges for VUI Designers Eduardo Olvera User Interface Designer.
Present by Oz Shapira.  User modeling ”is a sub-area of human–computer interaction, in which the researcher / designer develops cognitive models of human.
IPM Exam PreparationIPM Exam Preparation November 12 th pm – 5.15pm 2 hours & 15 minutes reading time.
SCENARIO Suppose the presenter wants the students to access a file Supply Credenti -als Grant Access Is it efficient? How can we make this negotiation.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Personalizing Search via Automated Analysis of Interests and Activities Jaime Teevan Susan T.Dumains Eric Horvitz MIT,CSAILMicrosoft Researcher Microsoft.
Recommender systems Ram Akella February 23, 2011 Lecture 6b, i290 & 280I University of California at Berkeley Silicon Valley Center/SC.
ReQuest (Validating Semantic Searches) Norman Piedade de Noronha 16 th July, 2004.
Objectives By the end of this class you should be able to… Explain the importance of involving users in requirements gathering Describe various types of.
© Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks1 7.1 User Centred Design (UCD) Software development should focus on the needs.
12 -1 Lecture 12 User Modeling Topics –Basics –Example User Model –Construction of User Models –Updating of User Models –Applications.
Semantic Web Technologies Lecture # 2 Faculty of Computer Science, IBA.
Identifying and Incorporating Latencies in Distributed Data Mining Algorithms Michael Sevilla.
An Intelligent Broker Architecture for Context-Aware Systems A PhD. Dissertation Proposal in Computer Science at the University of Maryland Baltimore County.
The 2nd International Conference of e-Learning and Distance Education, 21 to 23 February 2011, Riyadh, Saudi Arabia Prof. Dr. Torky Sultan Faculty of Computers.
Recommender Systems on the Web: A Model-Driven Approach Gonzalo Rojas – Francisco Domínguez – Stefano Salvatori Department of Computer Science University.
Intelligent Systems Over the Internet By Dr.S.Sridhar,Ph.D., RACI(Paris),RZFM(Germany),RMR(USA),RIEEEProc. web-site :
* SRA Division CoopIS- September Extending Multi-Agent Cooperation by Overhearing Floriano Zini SRA Division - ITC-irst, Povo (Trento) - Italy Joint.
1 DAN FARRAR SQL ANYWHERE ENGINEERING JUNE 7, 2010 SCHEMA-DRIVEN EXPERIMENT MANAGEMENT DECLARATIVE TESTING WITH “DEXTERITY”
INTELLIGENT SYSTEMS BUSINESS MOTIVATION BUSINESS INTELLIGENCE M. Gams.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
1 Data Mining Books: 1.Data Mining, 1996 Pieter Adriaans and Dolf Zantinge Addison-Wesley 2.Discovering Data Mining, 1997 From Concept to Implementation.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
Lecture 16 Page 1 CS 236 Online SQL Injection Attacks Many web servers have backing databases –Much of their information stored in a database Web pages.
Agent Model for Interaction with Semantic Web Services Ivo Mihailovic.
EEL 5937 What makes an agent? EEL 5937 Multi Agent Systems Lotzi Bölöni.
Implicit An Agent-Based Recommendation System for Web Search Presented by Shaun McQuaker Presentation based on paper Implicit:
School of Computer Science and Technology, Tianjin University
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
UOS 1 Ontology Based Personalized Search Zhang Tao The University of Seoul.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
 Is there a difference between working as a group and working as a team? Why or why not? What is the difference?
Presented By :Ayesha Khan. Content Introduction Everyday Examples of Collaborative Filtering Traditional Collaborative Filtering Socially Collaborative.
TOPIC CENTRIC QUERY ROUTING Research Methods (CS689) 11/21/00 By Anupam Khanal.
1 A Conceptual Framework of Data Mining Y.Y. Yao Department of Computer Science, University of Regina Regina, Sask., Canada S4S 0A2
Chapter 3 DECISION SUPPORT SYSTEMS CONCEPTS, METHODOLOGIES, AND TECHNOLOGIES: AN OVERVIEW Study sub-sections: , 3.12(p )
Chapter 8 Object Design Reuse and Patterns. Object Design Object design is the process of adding details to the requirements analysis and making implementation.
Individualized Knowledge Access David Karger Lynn Andrea Stein Mark Ackerman Ralph Swick.
Personalized Interaction With Semantic Information Portals Eric Schwarzkopf DFKI
R R R CSE870: Advanced Software Engineering: UML-- Use Cases1 Use Cases and Scenarios.
Chapter 4 Decision Support System & Artificial Intelligence.
Trustworthy Semantic Webs Dr. Bhavani Thuraisingham The University of Texas at Dallas Lecture #4 Vision for Semantic Web.
Geoinformatics 2006 University of Texas at El Paso Evaluating BDI Agents to Integrate Resources Over Cyberinfrastructure Leonardo Salayandía The University.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
Recommender Systems. Recommender Systems (RSs) n RSs are software tools providing suggestions for items to be of use to users, such as what items to buy,
Explainable Adaptive Assistants Deborah L. McGuinness, Tetherless World Constellation, RPI Alyssa Glass, Stanford University Michael Wolverton, SRI International.
User Modeling and Recommender Systems: Introduction to recommender systems Adolfo Ruiz Calleja 06/09/2014.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Explainable Adaptive Assistants Deborah L. McGuinness, Tetherless World Constellation, RPI Alyssa Glass, Stanford University Michael Wolverton, SRI International.
Information Design Trends Unit Five: Delivery Channels Lecture 2: Portals and Personalization Part 2.
Peter Brusilovsky. Index What is adaptive navigation support? History behind adaptive navigation support Adaptation technologies that provide adaptive.
Semantic Web COMS 6135 Class Presentation Jian Pan Department of Computer Science Columbia University Web Enhanced Information Management.
Adaptive Faceted Browsing in Job Offers Danielle H. Lee
Semantic Web in Context Broker Architecture Presented by Harry Chen, Tim Finin, Anupan Joshi At PerCom ‘04 Summarized by Sungchan Park
Lecture-6 Bscshelp.com. Todays Lecture  Which Kinds of Applications Are Targeted?  Business intelligence  Search engines.
Towards a framework for architectural design decision support
Automatic cLasification d
Information Retrieval and Web Search
Architecture Components
Information Retrieval and Web Search
SIS: A system for Personal Information Retrieval and Re-Use
ece 627 intelligent web: ontology and beyond
Teaching Java with the assistance of harvester and pedagogical agents
Agile testing for web API with Postman
Chapter 13 Intelligent Systems Over the Internet
Presentation transcript:

Towards a framework that allows using a cognitive architecture to personalize recommendations in e-commerce Jordi Sabater-Mir, Joan Cuadros and Pere Garcia IIIA – Artificial Intelligence Research Institute CSIC – Spanish National Research Council

Motivation A single recommender technique cannot be enough to cover all the real necessities of the dierent users that are looking for a recommendation. The solution to this problem: let's take a full palette of recommender techniques and, like a painter, use at run time the right color for each situation (properly fine tuned to recapture the nuances of the context).

Motivation What are we looking for is an automated decision maker that can decide: – which is the best recommendation technique (or techniques) to use, how to combine them, – how to adapt the results to the specic needs of a given user and – how to properly show the results to that user. Our proposal is to use a cognitive architecture as such a decision maker.

Motivation Take to the next level the notion of personalization in recommendation.

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files UI User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers User Interface Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter The framework

User Cognitive Profile Data analysis Pre-pocessing Text files UI User Profile Raw Data Statistical analysis Data Mining Processed Data Text files xml Agent speak Experts/Deducers User Interface Recommenders Set of Recommenders Domain Ontology General Knowledge Beliefs Desires User profile Plans library Plans library Intentions Cognitive architecture BDI-Engine Interpreter Knows about the user needs and his/her desires, goals, restrictions, beliefs, etc. Knows about the recommenders that are available, their strengths and weaknesses. Tries to stisfy the user needs. Advanced capabilities: justification and argumentation Knows about the user needs and his/her desires, goals, restrictions, beliefs, etc. Knows about the recommenders that are available, their strengths and weaknesses. Tries to stisfy the user needs. Advanced capabilities: justification and argumentation For certain tasks it is crucial that the behavior of the machine be similar to that of a human. Trust has to be build on top of the mutual understanding. To achieve this we think the most natural way is to use cognitive architectures. For certain tasks it is crucial that the behavior of the machine be similar to that of a human. Trust has to be build on top of the mutual understanding. To achieve this we think the most natural way is to use cognitive architectures. The framework

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files UI User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers User Interface Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter Cleaning, parsing, normalizing… raw data. Statistical measures to advanced data mining algorithms. Represent the information in terms of the cognitive architecture. Qualitative high level concepts -> This user is a very good client Represent the information in terms of the cognitive architecture. Qualitative high level concepts -> This user is a very good client The framework

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter UI User Interface The framework

User Cognitive Profile Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Text files xml Agent speak Experts/Deducers Recommenders Set of Recommenders Domain Ontology General Knowledge UI User Interface Beliefs Desires User profile Plans library Plans library Intentions Cognitive architecture BDI-Engine Interpreter The framework

Cognitive architecture Receive a notication from the user expressing the willingness to obtain a recommendation of a certain kind. Analyze if that request is coherent with what it knows about the user and decide what is the best action to perform. Query one or several recommenders that, given the knowledge the cognitive architecture has about them, can provide an answer that will satisfy the user's request. Adapt, combine, modify the recommendations received from the recommenders to personalize the nal answer to the user. Show the processed answer to the user in a personalized way. Basic functionality: It has to be able to…

Cognitive architecture Establish a dialog with the user. For example, if the request from the user is not coherent with what the cognitive architecture knows about him/her, establish a dialog with the user to express the problem and be able to adapt the internal knowledge based on what the user explicitly states during that dialog. Justify the recommendations. The justification has to be adapted to each kind of user. Some users prefer simple and short justications while others want all the details. Participate in an argumentation process with the user where both, the user and the cognitive architecture can express arguments and counterarguments to achieve a consensus about a recommendation. Incorporate automatically new recommenders to the palette of recommenders and be able to use them without external intervention. This ambitious capa bility requires the description of each recommender in terms of its strengths and weaknesses. Advanced functionality: …and also…

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers Domain Ontology General Knowledge BDI-Engine Interpreter UI User Interface Recommenders Set of Recommenders Static vs Dynamic The framework

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers User Interface Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter Python Java BDI-Engine: Jason Java BDI-Engine: Jason HTML 5, CSS3, javascript PhoneGap Jquery Mobile HTML 5, CSS3, javascript PhoneGap Jquery Mobile Java CF: Mahout Expert system: Drools Java CF: Mahout Expert system: Drools Web service RESTful Web service RESTful Proof of concept OWL

Scenario Mary always buys the same yogurts. She is a little bit tired of eating the same yogurt one day after another and today she wants to try something new. She goes to the supermarket and once in the dairy products aisle, takes the smartphone and scans the barcode of her favorite yogurt. She asks to the system for an alternative. The system processes her request and suggests an alternative that could satisfy her requirements.

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files UI User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers User Interface Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter Proof of concept Raw data and Pre-processing: Set of text files coming directly from points of sale terminals (POS) from the Alimerka supermarket chain. More than files coming from 176 supermarkets covering a period of 18 months. The files are grouped by supermarket (one file per supermarket per day) and contain purchases, promotions, coupons, loyalty points, etc. Actions: Clean data Select only relevant fields Organise purchases by client instead of by supermarket In our use-case we have restricted to 500 the number of clients and the time period to 12 months. Raw data and Pre-processing: Set of text files coming directly from points of sale terminals (POS) from the Alimerka supermarket chain. More than files coming from 176 supermarkets covering a period of 18 months. The files are grouped by supermarket (one file per supermarket per day) and contain purchases, promotions, coupons, loyalty points, etc. Actions: Clean data Select only relevant fields Organise purchases by client instead of by supermarket In our use-case we have restricted to 500 the number of clients and the time period to 12 months. Data processing: Prepare the user files for a recommender based on collaborative filtering. Because Mary is looking for an alternative to a product, in order to prepare the data for the recommender we have to use only those lines that refer to products that are in the same subtree in the ontology that the reference product. Our recommender will compare Mary with the other 499 users, will establish a similarity among them and will use what the most similar clients have bought that Mary has not as a recommendation. The process of filtering the client files has to be done at run time. Data processing: Prepare the user files for a recommender based on collaborative filtering. Because Mary is looking for an alternative to a product, in order to prepare the data for the recommender we have to use only those lines that refer to products that are in the same subtree in the ontology that the reference product. Our recommender will compare Mary with the other 499 users, will establish a similarity among them and will use what the most similar clients have bought that Mary has not as a recommendation. The process of filtering the client files has to be done at run time.

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers Recommenders Set of Recommenders Domain Ontology General Knowledge BDI-Engine Interpreter UI User Interface Proof of concept Technologies: Phonegap Jquery mobile Technologies: Phonegap Jquery mobile

(a) (b) (c)(d) a)Mary logs into the system b)Selects which kind of recommendation wants c)Scans the reference product bar code d)Receives the recommendation

User Cognitive Profile Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Text files xml Agent speak Experts/Deducers Recommenders Set of Recommenders Domain Ontology General Knowledge UI User Interface Beliefs Desires User profile Plans library Plans library Intentions Cognitive architecture BDI-Engine Interpreter Proof of concept

+get_alternative(ID, X) : true <- ask_collaborative_filtering(ID, X). get_alternative(id, productSel). Recommenders Set of Recommenders possible_rec(id, list_of_products). +possible_rec(ID, Y) : get_alternative(ID, X) <- -possible_rec(ID, Y); +rec(ID, Y). +rec(ID, [Head|Tail]) <- send_rec(Head).

Beliefs Desires User profile User Cognitive Profile Plans library Plans library Intentions Data analysis Pre-pocessing Text files User Profile Raw Data Statistical analysis Data Mining Processed Data Cognitive architecture Text files xml Agent speak Experts/Deducers Domain Ontology General Knowledge BDI-Engine Interpreter UI User Interface Recommenders Set of Recommenders Proof of concept A tipical collaborative filtering recommender. Mahout library. A tipical collaborative filtering recommender. Mahout library.

Thanks for your attention.