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



Σχετικά έγγραφα
Τεχνικές Εξόρυξης Δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ

Ανακάλυψη κανόνων συσχέτισης από εκπαιδευτικά δεδομένα

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

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων

ΚΒΑΝΤΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

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

Συλλογιστική εξαγωγής συμπερασμάτων από συγκεκριμένες υποθέσεις δοθείσα μεθοδολογία διαδικασία της σκέψης, πρέπει να «συλλογιστεί» υπόθεση/παραγωγή

«Αναζήτηση Γνώσης σε Νοσοκομειακά Δεδομένα»

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΟΛΙΣΘΗΡΟΤΗΤΑ ΚΑΙ ΜΑΚΡΟΥΦΗ ΤΩΝ ΟΔΟΔΤΡΩΜΑΤΩΝ ΚΥΚΛΟΦΟΡΙΑΣ

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

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

ΑΠΟΓΡΑΦΙΚΟ ΔΕΛΤΙΟ ΔΙΔΑΚΤΟΡΙΚΗΣ ΔΙΑΤΡΙΒΗΣ ΤΙΤΛΟΣ Συμπληρώστε τον πρωτότυπο τίτλο της Διδακτορικής διατριβής ΑΡ. ΣΕΛΙΔΩΝ ΕΙΚΟΝΟΓΡΑΦΗΜΕΝΗ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή εργασία

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

Αναγνώριση Προτύπων Ι

Ανάπτυξη διαδικτυακής διαδραστικής εκπαιδευτικής εφαρμογής σε λειτουργικό σύστημα Android

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων:

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή εργασία

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Data Mining - Classification

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

Θέμα: Παχυσαρκία και κύηση:

«Αλγόριθμος εξόρυξης γνώσης από δεδομένα δομής, περιεχομένου και χρήσης του Παγκόσμιου Ιστού»

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

Κεφάλαιο 20. Ανακάλυψη Γνώσης σε Βάσεις δεδοµένων. Τεχνητή Νοηµοσύνη - Β' Έκδοση Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η.

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων:

Η Επίδραση των Events στην Απόδοση των Μετοχών

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ. Πτυχιακή εργασία Η ΚΑΤΑΘΛΙΨΗ ΣΕ ΕΦΗΒΟΥΣ ΜΕ ΣΑΚΧΑΡΩΔΗ ΔΙΑΒΗΤΗ ΤΥΠΟΥ 1

Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο

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

Διακριτικές Συναρτήσεις

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών

ΚΕΦΑΛΑΙΟ Μηχανική Μάθηση

Ανάκτηση Πληροφορίας

On line αλγόριθμοι δρομολόγησης για στοχαστικά δίκτυα σε πραγματικό χρόνο

ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ. «ΔΙΟΙΚΗΣΗ της ΥΓΕΙΑΣ» ΑΞΙΟΛΟΓΗΣΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΝΟΣΟΚΟΜΕΙΑΚΟΥ ΠΡΟΣΩΠΙΚΟΥ

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΠΡΟΕΝΙΣΧΥΤΗ ΜΟΥΣΙΚΩΝ ΟΡΓΑΝΩΝ ΜΕ ΔΥΝΑΤΟΤΗΤΑ ΕΦΕ

Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων. Δρ. Ε. Χάρου

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΑΜΕΣΕΣ ΞΕΝΕΣ ΕΠΕΝΔΥΣΕΙΣ ΣΕ ΕΥΡΩΠΑΙΚΕΣ ΧΩΡΕΣ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ. Πτυχιακή εργασία ΔΙΕΡΕΥΝΗΣΗ ΤΟΥ ΚΛΙΜΑΤΟΣ ΑΣΦΑΛΕΙΑΣ ΤΩΝ ΑΣΘΕΝΩΝ ΣΤΟ ΝΟΣΟΚΟΜΕΙΟ

þÿ ¹µ ½  ±À±³É³ À±¹ ¹Î½ º±Ä þÿ ͼ²±Ã Ä Â ³ Â Ä Å

Managing Information. Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business.

Ενότητες Γ3.1 - Γ3.2 - Γ3.3

Ηλεκτρονικό εμπόριο. HE 8 Εξατομίκευση

Εξόρυξη Γνώσης από Βιολογικά εδομένα

Ηλεκτρονικός οδηγός για τους φοιτητές ενός Α.Ε.Ι.

Προτεινόμενες Διπλωματικές Εργασίες 2009

Web Mining. Χριστίνα Αραβαντινού Ιούνιος 2014

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή εργασία

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Ρετσινάς Σωτήριος ΠΕ 1703 Ηλεκτρολόγων ΑΣΕΤΕΜ

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

ΔΙΟΙΚΗΣΗ ΠΑΡΑΓΩΓΗΣ. ΕΝΟΤΗΤΑ 4η ΠΡΟΒΛΕΨΗ ΖΗΤΗΣΗΣ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

ΠΡΟΒΛΕΨΗ ΧΡΕΟΚΟΠΙΑΣ ΜΕ ΜΕΘΟΔΟΥΣ ΕΞΟΡΥΞΗΣ ΓΝΩΣΗΣ ΑΠΟ ΔΕΔΟΜΕΝΑ(DATA MINING)

Εξόρυξη Δεδομένων σε δεδομένα διαδικτυακής κίνησης και ροής χτυπημάτων

Προσδιορισμός Σημαντικών Χαρακτηριστικών της Αυθόρμητης Δραστηριότητας Απομονωμένου Εγκεφαλικού Φλοιού in vitro

Έξυπνα ενεργειακά δίκτυα

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

NATIONAL AND KAPODISTRIAN UNIVERSITY OF ATHENS SCHOOL OF SCIENCE FACULTY OF INFORMATICS AND TELECOMMUNICATIONS

ΤΕΙ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Ο νοσηλευτικός ρόλος στην πρόληψη του μελανώματος

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία. AtYourService CY : Create a REST API. Δημήτρης Χριστοδούλου

þÿ ÀÌ Ä º± µä À ¹ ¼ ½

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ. Σχολή Τεχνολογικών Εφαρμογών Τμήμα Εφαρμοσμένης Πληροφορικής & Πολυμέσων

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΕΤΟΙΜΑΣΙΑ ΔΕΛΤΙΟΥ ΠΟΣΟΤΗΤΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΛΟΓΙΣΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ. Πτυχιακή Εργασία

Εφαρμογές της Θεωρίας της Πληροφορίας σε διαδικασίες ανάκτησης εικόνας

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ. Πτυχιακή Εργασία. Κόπωση και ποιότητα ζωής ασθενών με καρκίνο.

O7: Πρόγραμμα Κατάρτισης Εκπαιδευτικών O7-A1: Αναπτύσσοντας εργαλεία για το Πρόγραμμα Κατάρτισης Εκπαιδευτικών

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Υλοποίηση Συστήματος Ανίχνευσης Εισβολών σε Περιβάλλον Android για Ασύρματα Δίκτυα Πρόσβασης

Τεχνολογία Ηλεκτρονικού Εμπορίου

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

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

Βιοπληροφορική. Μαργαρίτα Θεοδωροπούλου. Πανεπιστήμιο Θεσσαλίας, Λαμία 2016

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ. Πτυχιακή εργασία

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΜΗΤΡΙΚΟΣ ΘΗΛΑΣΜΟΣ ΚΑΙ ΓΝΩΣΤΙΚΗ ΑΝΑΠΤΥΞΗ ΜΕΧΡΙ ΚΑΙ 10 ΧΡΟΝΩΝ

Λίγα λόγια για τους συγγραφείς 16 Πρόλογος 17

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΤΕΧΝΙΚΕΣ ΕΞΟΡΥΞΗΣ ΔΕΔΟΜΕΝΩΝ AΠΟ ΡΟΕΣ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ ΝΙΚΟΛΑΟΣ Χ. ΤΣΙΡΑΚΗΣ ΕΠΙΒΛΕΠΩΝ: ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΗΣ Κ. ΧΡΗΣΤΟΣ ΜΑΚΡΗΣ Σεπτέμβριος 2006

Copyright Νικόλαος Τσιράκης, 2006 Mε επιφύλαξη παντός δικαιώματος. All rights reserved. Απαγορεύεται η αντιγραφή, αποθήκευση και διανομή της παρούσας εργασίας, εξ ολοκλήρου ή τμήματος αυτής για εμπορικό σκοπό. Επιτρέπεται η ανατύπωση, αποθήκευση και διανομή για σκοπό μη κερδοσκοπικό, εκπαιδευτικής ή ερευνητικής φύσης, υπό την προϋπόθεση να αναφέρεται η πηγή προέλευσης και να διατηρείται το παρόν μήνυμα. Ερωτήματα που αφορούν τη χρήση της εργασίας για κερδοσκοπικό σκοπό πρέπει να απευθύνονται προς το συγγραφέα. Οι απόψεις και τα συμπεράσματα που περιέχονται σε αυτό το έγγραφο εκφράζουν το συγγραφέα και δεν πρέπει να ερμηνευθεί ότι αντιπροσωπεύουν τις επίσημες θέσεις του Πανεπιστημίου Πατρών.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΤΕΧΝΙΚΕΣ ΕΞΟΡΥΞΗΣ ΔΕΔΟΜΕΝΩΝ ΑΠΟ ΡΟΕΣ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ ΝΙΚΟΛΑΟΣ Χ. ΤΣΙΡΑΚΗΣ ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΗΣ Κ. ΧΡΗΣΤΟΣ ΜΑΚΡΗΣ (ΕΠΙΒΛΕΠΩΝ) Τριμελής Επιτροπή (αλφαβητικά): ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ Κ. ΙΩΑΝΝΗΣ ΓΑΡΟΦΑΛΑΚΗΣ (ΜΕΛΟΣ ΤΡΙΜΕΛΟΥΣ) ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΗΣ Κ. ΧΡΗΣΤΟΣ ΜΑΚΡΗΣ (ΕΠΙΒΛΕΠΩΝ) ΚΑΘΗΓΗΤΗΣ Κ. ΑΘΑΝΑΣΙΟΣ ΤΣΑΚΑΛΙΔΗΣ (ΜΕΛΟΣ ΤΡΙΜΕΛΟΥΣ) Σεπτέμβριος 2006

