Πάρης Λαγάκης 7200

20
Μια έξυπνη μηχανή αναζήτησης σημείων ενδιαφέροντος στη Θεσσαλονίκη με δυνατότητες αξιολόγησης βάσει αναγνώρισης συναισθημάτων σχολίων Θεσσαλονίκη, Ιούνιος 2016 Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγω νΜ ηχανικώ ν και Μ ηχανικώ νΥπολογιστώ ν ΤομέαςΗλεκτρονικήςκαι Υπολογιστώ ν Εργαστήριο ΕπεξεργασίαςΠληροφορίαςκαι Υπολογισμώ ν(ΕΠΥ) Διπλωματική Εργασία του: Υπό τηνεπίβλεψ η του καθηγητή: Παρασκευά Λαγάκη Ανδρέα Λ. Συμεω νίδη ΑΕΜ : 7200

Transcript of Πάρης Λαγάκης 7200

Page 1: Πάρης Λαγάκης 7200

Μια έξυπνη μηχανή αναζήτησης σημείων ενδιαφέροντος στη Θεσσαλονίκη με δυνατότητες αξιολόγησης βάσει

αναγνώρισης συναισθημάτων σχολίων

Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Ηλεκτρονικής και Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών (ΕΠΥ)

Θεσσαλονίκη, Ιούνιος 2016

Διπλωματική Εργασία του: Υπό την επίβλεψη του καθηγητή: Παρασκευά Λαγάκη Ανδρέα Λ. Συμεωνίδη

ΑΕΜ: 7200

Page 2: Πάρης Λαγάκης 7200

Δομή Παρουσίασης• Εισαγωγή• Σκοπός διπλωματικής• Βιβλιογραφική επισκόπηση• Ανάλυση συστήματος ταξινόμησης• Ανάλυση web εφαρμογής• Συνοπτική παρουσίαση της εφαρμογής• Μελλοντικές επεκτάσεις• Ερωτήσεις

Page 3: Πάρης Λαγάκης 7200

Εισαγωγή• Ραγδαία εξάπλωση διαδικτύου και μέσων κοινωνικής

δικτύωσης• Παραγωγή τεράστιου όγκου δεδομένων• Πρόβλημα: εξαγωγή χρήσιμης πληροφορίας

• Η ανάλυση συναισθήματος ή sentiment analysis αξιοποιεί τα δεδομένα για την εύρεση τάσεων, απόψεων και συναισθημάτων των χρηστών του διαδικτύου

• Ευκαιρίες για εφαρμογές τόσο σε ερευνητικό όσο και σε εμπορικό επίπεδο

Page 4: Πάρης Λαγάκης 7200

Σκοπός Διπλωματικής• Εφαρμογή sentiment analysis σε real-world δεδομένα• Δημιουργία συστήματος αξιολόγησης σχολίων χρηστών

του Foursquare• Σε ελληνικά, αγγλικά και greeklish• Hand-tagging και προεπεξεργασία των δεδομένων• Εφαρμογή ενός δοκιμασμένου αλγορίθμου ταξινόμησης• Πειραματικά αποτελέσματα

• Δημιουργία μιας web εφαρμογής που θα ενσωματώνει το παραπάνω σύστημα - Venuetrack

Page 5: Πάρης Λαγάκης 7200

Βιβλιογραφική επισκόπηση• Τύποι ανάλυσης συναισθήματος

• Ανάλυση πόλωσης (polarity analysis)• Αναγνώριση υποκειμενικότητας/αντικειμενικότητας (subjectivity/objectivity recognition)

• Επίπεδα ανάλυσης• Ανάλυση σε επίπεδο κειμένου (document level analysis) ή σε επίπεδο πρότασης (sentence level

analysis)• Ανάλυση με βάση χαρακτηριστικά οντοτήτων (feature/aspect-based analysis)

• Μέθοδοι επεξεργασίας φυσικής γλώσσας για ανάλυση συναισθήματος

• Μέθοδοι επιβλεπόμενης μηχανικής μάθησης• Μέθοδοι βασισμένες σε λεξικά

• Τεχνικές βελτίωσης ακρίβειας (Stemming, POS Tagging, Αφαίρεση Stopwords κ.α.)

Page 6: Πάρης Λαγάκης 7200

Ανάλυση συστήματος ταξινόμησης• Σύστημα επιβλεπόμενης μηχανικής μάθησης για

εξαγωγή πόλωσης• Hand-tagging ενός σετ 2,000 σχολίων σε ελληνικά,

αγγλικά και greeklish• 1,000 θετικά και 1,000 αρνητικά σχόλια

• Προεπεξεργασία δεδομένων• Εφαρμογή μεθόδων βελτίωσης ακρίβειας

• Naive Bayes αλγόριθμος ταξινόμησης

Page 7: Πάρης Λαγάκης 7200

Σχηματική αναπαράσταση συστήματος ταξινόμησης

Page 8: Πάρης Λαγάκης 7200

Προεπεξεργασία δεδομένων• Απομάκρυνση Stopwords

