Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Σωτήρης Μπέης

56 views

Published on

Ομαδοποίηση Εξελισσόμενων Κοινωνικών Δικτύων με Χρήση Τεχνικών Ανίχνευσης Κοινοτήτων

Published in: Software
  • Be the first to comment

  • Be the first to like this

Σωτήρης Μπέης

  1. 1. Ομαδοποίηση Εξελισσομένων Κοινωνικών Δικτύων με Χρήση Ανίχνευσης Κοινοτήτων Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών (ΕΠΥ) Παρουσίαση Διπλωματικής Εργασίας Μπέης Σωτήρης Επιβλέπων: Ανδρέας Συμεωνίδης, Επίκουρος Καθηγητής Συνεπιβλέπων: Συμεών Παπαδόπουλος, Μεταδιδακτορικός Ερευνητής
  2. 2. Διάρθρωση Παρουσίασης
  3. 3. Εισαγωγή
  4. 4. Συστήματα Κοινωνικής Επισήμανσης (Social Tagging Systems) Δίνουν της δυνατότητα στους χρήστες: • Να μοιράζονται ποικίλου περιεχομένου δεδομένα, όπως φωτογραφίες, βίντεο, επισημάνσεις (bookmarks) • Να αλληλεπιδρούν με τα δεδομένα μέσω του σχολιασμού της αξιολόγησης ή της προθήκης ετικετών (tags) Χαρακτηρίζονται από: • Μεγάλο όγκο δεδομένων • Θόρυβο • Δυναμικότητα Αντικείμενο Διπλωματικής (1)
  5. 5. Αντικείμενο Διπλωματικής (2) Μέχρι πρότινος Χρήση Στατικών Γράφων Οργάνωση των δεδομένων Τα τελευταία χρόνια Χρήση Εξελισσόμενων Γράφων Οργάνωση δεδομένων και Παρακολούθηση της εξέλιξής τους
  6. 6. Αντικείμενο Διπλωματικής (3) Οι μέθοδοι Ανίχνευσης Κοινοτήτων σε Εξελισσόμενους Γράφους χρησιμοποιούνται πέρα από την Ανίχνευση Κοινοτήτων για την αναγνώριση: • Τάσεων που επικρατούν σε ένα Κοινωνικό Δίκτυο • Ανωμαλιών στην εξέλιξη ενός Κοινωνικού Δικτύου
  7. 7. Βιβλιογραφία
  8. 8. Αναπαράσταση Δυναμικών Γράφων
  9. 9. Μεταβολές του Δυναμικού Γράφου Μεταβολές που σχετίζονται με τη δομή των κοινοτήτων Μεγέθυνση 1) Διατήρηση Κοινότητας Ωρίμανση 2) Αφανισμός Κοινότητας Συρρίκνωση 3) Ανάδυση Κοινότητας 3) Συγχώνευση Κοινότητας 4) Διάσπαση Κοινότητας Μεταβολές που σχετίζονται με τη δομή του γράφου 1) Προσθήκη/Διαγραφή Κόμβων 2) Προσθήκη/Διαγραφή Ακμών
  10. 10. Κατηγορίες Μεθόδων • Διαδοχική Ομαδοποίηση • Εξελικτική Ομαδοποίηση • Ανίχνευση Οροσήμου • Αλγόριθμοι Άμεσης Απόκρισης
  11. 11. Εξεταζόμενη Μέθοδος
  12. 12. Ο Αλγόριθμος GraphScope Έχοντας δεδομένη μια αλληλουχία διμερών γράφων G1, G2, … Gt ο αλγόριθμος στοχεύει: 1. να ομαδοποιήσει τα στιγμιότυπα σε τμήματα γράφων G(1), G(2), … 2. για κάθε τμήμα να ανιχνεύσει τις κατατμήσεις προέλευσης και προορισμού 3. να επιτύχει όλα τα παραπάνω χωρίς τη ρύθμιση παραμέτρων από το χρήστη G(1) G(2) time
  13. 13. Περιγραφή Συνάρτησης Κόστους 13 t = 0 t = 1 t = 2
  14. 14. Περιγραφή Συνάρτησης Κόστους 14 n1 n2 n3 k=3κατατμήσειςπροέλευσης d Διάρκεια Τμήματος log dnimj i,j d nimj H(pi,j) Πυκνότητα των ακμών (άσσων) d n1m2 H(p1,2) bits for (1,2) Κόστος Δεδομένων bits total i,j + Κόστος Περιγραφής + + log* d log* k + log* l
  15. 15. Ανίχνευση Κατατμήσεων Ανίχνευση Βέλτιστων Κατατμήσεων: • split, merge των κατατμήσεων • regroup των κόμβων Αρχικοποίηση τμήματος: • resume • fresh start k = 5, ℓ = 5
  16. 16. Ανίχνευση Οροσήμου Ανίχνευση Οροσήμου: 16 1: συγχώνευση 2: νέο τμήμα
  17. 17. Περιορισμοί Αλγορίθμου Αδυναμία ανίχνευσης κοινοτήτων σε γράφους που χαρακτηρίζονται από: • Συμμετρική δομή κοινοτήτων • Μηδενικό θόρυβο εντός των κοινοτήτων • Μηδενικό θόρυβο εκτός των κοινοτήτων iℓ [niH(pi,qi)]d Αριθμός ακμών της i στήλης Πυκνότητα ακμών της i στήλης Πυκνότητα ακμών της i κατάτμησης
  18. 18. Πειράματα - Συμπεράσματα
  19. 19. Αξιολόγηση Ανίχνευσης Κοινοτήτων Με χρήση μέτρου ομοιότητας: Υπολογισμός Normalized Mutual Information (NMI) για την σύγκριση των κοινοτήτων που ανίχνευσε ο αλγόριθμος με τις ‘’σωστές’’. • Απαραίτητη η γνώση της ‘’σωστής’’ δομής των κοινοτήτων (ground truth) • Κατάλληλο για αξιολόγηση ομάδων από συνθετικούς γράφους Με χρήση στατιστικής μεθόδου: Δημιουργία δύο κατανομών που αντιστοιχούν στις συνάφεια των κόμβων που βρίσκονται στην ίδια κοινότητα και αυτών που βρίσκονται σε διαφορετική • Δεν είναι απαραίτητη η γνώση της σωστής δομής των κοινοτήτων • Κατάλληλο για αξιολόγηση ομάδων πραγματικών δεδομένων (π.χ. ετικετών)
  20. 20. Αξιολόγηση Ομάδων Ετικετών Για την αξιολόγηση των ομάδων ετικετών γίνεται χρήση του Normalized Google Distance (NGD): Ακολουθείται η εξής διαδικασία: 1. Χρησιμοποιώντας το NGD (Normalized Google Distance) υπολογίζουμε δύο κατανομές: - Fsame, NGD μεταξύ ετικετών της ίδιας κοινότητας - Fdiff, NGD μεταξύ ετικετών διαφορετικής κοινότητας 2. Χρήση Kolmogorov-Smirnov τεστ για τη σύγκριση των δύο κατανομών - Ελέγχεται η μηδενική υπόθεση Fsame = Fdiff - Εναλλακτική υπόθεση Fsame < Fdiff Αποδεκτό επίπεδο σημαντικότητας (pvalue) κατά τo οποίο απορρίπτεται η μηδενική υπόθεση < 0.1
  21. 21. Αξιολόγηση Ανίχνευσης Οροσήμου • Για τον υπολογισμό της ομοιότητας των διαδοχικών κατατμήσεων κάνουμε χρήση του NMI • Για τον υπολογισμό της ομοιότητας των διαδοχικών στιγμιοτύπων του γράφου κάνουμε χρήση του NS Το εύρος του NS παίρνει είναι [-1,1]. - Αρνητικές τιμές NS μεταφράζονται συγχώνευση τους νέου στιγμιοτύπου με το προηγούμενο τμήμα -Θετικές τιμές NS μεταφράζονται σε δημιουργία νέου τμήματος • Συγκρίνουμε την ομοιότητα των διαδοχικών κατατμήσεων με τα διαδοχικά στιγμιότυπα του γράφου
  22. 22. Περιγραφή Στατικών Γράφων Αναφοράς Στατικοί Γράφοι Αναφοράς Υλοποιήθηκαν τρεις μέθοδοι για την παραγωγή στατικών γράφων αναφοράς οι οποίες διακρίνονται ως προς την συμμετρία των γράφων που παράγουν: • Static Benchmark 1, Πλήρης Συμμετρία • Static Benchmark 2, Ασυμμετρία Κοινοτήτων • Static Benchmark 3, Πλήρης Ασυμμετρία
  23. 23. Αποτελέσματα Στατικών Γράφων Αναφοράς (1) 0 0.2 0.4 0.6 0.8 1 1.2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 SourcePartitionsNMI pOut entropy cost gini cost 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 SourcePartitionsNMI pOut entropy cost gini cost 1,000 κόμβοι, 10 κοινότητες SB2 (Απόλυτη Συμμετρία) 1,000 κόμβοι, 20 κοινότητες
  24. 24. Αποτελέσματα Στατικών Γράφων Αναφοράς (2) 0 0.2 0.4 0.6 0.8 1 1.2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 SourcePartitionsNMI pOut entropy cost gini cost 0 0.2 0.4 0.6 0.8 1 1.2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 DestinationPartitionsNMI pOut entropy cost gini cost SB2 (Ασυμμετρία Κοινοτήτων) SB3 (Απόλυτη Ασυμμετρία) 500 κόμβοι, 5κοινότητες 500 κόμβοι, 5 κοινότητες
  25. 25. Περιγραφή Δυναμικών Γράφων Αναφοράς Δυναμικοί Γράφοι Αναφοράς Χρησιμοποιήθηκαν τα τέσσερα συνθετικά σύνολα δεδομένων που παρουσιάζονται στην εργασία [Greene + 2011], τα οποία: • Αποτελούνται από πέντε στιγμιότυπα γράφων • Κάθε στιγμιότυπο αποτελείται από 1,500 κόμβους προέλευσης και 1,000 κόμβους προορισμού οι οποίο ανήκουν σε οχτώ ενσωματωμένες κοινότητες. • Οι κοινότητες μεταβάλλονται σε κάθε χρονικό βήμα, αφού οι κόμβοι αλλάζουν κοινότητα σύμφωνα με κάποια πιθανότητα (Pswap = 0.1, 0.2, 0.3, 0.4).
  26. 26. Αποτελέσματα Δυναμικών Γράφων Αναφοράς (1) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 1 2 3 4 5 SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.2 0.4 0.6 0.8 1 1.2 1 2 3 4 5 Seq.SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 3 4 5 SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 1 2 3 4 5 Seq.SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) Σύγκρισηκατατμήσεων μεgroundtruth Σύγκρισηδιαδοχικών κατατμήσεων pswap = 0.1 pswap = 0.2
  27. 27. Αποτελέσματα Δυναμικών Γράφων Αναφοράς (2) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 3 4 5 SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 1 2 3 4 5 Seq.SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 3 4 5 SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 1 2 3 4 5 Seq.SourcePartitionsNMI time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) Σύγκρισηκατατμήσεων μεgroundtruth Σύγκρισηδιαδοχικών κατατμήσεων pswap = 0.3 pswap = 0.4
  28. 28. Αποτελέσματα Δυναμικών Γράφων Αναφοράς (3) 22 24 26 28 30 32 34 1 2 3 4 5 time,ln(nsec) time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 22 24 26 28 30 32 34 1 2 3 4 5 time,ln(nsec) time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 27 27.5 28 28.5 29 29.5 30 30.5 31 31.5 32 1 2 3 4 5 time,ln(nsec) time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) 26.5 27 27.5 28 28.5 29 29.5 30 30.5 31 31.5 32 1 2 3 4 5 time,ln(nsec) time step entropy (resume) entropy (freshStart) gini (resume) gini (freshStart) pswap = 0.1 pswap = 0.3 pswap = 0.2 pswap = 0.4
  29. 29. Περιγραφή Πραγματικού Κοινωνικού Γράφου Διαδικασία Κατασκευής Κοινωνικού Δυναμικού Γράφου 1. Κατασκευή Dataset: Κατασκευή συνόλου δεδομένων που καταγράφει τη δραστηριότητα στη εφαρμογή Delicious τη θερινή περίοδο του 2006 2. Διαχωρισμός σε χρονικά βήματα: Χωρίζουμε το σύνολο δεδομένων ανά εβδομάδα σε 12 υποσύνολα που αντιστοιχούν στα στιγμιότυπα του γράφου 3. Φιλτράρισμα: Μετράμε τις 3,000 πιο συχνά εμφανιζόμενες επισημάνσεις και τις 1,500 ετικέτες στο συνολικό σύνολο δεδομένων 4. Κατασκευή δυναμικού γράφου: Κατασκευάζουμε τα στιγμιότυπα των διμερών γράφων που αντιστοιχούν σε κάθε εβδομάδα και αντικατοπτρίζουν τις συσχετίσεις μεταξύ επισημάνσεων και ετικετών
  30. 30. Κατανομή της εξέλιξης των κατατμήσεων 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 1 2 3 4 5 6 7 8 9 10 11 12 tagpartitionssize Week Partition 1 Partition 2 Partition 3 Partition 4 Partition 5 Partition 6 Partition 7 Partition 8 Partition 9 Partition 10 Partition 11 Partition 12 Partition 13 Partition 14 Partition 15 Partition 16 Partition 17 Partition 18 Partition 19 Partition 20 Partition 21 Partition 22 Partition 23 Partition 24 Partition 25 Partition 26 Partition 27 Partition 28 Partition 29 Partition 30 Partition 31 Partition 32 Partition 33 Partition 34 Partition 35 Partition 36 Partition 37 Partition 38 Partition 39 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 1 2 3 4 5 6 7 8 9 10 11 12 bookmarkpartitionssize Week Partition 1 Partition 2 Partition 3 Partition 4 Partition 5 Partition 6 Partition 7 Partition 8 Partition 9 Partition 10 Partition 11 Partition 12 Partition 13 Partition 14 Partition 15 Partition 16 Partition 17 Partition 18 Partition 19 Partition 20 Partition 21 Partition 22 Partition 23 Partition 24
  31. 31. Κατατμήσεις Επισημάνσεων Επισημάνσεις Θέμα Κατάτμησης docstoc.com, readwriteweb.com, lifehacker.com, wakeuplater.com, thinkvitamin.com, best4c.com, wikihow.com, webworkerdaily.com, techcrunch.com, slideshare.net, blog.del.icio.us, mashable.com Tips / How To rsizr.com, scribd.com, slideshare.net, smashingmagazine.com, flickr.com, zamzar.com, go2web20.net, facebook.com, zoho.com, exploratree.org.uk, jingproject.com, netvibes.com, visuwords.com Online Tools / Services dailyapps.net, completorrent.com, oldapps.com, googlepirate.com opensourcemac.org, pendrivelinux.com, lifehacker.com/software, symphony.lotus.com/software, virtualbox.org, converttube.com Opensource Software ui.jquery.com, cssglobe.com, code.google.com, jquery.com, miniajax.com, codinghorror.com, webdesignerwall.com, drupal.org, phpform.org, script.aculo.us, w3schools.com, ajaxload.info, w3.org Web Develompent
  32. 32. Κατατμήσεις Ετικετών Ετικέτες Θέμα Κατάτμησης p-Value photoshop, illustration, portfolio, typography, fonts, pictures, flickr, color, icons, graphic, stock, adobe, picture, illustrator, fotografia, foto, fotos Photography 0.1 fashion, 3d, comics, clothing, artist, gifts, humour, arte, drawing, weird, craft, comedy, artsidea, amazing, magazines, experimental Art << 0.1 religion, courses, philosophy, physics, algorithms, sociology, lectures, biology, linguistics, astronomy, university, mathematics, theory Courses 0.1 c#, eclipse, oracle, joomla, django, latex, rest, greasemonkey, dotnet, j2ee, json, erlang, uml, sqlserver, deployment, cakephp, regex, cheat Programming 0.6 ruby, rails, plugin, performance, dhtml, js, xml, rubyonrails, cms, developer, mysql, plugins, template, accessibility, prototype, script Web Develompent < 0.1
  33. 33. Εξέλιξη Γράφου -1.5 -1 -0.5 0 0.5 1 1.5 1 2 3 4 5 6 7 8 9 10 11 12 Seq.PartitionNMI Week bookmarks tags Normalized Similarity
  34. 34. Συμπεράσματα • Ο εξεταζόμενος αλγόριθμος επιτυγχάνει υψηλές επιδόσεις ακόμα και σε υψηλά επίπεδα θορύβου • Για να ανιχνευθεί ορόσημο πρέπει τουλάχιστον το 20% των κόμβων του γράφου να έχουν αλλάξει κοινότητα • Η αρχικοποίηση με την προσέγγιση resume υπερισχύει της προσέγγισης fresh start. • Η τροποποίηση με του κόστους με την μετρική gini απορρίπτεται • Αδυναμία αλγορίθμου να ανιχνεύσει τις ‘’σωστές’’ κοινότητες όταν ο γράφος χαρακτηρίζεται από συμμετρική δομή και μηδενικό θόρυβο
  35. 35. Μελλοντική Επεκτάσεις • Εφαρμογή σε δυναμικούς γράφους μεγαλύτερης κλίμακας (<10,000 κόμβους) • Επέκταση του αλγορίθμου έτσι ώστε να μπορεί να αναλύει γράφους με βάρη • Τροποποίηση του αλγορίθμου έτσι ώστε να μπορεί να αναλύει μονομερείς γράφους • Εφαρμογή σε άλλα Κοινωνικά Δίκτυα (Twitter, Flickr)
  36. 36. Ευχαριστίες κ. Ανδρέα Συμεωνίδη κ. Συμεών Παπαδόπουλο
  37. 37. Ερωτήσεις

×