Εισαγωγή στους Αλγόριθμους

Σχετικά έγγραφα
Πώς «βρίσκουν» οι Μηχανές Αναζήτησης ;

Πώς γεννήθηκαν οι μεγάλες ιδέες της επιστήμης των υπολογιστών

Πώς γεννήθηκαν οι μεγάλες ιδέες της επιστήμης των υπολογιστών

Πώς λειτουργεί το Google?

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης

ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Μηχανές αναζήτησης

Περιεχόμενα. Δημιουργία σύνδεσης ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ Γνωριμία με μια ιστοσελίδα:... 38

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου

Ο αλγόριθμος PageRank της Google

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΜΑΡΚΕΤΙΝΓΚ

6η Δραστηριότητα. Ναυμαχία Αλγόριθμοι αναζήτησης. Περίληψη. Αντιστοιχία με το σχολικό πρόγραμμα * Ικανότητες. Ηλικία. Υλικά

Το πρόβλημα του σταθερού γάμου

Vodafone Business Connect

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή


ΕΙΔΗ ΕΡΕΥΝΑΣ I: ΠΕΙΡΑΜΑΤΙΚΗ ΕΡΕΥΝΑ & ΠΕΙΡΑΜΑΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ

Πληροφοριακά Συστήματα Διοίκησης

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

Εγχειρίδιο Χρήστη - Μαθητή

enotita-b3 11/9/ :42 #ϊ ΑΪ>& 145

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Εγχειρίδιο Συμμετοχής σε Ψηφοφορία για την ανάδειξη Διευθυντή Σχολής ΤΕΙ ΑΘΗΝΑΣ 2014

Το σύστημα Βοήθειας του Internet Explorer

Κατακερματισμός (Hashing)

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Εργασία-3: Παρουσίαση Εργασίας. Ομάδα Α. Προετοιμασία Αναφοράς

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω:

«Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ.

6 Εικόνα εξώφυλλου: Λωρίδα του Mobius (Σύνθεση). Νικόλαος Μπαλκίζας 10

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Εγχειρίδιο Φοιτητή. Course Management Platform. Εισαγωγή. for Universities Ομάδα Ασύγχρονης Τηλεκπαίδευσης Παν. Μακεδονίας Σεπτέμβριος 2004

SilverPlatter WebSPIRS 4.1.

Δομές Δεδομένων & Αλγόριθμοι

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΑΘΗΜΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Οδηγίες Δημιουργία Λογαριασμού - Profile για το Google Scholar.

Δικτυακοί τόποι. Η σχεδίαση ενός δικτυακού τόπου. Δρ. Ματθαίος Α. Πατρινόπουλος

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 11 : Ο αλγόριθμος PageRank της Google. Δρ.

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL: στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

Αναζήτηση Πληροφοριών στο Διαδίκτυο

ΟΔΗΓΙΕΣ ΧΡΗΣΤΗ ΓΙΑ ΤΟ ΠΡΟΓΡΑΜΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ ΤΑΞΗΣ

Άσκηση 5 Firefox Αποθήκευση αρχείων

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Social Web: lesson #4

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Microsoft Excel Κεφάλαιο 2: Η δομή ενός φύλλου εργασίας... 26

Αύξηση πελατών. Λίγα λόγια για Επιτυχημένες προωθήσεις

ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΟΥ Explorer & Outlook 2013

Βάσεις δεδομένων και Microsoft Access

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

Άνοιγμα (και κλείσιμο) της εφαρμογής Εγγράφου Κειμένου

Μάθημα 4ο. Προγράμματα

E-commerce Networks & Applications. Η διαφήμιση στο Internet. Νίκος Κωνσταντίνου

Βάσεις Δεδομένων. Εργαστήριο 1. Ηλεκτρονικοί Υπολογιστές ΙI. Ακαδημαϊκό Έτος Διαφάνεια 1. Κάπαρης Αναστάσιος

Ανάκληση Πληποφοπίαρ. Διδάζκων Δημήηριος Καηζαρός

Διασφάλιση της ποιότητας της ιατρικής πληροφορίας στο Διαδίκτυο. Γκουνταβά Ευφροσύνη

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Πληροφορική 2. Τεχνητή νοημοσύνη

Αναζήτηση σε όλα τα άρθρα των επιστηµονικών περιοδικών στα οποία το Α.Π.Θ. είναι συνδροµητής. Η αναζήτηση µπορεί να γίνει µε βάση λέξεις κλειδιά σε

ΛΟΓΙΣΜΟΣ ΜΙΑΣ ΜΕΤΑΒΛΗΤΗΣ, ΕΣΠΙ 1

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

Συστήματα Υποστήριξης Αποφάσεων

Περιεχόμενα. Αντί προλόγου Πώς να χρησιμοποιήσετε το βιβλίο Κεφάλαιο 1: Πώς δημιουργώ το Προφίλ μου στο Facebook;...

GreekLUG Ελεύθερο Λογισμικό & Λογισμικό Ανοικτού Κώδικα

Ένα παιχνίδι των πολυγώνων

Υπολογιστικά & Διακριτά Μαθηματικά

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

EBSCOhost Research Databases

Λίγα λόγια από το συγγραφέα Βάσεις δεδομένων και Microsoft Access Microsoft Access... 22

Διακριτά Μαθηματικά. Απαρίθμηση: Εισαγωγικά στοιχεία Αρχή του Περιστεριώνα

Κάνοντας ακριβέστερες μετρήσεις με την βοήθεια των Μαθηματικών. Ν. Παναγιωτίδης, Υπεύθυνος ΕΚΦΕ Ν. Ιωαννίνων

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ


Περιεχόμενα. Λίγα λόγια από το συγγραφέα...7 Κεφάλαιο 1: Προετοιμασία παρουσίασης...9. Κεφάλαιο 2: Διαχείριση παρουσίασης...44

Οδηγίες Εικόνα 1 Εικόνα 2

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Οδηγός αναζήτησης στο Google και στο Google Scholar

Ταυτότητα εκπαιδευτικού σεναρίου

Απαρίθμηση: Εισαγωγικά στοιχεία

Οδηγός γρήγορης εκκίνησης του PowerSuite

10 Νέα χαρακτηριστικά του Facebook που (πιθανόν) δεν γνωρίζεις

Σειρά Προβλημάτων 4 Λύσεις

Σχέδια μαθημάτων για την δημιουργία συναρτήσεων υπολογισμού του ΜΚΔ και του ΕΚΠ στην MSWLogo

PowerPoint Ένα εργαλείο παρουσίασης

Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Επιμέλεια Καραβλίδης Αλέξανδρος. Πίνακας περιεχομένων

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

O μετασχηματισμός μιας «διαθεματικής» δραστηριότητας σε μαθηματική. Δέσποινα Πόταρη Πανεπιστήμιο Πατρών

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

PISA. Programme for International Student Assessment. Διεθνές Πρόγραμμα για την Αξιολόγηση των Μαθητών

Εγκατάσταση της Unity

Μελέτη Περίπτωσης: Random Surfer

Transcript:

Εισαγωγή στους Αλγόριθμους Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

Σκοποί ενότητας Παρουσίαση και μελέτη του αλγορίθμου Pagerank

Περιεχόμενα ενότητας ΟαλγόριθμοςPagerank

Εισαγωγή στους Αλγόριθμους ΟαλγόριθμοςPagerank

Πώς γεννήθηκαν οι μεγάλες ιδέες της επιστήμης των υπολογιστών 5

930 1930 948 956 969 974 996 πριν ακόμα κατασκευαστεί ο πρώτος ψηφιακός υπολογιστής, ένας μεγαλοφυής Βρετανός (Alan Turing) θεμελιώνει την επιστήμη των υπολογιστών αποδεικνύοντας ότι συγκεκριμένα προβλήματα δε μπορούν να λυθούν από κανέναν υπολογιστή που θα κατασκευαστεί ποτέ στο μέλλον, όσο γρήγορος, ισχυρός ή έξυπνα σχεδιασμένος κι αν είναι 6

930 1948 948 956 969 974 996 ένας επιστήμονας (Richard Hamming) εργαζόμενος σε τηλεφωνική εταιρεία (Bell) δημοσιεύει μια εργασία που θεμελιώνει το πεδίο της θεωρίας της πληροφορίας (information theory) η δουλειά του επιτρέπει στους υπολογιστές να μεταφέρουν μηνύματα με απόλυτη ακρίβεια ακόμα και όταν το μεγαλύτερο μέρος των δεδομένων είναι κατεστραμμένο/παραποιημένο λόγω παρεμβολών 7

930 1956 948 956 969 974 996 μια ομάδα ακαδημαϊκών συμμετέχουν σε συνέδριο στο Dartmouth με στόχο τη θεμελίωση του πεδίου της τεχνητής νοημοσύνης (artificial intelligence) ακόμα, βέβαια, περιμένουμε τη δημιουργία ενός πραγματικά ευφυούς προγράμματος για υπολογιστή http://sansimeracomputers.wordpress.com/2013/11/05/ai/ http://www.dartmouth.edu/~vox/0607/0724/ai50.html 8

930 1969 948 956 969 974 996 ένας ερευνητής της IBM (Edgar Frank Ted Codd) ανακαλύπτει έναν κομψό τρόπο για να δομείται η πληροφορία σε μια βάση δεδομένων (database) ητεχνικήτου χρησιμοποιείται σήμερα για αποθήκευση και ανάκτηση πληροφοριών υποστηρίζοντας τις περισσότερες online συναλλαγές 9

930 1974 948 956 969 974 996 ερευνητές της βρετανικής κυβέρνησης για μυστικές επικοινωνίες ανακαλύπτουν έναν τρόπο με τον οποίο δύο υπολογιστές μπορούν να επικοινωνούν με ασφάλεια ακόμα κι όταν κάποιος άλλος υπολογιστής μπορεί να παρατηρεί οτιδήποτε μεταφέρεται μεταξύ τους oι ερευνητές δεσμεύονται λόγω κυβερνητικού απορρήτου αλλά ευτυχώς, Αμερικανοί καθηγητές (Diffie, Hellman & Shamir, Rivest, Adleman), ανεξάρτητα, ανακαλύπτουν και επεκτείνουν αυτή την εντυπωσιακή εφεύρεση που βρίσκεται πίσω από κάθε ασφαλή επικοινωνία στο Διαδίκτυο (internet) 10

