SlideShare a Scribd company logo
1 of 20
Download to read offline
Πρακτική Άσκηση
Καλοκαίρι 2013
Τελική Αναφορά
Ονοματεπώνυμο: Γεωργίου Μαρία Βαρβάρα
Α.Μ Φοιτητή: 3080027
Φορέας Υλοποίησης: Qualia Τεχνολογίες Κατανόησης Α.Ε.
Εργασιακός Επιβλέποντας: Ιάσων Δεμοίρος
Επιβλέπων Καθηγητής: Ίων Ανδρουτσόπουλος
Πρακτική Άσκηση Καλοκαίρι 2013
2
1.Εισαγωγή
Main Project
Τίτλος
Αναζήτηση πληροφορίας σε γράφους δεδομένων που δημιουργούνται με βάση την
ελληνική έκδοση του Wikipedia
Σκοπός
Η εργασία αυτή εντάσσεται στα πλαίσια ενός γενικότερου έργου που αφορά στην
κατασκευή προφίλ αναζήτησης πληροφορίας στα διαδικτυακά δεδομένα. Τα
στοιχεία της αναζήτησης ονομάζονται οντότητες (entities) και μπορεί να είναι
λέξεις-κλειδιά, φράσεις ή ονόματα ή οποιοσδήποτε συνδυασμός αυτών.
Ως προφίλ αναζήτησης ορίζεται ένα σύνολο από τέτοιες οντότητες.
Βασικός στόχος είναι το προφίλ να δημιουργείται ημιαυτόματα μέσω τεχνικών
ανάκτησης πληροφορίας (information retrieval) που θα δώσουν τη δυνατότητα στο
χρήστη να δημιουργεί κανόνες που φιλτράρουν λέξεις και φράσεις οι οποίες
ανακτούν μη σχετική πληροφορία. Έτσι εξασφαλίζουμε μεγαλύτερη ακρίβεια στην
ανάκτηση και παρουσιάζουμε στον τελικό χρήστη πληροφορία σχετική με τις
ανάγκες του (relevant).
Το πρώτο βήμα στην παραπάνω διαδικασία είναι να δημιουργηθούν κάποιες βάσεις
γνώσης, στις οποίες θα μπορεί να γίνεται αναζήτηση των παραπάνω οντοτήτων και
σύγκρισή τους με άλλες οντότητες.
Στην εργασία αυτή εστιάζουμε στην πρώτη τέτοια βάση, η οποία είναι το ελληνικό
Wikipedia. Τη μοντελοποιούμε με τη χρήση Νeo4j που αποτελεί ένα από τα πιο
διαδεδομένα εργαλεία στην αγορά για τη δημιουργία βάσεων δεδομένων σε
μορφή γράφου.
Πρακτική Άσκηση Καλοκαίρι 2013
3
2. Εξαγωγή οντοτήτων από την wikipedia
2.1 Εξαγωγή οντοτήτων
Αρχικά έγινε μελέτη του Wikipedia dump [2] (πρόκειται για ένα XML αρχείο με όλα
τα άρθρα της ελληνικής Wikipedia) με στόχο να βρεθεί ποιες πληροφορίες της
σελίδας είναι αξιοποιήσιμες για τη δημιουργία οντοτήτων έτσι ώστε να είναι
δυνατή αργότερα η μεταξύ τους σύγκριση, μέσω μετρικών αξιολόγησης
σημασιολογικής συνάφειας.
Ως οντότητες στο πεδίο της Wikipedia ορίστηκαν:
1. Τα άρθρα
2. Οι μοναδικές κατηγορίες στις οποίες ανήκαν τα άρθρα.
Ως ιδιότητες της οντότητας "-Άρθρο-" ορίστηκαν τα εξής:
(Παρατήρηση: οι οντότητες της Wikipedia δεν είναι ίδιες με τις οντότητες αναζήτησης που είδαμε
στην εισαγωγή. Στο εξής ως οντότητες θα αναφέρονται αυτές της Wikipedia, ενώ όταν θα
αναφερόμαστε στην αναζήτηση θα προσδιορίζουμε τις οντότητες ως οντότητες αναζήτησης.)
1 . Τίτλος του άρθρου.
2. Συνολικό κείμενο
3. Επικεφαλίδες επιμέρους ενοτήτων (headers)
4. Τίτλοι συνδέσμων προς άλλα άρθρα της Wikipedia
5. Σύνδεσμοι προς σελίδες εκτός της Wikipedia
6. Κατηγορίες στις οποίες ανήκει το άρθρο
7. Τίτλοι συνδέσμων κάτω από την επικεφαλίδα "-Δείτε επίσης-"
(πρόκειται για συνδέσμους προς άρθρα της Wikipedia)
8. Πηγές
Πρακτική Άσκηση Καλοκαίρι 2013
4
9. Redirect (πρόκειται για τους εναλλακτικούς τίτλους του
άρθρου μέσω των οποίων μπορεί να γίνεται αναφορά σε αυτό από άλλες
σελίδες.)
Ως ιδιότητες της οντότητας " -Kατηγορία-" ορίστηκαν τα εξής:
1 . Τίτλος κατηγορίας.
2.2 Υλοποίηση
Με τη χρήση του Java wiki API [2] έγινε το parsing του Wikipedia dump XML . Από
αυτό πάρθηκε ο τίτλος και το πλήρες κείμενο (full text) του κάθε άρθρου. Το πλήρες
κείμενο έχει τέτοια δομή ώστε να είναι εύκολα δυνατή η εξαγωγή βασικών
στοιχείων του άρθρου όπως οι τίτλοι των links προς άλλα άρθρα της Wikipedia, τα
headers, οι κατηγορίες στις οποίες ανήκει ένα άρθρο κ.τ.λ.
Προκειμένου όμως να εξαχθούν οι επιπλέον πληροφορίες, όπως για παράδειγμα
συγκεκριμένες κατηγορίες links (See Also), οι πηγές και οι σύνδεσμοι προς
εξωτερικές πηγές, χρειάστηκε περαιτέρω μελέτη και επεξεργασία.
Τα παραπάνω στοιχεία βρίσκονται κάτω από ένα σύνολο επικεφαλίδων (headers),
επομένως εξήχθησαν όλες (headers extract) σε μία λίστα και κατατάχθηκαν σε
φθίνουσα σειρά ανάλογα με τη συχνότητα εμφάνισης τους στο σύνολο των άρθρων.
Φάνηκε πως ένα πολύ μεγάλο ποσοστό εμφανίζεται από μία έως τρεις φορές.
Υπάρχουν πολλά headers τα οποία είναι ίδια αλλά φαίνονται ως μοναδικά λόγω
ορθογραφικών λαθών ή διαφορετικού τρόπου διατύπωσης (π.χ. εξωτερικοί
σύνδεσμοι, εξωτερικές συνδέσεις κ.τ.λ.)
Για τις ανάγκες εξαγωγής των άνω πληροφοριών κρατήθηκαν από ένα έως έξι
διαφορετικές διατυπώσεις των σχετικών headers με τις προς εξαγωγή πληροφορίες.
Τα headers έχουν κρατηθεί και για κάθε article ξεχωριστά για πιθανή τους χρήση
ως μεταδεδομένα (metadata).
Η εξαγωγή όλων των στοιχείων έγινε με τη χρήση regular expressions και
αποθηκεύτηκε σε ένα binary αρχείο σε κατάλληλη μορφή.
Πρακτική Άσκηση Καλοκαίρι 2013
5
Τέλος δημιουργήθηκε άλλο ένα αρχείο με τις μοναδικές κατηγορίες που βρέθηκαν
κατά την ανάλυση (parsing) άρθρων.
3. Δημιουργία βάσης δεδομένων
3.1 Neo4j
Το neo4j [3], [4] είναι ένα εργαλείο, το οποίο χρησιμοποιείται για την δημιουργία
και τον χειρισμό βάσεων δεδομένων σε μορφή γράφου. Προσφέρει ότι και μία
βάση SQL αλλά και πολλές άλλες δυνατότητες λόγο της συγκεκριμένης μορφής.
Πρόκειται για ένα από τα πιο διαδεδομένα εργαλεία για αυτό τον σκοπό, τόσο στην
ακαδημαϊκή κοινότητα, όσο και στην αγορά.
Μπορεί κάποιος να ορίσει οντότητες (κόμβους) αντί για τα instances μίας κλασικής
βάσης. Μέσα σε κάθε οντότητα μπορούν να οριστούν ιδιότητες (δεν είναι
υποχρεωτικό να έχουν όλοι οι κόμβοι τις ίδιες ιδιότητες ή μπορεί ένας κόμβος να
μην έχει καθόλου) καθώς και να ορίσει σχέσεις μεταξύ αυτών (κατευθυνόμενες
ακμές) οι οποίες επίσης μπορούν να περιέχουν ιδιότητες.
Για παράδειγμα, έστω 100 κόμβοι οι οποίοι αντιπροσωπεύουν πρόσωπα. Κάθε
κόμβος θα έχει ως ιδιότητες το όνομα, την ηλικία και τον τόπο διαμονής του κάθε
προσώπου. Ως σχέση θα οριστεί η Α-"γνωρίζει"->Β η οποία θα είναι μία
κατευθυνόμενη ακμή μεταξύ δύο κόμβων που ορίζεται αν και μόνο αν αυτά τα
πρόσωπα γνωρίζονται μεταξύ τους.
Πρακτική Άσκηση Καλοκαίρι 2013
6
3.2 Graph Creation
3.2.1 Κόμβοι και Σχέσεις
Ως κόμβοι της βάσης ορίστηκαν οι οντότητες που εξήχθησαν από το Wikipedia,
όπως περιγράφηκαν παραπάνω. Προστέθηκαν ακόμα δύο ιδιότητες, ο τίτλος σε
normalized και stemmed μορφή με τη χρήση της βιβλιοθήκης της Qualia για
επεξεργασία γλώσσας (QualiaLangTool.jar)
Ως σχέσεις (κατευθυνόμενες ακμές) ορίστηκαν οι εξής:
1.relates_to: ορίζεται από ένα κόμβο Α σε ένα κόμβο Β αν υπάρχει
αναφορά στο property που περιέχει τους τίτλους σελίδων της wikipedia,
στις οποίες αναφέρεται η Α (ιδιότητα 7 παραπάνω) - του Α στον Β.
2.belongs_to: ορίζεται από ένα κόμβο Α προς ένα κόμβο κατηγορίας, αν ο
τίτλος του δεύτερου περιέχεται στο property με τις κατηγορίες (ιδιότητα 6)
του Α.
3.links_to: ορίζεται από ένα κόμβο Α προς κάθε ένα από τους κόμβους που
υποδεικνύει η ιδιότητα 4 (τίτλοι συνδέσμων προς άλλα άρθρα της
wikipedia).
3.3 Υλοποίηση
3.3.1 Εισαγωγή Δεδομένων στη Βάση
Για την εισαγωγή των δεδομένων, χρησιμοποιήθηκαν τα πακέτα που παρέχονται
από το Νeo4j για τη δημιουργία μιας νέας βάσης. Διαβάζοντας τα άρθρα από το
binary αρχείο που δημιουργήθηκε από τον parser, έγινε η εισαγωγή των κόμβων
ορίζοντας σε αυτούς τις ιδιότητες όπως περιγράφηκαν στην παράγραφο 3.2.1.
Στη συνέχεια και με βάση τη δεύτερη λίστα, που επίσης δημιουργήθηκε από τον
parser, γίνεται η δημιουργία και εισαγωγή των κόμβων κατηγοριών με τις
αντίστοιχες ιδιότητες (title, normalized title και stemmed title ).
Η εισαγωγή έγινε σε δύο βρόγχους(έναν για τα άρθρα και έναν για τις σελίδες
Πρακτική Άσκηση Καλοκαίρι 2013
7
κατηγορίας). Σε κάθε επανάληψη ανοίγει ένα transaction με τη βάση, γίνεται η
δημιουργία και η εισαγωγή πολλαπλών κόμβων και ύστερα κλείνει το transaction
αυτό. Oι επαναλήψεις συνεχίζονται μέχρι να εισαχθούν όλοι οι κόμβοι στη βάση.
Μετά την ολοκλήρωση της εισαγωγής των κόμβων έγινε ένα iteration πάνω σε
αυτούς με σκοπό να βρεθούν, όπου υπάρχουν, οι σχέσεις της παραγράφου 3.2.1 και
να εισαχθούν και αυτές στη βάση. Ο τρόπος εισαγωγής τους είναι ίδιος με αυτών
των κόμβων.
Γενική επισκόπηση της βάσης του Wikipedia.
3.3.2 Indexing
To Neo4j παρέχει λειτουργικότητα full text indexing μέσω της βιβλιοθήκης Apache
Lucene. Δημιουργήθηκαν τρία indexes. Ένα με βάση τον τίτλο και ακόμα δύο με
βάση τις δύο παραλλαγές του τίτλου: normalized και stemmed.
Χρησιμοποιήθηκαν τα full text indexes τα οποία κάνουν white space tokenization
και μετατρέπουν όλους τους χαρακτήρες σε μικρά (lower case) και κάνουν την
αναζήτηση στον γράφο, με βάση τα περιεχόμενα του τίτλου να μην εξαρτάται από
μικρά ή κεφαλαία (case insensitive).
Πρακτική Άσκηση Καλοκαίρι 2013
8
Μέρος της βάσης από το visualization tool που παρέχει το Νeo4j
Πρακτική Άσκηση Καλοκαίρι 2013
9
4. Σημασιολογική Σύγκριση σελίδων
4.1 Σημασιολογική ομοιότητα μεταξύ σελίδων της Wikipedia.
Με βάση τη βιβλιογραφία που μελετήθηκε, η σημασιολογική ομοιότητα μεταξύ δύο
άρθρων της Wikipedia μετριέται με βάση τα links που σχετίζονται με τα άρθρα
αυτά.
Η μετρική η οποία χρησιμοποιήθηκε εδώ είναι το weighted Dice metric των Denis
Turdakov και Pavel Velikhov [1]:
Όπου n(A) είναι τα άρθρα που συνδέονται με το άρθρο Α (αυτά που δείχνουν σε
αυτό και αυτά στα οποία δείχνει το Α) και ομοίως n(B) είναι τα άρθρα τα οποία
συνδέονται με το άρθρο Β.
Τα links ενός άρθρου, όπως εξήχθησαν από αυτό, χωρίζονται σε δύο κατηγορίες:
1. Regular links: πρόκειται για την ιδιότητα 4 (παράγραφος 2.1) που αφορά
links προς άλλα άρθρα και σελίδες κατηγοριών.
2. See Also links: πρόκειται για την ιδιότητα 7 (παράγραφος 2.1) η οποία
αφορά τα links κάτω από την επικεφαλίδα "Δείτε επίσης".
Στον υπολογισμό του συντελεστή Dice κάθε είδος link έχει ένα συγκεκριμένο βάρος.
Εμπειρικά και με βάση τον προτεινόμενο πίνακα βαρών [1] δόθηκε βάρος w1=1 στα
Regular links και βάρος w2=5 στα See Also links.
Links προς ημερομηνίες και αριθμούς αγνοήθηκαν τελείως καθώς με βάση τα
πειράματα που έχουν γίνει πάνω στην αγγλική wikipedia [1], δεν προσφέρουν
σχεδόν καθόλου πληροφορία για τη σημασιολογική σύγκριση των σελίδων.
Όσον αφορά αυτή την εργασία, ο υπολογισμός αυτής της μετρικής έχει ως σκοπό
την ανάκτηση των k πιο σχετικών άρθρων της Wikipedia σε σχέση με ένα
συγκεκριμένο άρθρο το οποίο έχει επιλέξει ο χρήστης. Για το λόγο αυτόν
δημιουργήθηκε ένα πρόγραμμα μέσω του οποίου γίνεται αναζήτηση στη βάση με
λέξεις-κλειδιά. Ύστερα επιστρέφονται τα σχετικά άρθρα με βάση τον τίτλο και από
αυτά επιλέγει ο χρήστης ένα. Υπολογίζεται η μετρική Dice αυτού του άρθρου με όλα
Πρακτική Άσκηση Καλοκαίρι 2013
10
τα υπόλοιπα και τέλος επιστρέφονται τα k άρθρα με τα μεγαλύτερο score.
4.2 Αξιολόγηση
Η εργασία ολοκληρώθηκε στο σημείο αυτό και το επόμενο βήμα είναι η αξιολόγηση
της μεθόδου που υλοποιήθηκε. Δεν έχει γίνει ολοκληρωμένη αξιολόγηση, για την
οποία θα πρέπει να επιλεγούν τα κατάλληλα ερωτήματα, να αντιστοιχηθούν στους
κόμβους της Wikipedia και μετά να γίνει ανάκτηση συναφών κόμβων με βάση τη
σημασιολογική απόσταση που περιγράφηκε παραπάνω, σε σχολιασμένο υλικό.
Εμείς σταματήσαμε την εργασία μας στο σημείο που δίνουμε ερωτήματα στη βάση
και ανακτούμε το σύνολο των συναφών κόμβων, όπως στο παράδειγμα που δείχνει
τις σχέσεις του κόμβου με τίτλο "Ελληνική κρίση χρέους 2010-2013" με σχετικούς
κόμβους της Wikipedia (παρατίθεται στο Παράρτημα).
Τα επόμενα βήματα, στα πλαίσια της εργασίας αυτής, είναι μια ενδελεχής
αξιολόγηση, εκ νέου επίσκεψη στο σκορ ομοιότητας και κανονικοποίηση σε μια
κλίμακα 0-1, υλοποίηση και αξιολόγηση άλλων μετρικών ομοιότητας και
φιλτράρισμα θορύβου για συγκεκριμένα προβλήματα που έχουμε εντοπιστεί.
Πρακτική Άσκηση Καλοκαίρι 2013
11
ΑΝΑΦΟΡΕΣ
[1] Denis Turdakov, Pavel Velikhov, "Semantic Relatedness Metric for Wikipedia Concepts
Based on Link Analysis and its Application to Word Sense Disambiguation", SYRCoDIS, St.-
Petersburg, Russia, 2008 ,pages 2-3.
[2] Wikipedia Dump Parser, https://code.google.com/p/gwtwiki/.
[3] Neo4j, http://www.neo4j.org/.
[4] Neo4j manual, http://docs.neo4j.org/.
Πρακτική Άσκηση Καλοκαίρι 2013
12
ΠΑΡΑΡΤΗΜΑ
Στο παράδειγμα που ακολουθεί παρουσιάζουμε τα αποτελέσματα της αναζήτησης
για το άρθρο "Ελληνική κρίση χρέους 2010-2013". Κάθε σχετικός κόμβος
εμφανίζεται με τον τίτλο του, τα κοινά links με τον αρχικό κόμβο, το συνολικό
αριθμό των links και ένα σκορ ομοιότητας με τον αρχικό κόμβο. Η κατάταξη έχει
γίνει με βάση το σκορ ομοιότητας.
Εμφανίζονται τα 50 κείμενα με το μεγαλύτερο score.
ΕΛΛΗΝΙΚΗ ΚΡΙΣΗ ΧΡΕΟΥΣ 2010-2013
Title:Απεργιακές κινητοποιήσεις στην Ελλάδα την άνοιξη του 2010
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή
Ένωση;Ευρωπαϊκής Ένωσης;Καστελόριζο;Μάιος;Μαΐου;
total links:442.0 score: : 0.03167420814479638
Title:Βιβλιοθήκη της Τράπεζας της Ελλάδος
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή
Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:393.0 score: : 0.030534351145038167
Title:Άννα Μπενάκη - Ψαρούδα
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή
Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:417.0 score: : 0.02877697841726619
Title:Eurogroup
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής
Κεντρικής Τράπεζας;
total links:364.0 score: : 0.02197802197802198
Πρακτική Άσκηση Καλοκαίρι 2013
13
Title:Ευρωπαϊκό Ταμείο Χρηματοπιστωτικής Σταθερότητας
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:373.0 score: : 0.021447721179624665
Title:Γενς Βάιντμαν
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:376.0 score: : 0.02127659574468085
Title:Δανειακή σύμβαση της Ελλάδας τον Μάιο του 2010
Common links:Πτώχευση κράτους;Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:391.0 score: : 0.020460358056265986
Title:Πραξούλα Αντωνιάδου
Common links:Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:416.0 score: : 0.019230769230769232
Title:Κριστίν Λαγκάρντ
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή
Ένωση;Ευρωπαϊκής Ένωσης;
total links:424.0 score: : 0.018867924528301886
Title:Φιάνα Φάιλ
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
Πρακτική Άσκηση Καλοκαίρι 2013
14
total links:425.0 score: : 0.01882352941176470
Title:Τομάσο Πάντοα - Σκιόππα
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική
Τράπεζα;
total links:376.0 score: : 0.015957446808510637
Title:Ευρωπαϊκή Κεντρική Τράπεζα
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:394.0 score: : 0.015228426395939087
Title:Ιούνιος 2005
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος;
total links:403.0 score: : 0.01488833746898263
Title:Ευρώ
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:423.0 score: : 0.014184397163120567
Title:Ευρωζώνη
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:428.0 score: : 0.014018691588785047
Title:Σλοβακία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:437.0 score: : 0.013729977116704805
Πρακτική Άσκηση Καλοκαίρι 2013
15
Title:Λεττονία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:453.0 score: : 0.013245033112582781
Title:Κυβέρνηση Λουκά Παπαδήμου 2011
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική
Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:626.0 score: : 0.012779552715654952
Title:Ελληνικές ευρωεκλογές 2004
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος;
total links:479.0 score: : 0.012526096033402923
Title:Ράντοβαν Κάρατζιτς
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος;
total links:493.0 score: : 0.012170385395537525
Title:Τράπεζα της Ελλάδος
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:493.0 score: : 0.012170385395537525
Title:Διεθνές Νομισματικό Ταμείο
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:496.0 score: : 0.012096774193548387
Πρακτική Άσκηση Καλοκαίρι 2013
16
Title:Εσθονία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:498.0 score: : 0.012048192771084338
Title:Τσεχία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:506.0 score: : 0.011857707509881422
Title:Βουλγαρία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:513.0 score: : 0.011695906432748537
Title:Συνθήκη της Λισαβόνας
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;
total links:525.0 score: : 0.011428571428571429
Title:Λουξεμβούργο
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:533.0 score: : 0.01125703564727955
Title:Αριάδνη (πρόγραμμα ΕΕ)
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:357.0 score: : 0.011204481792717087
Πρακτική Άσκηση Καλοκαίρι 2013
17
Title:Europeana
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:358.0 score: : 0.0111731843575419
Title:Συνθήκη της Λισαβόνας (αποσαφήνιση)
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:358.0 score: : 0.0111731843575419
Title:ETwinning
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:359.0 score: : 0.011142061281337047
Title:Εισαγωγή αγαθών
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:359.0 score: : 0.011142061281337047
Title:Αμοιβαιότητα
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:359.0 score: : 0.011142061281337047
Title:Οικογενειακή επανένωση
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:360.0 score: : 0.011111111111111112
Πρακτική Άσκηση Καλοκαίρι 2013
18
Title:Αλλοδαπός
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:360.0 score: : 0.011111111111111112
Title:Κεντρική Τράπεζα της Κύπρου
Common links:Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
total links:360.0 score: : 0.011111111111111112
Title:Μηχανισμός Προενταξιακής Βοήθειας
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:360.0 score: : 0.011111111111111112
Title:Ευρωπαϊκή Οικονομική και Κοινωνική Επιτροπή
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:361.0 score: : 0.0110803324099723
Title:Νέα Δημοκρατία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή
Κεντρική Τράπεζα;
total links:723.0 score: : 0.011065006915629323
Title:Ευρωπαϊκές Κοινότητες
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Πρακτική Άσκηση Καλοκαίρι 2013
19
Title:Μπενιάμινα Τίνγκα
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;
total links:362.0 score: : 0.011049723756906077
Title:Τελωνειακός Κώδικας
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Title:Λιθουανία
Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:543.0 score: : 0.011049723756906077
Title:Κοινή αγροτική πολιτική
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Title:Eurodicautom
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Title:Καλειδοσκόπιο (πρόγραμμα ΕΕ)
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Πρακτική Άσκηση Καλοκαίρι 2013
20
Title:Ανδρέας Γεωργίου (οικονομολόγος)
Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;
total links:362.0 score: : 0.01104972375690607
Title:Ευρωβουλευτής
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:362.0 score: : 0.011049723756906077
Title:Ξενοδοχειακό Επιμελητήριο Ελλάδος
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:363.0 score: : 0.011019283746556474
Title:Δικτυακή πύλη της ΕΕ για την υγεία
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:363.0 score: : 0.011019283746556474
Title:Σύμβαση-Πλαίσιο των Ηνωμένων Εθνών για τις Κλιματικές Μεταβολές
Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;
total links:364.0 score: : 0.01098901098901099

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

