Transcript [.ppt]

HAPORI: CONTEXT-BASED LOCAL
SEARCH FOR MOBILE PHONES
USING COMMUNITY BEHAVIORAL
MODELING AND SIMILARITY
Presented By: Brandon Ochs
Nicholas D. Lane, Dimitrios Lymberopoulos, Feng Zhao, Andrew T. Campbell, Hapori: Contextbased Local Search for Mobile Phones using Community Behavioral Modeling and Similarity,
In Proc. of the 12th International Conference on Ubiquitous Computing, September 2010.
What does Hapori do?

Improves local search technology for mobile phones

Uses context to provide more relevant results


Incorporates behavioral modeling between user
groups
Improves relevance of local search results by up to
10 times
What is local searching?


Use GPS data to provide a list
of businesses associated with a
query
Work best with a narrow range
of queries where relevance is
clear
How does Hapori improve on this?





Consider other factors such as time,
weather, and activity of the user
Build behavioral models of users and
exploit the similarity between user’s
tastes
Consider emerging trends
Personalize responses for each user
Current prototype only uses context
information that can be extracted from
search logs
Key Components


Compute features that capture significant aspects of
context
Learn customized ranking metrics that emphasize
important traits in search category

Model differences between people

Adapt to changes in community behavior
Hapori In Use




Imagine a senior and a teenager located at the same position
in a city on a hot day, and they happen to type the exact
same search query: entertainment
Normally they would both be presented with the same
information
However with Hapori the context and behavioral building
models are taken into consideration, as well as the popular
choices within the community
The teenager might be given the suggestion of a free rock
concert outside in the park and the senior would be informed
about a popular foreign movie in an air conditioned theater
Analyzing Search Log Content


Analyzed 80,000 local search queries submitted to
Mobile Bing Local by more than 11,000 users
Data from search logs contained
 Query
terms
 Unique identifier for the POI that is clicked
 GPS location of user
 The exact date and time the query was submitted
 Unique user identifier

Time and date used to extract weather data
Context and Community Behavior



Identified traits in the POI (Point of Interest)
selection
Identified community preferences between groups
of people
This analysis of search log data was turned into the
Hapori engine
Impact of Temporal Context



People’s behavior and activities vary depending on
the day of the week and the time of day
Fast-food places, informal restaurants and local
coffee shops (200-300) chosen more on weekday
mornings
The selection of these POI’s drop significantly during
the weekday evenings and weekend
Impact of Weather Context




Weather is an important factor for activities (not just
outdoors)
A walk in the park might be nice on a sunny day,
but not when it’s raining
On cold days people prefer activities that are
indoors
Some activities were observed to be popular across
all conditions
Impact of Personal Context



Words like recreation and entertainment lead to
different choices between groups of users
Subsets of users identified through heuristics
(machine learning)
Context was shown to have the largest impact on
the selected POI
Impact of Spatial Context

Takes popularity within the community into account
 Tends
to override other factors such as difficulty of
travel or cost and quality

Bing query data showed that the closest 20-30
businesses to the query location were not as
popular as POIs that were further away
Hapori Framework Overview

Two key stages
 Off-line
model training process
 On-line local search response


Assumes only a minimal form of query as input
where user selects a category
Query is augmented with contextual information
Mining Community POI Decisions


User selection of a POI means that the result was
satisfactory
POI decisions can also be mined by monitoring the
actions of the user (not currently implemented)
 Jogging
at a particular track
 Shopping at a specific store
Extract Contextual Features


For each mined POI decision a series of features
are extracted
Currently Hapori searches for four features:
 Temporal
 Spatial
 Weather
 Popularity

These features represent different types of context
that has strong influence over POI decisions
Temporal Features

The day of the week

Weekend/weekday

Which four-hour window POI selection occurred in
Spatial Features

Longitude and Latitude of source and destination

Tile of both source and destination
 Tile

counts of {102, 2562, 5122, 10242}
Reduce importance of distance on weekends
Weather Features

Calculate weather statistics from the day the POI is
made
 Rainfall
 Snowfall
 Average

temperature
Represented as separate features with different
levels of discretion
POI Popularity Features

Two forms of popularity exist
 Sharp
spikes of interest
 Stable POI preference

A POI is considered a spike in interest if it is a trend
that is less than three weeks old
How do you determine community characteristics
from the Temporal, Spatial, Weather, and
Popularity features?
Computing Community Similarity


Calculate the differences between people through a
community similarity metric
Uses a set of five features to determine community
characteristics
 Which
four hour window they selected the POI
 Day of the week
 Their spatial location (5122 tile)
 POI category (hair dressing)
 Specific POI (Joe’s hair design)
Learn POI Category Relevance Metrics

Metrics account for a POI having different criteria
 Selecting


a place to shop vs entertainment
Hapori learns a completely new metric for every
POI category it supports
The model associated with the user is used for
searching, while the community behavior helps
during the POI ranking phase
Evaluation






Used the same 80,000 query data set to conduct
an evaluation of Hapori
4,000 unique POIs
11,000 users
Data came from Seattle, WA
Spans January to July 2009
Ignore searches for specific POI such as “Starbucks”
Training Data




60,000 queries were used to train the POI
preference model for Hapori
Remaining 20,000 queries are used to test the
system
A rank score is calculated, which is the position of
the POI selection within the ranked list
The lower the score, the better
POI Model Performance




Mobile Bing Local displays the correct POI in the
first ten search results for 3,000 queries
Hapori achieves the same performance for 12,000
queries
Mobile Bing Local displays the correct POI in the
first two search results for 900 queries
Hapori achieves the same performance for 9,000
queries
Feature Sensitivity

The most significant features are:
 1)
Temporal features
 2) Community similarity features
 3) Popularity and weather

Adding temporal features improved the average
rank score by 11
Improvements On The Paper


Future work: Where is this going? What other
features can be implemented to improve results?
Additional comparisons besides Mobile Bing Local
needed. How does this compare to google?
Questions?
Conclusions



A major transformation of local search services is
underway
Shifting from answering specific questions to
broader ones
Hapori takes the first step in this direction
References


[1] Nicholas D. Lane, Dimitrios Lymberopoulos, Feng Zhao,
Andrew T. Campbell, Hapori: Context-based Local Search for
Mobile Phones using Community Behavioral Modeling and
Similarity, In Proc. of the 12th International Conference on
Ubiquitous Computing (Ubicomp), September 2010.
[2] Microsoft. Mobile Bing Local. http://m.bing.com/.