930 1996 948 956 969 974 996 δύο υποψήφιοι διδάκτορες στο Πανεπιστήμιο Stanford (Page, Brin) αποφασίζουν να συνεργαστούν για τη δημιουργία μιας μηχανής αναζήτησης στον Παγκόσμιο Ιστό (Web) λίγα χρόνια μετά, ιδρύουν τη Google, τον πρώτο ψηφιακό γίγαντα στην περιοχή του Διαδικτύου 11

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

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

Πώς κάνουμε πρόσθεση; 14

Χαρακτηριστικά αλγορίθμων σχεδόν μηχανικός χαρακτήρας: κάθε βήμα πρέπει να είναι απόλυτα ακριβές και να μην απαιτεί καμία ανθρώπινη διαίσθηση ή μαντεψιά, ώστε να μπορεί να προγραμματιστεί σε έναν υπολογιστή δουλεύει πάντα, ανεξάρτητα από τα δεδομένα εισόδου. Ο αλγόριθμος της πρόσθεσης που μάθαμε στο σχολείο έχει αυτή την ιδιότητα: όποιοι κι αν είναι οι δύο αριθμοί που πρέπει να αθροιστούν, ο αλγόριθμος τελικά θα δώσει τη σωστή απάντηση. Για παράδειγμα, αν και θα απαιτούταν αρκετός χρόνος, σίγουρα θα μπορούσατε να χρησιμοποιήσετε τον αλγόριθμο αυτό για να αθροίσετε δύο αριθμούς των 1000 ψηφίων ο καθένας Αφού ο αλγόριθμος περιγράφηκε σα μια ακριβής, μηχανική συνταγή, πόσο ακριβής πρέπει να είναι η συνταγή αυτή; Ποιες βασικές λειτουργίες επιτρέπονται; Για παράδειγμα, στο αλγόριθμο της πρόσθεσης, είναι αρκετό να πούμε μόνο πρόσθεσε τα δύο ψηφία ή πρέπει κάπως να διασαφηνίσουμε όλο το σύνολο των αποτελεσμάτων άθροισης μονοψήφιων αριθμών; Τέτοιες λεπτομέρειες μπορεί να φαίνονται ακίνδυνες ή σχολαστικές αλλά τελικά τα πράγματα δεν είναι έτσι: οι πραγματικές απαντήσεις βρίσκονται στην καρδιά της επιστήμης των υπολογιστών και συνδέονται σε φιλοσοφία, φυσική, επιστήμη μελέτης νευρικού συστήματος και γενετική. 15

Ορισμός αλγορίθμου Οι πολύ σημαντικές ερωτήσεις σχετικά με το τι στα αλήθεια είναι ένας αλγόριθμος συνοψίζονται σε μία πρόταση γνωστή σαν θέση των Church Turing Εμείς θα χρησιμοποιούμε στη συνέχεια για τον αλγόριθμο τον ανεπίσημο ορισμό του: μία πολύ ακριβής συνταγή 16

Πώς συνδέονται οι αλγόριθμοι με τους υπολογιστές; Το βασικό σημείο είναι ότι οι υπολογιστές πρέπει να προγραμματιστούν με πολύ ακριβείς/σαφείς εντολές Επομένως, πριν να χρησιμοποιήσουμε έναν υπολογιστή για να μας λύσει ένα συγκεκριμένο πρόβλημα, πρέπει να αναπτύξουμε έναν αλγόριθμο για το πρόβλημα αυτό Σε άλλες επιστήμες, όπως τα μαθηματικά και η φυσική, σημαντικά αποτελέσματα συνήθως συλλαμβάνονται από έναν τύπο Πολύ γνωστά παραδείγματα περιλαμβάνουν το Πυθαγόρειο θεώρημα, a 2 +b 2 =c 2, ή τον τύπο του Einstein E = mc 2 Αντίθετα, οι μεγάλες ιδέες στην επιστήμη των υπολογιστών περιγράφουν πώς να λυθεί ένα πρόβλημα χρησιμοποιώντας φυσικά έναν αλγόριθμο Επομένως, ο βασικός στόχος του μαθήματος είναι να εξηγήσει πώς ο υπολογιστής μας μετατρέπεται σε προσωπική μας μεγαλοφυΐα: εξαιτίας των σπουδαίων αλγορίθμων που χρησιμοποιεί καθημερινά 17

Τι κάνει σπουδαίο έναν αλγόριθμο; Τα κριτήρια που έχουμε χρησιμοποιήσει προκειμένου να επιλέξουμε τους αλγόριθμους που θα μελετήσουμε στo πλαίσιo του μαθήματος είναι τα εξής: Κριτήριο 1: καθημερινή χρήση οι αλγόριθμοι να χρησιμοποιούνται από συνηθισμένους υπολογιστές σε καθημερινή βάση Κριτήριο 2: πραγματικά προβλήματα οι αλγόριθμοι θα πρέπει να αντιμετωπίζουν διακριτά, πραγματικά προβλήματα όπως η συμπίεση ενός αρχείου ή η μετάδοσή του παρουσία παρεμβολών πάνω από ένα σύνδεσμο Κριτήριο 3: θεωρητική πλευρά της επιστήμης των υπολογιστών οι αλγόριθμοι πρέπει να σχετίζονται κυρίως με τη θεωρητική πλευρά της επιστήμης των υπολογιστών. Δε θα ασχοληθούμε με τεχνικές που δίνουν έμφαση στο υλικό των υπολογιστών (hardware) όπως CPU, οθόνη και δίκτυα ούτε με το σχεδιασμό υποδομών όπως το Διαδίκτυο 18

Πώς «βρίσκουν» οι Μηχανές Αναζήτησης ; ψάχνοντας ψύλλους στο μεγαλύτερο αχυρώνα του κόσμου 19

Το πρόβλημα Δεδομένα: WEB και η πληροφορία που περιέχεται σε αυτό Ερώτηση για αναζήτηση συγκεκριμένης πληροφορίας στο WEB Ζητούμενο: Γρήγορη επιστροφή λίστας με απαντήσεις ταξινομημένεςωςπροςτοπόσοσχετικέςείναιμε την ερώτηση 20

Μηχανές αναζήτησης (Ι) Οι μηχανές αναζήτησης (search engines) έχουν μεγάλη επίδραση στην καθημερινή μας ζωή και δραστηριότητα Ο τεράστιος όγκος διαθέσιμης πληροφορίας και η εξαιρετική ταχύτητα και ποιότητα των αποτελεσμάτων της αναζήτησης δε μάς κάνει πλέον εντύπωση (πολλές φορές είναι «εκνευριστική» ακόμα και η ελάχιστη καθυστέρηση ) Αλλά ξεχνάμε ότι οι πληροφορίες που ζητάμε βρίσκονται τελικά σαν ψύλλοι σε έναν τεράστιο αχυρώνα: τον Παγκόσμιο Ιστό (World Wide Web) Υπάρχει τεράστιος όγκος πληροφορίας αποθηκευμένος σε ισχυρότατα μηχανήματα (υπολογιστές) παγκοσμίως που όμως δε θα είχε πρακτικά καμία χρησιμότητα αν δεν υπήρχαν έξυπνοι αλγόριθμοι που οργανώνουν και βρίσκουν το ζητούμενο κάθε φορά 21

Μηχανές αναζήτησης (ΙΙ) Οι μηχανές αναζήτησης κάνουν 2 βασικές δουλειές: ταίριασμα (matching) και κατάταξη (ranking) Σκεφτείτε ότι δίνουμε στο google τηνεξής ερώτηση: «Δρομολόγια ΚΤΕΛ Αιτωλοακαρνανίας» Κατά τη φάση ταιριάσματος (matching) προσδιορίζονται όλες οι σελίδες που αναφέρουν τη ζητούμενη φράση (που ανάλογα με την ερώτηση μπορεί να είναι χιλιάδες ) Συνήθως προτιμάμε να ασχολούμαστε με τις πρώτες 5 10 απαντήσεις Οπότε η μηχανή αναζήτησης θα πρέπει να μπορεί να επιλέξει λίγες και μάλιστα τις καλύτερες απαντήσεις από ένα μεγάλος πλήθος απαντήσεων Μια καλή μηχανή αναζήτησης, δε θα επιλέξει μόνο τις καλύτερες απαντήσεις αλλά επιπλέον θα τις εμφανίσει και με την πιο κατάλληλη σειρά Ηεργασίατηςεπιλογής των καλύτερων απαντήσεων και της εμφάνισή τους με τη «σωστή» σειρά αποτελεί τη φάση της κατάταξης (ranking) 22

σελίδες που ταιριάζουν σελίδες σε κατάταξη 1 ερώτηση 2 Δρομολόγια ΚΤΕΛ Αιτωλοακαρνανίας ταίριασμα κατάταξη 3 4...... 23

24

οι μηχανές αναζήτησης ζουν ή πεθαίνουν ανάλογα με την ποιότητα των συστημάτων κατάταξης που χρησιμοποιούν 2002: στις ΗΠΑ, η αγορά είναι εξίσου μοιρασμένη σε Google, Yahoo και MSN (MSN μετονομάστηκε σε Live Search και μετά σε Bing) κάθε μία είχε περίπου το 30% των αναζητήσεων που γίνονταν στις ΗΠΑ Στα επόμενα χρόνια, η Google συνέτριψε τις δύο άλλες εταιρείες (σε ποσοστά κάτω από 20%) Αυτό συνέβη λόγω των αλγορίθμων κατάταξης της Google 25

οι μηχανές αναζήτησης ζουν ή πεθαίνουν ανάλογα με την ποιότητα των συστημάτων κατάταξης που χρησιμοποιούν 2002: στις ΗΠΑ, η αγορά είναι εξίσου μοιρασμένη σε Google, Yahoo και MSN (MSN μετονομάστηκε σε Live Search και μετά σε Bing) κάθε μία είχε περίπου το 30% των αναζητήσεων που γίνονταν στις ΗΠΑ Στα επόμενα χρόνια, η Google συνέτριψε τις δύο άλλες εταιρείες (σε ποσοστά κάτω από 20%) Αυτό συνέβη λόγω των αλγορίθμων κατάταξης της Google 26

