19
Applying Commonsense Reasoning to Place Identification Soongsil University A.I. Lab. 2016.01.15 Paper Review Namgee Lee

Place identification paper_발표자료_summary

Embed Size (px)

Citation preview

Applying Commonsense Reasoning to Place

Identification Soongsil University A.I. Lab.

2016.01.15

Paper ReviewNamgee Lee

Main Idea (1)

• Commonsense reasoning can notably help the disambiguation process by invalidating some unlikely findings (e.g., a user visiting a cinema in the morning).

Using CommonsenseGPS Ambiguously

2/20

The Whereabouts Diary

Main Idea (2)

• Cyc allows to probabilistically rank the list of candidate places in consideration of the commonsense likelihood of that place being actually visited on the basis of the user profile, the time of the day, what happened before, etc.

3/20

Probabilistically rank

0.6

0.3

0.2

The Whereabouts Diary Cyc (Commonsense)

The Whereabouts Diary (1)

• The whereabouts diary (Bicocchi et al. 2008) is an application running on a GPS-equipped phone that keeps record of the list of relevant places visited by the user.

• The diary runs autonomously without requiring user’s interaction and is able to classify semantically the places being visited in an unsupervised way.

4/20

place visited by user classify

The Whereabouts Diary (2)

• As already introduced, the central problem with the described application is related to the precision of the extracted places. Because of GPS errors and the averaging involved in the clustering process, the user location can be approximated in a 40-meter radius ball. This creates ambiguities in the diary entries.

5/20

(37.4945321,126.955379,20)

Cyc

• Cyc is an artificial intelligence project that attempts to codify, in machine-usable form, millions of pieces of knowledge that comprise human common sense.

• The motivation of this project is that the brittleness of current software systems is mainly due to a lack of common sense

• To achieve this task Cyc starts from the “annoying, inelegant, but apparently true” consideration that vast amounts of commonsense knowledge, representing human consensus reality, would need to be encoded in the systems by hand.

• More sophisticated techniques (like acquiring information from the Web) already require commonsense to automatically process and understand content in natural language, thus can be employed only in a second time.

• Accordingly, Cyc is based on two main parts: a knowledge base and an inference engine.

6/20

Knowledge Base Inference Engine

Cyc – Knowledge Base + Inference Engine

• Individuals such as #$BillClinton or #$France.

• Truth Functions expressing facts about entities, such as