3080027FinalReport

  • 1. Πρακτική Άσκηση Καλοκαίρι 2013 Τελική Αναφορά Ονοματεπώνυμο: Γεωργίου Μαρία Βαρβάρα Α.Μ Φοιτητή: 3080027 Φορέας Υλοποίησης: Qualia Τεχνολογίες Κατανόησης Α.Ε. Εργασιακός Επιβλέποντας: Ιάσων Δεμοίρος Επιβλέπων Καθηγητής: Ίων Ανδρουτσόπουλος
  • 2. Πρακτική Άσκηση Καλοκαίρι 2013 2 1.Εισαγωγή Main Project Τίτλος Αναζήτηση πληροφορίας σε γράφους δεδομένων που δημιουργούνται με βάση την ελληνική έκδοση του Wikipedia Σκοπός Η εργασία αυτή εντάσσεται στα πλαίσια ενός γενικότερου έργου που αφορά στην κατασκευή προφίλ αναζήτησης πληροφορίας στα διαδικτυακά δεδομένα. Τα στοιχεία της αναζήτησης ονομάζονται οντότητες (entities) και μπορεί να είναι λέξεις-κλειδιά, φράσεις ή ονόματα ή οποιοσδήποτε συνδυασμός αυτών. Ως προφίλ αναζήτησης ορίζεται ένα σύνολο από τέτοιες οντότητες. Βασικός στόχος είναι το προφίλ να δημιουργείται ημιαυτόματα μέσω τεχνικών ανάκτησης πληροφορίας (information retrieval) που θα δώσουν τη δυνατότητα στο χρήστη να δημιουργεί κανόνες που φιλτράρουν λέξεις και φράσεις οι οποίες ανακτούν μη σχετική πληροφορία. Έτσι εξασφαλίζουμε μεγαλύτερη ακρίβεια στην ανάκτηση και παρουσιάζουμε στον τελικό χρήστη πληροφορία σχετική με τις ανάγκες του (relevant). Το πρώτο βήμα στην παραπάνω διαδικασία είναι να δημιουργηθούν κάποιες βάσεις γνώσης, στις οποίες θα μπορεί να γίνεται αναζήτηση των παραπάνω οντοτήτων και σύγκρισή τους με άλλες οντότητες. Στην εργασία αυτή εστιάζουμε στην πρώτη τέτοια βάση, η οποία είναι το ελληνικό Wikipedia. Τη μοντελοποιούμε με τη χρήση Νeo4j που αποτελεί ένα από τα πιο διαδεδομένα εργαλεία στην αγορά για τη δημιουργία βάσεων δεδομένων σε μορφή γράφου.
  • 3. Πρακτική Άσκηση Καλοκαίρι 2013 3 2. Εξαγωγή οντοτήτων από την wikipedia 2.1 Εξαγωγή οντοτήτων Αρχικά έγινε μελέτη του Wikipedia dump [2] (πρόκειται για ένα XML αρχείο με όλα τα άρθρα της ελληνικής Wikipedia) με στόχο να βρεθεί ποιες πληροφορίες της σελίδας είναι αξιοποιήσιμες για τη δημιουργία οντοτήτων έτσι ώστε να είναι δυνατή αργότερα η μεταξύ τους σύγκριση, μέσω μετρικών αξιολόγησης σημασιολογικής συνάφειας. Ως οντότητες στο πεδίο της Wikipedia ορίστηκαν: 1. Τα άρθρα 2. Οι μοναδικές κατηγορίες στις οποίες ανήκαν τα άρθρα. Ως ιδιότητες της οντότητας "-Άρθρο-" ορίστηκαν τα εξής: (Παρατήρηση: οι οντότητες της Wikipedia δεν είναι ίδιες με τις οντότητες αναζήτησης που είδαμε στην εισαγωγή. Στο εξής ως οντότητες θα αναφέρονται αυτές της Wikipedia, ενώ όταν θα αναφερόμαστε στην αναζήτηση θα προσδιορίζουμε τις οντότητες ως οντότητες αναζήτησης.) 1 . Τίτλος του άρθρου. 2. Συνολικό κείμενο 3. Επικεφαλίδες επιμέρους ενοτήτων (headers) 4. Τίτλοι συνδέσμων προς άλλα άρθρα της Wikipedia 5. Σύνδεσμοι προς σελίδες εκτός της Wikipedia 6. Κατηγορίες στις οποίες ανήκει το άρθρο 7. Τίτλοι συνδέσμων κάτω από την επικεφαλίδα "-Δείτε επίσης-" (πρόκειται για συνδέσμους προς άρθρα της Wikipedia) 8. Πηγές
  • 4. Πρακτική Άσκηση Καλοκαίρι 2013 4 9. Redirect (πρόκειται για τους εναλλακτικούς τίτλους του άρθρου μέσω των οποίων μπορεί να γίνεται αναφορά σε αυτό από άλλες σελίδες.) Ως ιδιότητες της οντότητας " -Kατηγορία-" ορίστηκαν τα εξής: 1 . Τίτλος κατηγορίας. 2.2 Υλοποίηση Με τη χρήση του Java wiki API [2] έγινε το parsing του Wikipedia dump XML . Από αυτό πάρθηκε ο τίτλος και το πλήρες κείμενο (full text) του κάθε άρθρου. Το πλήρες κείμενο έχει τέτοια δομή ώστε να είναι εύκολα δυνατή η εξαγωγή βασικών στοιχείων του άρθρου όπως οι τίτλοι των links προς άλλα άρθρα της Wikipedia, τα headers, οι κατηγορίες στις οποίες ανήκει ένα άρθρο κ.τ.λ. Προκειμένου όμως να εξαχθούν οι επιπλέον πληροφορίες, όπως για παράδειγμα συγκεκριμένες κατηγορίες links (See Also), οι πηγές και οι σύνδεσμοι προς εξωτερικές πηγές, χρειάστηκε περαιτέρω μελέτη και επεξεργασία. Τα παραπάνω στοιχεία βρίσκονται κάτω από ένα σύνολο επικεφαλίδων (headers), επομένως εξήχθησαν όλες (headers extract) σε μία λίστα και κατατάχθηκαν σε φθίνουσα σειρά ανάλογα με τη συχνότητα εμφάνισης τους στο σύνολο των άρθρων. Φάνηκε πως ένα πολύ μεγάλο ποσοστό εμφανίζεται από μία έως τρεις φορές. Υπάρχουν πολλά headers τα οποία είναι ίδια αλλά φαίνονται ως μοναδικά λόγω ορθογραφικών λαθών ή διαφορετικού τρόπου διατύπωσης (π.χ. εξωτερικοί σύνδεσμοι, εξωτερικές συνδέσεις κ.τ.λ.) Για τις ανάγκες εξαγωγής των άνω πληροφοριών κρατήθηκαν από ένα έως έξι διαφορετικές διατυπώσεις των σχετικών headers με τις προς εξαγωγή πληροφορίες. Τα headers έχουν κρατηθεί και για κάθε article ξεχωριστά για πιθανή τους χρήση ως μεταδεδομένα (metadata). Η εξαγωγή όλων των στοιχείων έγινε με τη χρήση regular expressions και αποθηκεύτηκε σε ένα binary αρχείο σε κατάλληλη μορφή.
  • 5. Πρακτική Άσκηση Καλοκαίρι 2013 5 Τέλος δημιουργήθηκε άλλο ένα αρχείο με τις μοναδικές κατηγορίες που βρέθηκαν κατά την ανάλυση (parsing) άρθρων. 3. Δημιουργία βάσης δεδομένων 3.1 Neo4j Το neo4j [3], [4] είναι ένα εργαλείο, το οποίο χρησιμοποιείται για την δημιουργία και τον χειρισμό βάσεων δεδομένων σε μορφή γράφου. Προσφέρει ότι και μία βάση SQL αλλά και πολλές άλλες δυνατότητες λόγο της συγκεκριμένης μορφής. Πρόκειται για ένα από τα πιο διαδεδομένα εργαλεία για αυτό τον σκοπό, τόσο στην ακαδημαϊκή κοινότητα, όσο και στην αγορά. Μπορεί κάποιος να ορίσει οντότητες (κόμβους) αντί για τα instances μίας κλασικής βάσης. Μέσα σε κάθε οντότητα μπορούν να οριστούν ιδιότητες (δεν είναι υποχρεωτικό να έχουν όλοι οι κόμβοι τις ίδιες ιδιότητες ή μπορεί ένας κόμβος να μην έχει καθόλου) καθώς και να ορίσει σχέσεις μεταξύ αυτών (κατευθυνόμενες ακμές) οι οποίες επίσης μπορούν να περιέχουν ιδιότητες. Για παράδειγμα, έστω 100 κόμβοι οι οποίοι αντιπροσωπεύουν πρόσωπα. Κάθε κόμβος θα έχει ως ιδιότητες το όνομα, την ηλικία και τον τόπο διαμονής του κάθε προσώπου. Ως σχέση θα οριστεί η Α-"γνωρίζει"->Β η οποία θα είναι μία κατευθυνόμενη ακμή μεταξύ δύο κόμβων που ορίζεται αν και μόνο αν αυτά τα πρόσωπα γνωρίζονται μεταξύ τους.
  • 6. Πρακτική Άσκηση Καλοκαίρι 2013 6 3.2 Graph Creation 3.2.1 Κόμβοι και Σχέσεις Ως κόμβοι της βάσης ορίστηκαν οι οντότητες που εξήχθησαν από το Wikipedia, όπως περιγράφηκαν παραπάνω. Προστέθηκαν ακόμα δύο ιδιότητες, ο τίτλος σε normalized και stemmed μορφή με τη χρήση της βιβλιοθήκης της Qualia για επεξεργασία γλώσσας (QualiaLangTool.jar) Ως σχέσεις (κατευθυνόμενες ακμές) ορίστηκαν οι εξής: 1.relates_to: ορίζεται από ένα κόμβο Α σε ένα κόμβο Β αν υπάρχει αναφορά στο property που περιέχει τους τίτλους σελίδων της wikipedia, στις οποίες αναφέρεται η Α (ιδιότητα 7 παραπάνω) - του Α στον Β. 2.belongs_to: ορίζεται από ένα κόμβο Α προς ένα κόμβο κατηγορίας, αν ο τίτλος του δεύτερου περιέχεται στο property με τις κατηγορίες (ιδιότητα 6) του Α. 3.links_to: ορίζεται από ένα κόμβο Α προς κάθε ένα από τους κόμβους που υποδεικνύει η ιδιότητα 4 (τίτλοι συνδέσμων προς άλλα άρθρα της wikipedia). 3.3 Υλοποίηση 3.3.1 Εισαγωγή Δεδομένων στη Βάση Για την εισαγωγή των δεδομένων, χρησιμοποιήθηκαν τα πακέτα που παρέχονται από το Νeo4j για τη δημιουργία μιας νέας βάσης. Διαβάζοντας τα άρθρα από το binary αρχείο που δημιουργήθηκε από τον parser, έγινε η εισαγωγή των κόμβων ορίζοντας σε αυτούς τις ιδιότητες όπως περιγράφηκαν στην παράγραφο 3.2.1. Στη συνέχεια και με βάση τη δεύτερη λίστα, που επίσης δημιουργήθηκε από τον parser, γίνεται η δημιουργία και εισαγωγή των κόμβων κατηγοριών με τις αντίστοιχες ιδιότητες (title, normalized title και stemmed title ). Η εισαγωγή έγινε σε δύο βρόγχους(έναν για τα άρθρα και έναν για τις σελίδες
  • 7. Πρακτική Άσκηση Καλοκαίρι 2013 7 κατηγορίας). Σε κάθε επανάληψη ανοίγει ένα transaction με τη βάση, γίνεται η δημιουργία και η εισαγωγή πολλαπλών κόμβων και ύστερα κλείνει το transaction αυτό. Oι επαναλήψεις συνεχίζονται μέχρι να εισαχθούν όλοι οι κόμβοι στη βάση. Μετά την ολοκλήρωση της εισαγωγής των κόμβων έγινε ένα iteration πάνω σε αυτούς με σκοπό να βρεθούν, όπου υπάρχουν, οι σχέσεις της παραγράφου 3.2.1 και να εισαχθούν και αυτές στη βάση. Ο τρόπος εισαγωγής τους είναι ίδιος με αυτών των κόμβων. Γενική επισκόπηση της βάσης του Wikipedia. 3.3.2 Indexing To Neo4j παρέχει λειτουργικότητα full text indexing μέσω της βιβλιοθήκης Apache Lucene. Δημιουργήθηκαν τρία indexes. Ένα με βάση τον τίτλο και ακόμα δύο με βάση τις δύο παραλλαγές του τίτλου: normalized και stemmed. Χρησιμοποιήθηκαν τα full text indexes τα οποία κάνουν white space tokenization και μετατρέπουν όλους τους χαρακτήρες σε μικρά (lower case) και κάνουν την αναζήτηση στον γράφο, με βάση τα περιεχόμενα του τίτλου να μην εξαρτάται από μικρά ή κεφαλαία (case insensitive).
  • 8. Πρακτική Άσκηση Καλοκαίρι 2013 8 Μέρος της βάσης από το visualization tool που παρέχει το Νeo4j
  • 9. Πρακτική Άσκηση Καλοκαίρι 2013 9 4. Σημασιολογική Σύγκριση σελίδων 4.1 Σημασιολογική ομοιότητα μεταξύ σελίδων της Wikipedia. Με βάση τη βιβλιογραφία που μελετήθηκε, η σημασιολογική ομοιότητα μεταξύ δύο άρθρων της Wikipedia μετριέται με βάση τα links που σχετίζονται με τα άρθρα αυτά. Η μετρική η οποία χρησιμοποιήθηκε εδώ είναι το weighted Dice metric των Denis Turdakov και Pavel Velikhov [1]: Όπου n(A) είναι τα άρθρα που συνδέονται με το άρθρο Α (αυτά που δείχνουν σε αυτό και αυτά στα οποία δείχνει το Α) και ομοίως n(B) είναι τα άρθρα τα οποία συνδέονται με το άρθρο Β. Τα links ενός άρθρου, όπως εξήχθησαν από αυτό, χωρίζονται σε δύο κατηγορίες: 1. Regular links: πρόκειται για την ιδιότητα 4 (παράγραφος 2.1) που αφορά links προς άλλα άρθρα και σελίδες κατηγοριών. 2. See Also links: πρόκειται για την ιδιότητα 7 (παράγραφος 2.1) η οποία αφορά τα links κάτω από την επικεφαλίδα "Δείτε επίσης". Στον υπολογισμό του συντελεστή Dice κάθε είδος link έχει ένα συγκεκριμένο βάρος. Εμπειρικά και με βάση τον προτεινόμενο πίνακα βαρών [1] δόθηκε βάρος w1=1 στα Regular links και βάρος w2=5 στα See Also links. Links προς ημερομηνίες και αριθμούς αγνοήθηκαν τελείως καθώς με βάση τα πειράματα που έχουν γίνει πάνω στην αγγλική wikipedia [1], δεν προσφέρουν σχεδόν καθόλου πληροφορία για τη σημασιολογική σύγκριση των σελίδων. Όσον αφορά αυτή την εργασία, ο υπολογισμός αυτής της μετρικής έχει ως σκοπό την ανάκτηση των k πιο σχετικών άρθρων της Wikipedia σε σχέση με ένα συγκεκριμένο άρθρο το οποίο έχει επιλέξει ο χρήστης. Για το λόγο αυτόν δημιουργήθηκε ένα πρόγραμμα μέσω του οποίου γίνεται αναζήτηση στη βάση με λέξεις-κλειδιά. Ύστερα επιστρέφονται τα σχετικά άρθρα με βάση τον τίτλο και από αυτά επιλέγει ο χρήστης ένα. Υπολογίζεται η μετρική Dice αυτού του άρθρου με όλα
  • 10. Πρακτική Άσκηση Καλοκαίρι 2013 10 τα υπόλοιπα και τέλος επιστρέφονται τα k άρθρα με τα μεγαλύτερο score. 4.2 Αξιολόγηση Η εργασία ολοκληρώθηκε στο σημείο αυτό και το επόμενο βήμα είναι η αξιολόγηση της μεθόδου που υλοποιήθηκε. Δεν έχει γίνει ολοκληρωμένη αξιολόγηση, για την οποία θα πρέπει να επιλεγούν τα κατάλληλα ερωτήματα, να αντιστοιχηθούν στους κόμβους της Wikipedia και μετά να γίνει ανάκτηση συναφών κόμβων με βάση τη σημασιολογική απόσταση που περιγράφηκε παραπάνω, σε σχολιασμένο υλικό. Εμείς σταματήσαμε την εργασία μας στο σημείο που δίνουμε ερωτήματα στη βάση και ανακτούμε το σύνολο των συναφών κόμβων, όπως στο παράδειγμα που δείχνει τις σχέσεις του κόμβου με τίτλο "Ελληνική κρίση χρέους 2010-2013" με σχετικούς κόμβους της Wikipedia (παρατίθεται στο Παράρτημα). Τα επόμενα βήματα, στα πλαίσια της εργασίας αυτής, είναι μια ενδελεχής αξιολόγηση, εκ νέου επίσκεψη στο σκορ ομοιότητας και κανονικοποίηση σε μια κλίμακα 0-1, υλοποίηση και αξιολόγηση άλλων μετρικών ομοιότητας και φιλτράρισμα θορύβου για συγκεκριμένα προβλήματα που έχουμε εντοπιστεί.
  • 11. Πρακτική Άσκηση Καλοκαίρι 2013 11 ΑΝΑΦΟΡΕΣ [1] Denis Turdakov, Pavel Velikhov, "Semantic Relatedness Metric for Wikipedia Concepts Based on Link Analysis and its Application to Word Sense Disambiguation", SYRCoDIS, St.- Petersburg, Russia, 2008 ,pages 2-3. [2] Wikipedia Dump Parser, https://code.google.com/p/gwtwiki/. [3] Neo4j, http://www.neo4j.org/. [4] Neo4j manual, http://docs.neo4j.org/.
  • 12. Πρακτική Άσκηση Καλοκαίρι 2013 12 ΠΑΡΑΡΤΗΜΑ Στο παράδειγμα που ακολουθεί παρουσιάζουμε τα αποτελέσματα της αναζήτησης για το άρθρο "Ελληνική κρίση χρέους 2010-2013". Κάθε σχετικός κόμβος εμφανίζεται με τον τίτλο του, τα κοινά links με τον αρχικό κόμβο, το συνολικό αριθμό των links και ένα σκορ ομοιότητας με τον αρχικό κόμβο. Η κατάταξη έχει γίνει με βάση το σκορ ομοιότητας. Εμφανίζονται τα 50 κείμενα με το μεγαλύτερο score. ΕΛΛΗΝΙΚΗ ΚΡΙΣΗ ΧΡΕΟΥΣ 2010-2013 Title:Απεργιακές κινητοποιήσεις στην Ελλάδα την άνοιξη του 2010 Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Καστελόριζο;Μάιος;Μαΐου; total links:442.0 score: : 0.03167420814479638 Title:Βιβλιοθήκη της Τράπεζας της Ελλάδος Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:393.0 score: : 0.030534351145038167 Title:Άννα Μπενάκη - Ψαρούδα Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:417.0 score: : 0.02877697841726619 Title:Eurogroup Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:364.0 score: : 0.02197802197802198
  • 13. Πρακτική Άσκηση Καλοκαίρι 2013 13 Title:Ευρωπαϊκό Ταμείο Χρηματοπιστωτικής Σταθερότητας Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:373.0 score: : 0.021447721179624665 Title:Γενς Βάιντμαν Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:376.0 score: : 0.02127659574468085 Title:Δανειακή σύμβαση της Ελλάδας τον Μάιο του 2010 Common links:Πτώχευση κράτους;Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:391.0 score: : 0.020460358056265986 Title:Πραξούλα Αντωνιάδου Common links:Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:416.0 score: : 0.019230769230769232 Title:Κριστίν Λαγκάρντ Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:424.0 score: : 0.018867924528301886 Title:Φιάνα Φάιλ Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας;
  • 14. Πρακτική Άσκηση Καλοκαίρι 2013 14 total links:425.0 score: : 0.01882352941176470 Title:Τομάσο Πάντοα - Σκιόππα Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική Τράπεζα; total links:376.0 score: : 0.015957446808510637 Title:Ευρωπαϊκή Κεντρική Τράπεζα Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:394.0 score: : 0.015228426395939087 Title:Ιούνιος 2005 Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος; total links:403.0 score: : 0.01488833746898263 Title:Ευρώ Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:423.0 score: : 0.014184397163120567 Title:Ευρωζώνη Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:428.0 score: : 0.014018691588785047 Title:Σλοβακία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:437.0 score: : 0.013729977116704805
  • 15. Πρακτική Άσκηση Καλοκαίρι 2013 15 Title:Λεττονία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:453.0 score: : 0.013245033112582781 Title:Κυβέρνηση Λουκά Παπαδήμου 2011 Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου;Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:626.0 score: : 0.012779552715654952 Title:Ελληνικές ευρωεκλογές 2004 Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος; total links:479.0 score: : 0.012526096033402923 Title:Ράντοβαν Κάρατζιτς Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Μάιος; total links:493.0 score: : 0.012170385395537525 Title:Τράπεζα της Ελλάδος Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:493.0 score: : 0.012170385395537525 Title:Διεθνές Νομισματικό Ταμείο Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:496.0 score: : 0.012096774193548387
  • 16. Πρακτική Άσκηση Καλοκαίρι 2013 16 Title:Εσθονία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:498.0 score: : 0.012048192771084338 Title:Τσεχία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:506.0 score: : 0.011857707509881422 Title:Βουλγαρία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:513.0 score: : 0.011695906432748537 Title:Συνθήκη της Λισαβόνας Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:525.0 score: : 0.011428571428571429 Title:Λουξεμβούργο Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:533.0 score: : 0.01125703564727955 Title:Αριάδνη (πρόγραμμα ΕΕ) Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:357.0 score: : 0.011204481792717087
  • 17. Πρακτική Άσκηση Καλοκαίρι 2013 17 Title:Europeana Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:358.0 score: : 0.0111731843575419 Title:Συνθήκη της Λισαβόνας (αποσαφήνιση) Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:358.0 score: : 0.0111731843575419 Title:ETwinning Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:359.0 score: : 0.011142061281337047 Title:Εισαγωγή αγαθών Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:359.0 score: : 0.011142061281337047 Title:Αμοιβαιότητα Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:359.0 score: : 0.011142061281337047 Title:Οικογενειακή επανένωση Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:360.0 score: : 0.011111111111111112
  • 18. Πρακτική Άσκηση Καλοκαίρι 2013 18 Title:Αλλοδαπός Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:360.0 score: : 0.011111111111111112 Title:Κεντρική Τράπεζα της Κύπρου Common links:Ευρωπαϊκή Κεντρική Τράπεζα;Ευρωπαϊκής Κεντρικής Τράπεζας; total links:360.0 score: : 0.011111111111111112 Title:Μηχανισμός Προενταξιακής Βοήθειας Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:360.0 score: : 0.011111111111111112 Title:Ευρωπαϊκή Οικονομική και Κοινωνική Επιτροπή Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:361.0 score: : 0.0110803324099723 Title:Νέα Δημοκρατία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης;Ευρωπαϊκή Κεντρική Τράπεζα; total links:723.0 score: : 0.011065006915629323 Title:Ευρωπαϊκές Κοινότητες Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077
  • 19. Πρακτική Άσκηση Καλοκαίρι 2013 19 Title:Μπενιάμινα Τίνγκα Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου; total links:362.0 score: : 0.011049723756906077 Title:Τελωνειακός Κώδικας Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077 Title:Λιθουανία Common links:Διεθνές Νομισματικό Ταμείο;Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:543.0 score: : 0.011049723756906077 Title:Κοινή αγροτική πολιτική Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077 Title:Eurodicautom Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077 Title:Καλειδοσκόπιο (πρόγραμμα ΕΕ) Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077
  • 20. Πρακτική Άσκηση Καλοκαίρι 2013 20 Title:Ανδρέας Γεωργίου (οικονομολόγος) Common links:Διεθνές Νομισματικό Ταμείο;Διεθνούς Νομισματικού Ταμείου; total links:362.0 score: : 0.01104972375690607 Title:Ευρωβουλευτής Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:362.0 score: : 0.011049723756906077 Title:Ξενοδοχειακό Επιμελητήριο Ελλάδος Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:363.0 score: : 0.011019283746556474 Title:Δικτυακή πύλη της ΕΕ για την υγεία Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:363.0 score: : 0.011019283746556474 Title:Σύμβαση-Πλαίσιο των Ηνωμένων Εθνών για τις Κλιματικές Μεταβολές Common links:Ευρωπαϊκή Ένωση;Ευρωπαϊκής Ένωσης; total links:364.0 score: : 0.01098901098901099