Πάρης Λαγάκης 7200
TRANSCRIPT
Μια έξυπνη μηχανή αναζήτησης σημείων ενδιαφέροντος στη Θεσσαλονίκη με δυνατότητες αξιολόγησης βάσει
αναγνώρισης συναισθημάτων σχολίων
Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Ηλεκτρονικής και Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών (ΕΠΥ)
Θεσσαλονίκη, Ιούνιος 2016
Διπλωματική Εργασία του: Υπό την επίβλεψη του καθηγητή: Παρασκευά Λαγάκη Ανδρέα Λ. Συμεωνίδη
ΑΕΜ: 7200
Δομή Παρουσίασης• Εισαγωγή• Σκοπός διπλωματικής• Βιβλιογραφική επισκόπηση• Ανάλυση συστήματος ταξινόμησης• Ανάλυση web εφαρμογής• Συνοπτική παρουσίαση της εφαρμογής• Μελλοντικές επεκτάσεις• Ερωτήσεις
Εισαγωγή• Ραγδαία εξάπλωση διαδικτύου και μέσων κοινωνικής
δικτύωσης• Παραγωγή τεράστιου όγκου δεδομένων• Πρόβλημα: εξαγωγή χρήσιμης πληροφορίας
• Η ανάλυση συναισθήματος ή sentiment analysis αξιοποιεί τα δεδομένα για την εύρεση τάσεων, απόψεων και συναισθημάτων των χρηστών του διαδικτύου
• Ευκαιρίες για εφαρμογές τόσο σε ερευνητικό όσο και σε εμπορικό επίπεδο
Σκοπός Διπλωματικής• Εφαρμογή sentiment analysis σε real-world δεδομένα• Δημιουργία συστήματος αξιολόγησης σχολίων χρηστών
του Foursquare• Σε ελληνικά, αγγλικά και greeklish• Hand-tagging και προεπεξεργασία των δεδομένων• Εφαρμογή ενός δοκιμασμένου αλγορίθμου ταξινόμησης• Πειραματικά αποτελέσματα
• Δημιουργία μιας web εφαρμογής που θα ενσωματώνει το παραπάνω σύστημα - Venuetrack
Βιβλιογραφική επισκόπηση• Τύποι ανάλυσης συναισθήματος
• Ανάλυση πόλωσης (polarity analysis)• Αναγνώριση υποκειμενικότητας/αντικειμενικότητας (subjectivity/objectivity recognition)
• Επίπεδα ανάλυσης• Ανάλυση σε επίπεδο κειμένου (document level analysis) ή σε επίπεδο πρότασης (sentence level
analysis)• Ανάλυση με βάση χαρακτηριστικά οντοτήτων (feature/aspect-based analysis)
• Μέθοδοι επεξεργασίας φυσικής γλώσσας για ανάλυση συναισθήματος
• Μέθοδοι επιβλεπόμενης μηχανικής μάθησης• Μέθοδοι βασισμένες σε λεξικά
• Τεχνικές βελτίωσης ακρίβειας (Stemming, POS Tagging, Αφαίρεση Stopwords κ.α.)
Ανάλυση συστήματος ταξινόμησης• Σύστημα επιβλεπόμενης μηχανικής μάθησης για
εξαγωγή πόλωσης• Hand-tagging ενός σετ 2,000 σχολίων σε ελληνικά,
αγγλικά και greeklish• 1,000 θετικά και 1,000 αρνητικά σχόλια
• Προεπεξεργασία δεδομένων• Εφαρμογή μεθόδων βελτίωσης ακρίβειας
• Naive Bayes αλγόριθμος ταξινόμησης
Σχηματική αναπαράσταση συστήματος ταξινόμησης
Προεπεξεργασία δεδομένων• Απομάκρυνση Stopwords
• Αφαίρεση τονισμών για τα ελληνικά
Ελληνικά και, το, με, για, να, τα, σε, η
Αγγλικά the, and, u, in, a, of, for, place, to
Χαρακτήρας με τονισμό Χαρακτήρας με τον οποίο αντικαταστάθηκε
ά, έ, ή, ό, ί, ύ, ώ α, ε, η, ο, ι, υ, ωϋ, ϊ υ, ιΰ, ΐ υ, ι
Προεπεξεργασία δεδομένων• Ομαδοποίηση emoticons
• Stemming
Αρχικά Emoticons Emoji στο οποίο συγχωνεύτηκαν
:) :-) ;) ;-) :D :-D :P :-P ☺
:( :-( ;( ;-( D: D-: :/ :-/ ☹
Παράδειγμα καταλήξεων που αφαιρέθηκανΚαταλήξεις Θηλυκού Γένους η | ης | ην | ηση
Καταλήξεις Αρσενικού/Ουδετέρου Γένους ον | ου | ο | ος | ικο | ιο | ασ
Καταλήξεις Ρημάτων αμε | ει | εις | ιζειΕνδεικτικές Καταλήξεις Αγγλικών ious | ely | es | ice | ful | fully
Προεπεξεργασία δεδομένων• Αφαίρεση σημείων στίξης και επαναλαμβανόμενων
χαρακτήρων
• Εξομάλυνση πεζών/κεφαλαίων• Αφαίρεση κάποιων ειδικών χαρακτήρων
Αρχική λέξη Λέξη μετά την αντικατάσταση
Ηρεμιαααα!!!!!! ηρεμια
χαλλλλααραααα χαλαρα
ΛΟΟΟΟΛ λολ
Yaaaay yay
Πειραματικά αποτελέσματα – ακρίβεια ταξινομητή
AccuracyΧωρίς εξομάλυνση πεζών/κεφαλαίων 0,8085
Χωρίς αφαίρεση τονισμών για τα ελληνικά 0,7965
Χωρίς ομαδοποίηση emoticons 0,8214
Χωρίς αφαίρεση σημείων στίξης 0.823
Χωρίς αφαίρεση επαναλαμβανόμενων
χαρακτήρων0.794
Χωρίς stemming 0.8125
Με όλες τις μεθόδους βελτίωσης ακρίβειας 0,8255
Πειραματικά αποτελέσματα – ακρίβεια ταξινομητή
Accuracy
Χωρίς προεπεξεργασία και χωρίς stopwords 0,73
Χωρίς προεπεξεργασία και με stopwords 0,74
Με προεπεξεργασία και χωρίς stopwords 0,802
Με όλες τις μεθόδους βελτίωσης ακρίβειας 0,8255
Πειραματικά αποτελέσματα - Καμπύλη εκμάθησης
Μέγεθος 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
Ανάλυση web εφαρμογής – Χρησιμοποιούμενες τεχνολογίες/frameworks• Backend: Java Servlets και Google App Engine• Frontend: AngularJS και Google Maps Javascript API• Άλλα εργαλεία (Objectify, Bootstrap κ.α.)
Ανάλυση web εφαρμογής - Backend
Ανάλυση web εφαρμογής - Frontend
• Custom service επικοινωνεί με τα endpoints του backend και αντλεί τα δεδομένα των venues
• Ο βασικός controller της εφαρμογής σχεδιάζει το χάρτη και τοποθετεί τους αντίστοιχους markers
• Δημιουργείται ένας listener για κάθε marker
Συνοπτική παρουσίαση εφαρμογής
Μελλοντικές επεκτάσεις• Δοκιμή διαφορετικών ταξινομητών• Επέκταση εφαρμογής και εκτός Θεσσαλονίκης
• Χρήση περισσότερων γλωσσών στο σετ εκπαίδευσης• Άντληση δεδομένων από περισσότερα κοινωνικά δίκτυα (π.χ.
Facebook, TripAdvisor)
Ερωτήσεις
Ευχαριστώ πολύ
Ιστότοπος εφαρμογής: venuetrack.appspot.com