Warum Twitter?

Werbung
Institut für Informatik
Hauptseminar „Data Science“:
Mining Social Media
Hauptseminar SS 2015
Ansprechpartner:
Prof. Matthias Renz
Dr. Tobias Emrich
Johannes Niedermayer
Ablauf
Agenda
•
Einleitung
•
Seminarüberblick
• Ziele des Seminars
• Ablauf des Seminars
•
Mining Twitter
• Warum Twitter?
• Mögliche Fragestellungen
•
Grundlagen
• Twitter API
• Tools
•
Einteilung der Gruppen
MediaQ
Social Media
Internetbasierte Applikationen, die auf
dem Web 2.0 aufbauen und die
Erzeugung sowie den Austausch
nutzergenerierter Inhalte ermöglichen
Twitter
Twitter
•
Microblogging-Plattform
•
Kommunikation erfolgt über Tweets
•
•
•
•
Kurze Textnachrichten mit bis zu 140 Zeichen
Hashtags zur Kategorisierung
Möglichkeit der Einbindung von Bildern und Videos
Zusätzliche Anreichung mit Geoinformationen möglich
Literaturempfehlung: Kwak, Lee, Park, Moon: “What is Twitter, a Social Network or a News Media?“ (2010).
Ziele
Ziele
Entwicklung neuer Analysemethodiken für
Microblogging-Plattformen wie Twitter und Instagram
•
Einarbeitung in Fragestellungen des Themengebiets „Data Science“ mit
Konzentration auf Social Media Mining
•
Kreative Auseinandersetzung mit den gegebenen Daten
• Neue Fragestellungen zur Analyse von Social Media Daten entwickeln
• Ansprechende Visualisierung der Idee
•
Umsetzung der Ideen
• Implementierung
• Präsentation
Ablauf des Seminars
Ablauf des Seminars
•
1. Termin (Heute)
• Vorstellung der Thematik
• Einteilung der Gruppen
•
2. Termin (6. November 2015)
• Meilenstein: theoretische Auseinandersetzung abgeschlossen
• Paper-Präsentation (Theoretischer Teil)
• Vorstellung der Projektideen (Praktischer Teil)
•
3. Termin (4. Novemberwoche)
• Meilenstein: praktische Einarbeitung beendet
• Zwischenpräsentation des Projektes
• Diskussion der Zwischenergebnisse
•
4. Termin (5. Februar 2016)
• Meilenstein: Projekt abgeschlossen
• Abschlusspräsentation des Projektes
Ablauf: Theoretischer Teil
Ablauf: Theoretischer Teil
•
Einarbeitung in ein festgelegtes Themengebiet anhand eines
vorgegebenen Papers
•
Entwicklung von eigenen Applikationsideen
•
•
anhand der Publikation
•
anhand eigener Ideen
Präsentation der Ergebnisse im Seminar
•
15 Minuten Paper
•
5 Minuten eigene Projektideen
•
5 Minuten Diskussion
Ablauf: Praktischer Teil (Einarbeitung)
Ablauf: Praktischer Teil (Einarbeitung)
•
Einarbeitung in die Twitter- oder Instagram-API und Crawling der
benötigten Daten über die API
•
Detaillierte Auseinandersetzung mit den Daten inklusiver erster
Experimente - Realdaten sind schwierig: Vorverarbeitung ist kritisch!
Vertraulichkeit: Twitter Terms of Service beachten
•
Crawler wird bereit gestellt (Java)
•
Weiterentwicklung der Ideen
•
Skizzierung einer detaillierten Analysepipeline
•
Präsentation der Ergebnisse (~10 Minuten) und Diskussion mit den
Betreuern (~5 Minuten)
Ablauf: Praktischer Teil (Umsetzung)
Ablauf: Praktischer Teil (Umsetzung)
•
Implementierung des entwickelten Analyseverfahrens
•
Dokumentation der Applikation, sowie Beschreibung der
Softwarearchitektur und Algorithmen in einem Webdokument
•
Präsentation des Verfahrens und der Umsetzung im Seminar (~15
Minuten)
Ziele
Benotungskriterien
1. Einarbeitung in ein Themengebiet anhand eines vorgegebenen Papers
und Vortrag zu diesem Themengebiet
2. Entwicklung und Implementierung eines Analyseverfahrens
3. Dokumentation und Veröffentlichung des Verfahrens in Form eines
Webauftritts
4. Präsentation der Ergebnisse im Seminar
Es wird in Gruppen von 3 Personen gearbeitet.
Warum Twitter?
Geokoordinaten
Bilder
Retweets
Hashtags
Text
Follower
Links
API
Data Mining und Machine Learning
Techniken
•
Clustering
•
Outlier Detection (bzw. Trend Detection)
•
Regression
•
Klassifikation
•
Frequent Pattern Mining
•
Hot-Spot Detection
•
Graph Pattern Mining
•
Query Processing
•
…
Ziele
Mögliche Fragestellungen
Retweet Prediction: Wie groß ist für einen gegebenen Tweet die
Wahrscheinlichkeit eines Retweets?
Trend Analysis: Welche Begriffe sind aktuell im Trend?
#
Hashtag Prediction: Welche Hashtags bieten sich für einen
Tweet an?
Vergleich der Daten (Text, Geodaten, Bilder, Hashtags, …) von
Twitter und Instagram
Identifikation interessanter Orte (POIs)
?
Weitere innovative Ideen sind Willkommen!
MediaQ
Twitter API
•
Nach einer Registrierung ermöglicht Twitter den Datenzugriff über eine API
•
Streaming API ermöglicht Empfang eines Samples
•
Spezielle Anfragen an die Twitter-API (Begrenzt bzgl. Anzahl an Queries)
•
Implementierungen für eine Vielzahl von Programmiersprachen
•
Crawler wird bereit gestellt (Java)
•
Links:
•
API
http://dev.twitter.com/
•
Libraries:
http://dev.twitter.com/overview/api/twitter-libraries
Hardware
Hard- und Software (Auszug)
•
hekto.cip.ifi.lmu.de – 136 GB Arbeitsspeicher, 24 Kerne
•
deka.cip.ifi.lmu.de – 144 GB Arbeitsspeicher, 24 Kerne
•
cerboli.dbs.ifi.lmu.de – 32 GB Arbeitsspeicher, 12 Kerne, Tesla M2090 GPU
Nach Anmeldung!
•
https://wiki.cip.ifi.lmu.de/tiki-index.php?page=tiki-sge – Sun Grid
Engine des CIP-Pools
Texte
Arbeiten mit Texten
•
Tokenization: Splitten von einem Text
String in einzelne Worte/Tokens
•
Stopword Removal und Term
Weighting: Entfernung irrelevanter
Worte (der, die das, …)
•
Gewichtung von Worten nach
Informationsgehalt (TF/IDF)
•
Frameworks
• NLTK (Python) – Stemming, Stopwortlisten, Klassifikatoren, Sentiment Analysis
http://www.nltk.org/
• Lucene (Java) – Textsuchmaschine
http://lucene.apache.org
• OpenNLP (Java) – Natural Language Processing mit Java
https://opennlp.apache.org/
Bilder
Arbeiten mit Bildern
•
Mit Caffe (http://caffe.berkeleyvision.org/) können State-of-the-Art
Features aus Bildern extrahiert werden, die dann wie beliebige Vektordaten
verarbeitet werden können
•
OpenCV ermöglicht die Extraktion weiterer Features
•
theano, numpy und sklearn
eignen sich gut für Fragestellungen aus dem Bereich
Machine Learning (nicht nur für Bilder)
Social Graphs
Arbeiten mit sozialen Netzwerken
•
FlockDB (Graphdatenbank von Twitter)
https://github.com/twitter/flockdb
•
Neo4j (Graphdatenbank)
http://neo4j.com
•
Redis (NoSQL)
http://redis.io/
Geodaten
Arbeiten mit Geodaten
•
Lucene (Textsuchmaschine mit Spatial Tools)
http://lucene.apache.org
•
PostGIS (Geodatenbank)
http://postgis.net/
•
Weka (Data-Mining Framework)
http://www.cs.waikato.ac.nz/ml/weka/
•
Elki (Data-Mining Framework)
http://elki.dbs.ifi.lmu.de/
Ziele
Gruppeneinteilung
Austausch
Die-Informatiker Forum
Unter Hauptstudium -> DBS -> Hauptseminar „Data Science“ 2015
Gruppeneinteilung
Vortragsthemen (1)
1.
2.
3.
4.
5.
6.
7.
8.
9.
Georgiou, Agrawal, Abbadi GeoScope: Online Detection of Geo-Correlated
Information Trends in Social Networks. Topic: Trend Detection.
Cataldi, Di Caro, Schifanella: Emerging Topic Detection on Twitter based on
Temporal and Social Terms Evaluation. Tropic: Trend Detection.
Bakshy, Hofman, Mason, Watts: “Everyone’s an Influencer: Quantifying Influence on
Twitter” (2011). Topic: Twitter Analysis.
Pak, Paroubek: “Twitter as a Corpus for Sentiment Analysis and Opinion Mining”
(1010). Topic: Sentiment Analysis.
Wang, Wei, Liu, Zhou, Zhang: “Topic Sentiment Analysis in Twitter: A Graph-based
Hashtag Sentiment Classification Approach”. Topic: Graph Mining.
Bahmani, Chowdhury, Goel: “Fast Incremental and Personalized PageRank” (2010).
Topic: Social Network Analysis.
Lu, Chen, Kou: "Algorithms for spatial outlier detection„ (2003). Topic: Spatial Data
Analysis.
Krizhevsky, Sutskever, Hinton: “ImageNet Classification with Deep Convolutional
Neural Networks” (2012). Topic: Image Classification.
Castillo, Mendoza, Poblete: “Information Credibility on Twitter” (2011). Topic: Twitter
Analysis.
Hausaufgaben bis zum nächsten Mal…
•
Vertraut machen mit den Daten und Plattform
• API-Richtlinien lesen
• Twitter Entwickler-Konto anlegen
• Einfache Applikation zum Zugriff auf die Streaming-API
entwickeln
•
Präsentation Erstellen (Präsentationslänge ~20 Minuten)
• Inhalt des Papers (ca. 15 Minuten)
• Kreativer Teil (ca. 5 Minuten)
• Auswahl einer der zuvor erwähnten Analysen oder
Entwicklung einer neuen Fragestellung auf den Daten
von Twitter oder Instagram
• Anwendung und ggfs. Anpassung der Techniken des
Papers auf die ausgewählte Fragestellung
• Optional: Weitere Anwendungsideen unabhängig vom
Paper
Herunterladen