27

Σύνοψη (Ι) Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος surfer 28

Σύνοψη (ΙΙ) Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος surfer 29

ALTAVISTA: Ο πρώτος αλγόριθμος ταιριάσματος στο WEB Οι Infoseek και Lycos (και οι δύο εμφανίστηκαν το 1994) είναι οι παλαιότερες μηχανές αναζήτησης μαζί με την AltaVista (που εμφανίστηκε το 1995) Στα μέσα της δεκαετίας του 1990, για κάποια χρόνια, η AltaVista κυριαρχούσε στις μηχανές αναζήτησης αφού είχε φτιάξει ευρετήριο (index) για κάθε κείμενο στο WEB και επέστρεφε αποτελέσματα σε κλάσματα δευτερολέπτου 30

Δημιουργία ευρετηρίου (INDEXING) Ηδημιουργίαευρετηρίου αποτελεί την πιο θεμελιώδη έννοια πίσω από τις μηχανές αναζήτησης Η ιδέα είναι πολύ παλιά: αρχαιολόγοι ανακάλυψαν βιβλιοθήκη 5000 ετών σε Βαβυλώνιο ναό στην οποία υπήρχε ευρετήριο των περιεχομένων της με βάση το θέμα Η λέξη ευρετήριο συνήθως μας παραπέμπει στις τελευταίες σελίδες βιβλίωνόπουόλοιοιόροιαναφέρονταισελίσταπλήρωςταξινομημένοι (συνήθως αλφαβητικά) και κάτω από κάθε όρο υπάρχει μία λίστα από περιοχές (συνήθως αριθμοί σελίδων) στιςοποίεςαναφέρεταιοόρος Το ευρετήριο των μηχανών αναζήτησης λειτουργεί όπως αυτό των βιβλίων Σελίδες βιβλίου: Ιστοσελίδες/Web σελίδες σε κάθε μία από τις οποίες οι μηχανές αναζήτησης αναθέτουν ένα διαφορετικό αριθμό 31

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Πώς θα έφτιαχνε Ευρετήριο ένας υπολογιστής; Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 32

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Πώς θα έφτιαχνε Ευρετήριο ένας υπολογιστής; Πώς το χρησιμοποιεί μια μηχανή αναζήτησης για να απαντήσει στην ερώτηση Γάτα; Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 33

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Πώς θα έφτιαχνε Ευρετήριο ένας υπολογιστής; Πώς το χρησιμοποιεί μια μηχανή αναζήτησης για να απαντήσει στην ερώτηση Σκύλος; 1. Γρήγορη αναζήτηση στην ταξινομημένη λίστα 2. Επιστροφή των σελίδων 2 και 3 που περιέχουν τη ζητούμενη λέξη Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 34

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Νέα ερώτηση με πολλές λέξεις: Γάτα Σκύλος Η μηχανή αναζήτησης: 1. Ψάχνει κάθε λέξη ανεξάρτητα 1. Γάτα: 1,3 2. Σκύλος: 2,3 2. Ελέγχει ποιοι αριθμοί υπάρχουν και στις 2 λίστες καιτουςεπιστρέφεισαναπάντηση(εδώ: 3) Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 35

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Νέα ερώτηση με πολλές λέξεις: Γάτα Σκύλος Έκατσε Η μηχανή αναζήτησης: 1. Ψάχνει κάθε λέξη ανεξάρτητα 1. Γάτα: 1,3 2. Σκύλος: 2,3 3. Έκατσε: 1,3 2. Ελέγχει ποιοι αριθμοί υπάρχουν και στις 3 λίστες καιτουςεπιστρέφεισαναπάντηση(εδώ: 3) Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 36

Πρόβλημα Τι γίνεται όταν η ερώτηση είναι «φράση» κι επομένως έχει σημασία η σειρά με την οποία εμφανίζονταιοιλέξεις (δεν αρκεί απλά να βρεθούν σκόρπιες οι λέξεις της ζητούμενης φράσης) Ηφράση«έφυγε όταν» έχει διαφορετικό νόημα από τη φράση «όταν έφυγε» Η ερώτηση έφυγε όταν ψάχνει σελίδες που περιέχουν και τις 2 λέξεις με οποιαδήποτε σειρά Η ερώτηση «έφυγε όταν» ψάχνει σελίδες που περιέχουν και τις 2 λέξεις με τη συγκεκριμένη σειρά (δηλ., ψάχνουν για σελίδες που περιέχουν τη λέξη έφυγε ακολουθούμενη από τη λέξη όταν) 37

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Ερώτηση: «έφυγε όταν» Η μηχανή αναζήτησης πρέπει να απαντήσει: σελίδα 3 ΑΛΛΑΠΩΣθατοπετύχειαυτό; Αν ψάξει τις λέξεις της φράσης ανεξάρτητα θα βρει ότι η σελίδα 3 περιέχει και τις δύο λέξεις αλλά θα κολλήσει αφού δε θα μπορεί να αποφασίσει για τη σειρά εμφάνισης των λέξεων??? Η λεπτομερής «ανάγνωση» της σελίδας 3 είναι αναποδοτική λύση??? Γάτα 1,3 Είναι 2 Έκατσε 1,3 Ένας 2 Έφυγε 3 Η 3 Μια 1 ο 3 Όταν 3 Πάνω 2 Πεζούλι 1,2 Σκύλος 2,3 Στο 1,2 38

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος περιηγητής 39

Ιδέα: «θέση της λέξης» (word location trick) Το ευρετήριο δεν πρέπει να περιέχει μόνο αριθμούς σελίδων αλλά και θέσεις μέσα στις σελίδες που να υποδεικνύουν τη σειρά των λέξεων στις σελίδες 40

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Το Ευρετήριο με την ιδέα «θέση της λέξης» Γάτα 1 2,3 2 Είναι 2 3 Έκατσε 1 3,3 5 Ένας 2 1 Έφυγε 3 3 Η 3 1 Μια 1 1 ο 3 6 Όταν 3 4 Πάνω 2 4 Πεζούλι 1 5,2 6 Σκύλος 2 2,3 7 Στο 1 4,2 5 41

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Το Ευρετήριο με την ιδέα «θέση της λέξης» Γάτα 1 2,3 2 Ερώτηση: «έφυγε όταν» Η μηχανή αναζήτησης: 1. Ψάχνει κάθε λέξη ανεξάρτητα 1. Έφυγε: 3-3 2. Όταν: 3-4 2. Για τις κοινές σελίδες στην παραπάνω λίστα, ελέγχει τις θέσεις των λέξεων Είναι 2 3 Έκατσε 1 3,3 5 Ένας 2 1 Έφυγε 3 3 Η 3 1 Μια 1 1 ο 3 6 Όταν 3 4 Πάνω 2 4 Πεζούλι 1 5,2 6 Σκύλος 2 2,3 7 Στο 1 4,2 5 42

Ιδέα: «θέση της λέξης» (word location trick) Δεν είναι χρήσιμη μόνο για ερωτήσεις με τη μορφή φράσης αλλά και για την εύρεση «κοντινών» λέξεων Τη δυνατότητα αυτή την πρόσφερε η μηχανή αναζήτησης AltaVista ΠΩΣ; Από το Ευρετήριο υπολογίζουμε την απόσταση λέξεων στην ίδια σελίδα 43

Ένας φανταστικός Παγκόσμιος Ιστός που αποτελείται από 3 σελίδες με αριθμούς 1,2,3 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος Το Ευρετήριο με την ιδέα «θέση της λέξης» Γάτα 1 2,3 2 Ερώτηση: γάτα ΚΟΝΤΑ σκύλος Η μηχανή αναζήτησης: 1. Ψάχνει κάθε λέξη ανεξάρτητα 1. Γάτα: 1-2,3-2 2. Σκύλος: 2-2,3-7 2. Για τις κοινές σελίδες στην παραπάνω λίστα (δηλ., τη σελίδα 3) ελέγχει την απόσταση των λέξεων που είναι 7-2=5 Είναι 2 3 Έκατσε 1 3,3 5 Ένας 2 1 Έφυγε 3 3 Η 3 1 Μια 1 1 ο 3 6 Όταν 3 4 Πάνω 2 4 Πεζούλι 1 5,2 6 Σκύλος 2 2,3 7 Στο 1 4,2 5 44

Ερωτήσεις εγγύτητας Φαίνεται ότι οι ερωτήσεις εγγύτητας λέξεων τελικά δεν είναι σημαντικές για τους χρήστες των μηχανών αναζήτησης ΑΛΛΑ ο τρόπος που τις χειρίζονται οι μηχανές αναζήτησης είναι εξαιρετικά κρίσιμος για την ύπαρξη τους ΑΦΟΥ οι μηχανές αναζήτησης χρησιμοποιούν οι ίδιες πολύ συχνά ερωτήσεις εγγύτητας χωρίς καν να το αντιλαμβάνεται ο χρήστης ΓΙΑΤΙ Θα απαντήσουμε αφού μελετήσουμε ένα άλλο σημαντικό πρόβλημα για τις μηχανές αναζήτησης: το πρόβλημα της κατάταξης (ranking) 45

Κατάταξη και Εγγύτητα (Ι) Κατάταξη: η μηχανή αναζήτησης επιλέγει λίγες κορυφαίες απαντήσεις καιτιςεμφανίζειστοχρήστη Από τι εξαρτάται η κατάταξη μιας ιστοσελίδας; Όχι από το αν η ιστοσελίδα περιέχει τη ζητούμενη ερώτηση, ΑΛΛΑ Από το αν η ιστοσελίδα είναι ΣΧΕΤΙΚΗ με τη ζητούμενη ερώτηση Σενάριο: ενδιαφερόμαστε για το ποια αιτία προκαλεί ελονοσία οπότε γράφουμε την ερώτηση αιτία ελονοσία π.χ., στο google Υποθέτοντας ότι επιστρέφονται μόνο δύο ιστοσελίδες, σε έναν άνθρωπο είναι σαφές ότι η σελίδα 1 είναι πράγματι σχετική με την ερώτησηενώησελίδα2 αναφέρεται σε κάτι άσχετο με την ερώτηση και απλά περιέχει τις λέξεις αιτία και ελονοσία Αυτό το συμπέρασμα δεν είναι προφανές για έναν υπολογιστή 46

