'THE IMPLEMENTATION OF KNOWLEDGE-BASED RECOMMENDER SYSTEM FOR ELECTRONIC COMMERCE USING JAVA EXPERT SYSTEM LIBRARY. In-Gook Chun, In-Sik Hong

Similar documents
Hybrid Recommender Systems for Electronic Commerce

A Time-based Recommender System using Implicit Feedback

amount of available information and the number of visitors to Web sites in recent years

A Constrained Spreading Activation Approach to Collaborative Filtering

Collaborative Filtering using a Spreading Activation Approach

Automatically Building Research Reading Lists

A Novel Method Providing Multimedia Contents According to Preference Clones in Mobile Environment*

Comparison of Recommender System Algorithms focusing on the New-Item and User-Bias Problem

Recommender Systems: Attack Types and Strategies

Survey on Collaborative Filtering Technique in Recommendation System

Evaluation of the Item-Based Top-$ $i$ $N$ $/i$ $ Recommendation Algorithms. Technical Report

Collaborative Filtering using Euclidean Distance in Recommendation Engine

Recommendation System with Location, Item and Location & Item Mechanisms

Proposing a New Metric for Collaborative Filtering

Semantic feedback for hybrid recommendations in Recommendz

Predicting user preference for movies using movie lens dataset

Part 11: Collaborative Filtering. Francesco Ricci

Michele Gorgoglione Politecnico di Bari Viale Japigia, Bari (Italy)

Cognizable Recommendation System using Spatial Ratings with Collaborative Filter Shilpa Mathapati 1, Bhuvaneswari Raju 2

Jess: A Production System Language Agent Based Virtual Worlds

Joining Collaborative and Content-based Filtering

Towards Time-Aware Semantic enriched Recommender Systems for movies

Slope One Predictors for Online Rating-Based Collaborative Filtering

Content-Based Recommendation for Web Personalization

Knowledge Discovery and Data Mining 1 (VO) ( )

A Recursive Prediction Algorithm for Collaborative Filtering Recommender Systems

WEB SEARCH, FILTERING, AND TEXT MINING: TECHNOLOGY FOR A NEW ERA OF INFORMATION ACCESS

2AIT503 - EXPERT SYSTEMS. Lecture 4: Representing Facts and Writing Rules. Dr Dimitris C. Dracopoulos

Robustness and Accuracy Tradeoffs for Recommender Systems Under Attack

International Journal of Advanced Research in. Computer Science and Engineering

Explaining Recommendations: Satisfaction vs. Promotion

Mobile Agent Routing for Query Retrieval Using Genetic Algorithm

Comparing State-of-the-Art Collaborative Filtering Systems

Property1 Property2. by Elvir Sabic. Recommender Systems Seminar Prof. Dr. Ulf Brefeld TU Darmstadt, WS 2013/14

Privacy-Preserving Collaborative Filtering using Randomized Perturbation Techniques

Visualizing Recommendation Flow on Social Network

Application of Dimensionality Reduction in Recommender System -- A Case Study

Comment-based Keyword Programming

SUGGEST. Top-N Recommendation Engine. Version 1.0. George Karypis

Biometric Device Assistant Tool: Intelligent Agent for Intrusion Detection at Biometric Device using JESS

A Constrained Spreading Activation Approach to Collaborative Filtering

Collaborative Filtering: A Comparison of Graph-Based Semi-Supervised Learning Methods and Memory-Based Methods

Extension Study on Item-Based P-Tree Collaborative Filtering Algorithm for Netflix Prize

A Survey on Various Techniques of Recommendation System in Web Mining

second_language research_teaching sla vivian_cook language_department idl

DynamicLens: A Dynamic User-Interface for a Meta-Recommendation System

A PROPOSED HYBRID BOOK RECOMMENDER SYSTEM

The Design and Implementation of an Intelligent Online Recommender System

The Tourism Recommendation of Jingdezhen Based on Unifying User-based and Item-based Collaborative filtering

An Efficient Neighbor Searching Scheme of Distributed Collaborative Filtering on P2P Overlay Network 1