(#$isa #$BillClinton #$UnitedStatesPresident)

expressing that Bill Clinton belongs to the collection of U.S. presidents or

(#$capitalCity #$France #$Paris)

expressing that Paris is the capital of France.

• The inference engine can answer both boolean queries such as

(#$capitalCity #$France #$Paris)

resulting

#$True

and search queries such as

(#$capitalCity #$France ?X)

resulting in

#$Paris.

7/20

Applying Cyc to the Whereabouts Diary (1)

• The main idea of our approach is to use commonsense information contained in Cycto prune unlikely entries from this candidate list.

1. Supposing that the diary creates the entry in Fig. 2 indicating that the user could have been either in a cafeteria or in a restaurant.

2. Supposing that the Cyc KB contains the information in Fig. 3, describing the fact that people might have lunch in restaurants around noon, while have breakfast in cafeteria in the morning.

8/20

Fig. 2 The diary

Fig. 3 Cyc KB

Applying Cyc to the Whereabouts Diary (2)

• The main idea of our approach is to use commonsense information contained in Cycto prune unlikely entries from this candidate list.

1. Supposing that the diary creates the entry in Fig. 2 indicating that the user could have been either in a cafeteria or in a restaurant.

2. Supposing that the Cyc KB contains the information in Fig. 3, describing the fact that people might have lunch in restaurants around noon, while have breakfast in cafeteria in the morning.

9/20

Fig. 2 The diary

Fig. 3 Cyc KB

Coffee Bar => #$CoffeeSpaceRestaurant => #$RestaurantSpaceMapping

Concept of Cyc

Applying Cyc to the Whereabouts Diary (3)

10/20

7 am 8 am 7 am 8 am

Fig. 2 The diary

Fig. 3 Cyc KB

Applying Cyc to the Whereabouts Diary (4)

• Once the list of activities for each place have been retrieved, we use queries to prune unlikely results. We identified 3 main kinds of queries that apply to this task: • Time-based queries.• Profile-based queries. • Relation-based queries.

11/20

Applying Cyc to the Whereabouts Diary (5)

• Time-based queries. These queries rely on assertions based on the time and duration when activities typically take place. For example: (i) you usually do not stay in a restaurant 5 min, or 5 hours, (ii) you usually do not go to a disco at lunch time, (iii) you usually do not go to a restaurant in the morning or very late at night.

12/20

5 min or5 hours

lunch time morning orvery late at night

Applying Cyc to the Whereabouts Diary (6)

• Profile-based queries. These queries rely on assertions based on the profile of the user. For example: (i) usually a teenager does not go to the university, (ii) usually a very old man does not go to a disco.

13/20

teenager does notgo to the university

a very old mandoes not go to a disco.

Applying Cyc to the Whereabouts Diary (7)

• Relation-based queries. These queries rely on assertions based on the relationship among situations. For example: (i) if you have been to a restaurant, it is unlikely that you will go in another one in the next few hours. (ii) if you usually go to your favorite pub, it is likely you will go there again.

14/20

few hours,do not another one

favorite pub, go again

Applying Cyc to the Whereabouts Diary : Time-based queries (1)• Since the diary automatically provides the time and duration of a given visit (as

provided by GPS clock), Cyc can constrain activities on the typical time and duration reported in the CycKB. In particular, CycKB deals with these issues with two sets of truth functions:

1. #$minimumDurationOfType, #$durationOfType associating a duration to a given type of activity (e.g., #$durationOfType #$HavingAMeal #$TensOfMinutesDuration).

2. #$temporallySubsumes associating a given type of activity with the typically time when it could be performed (e.g., #$temporallySubsumes #$WakingHours #$HavingAMeal)

15/20

( #$durationOfType #$HavingAMeal #$TensOfMinutesDuration ) ( #$temporallySubsumes #$WakingHours #$HavingAMeal )

how long for a meal? activity with the typically time when it could be performed

Applying Cyc to the Whereabouts Diary : Time-based queries (2)• Let us clarify this kind of analysis with an example:

1. Suppose that the diary identifies two candidate places: a “theatre” and a “book shop”. 2. Suppose that Cyc associates only the activities “watch a movie” and “buy a book” to the two places

respectively. 3. Suppose that Cyc associates “watch a movie” with a “several hours duration” and “buy a book” with

a “tens of minutes duration”. 4. Finally, suppose that the diary reports that the visit actually lasted 30 minutes.

16/20

several hours duration

tens of minutes duration

actually lasted 30 minutes

several hours duration = N(5h,2h)

0.04

0.00026

tens of minutes duration = N(30min, 10min)

Applying Cyc to the Whereabouts Diary : Profile-based queries• In our current implementation, we use this kind of query to prune unlikely activities

that can happen in the place. To this end, we performed the following steps :1. We added a new predicate to the CycKB to indicate which activities happening in a place can be

undertaken only by a person working in that place. We called this predicate #$workplaceDefiningActivity (e.g, #$workplaceDefiningActivity #$TakingAFoodOrder#$RestaurantSpace)

2. We profiled each user with his working place. It is worth noticing that this could be also automatically derived by other kind of analysis (Bicocchi et al. 2008).

3. If the user is not in his working place, we remove all the “workplace defining activities” from the list of activities that the user could have done in that place.

17/20remove all the “workspace defining activities”( #$workplaceDefiningActivity

#$TakingAFoodOrder #$RestaurantSpace )profiled each user with

his working place

Applying Cyc to the Whereabouts Diary : Relation-based queries (1)• These queries are more difficult than those in the other two categories in that they

are based on the user past activities and not in present things only

• In particular, this process is based on the following key points 1. For each activity x the user might perform in the place under examination, we look the places the

user visited in the recent past (we take 1 day as the time limit). 2. For each place, we consider the activities the user might have performed and see if the activity x is

among them. 3. In that case we look for a time constraint described in Cyc by the #$eventTypeDurationOfEffects or

#$eventTemporalLocality predicates. 4. We use the same mechanism described in Sect 4.1 to associate a time distribution to the Cyc

temporal constraint being returned. 5. We compute the actual time distance between the current activity and the previous one, and the

probability of the that time distance under the distribution computed at the previous point. 6. The probability of the actual activity being not influenced by the previous one will be 1

the probability computed at point 5.

18/20

Applying Cyc to the Whereabouts Diary : Relation-based queries (2)

19/20Fig 5.