1 Η πιο συχνά εμφανιζόμενη αιτία που προκαλεί την ελονοσία είναι τσίμπημα από μολυσμένο κουνούπι, αλλά υπάρχουν και άλλες γενεσιουργές αιτίες. 2 Η αιτία που μας έφερε στο μέρος καθόλου δεν υποστηρίχθηκε λόγω της φυσικής αδυναμίας των στρατιωτών που έπασχαν από ελονοσία και άλλες τροπικές ασθένειες. Αιτία 1 5, 2 2 Ελονοσία 1 9, 2 20 47

Κατάταξη και Εγγύτητα (ΙΙ) Ιστοσελίδες στις οποίες οι αναζητούμενες λέξεις μιας φράσης εμφανίζονται κοντά ημία στην άλλη είναι πιθανότερο να είναι πιο σχετικές με την ερώτηση από άλλες στις οποίες οι λέξεις της ζητούμενης φράσης έχουν μεγαλύτερη απόσταση μεταξύ τους 48

1 Η πιο συχνά εμφανιζόμενη αιτία που προκαλεί την ελονοσία είναι τσίμπημα από μολυσμένο κουνούπι, αλλά υπάρχουν και άλλες γενεσιουργές αιτίες. 2 Η αιτία που μας έφερε στο μέρος καθόλου δεν υποστηρίχθηκε λόγω της φυσικής αδυναμίας των στρατιωτών που έπασχαν από ελονοσία και άλλες τροπικές ασθένειες. Μηχανή αναζήτησης: Απόσταση λέξεων στη σελίδα 1: 4 Απόσταση λέξεων στη σελίδα 2: 18 Συμπέρασμα: η σελίδα1 είναι πιο σχετική με την ερώτηση Αιτία 1 5, 2 2 Ελονοσία 1 9, 2 20 49

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος περιηγητής 50

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (Ι) τίτλος Γάτα Σκύλος Κατοικίδια 1 2 3 Μιαγάταέκατσε στο πεζούλι Ένας σκύλος είναι πάνω στο πεζούλι Η γάτα έφυγε όταν έκατσε ο σκύλος σώμα Μια έξυπνη τεχνική ταιριάσματος που απογείωσε την AltaVista στα τέλη της δεκαετίας του 90 51

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (ΙΙ) Οι ιστοσελίδες έχουν πολλά δομικά στοιχεία όπως τίτλους, επικεφαλίδες, συνδέσμους, εικόνες και μέχρι τώρα τις αντιμετωπίζαμε μόνο σαν ακολουθίες λέξεων Πώς οι μηχανές αναζήτησης εκμεταλλεύονται τη δομή των ιστοσελίδων; Υποθέτουμε ότι οι ιστοσελίδες έχουν μόνο έναν τίτλο που ακολουθείται από ένα σώμα 52

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (ΙΙΙ) Οι ιστοσελίδες έχουν πολλά δομικά στοιχεία όπως τίτλους, επικεφαλίδες, συνδέσμους, εικόνες και μέχρι τώρα τις αντιμετωπίζαμε μόνο σαν ακολουθίες λέξεων Πώς οι μηχανές αναζήτησης εκμεταλλεύονται τη δομή των ιστοσελίδων; Υποθέτουμε ότι οι ιστοσελίδες έχουν μόνο έναν τίτλο που ακολουθείται από ένα σώμα 53

1 <τίτλοςέναρξη>γάτα <τίτλοςλήξη><σώμαέναρξη> Μια γάτα έκατσε στο πεζούλι<σώμαλήξη> 2 <τίτλοςέναρξη>σκύλος <τίτλοςλήξη><σώμαέναρξη> Ένας σκύλος είναι πάνω στο πεζούλι <σώμαλήξη> 3 <τίτλοςέναρξη>κατοικίδια <τίτλοςλήξη><σώμαέναρξη> Η γάτα έφυγε όταν έκατσε ο σκύλος <σώμαλήξη> 54

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (ΙV) Στην προηγούμενη διαφάνεια φαίνεται πώς είναι γραμμένες οι ιστοσελίδες, όχι πώς θα εμφανίζονται σε έναν web browser Οι περισσότεροι browsers μας επιτρέπουν να δούμε πώς είναι γραμμένες οι ιστοσελίδες μέσω της επιλογής view source : οι λέξεις πληροφορίας (metawords) <τίτλοςέναρξη> και <τίτλοςλήξη> δεν είναι αυτές που χρησιμοποιούνται στην πράξη. Στην HTML, οι λέξεις πληροφορίας λέγονται ετικέτες (tags) και αυτές που χρησιμοποιούνται για έναρξη και λήξη τίτλων είναι οι <title> και </title> Μπορεί εύκολα να κατασκευαστεί ευρετήριο με όλες τις λέξεις πληροφορίας απλά αποθηκεύοντας τη θέση τους όπως γίνεται και για τις κανονικές λέξεις (δείτε σχήμα στην επόμενη διαφάνεια): αυτό είναι η ιδέα «λέξεις πληροφορίας» Μπορεί να φαίνεται εξαιρετικά απλό αλλά παίζει πολύ σημαντικό ρόλο για να μπορούν οι μηχανές αναζήτησης να πραγματοποιούν ακριβείς αναζητήσεις και κατατάξεις υψηλής ποιότητας 55

1 2 3 <τίτλοςέναρξη>γάτα <τίτλοςλήξη><σώμαέναρξη> Μια γάτα έκατσε στο πεζούλι<σώμαλήξη> <τίτλοςέναρξη>σκύλος <τίτλοςλήξη><σώμαέναρξη> Ένας σκύλος είναι πάνω στο πεζούλι <σώμαλήξη> <τίτλοςέναρξη>κατοικίδια <τίτλοςλήξη><σώμαέναρξη> Η γάτα έφυγε όταν έκατσε ο σκύλος <σώμαλήξη> γάτα 1 2 1 6 3 6 είναι 2 7 έκατσε 2 5 ένας 3 7 έφυγε 3 5 η 1 5 μία 3 10 ο 3 8 όταν 2 8 πάνω 1 9 2 10 πεζούλι 1 8 στο 2 9 <σώμαέναρξη> 1 4 2 4 3 4 <σώμαλήξη> 1 10 2 11 3 12 <τίτλοςέναρξη> 1 1 2 1 3 1 <τίτλοςλήξη> 1 3 2 3 3 3 Ευρετήριο που περιέχει και λέξεις πληροφορίας (metawords) 56

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (V) Υποθέστε ότι μια μηχανή αναζήτησης υποστηρίζει μια ειδική μορφή ερώτησης (query) με χρήση της λέξης κλειδιού ΕΝΤΟΣ Ηερώτηση: γάτα ΕΝΤΟΣ ΤΙΤΛΟΥ επιστρέφει μόνο ιστοσελίδες που περιέχουν τη λέξη «γάτα» στο τίτλο τους Ηερώτηση: γάτα ΕΝΤΟΣ ΣΩΜΑΤΟΣ επιστρέφει μόνο ιστοσελίδες που περιέχουν τη λέξη «γάτα» στο κυρίως κείμενό τους Πολλές μηχανές αναζήτησης (όχι ακριβώς με τον παραπάνω απλοϊκό τρόπο) επιτρέπουν τέτοιου είδους αναζητήσεις μέσω της λειτουργίας «προχωρημένη αναζήτηση»( advanced search ) όπου μπορούμε να ορίσουμε ότι η αναζητούμενη λέξη είναι σε τίτλο ή σε άλλο τμήμα του κειμένου π.χ., η μηχανή αναζήτησης Google επιτρέπει αναζήτηση σε τίτλους μέσω της λέξης κλειδί intitle: Αναζητώντας στην Google το intitle:πλοίο προσδιορίζονται ιστοσελίδες με τη λέξη «πλοίο» στον τίτλο τους 57

1 2 3 <τίτλοςέναρξη>γάτα <τίτλοςλήξη><σώμαέναρξη> Μια γάτα έκατσε στο πεζούλι<σώμαλήξη> <τίτλοςέναρξη>σκύλος <τίτλοςλήξη><σώμαέναρξη> Ένας σκύλος είναι πάνω στο πεζούλι <σώμαλήξη> <τίτλοςέναρξη>κατοικίδια <τίτλοςλήξη><σώμαέναρξη> Η γάτα έφυγε όταν έκατσε ο σκύλος <σώμαλήξη> γάτα 1 2 1 6 3 6 είναι 2 7 έκατσε 2 5 ένας 3 7 έφυγε 3 5 η 1 5 μία 3 10 ο 3 8 όταν 2 8 πάνω 1 9 2 10 πεζούλι 1 8 στο 2 9 <σώμαέναρξη> 1 4 2 4 3 4 <σώμαλήξη> 1 10 2 11 3 12 <τίτλοςέναρξη> 1 1 2 1 3 1 <τίτλοςλήξη> 1 3 2 3 3 3 Πώς απαντάει η μηχανή αναζήτησης την ερώτηση γάτα ΕΝΤΟΣ ΤΙΤΛΟΥ 58

