Fachprojekt 3 Spatial Data Mining unter Schutz der Privatsphäre Dr. Thomas Liebig - TU Dortmund @t_liebig www.thomas-liebig.eu [email protected] 2 Thomas Liebig @t_liebig TU Dortmund TU Dortmund, LS8: Künstliche Intelligenz • Anwendungsnahe Modellierung, Vorhersage, Klassifikation, Clusterung und Merkmalsextraktion von Daten und Prozessen ▫ ▫ ▫ ▫ ▫ unter Ressourcenbeschränkungen in Echtzeit mit heterogenen Datenquellen mit unstrukturierten Daten auf verschiedenen Architekturen (eingebettete Systeme, PC, Cluster, GPU) 3 Thomas Liebig @t_liebig TU Dortmund Ausgewählte Projekte & Tools am LS8 • Korpus-basierte linguistische Recherche und Analyse mit Hilfe von Data-Mining (KobRA) • Verfügbarkeit von Information www.rapid-i.com durch Analyse unter Ressourcenbeschränkung (SFB 876) • Intelligent Synthesis and Realtime Response using Massive Streaming of Heterogeneous Data http://www-ai.cs.uni-dortmund.de/SOFTWARE/streams/ INSIGHT 4 Thomas Liebig @t_liebig TU Dortmund Geo Referenzsysteme • WGS84 ▫ wird benutzt von GPS • Mercator System UTM http://www.cs.hs-rm.de/~linn/fachsem0809/GeoCoord/Geodaetische_Koordinatensysteme.pdf 5 Thomas Liebig @t_liebig TU Dortmund Spatial Data • Raster/Vektor Repräsentation • Attribute: ▫ Batch, ▫ Streams, ▫ Distributed • Speicher: ▫ Spatial RDBMS (PostGIS, Oracle Spatial, …), ▫ Moving Object Databases [Güting 2005] 6 Thomas Liebig @t_liebig TU Dortmund Spatial Data Protokolle/Schnittstellen • Definiert von Open Geographic Consortium (OGC) • Kartendienste ▫ Web Map Service (WMS) ▫ Web Feature Service (WFS) • Sensordaten ▫ Sensor Observation Service (SOS) • Austausch ▫ KML, GML ▫ CSV, Geo JSON, Geo PDF … ▫ Bild- und Videodateiformate 7 Thomas Liebig @t_liebig TU Dortmund Mobility, Data Mining and Privacy Kurzfassung: Mobility, Data Mining and Privacy: The GeoPKDD Paradigm http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.190.3 672&rep=rep1&type=pdf 8 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • • • • • • • • Tesselierung Usage Pattern Profiling, Muster Erkennung (Pattern Recognition) Trajektorien Simplifikation Raum-Zeitliche Vorhersage Self Localization and Mapping Map Matching Routing 9 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Tesselierung zB mit [Voronoi 1908] “Nouvelles applications des paramètres continus à la théorie des formes quadratiques. Deuxième mémoire. Recherches sur les parallélloèdres primitifs.,” Journal für die reine und angewandte Mathematik (Crelle's Journal), no. 134 (December 1908): 198–287, http ://dx.doi.org/10.1515/crll.1908.134.198. 10 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Pattern Mining zB mit Trajectory Pattern Mining [Giannotti et al. 07] https://dl.acm.org/citation.cfm?id=1281230 11 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Profiling, Muster Erkennung (Pattern Matching) zB mit Efficient Mobility Pattern Stream Matching on Mobile Devices [Florescu et al. 12] http://ceur-ws.org/Vol-960/paper5.pdf 12 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Trajektorien Simplifikation zB mit SimpliFly: A Methodology for Simplification and Thematic Enhancement of Trajectories [Vrotsou et al. 2014] http://www.computer.org/csdl/trans/tg/preprint/06851202.pdf 13 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Raum-Zeitliche Vorhersage: Kriging A Statistical Approach to Some Mine Valuation and Allied Problems on the Witwatersrand [Krige 51] Spatio-temporal random fields: compressible representation and distributed estimation [Piatkowski et al. 13] http://link.springer.com/article/10.1007%2Fs10994-013-5399-7 14 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Self Localization and Mapping zB mit Hector Open Source Modules for Autonomous Mapping and Navigation with Rescue Robots [Kohlbrecher et al. 2014] http://link.springer.com/chapte r/10.1007/978-3-662-444689_58 15 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Map Matching zB mit Map-Matching for LowSampling-Rate GPS Trajectories [Lou et al. 09] http://research.microsoft.com/pubs/105051/MapMatching%20for%20Low-SamplingRate%20GPS%20Trajectories-cameraReady.pdf 16 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Routing zB mit Contraction Hierarchies, Transfer Patterns Route Planning in Transportation Networks [Bast et al. 15] http://arxiv.org/pdf/1504.05140v1.pdf 17 Thomas Liebig @t_liebig TU Dortmund Methoden des Data Minings • Unüberwachtes Lernen ▫ Clustering, ▫ Frequent Pattern • Überwachtes Lernen ▫ Regression, Klassifikation 18 Thomas Liebig @t_liebig TU Dortmund Clustering • K-Means (Lloyd Algorithmus) 19 Thomas Liebig @t_liebig TU Dortmund Clustering • DBSCAN Martin Ester, Hans-Peter Kriegel, Jörg Sander, Xiaowei Xu: A density-based algorithm for discovering clusters in large spatial databases with noise. In: Evangelos Simoudis, Jiawei Han, Usama M. Fayyad (Hrsg.): Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD-96). AAAI Press, 1996, 20 Thomas Liebig @t_liebig TU Dortmund Frequent Pattern • Goethals, B. (2003). Survey on frequent pattern mining. Univ. of Helsinki. http://adrem.ua.ac.be/~goethals/software/survey.pdf 21 Thomas Liebig @t_liebig TU Dortmund Regression • Tobler's first law of geography “Everything is related to everything else, but near things are more related than distant things.“ W. Tobler, “A Computer Movie Simulating Urban Growth in the Detroit Region,” Economic Geography 46, no. 2 (1970): 234–240. • K-NN Altman, N. S. (1992). An introduction to kernel and nearest-neighbor nonparametric regression. The American Statistician, 46(3), 175-185. http://www.stat.washington.edu/courses/stat527/s13/readings/Altman_AmStat_1992.pdf 22 Thomas Liebig @t_liebig TU Dortmund Precision, Recall, F-Score 23 Thomas Liebig @t_liebig TU Dortmund Beispielhafte Aufgaben des SpatioTemporal Data Minings • Tesselierung - Clustering • Usage Pattern - Frequent pattern • Profiling, Muster Erkennung (Pattern Recognition) - Klassifikation • Trajektorien Simplifikation - Clustering • Raum-Zeitliche Vorhersage - Regression/Klassifikation • Self Localization and Mapping - Regression • Map Matching - Klassifikation • Routing - Optimierung 24 Thomas Liebig @t_liebig TU Dortmund Privacy Preserving Data Mining • Adversary Model: Corrupted Server Re-Identifizierung der Individuen Lösungsansätze: Dezentralisierung der Berechnung Anonyme Kommunikation (bei Mobilitätsdaten nicht ausreichend) Verrauschte Daten (Differential Privacy) Verschlüsselte Daten (Homomorphe Verschlüsselung) 25 Thomas Liebig @t_liebig TU Dortmund Beispiel: Zentrales Zählen 26 Thomas Liebig @t_liebig TU Dortmund Mittels Homomorpher Verschlüsselung • T. Liebig, Privacy Preserving Centralized Counting of Moving Objects, in AGILE 2015, F. Bacao, M. Y. Santos, and M. Painho, Eds., Springer International Publishing, 2015, pp. 91-103. 27 Thomas Liebig @t_liebig TU Dortmund Modulo (mod) a=b*c+r a mod c = r 28 Thomas Liebig @t_liebig TU Dortmund Rechnen auf Ringen (Zn,+,*) a+b mod n a*b mod n Es existiert Inverses b zu a in Ring m mit a*b = 1 mod m, wenn a und m co-prime ( ggT(a,m)=1 ) a ist Generator des Rings modulo m, wenn a^x mod m alle Zahlen des Rings generiert Bsp: 3^x mod 17 29 Thomas Liebig @t_liebig TU Dortmund Rechnen auf Ringen Komplizierte Operationen: • Logarithmus x^a=b mod m, für welches x? • Wurzel a^x=b mod m, für welches x? 30 Thomas Liebig @t_liebig TU Dortmund Rechnen auf Ringen Aber, Euler‘s Theorem: a^phi(m) =1 mod m, wenn a und m co-prime Und phi(p*q)=phi(p)*phi(q) phi(prime)=prime-1 31 Thomas Liebig @t_liebig TU Dortmund RSA KeyGen: 1. suche zwei Primzahlen p und q 2. n=p*q 3. Phi(n)=(p-1)(q-1) // Eulersche Phi Funktion 4. Suche a co-prime to n ggT(a,n)=1 es existiert b=a-1 in Ring modulo n Öffentlich: (a,n); Privat: b Enc(x): c=x^a mod n Dec(c): x=c^b mod n https://www.youtube.com/watch?v=wXB-V_Keiu8 32 Thomas Liebig @t_liebig TU Dortmund Erweiterter Euklidischer Algorithmus ggT(48,5) 48=9*5+3 5=1*3+2 3=1*2+1 2=2*1+0 1=3-1*2 1=3-1*(5-1*3) = 2*3 – 1*5 1=2*(48-9*5)-1*5 = 2*48-19*5 ggT(48,5)=1 -19*5 mod 48 =1 29*5 mod 48 =1 gcd 29 = 5-1 (48) 33 Thomas Liebig @t_liebig TU Dortmund Homomorphic Verschlüsselung • Pailliers Cryptosystem P. Paillier, (1999, January). Public-key cryptosystems based on composite degree residuosity classes. In Advances in cryptology— EUROCRYPT’99 (pp. 223-238). Springer Berlin Heidelberg. http://link.springer.com/chapter/10.1007%2F3-540-48910-X_16 Generiert Schlüsselpaar so, dass: Dec(Enc(x1)*Enc(x2))=x1+x2 34 Thomas Liebig @t_liebig TU Dortmund Implementation • Nützliche R Pakete require("combinat") # binomial coefficient require("pracma") # provides gcd() require("numbers") # provides isPrime() Sourcecode auf Fachprojekt Website • Java Libraries https://code.google.com/p/thep/ • Python … viele Implementierungen bei Google Suche 35 Thomas Liebig @t_liebig TU Dortmund Zusammenfassung • Grundlagen Spatio-Temporal Data Mining ▫ Referenzsysteme, Datenrepräsentationen ▫ Praktische Aufgaben der Raum-Zeitlichen Analyse ▫ Lernverfahren Überwachte Unüberwachte ▫ Schutz der Privatsphäre Adversary Model Methoden insb. Homomorphe Cryptographie 36 Thomas Liebig @t_liebig TU Dortmund Nächste Schritte • (Paper von Paillier lesen) • Für Methode des eigenen Papers nichtkryptographischen Algorithmus lesen • Für Programmiersprache entscheiden (Java, R, Python oder C++) • Algorithmus aus Paper Implementieren • Daten vorverarbeiten und Algorithmus anwenden 37 Thomas Liebig @t_liebig TU Dortmund Report/Präsentation 15‘ Motivation: • Anwendungsfrage Lernaufgabe • Adversary Model Erklärung der Lern Methode • Ohne Verschlüsselung • Mit Verschlüsselung Datensatz • Vorstellung ausgewählter Datensatz Analyse • Vergleich der Ergebnisse (Laufzeit, Accuracy, …) Diskussion der Analyse • Nachteile/Vorteile • … Ideen, Probleme, Lösungen 38 Thomas Liebig @t_liebig TU Dortmund Aufschrieb/Skript • T. Liebig, Analysis Methods and Privacy Aspects in Spatio-Temporal Data Mining, in AI: Philosophy, Geoinformatics and Law, M. Jankowska, M. Pawelczyk, S. Allouche, and M. Kulawiak, Eds., Warsaw: IUS PUBLICUM, 2015, p. (to appear). Direktlink • T. Liebig, Privacy Preserving Centralized Counting of Moving Objects, in AGILE 2015, F. Bacao, M. Y. Santos, and M. Painho, Eds., Springer International Publishing, 2015, pp. 91-103. Direktlink Cran R Implementation • I. Damgård, M Jurik, amd J. B. Nielsen, 2010. A generalization of Paillier’s public-key system with applications to electronic voting. International Journal of Information Security, 9(6), 371-385. Direktlink • P. Paillier, (1999, January). Public-key cryptosystems based on composite degree residuosity classes. In Advances in cryptology— EUROCRYPT’99 (pp. 223-238). Springer Berlin Heidelberg. Direktlink 39 Thomas Liebig @t_liebig TU Dortmund Ausgewählte Paper 1. 2. 3. 4. 5. 6. 7. C. B. Yildizli, T. Pedersen, Y. Saygin, E. Savas, and A. Levi. 2011. Distributed Privacy Preserving Clustering via Homomorphic Secret Sharing and Its Application to Vertically Partitioned Spatio-Temporal Data. Int. J. Data Warehous. Min. 7, 1 (January 2011), 46-66. Julian Meise S. V. Kaya, T. Pedersen, E. Savas, and Y. Saygin, 2007. Efficient privacy preserving distributed clustering based on secret sharing. In Emerging Technologies in Knowledge Discovery and Data Mining (pp. 280-291). Springer Berlin Heidelberg. Matthias Smoor M. C. Doganay, T. Pedersen, Y. Saygin, E. Savas, and A. Levi. 2008, March. Distributed privacy preserving kmeans clustering with additive secret sharing. In Proceedings of the 2008 international workshop on Privacy and anonymity in information society (pp. 3-11). ACM. Lucas Weiße J. Liu, J. Li, S. Xu, and B. C. Fung, 2015. Secure Outsourced Frequent Pattern Mining by Fully Homomorphic Encryption. In Big Data Analytics and Knowledge Discovery (pp. 70-81). Springer International Publishing. Raphael Krusenbaum Z. Zhou, L. Huang, Y. Wei, and Y. Yun. 2009, May. Privacy preserving outlier detection over vertically partitioned data. In E-Business and Information System Security, 2009. EBISS'09. International Conference on (pp. 1-5). IEEE. Kathrin Henkenherm D. Wu, and J. Haven, 2012. Using Homomorphic Encryption for Large Scale Statistical Analysis. Timo Diederich R. Bost, R. A. Popa, S. Tu, and S. Goldwasser, 2014. Machine learning classification over encrypted data. Crypto ePrint Archive. Sebastian Schröder Fachprojekt 3 Spatial Data Mining unter Schutz der Privatsphäre Dr. Thomas Liebig - TU Dortmund @t_liebig www.thomas-liebig.eu [email protected]