• Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
753
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
6
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Einführung in Data Science Joerg Blumtritt @jbenno @datarella 1
  • 2. Ziel • ... einen Überblick über das Berufsfeld "Data Science" zu geben, • ... in die Lage versetzen, sich selbst weiter zu informieren, • ... weitere Fortbildungen gezielt auszuwählen, • ... zu erkennen, wo sich Potenziale bei Kunden ergeben, die dann mit interner bzw. externer Unterstützung in Angebote übersetzt werden können. 2
  • 3. Agenda 1) Einführung in das Thema • Neue Paradigmen / Abgrenzung zu Statistik, Marktforschung und Business Intellgence • Data Science 101: 1. Daten erzeugen Sammeln 2. Daten ablegen / abrufen (=wiederfinden) 3. Daten bereinigen 4. Daten analysieren 5. Daten visualisieren 3
  • 4. Big Data Volume Velocity Variety Quanti fication Data Science
  • 5. Michele Banko und Eric Brill 2001: http://acl.ldc.upenn.edu/P/P01/P01-1005.pdf
  • 6. Data Science 6
  • 7. http://www.lehmanns.de/shop/mathematik-informatik/27078173-9781449361327-data-science-for-business 7
  • 8. Data Science http://drewconway.com/zia/2013/3/26/the-data-science-venn-diagram
  • 9. Data Scientists? http://www.forbes.com/sites/danwoods/2012/03/08/hilary-mason-what-is-a-data-scientist/
  • 10. Data Science 101 1. Daten erzeugen Sammeln 2. Daten ablegen / abrufen (=wiederfinden) 3. Daten bereinigen 4. Daten analysieren 5. Daten visualisieren 10
  • 11. 1. Daten erzeugen / Sammeln Marktforschung Data Science Daten erzeugen/sammeln Feld, Methode Parsing, Crawling, Scraping Datenquelle Tabellen, Feldberichte API, Corpus, "Heap", "Stream" Datenbeschreibung Codebuch Specs, N.N. Dienstleister Feldinstitut Data Broker 11
  • 12. 1. Daten erzeugen / Sammeln • Parsing: APIs • Autentifizierung (Token) • JSON • Crawling • HTTrack Website Copier • Simple Web Crawler in Python • Scraping 12
  • 13. API, Authentifizierung, Token https://api.foursquare.com/v2/users/jbenno/checkins?bef oreTimestamp=1338875927&oauth_token=F2THPP1YHU Y4YVZLJ0ORKX3TCEAM0OCKS3WEFWYBIJBCGRHB&v=201 30719 13
  • 14. API, Authentifizierung, Token https://api.foursquare.com/v2/users/jbenno/checkins?bef oreTimestamp=1338875927&oauth_token=F2THPP1YHU Y4YVZLJ0ORKX3TCEAM0OCKS3WEFWYBIJBCGRHB&v=201 30719 14
  • 15. 15 Quelle: https://dev.twitter.com/apps
  • 16. {"meta":{"code":200},"notifications":[{"type":"notificationTray","item":{"unreadCount":9}}],"res ponse":{"checkins":{"count":914,"items":[{"id":"51e51fb0498e5dc08f90263f","createdAt":1373 970352,"type":"checkin","timeZoneOffset":120,"venue":{"id":"4b977703f964a520da0435e3","n ame":"Bonn Hauptbahnhof","contact":{"twitter":"db_bahn"},"location":{"address":"Am Hauptbahnhof 1","lat":50.73212621273225,"lng":7.096948027610779,"postalCode":"53111","city":"Bonn","co untry":"Germany","cc":"DE"},"canonicalUrl":"https://foursquare.com/v/bonnhauptbahnhof/4b977703f964a520da0435e3","categories":[{"id":"4bf58dd8d48988d129951735 ","name":"Bahnhof","pluralName":"Bahnhöfe","shortName":"Bahnhof","icon":{"prefix":"https: //foursquare.com/img/categories_v2/travel/trainstation_","suffix":".png"},"primary":true}], "verified":true,"stats":{"checkinsCount":15804,"usersCount":3101,"tipCount":33},"likes":{"count ":16,"groups":[{"type":"others","count":16,"items":[]}],"summary":"16 Gefällt mir"},"like":false,"beenHere":{"count":4,"marked":false}},"likes":{"count":0,"groups":[]},"like":fal se,"photos":{"count":0,"items":[]},"posts":{"count":0,"textCount":0},"comments":{"count":0},"so urce":{"name":"foursquare for Android","url":"https://foursquare.com/download/#/android"}},{"id":"51e4edcc498eaecbe 717cb35","createdAt":1373957580,"type":"checkin","timeZoneOffset":120,"venue":{"id":"4b99 688cf964a520507935e3","name":"mD-Hotel Aigner","contact":{"phone":"0228604060","formattedPhone":"0228 604060"},"location":{"address":"Dorotheenstr. 12","lat":50.739016,"lng":7.095067,"city":"53111 Bonn","state":"NordrheinWestfalen","country":"Germany","cc":"DE"},"canonicalUrl":"https://foursquare.com/v/mdho telaigner/4b99688cf964a520507935e3","categories":[{"id":"4bf58dd8d48988d1fa931735","name 16 ":"Hotel","pluralName":"Hotels","shortName":"Hotel","icon":{"prefix":"https://foursquare.co
  • 17. 1 { 2 "items": [ 3 { 4 "id": "51e51fb0498e5dc08f90263f", 5 "createdAt": 1373970352, 6 "type": "checkin", 7 "timeZoneOffset": 120, 8 "venue": { 9 "id": "4b977703f964a520da0435e3", 10 "name": "Bonn Hauptbahnhof", 11 "contact": { 12 "twitter": "db_bahn" 13 }, 14 "location": { 15 "address": "Am Hauptbahnhof 1", 16 "lat": 50.73212621273225, 17 "lng": 7.096948027610779, 18 "postalCode": "53111", 19 "city": "Bonn", 20 "country": "Germany", 21 "cc": "DE" 22 }, 23 "canonicalUrl": "https://foursquare.com/v/bonnhauptbahnhof/4b977703f964a520da0435e3", 17 24 "categories": [
  • 18. Crawling • HTTrack Website Copier etc. • Simple Web Crawler in Python 18
  • 19. Scraping • Daten sammeln, die bereits optisch aufbereitet wurden und keine "Datenstruktur" mehr besitzen: • Tabellen, Charts • pdf • Websites 19
  • 20. Corpus • unbearbeitete Datengrundlage, häufig in Textformat: • eine Webpage • Wikipedia • Sammlung von Tweets zu einem bestimmten Thema, • Wahlprogramme der Parteien • Google ngram Corpus 20
  • 21. Stream • kontinuierlicher Datenfluss: • Tweets • Stromverbrauchsmessung durch Smart Meters • Sensordaten aus dem Bordcomputer eines KfZ • Verarbeitung muss in der Regel online erfolgen, d.h. eintreffende Daten werden sofort verarbeitet 21
  • 22. Spezifikationen • Daten sind oft nur sehr grob beschrieben, häufig gibt es überhaupt keine Dokumentation • Mit Versionswechsel der API ändert sich in der Regel auch das Datenformat der neuen Datensätze, ohne dass die Bestandsdaten transformiert werden • Datenformat, Toleranzen, Umgang mit fehlenden Werten etc. wird "durch Augenschein" erarbeitet 22
  • 23. Datenlieferanten 23
  • 24. 2. Daten ablegen / abrufen Marktforschung / Statistik Data Science Format Tabellen, RDBMS Dokumente, Dateien Konsistenz durch das Format Funktional Struktur Fälle, Datensätze Netzwerke, Graphen Datenhaltung lokal Cloud 24
  • 25. 2. Daten ablegen / abrufen • Unstrukturierte Datenablage • Konsistenzfunktion • Immutability • Document/Graph/Key-Value Store • Hash-Table, Bitmap-Index • Lambda-Architektur 25
  • 26. Unstrukturierte Datenablage • Datensätze werden als Text-Dateien direkt gespeichert 26
  • 27. 2. Daten ablegen / abrufen • Exkurs: • Virtuelle Maschine • Hadoop • Amazon S3/E2, Google BigQuery 27
  • 28. Virtuelle Maschinen 28 https://www.virtualbox.org/
  • 29. 29
  • 30. 30
  • 31. 31
  • 32. 32
  • 33. Cloudservices • Amazon • S3, EC2 33 • Google • Storage, BigQuery
  • 34. Konsistenzfunktion • Statt die Konsistenz der Daten schon in der Struktur festzulegen, wird eine Funktion definiert, die jeden Record nach den vorgegebenen Kriterien überprüft: function IsConsistent(Record, Schema) as Boolean 34
  • 35. Immutability Operation SQL Create Read (Retrieve) Update (Modify) Delete (Destroy) "mutable" 35 INSERT SELECT UPDATE DELETE "Each event happens at a particular time and is always true" • Just C+R; nothing gets ever "updated" • Records are stored as files. Each record is a new file. "immutable"
  • 36. Document/Graph/Key-Value Store • Dokumente werden geeignet indiziert • Meta-Daten werden in speziellen Formaten mitgeliefert (zB. MPEG7) • Wenn eine Key-Value-Struktur besteht, wird die Sturktur der JSON- oder XML-Dokumente in eine Art Tabellenform gebracht (Keys ~ Spalten, Values ~ Zellwerte) 36
  • 37. Hash-Table, Bitmap-Index • Hash-Table: aus den Werten wird über eine HashFunktion ein Index berechnet, der auf den Datensatz verweist • Bitmap-Index: Tabellenartige Struktur, bei der die Variablen (via Dummy-Variablen) in eine 0/1-Struktur gebracht werden 37
  • 38. Lambda-Architektur Data Stream Precomputed realtime view Query All Data 38 Precomputed View (Batch Mode)
  • 39. 3. Daten bereinigen • "Data munging" • "Pervasive Data Gremlins": • technisches Format: Endianness, Unicode-Table, OSVersion, Sonderzeichen und Steuerbefehle, etc. • inhaltlich: Fehlende Werte, Zeitzonen, Sommerzeit, Feiertage, Lables, Firmen/Konzernbezeichnung, Vorwahlen, "Höhe über N.N.", etc. • historisch: Formatwechsel ("Jahr 2000"), unterschiedliche Granularität, etc. 39
  • 40. 4. Daten analysieren Marktforschung / Statistik Data Science Tools SPSS und vergleichbare R, Python, div. Frameworks Vorgehen Stichprobenziehung Totalerhebung oder nicht-repräsentativ Mathematik Stochastik Algorithmen Ergebnis abgeschlossen iterativ 40
  • 41. 4. Daten analysieren • Agile Statistics • Statistische Verfahren • Machine Learning • Textanalyse • Geodaten • Netzwerkanalyse 41
  • 42. Agile Statistics • a/b-Test • Pivoting: • Evolutionäre Algorithmen, Jittering, Simulated Annealing • "Mechanical Turk" 42
  • 43. Statistische Verfahren • (kaum Testverfahren, hauptsächlich Vorhersagen) • Robuste Schätzer • Fouriertransformation, Wavelets • ARIMA 43
  • 44. Machine Learning • Supervised Learning (Entscheidungsalgorithmen) • Regression • Diskriminanzanalyse, Cluster mit vorgegebenen Zentroiden • Backpropagation (MLP) • Unsupervised (Dimensionsreduktion) • Clusteranalyse, k-Nächste Nachbarn, k-Means, DBSCAN • Hauptkomponentenanaylse, MDS • Autoencoder • Self Organizing Maps 44
  • 45. Mahout • Mahout currently has • Singular value decomposition • Collaborative Filtering • Parallel Frequent Pattern mining • User and Item based recommenders • K-Means, Fuzzy K-Means clustering • Mean Shift clustering • Dirichlet process clustering • Latent Dirichlet Allocation 45 • Complementary Naive Bayes classifier • Random forest decision tree based classifier • High performance java collections (previously colt collections)
  • 46. Textanalyse • Vorbereitung des Corpus • N-Gramme • Wortabstände • Textvergleiche: Cosinus-Vektor-Ähnlichkeit Textmining in R: z.B. das Paket "TM" 46
  • 47. Textanalyse Wort Aar Limburg 1 Aartalbahn Aartalhalle Abbild Abbildung aber Abgaben 1 2 7 1 abgegrenzten Abgeordnete 1 1 Abgeordneter abgerissen Abgerufen abgeschlossen abgetrennt Abitur 1 Abschluss Abschnitt 47 Abschnitten 1 2 1 Stockdorf Taunusstein 2 1 1 1 1 Cos(Taunusstein, Stockdorf) 0,75 Cos(Stockdorf, Limburg) 0,81 Cos(Taunusstein, Limburg) 0,76 3 3 1 1 2 1
  • 48. Netzwerkanalyse 48
  • 49. 49
  • 50. 50
  • 51. 51
  • 52. 5. Daten visualisieren D3 52
  • 53. 53
  • 54. 54
  • 55. STREETFIGHTING DATA SCIENCE 55
  • 56. Street Fighting Data Science • Umnutzen vorhandener Daten (Tweets -> Bewegungsgeschwindigkeit) • Umwidmen von Methoden (BioTech -> Sozialwissenschaften) • Agile Ad-hoc-Analysen • Improvisation http://en.wikipedia.org/wiki/File:Fightingmanstones.jpg
  • 57. Tools finden http://github.com 57
  • 58. N-Gramme Google Ngram Viewer http://books.google.com/ngrams + DB http://books.google.com/ngrams/datasets
  • 59. WordNet • WordNet: semantische und lexikalische Bedeutung von Wörtern • Daraus z.B. Wörter mit Stimmungen identifizierbar (WN Affect) WordNet http://wordnet.princeton.edu/ WordNet Affect http://wndomains.fbk.eu/wnaffect.html
  • 60. N-Gramme + WordNet • Emotionen im Zeitverlauf Acerbi et al 2013 http://www.plosone.org/article/info:doi/10.1371/journal.pone.0059030
  • 61. Food Pairings Ahn et al 2011 http://www.nature.com/srep/2011/111215/srep00196/full/srep00196.html
  • 62. Food Pairings Ahn et al 2011 http://www.nature.com/srep/2011/111215/srep00196/full/srep00196.html
  • 63. Food Pairings Ahn et al 2011 http://www.nature.com/srep/2011/111215/srep00196/full/srep00196.html
  • 64. Google Correlate Google Correlate www.google.com/trends/correlate
  • 65. Funnel Plots http://www.cochrane-net.org/openlearning/html/mod15-3.htm
  • 66. Twitter Tags http://mashe.hawksey.info/2013/02/twitter-archive-tagsv5/ Item id_str from_user text Value 356092702800105000 winedanddined Picking up an orange wine (Arboreus) (@ Italian Wine Merchants) [pic]: http://t.co/u0xcPXTTSP Sat Jul 13 16:48:10 +0000 2013 13/07/2013 17:48:10 loc: 40.73580099,-73.98906051 en created_at time geo_coordinates user_lang in_reply_to_user_id_str in_reply_to_screen_nam from_user_id_str 18657048 in_reply_to_status_id_st source <a href="http://foursquare.com" rel="nofollow">foursquare</a> profile_image_url http://a0.twimg.com/profile_images/716129754/jump_normal.jpg user_followers_count 6925 user_friends_count 2754 user_utc_offset -18000 status_url http://twitter.com/winedanddined/statuses/356092702800105472 66 entities_str {"symbols":[],"urls":[{"expanded_url":"http://4sq.com/15qYMPc","indices
  • 67. NodeXL – Netzwerk-Analyse NodeXL http://nodexl.codeplex.com/
  • 68. Flickr für Touristen Eric Fischer „See something or say something“http://www.flickr.com/photos/walkingsf/5935471000/in/set72157627140310742 and „Locals and Tourists“http://www.flickr.com/photos/walkingsf/4671578001/in/set72157624209158632
  • 69. OpenPaths 69 http://openpaths.cc
  • 70. Weather Signal 70
  • 71. funf.org 71
  • 72. Verhalten analysieren: • Targeting-Daten > Verhaltensbeobachtung im Web • Moblie Tracking > Verhaltensbeobachtung im "Meatspace" • Situatives Einfragen • Interaktion 72
  • 73. QUANTIFY & ASK = EXPLORE APP Start Screen 73 Diary Heat Map
  • 74. Noch ein paar Links: http://twitter.com/jbenno/bigdata http://strataconf.com/ http://www.r-bloggers.com/ http://oreilly.com/ http://iognos.com/blog-3/ 74
  • 75. Joerg Blumtritt @jbenno Datarella GmbH Oskar-von-Miller-Ring 36 80333 München 089/44 23 69 99 info@datarella.com