Ιδέα: «λέξεις πληροφορίας» (The metaword trick) (VI) επιτρέπει στις μηχανές αναζήτησης να απαντούν με εξαιρετικά αποδοτικό τρόπο ερωτήσεις σχετικές με τη δομή ενός κειμένου με παρόμοιο τρόπο με αυτό που ήδη περιγράψαμε, μπορεί να πραγματοποιηθεί πολύ αποδοτικά αναζήτηση σε υπερσυνδέσμους (hyperlinks), περιγραφές εικόνων καθώς και σε άλλα τμήματα ιστοσελίδων χωρίς να χρειαστεί να κάνει αναζήτηση στις αρχικές σελίδες κοιτώντας μόνο μια φορά ένα ευρετήριο με πολύ μικρό πλήθος περιεχομένων Αναζητήσεις σε τίτλους καθώς και άλλες δομικές αναζητήσεις που βασίζονται στη δομή των ιστοσελίδων μοιάζουν με τις ερωτήσεις εγγύτητας που συζητήσαμε ήδη με την έννοια ότι ένας άνθρωπος σπάνια πραγματοποιεί δομικές αναζητήσεις αλλά οι μηχανές αναζήτησης τις χρησιμοποιούν συνεχώς εσωτερικά για τον ίδιο λόγο όπως και πριν: η επιβίωση των μηχανών αναζήτησης εξαρτάται από τις κατατάξεις που πετυχαίνουν και οι κατατάξεις βελτιώνονται σημαντικά αν αξιοποιηθεί η δομή των ιστοσελίδων Π.χ., ιστοσελίδες με τη λέξη «γάτα» στον τίτλο τους είναι πολύ πιθανότερο να περιέχουν πληροφορίες για γάτες από ό,τι ιστοσελίδες που περιέχουν τη λέξη «γάτα» μόνο στο κυρίως μέρος τους: όταν ένας χρήστης θέτει την ερώτηση «γάτα», η μηχανή αναζήτησης μπορεί εσωτερικά να αναζητήσει τη λέξη «γάτα» ΕΝΤΟΣ ΤΙΤΛΟΥ ακόμα κι αν ο χρήστης δεν έκανε αυτή ακριβώς την ερώτηση για να βρει ιστοσελίδες που είναι πιθανότερο να αναφέρονται σε γάτες από το απλά να περιέχουν κάπου στο κυρίως μέρος τους τη λέξη «γάτα» 59

Έξυπνες ιδέες για δημιουργία ευρετηρίων (indexing) και ταίριασμα (matching) δεν αρκούν από μόνες τους Οι ιδέες «θέσεις λέξεων» και «λέξεων πληροφορίας» είναι σίγουρα ενδεικτικές για το πώς οι μηχανές αναζήτησης κατασκευάζουν και χρησιμοποιούν ευρετήρια, αλλά δεν είναι αρκετές από μόνες τους Οι «λέξεις πληροφορίας» πράγματι βοήθησαν την AltaVista να επιτύχει πραγματοποιώντας αποδοτικά ταιριάσματα στον Παγκόσμιο Ιστό αλλά η ιδέα δεν ήταν αρκετή για να την κρατήσει στην κορυφή η ιδέα με τις λέξεις πληροφορίας περιγράφθηκε το 1999 σε πατέντα της AltaVista με τίτλο Αναζήτηση με περιορισμούς σε Ευρετήριο ( Constrained Searching of an Index ) Είναι πλέον γνωστό ότι το αποδοτικό ταίριασμα βοηθάει μόνο κατά το ήμισυ στη δημιουργία μιας αποδοτικής μηχανής αναζήτησης: το άλλο μισό είναι η πρόκληση της κατάταξης των ιστοσελίδων που ταίριαξαν στην ερώτηση Η σύλληψη ενός νέου αλγορίθμου κατάταξης ήταν αυτή που έβγαλε από το προσκήνιο την AltaVista και απογείωσε τη Google 60

επιστρέφουμε στη λειτουργία κατάταξης και παρουσιάζουμε το φημισμένο αλγόριθμο PageRank της Google 61

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος περιηγητής 62

PageRank: Η τεχνολογία που εκτόξευσε τη Google (Ι) Στη Silicon Valley, οι κλειστοί ιδιωτικοί χώροι στάθμευσηςαυτοκινήτων(garages) έχουν αποτελέσει την αφετηρία για μεγάλες εταιρείες όπως: το 1939, η Hewlett Packard ξεκίνησε στο garage του Dave Hewlett στο Palo Alto της California το 1976, οι Steve Jobs και Steve Wozniak ξεκίνησαν την εταιρεία Apple στο πάρκινγκ του Jobs στο Los Altos της California (είχανστηνπραγματικότηταξεκινήσειαπότο υπνοδωμάτιο και λόγω έλλειψης χώρου μετέβησαν στο πάρκινγκ) Με παρόμοιο τρόπο ξεκίνησε μια μηχανή αναζήτησης η πασίγνωστη πλέον Google σε ένα χώρο στάθμευσης στο Menlo Park της California Έγινε εταιρεία το Σεπτέμβριο του 1998, ενώ για έναν περίπου χρόνο λειτουργούσε μέσω των εξυπηρετητών του Πανεπιστημίου Stanford όπου οι δύο συνιδρυτές της ήταν υποψήφιοι Διδάκτορες Η μηχανή αναζήτησης γινόταν ολοένα και πιο δημοφιλής, το διαθέσιμο εύρος ζώνης του πανεπιστημίου δεν ήταν αρκετό και οι δύο μεταπτυχιακοί φοιτητές Larry Page και Sergey Brin μετέφεραν το σύστημά τους στο πλέον φημισμένο χώρο στάθμευσης στο Menlo Park Μόνο 3 μήνες από τη σύστασή της σαν εταιρεία, το περιοδικό PC Magazine ανέφερε τη Google σαν ένα από τα 100 δημοφιλέστερα websites του 1998... 63

PageRank: Η τεχνολογία που εκτόξευσε τη Google (ΙΙ) Σύμφωνα με το PC Magazine, η τρομερή επιτυχία της Google οφειλόταν στο ότι επέστρεφε αποτελέσματα εξαιρετικά σχετικά με την εκάστοτε ερώτηση Πώς ξεπέρασε η Google την αναποτελεσματικότητα 4 ολόκληρων ετών και εκτόπισε ήδη δημοφιλείς (ως προς την ποιότητα των αποτελεσμάτων) μηχανές αναζήτησης όπως οι Lycos και AltaVista;;; Αν και η απάντηση δεν είναι απλή, σίγουρα ένας καθοριστικός παράγοντας ήταν ένας νέος αλγόριθμος, ο PageRank, που χρησιμοποίησε η Google για κατάταξη των αποτελεσμάτων αναζήτησης Το όνομα PageRank είναι ένα λογοπαίγνιο: είναι ένας αλγόριθμος κατάταξης ιστοσελίδων αλλά και αλγόριθμος κατάταξης του Larry Page που τον συνέλαβε Οι Page και Brin δημοσίευσαν τον αλγόριθμο το 1998 σε εργασία με τίτλο «Η ανατομία μιας μεγάλης κλίμακας μηχανής αναζήτησης υπερκειμένου στον παγκόσμιο ιστό»( The Anatomy of a Large scale Hypertextual Web Search Engine ) που περιέχει μια πλήρη περιγραφή του συστήματος Google στη μορφή που είχε το 1998 και του αλγορίθμου PageRank 64

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος περιηγητής 65

Η ιδέα των υπερσυνδέσμων (The hyperlink trick) (Ι) Τι είναι υπερσύνδεσμος (hyperlink): είναι φράση σε μια ιστοσελίδα που όταν πατήσουμε πάνω της μάς μεταφέρει σε μια άλλη ιστοσελίδα (οι περισσότεροι web browsers εμφανίζουν τους υπερσυνδέσμους με μπλε χρώμα για να ξεχωρίζουν εύκολα) Οι υπερσύνδεσμοι είναι εκπληκτικά παλιά ιδέα Το 1945 όταν άρχισαν να αναπτύσσονται και οι ίδιοι οι Η/Υ ο αμερικανός μηχανικός Vannevar Bush δημοσίευσε μια διορατική μελέτη με τίτλο As We May Think στην οποία περιέλαβε διάφορες νέες τεχνολογίες μεταξύ των οποίων και μια μηχανή που αποκάλεσε memex, ηοποία θα αποθήκευε έγγραφα και αυτόματα θα δημιουργούσε σχετικό ευρετήριο (μεταξύ άλλων λειτουργιών) θα επέτρεπε τη «δημιουργία σχεσιακών ευρετηρίων όπου κάθε αντικείμενο θα μπορεί να χρησιμοποιηθεί για την άμεση και αυτόματη επιλογή ενός άλλου περιέγραψε με άλλα λόγια μια στοιχειώδη μορφή υπερσυνδέσμου (hyperlink)! 66

Η ουσία της ιδέας των υπερσυνδέσμων. Φαίνονται 6 ιστοσελίδες, μία σε κάθε παραλληλόγραμμο. 2 από τις ιστοσελίδες είναι συνταγές για στραπατσάδα, ενώ οι 4 άλλες περιέχουν υπερσυνδέσμους σε αυτές τις συνταγές. Με βάση την ιδέα των υπερσυνδέσμων, η σελίδατουbert κατατάσσεται πάνω από αυτή του Ernie, γιατί η σελίδα του Bert έχει 3 εισερχόμενα βέλη ενώ του Ernie μόνο 1... 67

Η ιδέα των υπερσυνδέσμων (The hyperlink trick) (ΙΙ) Ενδιαφερόμαστε να βρούμε συνταγές για στραπατσάδα και πραγματοποιούμε μια αναζήτηση στο web Υποθέτουμε ότι η αναζήτηση επιστρέφει μόνο τις εξής 2 ιστοσελίδες (στην πραγματικότητα θα επέστρεφε εκατομμύρια αποτελέσματα): Ernie's scrambled egg recipe Bert's scrambled egg recipe Υποθέτουμε ότι υπάρχουν μόνο 4 άλλες ιστοσελίδες που παραπέμπουν μέσω υπερσυνδέσμων σε αυτές Ερώτηση: ποια από τις 2 ιστοσελίδες πρέπει να καταταχθεί πρώτη, του Bert ήτουernie; Ένας άνθρωπος θα διάβαζε τις σελίδες που αναφέρονται στις δύο συνταγές και θα αποφάσιζε ποια από τις 2 είναι η δημοφιλέστερη φαίνεται ότι και οι 2 συνταγές είναι λογικές αλλά ο κόσμος προτιμάει αυτή του Bert κι επομένως, ελλείψει άλλης πληροφορίας, θα έπρεπε η ιστοσελίδα του Bert να καταταχθεί παραπάνω από του Ernie 68