UNIVERSITY OF PATRAS, SCHOOL OF ENGINEERING, COMPUTER ENGINEERING AND INFORMATICS DEPARTMENT MASTER THESIS ALGORITHMS AND TECHNIQUES FOR DATA MINING OVER CLICK STREAMS ON THE WEB NIKOLAOS CH. TSIRAKIS ACADEMIC SUPERVISOR: ASS. PROF. XRISTOS MAKRIS SEPTEMBER 2006

When you can measure what you are speaking about and express it in numbers, you know something about it; but when you cannot measure, when you cannot express it in numbers, your knowledge is of a meager and unsatisfactory kind; it may be the beginning of knowledge, but you have scarcely, in your thoughts, advanced to the stage of a science Lord Kelvin.

Νικόλαος Τσιράκης ΠΕΡΙΛΗΨΗ Στα πλαίσια της μεταπτυχιακής εργασίας ασχολήθηκα με τεχνικές και αλγόριθμους εξόρυξης δεδομένων από ροές δεδομένων με τεχνικές βάσεων δεδομένων. Τα τελευταία χρόνια όλο και πιο επιτακτική είναι η ανάγκη αξιοποίησης των ψηφιακών δεδομένων. Το γεγονός αυτό σε συνδυασμό με τη ραγδαία αύξηση του όγκου των δεδομένων επιβάλλει τη δημιουργία υπολογιστικών μεθόδων με απώτερο σκοπό την εξόρυξη της χρήσιμης πληροφορίας και γνώσης από αυτά. Οι μέθοδοι εξόρυξης δεδομένων παρουσιάζουν ιδιαίτερο ενδιαφέρον ειδικά στην περίπτωση όπου η πηγή των δεδομένων μας είναι οι ροές δεδομένων. Με τον όρο ροές δεδομένων εννοούμε προσωρινά δεδομένα τα οποία περνούν από ένα σύστημα «παρατηρητή» συνεχώς και σε μεγάλο όγκο. Αντίθετα με τα στατικά δεδομένα σε βάσεις δεδομένων, οι ροές δεδομένων υπάρχουν σε μεγάλο όγκο, συνήθως δεν τελειώνουν, αλλάζουν δυναμικά, και απαιτούν γρήγορες αντιδράσεις. Αυτά τα μοναδικά χαρακτηριστικά κάνουν την ανάλυση των ροών δεδομένων πολύ ενδιαφέρουσα. Αν λάβουμε υπ όψιν το γεγονός πως ο όγκος πληροφορίας που είναι αποθηκευμένος στο διαδίκτυο είναι πολύ μεγάλος και διαρκώς αυξάνεται γεννάται η ανάγκη εφαρμογής μεθόδων εξόρυξης της πληροφορίας αυτής από ροές δεδομένων του παγκόσμιου ιστού. Ο τομέας αυτός (web mining) είναι αρκετά σύγχρονος και υπάρξουν αρκετές τεχνικές εφαρμογής του. Ειδικά στην κατηγορία τεχνικών γνωστές ως web usage mining techniques η διαχείριση των web click data streams καθώς και άλλων μορφών δεδομένων που έχουν να κάνουν με το χρήστη μπορεί να οδηγήσει στην δημιουργία τάσεων (trends) και προτύπων (patterns) για τη βελτίωση της ποιότητας των υπηρεσιών και των αναγκών του χρήστη. Στα πλαίσια αυτής της διπλωµατικής εργασίας γίνεται αναφορά σε τεχνικές αποδοτικής επεξεργασίας και ανάλυσης εξόρυξης δεδομένων όταν η πηγή της πληροφορίας είναι ροές δεδομένων με σκοπό την συσταδοποίηση (clustering) και τον προσδιορισμό κατανομών ή προτύπων. Μελετάμε διάφορες εφαρμογές στον παγκόσμιο ιστό και με τη βοήθεια των τεχνικών αυτών διερευνούμε τεχνικές προσωποποίησης χρηστών (web mining for web personalization). Κύριος στόχος της εργασίας είναι η μελέτη και η υλοποίηση ενός συστήματος ομαδοποίησης χρηστών και εξαγωγής συμπερασμάτων για αυτούς αλλά και για τα δεδομένα που είχαν πρόσβαση. Αναλυτικότερα γίνεται χρήση τεχνικών μίκρο (micro) και μάκρο (macro) συσταδοποίησης σε ροές δεδομένων και μετέπειτα χρήση προηγμένων δομών δεδομένων με απώτερο στόχο την αποδοτικότερη και πιο γρήγορη δημιουργία προφίλ χρηστών. Στο πρώτο μέρος γίνεται μια εισαγωγή στον τομέα της εξόρυξης γνώσης με παρουσίαση εφαρμογών και αλγορίθμων που υπάρχουν μέχρι και σήμερα. Στην συνέχεια εστιάζουμε στην εξόρυξη γνώσης από τον παγκόσμιο ιστό παρουσιάζοντας τα στάδια της διαδικασίας αυτής και αναλύοντας εφαρμογές που χρησιμοποιούν τέτοιες τεχνικές. Πριν παρουσιαστεί σε βάθος η τεχνική της συσταδοποίησης Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό ix

δεδομένων γίνεται μια αναφορά στις ροές δεδομένων με τεχνικές, αλγορίθμους, κατηγορίες και συστήματα που έχουν ως τώρα μελετηθεί και υλοποιηθεί. Στο τέλος αυτού του μέρους παρουσιάζουμε αναλυτικά τη μέθοδο της συσταδοποίησης και ειδικά της συσταδοποίησης ροών δεδομένων. Σε δεύτερο επίπεδο, γίνεται η παρουσίαση του υλοποιημένου συστήματος εξόρυξης γνώσης από τον παγκόσμιο ιστό. Ειδικότερα αναφέρονται τα βήματα και τα μέρη του συστήματος καθώς και διάφορες αναλύσεις και συμπεράσματα. Τέλος γίνεται μια αναφορά σε μελλοντικές επεκτάσεις και ερευνητικές κατευθύνσεις της εργασίας. Το υλοποιημένο μοντέλο έχει παρουσιαστεί σαν αποδεκτή δημοσίευση στο International Workshop on architectures, models and infrastructures to generate semantics in Peer to Peer and Hypermedia Systems of ACM Hypertext 2006. Επίσης βασίζεται σε μια προηγούμενη εργασία αναφορικά με ευχρηστία (usability) εφαρμογών και τεχνικές αξιολόγησης ευχρηστίας των συστημάτων, που παρουσιάστηκε στο Metainformatics Symposium 2005. Τέλος υπάρχει ακόμα μια εργασία πάνω στο δομικό υπολογισμό των Open Hypermedia Systems που παρουσιάστηκε στο Metainformatics Symposium 2004. x Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης SUMMARY The world wide web has gradually transformed into large data repository consisting of vast amount of data in many different types. These data doubles about every year, but useful information seems to be decreasing. The area of data mining has arisen over the last decade to address this problem. It has become not only an important research area, but also one with large potential in the real world. Data mining has many directives and handles various types of data. When the related data are data streams the problems seem to be very crucial and interesting. Data streams are large volumes of data arriving continuously. Data mining techniques have been proposed and studied to help users better understand and analyze the information. Clustering and other mining techniques have grasped the interest of the data mining community. Clustering is a useful and ubiquitous tool in data analysis. In broad strokes, is the problem of finding a partition of a data set so that, under some definition of similarity, similar items are in the same part of the partition and different items are in different parts. With the rapid increase in web-traffic and e-commerce, understanding user behavior based on their interaction with a website is becoming more and more important for website owners and clustering in correlation with personalization techniques of this information space has become a necessity. The knowledge obtained by learning the users preferences can help improve web content, find usability issues related to this content and its structure, ensure the security of provided data, analyze the different groups of users that can be derived from the web access logs and extract patterns, profiles and trends. In this thesis we introduce in data mining and then we mention techniques and algorithms related to web mining which is part of data mining area. We focus in web mining when the data are streams from the web (click stream data) and then we analyze the technique of clustering. The main purpose of this thesis is the presentation of a model that performs clustering in click stream data. The results from this procedure can show the differences between clusters and easily can be extracted trends and usability and security conclusions. The basic attribute of clustering data streams is one-pass algorithms. Current methods don t address the following issues: a) the quality of clusters is poor when data evolves considerably over time. b) A data stream clustering algorithm requires much greater functionality in discovering and exploring clusters over different portions of the stream. The developed model has been tested using data from web servers and has been presented as a paper in the International Workshop on architectures, models and infrastructures to generate semantics in Peer to Peer and Hypermedia Systems of ACM Hypertext 2006. My thesis is also based on another paper of mine that argues about usability of systems and provide a technique for usability evaluation Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό xi

and has been presented in the Metainformatics Symposium 2005. Finally there is a paper that refers to Open Hypermedia Systems and structural computing and has been presented in Metainformatics Symposium 2004. xii Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης ΠΕΡΙΕΧΟΜΕΝΑ Αριθμός/ Τίτλος Κεφαλαίου Σελίδα Περίληψη...ix Summary...xi Περιεχόμενα...xiii Λίστα Σχημάτων και Πινάκων...xvii Ευχαριστίες...xviii 1 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΞΟΡΥΞΗ ΓΝΩΣΗΣ... 19 1.1 Εισαγωγή...19 1.2 Η αναγκαιότητα ενός νέου τομέα...19 1.2.1 1.2.2 Το κενό μεταξύ δεδομένων και υπολογιστικής ισχύς... 19 Άλλα θέματα... 20 1.3 Ο τομέας της εξόρυξης δεδομένων...21 1.3.1 Στατιστική... 21 1.3.2 Τεχνητή Νοημοσύνη... 22 1.3.3 Μηχανική Μάθησης... 22 1.3.4 Βάσεις δεδομένων... 22 1.4 Εφαρμογές εξόρυξης δεδομένων...23 1.4.1 Παγκόσμιος ιστός... 23 1.4.2 Επιστήμη... 23 1.4.3 Μάρκετινγκ... 23 1.4.4 Επένδυση... 24 1.4.5 Πρόληψη και Ασφάλεια... 24 1.5 Αλγόριθμοι εξόρυξης δεδομένων...24 1.5.1 Κατηγοριοποίηση... 25 1.5.2 Συσταδοποίηση... 25 1.5.3 Κανόνες Συσχέτισης... 26 1.5.4 Πρότυπα Ακολουθιών... 26 1.5.5 Παλινδρόμηση... 26 1.5.6 Δέντρα Απόφασης... 26 1.6 Συμπεράσματα...27 2 ΕΞΟΡΥΞΗ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ... 29 2.1 Εισαγωγή...29 2.2 Γενικά...29 2.2.1 Web Content Mining... 30 2.2.2 Web Structure Mining... 30 2.2.3 Web Usage Mining... 31 2.3 Στάδια διαδικασίας...32 2.3.1 Συλλογή δεδομένων... 32 2.3.1.1 Διακομιστές διαδικτύου... 32 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό xiii

