Successfully reported this slideshow.
Your SlideShare is downloading. ×

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

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

Download to read offline

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

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

More Related Content

More from ISSEL

Related Books

Free with a 30 day trial from Scribd

See all

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

  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. Ερωτήσεις

Editor's Notes

  • Τα τελευταία χρόνια, η εμφάνιση του Web 2.0 εισήγαγε νέες τεχνολογίες στις οποίες η οργάνωση της γνώσης προσέλαβε περισσότερο κοινωνικό χαρακτήρα, με την έννοια ότι ο ρόλος των χρηστών είναι πλέον περισσότερο ενεργός. Αυτές οι τεχνολογίες οδήγησαν στη δημιουργία Συστημάτων Κοινωνικής Επισήμανσης (Social Tagging Systems), τα οποία ανήκουν στην ευρύτερη κατηγορία των Κοινωνικών Δικτύων[1]. Χάρη σε αυτά οι χρήστες (users) έχουν τη δυνατότητα [2] να μοιράζονται ποικίλου περιεχομένου δεδομένα, όπως φωτογραφίες ή βίντεο και να αλληλεπιδρούν με αυτά μέσω του σχολιασμού, της αξιολόγησης ή της προσθήκης ετικετών. Να σημειώσουμε ότι οι ετικέτες αποτελούνται από λέξεις-κλειδιά που και ορίζουν μια σύντομη περιγραφή του περιεχομένου. Επιπλέον τα συστήματα αυτά χαρακτηρίζονται από μεγάλο όγκο δεδομένων, θόρυβο αλλά και δυναμικότητα καθώς προσθέτονται συνεχώς νέα δεδομένα. Τυπικά παραδείγματα τέτοιων συστημάτων αποτελούν το youtube, flickr και delicious [4].

    Αναλυτικότερα, το Delicious με το οποίο θα ασχοληθούμε και στη συνέχεια αποτελεί έναν από του μεγαλύτερους διαδικτυακούς τόπους αποθήκευσης και διαμοιρασμού υπερσυνδέσμων. Οι χρήστες που χρησιμοποιούν τη συγκεκριμένη εφαρμογή έχουν τη δυνατότητα να συλλέγουν και να περιγράφουν με ετικέτες υπερσυνδέσμους προς διαδικτυακές πηγές. Σύμφωνα με τις πιο πρόσφατες μετρήσεις αριθμεί 5 εκατομμύρια χρήστες και πάνω από 180 εκατομμύρια υπερσυνδέσμους, πολλοί από τους οποίους όμως έχουν spam. Τέλος, αξίζει να σημειώσουμε ότι παρότι το Delicious αποτελεί μια από τις μεγαλύτερες βιβλιοθήκες υπερσυνδέσμων, αυξάνεται συνεχώς και με γρήγορο ρυθμό.

    Ο όγκος των δεδομένων, όπως είναι κατανοητό είνα ιεξαιρετικά μεγάλος, κάτι το οποίο καθιστά επιτακτική την ανάγκη μονοντελοποίησης τους με σκοπό την οργάνωση και περαιτέρω ανάλυση.
  • Για την μοντελοποίηση τέτοιων συστημάτων μέχρι πρότινος γινόταν χρήσης στατικών γράφων, οι οποίοι προσφέρουν τη δυνατότητα αναπαράστασης του δικτύου με άμεσα και κατανοητά οπτικά μέσα, αλλά και την δυνατότητα εξαγωγής χρήσιμης πληροφορίας. Η ανάλυση τους επιτυγχάνεται με χρήση μεθόδων ανίχνευσης κοινοτήτων σε στατικούς γράφους, οι οποίοι επιλύουν το πρόβλημα της οργάνωσης των δεδομένων μέσω τις εύρεσης ομάδων κόμβων που παρουσιάζουν μεγαλύτερη συνδεσιμότητα μεταξύ τους παρά με άλλους κόμβους του δικτύου. Οι συγκεκριμένες ομάδες έχουν καθιερωθεί στη βιβλιογραφία ως κοινότητες. Παρόλα αυτά αδυνατούν να αντιμετωπίσουν την δυναμικότητα των δικτύων. Για αυτό το λόγω, τα τελευταία χρόνια έχουν προταθεί οι Εξελισσόμενοι ή Δυναμικού Γράφοι για την αναπαράσταση των οντοτήτων ενός δυναμικού δικτύου. Η ανάλυσή τους επιτυγχάνεται με την εφαρμογή μεθόδων Ανίχνευσης Κοινοτήτων σε Εξελισσόμενους Γράφους οι οποίοι παράλληλα με το πρόβλημα ανίχνευσης κοινοτήτων επιλύουν και το πρόβλημα παρακολούθησης της εξέλιξης του δυναμικού γράφου και κατ’ επέκταση των κοινοτήτων του. Έτσι μπορούμε να ορίσουμε κάποια πρότυπα εξέλιξης του δικτύου μέσω των οποίων οδηγούμαστε σε πολύ χρήσιμα συμπεράσματα.

    [ΠΡΟΣΘΗΚΗ ΕΙΚΟΝΩΝ ΣΤΑΤΙΚΩΝ ΜΟΝΟΜΕΡΩΝ ΚΑΙ ΔΙΜΕΡΩΝ ΓΡΑΦΩΝ ΚΑΙ ΕΞΕΛΙΣΣΟΜΕΝΩΝ]
  • Κάποιες από τις κυριότητες εφαρμογές των μεθόδων ανίχνευσης κοινοτήτων σε εξελισσόμενους γράφους πέρα από την ανίχνευση κοινοτήτων είναι η αναγνώριση των τάσεων που επικρατούν σε ένα κοινωνικό δίκτυο κάθε χρονική στιγμή που εξετάζουμε, καθώς και η αγνώριστη ανωμαλιών σε ένα δίκτυο κάτι το οποίο σηματοδοτεί ένα σημαντικό γεγονός. Ένα τυπικό παράδειγμα φαίνεται στην εικόνα όπου απεικονίζεται ένα δυναμικός γράφος ο οποίος αποτελείται από πέντε διαδοχικά στιγμιότυπα. Ο γράφος αντικατοπτρίζει τις συσχετίσεις μεταξύ πελατών και προϊόντων. Όπως παρατηρούμε στο τελευταίο στιγμιότυπο παρατηρείται μια ανωμαλία στην εξέλιξη του δικτύου, λόγω της απότομης αύξησης της πυκνότητας των ακμών. Το συγκεκριμένο γεγονός σηματοδοτεί την αναγνώριση ενός σημαντικού γεγονότος (π.χ. Διακοπές Χριστουγέννων όπου οι αγορές παρουσιάζουν αύξηση επομένων οι συσχετίσεις των προϊόντων και των πελατών θα παρουσιάζουν μεγαλύτερη πυκνότητα).
  • Στην συνέχεια θα προχωρήσουμε στην περιγραφή της βιβλιογραφικής έρευνας που έγινε περιγράφοντας τις σημαντικότερες πτυχές τους ερευνητικού πεδίου που αφορά τους εξελισσόμενους γράφους. Πιο συγκεκριμένα περιγράφουμε τις σημαντικότερες μεταβολές που συμβαίνουν κατά την εξέλιξη ενός γράφου, καθώς και τις κατηγορίες μεθόδων ανίχνευσης κοινοτήτων σε εξελισσόμενους γράφους.
  • Αρχικά, θα περιγράψουμε τις κυριότερες μεταβολές που μπορεί να υποστεί ένας δυναμικός γράφος. Αυτές χωρίζονται σε δύο μεγάλες κατηγορίες: (1) Μεταβολές που σχετίζονται με τη δομή των κοινοτήτων και (2) Μεταβολές που σχετίζονται με τη δομή του γράφου. Όσον αφορά τη δομή των κοινοτήτων διακρίνουμε τις εξής μεταβολές: (1) Η κοινότητα διατηρείται, (2) Η κοινότητα αφανίζεται, (3) Η κοινότητα αναδύεται, (4) Η κοινότητα συγχωνεύεται και (5) Η κοινότητα διασπάται. Από την άλλη οι πιθανές μεταβολές στην δομή του γράφου είναι: (1) Προσθήκη/Διαγραφή Κόμβων και (2) Προσθήκη/Διαγραφή Ακμών.

    Αναλυτικότερα, μια κοινότητα θεωρούμε ότι διατηρείται όταν εμφανίζεται σε ένα συνεκτική σε ένα μεγάλο μέρος της εξέλιξης του δυναμικού γράφου. Σημειώνεται ότι τα χρονικά βήματα στα οποία εμφανίζεται η κοινότητα δεν είναι απαραίτητο να είναι διαδοχικά. Κατά τη διατήρηση μια κοινότητας αν αυξάνεται σε αριθμό σε αριθμό μελών παρατηρείται το φαινόμενο της μεγέθυνσης, ενώ αν μειώνεται παρατηρείται το φαινόμενο της συρρίκνωσης. Επιπλέον, αν ο αριθμός των μελών παραμένει σταθερός, ενώ παράλληλα αυξάνεται ο αριθμός των μεταξύ τους διασυνδέσεων παρατηρείται το φαινόμενο της ωρίμανσης. Όταν μια κοινότητα συρρικνωθεί σε σημαντικό βαθμό τότε πολλές φορές παύει να αναγνωρίζεται ως ξεχωριστή οντότητα και τότε λέμε ότι αφανίστηκε. Στην αντίθετη περίπτωση, όταν προστίθενται νέες οντότητες που δεν εντάσσονται πλήρως στις ήδη υπάρχουσες κοινότητες τότε υπάρχει η πιθανότητα υπο κάποιες συνθήκες να δημιουργηθεί μια νέα κοινότητα φαινόμενο που αποκαλείται ανάδυση κοινότητας. Τέλος, δύο κοινότητες οι οποίες παρουσιάζουν πολλά κοινά χαρακτηριστικά μπορούν να συγχωνευτούν, ενώ από την άλλη μια κοινότητα που αποτελείται από πολλές υπο-κοινότητες μπορεί να διασπαστεί.

    Όσον, αφορά τις μεταβολές που σχετίζονται με τη δομή του γράφου, αξίζει να σημειώσουμε ότι είναι δομικές δεδομένου ότι είναι υπεύθυνες για τις μεταβολές που συμβάινους σε επίπεδο κοινοτήτων.

    [ΠΡΟΣΘΗΚΗ ΕΙΚΟΝΑΣ ΜΕΤΑΒΟΛΩΝ]
  • Τα τελευταία χρόνια πληθώρα μεθόδων έχουν προταθεί για την ανάλυση εξελισσόμενων γράφων. Στην παρούσα διπλωματική εργασία διακρίναμε τέσσερις κατηγορίες: (1) Διαδοχική Ομαδοποίηση, (2) Εξελικτική Ομαδοποίηση, (3) Ανίχνευση Οροσήμου και (4) Αλγόριθμοι Άμεσης Απόκρισης.

    Οι μέθοδοι διαδοχικής ομαδοποίησης αποτελούν μια από τις πρώτες προσπάθειες έγιναν για τη μελέτη εξελισσόμενων γράφων. Σύμφωνα με αυτή την προσέγγιση αντιλαμβανόμαστε την εξέλιξη του γράφου ως διαδοχικά στιγμιότυπα τα οποία είναι ανεξάρτητα μεταξύ τους. Η διαδικασία ανίχνευσης κοινοτήτων αποτελείται από δυο στάδια. Κατά το πρώτο στάδιο εφαρμόζεται μια από τις μεθόδους ανίχνευσης κοινοτήτων σε στατικούς γράφους, ενώ στο δεύτερο στάδιο γίνεται προσπάθεια αντιστοίχησης των κοινοτήτων έτσι ώστε να ορίσουμε ένα πρότυπο εξέλιξης. Παρά την απλότητά η συγκεκριμένη κατηγορία μεθόδων χαρακτηρίζεται από υψηλό υπολογιστικό και αποθηκευτικό κόστος, εξαιτίας του τρόπου υπολογισμού και αποθήκευσης των κοινοτήτων.

    Σε αντίθεση με την προηγούμενη μέθοδο που απαιτεί δύο βήματα για την ολοκλήρωσή της, η προσέγγιση της Εξελικτικής Ομαδοποίησης προσπαθεί μέσα από ένα ενοποιημένο πλαίσιο να ανιχνεύσει κοινότητες σε ένα γράφο που εξελίσσεται στο χρόνο. Σύμφωνα με την Εξελικτική Ομαδοποίηση η συμμετοχή ενός κόμβου σε μια κοινότητα τη χρονική στιγμή t, εξαρτάται από τη συσχέτιση που έχει με τους άλλους κόμβους της κοινότητας, αλλά και από τη συμμετοχή του στην κοινότητα τη χρονική στιγμή t-1. Αξίζει να σημειωθεί σαν μειονέκτημα ότι είναι απαραίτητο οι ομαδοποιήσεις να μην αλλάζουν δραματικά με την πάροδο του χρόνου έτσι ώστε να είναι ικανή η αντιστοίχηση. Παρόλα αυτά τα πλεονεκτήματά τους συνοψίζονται στα παρακάτω: συνοχή ομαδοποιήσεων, ομάδες υψηλής ποιότητας, εξομάλυνση.

    Οι μέθοδοι που εντάσσονται στην κατηγορία Ανίχνευσης Οροσήμου, σε αντίθεση με τις προηγούμενες που αναλύουν το στιγμιότυπο του γράφου, εφαρμόζεται στη ροή του δυναμικού γράφου και προσπαθεί να εντοπίσει χαρακτηριστικές μεταβολές κατά την κατά την εξέλιξη του γράφου. Σύμφωνα με αυτές χωρίζει τη ροή του γράφου σε τμήματα και αναγνωρίζει τις κοινότητες σε κάθε τμήμα. Οι μέθοδοι με τη συγκεκριμένη προσέγγιση χαρακτηρίζονται από χαμηλό αποθηκευτικό κόστος, αλλά ελλοχεύει ο κίνδυνος απώλειας της ατομικότητας του κάθε στιγμιοτύπου δεδομένου ότι η οργάνωση της ροής του γράφου γίνεται σε επίπεδο τμημάτων.

    Τέλος, οι Αλγόριθμοι Άμεσης Απόκρισης στοχεύουν στην επεξεργασία της ροής των δεδομένων σε αντίθεση με τις υπόλοιπες μεθόδους που αναλύουν τα δεδομένα ανά στιγμιότυπο ή ανά τμήμα. Επομένως, δίνεται μια αλληλουχία γεγονότων του δικτύου και ο αλγόριθμος προσπαθεί να διατήρηση την δομή των κοινοτήτων ανανεώνοντας τις ήδη υπάρχουσες κοινότητες από το να τις υπολογίσει από την αρχή. Η συγκεκριμένη μέθοδος είναι εξαιρετικά χρήσιμη για την μελέτη μεγάλου όγκου δεδομένων σε πραγματικό χρόνο, όμως κάποιες φορές η συχνή ανανέωση των δεδομένων μπορεί να επιρεάσει την ποιότητα των κοινοτήτων.
  • Η συγκεκριμένη μέθοδος βασίζεται στην τεχνική της ταυτόχρονης ομαδοποίησης γραμμών και στηλών ενός πίνακα. Ο αλγόριθμος GraphScope αναλύει μια ροή από διμερείς γράφους με τους εξής στόχους: (1) να διαχωρίσει τη ροή των γράφων σε ένα σύνολο από τμήματα γράφων που ‘’μοιάζουν μεταξύ του, (2) να ομαδοποιήσει τους κόμβους προέλευσης και προορισμού και (3) να επιτύχει όλα τα παραπάνω χωρίς τη ρύθμιση από το χρήστη περαιτέρω παραμέτρων. Σημειώνεται, ότι το εκάστοτε τμήμα των γράφων μοντελοποιείται ως ένας τένσορας όπου στους άξονες x και y βρίσκονται οι κόμβοι προέλευσης και προορισμού αντίστοιχα ενώ ο άξονας z αντιπροσωπεύει το χρόνο.
  • Η συνάρτηση κόστους βασίζεται στην αρχή MDL και δείχνει πόσα bit χρειάζονται για την κωδικοποίηση ενός τμήματος. Όπως βλέπουμε και στο σχήμα ένα τμήμα αποτελείται από διάφορα bock. Σημειώνεται, ότι ένα block αποτελείται από μια κατάτμηση προέλευσης και μια κατάτμηση προορισμού και αντιστοιχεί σε μια κοινότητα του γράφου. Αρχικά, κωδικοποιούμε το κάθε block ξεχωριστά. Για αυτό το λόγω υπολογίζουμε την πυκνότητα των ακμών. Η πυκνότητα των ακμών προκύπτει από το διαίρεση των ακμών του block προς σύνολο των πιθανών ακμών του block. Το σύνολο των πιθανών ακμών αντιστοιχεί γινόμενο των διαστάσεων του τένσορα που είναι αποθηκευμένο το block. Η συγκεκριμένη κατανομή χρεισιμοποιέιται για τον υπολογισμό της εντροπίας ενός block. Για παράδειγμα, κόστος κωδικοποίησης τους block (1,2) υπολογίζεται από το γινόμενο της διάρκειας του τμήματος, τον αριθμό των μελών της κατάτμησης προέλευσης 1, τον αριθμό των μελών της κατάτμησης προορισμού 2 και την εντροπία του block. Επομένως, για τον υπολογισμό του συνολικού κόστους των δεδομένων αθροίζουμε όλα τα επιμέρους κόστη των block. Τέλος, το συνολικό κόστος κωδικοποίησης του γράφου προκύπτει με την πρόσθεση του κόστους περιγραφής του. Πιο συγκεκριμένα το συγκεκριμένο κόστος αποτελείται από το κόστος περιγραφής των κατατμήσεων προέλευσης και προορισμού και το κόστος περιγραφής του αριθμού των κατατμήσεων προέλευσης και προορισμού, της διάρκειας του τμήματος και του αριθμού των ακμών.
  • Η ανίχνευση των κοινοτήτων γίνεται με κεντρικό άξονα την ελαχιστοποίηση του κόστους κωδικοποίησης. Επομένως, ο αλγόριθμος για την ανίχνευση των βέλτιστων κοινοτήτων ενός τμήματος του γράφου προσπαθεί κάνοντας διαδοχικά split και merge των κατατμήσεων προσπαθεί να οργανώσει τον γράφο σε block με υψηλή πυκνότητα ακμών, κάτι το οποίο μεταφράζεται σε block με χαμηλό κόστος κωδικοποίησης και κατ'επέκταση γράφος με χαμηλό κόστος κωδικοποίησης.
  • Και η ανιχνευση οροσήμου επιτελείται μέσω της ελαχιστοποίησης του κόστους. Όταν ένα νέο στιγμιότυπο έρχεται τότε γίνεται έλεγχος αν θα χαμηλότερο κόστος κωδικοποίησης με τη συγχώνευσή του στο προηγούμενο τμήμα ή με τη δημιουργία νέου τμήματος. Η δημιουργία νέου τμήματος σηματοδοτεί την ανίχνευση οροσήμου.
  • Κατά την εκτέλεση των πρώτων πειραμάτων με σκοπό την επαλήθευση της σωστής λειτουργίας του αλγορίθμου παρατηρήθηκε η αδυναμία του αλγορίθμου να ανιχνεύσει τις σωστές κοινότητες σε γράφους που χαρακτηρίζονται από: (1) Συμμετρική δομή κοινοτήτων, (2) Μηδενικός Θόρυβος εντός των Κοινοτήτων και (3) Μηδενικός Θόρυβος εκτός των Κοινοτήτων.

    To παραπάνω φαινόμενο αποδίδεται στην φύση της μετρικής που χρησιμοποιείται για τον υπολογισμό της συνάρτησης κόστους, δηλαδή της εντροπίας. Όπως φαίνεται και στην εικόνα αν έχουμε ένα γράφο με τα παραπάνω χαρακτηριστικά. Έστω ότι προσπαθούμε να αναθέσουμε ένα κόμβο προέλευσης σε μια από τις δύο κατατμήσεις προέλευσης. Η ανάθεση του κόμβου θα γίνει στην κατάτμηση όπου ελαχιστοποιείται το κόστος ανάθεσης κόμβου. Το κόστος ανάθεσης κόμβου σε ένα block δίνεται από τη σχέση όπου:
    d = διάρκεια του τμήματος
    l = ο αριθμός των στηλών του block
    ni = ο αριθμός των ακμών της στήλης i
    pi = η πυκνότητα των ακμών της στήλης i
    qi = η πυκνότητα των ακμών της κατάτμησης i.

    Όπως είναι φανερό όταν έχουμε ένα γράφο με την δομή που φαίνεται και στην εικόνα οι παραπάνω κατανομές θα είναι ίσες, επομένως ο αλγόριθμος αδυνατεί να εντοπίσει το τη σωστή δομή.
  • Για την αξιολόγηση της ανίχνευσης οροσήμου αρχικά υπολογίζουμε την ομοιότητα των διαδοχικών κατατμήσεων, χρησιμοποιώντας το NMI. Επιπλέον υπολογίζουμε και μια άλλη μετρική η οποία προκύπτει από τη συνθήκη με την οποία ο αλγόριθμος αποφασίζει α δύο στιγμιότυπα θα συγχωνευτούν σε ένα τμήμα ή δημιουργηθεί νέο τμήμα. Ουσιαστικά ποσοτικοποιεί την ομοιότητα μεταξύ δύο γράφων.
  • Σε πρώτη φάση εκτελέστηκαν πειράματα σε συνθετικά δεδομένα τόσο στατικά όσο και δυναμικά. Όσον αφορά την πειραματική αξιολόγηση σε στατικούς γράφου λόγω της έλλειψης διμερών γράφων αναφοράς υλοποιήθηκαν τρείς μέθοδοι που παράγουν γράφους σύμφωνα με κάποιες παραμέτρους που δίνουμε εμείς. Για την κατασκευή των στατικών γράφων αναφοράς επικετρωθήκαμε στην διαφοροποίηση της συμμετρίας έτσι ώστε να εξετάσουμε την συμπεριφορά του αλγορίθμου δεδομένης της αδυναμίας που παρουσιάζει. Πιο συγκεκριμένα υλοποιήθηκανς οι παρακάτω γράφοι αναφοράς: (1) SB1, Πλήρης Συμμετρία, (2) SB 2, Ασυμμετρία Κοινοτήτων και (3) SB 3 Πλήρης Ασυμμετρία
  • Όσον αφορά τους δυναμικούς συνθετικούς γράφους αναφοράς, χρησιμοποιήσαμε τα συνθετικά δεδομένα που παρουσιάζονται στην εργασία.
  • Για τον έλεγχο της απόδοσης σε πραγματικά δεδομένα μια συλλογή δεδομένων που καταγράφει την δραστηριότητα στην εφαρμογή Delicious από τον Σεπτέμβριο του 2003 έως τον Δεκέμβριο του 2007. Από αυτό κατασκευάσαμε δύο υπο σύνολα δεδομένων τα οποία χρησιμοποιήσαμε στα πειράματά μας. Το πρώτο αφορά την δραστηριότητα κατά την θερινή περίοδο του 2006, ενώ το δεύτερο την δραστηριότητα κατά την φθινοπωρινή περίοδο του 2007. Και τα υποσύνολα δεδομένων χωρίστηκαν ανά εβδομάδα από τα οποία και κατασκευάστηκαν τα στιγμιότυπα των γράφων. Για την κατασκευή του γράφου χρησιμοποιούμε τις 1,500 επικρατέστερες ετικέτες και τις 3,000 επικρατέστερες επισημάνσεις.

×