Η ιδέα των υπερσυνδέσμων (The hyperlink trick) (ΙΙΙ) Μια τέτοια είδους «κατανόηση» δενείναιεφικτήγιαένανυπολογιστή Όμως οι υπολογιστές είναι πολύ καλοί στο να μετράνε αντικείμενα Οπότε, μια καλή προσέγγιση θα ήταν να μετρήσει ο υπολογιστής των πλήθος των ιστοσελίδων (υπερσυνδέσμων) που δείχνουν σε κάθε μία από τις συνταγές που είναι 1 για τη συνταγή του Ernie και 3 για τη συνταγή του Bert και να κατατάξει τις συνταγές με βάση τους εισερχόμενους υπερυνδέσμους τους Αποδεικνύεται ότι, ελλείψει άλλης πληροφορίας, το πλήθος των εισερχόμενων υπερσυνδέσμων σε μια ιστοσελίδα είναι άκρως ενδεικτικό για το πόσο χρήσιμη ή «έγκυρη» μπορεί να είναι η ιστοσελίδα Μια πιθανή αδυναμία της προσέγγισης αυτής θα μπορούσε να είναι το ότι μερικές φορές χρησιμοποιούνται σύνδεσμοι για να υποδείξουν κακές σελίδες κι όχι καλές: π.χ., κάποια από τις ιστοσελίδες που δείχνει στη συνταγή του Ernie μπορεί να λέει: Δοκίμασα τη συνταγή και είναι απαίσια και αυτό μπορεί να είναι παραπλανητικό όταν η κατάταξη βασίζεται σε απλή καταμέτρηση Φαίνεται όμως ότι στην πράξη οι υπερσύνδεσμοι λειτουργούν περισσότερο σαν συστάσεις παρά σαν κατακρίσεις 69

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος surfer 70

Η ιδέα της εγκυρότητας (The authority trick) Παρατήρηση: όλοι οι εισερχόμενοι υπερσύνδεσμοι ίσως να μην πρέπει να έχουν την ίδια βαρύτητα μιας και η σύσταση από έναν «ειδικό» μετράει σίγουρα περισσότερο από την αντίστοιχη από έναν αρχάριο Υποθέτουμε ότι οι συνταγές των Bert και Ernie έχουν τον ίδιο αριθμό εισερχόμενων υπερσυνδέσμων (1 η κάθε μία) αλλά, η παραπομπή στη συνταγή του Ernie είναι από την προσωπικήιστοσελίδαενόςχρήστηενώηπαραπομπήστησυνταγήτουbert είναι από την ιστοσελίδα της φημισμένης chef Alice Waters Αν δεν είχαμε άλλη πληροφορία, ποια συνταγή θα επιλέγαμε; Προφανώς, αυτή που προτείνει μία φημισμένη chef κι όχι αυτή που προτείνει ένας τυχαίος (άσχετος ενδεχομένως) χρήστης Αυτό αποτελεί τη βασική αρχή της ιδέας της εγκυρότητας: Σύνδεσμοι από σελίδες με υψηλή εγκυρότητα θα πρέπει να οδηγούν σε υψηλότερη κατάταξη σε σύγκριση με συνδέσμους από σελίδες με χαμηλή εγκυρότητα Φυσικά, η αρχή, στην τρέχουσα μορφή της, είναι άχρηστη σε έναν υπολογιστή Πώς μπορεί ένας υπολογιστής αυτόματα να καθορίσει ότι π.χ., η Alice Waters έχει εγκυρότερη άποψη για μία συνταγή από κάποιον τυχαίο χρήστη; ΙΔΕΑ: να συνδυάσουμε την ιδέα των υπερσυνδέσμων με αυτήν της εγκυρότητας Σε όλες τις σελίδες ανατίθεται αρχικά τιμή εγκυρότητας 1 Αν κάποια σελίδα διαθέτει εισερχόμενους συνδέσμους, η τιμή εγκυρότητά της υπολογίζεται με άθροιση των τιμών εγκυρότητας όλων των σελίδων που δείχνουν σε αυτή Δηλ., αν οι σελίδες X και Y δείχνουν στη σελίδα Z, τότε η τιμή εγκυρότητας της σελίδας Z είναι το άθροισμα των τιμών εγκυρότητας των σελίδων X και Y 71

72

Απλός υπολογισμός των τιμών εγκυρότητας (που φαίνονται σε κύκλους) για τις δύο συνταγές. 73

Πρόβλημα: δημιουργία κύκλων Στον τρόπο που περιγράψαμε για τον αυτόματο υπολογισμό των τιμών εγκυρότητας, υπάρχει η εξής εγγενής αδυναμία: είναι πιθανόν οι υπερσύνδεσμοι να δημιουργήσουν κύκλο Σχηματίζεται κύκλος αν μπορούμε να επιστρέψουμε στη σελίδα από την οποία ξεκινήσαμε χρησιμοποιώντας υπερσυνδέσμους (σχήμα στην επόμενη διαφάνεια) Στον τρέχοντα ορισμό της τιμής εγκυρότητας (με βάση συνδυασμό των τεχνασμάτων των υπερσυνδέσμων και της εγκυρότητας) υπάρχει πρόβλημα όποτε δημιουργείται κύκλος Π.χ., Οι σελίδες C και D δεν έχουν εισερχόμενες ακμές, κατά συνέπεια λαμβάνουν τιμή εγκυρότητας 1. Οι C και D δείχνουν και οι δύο στην A, οπότε η σελίδα A λαμβάνει τιμή εγκυρότητας ίση με το άθροισμα των τιμών του C και D, δηλ., 1 + 1 = 2. Τότε η σελίδα B λαμβάνει τιμή εγκυρότητας 2 από την A, και η E λαμβάνει τιμή 2 από την B. Όμως τώρα η A είναι μη ενημερωμένη: λαμβάνει τιμή 1 από C και D, κι επίσης 2 από E, οπότε συνολικά έχει τιμή εγκυρότητας 4. Αλλά τώρα και η B είναι μη ενημερωμένη: λαμβάνει τιμή 4 από την A. Αλλά τότε και η E χρειάζεται ενημέρωση, αφού λαμβάνει 4 μονάδες από τη B Κτλ, οπότε: οι τιμές εγκυρότητας είναι για την A 6, για τη B 6, για την E 6, οπότε για την A είναι 8,. Βλέπετε; Θα συνεχίζουμε ες αεί με τιμές εγκυρότητας που πάντα θα αυξάνονται καθώς διατρέχουμε τον κύκλο 74

Παράδειγμα στο οποίο οι σύνδεσμοι σχηματίζουν κύκλο. Οι σελίδες Α, Β και Ε δημιουργούν κύκλο αφού μπορούμε να ξεκινήσουμε στη σελίδα Α, να μεταβούμε στη Β, μετά στην Ε και μετά να επιστρέψουμε στην αφετηρία, δηλ., στη σελίδα Α 75

Παράδειγμα στο οποίο οι σύνδεσμοι σχηματίζουν κύκλο. Οι σελίδες Α, Β και Ε δημιουργούν κύκλο αφού μπορούμε να ξεκινήσουμε στη σελίδα Α, να μεταβούμε στη Β, μετά στην Ε και μετά να επιστρέψουμε στην αφετηρία, δηλ., στη σελίδα Α 76

Υπολογισμός τιμών εγκυρότητας: Το πρόβλημα που προκαλούν οι κύκλοι είναι ότιοισελίδεςa, B, και E είναι πάντα μη ενημερωμένες και τα αποτελέσματά τους αυξάνονται συνεχώς 77

Σύνοψη Δημιουργία ευρετηρίου (AltaVista, 1995) Θέση της λέξης Λέξεις πληροφορίας Αλγόριθμος PageRank (Google, 1998): Υπερσύνδεσμοι Εγκυρότητα = πόσο δημοφιλής είναι μια ιστοσελίδα Τυχαίος περιηγητής 78

Η ιδέα του τυχαίου περιηγητή (The random surfer trick) (Ι) Αυτός ο υπολογισμός τιμών εγκυρότητας δημιουργεί πρόβλημα της μορφής «η κότα έκανε το αυγό ή το αυγό την κότα;»: Αν γνωρίζαμε την αληθινή τιμή εγκυρότητας για τη σελίδα A, θα μπορούσαμε να υπολογίσουμε τις τιμές εγκυρότητας για τις σελίδες B και E Αν γνωρίζαμε τις αληθινές τιμές εγκυρότητας για τις σελίδες B και E, θα μπορούσαμε να υπολογίσουμε την τιμή εγκυρότητας για τη σελίδα A Αλλά επειδή ο κάθε υπολογισμός εξαρτάται από τον άλλον, φαίνεται να μην είναι δυνατός ο υπολογισμός των συγκεκριμένων τιμών Το πρόβλημα λύνεται με μία τεχνική που καλείται «ιδέα του τυχαίου surfer» Προσοχή: η αρχική περιγραφή της ιδέας του τυχαίου surfer δε μοιάζει καθόλου με τις ιδέες των υπερσυνδέσμων και της εγκυρότητας Αφού περιγράψαμε το βασικό μηχανισμό της ιδέας του τυχαίου surfer, θα θα προχωρήσουμε σε ανάλυση που θα αποκαλύψει σημαντικές ιδιότητές της Συνδυάζει τα επιθυμητά χαρακτηριστικά των ιδεών των υπερσυνδέσμων και της εγκυρότητας, και επιπλέον δουλεύει ακόμα και όταν σχηματίζονται κύκλοι στην επιλογή των υπερσυνδέσμων 79

Η ιδέα του τυχαίου περιηγητή (The random surfer trick) (ΙΙ) Φανταζόμαστε ένα άτομο που τυχαία περιηγείται στο internet, ξεκινώντας από κάποια ιστοσελίδα τυχαία επιλεγμένη από τον παγκόσμιο ιστό Ο surfer εξετάζει όλους τους συνδέσμους της ιστοσελίδας, επιλέγει ένας από αυτούς τυχαία και τον ακολουθεί (πατάει click). Η νέα ιστοσελίδα εξετάζεται και ένας από τους συνδέσμους της επιλέγεται τυχαία Η διαδικασία αυτή συνεχίζεται, κάθε νέα ιστοσελίδα επιλέγεται τυχαία με επιλογή ενός συνδέσμου από την προηγούμενη σελίδα Οι ιστοσελίδες που έχει επισκεφτεί ο surfer είναι οι σκούρες, οι σύνδεσμοι που ακολούθησε ο surfer είναιμαύροικαιτα διακεκομμένα βέλη δηλώνουν τυχαίες επανεκκινήσεις 80