A Trust-Based Collaborative Filtering Algorithm Using a User Preference Clustering

Chapter 2 Review of Previous Work Related to Recommender Systems

Influence in Ratings-Based Recommender Systems: An Algorithm-Independent Approach

A Scalable, Accurate Hybrid Recommender System

arxiv: v1 [cs.ir] 22 Jul 2014

Tag-Based Contextual Collaborative Filtering

LECTURE 12. Web-Technology

Interest-based Recommendation in Digital Library

Tag-Based Contextual Collaborative Filtering

Performance Evaluation of Semantic Registries: OWLJessKB and instancestore

Keywords Data alignment, Data annotation, Web database, Search Result Record

RecDB: Towards DBMS Support for Online Recommender Systems

Recommender Systems by means of Information Retrieval

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA

From Clickstream to Research Stream

Web Page Recommender System based on Folksonomy Mining for ITNG 06 Submissions

Graph-based Analysis for E-commerce Recommendation

arxiv: v2 [cs.lg] 15 Nov 2011

Recommendation system Based On Cosine Similarity Algorithm

Probabilistic Abstraction Lattices: A Computationally Efficient Model for Conditional Probability Estimation

Use of KNN for the Netflix Prize Ted Hong, Dimitris Tsamis Stanford University

arxiv: v1 [cs.ir] 1 Jul 2016

Comparing Performance of Recommendation Techniques in the Blogsphere

The Design and Implementation of an Intelligent Online Recommender System

Preference Networks: Probabilistic Models for Recommendation Systems

Information Filtering SI650: Information Retrieval

Applying a linguistic operator for aggregating movie preferences

Two Collaborative Filtering Recommender Systems Based on Sparse Dictionary Coding

ebook Tablet Commerce: Ecommerce King in 2013

Semantically Enhanced Collaborative Filtering on the Web

Towards QoS Prediction for Web Services based on Adjusted Euclidean Distances

Combining Review Text Content and Reviewer-Item Rating Matrix to Predict Review Rating

SEO KEYWORD SELECTION

Finding Topic-centric Identified Experts based on Full Text Analysis

filtering LETTER An Improved Neighbor Selection Algorithm in Collaborative Taek-Hun KIM a), Student Member and Sung-Bong YANG b), Nonmember

CSC 261/461 Database Systems Lecture 7

Project Report. An Introduction to Collaborative Filtering

Recommender Systems - Content, Collaborative, Hybrid

CHAPTER 10 KNOWLEDGE TRANSFER IN THE E-WORLD

Multi-domain Predictive AI. Correlated Cross-Occurrence with Apache Mahout and GPUs

Part 11: Collaborative Filtering. Francesco Ricci

Subjective Relevance: Implications on Interface Design for Information Retrieval Systems

Exsys RuleBook Selector Tutorial. Copyright 2004 EXSYS Inc. All right reserved. Printed in the United States of America.

TecIdentify. User Documentation. User Guide for Barcode Checking

Content Bookmarking and Recommendation

Solving the Sparsity Problem in Recommender Systems Using Association Retrieval

Recap: Project and Practicum CS276B. Recommendation Systems. Plan for Today. Sample Applications. What do RSs achieve? Given a set of users and items

5/13/2009. Introduction. Introduction. Introduction. Introduction. Introduction

Tim Cohn TimWCohn

Overview. Data-mining. Commercial & Scientific Applications. Ongoing Research Activities. From Research to Technology Transfer

Transcription:

'THE MPLEMENTATON OF KNOWLEDGE-BASED RECOMMENDER SYSTEM FOR ELECTRONC COMMERCE USNG JAVA EXPERT SYSTEM LBRARY n-gook Chun, n-sik Hong Division of nformation Technology Engineering, SoonChunHyang University ABSTRACT This paper deals the design and implementation of product recommender system on a ntemet shopping mall. n e- commerce application, sometimes potential buyers may be interested in receiving recommendations about what to purchase. The mainstream of automated recommender system is collaborative filtering. Recently knowledgebased approach is proposed. n this paper, we present a knowledge-based product recommender system. The knowledge base of product domain and inference engine is implemented by JESS and Java servlet. The system gathers the user's requirements on a particular product by questioning the user and consulting its knowledge base to find the items that best meet the user's requirement. For the recommender system, the design of product knowledge base are discussed. As a sample implementation, cellular phone recommender system is built where the system tries to fmd a phone model that meets user's requirements best.. NTRODUCTON Recommender systems provide recommendations to potential buyers[8][ ][4]. Most widely used techniques are collaborative filtering. Collaborate filtering is a technique for recommendation items to a user based on similarities between the past behaviour of the user and that of likeminded peoples. t assumes that human preferences are correlated, thus if a 'group of lke-minded users likes it then a user may also like it. On the contrary, a knowledgebased recommender asks a user about the requirement of wanted products and reasons about what products meet the Asan-si, ChoongChungNam-do, 336-745, KOREA chunik@sch.ac.kr user's requirements based on the answers. t exbloits its knowledge base of the product domain[8]. Each technique has advantages and disaddantages. Collaborative filtering can make personalized recommendations and their prediction quality (mproves over time as the database of users' preference get larger and larger. n contrast, collaborahve filtermg needs substantial amount of users' preference database in order to make useful recommendations and if user's preferences change, then it may not recommend useful items because it exploits past data. Knowledge-based approach p s not need a initial database of users' preference. For some products llke cars, houses, computers, knowledge rbased is more appropriate by nature. For example, a user that want to buy a new car, may consider the car's severad features lke type, size, price more important than what c y others people buy. But n order to make good recommendations, it should have the product domain howledgel and the knowledge should be stored and organized in a inferable way. Thus it needs a knowledge engineer[9]. n this paper, a knowledge-based recommender system is designed and implemented using JESS(Jav4 Expert System Shell, a recent variant of CLPS that integrates Java object magpulation with rule-based infe!ence[3]. JESS functions as a inference engine, a task thatlincludes processing the products knowledge base, drawing conclusions, and preparing questions for the user in response to user mput. JESS supports both foryard and backward reasoning and has the full features of a programming language, thus providing flexidility for future development of the recommender system. n addition, if we use full-featured expert system shell, it separates the knowledge base from the progradming of the interface, communication, and inference portions of the system. Doing so allows the knowledge base to be ' This work is supported in part by the Ministry of nformation & Communication of Korea ("Support Project of University nformation Technology Research Center" supervised by KPA, t 0-7803-~09C-2/0/$0 00 @ 200 EEE 766 SE 200, Pusan, KOREA

.. extended and modified without requiring modifications to the underlying system. 2. ARCHTECTURE Our architecture consists of a user interface module, a inference engine, a knowledge base of the product domain, a customer database. The user interface module interacts with users. t asks a user about what features of the product they need and collects the answers from users. To the user, our recommender system appears as a guided interrogation supported by images that illustrate answer alternatives. Clieat Figure. The architecture of the recommender system A typical recommendation session involves answering about 0 questions, choosing from two to ten alternatives at each point. These user's response data are transferred to the JESS inference engine. The questions concern features of the products being recommended. Each alternatives is illustrated by an image. At the conclusion of the dialog, the recommender system presents the customer with a list of possible products based upon expert opinion. Each product in the final list is ranked with a score that indicates the degree that the product meets the customer's requirements. Customer's information is stored in a database. The database is accessed using the JDBC(Java DataBase Connection capability of the Java servlet. 3. THE STRUCTURE OF KNOWLEDGE BASE Web %" A product domain knowledge is stored as a form of facts and rules in a JESS knowledge base file. t is somewhat akin to a relational database, especially in that the facts must have a specific structure. As a sample implementation, the product knowledge about cellular phone models is implemented. The knowledge base describes a cellular phone model using a lot of binary and numeric features. The features of the phone model is implemented with the "template" and "slot" concept of JESS[3]. A template is like a class definition in objectoriented languages. n a template definition, many named fields are defined. The fields are traditionally called slots. n our implementation, the cellular phone model has the following template definition. (deftemplate phone (slot score (default 0 (type NTEGER (slot picture (slot model (slot service-company (slot manufacturer (slot price (type NTEGER (slot wap (default no (slot email (default no... Each phone model described in the knowledge base has a score slot whch registers a matching degree between the customer's requirements and the features of the phone model. f there is a match between the customer's preference and the features of the product, then the score is increased. Otherwise, the score is decreased. Color information of phone models are encoded a little differently in the knowledge base. Each color is given a color index number. f two colors are similar, then the index numbers of the two colors are also adjacent numbers. For example, white and gray are the similar colors, so they are given the similar numbers, maybe 0 and. On the contrary, white and black is considered as totally different colors, so they are given 0 and 5. So if we calculate the absolute value of the difference between customer's preferred color number and the particular product's color number, we can measure the color distance value. f the distance value is large, hgh penalty value is subtracted from the matching score. Using above template definition, the knowledge base for a particular phone model can be built by filling necessary slots. For example, if the model has the e-mail capability, the value of "email" slot is yes. f the price of the model is 2000 dollars, then the value of ''price" slot is 2000. One example for a particular model is as follows. (phone (model "LGC-EOF" (picture "0-LGC-EOF.gif' (service-company 0 767 SE 200, Pusan, KOREA

(color white (colornumber 0 (price 3000 (design round (manufacturer LG (ftype folder (pim yes (pclink yes (mybell yes (ear-mic yes (power-battery yes (auto-answering yes (recording yes The above fact tells that the phone's model name is 0- LGC-EOF, it's service company is 0, it's color is white and etc. Currently data of about 00 phone models are stored in our knowledge base file. n addition to the facts, a lot of rules are defined. The rule represents the knowledge of human expert selling cellular phones. An example is that generally younger generations like the round design than the box type. The above knowledge is represented as the following rules. defined as follows. (defrule first-query the age of customer is young AND the design of a phone model is round increase the score of the phone model. The above rule says that if the age of the customer is young, then the score of a round-designed phone models is increased.. The following is a JESS language representation of the above rule. (defrule check-design (customer (age young?a <- (phone (design round => (bind?news (+?s (modify?a (score?news 4. MPLEMENTATON The system employs a multimedia user interface that is accessible with standard web browsers. Our recommender system uses some components of the NH reptile indentification system[7]. Our recommender system is a cliendserver system, in which the client software supports the user interface and the geographically separated server software supports the expert system. The web server include a standard HTML compatible web server and a servlet engine. The web server handles communications with the client and accesses the images and the HTML documents as necessary. The servlet engine supports the expert system shell. The servlet has the user interface module which is called by JESS program. Firstly a first query screen is generated by JESS program with the help of Java object. All user inputs, which originate with the client software, are received by the web server and are handed in turn to the expert system shell running under the servlet engine. Output generated by the expert system is handed to the web server and then relayed via nternet to system. Figure 2. Query screen of the recommender system. -- 768 SE 200, Push KOREA

SE Next query screen is defined in the following rule representing a part of decision tree. The rule fires only if the fact about the service company is activated in the working memory. Later query screens proceed like this. (def%.de manufacturer-rule (service-company?type => (new QueryPanel "Select Prefered Manufacturer" 8 (create$ "Samsung" "samsung.gif "(manufacturer samsung" "LG" "g.gif' "(manufacturer LG" "Motorola" "mo.gif' "(manufacturer motorola" "Hyundai" "gul.gif' "(manufacturer hyundai" "Hanhwa" "wchan.gif' "(manufacturer hanhwa" "SK" "sk.gif' "(manufacturer sk" "Sanyo" "sanyo.gif' "(manufacturer sanyo" "dontcare" "char.gif "(manufacturer dontcare" (fetch "ReteControl" Each phone model described in the knowledge base has a score slot which registers a matching degree between the customer's requirements and the features of the phone model. f there is a match between the customer's preference and the attribute of the product, then the score is increased. Otherwise, the score is decreased. f the user answers as "dontcare", the score is not changed. At the start, all of the phone models are candidates for the recommendation. The facts representing each phone model are created in a working memory. As a customer responds to questions and so the answers of the customer are collected, the score of each phone model is recalculated and changed. After the final question is answered by the user, a competition process is started where only one fact with the maximum score should survive. The survived final fact is presented to the customer as a recommendation product with the matching score. The score is the measure of similarity and the similarity between the requirements of customers and the features of candidate products is often measured by treating each as a vector and computing the cosine of the angle formed by two vectors. We adopt this formalism to our method. The expression for calculating the score can be given as follows. Select Prefered Manufacturer. 3;l where a',b denotes a customer vector and a product vector respectively and ''s" denotes the dot-product of the two vectors[l][4]. After the all queries are presented to the customer, the recommender system tries to determine which product will meet the customer's requirement best. t is implemented internally as a competing process. Every phone model is a candidate at first. After the customer responds the last question, only a phone model having a high matching score can survive. This competing process is implemented by inserting and retracting the facts related with the phone model to the working memory of the expert system. The system compares the scores of the two facts related with particular models, and retracts the fact with a lower matching score from the working memory. Finally the fact with a highest matching score will survive and it is presented to the customer as a recommendation like the following figure. Figure 3. Query screen of the recommender system. 769 ~ 200, Pusan, KOREA

FGr Recommendation Phone Model! Figure 4. Result screen of the recommender system 5. CONCLUSON n this paper, a sample implementation of a knowledgebased recommender system for electronic commerce is described. The system consists of the knowledge base of the product domain, inference engine and user interface module. nference engine is implemented using JESS whch is a Java expert system shell. A sample internet shopping mall which sells cellular phones is built and recommender system is implemented on the top of it. One of the possible knowledge base format for the recommender system is described. Recently the integration effort that combines collaborative filtering and knowledge-based approach is being introduced[2]. So the hture work is to build the hybrid recommender system which integrates knowledge-based and collaborative filtering recommender systems using JESS. [3] Emest J. Friedman-Hill, The JESS Usefi Manual, http://herzberg.ca.sandia.gov/jess/faq.html,200. ~ [4] Jack Breese, David Heckerman and Carl Kadie, ; Empirical Analysis of Predictive Algorithms for Collaborative Filtering, Proceedings of the Fourteenth Conference on Undecainty in Artificial ntelligence, Madison, W, Morgan Publisher, July, 998. [S Mark Claypool, Anuja Gokhale, Tim Miranda, Pave Mumikov, Dmitry Netes, and Matthew Sa{in (W Combining Content-Based and Collaborative Filters in an Online Newspaper, ACM SGR 99 Wo$cshop on Recommender Systems: Algorithms and Evaluation,,999. [6] Mark OConner, Jon Herlocker Clustering tems for Collaborative Filtering, ACM SGR 99 Workshop on Recommender Systems, August 9, 999. [7] Ralph F. Grove and Arthur C. Hulse, An ntimet-based Expert System fro Reptile ndentification. ht~:/,~er/ber~.c~.sandia.ciov/~~ss/, 998. [8] Resnick, P., acovou, N., Suchak, M., Bergstdrm, P. and Riedl, J., Grouplens, An open architecture for collaborative filtering of netnews. Proceedings of the ACM Conference of Computer Supported Cooperative Work, pp. 75-86, 994. [9] Thomas Trans and Robin Cohen, Hybrid Recommender Systems for Electronic Commerce, University of Waterloo, 999. 6. REFERENCES [l] Badrul Sanvar, George Karypis, Joseph Konstan, and John Riedl, Analysis of Recommendation Algorithms for E- Commerce, GroupLens Research Group / Army HPC Research Center, Department of Computer Science and Engineering University of Minnesota, 2000. [2] Burke, R. ntegrating knowledge-based and collaborativefiltering recommender systems. AAA Wo&shop on Artificial intelligence for Electronic Commerce WS-99-0, AAA Press, Menlo Park, Califomia, 999. 770 SE 200, &an, KOREA