2.3.1.2 Διακομιστές μεσολάβησης...33 2.3.1.3 Χρήστες διαδικτύου...33 2.3.2 Προεπεξεργασία δεδομένων...33 2.3.2.1 Καθαρισμός δεδομένων...33 2.3.2.2 Αναγνώριση και ανακατασκευή των συνόδων των χρηστών...34 2.3.2.3 Ανάκτηση δεδομένων σχετικά με το περιεχόμενο και τη δομή των σελίδων 35 2.3.2.4 Μορφοποίηση των δεδομένων...35 2.3.3 Ανακάλυψη προτύπων...36 2.3.3.1 Κανόνες αυτοσυσχέτισης...36 2.3.3.2 Πρότυπα ακολουθιών...36 2.3.3.3 Συσταδοποίηση...36 2.3.4 Εκμετάλλευση της γνώσης...37 2.4 Εφαρμογές... 37 2.4.1 Προσωποποίηση περιεχομένου...37 2.4.2 Προανάκληση και επαναποθήκευση δεδομένων...38 2.4.3 Υποστήριξη στο σχεδιασμό σελίδων...38 2.4.4 Ηλεκτρονικό εμπόριο...38 2.5 Λογισμικό... 38 2.6 Από τις τεχνικές στις εφαρμογές... 39 2.7 Θέματα ασφάλειας... 40 3 ΡΟΕΣ ΔΕΔΟΜΕΝΩΝ...43 3.1 Εισαγωγή... 43 3.2 Το φαινόμενο των ροών δεδομένων... 44 3.3 Ροές δεδομένων θεωρiα και πράξη... 46 3.3.1 Μοντέλα ροών δεδομένων...46 3.3.2 Ερωτήματα σε ροές δεδομένων...48 3.3.3 Ένα σενάριο ροών δεδομένων...48 3.4 Άλλες εφαρμογές των μοντέλων ροών δεδομένων... 49 3.5 Τεχνικές... 50 3.5.1 Βασικές μαθηματικές ιδέες...50 3.5.1.1 Δειγματοληψία...50 3.5.1.2 Τυχαίες Αναπαραστάσεις...51 3.5.2 Βασικές αλγοριθμικές τεχνικές...52 3.5.2.1 Ομαδικός έλεγχος...52 3.5.2.2 Δεντρική μέθοδος...53 3.5.2.3 Εκθετικά ιστογράμματα...53 3.5.3 Κατώτατα όρια...53 3.5.3.1 Όρισμα ικανότητας συμπίεσης...53 3.5.3.2 Πολυπλοκότητα επικοινωνίας...53 3.5.3.3 Ελαχιστοποίηση...54 3.5.4 Αρχές ροών δεδομένων...54 3.6 Κατηγορίες εφαρμογών ροών δεδομένων... 54 3.6.1 Δίκτυα αισθητήρων...54 3.6.2 Ανάλυση κίνησης δικτύων...54 3.6.3 Οικονομικά Εισιτήρια...55 3.6.4 Ανάλυση αρχείων καταγραφής δοσοληψιών...55 xiv Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης 3.7 Συστήματα ροών δεδομένων...55 3.7.1 Aurora... 56 3.7.1.1 Γενικά... 56 3.7.1.2 Σκοπός... 57 3.7.1.3 Το σύστημα... 57 3.7.2 QuickSand... 59 3.7.2.1 Γενικά... 59 3.7.2.2 Λειτουργίες... 59 4 ΣΥΣΤΑΔΟΠΟΙΗΣΗ... 61 4.1 Εισαγωγή...61 4.2 Γενικά...62 4.3 Πεδία εφαρμογής...63 4.3.1 Συσταδοποίηση για κατανόηση... 63 4.3.1.1 Βιολογία... 64 4.3.1.2 Εξόρυξη γνώσης... 64 4.3.1.3 Κλίμα... 64 4.3.1.4 Ψυχολογία και ιατρική... 64 4.3.1.5 Επιχειρήσεις... 65 4.3.2 Συσταδοποίηση για χρησιμότητα... 65 4.3.2.1 Σύνοψη... 65 4.3.2.2 Συμπίεση... 65 4.3.2.3 Αποδοτική εύρεση κοντινότερου γείτονα... 65 4.4 Ανάλυση συστάδων...66 4.4.1 Γενικά... 66 4.4.2 Τι είναι η ανάλυση συστάδων... 66 4.4.3 Διαφορετικοί τύποι συσταδοποίησης... 67 4.4.3.1 Ιεραρχική και διαιρετική... 67 4.4.3.2 Αποκλειστική, επικαλυπτόμενη και ασαφής... 68 4.4.3.3 Πλήρης και μερική... 69 4.4.4 Διαφορετικοί τύποι συστάδων... 69 4.4.4.1 Πλήρως διαχωρισμένα... 69 4.4.4.2 Βασισμένα σε πρωτότυπα... 69 4.4.4.3 Βασισμένα σε γραφήματα... 69 4.4.4.4 Βασισμένα στην πυκνότητα... 70 4.4.4.5 Θεμελιώδης συστάδες... 71 4.5 Μέθοδοι συσταδοποίησης...71 4.6 Αλγόριθμοι συσταδοποίησης...71 4.6.1 Κ-Μeans... 72 4.6.1.1 Ο αλγόριθμος... 73 4.6.1.2 Παραλλαγές του k-means... 74 4.6.1.2.1 k-windows... 74 4.6.2 Συσσωρευμένη ιεραρχική συσταδοποίηση... 75 4.6.2.1 Ο αλγόριθμος... 75 4.6.3 DBSCAN... 76 4.6.3.1 Ο αλγόριθμος... 76 4.7 Αποτίμηση συστάδων...77 5 ΕΝΑ ΜΟΝΤΕΛΟ ΕΞΟΡΥΞΗΣ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ... 79 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό xv

5.1 Εισαγωγή... 79 5.2 Γενικά... 80 5.3 Εξόρυξη γνώσης στον παγκόσμιο ιστό...81 5.3.1 Συσταδοποίηση...81 5.4 Το πρόβλημα της συσταδοποίησης... 83 5.5 Σχετικές εργασίες... 83 5.6 Το μοντέλο... 85 5.6.1 Αρχιτεκτονική...85 5.6.2 Weblog δεδομένα...86 5.6.3 Το σύστημα...87 5.6.3.1 Το υποσύστημα πραγματικού χρόνου...88 5.6.3.2 Το αυτόνομο υποσύστημα...89 5.6.3.3 Αποθήκευση συστάδων...91 5.7 Ανάλυση συστάδων... 92 5.8 Θέματα ασφάλειας... 93 5.9 Θέματα ευχρηστίας... 94 5.10 Τάσεις χρηστών... 96 5.11 Πρότυπα χρηστών... 99 5.12 Μεθοδολογία... 101 5.12.1 Εξαγωγή δεδομένων... 101 5.12.2 Συσταδοποίηση δεδομένων... 102 5.12.2.1 Παράμετροι συσταδοποίησης του K-Means... 102 5.13 Πειραματικά αποτελέσματα...103 5.14 Επιπτώσεις στην υποδομή...107 5.15 Επεκτάσεις βασικού μοντέλου...108 5.16 Συνεισφορά, συμπεράσματα και μελλοντικές κατευθύνσεις...109 Βιβλιογραφία... 110 Γλωσσάρι... 117 5.17 Γλωσσάριο... 117 xvi Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ ΚΑΙ ΠΙΝΑΚΩΝ Αριθμός/ Τίτλος Σελίδα Σχήμα 1: Ταξινόμηση του τομέα εξόρυξης δεδομένων Διαδικτύου...30 Σχήμα 2: Aurora, αρχιτεκτονική...58 Σχήμα 3: Aurora, μοντέλο συστήματος...58 Σχήμα 4: QuickSand, αποτύπωση πληροφορίας κινήσεων σε μορφή ροών δεδομένων...60 Σχήμα 5: Διαφορετικοί τρόποι συσταδοποίησης του ίδιου συνόλου δεδομένων...67 Σχήμα 6: Διαφορετικοί τύποι συστάδων από σημεία δυο διαστάσεων...70 Σχήμα 7: Κατηγοριοποίηση αλγορίθμων συσταδοποίησης...71 Σχήμα 8: Βασική Αρχιτεκτονική Συστήματος...86 Σχήμα 9: Προκαθορισμένη μορφή του αρχείου Access Log...87 Σχήμα 10: Ευαισθησία του k-means αλγορίθμου στην αρχική επιλογή συστάδων.90 Σχήμα 11: Παράδειγμα k-means συσταδοποίησης...91 Σχήμα 12: Εξομάλυνση χρησιμοποιώντας μεταβαλλόμενους μέσους όρους...97 Σχήμα 13: Συσχέτιση με lag=3...98 Σχήμα 14: Σύγκριση διαφορετικών τύπων προτύπων... 100 Σχήμα 15: Συστάδες βάση των IP διευθύνσεων των χρηστών... 104 Σχήμα 16: Συστάδες βάση των σελίδων που επισκέπτονται οι χρήστες... 105 Σχήμα 17: Συστάδες βάση των επισκέψεων χρηστών σε σελίδες... 105 Σχήμα 18: Μεταβολή συστάδων στο χρόνο... 106 Πίνακας 1: Εφαρμογές και τεχνικές εξόρυξης γνώσης στον Παγκόσμιο Ιστό...40 Πίνακας 2: Διαφορές συστημάτων διαχείριση βάσεων δεδομένων και ροών δεδομένων...56 Πίνακας 3: Δομή των συμπιεσμένων δεδομένων...89 Πίνακας 4: Δομή συμπιεσμένων δεδομένων...92 Πίνακας 5. Είσοδος συσταδοποίησης... 102 Πίνακας 6. Παράμετροι εξόδου k-means... 103 Πίνακας 7. Παράμετροι εξόδου k-means... 103 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό xvii