Η ιδέα του τυχαίου περιηγητή (The random surfer trick) (ΙΙΙ) Περιπλοκή: κάθε φορά που μια σελίδα δέχεται επίσκεψη, υπάρχει προκαθορισμένη πιθανότητα επανεκκίνησης (έστω,15%) με την οποία ο surfer δεν επιλέγει κάποιο διαθέσιμο σύνδεσμο αλλά ξαναξεκινάει τη διαδικασία διαλέγοντας τυχαία μια άλλη σελίδα από το web Φανταστείτε ότι ο surfer έχει πιθανότητα 15% να βαρεθεί σε κάποια σελίδα καιναακολουθήσειμιανέαακολουθίασυνδέσμων Σχήμα: Ο surfer ξεκίνησε στη σελίδα A και ακολούθησε 3 τυχαίους συνδέσμους πριν βαρεθεί από τη σελίδα B και ξαναξεκινήσει στη σελίδα C. Ακολούθησε τότε 2 ακόμα τυχαίους συνδέσμους πριν ξαναξεκινήσει σε άλλη σελίδα Η πιθανότητα επανεκκίνησης 15% που χρησιμοποιούμε εδώ για παράδειγμα είναι ακριβώς αυτή που χρησιμοποίησαν οι συνιδρυτές της Google, Page και Brin, στην αρχική τους εργασία που περιέγραφαν τη μηχανή αναζήτησης που είχαν αναπτύξει 81

Φανταζόμαστε ότι ο παγκόσμιος ιστός αποτελείται από 16 ιστοσελίδες. Οι ιστοσελίδες είναι τα κουτιά και τα βέλη σημαίνουν συνδέσμους μεταξύ ιστοσελίδων. Το μοντέλο του τυχαίου περιηγητής: οι σελίδες που επισκέπτεται ο surfer είναι οι σκούρες και οι διακεκομμένες γραμμές δείχνουν τυχαίες επανεκκινήσεις. Το ίχνος ξεκινάει στην ιστοσελίδα Α και ακολουθεί τυχαία επιλεγμένους συνδέσμους ενώ διακόπτεται από δύο τυχαίες επανεκκινήσεις. 82

Η ιδέα του τυχαίου περιηγητή (The random surfer trick) (ΙV) Είναι εύκολο να εκτελέσουμε πείραμα στον υπολογιστή για επισκέψεις του surfer σε 1000 ιστοσελίδες (μετράμε και πολλαπλές επισκέψεις στην ίδια ιστοσελίδα) Τα αποτελέσματα φαίνονται στην επόμενη διαφάνεια (πάνω μέρος): Η σελίδα D δέχτηκε συχνότερα επισκέψεις (συγκεκριμένα 144) Η βελτίωση της ακρίβειας των αποτελεσμάτων του πειράματος μπορεί να γίνει όπως και στις δημοσκοπήσεις με αύξηση του αριθμού των τυχαίων δειγμάτων (αύξηση του αριθμού των σελίδων που επισκέφθηκε ο surfer) Εκτελούμε νέο πείραμα υποθέτοντας ότι ο surfer επισκέφθηκε 1.000.000 σελίδες (η εκτέλεση απαιτεί λιγότερο από μισό δευτερόλεπτο σε κοινό υπολογιστή) και τώρα παρουσιάζουμε τα αποτελέσματα (στο κάτω μέρος της επόμενης διαφάνειας) με τη μορφή ποσοστού (λόγω του μεγάλου αριθμού επισκέψεων) Ξανά, η σελίδα D δέχθηκε συχνότερα επισκέψεις (συγκεκριμένα, προσέλκυσε το 15% των επισκέψεων του surfer) 83

Πειράματα με χρήση του τυχαίου surfer. Πάνω: Αριθμός επισκέψεων σε κάθε ιστοσελίδα σε πείραμα με 1000 επισκέψεις Κάτω: Ποσοστό επισκέψεων σε κάθε ιστοσελίδα σε πείραμα με 1.000.000 επισκέψεις 84

Τυχαίος περιηγητής και εγκυρότητα Ποια είναι η σχέση μεταξύ της ιδέας του τυχαίου surfer και της ιδέας της εγκυρότητας που χρησιμοποιούνται για την κατάταξη ιστοσελίδων απαντήσεων σε κάποια αναζήτηση; Τα αποτελέσματα που υπολογίζονται από τα πειράματα με τον τυχαίο surfer είναι ακριβώς αυτό που χρειαζόμαστε για να μετρήσουμε την εγκυρότητα των σελίδων Ορίζουμε επομένως την τιμή surfer εγκυρότητας για μια σελίδα ως το ποσοστό του χρόνου που πέρασε ο surfer επισκεπτόμενος τη συγκεκριμένη σελίδα Ητιμήsurfer εγκυρότητας ενσωματώνει και τις δύο ιδέες για κατάταξη των ιστοσελίδων με βάση το πόσο σημαντικές είναι Ιδέα με υπερσυνδέσμους: μια σελίδα με πολλούς εισερχόμενους συνδέσμους πρέπει να καταταχθεί ψηλότερα, κάτι που ισχύει για το μοντέλο του τυχαίου surfer, αφού μια σελίδα με πολλούς εισερχόμενους συνδέσμους έχει μεγάλη πιθανότητα να δεχθεί επίσκεψη Σελίδα D στο κάτω μέρος της επόμενης διαφάνειας: έχει 5 εισερχόμενους συνδέσμους παραπάνω από κάθε άλλη σελίδα στο πείραμα και τελικά λαμβάνει την υψηλότερη τιμή surfer εγκυρότητας (15%) Ιδέα με εγκυρότητα: εισερχόμενος σύνδεσμος από σελίδα με υψηλή εγκυρότητα βελτιώνει την κατάταξη της σελίδας περισσότερο από κάποιον σύνδεσμο από σελίδα με μικρότερη εγκυρότητα, κάτι που λαμβάνει υπόψη και το μοντέλο του τυχαίου surfer. ΓΙΑΤΙ; Εισερχόμενος σύνδεσμος από δημοφιλή σελίδα είναι πιθανότερο να ακολουθηθεί από ό,τι κάποιος από μη δημοφιλή σελίδα Στο παράδειγμα, συγκρίνετε τις σελίδες A και C στο κάτω μέρος: κάθε μία έχει έναν μόνο εισερχόμενο σύνδεσμο, αλλά η σελίδα A έχει πολύ υψηλότερη τιμή surfer εγκυρότητας (13% έναντι 2%) λόγω της ποιότητας του εισερχόμενου συνδέσμου 85

Πειράματα με χρήση του τυχαίου surfer. Πάνω: Αριθμός επισκέψεων σε κάθε ιστοσελίδα σε πείραμα με 1000 επισκέψεις Κάτω: Ποσοστό επισκέψεων σε κάθε ιστοσελίδα σε πείραμα με 1.000.000 επισκέψεις 86

Ηιδέατουτυχαίουsurfer (The random surfer trick) (V) H ιδέα του τυχαίου surfer ενσωματώνει ταυτόχρονα τις ιδέες των υπερσυνδέσμων και της εγκυρότητας, δηλ., λαμβάνει υπόψη την ποιότητα και την ποσότητα των εισερχόμενων συνδέσμωνσεκάθεσελίδα Δείτε τη σελίδα B: λαμβάνει το σχετικά υψηλό της αποτέλεσμα (10%) λόγω των 3 εισερχόμενων συνδέσμων από σελίδες με μέτρια αποτελέσματα που κυμαίνονται μεταξύ του 4% και 7% Η ομορφιά της ιδέας του τυχαίου surfer είναι ότι, αντίθετα με την ιδέα της εγκυρότητας, δουλεύει άψογα ανεξάρτητα από την ύπαρξη κύκλων στους συνδέσμους Εκτελούμε ένα πείραμα για εκατομμύρια επισκέψεις του τυχαίου surfer για την ερώτηση περί συνταγής για στραπατσάδα Τα αποτελέσματα φαίνονται στην επόμενη διαφάνεια. Όπως και με χρήση της ιδέας της εγκυρότητας, η σελίδα του Bert λαμβάνει μεγαλύτερο αποτέλεσμα από αυτήν του Ernie (28% έναντι 1%, αντίστοιχα) παρά το ότι έχουν και οι δύο από έναν εισερχόμενο σύνδεσμο Επομένως, η σελίδα του Bert θα καταταχθεί ψηλότερα σε μια αναζήτηση για στραπατσάδα Τι συμβαίνει όταν υπάρχουν κύκλοι στους συνδέσμους; Εκτελούμε ένα πείραμα με τυχαίους surfers που δίνει τα αποτελέσματα της επόμενης διαφάνειας τα οποία δείχνουν την τελική σειρά κατάταξης που θα επέστρεφε μία μηχανή αναζήτησης: η σελίδα A είναι ψηλότερα, ακολουθεί η B, η E, η C και η D μένει τελευταία... 87

Αποτελέσματα εγκυρότητας του surfer για την ιστοσελίδα με τη στραπατσάδα. Και ο Bert και ο Ernie έχουν από ακριβώς έναν εισερχόμενο σύνδεσμο που δίνει εγκυρότητα στην ιστοσελίδα τους, αλλά η σελίδα του Bert θα καταταχθεί ψηλότερα σε μια αναζήτηση για στραπατσάδα 88

Αποτελέσματα εγκυρότητας του surfer για το προηγούμενο παράδειγμα με κύκλο στους συνδέσμους. Η ιδέα με τον τυχαίο surfer μπορεί να υπολογίσει κατάλληλα αποτελέσματα παρά την ύπαρξη κύκλου (A > B > E > A) 89