• Αφαίρεση τονισμών για τα ελληνικά

Ελληνικά και, το, με, για, να, τα, σε, η

Αγγλικά the, and, u, in, a, of, for, place, to

Χαρακτήρας με τονισμό Χαρακτήρας με τον οποίο αντικαταστάθηκε

ά, έ, ή, ό, ί, ύ, ώ α, ε, η, ο, ι, υ, ωϋ, ϊ υ, ιΰ, ΐ υ, ι

Page 9: Πάρης Λαγάκης 7200

Προεπεξεργασία δεδομένων• Ομαδοποίηση emoticons

• Stemming

Αρχικά Emoticons Emoji στο οποίο συγχωνεύτηκαν

:) :-) ;) ;-) :D :-D :P :-P ☺

:( :-( ;( ;-( D: D-: :/ :-/ ☹

Παράδειγμα καταλήξεων που αφαιρέθηκανΚαταλήξεις Θηλυκού Γένους η | ης | ην | ηση

Καταλήξεις Αρσενικού/Ουδετέρου Γένους ον | ου | ο | ος | ικο | ιο | ασ

Καταλήξεις Ρημάτων αμε | ει | εις | ιζειΕνδεικτικές Καταλήξεις Αγγλικών ious | ely | es | ice | ful | fully

Page 10: Πάρης Λαγάκης 7200

Προεπεξεργασία δεδομένων• Αφαίρεση σημείων στίξης και επαναλαμβανόμενων

χαρακτήρων

• Εξομάλυνση πεζών/κεφαλαίων• Αφαίρεση κάποιων ειδικών χαρακτήρων

Αρχική λέξη Λέξη μετά την αντικατάσταση

Ηρεμιαααα!!!!!! ηρεμια

χαλλλλααραααα χαλαρα

ΛΟΟΟΟΛ λολ

Yaaaay yay

Page 11: Πάρης Λαγάκης 7200

Πειραματικά αποτελέσματα – ακρίβεια ταξινομητή

AccuracyΧωρίς εξομάλυνση πεζών/κεφαλαίων 0,8085

Χωρίς αφαίρεση τονισμών για τα ελληνικά 0,7965

Χωρίς ομαδοποίηση emoticons 0,8214

Χωρίς αφαίρεση σημείων στίξης 0.823

Χωρίς αφαίρεση επαναλαμβανόμενων

χαρακτήρων0.794

Χωρίς stemming 0.8125

Με όλες τις μεθόδους βελτίωσης ακρίβειας 0,8255

Page 12: Πάρης Λαγάκης 7200

Πειραματικά αποτελέσματα – ακρίβεια ταξινομητή

Accuracy

Χωρίς προεπεξεργασία και χωρίς stopwords 0,73

Χωρίς προεπεξεργασία και με stopwords 0,74

Με προεπεξεργασία και χωρίς stopwords 0,802

Με όλες τις μεθόδους βελτίωσης ακρίβειας 0,8255

Page 13: Πάρης Λαγάκης 7200

Πειραματικά αποτελέσματα - Καμπύλη εκμάθησης

Μέγεθος dataset 100 200 500 1000 1500 2000

Accuracy 0.646 0.69 0.758 0.795 0.81 0.8255

0 200 400 600 800 1000 1200 1400 1600 1800 2000

0.65

0.7

0.75

0.8

0.85

Μέγεθος dataset

Acc

urac

y

Page 14: Πάρης Λαγάκης 7200

Ανάλυση web εφαρμογής – Χρησιμοποιούμενες τεχνολογίες/frameworks• Backend: Java Servlets και Google App Engine• Frontend: AngularJS και Google Maps Javascript API• Άλλα εργαλεία (Objectify, Bootstrap κ.α.)

Page 15: Πάρης Λαγάκης 7200

Ανάλυση web εφαρμογής - Backend

Page 16: Πάρης Λαγάκης 7200

Ανάλυση web εφαρμογής - Frontend

• Custom service επικοινωνεί με τα endpoints του backend και αντλεί τα δεδομένα των venues

• Ο βασικός controller της εφαρμογής σχεδιάζει το χάρτη και τοποθετεί τους αντίστοιχους markers

• Δημιουργείται ένας listener για κάθε marker

Page 17: Πάρης Λαγάκης 7200

Συνοπτική παρουσίαση εφαρμογής

Page 18: Πάρης Λαγάκης 7200

Μελλοντικές επεκτάσεις• Δοκιμή διαφορετικών ταξινομητών• Επέκταση εφαρμογής και εκτός Θεσσαλονίκης

• Χρήση περισσότερων γλωσσών στο σετ εκπαίδευσης• Άντληση δεδομένων από περισσότερα κοινωνικά δίκτυα (π.χ.

Facebook, TripAdvisor)

Page 19: Πάρης Λαγάκης 7200

Ερωτήσεις

Page 20: Πάρης Λαγάκης 7200

Ευχαριστώ πολύ

Ιστότοπος εφαρμογής: venuetrack.appspot.com