ΕΥΧΑΡΙΣΤΙΕΣ Πριν παρουσιάσω αναλυτικά την εργασία μου θα ήθελα να ευχαριστήσω τον επιβλέποντα Επίκουρο Καθηγητή κ. Χρήστο Μακρή για την καθοδήγηση του και τη συνεχή του συμβολή στην προσπάθεια μου. Επίσης θέλω να ευχαριστήσω τα άλλα μέλη της τριμελούς επιτροπής, Α. Τσακαλίδη, Καθηγητή, και Ι. Γαροφαλάκη, Αναπληρωτή Καθηγητή. Τέλος θέλω να ευχαριστήσω τους γονείς μου και τον αδελφό μου που με στήριξαν σε κάθε στιγμή και δυσκολία. xviii Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης 1 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΞΟΡΥΞΗ ΓΝΩΣΗΣ 1.1 Εισαγωγή Σε αυτό το κεφάλαιο γίνεται μια σύντομη εισαγωγή στην εξόρυξη δεδομένων (data mining). Ο τομέας της εξόρυξης δεδομένων αποτελεί αντικείμενο μελέτης από πολλούς ερευνητές και μηχανικούς ειδικά τα τελευταία χρόνια με την ραγδαία αύξηση του όγκου της πληροφορίας. Η έρευνα σε αυτό τον τομέα έχει προχωρήσει αρκετά, έχουν γίνει σημαντικά βήματα και έχουν εξαχθεί πολλά συμπεράσματα. Τα δεδομένα κάθε χρόνο διπλασιάζονται, αλλά η χρήσιμη πληροφορία δείχνει να μειώνεται. Αυτό είναι και το κύριο πρόβλημα που προσπαθεί να λύσει ο τομέας αυτός και αποτελεί μια πρόκληση στο σύγχρονο κόσμο. Στις επιμέρους παραγράφους θα γίνει προσπάθεια να επιτευχθούν οι παρακάτω στόχοι: Να παρουσιαστούν τα βασικά προβλήματα που οδήγησαν στην δημιουργία του τομέα της εξόρυξης δεδομένων. Να δοθεί μια γενική περιγραφή της εξόρυξης δεδομένων και να παρουσιαστούν οι σχέσεις που έχει με άλλους σχετικούς τομείς όπως η στατιστική και οι βάσεις δεδομένων. Να παρουσιαστεί μια κατηγοριοποίηση των εφαρμογών και των αλγορίθμων εξόρυξης δεδομένων. Να δοθεί μια σφαιρική θεώρηση της διαδικασίας που πρέπει κάποιος να ακολουθήσει έτσι ώστε να αναλύσει τα δεδομένα του με τη βοήθεια εργαλείων εξόρυξης δεδομένων. Στην συνέχεια της εισαγωγής αυτής θα δοθεί μια γενική ιδέα για το τι είναι εξόρυξη δεδομένων, γιατί είναι αναγκαία και πως εφαρμόζεται. 1.2 Η αναγκαιότητα ενός νέου τομέα 1.2.1 Το κενό μεταξύ δεδομένων και υπολογιστικής ισχύς Είναι γεγονός πως η υπολογιστική ισχύς των υπολογιστών διπλασιάζεται κάθε 18 μήνες [1]. Επίσης η χωρητικότητα δεδομένων διπλασιάζεται κάθε 12 εβδομάδες [2]. Το αποτέλεσμα είναι μια διαφορά στις δύο τάσεις η οποία αυξάνεται εκθετικά και καλείται το κενό δεδομένων (data gap) ή ο νόμος της αποθήκευσης (storage law) [3]. Είναι γεγονός πως το κενό μεταξύ της απόδοσης του υλικού και της ποσότητας των δεδομένων που θέλουμε να επεξεργαστούμε είναι ένα σημαντικό πρόβλημα. Οι Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 19

Κεφάλαιο 1: Σφάλμα! Δεν έχει οριστεί στυλ. τυπικοί αλγόριθμοι που διαχειρίζονται πολύ λιγότερα δεδομένα αντιμετωπίζουν προβλήματα απόδοσης από τη στιγμή που το υλικό δεν μπορεί να καλύψει το κενό από τον όγκο δεδομένων. Για παράδειγμα ένας αλγόριθμος ταξινόμησης που λειτουργεί ορθά με λίγα megabyte δεδομένων θα μπορούσε να έχει προβλήματα απόδοσης αν εφαρμοστεί σε gigabytes δεδομένων. Στην πραγματικότητα υπάρχουν συγκεκριμένα προβλήματα με τους κλασικούς αλγορίθμους τα οποία θα παρουσιαστούν συνοπτικά παρακάτω. Το βασικό πρόβλημα των κλασικών αλγορίθμων είναι ο χρόνος εκτέλεσης. Ωστόσο, μπορεί να υπάρχουν άλλοι λόγοι που έχουν ως αποτέλεσμα μεγάλους χρόνους εκτέλεσης. Αρχικά, από τη στιγμή που μιλάμε για μεγάλο όγκο δεδομένων δεν μπορούμε να θεωρήσουμε πως θα χωρέσει ολόκληρος στη μνήμη RAM, του υπολογιστή όπου γίνεται ο χειρισμός των υπολογισμών, αλλά ούτε μπορούμε να θεωρούμε πως έχουμε διαθέσιμο άπειρο χώρο βοηθητικής μνήμης. Εάν σχεδιάσουμε έναν αλγόριθμο ο οποίος θα τοποθετεί όλα τα δεδομένα στην μνήμη RAM έτσι ώστε να είναι γρήγορη και άμεση η προσπέλαση των δεδομένων, τότε ο αλγόριθμος αυτός πιθανό να μην λειτουργήσει ορθά για μεγέθη δεδομένων μεγαλύτερα από το μέγεθος της (η βοηθητική μνήμη θα αναπληρώσει το χαμένο διάστημα της RAM το οποίο αποφέρει κακή απόδοση). Ακόμη δεν μπορούμε να υποθέσουμε πως θα έχουμε δύο ή τρία αντίγραφα των δεδομένων μας στην βοηθητική μνήμη, γιατί μπορεί να μην έχουμε τον απαιτούμενο χώρο γι αυτό. Συμπερασματικά, χρειαζόμαστε αλγόριθμους που λαμβάνουν υπ όψιν όλες αυτές τις παραμέτρους. Επιπρόσθετα, όταν θέλουμε να επεξεργαστούμε μεγάλο όγκο δεδομένων, η πολυπλοκότητα της διαδικασίας μπορεί να μην είναι και πολύ σημαντικός παράγοντας. Για παράδειγμα, παρόλο που ένας πολυωνυμικός αλγόριθμος με πολυπλοκότητα O(n 2 ) μπορεί να είναι αποδεκτός, όταν το n είναι της τάξης του τρισεκατομμυρίου ο χρόνος εκτέλεσης μπορεί να είναι απαγορευτικά τεράστιος. Από την άλλη πλευρά, αν έχουμε στη διάθεση μας έναν αλγόριθμο ο οποίος παίρνει ως είσοδο μικρά τμήματα δεδομένων και έχει μεγάλη πολυπλοκότητα, θα είναι προτιμότερος από έναν αλγόριθμο που θα σαρώνει όλα τα δεδομένα και θα παρουσιάζει μικρή πολυπλοκότητα. 1.2.2 Άλλα θέματα Ένα άλλο σημαντικό ζήτημα ήταν το γεγονός πως στη δεκαετία του 90 τα δεδομένα προερχόμενα από εταιρίες και επιστημονικούς οργανισμούς αυξάνονταν πολύ γρήγορα. Νέες βάσεις δεδομένων και συστήματα αποθήκευσης, σε συνεργασία με υπερσύγχρονα συστήματα συλλογής δεδομένων ξεκίνησαν να συγκεντρώνουν όλο και πιο πολλά δεδομένα μέρα με τη μέρα. Γι αυτό το λόγο χρειάστηκε ένα μοντέλο ώστε να περάσουμε από τα απλά δεδομένα στη χρήσιμη πληροφορία. Το μοντέλο αυτό έπρεπε να τηρεί τους ακόλουθους κανόνες: Να μπορεί να διαχειριστεί μεγάλο όγκο πληροφορίας 20 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης Να κατέχει μηχανισμούς ώστε να εξάγει χρήσιμη πληροφορία από αυτά τα δεδομένα Ικανοποιώντας αυτούς τους δυο κανόνες, μπορούμε να ανακαλύψουμε την χρήσιμη πληροφορία από τα διαθέσιμα δεδομένα που πρόκειται να επεξεργαστούμε. 1.3 Ο τομέας της εξόρυξης δεδομένων Τα προβλήματα που μόλις παρουσιάστηκαν οδήγησαν την επιστημονική κοινότητα στη δημιουργία ενός νέου τομέα, που καλείται σήμερα εξόρυξη δεδομένων. Με τον όρο αυτό καλούμε [3] τον ορθό προσδιορισμό ενδιαφέρουσων δομών σε δεδομένα. Εδώ πρέπει να σημειώσουμε, επειδή δεν αναφέρεται στον ορισμό, πως για να εξάγουμε πραγματικά χρήσιμη πληροφορία συνήθως απαιτείται να έχουμε όσο το δυνατό πιο πολλά δεδομένα. Αυτό έχει να κάνει περισσότερο με την ακρίβεια και την λεπτομέρεια της πληροφορίας αυτής. Έτσι μπορούμε να πούμε γενικά πως η σπουδαιότητα ενός αλγόριθμου εξόρυξης δεδομένων μπορεί να περιγραφεί από τον ακόλουθο τύπο: σπουδαιότητα = (ποιότητα πληροφορίας) * απόδοση Από το παραπάνω συμπεραίνουμε πως στις περισσότερες εφαρμογές είναι άσκοπο να έχουμε υψηλή απόδοση αποτελεσμάτων με υπολογισμούς που απαιτούν απροσδιόριστα πολύ χρόνο ή να έχουμε πολύ γρήγορα αποτελέσματα πολύ χαμηλής ποιότητας. Επίσης από τον τύπο αυτό φαίνεται το trade-off που συναντούμε συνήθως σε πολλούς αλγόριθμους εξόρυξης δεδομένων και συστήματα. Ο όρος «εξόρυξη δεδομένων» είναι σχετικά καινούργιος και εμφανίστηκε στη δεκαετία του 90. Ωστόσο, παρεμφερείς τάσεις και έρευνες είναι ακόμα πιο παλιές. Ο τομέας της εξόρυξης δεδομένων σχετίζεται με πολλούς άλλους τομείς όπως την στατιστική (statistics), την τεχνητή νοημοσύνη (artificial intelligence), τη μηχανική μάθησης (machine learning), τις βάσεις δεδομένων (data bases), τις Μηχανές αναζήτησης, τα συστήματα υποστήριξης αποφάσεων (decision support systems), τα συστήματα άμεσης ανάλυσης δεδομένων (OLAP) και του ταιριάσματος προτύπων (pattern matching). Παρακάτω θα αναλύσουμε τη σχέση που έχει η εξόρυξη δεδομένων με μερικούς από τους πιο βασικούς τομείς που μόλις αναφέρθηκαν. 1.3.1 Στατιστική Είναι γνωστό πως ένα μεγάλο μέρος της ερευνητικής βάσης της εξόρυξης δεδομένων βασίζεται στη στατιστική. Αυτό είναι λογικό μιας και η στατιστική έχει ανάλογους σκοπούς με την εξόρυξη δεδομένων αφού αποσκοπούν στην αναγνώριση χρήσιμων πληροφοριών και προτύπων στα δεδομένα. Μέρος των διαδικασιών σε ένα μοντέλο εξόρυξης δεδομένων μπορεί να αποτελεί η αναζήτηση των δεδομένων και η εξαγωγή συμπερασμάτων από τα αποτελέσματα μιας αναζήτησης. Μια συχνά χρησιμοποιούμενη τεχνική στην εξόρυξη δεδομένων είναι αυτή της δειγματοληψίας. Αυτός ο τρόπος στη στατιστική λέγεται «στατιστική εξαγωγή συμπεράσματος». Ακόμα και σήμερα, ένα σημαντικό τμήμα των νέων υλοποιημένων αλγόριθμων Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 21

