Making Sense of Location-based Microposts using Stream Reasoning
1. Making Sense of
Location-based Micro-posts
using Stream Reasoning
Irene Celino, Daniele Dell’Aglio, Emanuele Della Valle,
Yi Huang, Tony Lee, Stanley Park and Volker Tresp
(CEFRIEL – Politecnico di Milano – Saltlux – SIEMENS)
#MSM Making Sense of Microposts Workshop at ESWC 2011 – Heraklion, Crete, 30th May 2011
2. BOTTARI Mobile Application
Augmented Reality Application for Android
to show POI information with their respective reputation
to retrieve information on the basis of the geo-social context
where can I find people nearby sharing my preferences?
who shall I ask for an opinion on this restaurant?
Making Sense of Location-based Micro-posts using Stream Reasoning 2 #MSM Workshop at ESWC 2011
3.
4. Gathering microposts data
Crawling microposts
User ranking model for adaptive crawling
using users’ influence (ranking) to find appropriate and influential
microposts in real-time
Factors to compute ranking:
Micropost frequencies
# of mentioned or retweeted microposts
Degree of interaction with followers and followings
# of followers
Making Sense of Location-based Micro-posts using Stream Reasoning 4 #MSM Workshop at ESWC 2011
5. Gathering microposts data
For now we’ve been crawling around
356,000,000 messages (5,300,000 messages / day)
1,100,000 users (14,000 users / day)
Making Sense of Location-based Micro-posts using Stream Reasoning 5 #MSM Workshop at ESWC 2011
6. Sentiment Analysis – high-level view
Sentiment analysis of microposts
Compute "quantitative" ratings for each POI
When possible, different ratings for different features of the POI
(e.g., in case of restaurants: taste, service, price, …)
Microposts about a specific Sentiment analysis Computed ratings
Point of Interest algorithm (e.g. for restaurants)
taste 7.8/10
service 4.2/10
price 6.0/10
Making Sense of Location-based Micro-posts using Stream Reasoning 6 #MSM Workshop at ESWC 2011
7. Sentiment Analysis – how it works
Micropost message
Precision tests:
Auto-generated
Yes Morphologically No rules ≈ 70%
Analyzable?
Manually-coded
rules ≈ 90%
Syllable kernel
≈ 50~60%
Rule based Analysis
Learned SVMs
documents
Auto generated rules Syllable Kernel
Our target > 85%
Reputations for each
feature
Making Sense of Location-based Micro-posts using Stream Reasoning 7 #MSM Workshop at ESWC 2011
8. Ontology modelling
twd:following twd:follower
sioc:UserAccount twd:TwitterUser
sioc:id(xsd:string) twd:screenName(xsd:string)
twd:post
twd:retweet
sioc:creator_of sioc:has_creator
twd:discuss
twd:reply
twd:Tweet
sioc:Post
twd:messageID(xsd:string)
sioc:content(xsd:string)
twd:messageTimeStamp(xsd:string) twd:talksAboutPositively
twd:talksAbout twd:talksAboutNeutrally
twd:talksAboutNegatively
geo:SpatialThing geo:NamedPlace
Making Sense of Location-based Micro-posts using Stream Reasoning 8 #MSM Workshop at ESWC 2011
9. Querying Microposts Dynamics with
Stream Reasoning and SPARQL with probabilities
% find people similar to me which are nearby in an interesting POI
SELECT ?poi1 ?user (f:similarWithProbability(ex:Alice, ?user) AS ?p)
% the user I'm looking for should be "similar" to me
FROM STREAM <http://bottari.kr/streamOftweets> [1h STEP 10m]
% from the stream of microposts of last 10 minutes
WHERE {
?user twd:post { twd:talksPositivelyAbout ?poi1 } .
% target user tweeted positively about a POI
?poi1 geo:lat ?lat1; geo:long ?long1 ; skos:subject ?category .
% this POI has a position and category
ex:Alice twd:post { twd:talksAbout ?poi2 } .
% current user tweeted about another POI (thus she's close to it)
?poi2 geo:lat ?lat2; geo:long ?long2 ; skos:subject ?category .
% the other POI is of the same category
FILTER( (?lat1-?lat2)<"0.1"^^xsd:float &&
(?lat1-?lat2)>"-0.1"^^xsd:float &&
(?long1-?long2)<"0.1"^^xsd:float &&
(?long1-?long2)>"-0.1"^^xsd:float )
% the target POI is close to the current user
}
ORDER BY DESC(?p)
LIMIT 10
Making Sense of Location-based Micro-posts using Stream Reasoning 9 #MSM Workshop at ESWC 2011
10. Thanks for your attention! Any question?
Making Sense of Location-based Micro-posts using Stream Reasoning
Paper Authors: Irene Celino, Daniele Dell'Aglio, Emanuele Della Valle,
Yi Huang, Tony Lee, Stanley Park and Volker Tresp
Contact: Irene Celino – Semantic Web Practice
CEFRIEL – ICT Institute, Politecnico di Milano
email: irene.celino@cefriel.it – web: http://swa.cefriel.it
personal website: http://iricelino.org
phone: +39-02-23954266 – fax: +39-02-23954466
slides available at: http://www.slideshare.net/iricelino
#MSM Making Sense of Microposts Workshop at ESWC 2011 – Heraklion, Crete, 30th May 2011