• 沒有找到結果。

以本體論為基礎之情境感知校園景點推薦系統

N/A
N/A
Protected

Academic year: 2022

Share "以本體論為基礎之情境感知校園景點推薦系統"

Copied!
86
0
0

加載中.... (立即查看全文)

全文

(1)

»ñÈ.é^£G.o£G .@~X Æÿ¡Z

Department of Computer Science and Information Engineering College of Electrical Engineering and Computer Science

National Taiwan University Master Thesis

| | |Í Í Í› › ›¡ ¡ ¡ à à Á    



 ( ( (Ž Ž Žá á ál l lh h hÿ ÿ ÿF F F. . .¦ ¦ ¦  Ù Ù Ù

An Ontology-based

Context-aware Recommender System for Campus Scenic Spots

Wæ Hsiao-Wei Chen

¼0>0&ÕË }ÿ

Advisor: Jane Yung-jen Hsu, Ph.D.

ºÓ»ÜèâO0`

June, 2009

(2)
(3)

Acknowledgments

Ž XbU &WÝ߯ÆÝ <¯9S¡Z5¿W´Ž &ݼ 0>0&Õˀ/ €/¯&.Ն@~Ý]°V—¬Ê`ݛ

&¼09×ð@~Ýßþœ†@[$œ9Ž &ÝýŽ õe›º>

0ro>0›&–òݘȯ&Ý¡Z?J

@~ÄbKÝæpDæŽ Context Aware àÝý ÆE&ݑ

 < ¯Z-ËÝU&D¡ŠX®Þ; vÍìÝW&å

s; @׎¼Œ&ÝßF; - ×å&Šb*T Ì.|C

§Ÿ.Þ@~†ÝœJ¯&#W`|&93@~îåկƜ9Ý

QÃËÿ ¯ÆÝ

Ž @™‡ÝÌ.r‡BcãDavid?iD

bݯÆ3369Ý&9Kîµ ×Í1œá¶Ž NכQÃ

&†@™Ý.ætú›²F¤leeaa68&Ñ©½Ž

¬"ˆTݖ¯.. ¯ÆÝ#TÜÃEó;Ýþ›ðÝb Îb‘

t¡ L ×àU ½&¸†ËËÝæp›&GÝæ; ÒÏE

&òÝçÎ&t¥ŠÝD3

iii

(4)
(5)

Abstract

In this paper, we propose a context-aware campus spots recommender system which detects the changes in the environment, and provides a list of spots to user whose preference cannot be retrieved at the trip beginning, on the basis of user’s responses of what had visited in the trip, what time it is, whether it rains, who company with the visitor, and attractions information. The traditional recommender systems overlooked that a decison making differs in different context (location, time, or weather). In order to get high quality recommendations, in the general recommender system user has to rate a sufficient number of items; However, this system learns user’s preferences dur- ing the trip and recommends spots that user are interested in, even if this is his first time contact with the system.

The system uses three main technologies: knowledge conceptualization, context- awareness ability, dynamic recommneder algorithm. Ontology is used to represent a set of concepts within the tourist domain. A spatial ontology organize spots informa- tion, and conceptualize geographic knowledge of National Taiwan University (NTU) campus, such as Fu Bell is a spot, Royal Palm Blvd. is a road, and Fu Bell is on Royal Palm Blvd. is a geographic knowledge. The temporal concepts are built in ontology which could infer high-level information with the raw data. For example, 9:00 AM is a time stamp, by inference the system obtain that 9:00 AM is in the Morning and it

v

(6)

personal data and the environment conditions. With up-to-date user’s responses in the trip, the system dynamicly provides recommendations which vary with different time and weather condtion.

vi

(7)

` ` `Š Š Š

(ŽálhÿF.¦ÙqA¢ÌïÝÃÍ£]¢Ìݕ •(Ý£

G(` F‡)|CÿF Ý8!n;›V2.¦ÿFFÙÿF.¦Ù

©Ê¸àï?|CÿF£G¬^bÞ(ݎ;ûáh²Í

ÙjE±Ý¸àï(new user)†.¦3•GÙ¬ƒ'=b¸à ïĜÝ_»?£G3¸àï»ÔÝÄÙÌD¸àïÙÝ!

›¢¸àïE´"ÄÝÿF݇?—!`DÆ®à•(ݎ;Ê`

®ßÿF.¦ð­•1Í¡ZXèŒÝ(ŽáÿF.¦ÙÍmOõ .¦Ù!FÙ®`.¦Ùºb×ð¼^(cold-start)Ý` 9v .¦ÙÝ`²Š ½E¸àïÝ݊‚¦ôµÎ1¸ÆÄ6á”Ý

¸àïÝaªø|S¡ÿÕb`²1JÝ.¦¬ÎÍÿF.¦

ÙæO3–` /DƸàï?.¦•(¸àïb·¶ÝÿFÇ -9͸àïÎÏ×g¸àÍÙ

ÍّâëÍxŠ*áIÝ̛;(Žá›V.¦áIÝ Ì›;¸à͛¡(Ontology)3©Tàr½¾×°ÃFÝ/)Í¡Z5½

˜ñÝ` õè ÝáI0è ͛¡à¼ÚxÿF32§è îÝÃF

»AmÖÎ×ÍÿF‘¼Î×f­mÖ3‘¼îÎ×ÍáI

vii

(8)

¯é\á¼ÜF3\î‚vòy*9Ý` (Žá(context-aware) §•

(.ݎ;»A¸àïX32` F‡‡£GÍ.¦ÙqA¸

àïÝÃÍ£]! .T¨3Ý` F‡ÝŽ;›VŸJ.¦Ý/



Í¡Z@®ÝÞÍ$ðÝ@™Ï×$ð3¬Eó;&ÆšÓ¾

Ê` F‡|C ×!¼Ô‡.ô lhÿFÆ5óDÄhþ

›[/Õ93‰É›•ª949‰ÿF‡?S|h˜ñ¸àï0'2§ÿ l(user-based location model)ú;æbÝÿFÿl† .¦ÝÁáI3h 2§ÿltÝSÿFÃÍ£]‘À5—Ó¾3¬»ÔÝɛ•ª

s¨ÝÿF Ýn;(»A&ÆÌD՜9ß:mÖ#ì¼µºœÀ%

.h9ÞÍÿF ®ß”ì×ì”Ýn;ÇmÖÝì×ìÎÀ%)ÏÞ$ð

¯¸àïñ½Í.¦Ù@j”"lhÝ£ÍÙÝ#å—@àP@™

•]PÙ!`øýŒÞÍ.¦ÝÿFÍ×ÍÎbÞ(ݎ

;ûáÊ¨×ÍJP‚¸àï¬ἸÆÝ-½&ÆS蛸à

ïE.¦”ŒÝDT(#å`–êG^ŒŒ)|hÝ£(.EÿF.

¦ÝÃÇ

viii

(9)

Contents

Acknowledgments iii

Abstract v

List of Figures xii

List of Tables xiii

Chapter 1 Introduction 1

1.1 Motivation . . . 1

1.2 General Background Information . . . 2

1.2.1 Recommender System . . . 2

1.2.2 Context-Aware Computing . . . 3

1.3 Context-Aware Spot Recommender System . . . 3

1.3.1 Purpose . . . 4

1.3.2 System Archetecture . . . 4

1.4 Organization . . . 6 ix

(10)

2.1.1 Content-Based Recommendation . . . 9

2.1.2 Collaborative Filtering Recommendation . . . 10

2.1.3 Hybrid Approaches . . . 13

2.2 User Model . . . 14

2.3 Context-Aware Computing . . . 17

2.3.1 Context-Aware Technology in Tourist Domain . . . 18

2.3.2 Context-Aware Recommender System . . . 20

2.4 Ontology . . . 21

Chapter 3 Context-Aware Campus Scenic Spots Recommender 25 3.1 Problem Formulation . . . 26

3.2 Challenge and Proposed Solution . . . 27

3.2.1 Data Collection and Analysis . . . 28

3.2.2 POI Model . . . 34

3.2.3 User Model . . . 38

3.2.4 Context Model . . . 42

3.2.5 Context-Aware Recommendation Generation . . . 44

Chapter 4 Implementation and Evaluations 55 4.1 Scenario for Existing System . . . 55

4.2 Experiment Evaluation . . . 59 x

(11)

4.2.1 Experiment Design . . . 60 4.2.2 Evaluation Metrics . . . 60

Chapter 5 Conclusion 65

Bibliography 68

xi

(12)

1.1 System Architecture . . . 5

3.1 Solution Flow Chart . . . 29

3.2 Spatial Ontology . . . 35

3.3 Tempral Ontology . . . 44

3.4 Context-Aware Recommendation Generation . . . 45

3.5 Solution Flow Chart . . . 53

4.1 User Input Interface . . . 56

4.2 The Nearest POI Accoring to the Positon of User . . . 57

4.3 The Recommendation Result . . . 58

4.4 The Local View . . . 59

4.5 The Panoramic View . . . 60

4.6 A Introduction Page about FuBell . . . 61

xii

(13)

List of Tables

3.1 One-way ANOVA . . . 32

3.2 Two-way ANOVA . . . 32

3.3 ANCOVA . . . 33

4.1 Evaluation Result . . . 63

xiii

(14)
(15)

Chapter 1

Introduction

In this chapter, we describe the motivation of this ontology-based context-aware cam- pus spots recommender system. Furthermore, we menstion the limitations of common context aware applications and recommendation algorithm to point out the purpose of this work.

1.1 Motivation

People travel for different reasons including for business, for education, for leisure, and for attending conference. It is useful if there exist a recommender system which provides a flexiable and personalized recommendation to anyone who travel but may not be able to plan the tour in advance. In this paper, we propose a campus scenic spots recommender system which can provide the novel user with a list of spots which are likely of interest to this new user on the basis of the user’s preference, what time it is,

1

(16)

whether it rains, and who company with the visitor.

1.2 General Background Information

In this work, we uses three main technologies: knowledge conceptualization, context- awareness ability and dynamic recommneder algorithm. Ontology is used to represent a set of concepts within the tourist domain, context-awareness ability copes with the changes in the enviroment, and dynamic recommnedations vary with current time and weather conditon.

1.2.1 Recommender System

The recommender systems 1 was defineed as a specific type of Information Filtering (IF) technique that attempts to present items (movies, music, books, news, images, web pages, etc.) that are likely of interest to the user. Recently, due to the information over- load recommender systems are getting attentions not only from academic research but also from e-commerce sites including Amazon.com2, moviepilot.de3, and musicovery

4. Two basic approaches have emerged for making recommendations: content-based approach and collaborative filtering approach. The Content-based filtering analyzes the content of items (e.g., web pages) that have been rated to create a user’s interest profile in terms of regularities in the content of information that was rated highly. This

1source:http://en.wikipedia.org/wiki/Recommender_system

2source:http://www.amazon.com/

3source:http://www.moviepilot.de/

4source:http://www.musicovery.com/

(17)

1.3. CONTEXT-AWARE SPOT RECOMMENDER SYSTEM 3

profile may be used to rate other unseen items or to construct a query of a search en- gine. On the contrary, the collaborative approaches find information sources for an individual that have been rated highly by other users whose ratings pattern is similar to that of the user.

1.2.2 Context-Aware Computing

The free on-line Dictionary of Computing defines Context is that which surrounds, and gives meaning to something else. Context-Aware applications are aware of the context in which they are run, such context-aware software adapts according to the location of use, the collection of nearby people, and accessible devices. A system with these capabilities can examine the computing environment and react to changes to the environment with no user typing into a computer. In other words, when computers can sense the physical world, people can dispense with much of what is done with keyboards and mice. In this paper, some important aspects of context are: where the visitor is, what time it is, whether it rains, how visitor feel about current trip, and who the visitors is with.

1.3 Context-Aware Spot Recommender System

A fairly large body of literature exists on recommendation algorithm and context aware application ; however, both of them have various limitations. Context-aware applica- tions are unable to predict a user’s preference in an unseen situation because the rules are static. The existing recommendation algorithms could not model complex situation

(18)

of which recommender space exceeds two dimensions. The traditional recommender systems overlooked that a decison making differs in different context. For example, when it rains, most people do not engage in outdoor activities and when it approach meal time people will find place support food. In this work, context-aware technology detects changes in the environment to reach these goals.

1.3.1 Purpose

In light of above concerns, we present a ontology-based context-aware campus spot recommender system which give recommendations to novel users whose preference cannot be retrieved at the trip beginning based on user’s responses of what had visited in this trip, contextual information and attractions profile. Additionally, from the view of visitor, this context-aware recomnneder system has three benefits:

1. User does not need to plan trip in advance.

2. The system actively suggests spots to user based on different context.

3. The recommendation satisfies the specific interests of individuals, rather than the majority.

1.3.2 System Archetecture

Here, a trip is divided into three period: Pre-trip, In-trip ,and Post-trip. The system works at the In-trip period (see figure 1.1). At a trip begging, we have no historical tour records about the new user. After the user visiting and rating for some landmarks, the

(19)

1.3. CONTEXT-AWARE SPOT RECOMMENDER SYSTEM 5

Figure 1.1: System Architecture

(20)

predictor makes recommendations for unknown spots on the basis of demographics, visiting habit of user, current context and location attributions. In brief, the input of the system includes:

• Location model contains properties of spots such as geographical position, cat- egory, services, etc., which were predefined in spatial ontology and latent rela- tionships among POIs which learned by analyzing moving patterns of visitors over NTU campus.

• User model considers the demographics and visiting behavior of user in the trip.

The demographic information (e.g., age, gender, and companies) are obtained from the welcome screen. Observing users interact with the system, we design an implicit rating mechanism.

• Context model descries the temporal conception and weather conditions(e.g., clear, cloudy, and rainy) .

The output is a context-aware personalized list of scenic spots.

1.4 Organization

The remainder of this paper is organized as follows: Chapter 2 describes the prior work.

The problem formulation and details approach are presented in Chapter 3. Following the definition, Chapter 4 briefly describes the implementation and experiment results.

Finally, concluding remarks are stated in Chapter 5.

(21)

Chapter 2

Background and Related Work

In this chapter, we review some prior work on recommneder system, context-aware application, user modeling, and ontology. Firstly, we introduce the state of the art recommender algorithms, in order to improve recommendation capabilities and make recommender systems applicable to broader range of applications, more work focus on the possible extensions to the current recommendation methods. Next, we investigate how to identify the user’s interests unobtrusively by an improvement of understanding of users [1][26]. Then, we shift attention to context-awareness technology, and then in- corporate contextual information into the recommendation process [40][9][3]. Finally, ontology is the key to make the context-awareness come true. we talks about some famous projects have been designed ontology used for knowledge sharing. And in this work, we used ontology to describe the geospatial and temporal knowledge about landmarks on NTU campus.

7

(22)

2.1 Recommender System

Recommender systems is a kind of learning systems that predict the utility towards new items regarding a particular user based on user’s explicit or implicit ratings, oth- ers’ opinions, and the attributes of user and items. Recommender systems emerged as an independent research area in the mid-1990s when researchers started focusing on recommendation problems that explicitly rely on the ratings structure. Typically we do not have a complete set of votes across all items, regardless of the type of vote data available, recommendation algorithms must address the issue of missing data. The users’ preferences are learning target function, we have reasons to believe that there ex- ists some other target functions in the dataset that consistently behaves similar, neutral or opposite to the target function for the particular user. Rating-based recommenda- tion algorithms rely on an interpretation that any vote indicates a positive preference [38]. In a case of a spot recommender system, Alice assigns a rating of 4 (out of 5) for FullBell, and also votes 2 for Library, then we can say that Alice probably like fullBell more than Library.

The recommendation methods are usually classified into three main categories based on how recommendations are made [1]: content-based, collaborative filtering, and hybrid.We introduce them and describe which and why we used in this work.

• Content-based recommendations: The user will be recommended items which have higher degree of similarity to those he preferred in the past.

• Collaborative recommendations:

– user-based: The user will be recommended items that people with similar

(23)

2.1. RECOMMENDER SYSTEM 9

tastes liked in the past.

– item-based[21][31][23]: The similarities among items were computed based on users’ responses not their content.

• Hybrid approaches: These methods combine content-based and collaborative methods.

2.1.1 Content-Based Recommendation

The content-based approach roots in information retrieval, it analyzes the description of items that have been rated by the same user and the description of items to be recommended. Many content-based approaches focus on recommending text-based items like documents, a document is represented as a set of most informative words which characterizing it extracting from its content, i.e., the words that are more asso- ciated with one class of documents than another, and use those keywords to determine the appropriateness of the document for recommendation purposes. One of the well- known measures for specifying keyword weights in Information Retrieval is the term frequency/inverse document frequency (TF-IDF). In fact, the similarity among items are computed according to their content.

Content-based approachs have their own limitations. First, the content analysis ca- pability is limited by features that are explicitly associated with items. In order to have a sufficient set of features, the content either in a form that can be parsed automatically by a computer (e.g., text).In this work, we use ontology to build the location model in which each spot not only has its basic attributes, including identification, category,

(24)

position, etc. But each spot also has some user oriented properties like popular time to be visited which was obtained by observing users’ routes in the database, not the content of spots. Second, in order to get high quality recommendations the content- based recommender system has to really understand the user’s preferences; means that the user has to rate a sufficient number of items. However it is not a practical assump- tion here, in this work, we give recommendations to users whose preference cannot be retrieved at trip beginning, that is to say the content-based approach would be unable to get accurate recommendations to the user who has very few rating records. This is called a new user problem, and we alleviate it by assigning the new user into a high level group according his demographical features.

2.1.2 Collaborative Filtering Recommendation

Collaborative filtering recommender systems predict the rate of items to a particu- lar user based on a collection of ratings rated by other like-minded people. Unlike content-based recommendation methods, typically, collaborative filtering does not use any information regarding the actual content of items, but rather match the preference patterns of active user to those of other users. That is why it called collaborative filter- ing or social recommender system.

Collaborative filtering has been shown as one successful recommender system technology in many practical applications, but here we describe some potential prob- lems associated with correlation-based collaborative filtering models. First, the perfor- mance of recommendations made by collaborative filtering degrades with the number of customers and items, it is called large scale problems. Sarwar et al use association

(25)

2.1. RECOMMENDER SYSTEM 11

rule technique to produce top-N recommendations to address large-scale purchased and preference data [32], and they also explore a technology called Singular Value Decomposition (SVD) to reduce the dimensionality of recommender system databases to quickly produce high quality recommendations, even for very large scale problems [33]. Another problem occurs when the different product names refer to the similar ob- jects. Correlation based recommender systems do not discovery this latent association and treat these products exactly differently. For example, considering two visitor one of them rates low-fat yougurt as ”high” and the other rates low-fat milk as ”high”. Cor- relation based approach would see no match between products to compute correlation and would be unable to find the latent association that both of them like low-fat dairy products. In our work, both large scale and synonymy problems may relieve, since the visitor rates for a spot represented by its unique position, and location ontology is used for modeling the latent relationships among spots. Again the number of spots in NTU campus is fixed and the number of visitors grows slowly, the large scale problem may not serious.

Usually, in any recommender application, the number of ratings already obtained is usually very small compared to the number of ratings that need to be predicted.

Effective prediction of ratings from a small number of examples is important. User- based collaborative methods look for similar users’ opinions to make predictions, more precisely, the ratings pattern of individuals are used to determine similarity.

Typically, user-based collaborative filtering systems find like-minded customers (also called neighborhood) by Pearson correlation or cosine-based similarity between the opinions of the users. These statistical approaches find the neightborhood of the ac-

(26)

tive user, i.e., others who have similar tastes in items (rate the same items similarly), such a correlation is most meaningful when there are many objects rated in common between users. Unfortunately, we may not expect there to be a large number of ratings in this work. What’s worse the nearest-neighbor algorithms rely upon exact matches, this meant that the correlation is only defined between individuals who have rated at least two items in common, whenever there are relatively few user-specified ratings, for either the active user or the neighbors, not many pairs of users have correlation at all. The situation that there is fairly little ratings data were included is called sparsity problem, and it causes collaborative methods might be expected to fail, and also the ac- curacy of recommendations may be poor. Many efforts have been made to overcome the sparsity problems of a purely collaborative approach: Sarwar et al.incorporated semi-intelligent filtering agents [34] into system. These agents evaluated and rated each product, using syntactic features, but the filterbot is only for text-based item since the rate is gotten by content analysis. Breese et al.assume some default value [8] as rating for the missing data. The dimensionality reduction [33] is a different approach for dealing with sparsity, through content analysis and reduce item space by using k feature to describe n items, where n is large and k less than n to increase density and thus find more ratings. Providing a dense ratings set helped alleviate coverage and im- proved quality, however, this kind of solution did not address the fundamental problem of poor relationships among like-minded but sparse-rating customers.

As was observed, sparsity poses a computational challenge, nearest-neighbor algo- rithms become harder to find neighbors and harder to produce recommendations for a particular user. In this work, we think that two users could be considered similar

(27)

2.1. RECOMMENDER SYSTEM 13

not only if they rated the same items similarly, but also if they belong to the same demographic segment. Accordingly, we do not look for neighbors who have a similar ratings pattern with the active user, but we directly categorize the user according his attribution. Pazzani propose a Demographic filtering which uses the demographic in- formation, such as gender, age, area code, education, and employment information of users to learn the type of person that like a certain object in the restaurant recommen- dation application [26].

In this work, we choose item-based collaborative filtering to make recommenda- tion. We analyzing user-item representations to identify relations between the different items, and then recommendations for a particular user are computed by finding items that are similar to other items the user has liked. Karypis [21] used item-based col- laborative filtering for the top-N item recommendations. At Amazon.com the item-to- item collaborative filtering algorithm produces recommendations in real time, scales to massive data sets [23]. Moreover, Sarwar et al. [31] point out the bottleneck in collaborative filtering is that searching potential neighbors among a large user popula- tion. Since relationships between items are relatively static, item-based algorithms can avoid this bottleneck.

2.1.3 Hybrid Approaches

Collaborative Filtering methods collect items ratings from individuals and use nearest- neighbor techniques to make predict whether a user would be interested in a particular item. However, these methods miss the information about the nature of each item.Basu et al. [7] present a recommender approach that is able to use both ratings informa-

(28)

tion and other forms of information about each artifact in predicting user preferences.

Commonly, different ways to combine content and collaborative methods into a hybrid recommender system can be classified as follows:

1. To implement collaborative and content-based methods separately and combine their predictions.

2. To incorporate some content-based characteristics into a collaborative approach.

3. To incorporate some collaborative characteristics into a content-based approach.

4. To construct a general unifying model that incorporates both content-based and collaborative characteristics.

For example, Pazzani [26] proposed a collaboration via content approach which based on traditional collaborative techniques but also maintain the content-based profiles for each user. The content of the user’s profile is not the commonly rated records, but contains weights for the terms that indicate that a user will like an object, and then is exploited to detect similarities among users. The benefit of this approach is that users can be recommended an item not only when this item is rated highly by users with the opinions of the like-minded users, but also directly against the user’s profile.

2.2 User Model

Recommender systems are characterized by how to model users, and then connect similar ones together. As was observed, not many pairs of users will have a significant

(29)

2.2. USER MODEL 15

number of commonly rated items; the sparsity is a big problem in any rating-based recommender systems, therefore when model individuals, we cannot rely too heavily on having a large amount of rating for items or expecte users to answer many specific questions. To build user models quickly, some uncertain knowledge must be incorpo- rated into modeling. Elaine Rich [29] uses stereotypes as a mechanism for building models of individual. Stereotypes are the clusters of characteristics of the user. With the aid of stereotypes, Grundy, a system that plays librarian, roughly models the read- ers, and then exploits those models to suggest relevant books that people may find in- teresting. The case in a library, the librarian knows some information about the reader before asking, such as the gender, approximate age, and some things he can assume until he has c ontrary evidences, like that the person whose hair is yellow does not read Chinese. Only when the librarian needs to figure out other more detail things, he asks the specific question to the reader. In other words, a user model was built without ask- ing many questions to a user, but with making direct inferences from a user’s behavior.

Although not all of these attributes are necessarily true, the benefit of this approach is that user model is built quickly without making users feel tedious.

The classify algorithms can put the like-mined users into the same class, but each user only be clustered into a single cluster. In reality, a sound recommender system must be able to cluster users into several categories, for example, in a book recom- mendation case, a user may be interested in one topic (e.g., programming) for work purposes and a completely different topic (e.g., fishing) for leisure.

Moreover the user model is acquired not only based on user’s charecter or his rating records, but also on the basis of user’s activities in the information space.Oppermann

(30)

and Specht practice a nomadic exhibition guide Hippie [25] for a museum guidance and introduce many psychology theories about modeling the user interests including, motivation theories, psychological perception theories ,and social psychology. Ac- cording stereotypical movements of visitors, a visitor could be classified by four cat- egories: ANT, GRASSHOPPER, FISH and BUTTERFLY. Given visiting style, the adaptive information guide can be present, long and detailed presentation for an ANT, short for a GRASSHOPPER and medium for a FISH and a BUTTERFLY. Konstan et al. [22] point out the correlation between spent reading time and explicit ratings. That is, the reader who spend a long time with an article is more likely to rate it highly;

Similarly, other actions such as printing, saving, forwarding, and posting a follow up message to an article are also be a clue about how the user likes this article. There are some spot recommendation applications show correlation between user preference and travel behavior such as visit frequency and travel time [18][41][6]. For example, CityVoyager [41] models users’ movements using first-order Markov model which uses areas as nodes. The transition probabilities of nodes are calculated from periodi- cally plotted user locations, and a higher probability indicates more chances of a user advancing to the area. In this paper, we have no user’s travel history at trip beginning, through analyzing his visiting behavior in the trip can help us to model the user. The approach chapter describes how to moale a user in detail.

(31)

2.3. CONTEXT-AWARE COMPUTING 17

2.3 Context-Aware Computing

The use of situational information is increasingly important in many fields such as ubiquitous computing where the context vary rapidly. Anind K. Dey [17] defines con- text

Context is any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.

He also defines context-aware

A system is context-aware if it uses context to provide relevant information and/or services to the user, where relevancy depends on the user’s task.

Schmidt [36] defines Context awareness

Context awareness as knowledge about the user’s and IT device’s state, including surroundings, situation, and to a lesser extent, location.

Context-aware applications exploit the changes in environment and adapt according to user’s location, collection of nearby people, and accessible devices, etc. In gen- eral, most context-aware applications focused on location awareness, location-based service (LBS) provides user information/service depending on the positon of entity.

Here we introduce early work in context awarenes: Firstly, the Active Badge System1 is a tag that periodically broadcasts a unique identifier for the purpose of determining the wearer’s location, it was developed at Olivetti Research Lab. The main software

1source:http://www.cl.cam.ac.uk/research/dtg/attarchive/ab.html

(32)

application is an aid for a telephone receptionist. It redirect phone calls based on peo- ple’s location real time [42]. Another work, the ParcTab 2 is a palm-size computer developed at the Xerox Palo Alto Research Center. It uses an infrared-based cellular network for communication wirelessly in an office setting. The system notifies appli- cations of location changes, and also provides location information to a public service that collections and redistributes information about objects and their location. In [35], Schilit et al. use ParcTab to support four categories of context-aware applications:

proximate selection, automatic contextual reconfiguration, contextual information and commands, and content-triggered actions.

In fact, context encompasses more than just the location of user, other contexts includes lighting, noise level, network connectivity, and even the social situation e.g., whether you are with your friend or with a family. Schmidt et al. organize context fea- ture space into tow category, one is related to human factors, and the other is related to the physical environment. Human factors related context including information on the user, the user’s social environment, and the user’s tasks. Likewise, context related to physical environment including location, infrastructure, and physical conditions [37].

2.3.1 Context-Aware Technology in Tourist Domain

As usual these are two dimensions (user and item) in recommender system, all the remaining dimensions such as time, weather, and place will be called contextual di- mensions since they identify the context in which recommendations are made. Steeen et al. [39] defined recommender systems as systems capable of finding what is interest

2source:http://sandbox.xerox.com/parctab

(33)

2.3. CONTEXT-AWARE COMPUTING 19

to a specific user through large amounts of information. Both context-awareness and recommender systems can enhance and complement each other, they both help users in finding relevant and interesting objects, the former based on the user’s context, the latter based on the user’s interests. Therefor, [40] Steeen et al. propose a open platform WASP which allows easy creation of context-aware personalized applications and the services.

In recent years, more and more related projects incorporate the contextual informa- tion into the recommendation in the tourism domain [14][15][28][5][40][9][2][41].

• GUIDE [15] is a intelligent and context-aware tourist guide. Cheverst et al.

mention some issues and experiences of developing a context-aware tourist guide, such as dynamic information and context-sensitive information [14]. Then in [15] they focus on the presentation of adaptive hypermedia information within a intelligent and context-aware tourist guide, GUIDE. The context used in GUIDE includes the visitor’s personal context (e.g. his current location) and the environ- mental context (e.g. the opening hour of attractions).

• CRUMPET [28] proposed services by taking advantage of integrating location- aware services, personalized user interaction, seamlessly accessible multi-media mobile communication, and smart component-based middleware technologies.

• INTRIGUE systme [5] is a prototype tourist information server; it provides an interactive agenda to assists user in scheduling an itinerary along tourist attrac- tions based on location of each tourist attraction and user’s interests. Specially, it recommends sightseeing spots tailored not only to individuals, but also to user

(34)

groups, and explains the recommendations by addressing the group members’

requirements. Before the INTRIGUE revising a itinerary, the visitor had to de- cide spots that he would like to see, what is start point, what is destination, and what kinds of transportation is prefer, etc. And during path planning, INTRIGUE makes some assumptions to simple questions, for example, the more spots in a trip the more fun the user has.

• COMPASS is a context-aware mobile personal assistant [40]. It is an application combine context-awareness and recommender systems that serves a tourist with information depends on the specific context that are interesting to him given his goal by a open platform WASP which allows easy creation of context-aware services.

2.3.2 Context-Aware Recommender System

Annie Chen[9] notices that traditional recommender algorithms have mostly been ap- plied to applications for which the context is static, but the fact is that user’s decisions are influenced by surrounding context; for that Chen proposes a context-aware col- laborative filtering system that leverages the pervasive context information such that user’s preference for an item is not only predicted from opinions of like-minded users, but also from feedback of other users in a context similar to that the user currently is in. How to measure similarities between contexts is the main issue, Chen devises a data driven approach that if the ratings for an item are similar for two different con- text values, then these two contexts are very relevant to each other. Given the context

(35)

2.4. ONTOLOGY 21

similarities and the current context surround the active user, the system give an overall prediction for the user on an item based on what others have chosen in a similar context in the past. If the amount of rating data is not enough, this data driven approach will not work well. In this case, we have to get the aid from domain knowledge. Similarly, Ado- mavicius et al. incorporate contextual information into recommendation to construct a multidimensional recommender system [2], and formulate the reduce process from multiple dimensions (user, item, time, and place) to the traditional two-dimensional (user, item) recommendation space. For instance, it is night o’clock in the Moring, a restaurant recommender system suggests customers what to eat based only on the data which occurred at 9:00 A.M. in the past; horever, in some cases, the database may not contain enough records at a specific time(9:00 A.M.) for two-dimensional recom- mender algorithm to predict accurately. When estimating an unknown rating, there is a tradeoff between having fewer but more relevant data and having more but less rele- vant data, for that Adomavicius et al. propose an algorithm to decide which contextual segment is the best for that particular rating.

2.4 Ontology

Ontology is adopted from philosophy where an ontology is a doctrine account of ex- istence; in computer science field, ontology is an explicit and formal specification of a conceptualization composed by a finite set of terms and the relationships between these terms [20]. Moreover, ontology used as a way of specifying content-specific agreements for sharing and reuse of knowledge between humans and software enti-

(36)

ties; as a result, ontology has become common on the World-Wide Web, ontology includes machine-interpretable definitions of basic concepts and relations among them in a particular domain, for that electronic agents can understand and search for infor- mation, and makes semantic web vision come true [4]. Thomas R. Gruber proposes a set of criteria and principles to guide the development of ontology [20], and Noy and McGuinness use a wine and food example to explain why and how to creating an ontology using Prot´eg´e3step by step [24].

In recent years, many famous projects have been designed ontology used for knowl- edge sharing.

• EasyMeeting is an intelligent meeting environment [11], it using a context- aware pervasive computing framework called CoBra (COntext BRoker Archi- tecture) [10] to model the basic concepts of places, agents, events, and their associated properties in meeting domain to provide knowledge sharing, context reasoning and privacy protection.

• SOUPA is the acronym of Standard Ontology for Ubiquitous and Pervasive Ap- plications [13][12].It intended to be a standard specification of ontology technol- ogy, it includes modular component vocabularies to represent intelligent agents with associated beliefs, desire, and intentions, time , space, events, user profiles, actions, and policies for security and privacy.

• MyCampus [30] developed at Carnegie Mellon University. they aim at enhanc- ing everyday life and provid a Semantic Web infrastructure for Ambient Intelli-

3source:http://protege.stanford.edu/

(37)

2.4. ONTOLOGY 23

gent. Whitin this infrastructure, each contextual information (e.g. a calendar, lo- cation tracking functionality, user preferences) is represented as a service. Also they implemented campus activity ontology for faculty and students to infer their possible location and available situation.

In short, ontology is a commonly approach of specifying data semantics. [44]

using ontology to model geometric relations between buildings in National Taiwan University (NTU)campus and using Semantic Web Rule Language (SWRL) to infer new knowledge such as building A connects with building B and building B is con- nects with building C then building A is indirect connects with building C. In this thesis, a geographical ontology is built to organize spot information and to concep- tualize the campus geographic knowledge, such as hierarchical structure, included-in, nearby relations [19][27][43]. In addition, we using an upper ontology 4 of tempo- ral conceptions, and adding temporal individuals and interval according the campus guidance knowledge, for example the open hours of the main library.

4source:http://www.isi.edu/

(38)
(39)

Chapter 3

Context-Aware Campus Scenic Spots Recommender

In this thesis, we implement a context-aware campus spots recommender system which actively suggests the visitor adjusting his trip depend on the landmark properties, vis- itor preferences and contextual information includes current time, weather and com- pany. In this chapter we formulate this context-aware recommender problem and iden- tify the challenges, then propose and explain our solution in detail step by step. First, we undertake an activity to collect spots ratings with different context and visitors’

moving patterms over NTU campus. Analyzing those data, item-based collaborative filtering is used to compute the similarity among spots in NTU campus; moreover, a user oriented location profile was build to enhance the spatial model built with ontol- ogy.Next, through the contexts filtering and relaxing processes, we compute the high performance contextual-segments based on the collected dataset. Finally, dependents

25

(40)

on current context a significant contextual-segment can be determine, then we assign a utility to each not yet rated spots to create a recommendation based on user’s responses of what has visited in trip and attractions information.

3.1 Problem Formulation

Intuitively, the recommendation problem is reduced to the problem of rating estima- tion for items that have not been seen by a particular use, in other words, the main task in recommender systems is to predict the votes of a particular user over given subjects. There are many different ways can be use to estimate the ratings such as machine learning, approximation theory, and various heuristics, etc. In this work, we incorporate contexts into recommend process, and use item-based collaborative filter- ing to figure out correlation between spots according to currrent time and weather, then use category-base prediction on user side to make the rating prediction. Once ratings of the not yet rated spots have been estimated, a designed utility function is used to produce a list of landmarks with the higher scores for the particular user.

There are 110 buildings, more than 15 hotspots at NTU Campus including Royal Palm Boulevard, Fu Bell, Main Library, Siao Fu Commissary and Liugongjun Pool, etc. Since in the restricted geographical area, the number of spots is static and the properties of spots are diversified, we chose landmarks in NTU campus as our recom- mended items to implement the context-aware recommender system.

Formally, the context-aware recommendation problem is formulated as follows:

LetP OI is the set of spots that can be recommended. In the rest of this thesis, we call

(41)

3.2. CHALLENGE AND PROPOSED SOLUTION 27

each point inP OI as Points Of Interest (POIs), each element in P OI is defined with a set of characteristics, a spatial ontology is used to model it. Let U is a utility function that measures the degress of interested in each POIs to a particular user, and the utility factor including, visitor’s characteristics, spots profile, and environmental conditions.

Then, for each user, the goal of the recommender system is to select a set of items P OI0 ∈ P OI which has the higher utility. All criterions in the utility function will be seen clearly in the last part of this chapter.

3.2 Challenge and Proposed Solution

In this work, the system needs context-aware abilities, a thorough-considered campus knowledge base, a flexible recommender algorithm, and an efficient user modeling. In view of the preceding purpose, three major sets of research questions to be addressed on this study are as follows:

• User oriented location profile : Spots are not text-based recommended items causes that the information of spots cannot be gotten through content-based anal- ysis techniques. Here we propose a user oriented location profile of which spots characteristics are extracting from users’ visiting behaviors over NTU campus.

On the one hand, the rates for spots are used to compute the similarity among spots by adjusted correlation-based approach, on the other hand, the moving pat- terns are used to find some latent relationships among locations, for instance, in our collected dataset, most people go to full bell then go to main library, we define the nextStop relation between full bell and main library.

(42)

• Context-aware recommendation: There is a tradeoff between having fewer but more relevant data and having more but less relevant data for estimating an unknownn rating. According to the campus spots recommendation appli- cation we have to determine which contextual varialbes are important,and then a contextual-segment determine algorithm is introduced to decide what degree data with the contextual information should be incorporated into the recommen- dation process.

• New user: We want to give recommendations to new user whose preference cannot be retrieved at the trip beginning, in order to make more accurate recom- mendations, the system get familiar with the user via not only explicit ratings given by this user for items, but also observation the user behavior in the trip incrementally. In other words, the user profile is both explicitly provided by the user and is implicitly inferred by the system. Besides, since the new user problem, the user-based collaborative filtering recommender algorithms are not appropriate for this work.

Accoring to the above challenges we propose a solution in Figure 3.1.

3.2.1 Data Collection and Analysis

As general rating based recommender systems, a large number of users’ rate for the items is required for maiking prediction. We held an activity on NTU Azalea Festival to collect spots ratings with context and visitors’ moving patterns over NTU campus. The participants visit NTU campus along with a GPS logger which can store their moving

(43)

3.2. CHALLENGE AND PROPOSED SOLUTION 29

Figure 3.1: Solution Flow Chart

tracks. We also design a questionnaire to record the visitors’ features such as gender, age, and who in the same group(single, couple, family, friend, etc.). Meanwhile, we required people to grade landmarks in the trip base on what time is it, whether it rain , and companions are who. The rating scale is from 1 to 5, the higher marks the more interested.

We have collected 93 logs, 93 user profiles, and 949 user explicit ratings for POI

(44)

associated with context. Let D is logs dataset, a log is composed by a user profile and several POI rated records. Each POI rated record includes the following fields:

POIid, rate, rateTime, exitTime, like, weather,air temperature, visitedTimes, photo, note, indoor.

D = {log1, log2, . . . , log93}

logu = (userP rof ileu, P OIRatedRecordu,1. . . , P OIRatedRecordu,k) P OIRateRecordu,t= (P OIidu,t, explicitRateu,t, rateT imeu,t, exitT imeu,t, likeu,t,

weatheru,t, airu,t, temperatureu,t, visitedT imesu,t, photou,t, indooru,t) P OIidu,t∈ {1, 2, . . . , 143}

explicitRateu,t ∈ {1 − 5}

rateT imeu,t∈ {00 : 00 − 23 : 59}

exitT imeu,t∈ {00 : 00 − 23 : 59}

likeu,t∈ {yes, no}

weatheru,t∈ {clear, cloudy, rainy, null}

airu,t∈ {calm, breeze, blustery, null}

temperatureu,t∈ {cold, cool, warm, hot, scorchingheat, null}

visitedT imeu,t∈ {1, 2, . . .}

photou,t∈ {0, 1, 2, . . .}

indooru,t∈ {yes, no}

We incorporate contextual information into recommend process, in other words,

(45)

3.2. CHALLENGE AND PROPOSED SOLUTION 31

the recommendation space is not only two dimensions (User, Item) but it is multiple dimensions, such as User, Item, Time, Weather. When defining the multiple dimen- sions recommendation space, it is important to understand what dimension should be included according to the applications. For movie recommender system apart from user and movie(item), where to see the movie affects user’s decision and whether it rains is inconsequential, but for scenic spots recommender system the weather become a important consideration.

Considering the application that recommends scenic spots to the visitors, first we use domain knowledge to choice dimensions, then we test which dimension really matter with respect to making a significant difference in rating estimations by analysis of variance (ANOVA) and analysis of covariance (ANCOVA). In collected dataset D, the temperature is personal feeling and it is too subjective to use. The air volume information is incomplete, therefore we exclude those two factors. Then, we apply one way ANOVA to see the effect the remaining factors. Explicit rate is dependent variable, the others, such as POIid, weather, hours of day, age, tourist group, and gender are independent variables respectively, and p< 0.05 was defined as statistically significant. The results of Table 3.1 show that the POIid, wather, age and tourist group explained of the variance of rate; especially, both POIid and age have a statistically significant impact on rate.

If there is a interaction between factors, the changes of a factor cause the vari- ance of rate would be affected by the other factor. Two way ANOVA is used to check whether the interaction between two factors is significant (at the 0.05 level). Table 3.2 shows that the interaction between hours of day and POIid has a significant impact

(46)

Table 3.1: One-way ANOVA

Test of between-subject effects (one-way ANOVA) Dependent Variable : explicit rate

POIid F(80,864)=2.158 p=.000 p< .001

weather F(3,941)= 3.045 p=.028 p< .05

hours of day F(8,936)=1.894 p=.058

age F(34,910)=2.271 p=.000 p< .001

toursit group F(6,938)=3.148 p=.005 p< .01

gender F(1,943)=2.896 p=.089

Table 3.2: Two-way ANOVA

Test of between-subject effects (two-way ANOVA) Dependent Variable : rate

POIid× weather F(90,771)= 1.110 P =.238 Interaction is not significant POIid× hours of day F(196,660)= 1.565 P =.000 p< .001

POIid× age F(403,427)= 1.106 P =.152 Interaction is not significant POIid× toursit group F(144,714)= 1.009 P =.460 Interaction is not significant POIid× gender F(39,824)= 1.511 P =.025 p< .05

(47)

3.2. CHALLENGE AND PROPOSED SOLUTION 33

Table 3.3: ANCOVA

analysis of covariance (ANCOVA) Dependent Variable : rate

Covariate : POIid

Weather F(3,940)= 2.839 P =.037 p<0.5

Age F(34,909)= 2.273 P =.000 p<0.001

Toursit Group F(6,937)= 3.261 P =.004 p<0.01

on rate, it meant that the time influence on rate affected by different POIs. Similarly, the interaction between gender and POIid has a impact on rate, it meant that male and female like different POIs. As a consequence, for each POI we compute the popular hour of day and proper gender to enhance POI model and to improve recommenda- tions quality. Table 3.3 shows that according analysis of covariance which covariate is POIid, regardless of the change in POI, the wather, age and tourist group explained of the variance of rate.

To sum up, after the rating data had been analyzed, we decide the following dimen- sions:

Recommendation Space= User × P OI × T ime × W eather (3.1)

User ⊆ gender × age × companion P OI ⊆ POIid × genery

T ime ⊆ hours of day W eather ∈ clear,cloudy,rainy

Each dimension has some attributes to define it, for example, theUser dimension rep-

(48)

resents people for whom POIs are recommended in this application, it is described by age, gender and what kind of group he belongs in. Similarly, theP OI dimension is a set of POI having certain identification number. TheT ime dimension describes what hours in a day when the POI is visited. Finally, theW eather dimension represents the weather conditions (clear, cloudy, or rainy) when the POI is visited. Given recommen- dation space, the rating prediction functionR specifies how much user u ∈ User liked POIp ∈ P OI at time t ∈ T ime and w ∈ W eather.

RD(u, p, t, w) :→ rating (3.2)

3.2.2 POI Model

We build a spatial ontologyP OIModel to store the attributes of scenic spots in NTU campus. LetP OIi is a POI profile i.e., a set of attributes characterizing POIi. Each POI profile is defined with a identical numberP OIidi, a nametitlei, the geographical position is denoted by latitudelatiand longitudeloni, the categorycatgoryiit belongs to, the spot genres genresi, the available time form openT imei to closeT imei, and

(49)

3.2. CHALLENGE AND PROPOSED SOLUTION 35

ini presents whether the POI is a indoor spot.

P OIModel = {P OI1, P OI2, . . . , P OIn}

P OIi= (P OIidi, titlei, lati, loni, categoryi, genresi, openT imei, closeT imei, ini) P OIidi∈ {1, 2, . . . , 143}

catgoryi∈ {Academic,Administrative,Dormitory,Instructional,LifeRecreateion,Hotspot}

genresi∈ {Architecture,Ecology,Museum,Academy,Entertainment,Workout,Hotspot}

openT imei ∈ {00 : 00 − 23 : 59}

closeT imei ∈ {00 : 00 − 23 : 59}

ini ∈ {yes, no}

Figure 3.2: Spatial Ontology

The POI category defined within the location ontology, mainly based on the func- tionality a POI provides. The main category includes academic building, administra-

(50)

tive unit, dormitory, instructional building, life-recreateion, and hotspot. Some cate- gories have subcategories such as under academic building including college of bio- resources, college of engineering and college of management. The definition and hier- archy structure of the category can be re-assigned if needed for new data. In addition, the spatial ontology defines a set of spatial relatinship among spots, for example Fu Bell and Administration building are adjacent, and the Fu Bell on road of Royal Palm Blvd.. Part of location model in the representation of ontology is shown in Figure 3.2.

Analyzing the primitive data is useful for capturing some evolving behaviors to ad- vance POI profiles. For each POI, apart from the basic attributes of attractions which have been defined within the ontology, there are some features learned from the visi- tors’ behaviors, including the popularitypopularityi, average duration of stay(in min- utes) avgStayi, when is the proper timeproperT imei to visit for POI i, and what

(51)

3.2. CHALLENGE AND PROPOSED SOLUTION 37

gender peopleproperGenderiis more like POIi.

P OIModelrich= {P OI1+ enrichInf o1, P OI2+ enrichInf o2, . . . , P OIn+ enrichInf on} enrichInf oi = (popularityi, avgStayi, properT imei, properT imeMeani,

properGenderi, properGenderMeani) popularityi ∈ {1 − 5}

avgStayi∈ {0, 1, 2, . . . , 1240}

properT imei ∈ {00 : 00 − 23 : 59}

properT imeMeani ∈ {1 − 5}

properGenderi ∈ {male, female}

properGenderMeani ∈ {1 − 5}

Those advance information enrichInf o can provides clues to recommendation. For example, there is a path pattern, most people prefers to visit library at 11:00 AM , i.e.

POI = library •popular HourOfDay =11:00 AM.

Additionally, for the relation among the POIs, apart from the geographic relations (e.g., distance, nearby, overlap...) among attractions which have been defined within ontology, the similarities between any two POIs are computed by analyzing the rat- ings, and the link intensities among POIs are calculated by analyzing the order of visited POI in each paths. In short, those information was used to strengthen the orig- inal POI model, and the enhanced POIModelP OIModelrich is used to determine the appropriateness of the spot for recommendation purposes.

(52)

3.2.3 User Model

We want to know whether the user like the spot we recommended, we have to un- derstand what he like and what he does not like. The interests of individual are the most difficult part to model, especially because they are highly dynamic. Most of the state-of-the-art recommender services use collaborative filtering algorithm to recom- mend items to a particular user based on the opinions of other like-minded people.

However, a natural limitation of CF is that while CF makes a high quality recommen- dation, it needs to have a large scale of user-item ratings. Particularly, in this work we assume that the user is a new one who has no preference on any POIs and no user of the community. Since we think that two users could be considered similar not only if they rated the same items similarly, but also if they belong to the same demographic segment. In this work, rather than computing user similarities by user-item ratings, we directly exploit the opinions from who is in the same age level or plays with the same tourist group to complement the sparsity problem.

This paper proposes two phase method to acquire knowledge about users, we ask the user some basic information(stereotype) to build a rough user model quickly, and then during the trip we record how he satisfied with current arrangement and his visit- ing behavior to implicitly predict his preference. In particular, the system records the user activities whenever he visits a spot, browses a spot introduction, or receives a sug- gestion and tries to infer the user’s actual preferences. In other words, the subsequent user interaction with the system during the trip would enhance the initial profile. For example, we observe the user’s rate distribution in term of POI genres to infer what kind of POIs he like more dynamically. Since we think that a person may interested

(53)

3.2. CHALLENGE AND PROPOSED SOLUTION 39

in different types of attractions depend on the moment, the weather, and the company.

For instance, a man may be interested in topic (e.g., historical) when his friend com- pany with him and a completely different topic (e.g., academic) when he come with his children. In short, the user’s preference is empty in the begin, as time goes by, it refines by user’s visiting and usage behavior. The benefit of this approach is that the user’s profile is dynamic and constantly update without disturbing the visitor.

phase one: stereotype modeling

The principle of modeling user is not disturb the user, therefore asking the more precise question the better. In the initial stage we ask a user only a few precise questions which allow user be segmented along demographic information e.g., age, gender, and who come with him in this trip. Formally, we build a user model UserModel to store the attributes of visitors, everyone can be characterized with a user profileuserP rof ile.

UserModel = (userP rof ile1, userP rof ile2, . . . , userP rof ilem) userP rof ileu = (userIdu, genderu, ageu, touristGroupu)

userIdu ∈ {1, 2, . . . m}

genderu ∈ {male, female}

ageu ∈ {1, 2, . . . , 100}

touristGroupu ∈ {alone, couple, faimily, family with child, family with elder, friend, other}

(54)

phase two: explicit and implicit ratings

In the second stage, during a trip the system require users to rate for POIs explic- itly. We cannot expect users involve in user modeling process actively, in reality, few people have rated most of item, especially when taking contextual information into recommend process, the sparsity problem become worse. Therefore, we must be able to exploit at best indirect knowledge about the user’s behavior[22][16]. We observat- ing users’ visiting and usage behaviors to infer a implicit rates for POIs. In short, the knowledge model of the user can be refine by the explicit ratings given by this user and monitoring the user’s interaction with mobile device to learn the implicit ratings over time.

UserRatingRecordu,t= (userP rof ileu, P OIidu,t, explicitRatingu,t, implicityRatingu,t, ratingT imeu,t, exitT imeu,t, ratingW eatheru,t)

P OIidu,t∈ {0, 1, 2, . . . , 143}

explicitRatingu,t∈ {1 − 5}

implicityRatingu,t∈ {1 − 5}

ratingT imeu,t∈ {00 : 00 − 23 : 59}

exitT imeu,t∈ {00 : 00 − 23 : 59}

ratingW eatheru,t∈ {clear, cloudy, rainy}

photou,t∈ {0, 1, 2, . . .}

(55)

3.2. CHALLENGE AND PROPOSED SOLUTION 41

Again, in this work the user profile is built not only based on the explicitly ratings explicitRatingi,t assigned by useru for the t-th POI he rated in the trip, but also im- plicitly ratingimplicityRatingu,tinferred by the system. The rest varialbesP OIidu,t

is detectd by GPS logger, ratingT imeu,t and ratingW eatheru,t are recorded auto- maticly when useru rate for POI.

The explicit voting refers to a user consciously expressing user preference for a spot, and the implicit voting refers to interpreting user behaviors, such as the time spent on each visited POI, the number of photo he take, or the browsing pattern. Through statistical significance analysis, if a user has requested significantly more than the av- erage amount of a certain kind of information, or has token more time than average on a certain item, he is probably interested in this kind of information. We make as- sumptions that the longer the user stays at the POI, the more interest at it, and the more pictures user take for the POI, the more interest at it; the former required location- specific normalization, so we compare his stays time with the average one, and the latter required personalized normalization. In addition, for most POI of NTU cam- pus there is an introduciton webpage, visitor can browse the content via our system, meanwhile the time spent on pages of the user is computed to model user preference.

Similarly, we think that the reader who spends longer time on a page is more likely to rate it highly. Apart from the reading time reflects user interests, other user activities is also useful, including review the POI, accept or ignore the recommend POI. Positive evidence for gaining knowledge about objects comes from reviewing or adding POIs.

Negative evidence comes from skipping or ignoring POIs.

From what is said above, each POI rates takes two part: explicitly and implicitly.

(56)

The user denoted asu , the POI denoted as p, and ru,p is the grade of POIp rated by useru .

ru,p = wex× EXru,p+ wim× IMru,p (3.3)

wherewex is weight of explicit rating and 0 ≤ wex ≤ 1, wim is weight of implictiy rating and0 ≤ wim≤ 1, and wex+ wim = 1.

The implicitly rating plays a critical role in context-aware recommender system, because it is too verbose if we ask the user grade the same POI every ten minutes.

3.2.4 Context Model

The input of this recommender system involves the ehrich POI model, User model, and environmental context. The primitive contexts involves the user’s position, current time, and the weather condition: the reference position(φt, λt) is the latitude and lon- gitude to specify the user’s corrent location, the instant time in calendar clock is char- acterized by the hour-of-dayhourt, and the weather condition denoted asweathertto say whether it rains.

Contextt = (φt, λt, timet, weathert) hourt ∈ {0, 1, 2, . . . , 23}

weathert ∈ {clear, cloudy, rainy}

This context-aware spots recommender system is operated outside, therefore a Global Positioning System (GPS) receiver is used to detect the visitor position. On the one

(57)

3.2. CHALLENGE AND PROPOSED SOLUTION 43

hand, each POI on NTU campus were recorded its absolute coordinates location in spatial ontology. Also, some spatial relationship among spots are defined in this spatial ontology (see Figure 3.2).

On the other hand, we build a temporal ontology to model time knowledge. First, we divide the temporal entity into two main categories instant and interval, each in- terval has a start instant and an end instant, and each instant is defined with temporal unit (year, month, day, hour, minute, and second). Second, some high level temporal concepts are described in this temporal ontology, such as, a day includes several in- tervals: morning, noon, afternoon, evering, etc. Last, according to the application that ontology apply, we define some temporal concepts in tourist domain. For example, open-hour and close-hour of main Library tell the system what time is available for Library. Figure 3.3 shows some temporal relationships: A weekday contains Monday to Friday and each day contains some intervals: morning, noon, afternoon, evening, night, etc. The before relationship among Sunday, Monday and Tuesday helps the computer know that the day after Sunday and before Tuesday is Monday. And the begins and ends properties specify the library open at 8:00am and close at 10:30pm on Monday. Therefore this temporal ontology can be used to infer which landmark is suitable to recommend according what time it is now.

The weather-aware function detects whether it is raining and infers what spot is not suitable to recommend. Weather information is retrieved from the web site of de- partment of Atmospheric Sciences, NTU1. It provides the information of temperature, humidity, cumulative rainfall in one minute, cumulative rainfall in one day, and atmo-

1source:http://www.as.ntu.edu.tw/

(58)

Figure 3.3: Tempral Ontology

spheric pressure. It updates frequency is one minute. In this work, we use temperature, humidity and cumulative rainfall in one minute to define current weather condition.

3.2.5 Context-Aware Recommendation Generation

To understand when and how to propose a recommendation to user, consider a case when it rains suddenly, the system detects the changes in the environment, and takes user’s position, POI information, and current contextual information (time and weather) as reference, then context-aware recommender process begins. (see Figure 3.4)

stage one: multidimensional reduction

We would like to reiterate that all user-specified ratings in this work was associated with time and weather, our recommendation space is four dimensions which was de- fined in Euqation (3.1). How to estimate the unknownn ratings in multiple dimensions recommendation space. The first step is to reduce the multiple dimensions to two

數據

Figure 1.1: System Architecture
Figure 3.1: Solution Flow Chart
Figure 3.2: Spatial Ontology
Figure 3.3: Tempral Ontology
+7

參考文獻

相關文件

From the context of “paying homage to the Buddha as if the Buddha were present” mentioned in the Liturgy, Master Huisi has developed a repentance system of “single-mindedly

For the proposed algorithm, we establish a global convergence estimate in terms of the objective value, and moreover present a dual application to the standard SCLP, which leads to

We can therefore hope that the exact solution of a lower-dimensional string will provide ideas which could be used to make an exact definition of critical string theory and give

We will give a quasi-spectral characterization of a connected bipartite weighted 2-punctually distance-regular graph whose halved graphs are distance-regular.. In the case the

We give a quasi- spectral characterization of a connected bipartite weighted 2-punctually distance- regular graph whose halved graphs are distance-regular.. In the case the

experiment may be said to exist only in order to give the facts a chance of disproving the

• If a graph contains a triangle, any independent set can contain at most one node of the triangle.. • We consider graphs whose nodes can be partitioned in m

• In the present work, we confine our discussions to mass spectro metry-based proteomics, and to study design and data resources, tools and analysis in a research