Κεφάλαιο 1: Σφάλμα! Δεν έχει οριστεί στυλ. εξόρυξης δεδομένων αποτελούν στην ουσία στατιστικές τεχνικές που έχουν προσαρμοστεί στις απαιτήσεις των αλγορίθμων και των υπολογισμών. Όπως και με τις κλασικές τεχνικές στατιστικής στην εξόρυξη δεδομένων ακολουθούμε ανάλυση παλινδρόμησης (regression analysis), ανάλυση συστάδων (cluster analysis) κ.α. Ακόμα και όταν οι αλγόριθμοι εξόρυξης δεδομένων δεν χρησιμοποιούν άμεσα τεχνικές στατιστικής, πολλές φορές οι βασικές τους ιδέες έχουν ως αρχική επιρροή την στατιστική. 1.3.2 Τεχνητή Νοημοσύνη Δύο άλλοι τομείς που σχετίζονται με αυτόν της εξόρυξης δεδομένων είναι η τεχνητή νοημοσύνη και τη μηχανική μάθησης. Σκοπός της τεχνητής νοημοσύνης είναι να βγάζει λογικά συμπεράσματα από ανεπεξέργαστα δεδομένα, κάτι που κάνει και ο τομέας της εξόρυξης δεδομένων. Επίσης ο τομέας της εξόρυξης δεδομένων κάνει εκτεταμένη χρήση εργαλείων τεχνητής νοημοσύνης και μηχανικής μάθησης. Μερικά παραδείγματα είναι τα νευρωνικά δίκτυα, δέντρα απόφασης και μηχανές διανυσμάτων (vector machines). Γενικά ο τομέας της τεχνητής νοημοσύνης είναι πιο γενικός και εμπεριέχει περιοχές εκτός των κλασικών μεθόδων εξόρυξης δεδομένων. Επίσης εφαρμογές τεχνητής νοημοσύνης μπορεί να μην σχετίζονται με κλιμάκωση δεδομένων μιας και ο όγκος τους μπορεί να είναι αρκετά μικρός. 1.3.3 Μηχανική Μάθησης Η μηχανική μάθησης είναι μια περιοχή της τεχνητής νοημοσύνης η οποία εξετάζει πως μπορούμε να δημιουργούμε προγράμματα τα οποία μπορούν να μαθαίνουν. Στην εξόρυξη δεδομένων, η μηχανική μάθησης χρησιμοποιείται για τεχνικές πρόβλεψης ή κατηγοριοποίησης [4]. Με τη μηχανική μάθησης, ο υπολογιστής κάνει κάποιες προβλέψεις και μετά, βασιζόμενος στην ανατροφοδότηση (feedback), όποτε αυτό είναι ορθό, μαθαίνει από αυτό. Μαθαίνει από τα παραδείγματα, την αποθηκευμένη γνώση, και την ανατροφοδότηση. Όταν συμβεί μελλοντικά ανάλογη περίπτωση, η ανατροφοδότηση χρησιμοποιείται για να κάνει την ίδια πρόβλεψη ή για να κάνει μια εντελώς διαφορετική πρόβλεψη. Η στατιστική είναι πολύ σημαντική σε προγράμματα μηχανικής μάθησης γιατί τα αποτελέσματα των προβλέψεων πρέπει να είναι στατιστικά σημαντικά. 1.3.4 Βάσεις δεδομένων Μια βάση δεδομένων είναι μια συλλογή από δεδομένα. Αντίθετα με ένα απλό σύνολο, τα δεδομένα σε μια βάση έχουν μια ορισμένη δομή ή σχήμα με το οποίο είναι σχετιζόμενα. Έτσι τα δεδομένα σε μια βάση αναπαρίστανται με ένα πιο θεωρητικό τρόπο ή μοντέλο δεδομένων. Αυτό το μοντέλο χρησιμοποιείται για να περιγράψει τα δεδομένα, τα χαρακτηριστικά τους, και τις σχέσεις μεταξύ τους. Ένα μεγάλο μέρος των σημερινών ερευνητών στην εξόρυξη δεδομένων είναι άτομα προερχόμενα από τον τομέα των βάσεων δεδομένων. Η σχέση των δύο αυτών τομέων είναι εμφανής μιας και πριν επεξεργαστούμε τα δεδομένα μας πρέπει πρώτα να μπορούμε να τα διαχειριστούμε ορθά. Έτσι χωρίς καλά συστήματα διαχείρισης δεδομένων δεν μπορούμε να εφαρμόσουμε αλγόριθμους εξόρυξης δεδομένων. Οι 22 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης δύο τομείς ακόμη μοιράζονται πολλά, όπως διαδικτυακές βάσεις δεδομένων (Web databases), προσωρινές ή χωρικές βάσεις δεδομένων κ.α. Ένα αξιοσημείωτο παράδειγμα ενός πετυχημένου συνδυασμού εξόρυξης δεδομένων και βάσεων δεδομένων είναι η μηχανή αναζήτησης Google [5] η οποία εκτελεί εργασίες πολύ γρήγορα, αποδοτικά και με ακριβή αποτελεσμάτων σε οποιοδήποτε ερώτημα. 1.4 Εφαρμογές εξόρυξης δεδομένων Σε αυτή την ενότητα θα παρουσιάσουμε τις βασικές περιοχές εφαρμογής του τομέα της εξόρυξης δεδομένων. 1.4.1 Παγκόσμιος ιστός Ο τομέας της εξόρυξης δεδομένων είχε άμεση εφαρμογή με επιτυχία στο Διαδίκτυο. Το πιο δημοφιλές παράδειγμα εξόρυξης δεδομένων στο διαδίκτυο είναι η Google [5]. Για να γίνει πιο κατανοητή η σημαντικότητα της συνεισφοράς αυτής θα πρέπει να αντιληφθούμε πως ο όγκος της πληροφορίας που υπάρχει μέχρι τώρα στο διαδίκτυο είναι αδύνατο να μετρηθεί με ακρίβεια. Οι σελίδες που κάθε φορά ερευνά η Google δηλώνεται πως είναι περίπου 4,285,199,774. Κάθε ερώτημα στην μηχανή αναζήτησης δεν ξεπερνά σε χρόνο τα δυο δευτερόλεπτα. Η Google και γενικά ο τομέας της εξόρυξης δεδομένων στο Διαδίκτυο έχουν σήμερα τεράστια επιτυχία γιατί έχουν εκπληρώσει δυο σημαντικούς στόχους. Πρώτα, μπορούν να κάνουν αναζήτηση (με κάθε ερώτημα) σε τόσα πολλά δεδομένα σε πολύ σύντομο χρόνο. Δεύτερον, μπορούν να επιστρέψουν σε κάθε ερώτημα τα πρώτα αποτελέσματα που είναι πιο χρήσιμα. Έτσι τελικά ο χρήστης λαμβάνει γρήγορα και εύκολα μόνο της ουσιώδη πληροφορία που θέλει. 1.4.2 Επιστήμη Αλγόριθμοι εξόρυξης δεδομένων χρησιμοποιούνται ευρέως σε εφαρμογές από διάφορους άλλους επιστημονικούς τομείς. Ένα αξιοσημείωτο παράδειγμα είναι το SKYCAT [6], ένα σύστημα εξόρυξης δεδομένων που αναλαμβάνει ανάλυση και κατηγοριοποίηση χωρικών αντικειμένων. Αυτό που είναι αξιοσημείωτο, είναι πως το SKYCAT εκτελεί αλγόριθμους για την ανίχνευση αντικειμένων από εικόνες. 1.4.3 Μάρκετινγκ Μια κατηγορία πολύ γνωστών εφαρμογών εξόρυξης δεδομένων είναι αυτές του μάρκετινγκ. Αυτό είναι αναμενόμενο μιας και μεγάλες εταιρίες χρησιμοποιούν μεγάλα συστήματα διαχείρισης δεδομένων για να διαχειρίζονται μεγάλο αριθμό πελατών και οικονομικών στοιχείων. Τα τελευταία χρόνια οι τάσεις του μάρκετινγκ ορίζουν μια πολιτική έρευνας των αναγκών των πελατών. Αναζητούν απαντήσεις σε ερωτήματα όπως, τι είναι αυτό που θέλουν οι πελάτες, ποιες είναι οι ανάγκες τους κ.α. Ο τομέας της εξόρυξης δεδομένων έχει συνεισφέρει σημαντικά σε αυτή την κατεύθυνση από την ανάλυση δεδομένων μια επιχείρησης και την εξαγωγή χρήσιμων συμπερασμάτων για την συμπεριφορά των πελατών. Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 23