Ο αλγόριθμος PAGERANK στην πράξη (I) Ηιδέατουτυχαίουsurfer περιγράφθηκε από τους συνιδρυτές της Google στη πασίγνωστη πλέον εργασία που δημοσιεύθηκε το 1998 με τίτλο: The Anatomy of a Large scale Hypertextual Web Search Engine Σε συνδυασμό με άλλες τεχνικές, παραλλαγές αυτής της ιδέας χρησιμοποιούνται ακόμα από τις σημαντικότερες μηχανές αναζήτησης 90

Ο αλγόριθμος PAGERANK στην πράξη (II) Όμως, υπάρχουν διάφοροι παράγοντες που προκαλούν επιπλοκές, οπότε οι τεχνικές που χρησιμοποιούν οι σύγχρονες μηχανές αναζήτησης διαφέρουν κάπως από την ιδέα του τυχαίου surfer που περιγράψαμε Ένας τέτοιος παράγοντας αγγίζει την καρδιά του PageRank: η υπόθεση ότι οι υπερσύνδεσμοι έχουν εγκυρότητα είναι αμφισβητήσιμη, αλλά αυτό (έστω κι αν οι σύνδεσμοι μπορεί να αντιπροσωπεύουν κριτική κι όχι σύσταση) στηνπράξηδενείναισημαντικόπρόβλημα. Ένα σημαντικότερο πρόβλημα είναι ότι άτομα μπορούν να παραποιήσουν την ιδέα των υπερσυνδέσμων για να επηρεάσουν τεχνητά την κατάταξη των δικών τους σελίδων Υποθέστε ότι έχετε ένα website που λέγεται BooksBooksBooks.com για πώληση βιβλίων Αυτόματα, είναι σχετικά εύκολο να δημιουργήσει κανείς έναν μεγάλο αριθμό (π.χ., 10,000) διαφορετικών σελίδων με συνδέσμους προς το BooksBooksBooks.com. Επομένως αν οι μηχανές αναζήτησης υπολόγιζαν τις τιμές που χρησιμοποιεί ο αλγόριθμος PageRank όπως ακριβώς περιγράψαμε εδώ, το BooksBooksBooks.com θα μπορούσε χωρίς να το αξίζει να λάβει αποτελέσματα πολύ υψηλότερα από τα άλλα δύο ηλεκτρονικά βιβλιοπωλεία, και συνεπώς υψηλότερη κατάταξη και περισσότερες πωλήσεις... Οι μηχανές αναζήτησης καλούν αυτού του είδους την κακόβουλη συμπεριφορά web spam (η ορολογία προέρχεται σε αναλογία με το e mail spam: ανεπιθύμητα μηνύματα στα Εισερχόμενα e mail μας είναι ίδια με ανεπιθύμητες ιστοσελίδες που ανακατεύουν τα αποτελέσματα μιας αναζήτησης στο web) Η ανίχνευση και εξουδετέρωση διάφορων τύπων web spam αποτελούν πολύ σημαντικές εργασίες γιαόλεςτιςμηχανέςαναζήτησης 91

Ο αλγόριθμος PAGERANK στην πράξη (III) Για παράδειγμα, το 2004, ερευνητές στη Microsoft βρήκαν πάνω από 300,000 websites να έχουν ακριβώς 1001 σελίδες που να δείχνουν σε αυτά και λογικά το θεώρησαν πολύ περίεργο Έψαξαν αυτά τα websites λεπτομερώς και διαπίστωσαν ότι η πλειοψηφία των αυτών των εισερχόμενων συνδέσμων ήταν web spam.. Οι μηχανές αναζήτησης κάνουν μεγάλο αγώνα κατά των spammers και συνεχώς προσπαθούν να βελτιώσουν τους αλγορίθμους τους προκειμένου να επιστρέφουν ρεαλιστικές κατατάξεις Η συνεχής προσπάθεια βελτίωσης του αλγορίθμου PageRank έχει προκαλέσει εντατική ακαδημαϊκή και βιομηχανική έρευνα σχετικά με αλγόριθμους που χρησιμοποιούν τη δομή των υπερσυνδέσμων του web για να κατατάσσουν σελίδες (αλγόριθμοι κατάταξης που βασίζονται σε συνδέσμους link based ranking algs) Ένας άλλος ανασταλτικός παράγοντας σχετίζεται με την αποδοτικότητα των υπολογισμών του PageRank: Οι τιμές με βάση το surfer υπολογίζονται βάσει εξομοιώσεων, αλλά η εκτέλεση μιας εξομοίωσης για όλο το web θα διαρκούσε απαγορευτικά πολύ Επομένως, οι μηχανές αναζήτησης δεν υπολογίζουν τις τιμές του PageRank μέσω εξομοιώσεων τυχαίων surfers: χρησιμοποιούν μαθηματικές τεχνικές που δίνουν τις ίδιες απαντήσεις με τις εξομοιώσεις, αλλά με σημαντικά μικρότερο υπολογιστικό κόστος Εμείςαναφερθήκαμεσε εξομοιώσεις για να περιγράψουμε έξυπνες ιδέες και τι ακριβώς υπολογίζουν οι μηχανές αναζήτησης, όχι πώς το υπολογίζουν 92

Ο αλγόριθμος PAGERANK στην πράξη (IV) Οι εμπορικές μηχανές αναζήτησης καθορίζουν τις κατατάξεις τους χρησιμοποιώντας πολύ περισσότερα από έναν αλγόριθμο κατάταξης βασισμένο στους συνδέσμους (link based ranking algorithm) όπως ο PageRank Ακόμα και στην πρωτότυπη δημοσίευση για την περιγραφή της Google το 1998, αναφέρονταν πολλά άλλα χαρακτηριστικά που συνέβαλαν στην κατάταξη των αποτελεσμάτων της αναζήτησης Και προφανώς η τεχνολογία έχει προχωρήσει: ήδηηίδιαηgoogle δηλώνει ότι πάνω από 200 σήματα χρησιμοποιούνται για την εκτίμηση του πόσο σημαντική είναι μία σελίδα Παρά τη μεγάλη πολυπλοκότητα των σύγχρονων μηχανών αναζήτησης, η όμορφη ιδέα στην καρδιά του αλγορίθμου PageRank ότι δηλ., δημοφιλείς σελίδες αυξάνουν την εγκυρότητα/δημοτικότητα άλλων σελίδων μέσω υπερσυνδέσμων συνεχίζει να ισχύει Αυτή ακριβώς η ιδέα βοήθησε τη Google να εκθρονίσει την AltaVista, μετατρέποντας τη Google από μια μικρή εταιρεία σε βασίλισσα της αναζήτησης μέσα σε λίγα χρόνια Χωρίς τη βασική ιδέα του PageRank, οι περισσότερες αναζητήσεις στο web θα χάνονταν σε πέλαγος χιλιάδων ταιριασμάτων σε άσχετες web σελίδες Ο PageRank είναι πράγματι ένας αλγόριθμος που επιτρέπει σε έναν «ψύλλο» να αναδυθεί χωρίς κόπο στην κορυφή από τα «άχυρα» 93

Σύνοψη (I) Δεδομένα: WEB και η πληροφορία που περιέχεται σε αυτό Ερώτηση για αναζήτηση συγκεκριμένης πληροφορίας στο WEB Ζητούμενο: Γρήγορη επιστροφή λίστας με απαντήσεις ταξινομημένες από τη σχετικότερη στη λιγότερη σχετική 94

Σύνοψη (II) Για να λάβουμε γρήγορα σωστές και σχετικές απαντήσεις σε ερωτήματα που θέτουμε, οι μηχανές αναζήτησης στο web προσπαθούν (α) να εντοπίσουν ιστοσελίδες που περιέχουν την ερώτησή μας (ταίριασμα matching) μέσω δημιουργίας ευρετηρίου (indexing) με χρήση δύο επιπλέον τεχνικών: εντοπίζοντας τη θέση της λέξης ερώτησης στην ιστοσελίδα εντοπίζοντας λέξεις πληροφορίας στην ιστοσελίδα και εξετάζοντας αν η λέξηερώτηση περιέχεται μεταξύ τους (β) να κατατάξουν τις ιστοσελίδες που περιέχουν τη λέξη ερώτηση που θέσαμε με βάση τη σχετικότητά τους με την απάντηση στην ερώτησή μας (κατάταξη ranking) η αποδοτικότερη τεχνική έχει αποδειχθεί ότι είναι ο αλγόριθμος PageRank της Google (1998) σύμφωνα με τον οποίο ψηλότερα στην κατάταξη πρέπει να βρίσκονται εκείνες οι ιστοσελίδες που περιέχουν τη λέξη ερώτημα στις οποίες μπορούμε να οδηγηθούμε από πολλές δημοφιλείς ιστοσελίδες 95

Πρακτικές προεκτάσεις Για να κατατάξω «οντότητες» με βάση το πόσο σημαντικές είναι, έχει νόημα να λαμβάνω υπόψη το πόσοι τις «ψηφίζουν» το πόσο «ειδικοί» είναι αυτοί που «ψηφίζουν» Οπότε, θα είχε νόημα: Σε μια συλλογή να τοποθετήσω στο προσκήνιο τα δημοφιλέστερα αντικείμενα Σε μια επίσκεψη να ξεκινήσω από τα δημοφιλέστερα μέρη Για να μελετήσω γλωσσικά φαινόμενα να ξεκινήσω από τις λέξεις που χρησιμοποιούνται περισσότερο Για να μελετήσω την εξέλιξη να εστιάσω στα είδη που επιβίωσαν 96

Ενδιαφέρουσες αναφορές How Google Works http://www.googleguide.com/google_works.html The Google Pagerank Algorithm and How It Works http://www.sirgroane.net/google page rank/ PageRank Algorithm The Mathematics of Google Search http://www.math.cornell.edu/~mec/winter2009/ralucar emus/lecture3/lecture3.html 97

Τέλος Ενότητας

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στo πλαίσιo του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Αθηνών» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σημειώματα

Σημείωμα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.00. Έχουν προηγηθεί οι κάτωθι εκδόσεις:

Σημείωμα Αναφοράς Copyright Πανεπιτήμιο Πατρών, Εύη Παπαϊωάννου. «Εισαγωγή στους Αλγόριθμους. O αλγόριθμος PageRank». Έκδοση: 1.0. Πάτρα 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/culture158/index.php

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by nc sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος(π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί.