motivation reverse queries from reverse to inverse inverse queries formal definition ...

25
Inverse Queries for Multidimensional Spaces Thomas Bernecker, Tobias Emrich, Hans-Peter Kriegel, Nikos Mamoulis, Matthias Renz, Shiming Zhang, Andreas Züfle

Post on 19-Dec-2015

228 views

Category:

Documents


2 download

TRANSCRIPT

Inverse Queries for Multidimensional Spaces

Thomas Bernecker, Tobias Emrich, Hans-Peter Kriegel, Nikos Mamoulis, Matthias Renz, Shiming Zhang, Andreas Züfle

Motivation Reverse Queries From Reverse to Inverse

Inverse Queries Formal Definition Applications Framework Experiments

Future Extensions

Outline

2

Reverse Queries

3

Given a query object and a spatial query predicate

Find all objects of a database having in their result set

Characteristic Example: The Reverse kNN Query

Given a query object and a positive integer . Find all objects of a database that have as one of their -

nearest neighbors, i.e.

Reverse kNN Queries

4

Given a query object and a positive integer . Find all objects of a database that have as one of their -

nearest neighbors, i.e.

Reverse kNN Queries

5

q

k=1

Given a query object and a positive integer . Find all objects of a database that have as one of their -

nearest neighbors, i.e.

Reverse kNN Queries

6

q

k=1

RkNN queries take as input one single query object However, similarity queries (e.g. -range, kNN) may return more

than one result.

In this work, we generalize the concept of reverse queries Assume the query answer can be (partially) observed. But the query object is not known Find the query!

From Reverse to Inverse

7

Let be a spatial query predicate.

An inverse query () computes for a given set of query objects , the set of points for which is in the query result. Formally,

Inverse Queries

8

Let be a spatial query predicate.

An inverse query () computes for a given set of query objects , the set of points for which is in the query result. Formally,

Special Cases: The mono-chromatic case where the result is a subset of The bi-chromatic case where the result is a subset of a given

database

Inverse Queries

9

Naïve Approach: Perform a reverse query for each Intersect the results

Challenge Efficient algorithms for inverse queries. Single index traversal

Different Predicates Inverse -range queries Inverse kNN queries Inverse dynamic skyline queries

Inverse Queries

10

Consider a movie database containing a large number of movie records.

Each movie record contains features such as humor, suspense, romance, etc.

Applications: Bi-Chromatic Inverse -range query

11

susp

ense

humor

Users of the database are represented by the same attributes, describing their preferences.

Assume that a group of users, such as a family, want to watch a movie together

12

susp

ense

humor

Applications: Bi-Chromatic Inverse -range query

Find movies sufficiently close to ALL users preferences

13

susp

ense

humor

Applications: Bi-Chromatic Inverse -range query

Find movies sufficiently close to ALL users preferences

14

susp

ense

humor

Recommend me!

Applications: Bi-Chromatic Inverse -range query

Assume that a set of households and their spatial coordinates.

Applications: Mono-Chromatic Inverse kNN query

15

Some households have been robbed in short succession and the robber must be found.

Applications: Mono-Chromatic Inverse kNN query

16

Assume that the robber will only rob houses which are in his close vicinity, e.g. within the closest hundred households.

An inverse 100NN query returns a list of possible suspects

Applications: Mono-Chromatic Inverse kNN query

17

Assume that the robber will only rob houses which are in his close vicinity, e.g. within the closest hundred households.

An inverse 100NN query returns a list of possible suspects

Applications: Mono-Chromatic Inverse kNN query

18

Suspects!

An online-shop wants to recommend items to their customers by analyzing other items clicked by them.

Clicked items Q seen as samples of products the customer is interested in, and thus, is assumed to be in the customer’s dynamic skyline.

Applications: General Inverse Dynamic Skyline Query

19

The inverse dynamic skyline query can be used to narrow the space which the customers preferences are located in.

Case |Q|=1: Reverse Dynamic Skyline Query.1

Applications: General Inverse Dynamic Skyline Query

20

1Evangelos Dellis, Bernhard Seeger: Efficient Computation of Reverse Skyline Queries. VLDB 2007

Case: Q>1

Applications: General Inverse Dynamic Skyline Query

21

Fast Query Based Evaluation Verify simple constraints that are necessary conditions for a

non-empty result. Query-Based Pruning

Employ the topology of the query objects to prune objects in DB Object-Based Pruning

Access database objects in ascending order of their maximum distance to the query set

Refinement Perform a (forward) query on each remaining candidate. Check if all query objects are contained in the result.

Filter-Refinement Framework

22

Experiments

23

Restrictive Query Definition Often yields empty result sets Applications?

Ranked Result Rank by Recall: Return objects similar to the largest number of

query objects first. Rank by Precision: Return objects with the higest fraction of

query objects in their result first. Rank by predicate parameters: Return objects that require the

least /k parameter in order to have all objects in Q in their result.

Future Directions

24

Thank you for listening!

25