Κεφάλαιο 1: Σφάλμα! Δεν έχει οριστεί στυλ. Ένας αρκετά γνωστός αλγόριθμος εξόρυξης δεδομένων είναι ο A-Priori [7]. Ο αλγόριθμος αυτός κάνει ανάλυση δεδομένων αγοράς, όπου υπάρχουν δεδομένα σχετικά με πελάτες ή αγορών σε καταστήματα. Ο A-Priori μπορεί αποδοτικά να δώσει συμπεράσματα όπως «κάθε πελάτης που αγοράζει βαμβακερά υφάσματα θα αγοράσει και μπίρα με μεγάλη πιθανότητα». Άλλα παραδείγματα εξόρυξης δεδομένων στο μάρκετινγκ είναι η ανάλυση της συμπεριφοράς των πελατών ηλεκτρονικών καταστημάτων χρησιμοποιώντας τα log αρχεία ή η πρόβλεψη εάν ένας πελάτης θα αγοράσει ένα συγκεκριμένο προϊόν χρησιμοποιώντας παρελθοντικές του κινήσεις. 1.4.4 Επένδυση Πολυάριθμες χρηματιστηριακές εταιρίες χρησιμοποιούν τεχνικές εξόρυξης δεδομένων έτσι ώστε να μπορούν να γνωρίζουν που να επενδύσουν. Στην πραγματικότητα μια μεγάλη μερίδα έρευνας στο τομέα εξόρυξης δεδομένων έχει γίνει έχοντας ως αφετηρία χρηματιστηριακές εφαρμογές. Μια άλλη χρήση των τεχνικών εξόρυξης δεδομένων είναι οι εφαρμογές εξόρυξης δεδομένων από κείμενα. Για παράδειγμα αλγόριθμοι που εξάγουν χρήσιμη πληροφορία από μη δομημένα κείμενα, έτσι ώστε να προβλεφθούν οι τάσεις σε μετοχές [8]. 1.4.5 Πρόληψη και Ασφάλεια Η εξόρυξη δεδομένων έχει με επιτυχία εφαρμοστεί και στην πρόληψη και αποφυγή διάφορων τύπων απάτης. Από την αναγνώριση κακόβουλων ενεργειών σε συναλλαγές κάποιος μπορεί να αντιληφθεί συναλλαγές που μπορεί να σχετίζονται με οικονομικές παρανομίες ή άλλου είδους απάτες. Ένα παράδειγμα συστήματος είναι το FAIS [9]. Ωστόσο τα τελευταία χρόνια, όπως βλέπουμε και ακούμε, υπάρχει μια τάση για πρόληψη σε κακόβουλες ενέργειες. Οι κινήσεις μας σε δημόσιους χώρους καταγράφεται όπως και αυτές που έχουν να κάνουν με τον παγκόσμιο ιστό. Για παράδειγμα μια πρόσφατη εφαρμογή μπορούσε να αναγνωρίζει ανώμαλα πρότυπα χρησιμοποιώντας κανόνες σε δεδομένα νοσοκομείων έτσι ώστε να αναγνωρίζει, σε πραγματικό χρόνο, εμφάνιση ασθενειών. 1.5 Αλγόριθμοι εξόρυξης δεδομένων Οι αλγόριθμοι εξόρυξης δεδομένων είναι πολλοί και σε αυτή την ενότητα θα παρουσιαστούν σε κατηγορίες οι πιο σημαντικοί από αυτούς. Οι κατηγορίες στις οποίες θα τους συναντήσουμε είναι οι παρακάτω: Κατηγοριοποίηση Συσταδοποίηση Κανόνες Συσχέτισης Πρότυπα Ακολουθιών 24 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης Παλινδρόμηση Δέντρα Απόφασης Οι παραπάνω κατηγορίες χωρίς αμφιβολία αναπαριστούν όλη την περιοχή των αλγορίθμων που χρησιμοποιούνται στον τομέα αυτό. Τα τελευταία χρόνια η ερευνητική κοινότητα δίνει πολύ βάση στη βελτίωση υπαρχόντων τεχνικών και δημιουργία νέων για να αντιμετωπιστούν τα προβλήματα που τείθονται σε αυτές τις κατηγορίες που θα αναλύσουμε παρακάτω. 1.5.1 Κατηγοριοποίηση Η κατηγοριοποίηση (classification) αποτελεί μια από τις βασικές εργασίες (tasks) εξόρυξης δεδομένων. Βασίζεται στην εξέταση των χαρακτηριστικών ενός νέου αντικειμένου το οποίο με βάση τα χαρακτηριστικά αυτά αντιστοιχίζεται σε ένα προκαθορισμένο σύνολο κλάσεων. Τα αντικείμενα που πρόκειται να κατηγοριοποιηθούν αναπαριστάνονται γενικά από τις εγγραφές της βάσης δεδομένων και η διαδικασία της κατηγοριοποίησης αποτελείται από την ανάθεση κάθε εγγραφής σε κάποιες από τις προκαθορισμένες κατηγορίες. Η εργασία της κατηγοριοποίησης χαρακτηρίζεται από έναν καλά καθορισμένο ορισμό των κατηγοριών και το σύνολο που χρησιμοποιείται για την εκπαίδευση του μοντέλου αποτελείται από προκατηγοριοποιημένα παραδείγματα. Η βασική εργασία είναι να δημιουργηθεί ένα μοντέλο το οποίο θα μπορούσε να εφαρμοστεί για να κατηγοριοποιήσει δεδομένα που δεν έχουν ακόμα κατηγοριοποιηθεί (να ανατεθεί σε κάποια από τις κατηγορίες). Στις περισσότερες περιπτώσεις, υπάρχει ένα περιορισμένος αριθμός κατηγοριών και εμείς θα πρέπει να αναθέσουμε κάθε εγγραφή στην κατάλληλη κατηγορία. Για αυτό το σκοπό χρησιμοποιούνται κάποιες τεχνικές, τις οποίες μπορούμε να κατατάξουμε σε δύο κατηγορίες. Η πρώτη χρησιμοποιεί δέντρα απόφασης (decision trees) και η δεύτερη νευρωνικά δίκτυα (neural networks). 1.5.2 Συσταδοποίηση Η συσταδοποίηση (clustering) είναι η εργασία του καταμερισμού ενός ετερογενούς πληθυσμού σε ένα σύνολο περισσότερων ετερογενών συστάδων (clusters). Αυτό που διαφοροποιεί τη συσταδοποίηση από την κατηγοριοποίηση είναι ότι η συσταδοποίηση δε βασίζεται σε προκαθορισμένες κατηγορίες. Στην κατηγοριοποίηση, ο πληθυσμός διαιρείται σε κατηγορίες αναθέτοντας κάθε στοιχείο ή εγγραφή σε μια προκαθορισμένη κατηγορία με βάση ένα μοντέλο που αναπτύσσεται μέσω της εκπαίδευσης του με παραδείγματα που έχουν κατηγοριοποιηθεί εκ των προτέρων. Όπως και στην κατηγοριοποίηση έτσι και στη συσταδοποίηση υπάρχουν πολλές εφαρμογές. Για παράδειγμα, ας θεωρήσουμε πως έχουμε διαθέσιμα τα δεδομένα πελατών μιας εταιρίας πωλήσεων. Χρησιμοποιώντας τεχνικές συσταδοποίησης, μπορούμε να βρούμε τον καταμερισμό των πελατών και της αγοράς, π.χ. μπορούμε Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 25

Κεφάλαιο 1: Σφάλμα! Δεν έχει οριστεί στυλ. να δούμε ποιοι πελάτες αγοράζουν για την οικογένεια τους και ποιοι για τον εαυτό τους ή ποιοι έχουν μεγάλο εισόδημα και ποιοι όχι. Περισσότερες πληροφορίες για αλγόριθμους συσταδοποίησης υπάρχουν στο [10]. 1.5.3 Κανόνες Συσχέτισης Η εξαγωγή κανόνων συσχέτισης (association rules) θεωρείται μια από τις σημαντικότερες διεργασίες εξόρυξης δεδομένων. Έχει προσελκύσει μεγάλο ενδιαφέρον γιατί παρέχουν έναν συνοπτικό τρόπο για να εκφραστούν οι ενδεχομένως χρήσιμες πληροφορίες που γίνονται εύκολα κατανοητές από τους τελικούς χρήστες. Οι κανόνες συσχέτισης ανακαλύπτουν κρυμμένες «συσχετίσεις» μεταξύ των γνωρισμάτων ενός συνόλου των δεδομένων. Αυτοί οι συσχετισμοί παρουσιάζονται στην ακόλουθη μορφή Α Β όπου το Α και το Β αναφέρονται στα σύνολα γνωρισμάτων που υπάρχουν στα υπό ανάλυση δεδομένα. 1.5.4 Πρότυπα Ακολουθιών Η εξόρυξη πρότυπων ακολουθιών (sequential patterns) είναι η εξόρυξη των συχνά εμφανιζόμενων προτύπων σχετικών με το χρόνο ή άλλες ακολουθίες. Οι περισσότερες μελέτες στα πρότυπα ακολουθιών επικεντρώνονται στα συμβολικά πρότυπα. Ο χρήστης εδώ μπορεί να προσδιορίσει τους περιορισμούς στα είδη των προτύπων ακολουθιών που εξάγονται με την παροχή των προσχεδίων προτύπων (template patterns) υπό μορφή σειριακών επεισοδίων, παράλληλων επεισοδίων ή κανονικών εκφράσεων. Παραδείγματα προτύπων ακολουθιών έχουμε στην καθημερινή μας ζωή όπως τα κείμενα, οι μουσικές νότες, τα δεδομένα του καιρού και οι ακολουθίες του DNA. 1.5.5 Παλινδρόμηση Η παλινδρόμηση (regression) είναι θέμα το οποίο έχει μελετηθεί πολύ στην στατιστική και στα νευρωνικά δίκτυα. Κύριος σκοπός εδώ είναι η πρόβλεψη της τιμής μιας μεταβλητής μελετώντας τις τιμές που είχε στο παρελθόν. Συνήθως χρησιμοποιούμε ένα μοντέλο για την μεταβλητή. Η παλινδρόμηση καλύπτει ένα μεγάλο τμήμα του τομέα της εξόρυξης δεδομένων που έχει να κάνει με προβλέψεις. Ένα χαρακτηριστικό παράδειγμα αλγορίθμου παλινδρόμησης για εξόρυξη δεδομένων είναι ο [11]. 1.5.6 Δέντρα Απόφασης Τα δέντρα απόφασης (decision trees) έχουν μελετηθεί αρκετά σαν ένα ζήτημα μηχανικής μάθησης. Για να γίνει κατανοητό, ας υποθέσουμε ότι έχουμε ένα σύνολο εγγραφών και καθεμία από αυτές έχει μια λίστα χαρακτηριστικών. Ένα δέντρο απόφασης στο σύνολο των εγγραφών είναι ένα δέντρο όπου σε κάθε κόμβο του (που δεν είναι φύλλο) υπάρχει ένα ερώτημα που αναφέρεται στα χαρακτηριστικά των εγγραφών και κάθε ερώτημα καταλήγει σε ένα συγκεκριμένο παιδί ενός κόμβου. Τα φύλλα του δηλώνουν τις κλάσεις. Έτσι ένα δέντρο απόφασης εκτελεί κατηγοριοποίηση χρησιμοποιώντας ερωτήματα σχετικά με τα χαρακτηριστικά των 26 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης εγγραφών. Οι εφαρμογές που χρησιμοποιούν δέντρα απόφασης είναι παρόμοιες με αυτές που κάνουν κατηγοριοποίηση. Μια γενική επισκόπηση υπάρχει στο [12]. 1.6 Συμπεράσματα Η πρόοδος στην τεχνολογία βάσεων δεδομένων μας έχει οδηγήσει στην παροχή των βασικών εργαλείων και των μεθόδων για την αποδοτική συλλογή δεδομένων, αποθήκευση και αναζήτηση των συνόλων δεδομένων. Ο τομέας τη εξόρυξης δεδομένων συνδυάζει τομείς όπως βάσεις δεδομένων, αποθήκες δεδομένων, αναγνώριση προτύπων, μηχανική μάθηση, στατιστική και ανάκτηση πληροφορίας. Πλήθος μεθόδων έχουν προταθεί για να ικανοποιήσουν τις απαιτήσεις των διαφορετικών εφαρμογών. Στο επόμενο κεφάλαιο θα γίνει παρουσίαση μιας υποκατηγορίας εξόρυξης γνώσης όπου τα δεδομένα προς ανάλυση δεν είναι γενικά αλλά προέρχονται από τον παγκόσμιο ιστό. Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 27

Νικόλαος Τσιράκης 2 ΕΞΟΡΥΞΗ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ 2.1 Εισαγωγή Από τα πιο ενδιαφέροντα ερευνητικά πεδία του γενικού τομέα εξόρυξης δεδομένων είναι η εξόρυξη δεδομένων στον παγκόσμιο ιστό. Όπως είναι γνωστό το να υπολογίσουμε το ακριβές μέγεθος δεδομένων του παγκόσμιου ιστού είναι αδύνατο. Το έτος 2006 έχει υπολογιστεί πως υπάρχουν περίπου 96,854,877 σελίδες με ρυθμό αύξησης τεσσάρων περίπου εκατομμυρίων σελίδων το μήνα [13]. Η δημοφιλής μηχανή αναζήτησης Yahoo ανακοίνωσε πρόσφατα μέσα από την σελίδα της [14] πως έχει στο ευρετήριο της περίπου 20 εκατομμύρια αντικείμενα από τα οποία τα 19 εκατομμύρια είναι δεδομένων κειμένου. Ο παγκόσμιος ιστός μπορεί να θεωρηθεί ως η μεγαλύτερη βάση δεδομένων που είναι ανοικτή και διαθέσιμη σε κάθε χρήστη και καθημερινά αντιμετωπίζει τις προκλήσεις τόσο σε θέματα παρουσίασης όσο και ποιότητας δεδομένων. Ο όρος βάση δεδομένων εδώ χρησιμοποιείται κάπως θεωρητικά μιας και στην πραγματικότητα δεν υπάρχει πρακτικά δομή ή σχήμα στον παγκόσμιο ιστό. Αυτό κάνει ακόμα πιο επιτακτική την ανάγκη για εξόρυξη δεδομένων στον παγκόσμιο ιστό παρέχοντας τεράστια βοήθεια σε κάθε είδους χρήστη. Με τον όρο εξόρυξη γνώσης στον παγκόσμιο ιστό δεν αναφερόμαστε μόνο σε δεδομένα που περιέχονται σε ιστοσελίδες αλλά και σε δεδομένα που έχουν να κάνουν με τη δραστηριότητα ενός χρήστη σε αυτό. Τα δεδομένα διαδικτύου μπορούν να χωριστούν στις ακόλουθες κατηγορίες: Περιεχόμενο ιστοσελίδων. Ενδοπληροφορία ιστοσελίδων (HTML/XML κώδικας). Εσωτερική δομή ιστοσελίδων, δηλαδή των πως διασυνδέονται μεταξύ τους. Δεδομένα χρήσης που περιγράφουν πως οι επισκέπτες προσπελαύνουν τις ιστοσελίδες. Προφίλ χρηστών που περιλαμβάνουν δημογραφικά δεδομένα και πληροφορίες εγγραφών (εδώ περιέχονται και πληροφορίες από cookies αρχεία). 2.2 Γενικά Οι εργασίες στο τομέα της εξόρυξης γνώσης στον παγκόσμιο ιστό μπορούν να χωριστούν σε διάφορες κλάσεις. Η εικόνα που ακολουθεί δείχνει μια ταξινόμηση των δραστηριοτήτων του τομέα αυτού [15]. Θα αναλύσουμε τις τρεις βασικές κατηγορίες για να γίνει περισσότερο κατανοητή η έννοια της εξόρυξης δεδομένων στον παγκόσμιο ιστό. Στο Σχήμα 1 δίνεται μια ανάλυση της εξόρυξης γνώσης από τον παγκόσμιο ιστό [15]. Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 29

Ευχαριστίες Σχήμα 1: Ταξινόμηση του τομέα εξόρυξης δεδομένων Διαδικτύου 2.2.1 Web Content Mining Το web content mining, εξετάζει τα περιεχόμενα των ιστοσελίδων καθώς και τα αποτελέσματα αναζητήσεων. Το περιεχόμενο αυτό μπορεί να περιέχει τόσο κείμενο όσο και γραφικά. Οι προκλήσεις αυτού του τομέα της εξόρυξης δεδομένων είναι πολλές μιας και το μέγεθος των ιστοσελίδων είναι απροσδιόριστα μεγάλο και η δομή τους δεν είναι ομοιόμορφη. Επίσης υπάρχει πληθώρα κειμένων σε πολλαπλές εκδόσεις καθώς και λανθασμένη και ατελής πληροφορία. Αυτό κάνει ακόμα πιο επιτακτική την ανάγκη για χρήση τεχνικών ώστε τα αποτελέσματα από αναζητήσεις να είναι ορθό και ακριβές. Εκτός από αυτό, υπάρχει ένα τμήμα του διαδικτύου γνωστό και ως «βαθύς ιστός (deep web)» το οποίο δεν μπορεί εύκολα να ευρετηριοποιηθεί από μηχανές αναζήτησης. Ο «βαθύς ιστός» περιέχει βάσεις δεδομένων, βιβλιοθήκες, γενετικά δεδομένα και ευρετήρια. Μεγάλο μέρος του «βαθύ ιστού» είναι δομημένο ή ημι-δομημένο και έτσι είναι ευκολότερο να αναλυθεί και να ενοποιηθεί, το δύσκολο είναι να βρεθούν τεχνικές να ευρετηριοποιηθεί. Το web content mining χωρίζεται επιμέρους στο web page content mining και στο search result mining. Το πρώτο είναι η παραδοσιακή αναζήτηση ιστοσελίδων σύμφωνα με το περιεχόμενο τους, ενώ το δεύτερο είναι περαιτέρω αναζήτηση σε ιστοσελίδες που είναι αποτέλεσμα προηγούμενης αναζήτησης. 2.2.2 Web Structure Mining Το web structure mining, είναι ο ερευνητικός τομέας που εστιάζει στη χρήση της ανάλυσης της δομής των συνδέσμων του διαδικτύου, και ένας βασικός σκοπός του είναι η ανακάλυψη των πιο προτιμητέων κειμένων. Ο παγκόσμιος ιστός θεωρείται σαν ένας κατευθυνόμενος γράφος όπου οι ιστοσελίδες είναι οι κόμβοι του και οι σύνδεσμοι είναι οι πλευρές που τους ενώνουν. Η βασική ιδέα εδώ είναι πως ένας υπερσύνδεσμος από ένα κείμενο Α σε ένα κείμενο Β υποδηλώνει πως ο συγγραφέας του κειμένου Α θεωρεί το περιεχόμενο του κειμένου Β αξιοσημείωτο. Οι 30 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης υπερσύνδεσμοι χρησιμοποιούνται ευρέως στις μηχανές αναζήτησης για να αναγνωρίσουν σχέσεις συσχέτισης μεταξύ κειμένων, να ομαδοποιήσουν κείμενα ανάλογα τη σημαντικότητα τους και τελευταία για να βρουν κοινότητες στον παγκόσμιο ιστό από τις παραπομπές ή την μη ύπαρξη παραπομπών. 2.2.3 Web Usage Mining Στο web usage mining γνωστό και ως web log mining, γίνεται επεξεργασία των log αρχείων σχετικά με τις προσβάσεις χρηστών στις διάφορες ιστοσελίδες. Με τη βοήθεια τεχνικών αυτού του τομέα γίνεται κατανοητή η συμπεριφορά ενός χρήστη αλλά και η δομή της πληροφορίας. Τα δεδομένα των click-stream, τα cookies, τα ερωτήματα των χρηστών, και κάθε είδους δεδομένα σχετικά με τα αποτελέσματα της αλληλεπίδρασης μεταξύ ανθρώπου και διαδικτύου χρησιμοποιούνται επίσης για να τονιστούν οι ανάγκες των πελατών και να βελτιωθεί η ποιότητα των υπηρεσιών τους. Το general access pattern tracking είναι ένας τύπος του web usage mining ο οποίος εξετάζει στο ιστορικό επισκέψεων των ιστοσελίδων. Αυτή η χρήση (usage) μπορεί να είναι γενική ή μπορεί να στοχεύει σε συγκεκριμένη χρήση ή χρήστες. Επίσης αναγνωρίζοντας τα πρότυπα της κίνησης, το usage mining γίνεται εξόρυξη αυτών ακολουθιακών προτύπων (sequential patterns). Για παράδειγμα τα πρότυπα μπορούν να συσταδοποιηθούν βάση των ομοιοτήτων τους. Αυτό στη συνέχεια μπορεί να χρησιμοποιηθεί ώστε να γίνει συσταδοποίηση των χρηστών σε ομάδες βασιζόμενοι σε ομοιότητες των προσβάσεων τους σε ιστοσελίδες. Τέλος ένας άλλος τύπος του web usage mining είναι το customized usage tracking το οποίο αναλύει μεμονωμένες τάσεις έτσι ώστε οι ιστοσελίδες να προσδίδονται σε συγκεκριμένους χρήστες. Βασιζόμενοι σε πρότυπα προσβάσεων, μια ιστοσελίδα μπορεί δυναμικά να τροποποιηθεί για ένα χρήστη όσον αφορά την πληροφορία που παρουσιάζει, το βάθος της δομής του και τη μορφή των πηγών που παρουσιάζονται. Πολύ σημαντικό είναι και το πρόβλημα της εξαγωγής κοινοτήτων διαδικτύου πραγματικού χρόνου (online web communities). Μια κοινότητα στον παγκόσμιο ιστό είναι μια ομάδα σελίδων που έχουν κάποιο κοινό αντικείμενο (π.χ. σελίδες που γράφουν για αθλητικά). Τελικός σκοπός της παρούσας εργασίας είναι η παρουσίαση ενός μοντέλου για την ομαδοποίηση χρηστών και κοινοτήτων βάση χαρακτηριστικών ομοιότητας με τεχνικές συσταδοποίησης. Εξαιτίας της ποικιλίας των θεμάτων που υπάρχουν στον παγκόσμιο ιστό, το πρόβλημα της εξαγωγής κοινοτήτων έχει γίνει πολύ σημαντικό και δύσκολο. Έτσι με τη δημιουργία προτύπων χρηστών μπορούμε να βρούμε μεγάλα υποσύνολα σελίδων από συγκεκριμένες κοινότητες. Ιδιαίτερο ενδιαφέρον στον τομέα του web mining παρουσιάζει ο τομέας του web usage mining ή αλλιώς web log mining και του web usage mining. Τα τελευταία χρόνια έχουν υλοποιηθεί πολλές εφαρμογές και αλγόριθμοι για την εξαγωγή συμπερασμάτων από δεδομένα διαδικτύου. Ο παγκόσμιος ιστός είναι μια απέραντη πηγή δεδομένων που προέρχονται είτε από το περιεχόμενο διαδικτύου (web content), δηλαδή τα δισεκατομμύρια σελίδων που είναι διαθέσιμες, είτε από τη χρήση διαδικτύου (web usage), δηλαδή από τα log αρχεία δεδομένων που συλλέγονται καθημερινά από τους διακομιστές. O τομέας του web mining είναι η Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 31

Ευχαριστίες περιοχή της εξόρυξης δεδομένων η οποία έχει να κάνει με την εξαγωγή ενδιαφέρουσας γνώσης από τον παγκόσμιο ιστό. Η έρευνα στην συγκεκριμένη περιοχή παρουσιάζει μεγάλη άνθιση με πολλές δημοσιευμένες εργασίες σε παγκόσμια συνέδρια. 2.3 Στάδια διαδικασίας Μία διαδικασία εξόρυξης γνώσης από δεδομένα παγκόσμιου ιστού, όπως και κάθε διαδικασία εξόρυξης γνώσης από δεδομένα, αποτελείται από τα εξής τέσσερα διαδοχικά στάδια: Συλλογή δεδομένων, προεπεξεργασία δεδομένων, ανακάλυψη προτύπων και εκμετάλλευση της γνώσης. 2.3.1 Συλλογή δεδομένων Τα δεδομένα χρήσης που είναι απαραίτητα για τη διαδικασία μπορούν να συλλεχθούν από διάφορες πηγές. Οι εφαρμογές στον τομέα του web usage mining βασίζονται σε δεδομένα που συλλέγονται από 3 βασικές πηγές: 2.3.1.1 Διακομιστές διαδικτύου Οι διακομιστές διαδικτύου είναι η πιο μεγάλη πηγή δεδομένων. Μπορούν να συλλέξουν μεγάλους όγκους δεδομένων στα log αρχεία τους και στις βάσεις δεδομένων τους. Αυτά τα αρχεία συνήθως περιέχουν βασικές πληροφορίες όπως το όνομα, την IP διεύθυνση, ημερομηνία και ο χρόνος που έγινε το αίτημα. Αυτή η πληροφορία συνήθως αναπαρίσταται σε κάποια προκαθορισμένη μορφή: common log format [16], extended log format [17], logml [16]. Σε μερικές περιπτώσεις χρησιμοποιούνται βάσεις δεδομένων αντί για αρχεία για την αποθήκευση όλων αυτών των πληροφοριών έτσι ώστε να μπορούν να εφαρμοστούν πιο αποδοτικά ερωτήματα πάνω στα δεδομένα [18][19]. Το σημαντικότερο ζήτημα κατά την χρήση των δεδομένων από τα log αρχεία των διακομιστών είναι η αναγνώριση των συνόδων των χρηστών (π.χ. πως να ομαδοποιήσεις όλα τα αιτήματα για ιστοσελίδες (ή click streams) από τους χρήστες για την εύρεση των μονοπατιών που διέσχισε ο χρήστης κατά την περιήγησή του σε μια ιστοσελίδα). Αυτή η εργασία είναι πολλές φορές δύσκολη και δαπανηρή τόσο σε χρόνο όσο και σε χώρο και εξαρτάται πολύ στον τύπο της πληροφορίας που ένας διακομιστής μπορεί να φυλάξει. Η πιο κοινά χρησιμοποιούμενη τεχνική είναι η χρήση των cookies για την καταγραφή των ακολουθιών των αιτημάτων για ιστοσελίδες. Εάν τα cookies δεν είναι διαθέσιμα, υπάρχουν πολλές ευρετικές μέθοδοι (heuristics methods) [20] που μπορούν να εφαρμοστούν για την εύρεση των συνόδων κάθε χρήστη. Ωστόσο ακόμα και αν χρησιμοποιηθούν τα cookies, είναι μερικές φορές αδύνατο να γίνουν γνωστές οι ακριβείς κινήσεις των χρηστών σε μια ιστοσελίδα μιας και η προς τα πίσω κίνηση ενός χρήστη (back) δεν καταγράφεται στο διακομιστή [21]. Εκτός από τα log αρχεία, η συμπεριφορά του χρήστη μπορεί να καταγραφεί επίσης από την πλευρά του διακομιστή από τα πακέτα TCP/IP. Ακόμα και σε αυτή την 32 Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό

Νικόλαος Τσιράκης περίπτωση η αναγνώριση των χρηστών είναι ένα θέμα, αλλά η χρήση των πακέτων παρέχει πολλά πλεονεκτήματα [22]. Συγκεκριμένα 1) τα δεδομένα συλλέγονται σε πραγματικό χρόνο, 2)πληροφορίες που προέρχονται από διαφορετικούς διακομιστές μπορούν να ενωθούν σε κοινά αρχεία και 3)η χρήση ειδικών κουμπιών όπως αυτού της προς τα πίσω περιήγησης (back) μπορούν να ανιχνευθούν. Παρά τα πλεονεκτήματα η μέθοδος αυτή χρησιμοποιείται πολύ σπάνια στην πράξη γιατί σε διακομιστές με μεγάλη κίνηση παρουσιάζονται προβλήματα κλιμάκωσης [22] και πληροφορίες που είναι κρυπτογραφημένες δεν είναι δυνατόν να αναγνωριστούν. Η πιο καλή μέθοδος για την καταγραφή της χρησιμοποίησης διαδικτύου είναι η απευθείας πρόσβαση στα δεδομένα του διακομιστή όπως στο [23]. Δυστυχώς αυτό δεν είναι πάντα εφικτό. 2.3.1.2 Διακομιστές μεσολάβησης Πολλοί πάροχοι υπηρεσιών διαδικτύου (ISPs) δίνουν στους πελάτες τους δυνατότητες χρήσης υπηρεσιών proxy διακομιστών μεσολάβησης (proxy servers) για τη βελτίωση της ταχύτητας περιήγησης με τη χρήση κρυφής μνήμης. Γενικά η συλλογή δεδομένων περιήγησης στον διακομιστή είναι ίδια με αυτή που γίνεται σε οποιοδήποτε διακομιστή διαδικτύου. Η μόνη διαφορά σε αυτή την περίπτωση είναι πως στο proxy διακομιστή συλλέγονται δεδομένα από ομάδες χρηστών που έχουν πρόσβαση σε τεράστιες ομάδες από διακομιστές διαδικτύου. Ακόμα και σε αυτή την περίπτωση, η ανακατασκευή των συνόδων (sessions) είναι δύσκολη και δεν είναι δυνατή η ανίχνευση όλων των μονοπατιών που έχουν κάνει οι χρήστες. Ωστόσο, όταν δεν υπάρχει άλλη μέθοδος χρήσης προσωρινής μνήμης μεταξύ των χρηστών και proxy διακομιστή, η αναγνώριση των συνόδων των χρηστών είναι πιο εύκολη. 2.3.1.3 Χρήστες διαδικτύου Τα δεδομένα χρήσης μπορούν να καταγραφούν επίσης και από την πλευρά του χρήστη χρησιμοποιώντας Javascript γλώσσα ή Java Applets [24]. Αυτές οι τεχνικές αποφεύγουν τα προβλήματα αναγνώρισης των συνόδων των χρηστών και τα προβλήματα που προκαλούνται από τη χρήση κρυφής μνήμης (όπως η χρήση του κουμπιού «back»). Επίσης, παρέχουν αναλυτικές πληροφορίες για την συμπεριφορά των χρηστών [21]. Ωστόσο, αυτές οι προσεγγίσεις βασίζονται πολύ στη συνεργασία του χρήστη και προκύπτουν πολλά ζητήματα σχετικά με νόμους ιδιωτικότητας. 2.3.2 Προεπεξεργασία δεδομένων Η προεπεξεργασία των δεδομένων παίζει σπουδαίο ρόλο στον τομέα του web usage mining και τις εφαρμογές του. Ειδικά η προεπεξεργασία των web log δεδομένων είναι συνήθως πολύπλοκη και απαιτεί πολύ χρόνο. Αποτελείται από τέσσερα διαφορετικά βήματα: 2.3.2.1 Καθαρισμός δεδομένων Αυτό το βήμα αποτελείται από την διαγραφή όλων των δεδομένων από τα web log που δεν είναι χρήσιμα για τους σκοπούς της ανάλυσης [25][26]. Για παράδειγμα τα αιτήματα για αρχεία εικόνας και άλλων αρχείων που περιέχονται σε σελίδες αλλά και Αλγόριθμοι και Τεχνικές Εξόρυξης Δεδομένων από Ροές Δεδομένων στον Παγκόσμιο Ιστό 33