Εξόρυξη Δεδομένων Χρήσης για Συστήματα Συστάσεων Mining Usage Data for Recommender Systems

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Εξόρυξη Δεδομένων Χρήσης για Συστήματα Συστάσεων Mining Usage Data for Recommender Systems"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ «ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΔΙΟΙΚΗΣΗ» ΤΜΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Εξόρυξη Δεδομένων Χρήσης για Συστήματα Συστάσεων Mining Usage Data for Recommender Systems Διπλωματική Εργασία της Γκουτζιούρη Στυλιανής (ΑΕΜ: 367) Εξεταστική Επιτροπή Επιβλέπων: Συμεωνίδης Παναγιώτης Μέλη: Βλαχάβας Ιωάννης Κουσενίδης Δημήτριος ΘΕΣΣΑΛΟΝΙΚΗ ΜΑΡΤΙΟΣ i-

2 -ii-

3 Πρόλογος Στα πλαίσια του Διατμηματικού Προγράμματος Μεταπτυχιακών Σπουδών «Πληροφορική και Διοίκηση» του Αριστοτελείου Πανεπιστημίου Θεσσαλονίκης, πραγματοποιήθηκε η εκπόνηση αυτής της Διπλωματικής Εργασίας. Σκοπός της είναι η εξόρυξη δεδομένων χρήσης για τα σύνολα δεδομένων που αφορούν κινηματογραφικές ταινίες, με εφαρμογή μεθόδων επεξεργασίας δεδομένων, αλγορίθμων Δέντρων Απόφασης, Χρονοσειρών και Κανόνων Συσχέτισης στο περιβάλλον του SQL Server 2008 R2. Κύριος στόχος αυτής της εργασίας είναι η εφαρμογή διαφόρων αλγορίθμων στα σύνολα δεδομένων, η παρουσίαση των αποτελεσμάτων τους στα περιβάλλοντα Business Intelligence και Management Studio στον MS SQL Server, καθώς και η σύγκριση τους ως προς την επίτευξη καλύτερων αποτελεσμάτων. Με την ολοκλήρωση της παρούσας Διπλωματικής Εργασίας θα ήθελα να ευχαριστήσω θερμά τον επιβλέποντα καθηγητή μου κ. Συμεωνίδη Παναγιώτη, αρχικά για την εμπιστοσύνη που μου έδειξε αναθέτοντας μου αυτή τη Διπλωματική Εργασία και επιπλέον, να τον ευχαριστήσω για τη συνεργασία μας και την απέραντη κατανόηση που έδειξε. Τέλος, θα επιθυμούσα να ευχαριστήσω ιδιαίτερα τους γονείς και την αδελφή μου που με στήριξαν με την αμέριστη συμπαράσταση και υποστήριξή τους καθ όλη τη διάρκεια εκπόνησης της Διπλωματικής Εργασίας. Επίσης, θα ήθελα να ευχαριστήσω τους φίλους μου για την ψυχολογική τους υποστήριξη. Γκουτζιούρη Στυλιανή Μάρτιος

4 -4-

5 Περιεχόμενα ΠΡΟΛΟΓΟΣ... 3 ΠΕΡΙΕΧΟΜΕΝΑ... 5 ΠΙΝΑΚΑΣ ΕΙΚΟΝΩΝ... 9 ΕΙΣΑΓΩΓΗ RECOMMENDER SYSTEMS ΠΑΡΟΥΣΙΑ ΤΩΝ RECOMMENDER SYSTEMS ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΤΑ ΔΕΔΟΜΕΝΑ ΤΩΝ RECOMMENDER SYSTEMS ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑ ΤΩΝ RECOMMENDER SYSTEMS ΤΟ ΜΟΝΤΕΛΟ ΕΝΟΣ RECOMMENDER SYSTEM Δομή Πίνακα Χρηστών Αντικειμένων Το Φαινόμενο της Μακριάς Ουράς ΕΙΔΗ ΤΩΝ RECOMMENDER SYSTEMS Συστήματα με Βάση το Περιεχόμενο (Content-Based Filtering Recommender Systems) Συστήματα με Συνεργατικό Φιλτράρισμα (Collaborative Filtering Based Recommender Systems) Υβριδικά Συστήματα (Hybrid Recommender Systems) ΠΡΟΔΙΑΓΡΑΦΕΣ ΕΝΟΣ RECOMMENDER SYSTEM MOVIES RATING PREDICTION BASED ON TIME SERIES MODEL O ΑΛΓΟΡΙΘΜΟΣ TIME SERIES Το Περιεχόμενο του Μοντέλου Time Series Αυτοπαλινδρόμηση Περιοδικότητα Πρόβλεψη Οι Παράμετροι του Αλγορίθμου Time Series

6 2.2 ΕΦΑΡΜΟΓΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ TIME SERIES ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ MOVIELENS Δημιουργία Μοντέλων του Αλγορίθμου Time Series Πρόβλεψη Αξιολόγηση MOVIES RECOMMENDATION BASED ON DECISION TREES MODEL Ο ΑΛΓΟΡΙΘΜΟΣ DECISION TREES Βασικές Έννοιες της Ανάπτυξης των Δέντρων Επιλογή Χαρακτηριστικών Ανάλυση Συσχετίσεων με τον Αλγόριθμο Decision Trees Οι Παράμετροι του Αλγορίθμου Decision Trees ΕΦΑΡΜΟΓΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ DECISION TREES ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ MOVIECLICK Δημιουργία Μοντέλου του Αλγορίθμου Decision Trees Πρόβλεψη Αξιολόγηση ΕΦΑΡΜΟΓΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ DECISION TREES ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ MOVIELENS Δημιουργία Μοντέλου του Αλγορίθμου Decision Trees Πρόβλεψη Αξιολόγηση MOVIES RECOMMENDATION BASED ON ASSOCIATION RULES MODEL Ο ΑΛΓΟΡΙΘΜΟΣ ASSOCIATION RULES Εύρεση Συχνών Itemsets Πρόβλεψη Οι Παράμετροι του Αλγορίθμου Association Rules ΕΦΑΡΜΟΓΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ASSOCIATION RULES ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ MOVIECLICK Δημιουργία Μοντέλου του Αλγορίθμου Association Rules Πρόβλεψη Αξιολόγηση

7 4.3 ΕΦΑΡΜΟΓΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ASSOCIATION RULES ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ MOVIELENS Δημιουργία Μοντέλου του Αλγορίθμου Association Rules Πρόβλεψη Αξιολόγηση ΑΞΙΟΛΟΓΗΣΗ ΣΤΑΤΙΣΤΙΚΑ ΣΤΟΙΧΕΙΑ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ MOVIECLICK ΚΑΙ MOVIELENS Στατιστικά Στοιχεία Βάσης Δεδομένων MovieClick Στατιστικά Στοιχεία της Βάσης Δεδομένων MovieLens ΑΞΙΟΛΟΓΗΣΗ Μέθοδος Αξιολόγησης Μέτρα Απόδοσης Αξιολόγηση στη Βάση Δεδομένων MovieClick Αξιολόγηση στη Βάση Δεδομένων MovieLens ΣΥΜΠΕΡΑΣΜΑΤΑ ΒΙΒΛΙΟΓΡΑΦΙΑ ΠΑΡΑΡΤΗΜΑ A DATA MINING EXTENSIONS ΣΤΟΝ SQL Η Σύνταξη του Ερωτήματος στο DMX ΠΑΡΑΡΤΗΜΑ Β ΕΙΣΑΓΩΓΗ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Εισαγωγή Βάσεων Δεδομένων της MovieClick Εισαγωγή Βάσεων Δεδομένων της MovieLens ΠΑΡΑΡΤΗΜΑ Γ ΤΑ ΣΥΝΟΛΑ ΔΕΔΟΜΕΝΩΝ Η Βάση Δεδομένων MovieClick Η Βάση Δεδομένων MovieLens ΠΑΡΑΡΤΗΜΑ Δ ΔΗΜΙΟΥΡΓΙΑ ΜΟΝΤΕΛΩΝ Δημιουργία Μοντέλων του Αλγορίθμου Time Series

8 4.2.2 Δημιουργία Μοντέλων του Αλγορίθμου Decision Trees Δημιουργία Μοντέλων του Αλγορίθμου Association Rules ΑΠΟΘΗΚΕΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΤΩΝ ΠΡΟΒΛΕΨΕΩΝ ΕΡΩΤΗΜΑΤΑ ΓΙΑ ΤΗΝ ΑΞΙΟΛΟΓΗΣΗ

9 Πίνακας Εικόνων Εικόνα 1: Η διεπαφή χρήστη του δικτυακού τόπου Internet Movie Database (IMDb) Εικόνα 2: Βαθμολογίες στην ταινία Ημερολόγιο Εικόνα 3: Δομή Πίνακα Χρηστών - Αντικειμένων Εικόνα 4: Το Φαινόμενο της Μακριάς Ουράς Εικόνα 5: Βαθμολόγηση με «μου αρέσει/δεν μου αρέσει» στο κοινωνικό δίκτυο Facebook Εικόνα 6: Συμβολή των ARTxp και ARIMA αλγορίθμων στα αποτελέσματα πρόβλεψης Εικόνα 7: Οι παράμετροι του αλγορίθμου Time Series Εικόνα 8: Η γραφική παράσταση του μοντέλου Εικόνα 9: Δημιουργία πίνακα Rated Movies MO Εικόνα 10: Η γραφική παράσταση του μοντέλου Εικόνα 11: Αποτελέσματα προβλέψεων Εικόνα 12: Αποτελέσματα προβλέψεων Εικόνα 13: Συσχέτιση χρησιμοποιώντας το Decision Trees Εικόνα 14: Οι παράμετροι του αλγορίθμου Decision Trees Εικόνα 15: Το δέντρο απόφασης του μοντέλου Εικόνα 16: Η σχέση εξάρτησης μεταξύ των μεταβλητών Εικόνα 17: Αποτελέσματα προβλέψεων Εικόνα 18: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 19: Αποτελέσματα Lift Chart Εικόνα 20: Το δέντρο απόφασης του μοντέλου Εικόνα 21: Η σχέση εξάρτησης μεταξύ των μεταβλητών Εικόνα 22: Αποτελέσματα προβλέψεων Εικόνα 23: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 24: Τα δυο βήματα διαδικασίας του αλγορίθμου Association Rules Εικόνα 25: Εύρεση συχνών itemsets Εικόνα 26: Οι παράμετροι του αλγορίθμου Association Rules Εικόνα 27: Κανόνες συσχέτισης του μοντέλου Εικόνα 28: Τα itemsets του μοντέλου

10 Εικόνα 29: Η σχέση εξάρτησης μεταξύ των μεταβλητών Εικόνα 30: Αποτελέσματα προβλέψεων Εικόνα 31: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 32: Αποτελέσματα Lift Chart Εικόνα 33: Κανόνες συσχέτισης του μοντέλου Εικόνα 34: Τα itemsets του μοντέλου Εικόνα 35: Η σχέση εξάρτησης μεταξύ των μεταβλητών Εικόνα 36: Αποτελέσματα προβλέψεων Εικόνα 37: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 38: Αποτελέσματα Lift Chart Εικόνα 39: Το φύλο των πελατών Εικόνα 40: Η οικογενειακή κατάσταση των πελατών Εικόνα 41: Φύλο και οικογενειακή κατάσταση των πελατών Εικόνα 42: Ηλικία των πελατών Εικόνα 43: Μορφωτικό Επίπεδο των πελατών Εικόνα 44: Βαθμολογίες που παίρνει κάθε ταινία Εικόνα 45: Τα έτη που βαθμολογήθηκαν οι ταινίες Εικόνα 46: Χρονολογίες ταινιών Εικόνα 47: Ποια χρονιά οι χρήστες βαθμολογούσαν περισσότερο ταινίες Εικόνα 48: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees Εικόνα 49: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Association Rules Εικόνα 50: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules Εικόνα 51: Διάγραμμα F-measure Vs Top N λίστα προτεινόμενων ταινιών Εικόνα 52: Διάγραμμα F-measure Vs Training Set percentages Εικόνα 53: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees Εικόνα 54: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees Εικόνα 55: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules Εικόνα 56: Διάγραμμα F-measure Vs Top N λίστα προτεινόμενων ταινιών Εικόνα 57: Διάγραμμα F-measure Vs Training Set percentages

11 Εικόνα 58: Διάγραμμα F-measure Vs Years Εικόνα 59: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules Εικόνα 60: F-measure για τα 5 tops Εικόνα 61: Διάγραμμα F-measure Vs Training Set percentages Εικόνα 62: F-measure Vs Years Εικόνα 63: Επιλογή QL Server Business Intelligence Development Studio Εικόνα 64: Επιλογή Διακομιστή Εικόνα 65: Δημιουργία νέου Database Εικόνα 66: Συμπλήρωση αντικειμένων της βάσης Εικόνα 67: Εισαγωγή δεδομένων Εικόνα 68: Παράθυρο καλωσορίσματος του SQL Server Import and Export Wizard Εικόνα 69: Επιλογή αντικειμένων Εικόνα 70: Επιλογή τοποθεσίας εισαγωγής της βάσης Εικόνα 71: Τρόπος επιλογής δεδομένων Εικόνα 72: Επιλογή δεδομένων Εικόνα 73: Τρόπος εκτέλεσης Εικόνα 74: Ολοκλήρωση διαδικασίας Εικόνα 75: Εγκατάσταση πινάκων Εικόνα 76: Επιλογή αντικειμένων Εικόνα 77: Πίνακας Customers Εικόνα 78: Απόσπασμα από τις εγγραφές του πίνακα Customers Εικόνα 79: Πίνακας Movies και απόσπασμα από τις εγγραφές του πίνακα Movies Εικόνα 80: Η σχεσιακή βάση μεταξύ των πινάκων Customers και Movies Εικόνα 81: Πίνακας Movies Εικόνα 82: Απόσπασμα από τις εγγραφές του πίνακα Movies Εικόνα 83: Πίνακας RM και απόσπασμα από τις εγγραφές του πίνακα RM Εικόνα 84: Πίνακας RatedMovies MO και απόσπασμα από τις εγγραφές του πίνακα RatedMovies MO Εικόνα 85: Πίνακας RMall Εικόνα 86: Απόσπασμα από τις εγγραφές του πίνακα RMall Εικόνα 87: Πίνακας RM Εικόνα 88: Απόσπασμα από τις εγγραφές του πίνακα RM Εικόνα 89: Η σχεσιακή βάση μεταξύ των πινάκων RM και Movies Εικόνα 90: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested

12 Εικόνα 91: Επιλογή των πεδίων των πινάκων Εικόνα 92: Επιλογή παραμέτρων Εικόνα 93: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 94: Επιλογή των πεδίων των πινάκων Εικόνα 95: Επιλογή παραμέτρων Εικόνα 96: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 97: Αποτελέσματα προβλέψεων Εικόνα 98: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 99: Αποτελέσματα προβλέψεων Εικόνα 100: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 101: Επιλογή των πεδίων των πινάκων Εικόνα 102: Επιλογή παραμέτρων Εικόνα 103: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 104: Αποτελέσματα προβλέψεων Εικόνα 105: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 106: Επιλογή των πεδίων των πινάκων Εικόνα 107: Επιλογή παραμέτρων Εικόνα 108: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 109: Αποτελέσματα προβλέψεων Εικόνα 110: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 111: Επιλογή των πεδίων των πινάκων Εικόνα 112: Επιλογή παραμέτρων Εικόνα 113: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 114: Αποτελέσματα προβλέψεων Εικόνα 115: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 116: Επιλογή των πεδίων των πινάκων Εικόνα 117: Επιλογή παραμέτρων Εικόνα 118: Δημιουργία ερωτήματος πρόβλεψης Εικόνα 119: Αποτελέσματα προβλέψεων Εικόνα 120: Αποθήκευση προβλέψεων Εικόνα 121: Δημιουργία πινάκων προβλέψεων Εικόνα 122: Δημιουργία πινάκων αξιολόγησης Εικόνα 123: Δημιουργία View Εικόνα 124: Δημιουργία View σύνδεσης πινάκων Εικόνα 125: Δημιουργία Stored Procedure

13 Εικόνα 126: Αποτελέσματα πίνακα αξιολόγησης

14 -14-

15 Εισαγωγή Με την πάροδο του χρόνου ο όγκος των πληροφοριών που μπορεί να βρει κανείς στο διαδίκτυο αυξάνεται κατακόρυφα. Οι χρήστες του διαδικτύου κατακλύζονται από προϊόντα και υπηρεσίες και αυτό καθιστά όλο και δυσκολότερη τη λήψη αποφάσεων σχετικά με το ποια από όλα τα διαθέσιμα προϊόντα (βιβλία, CD, ταινίες) είναι κατάλληλα για τις ανάγκες και τις προτιμήσεις τους. Γι αυτό το λόγο, στο πρόβλημα αυτό ως λύση εμφανίστηκαν τα Συστήματα Συστάσεων (Recommender Systems). Τα Συστήματα Συστάσεων είναι εργαλεία λογισμικού που δουλεύουν με συγκεκριμένους αλγορίθμους φιλτραρίσματος και επεξεργασίας πληροφοριών, με σκοπό να προτείνουν στον χρήστη προϊόντα που θα τον ενδιαφέρουν και θα τον βοηθήσουν να καταλήξει σε μια απόφαση. Η ανάπτυξη Συστημάτων Συστάσεων ξεκίνησε από μία απλή παρατήρηση: οι άνθρωποι συχνά στηρίζονται σε συστάσεις άλλων για συνηθισμένες, καθημερινές αποφάσεις, όπως για παράδειγμα στην σύσταση ενός φίλου για το ποιο βιβλίο να διαβάσουν ή στην αξιολόγηση ενός κριτικού κινηματογράφου στην εφημερίδα για το ποια ταινία να παρακολουθήσουν. Στη σημερινή εποχή, με την εξέλιξη του web 2.0, οι χρήστες πλέον έχουν τη δυνατότητα να συμμετέχουν στη δημοσίευση πληροφοριών, να μοιράζονται αρχεία, προτιμήσεις και γνώσεις με ανθρώπους από όλο τον κόσμο σε πλατφόρμες που είναι πλέον γνωστές ως Κοινωνικά Μέσα (Social Media). Συνεπώς, ένας χρήστης χωρίς μεγάλη εμπειρία που αδυνατεί να χειριστεί τον τεράστιο αριθμό επιλογών που έχει στη διάθεση του, στρέφεται προς τα Συστήματα Συστάσεων. Κοινωνικά Μέσα και δικτυακοί τόποι όπως τα YouTube, Netflix, Amazon, IMDb ή το itunes χρησιμοποιούν ευρέως τα Συστήματα Συστάσεων για να διευκολύνουν τους χρήστες στην εύρεση του αντικειμένου που τους ενδιαφέρει. Ειδικότερα, τα Συστήματα Συστάσεων χρησιμοποιούν χαρακτηριστικά, όπως το προφίλ του χρήστη, τα στοιχεία των προϊόντων ή το κοινωνικό περιβάλλον του χρήστη (φίλοι), για να προβλέψουν το βαθμό που ο χρήστης θα έδινε σ ένα προϊόν που δεν έχει -15-

16 βαθμολογήσει. Στόχος των συστημάτων αυτών είναι να βρουν στον χρήστη, όχι μόνο προϊόντα που θα τον ενδιαφέρουν καθότι είναι κοντά στις προτιμήσεις του, αλλά και προϊόντα που πιθανότατα δεν θα έβρισκε ποτέ μόνος του, γιατί δεν ανήκουν στο βασικό κύκλο ενδιαφερόντων του. Σκοπός αυτής της Διπλωματικής Εργασίας είναι η εξόρυξη δεδομένων χρήσης Συστημάτων Συστάσεων σε βάσεις δεδομένων για κινηματογραφικές ταινίες. Γίνεται προσπάθεια να κατανοηθούν το υπόβαθρο, ο τρόπος λειτουργίας και η χρησιμότητα Συστημάτων Συστάσεων. Αρχικά, στο πρώτο κεφάλαιο αναλύεται σε θεωρητικό επίπεδο ποια είναι η χρήση Συστημάτων Συστάσεων. Αναλυτικότερα, παρουσιάζονται τα Συστήματα Συστάσεων στο διαδίκτυο και πως αυτά προσφέρουν περισσότερες πωλήσεις στις εταιρείες. Αναλύονται τα δεδομένα που χρειάζονται για την εφαρμογή Συστημάτων Συστάσεων, ποιο είναι το μοντέλο ενός Συστήματος Συστάσεων, καθώς και ποια είναι τα είδη τους. Στα επόμενα τρία κεφάλαια, παρουσιάζονται οι πιο σημαντικοί αλγόριθμοι που χρησιμοποιούνται για τα Συστήματα Συστάσεων δίνοντας βάρος κυρίως, στα συστήματα που μπορούν να εφαρμοστούν στις βάσεις δεδομένων για ταινίες. Πιο συγκεκριμένα, στο δεύτερο κεφάλαιο, αναλύεται ο αλγόριθμος Time Series. Ο κύριος σκοπός του αλγορίθμου Time Series είναι να προβλέψει τα μελλοντικά χαρακτηριστικά των χρονοσειρών με βάση τα προηγούμενα στοιχεία. Ο αλγόριθμος έχει ρυθμιστεί να κάνει όσο το δυνατόν καλύτερη δουλειά με ελάχιστες πληροφορίες και τα δεδομένα που προκύπτουν, παρέχουν ακριβείς και ενημερωμένες προβλέψεις. Στη συνέχεια, γίνεται η πρακτική εφαρμογή του αλγορίθμου Time Series στη βάση δεδομένων MovieLens, ώστε να συγκρίνει τις προβλέψεις που έκανε ο αλγόριθμος για το έτος 2012 με τα δίκτυα IMDb και Rotten Tomatoes. Στο τρίτο κεφάλαιο, αναλύεται ο αλγόριθμος Decision Trees όπου αναφέρεται η χρήση των δέντρων απόφασης, καθώς και οι βασικές έννοιες για το πώς αυτά λειτουργούν. Μελετώνται τα χαρακτηριστικά που χρειάζονται για τον αλγόριθμο Decision Trees και ποιοι είναι οι παράμετροι που μπορούν να τροποποιηθούν. Παρουσιάζεται ακόμη, η δημιουργία, η πρόβλεψη και η αξιολόγηση των μοντέλων του αλγορίθμου Decision Trees στις βάσεις δεδομένων MovieClick και MovieLens. Η δημιουργία των μοντέλων γίνεται με τη γλώσσα Data Mining Extensions (DMX) στον SQL. -16-

17 Επιπρόσθετα, στο τέταρτο κεφάλαιο, παρουσιάζεται ο αλγόριθμος Association Rules που παράγει συσχετίσεις μεταξύ αντικειμένων. Μελετώνται οι βασικές έννοιες που χρειάζεται να γνωρίζει κάποιος για τον αλγόριθμο. Παρουσιάζονται παράμετροι του αλγορίθμου Association Rules και πως αυτοί μπορούν να τροποποιηθούν. Ο αλγόριθμος Association Rules θεωρείται από τους σημαντικότερους αλγορίθμους για τα Συστήματα Συστάσεων. Ακόμη, έχουμε τη δημιουργία, την πρόβλεψη και την αξιολόγηση των μοντέλων του αλγορίθμου Association Rules στις βάσεις δεδομένων MovieClick και MovieLens. Η δημιουργία των μοντέλων γίνεται με τη γλώσσα Data Mining Extensions (DMX) στον SQL. Στο πέμπτο κεφάλαιο, γίνεται μια μικρή στατιστική ανάλυση των βάσεων δεδομένων της MovieClick και της MovieLens. Αναλύεται ο κάθε πίνακας των βάσεων δεδομένων που χρησιμοποιήθηκε στην παρούσα εργασία, ώστε να μπορέσουμε να αξιοποιήσουμε πιθανά χρήσιμα πεδία που υπάρχουν. Επίσης, γίνεται η αξιολόγηση των δυο πιο σημαντικών αλγορίθμων Decision Trees και Association Rules για τα Συστήματα Συστάσεων. Γίνονται κάποια πειράματα για τις βάσεις δεδομένων με σκοπό να διαπιστωθεί ποιος αλγόριθμος κάνει τις καλύτερες συστάσεις στους χρήστες. Η αξιολόγηση των μοντέλων που χρησιμοποιήθηκαν για τον κάθε αλγόριθμο γίνεται με τις μετρικές ακρίβεια (precision), ανάκληση (recall) και αρμονική μέση τιμή (Fmeasure). Στο έκτο κεφάλαιο, παρουσιάζονται τα συμπεράσματα από τη συνολική έρευνα και τα πειράματα που πραγματοποιήθηκαν σ όλη τη διάρκεια εκπόνησης της Διπλωματικής Εργασίας. Μετά την αξιολόγηση των πειραμάτων, διαπιστώνεται ποιος αλγόριθμος είναι ακριβέστερος και πιο αξιόπιστος για να κάνει συστάσεις ταινιών στους χρήστες. Αυτό που παρατηρείται είναι ότι παίζουν σημαντικό ρόλο τα δεδομένα που περιέχουν οι βάσεις δεδομένων. Τέλος, αναφέρονται τα οφέλη και οι προοπτικές του επιστημονικού πεδίου Συστημάτων Συστάσεων στο διαδίκτυο και πως αυτά προσφέρουν ένα προβάδισμα στους δικτυακούς τόπους που τα εφαρμόζουν. Στο παράρτημα, παρουσιάζονται, η διαδικασία δημιουργίας ενός μοντέλου στη γλώσσα Data Mining Extensions (DMX) στον SQL και δίνονται οδηγίες εναλλακτικής δημιουργίας των μοντέλων πρόβλεψης στον Business Intelligence Development Studio στον SQL. Τέλος, παρουσιάζονται τα βήματα που χρειάστηκε να γίνουν για να αξιολογηθεί ο κάθε αλγόριθμος. -17-

18 -18-

19 1 Recommender Systems Στο πρώτο κεφάλαιο αναλύεται σε θεωρητικό επίπεδο ποια είναι η χρήση Συστημάτων Συστάσεων. Αναλυτικότερα, παρουσιάζονται τα Συστήματα Συστάσεων στο διαδίκτυο και πως αυτά προσφέρουν περισσότερες πωλήσεις στις εταιρείες. Αναλύονται τα δεδομένα που χρειάζονται για την εφαρμογή Συστημάτων Συστάσεων, ποιο είναι το μοντέλο ενός Συστήματος Συστάσεων, καθώς και ποια είναι τα είδη τους. 1.1 Παρουσία των Recommender Systems στο Διαδίκτυο Η ραγδαία αύξηση του μεγέθους, αλλά και της ποικιλίας των πληροφοριών μέσω των μεγάλων δικτυακών τόπων την τελευταία δεκαετία καθιστά πλέον πολύ δύσκολη τη διαχείριση και την αφομοίωση τους από τους χρήστες. Επιπλέον, πολυάριθμες υπηρεσίες ηλεκτρονικού εμπορίου έχουν εισαχθεί στο διαδικτυακό χώρο, δυσχεραίνοντας τη δυνατότητα εύρεσης και επιλογής των προϊόντων. Η διαθεσιμότητα μιας τεράστιας ποικιλίας υπηρεσιών, αντί να ωφελεί τους χρήστες και να διευκολύνει τη λήψη αποφάσεων, αντιθέτως άρχισε να προκαλεί αποπροσανατολισμό και σύγχυση. Στην προσπάθεια της δημιουργίας πιο φιλικών προς τον χρήστη εφαρμογών και αντιμετώπισης του προβλήματος της «υπερφόρτωσης πληροφοριών (information overload)» δημιουργήθηκαν τα Συστήματα Συστάσεων (Recommender ή Recommendation Systems) [18]. Ένα τέτοιο σύστημα χειρίζεται το πρόβλημα αυτό παρουσιάζοντας στον χρήστη καινούρια προϊόντα που δεν έχει εξερευνήσει ο ίδιος, αλλά πιθανότατα τον ενδιαφέρουν. Τα Συστήματα Συστάσεων παράγουν συστάσεις στηριζόμενα σε δεδομένα των χρηστών και των προϊόντων, αλλά και σε γνώσεις από προηγούμενες συμπεριφορές των χρηστών. Τα δεδομένα και οι πληροφορίες που άμεσα (βαθμολογία ή κατάταξη προϊόντος βάσει κάποιας κλίμακας) ή έμμεσα (πλοήγηση σε συγκεκριμένη σελίδα προϊόντος δηλώνει έμμεσα ενδιαφέρον) παρέχει ο χρήστης, αποθηκεύονται στη βάση δεδομένων του συστήματος και χρησιμοποιούνται για τη δημιουργία συστάσεων στην επόμενη αλληλεπίδραση του χρήστη με το σύστημα, βελτιώνοντας την απόδοση της -19-

20 διαδικασίας προβλέψεων και εμπνέοντας έτσι την εμπιστοσύνη των χρηστών στο σύστημα. Οι χρήστες έχουν ανάγκη από ένα Σύστημα Συστάσεων, καθώς δεν έχουν την απαραίτητη γνώση για να πάρουν αποφάσεις ανεξάρτητα. Εφαρμογές Συστημάτων Συστάσεων υπάρχουν σε τομείς, όπως η ψυχαγωγία με συστάσεις για ταινίες, βίντεο, μουσική, εικόνες. Για παράδειγμα, στην εικόνα 1 παρουσιάζονται ταινίες που συστήνονται στους χρήστες από το δικτυακό τόπο Internet Movie Database (IMDb). Εικόνα 1: Η διεπαφή χρήστη του δικτυακού τόπου Internet Movie Database (IMDb) Πηγή: Τα Συστήματα Συστάσεων ευνοούν τόσο τους υπεύθυνους παροχής ηλεκτρονικών υπηρεσιών όσο και τους χρήστες των υπηρεσιών αυτών. Τα άτομα που παρέχουν υπηρεσίες και προϊόντα ηλεκτρονικά μέσω του διαδικτύου έχουν πολλά πλεονεκτήματα από την αξιοποίηση ενός τέτοιου συστήματος με βασικότερο την αύξηση των πωλήσεων των προϊόντων τους. Αυτό οφείλεται στο γεγονός ότι οι συστάσεις του συστήματος ταιριάζουν με τις ανάγκες και τα ενδιαφέροντα του χρήστη που είναι πιθανό να αγοράσει. Το χαρακτηριστικό αυτό των Συστημάτων Συστάσεων είναι ότι συμβάλει στην ικανοποίηση του χρήστη, καθώς οι ενδιαφέρουσες συστάσεις βελτιώνουν την εμπειρία του και στην αύξηση της εμπιστοσύνης του στο σύστημα. -20-

21 Επίσης, μία λειτουργία που καθιστά πετυχημένο ένα Σύστημα Συστάσεων είναι η δυνατότητα του να προτείνει στον χρήστη προϊόντα που θα δυσκολευόταν να βρει από μόνος του, όπως για παράδειγμα, δεν ανήκουν στη λίστα με τα πιο δημοφιλή προϊόντα. Η λειτουργία αυτή του συστήματος ευνοεί τους παρόχους, καθώς οι πωλήσεις τους δεν περιορίζονται σε συγκεκριμένες υπηρεσίες. Όπως αναφέραμε προηγουμένως, ο χρήστης δηλώνει είτε άμεσα είτε έμμεσα τις προτιμήσεις και τα ενδιαφέροντά του. Με αυτόν τον τρόπο, ο πωλητής ηλεκτρονικών προϊόντων μπορεί να καταλάβει τι αρέσει στον χρήστη και να χρησιμοποιήσει αυτήν την πληροφορία στις αποφάσεις του σχετικά με την παραγωγή, προσφέροντας έτσι ικανοποίηση στον χρήστη και αυξάνοντας τις πιθανότητες να επισκεφθεί και πάλι την σελίδα του. Η αξιοποίηση Συστημάτων Συστάσεων δημιουργεί μια σειρά πλεονεκτημάτων και για τους ίδιους τους χρήστες. Τα διάφορα είδη Συστημάτων Συστάσεων ή και πολλοί τρόποι συνδυασμού αυτών, συνεισφέρουν σε διάφορες λειτουργίες Συστημάτων Συστάσεων που ευνοούν τους χρήστες, όπως οι παρακάτω: η εύρεση χρήσιμων προϊόντων, η υπόδειξη των προϊόντων εκείνων από τη λίστα συστάσεων που θα ενδιαφέρουν περισσότερο από τα υπόλοιπα τον χρήστη. Ακόμη, τα Συστήματα Συστάσεων βοηθούν τον χρήστη να αποκτήσει άποψη για την αποτελεσματικότητά των συστημάτων και κατ επέκταση να αποφασίσει αν θα εμπιστευτεί το σύστημα ή όχι, μέσω της βαθμολογίας του στις διάφορες υπηρεσίες, να βοηθήσει άλλους χρήστες που ενδιαφέρονται για κάποιες από τις υπηρεσίες αυτές ή να ικανοποιηθεί μόνο και μόνο από τη δήλωση των βαθμολογιών του, δηλαδή από τη δημόσια έκφραση της άποψης του. Η υλοποίηση πετυχημένων Συστημάτων Συστάσεων έχει προσφέρει ανταγωνιστικότητα σε πολλά ηλεκτρονικά καταστήματα και δικτυακούς τόπους γενικότερα. Μερικοί γνωστοί δικτυακοί τόποι που χρησιμοποιούν τα Συστήματα Συστάσεων για να παράγουν εξατομικευμένο περιεχόμενο είναι η Amazon και το IMDb. Η πρώτη είναι ένα ηλεκτρονικό κατάστημα για πώληση αγαθών, ενώ η δεύτερη μία δικτυακή βάση ταινιών. Στην Amazon, όταν ο χρήστης επιλέγει ένα συγκεκριμένο προϊόν, κάτω από αυτά εμφανίζονται πεδία με συστάσεις της μορφής: Πελάτες που αγόρασαν αυτό το προϊόν, αγόρασαν επίσης... Πελάτες που είδαν αυτό το προϊόν, αγόρασαν επίσης... Προϊόντα σχετικά με αυτό το προϊόν -21-

22 Σχετικά προϊόντα από άλλες ιστοσελίδες Στο IMDb, όταν ο χρήστης κοιτάει πληροφορίες για μία ταινία, μπορεί να δει συστάσεις της μορφής: Αν σας άρεσε αυτή η ταινία, η βάση μας σας προτείνει 1.2 Τα δεδομένα των Recommender Systems Για να υποστηρίζει τις λειτουργίες που αναφέρονται παραπάνω, τα Συστήματα Συστάσεων δέχονται ως δεδομένα εισόδου τα χαρακτηριστικά των αντικειμένων και τα προφίλ των χρηστών. Τα χαρακτηριστικά των αντικειμένων αποτελούν όλα τα δεδομένα που περιγράφουν ένα αντικείμενο στον χρήστη. Αν για παράδειγμα έχουμε μια εφαρμογή ηλεκτρονικού εμπορίου, τα χαρακτηριστικά ενός εμπορεύματος είναι όλα όσα εμφανίζονται στον χρήστη, όπως το είδος (cd, βιβλία, παπούτσια κ.α), η εταιρεία κατασκευής, η τιμή και ότι άλλο θέλουμε να του γνωστοποιηθεί. Τα προφίλ των χρηστών αποτελούνται από ότι πληροφορίες μπορούμε να συλλέξουμε γι αυτόν. Δημογραφικά χαρακτηριστικά όπως ηλικία, επάγγελμα, οικογενειακή κατάσταση, το ιστορικό του από την χρήση του συστήματος και αν είναι δυνατόν το ιστορικό του από τη χρήση άλλων συστημάτων. Το ιστορικό του χρήστη περιέχει δεδομένα που δηλώνουν άμεσα ή έμμεσα τις προτιμήσεις και συνήθως, είναι αποθηκευμένα σε αρχεία ημερολογίου (log files) [17]. Οι άμεσες προτιμήσεις δηλώνονται με αριθμητικές τιμές, όπως οι βαθμολογίες (ratings), με αποτελέσματα συγκρίσεων ή με σημασιολογικά δεδομένα (semantic information), όπως οι ετικέτες. Οι βαθμολογίες εκφράζουν τη γνώμη του χρήστη σχετικά με τα στοιχεία. Οι βαθμολογίες παρέχονται κανονικά από τον χρήστη και ακολουθούν μια συγκεκριμένη αριθμητική κλίμακα (π.χ. 1 κακό και 5 άριστα). Ένα κοινό σύστημα αξιολόγησης είναι η δυαδική βαθμολογία συστήματος, το οποίο επιτρέπει μόνο αξιολογήσεις είτε 0 ή 1 [29]. Οι βαθμολογίες μπορούν επίσης, να συγκεντρωθούν από τις επισκέψεις υπερσύνδεσης, τις συνήθειες πλοήγησης ή άλλου τύπου μοντέλων πρόσβασης σε πληροφορίες, όπως εμφανίζεται στην εικόνα 2. Πιο συγκεκριμένα, στην εικόνα 2, η ταινία Ημερολόγιο έχει βαθμολογηθεί με 7.9 από χρήστες και έχει κριτικές από 1037 χρήστες. -22-

23 Εικόνα 2: Βαθμολογίες στην ταινία Ημερολόγιο Πηγή: Οι έμμεσες προτιμήσεις δηλώνονται μέσω των «κινήσεων» που έκανε ο χρήστης στο παρελθόν. Όσο χρησιμοποιούσε το σύστημα καταγράφονται τα αντικείμενα που επέλεξε, τι αγόρασε, πού μετακίνησε το δείκτη του ποντικιού και γενικότερα ότι επιλογές μπορούσε να πραγματοποιήσει μέσω της παρεχόμενης διεπαφής που του προσφέρεται. Σκοπός είναι από τα έμμεσα δεδομένα να γίνει εξαγωγή κάποιας αριθμητικής τιμής. 1.3 Αποτελεσματικότητα των Recommender Systems Η αποτελεσματικότητα ενός συστήματος συστάσεων εξαρτάται από διάφορους παράγοντες [29]: Τρόπος αξιολόγησης αντικειμένων από τους χρήστες. Η αξιολόγηση ενός αντικειμένου μπορεί να γίνεται με άμεσο τρόπο, δηλαδή να ζητείται από τον χρήστη να το αξιολογήσει σε μία κλίμακα (π.χ. από 1 10), ή έμμεσα, θεωρώντας ότι ο χρήστης ενδιαφέρεται για ένα αντικείμενο αν επέλεξε να το δει. Ο πρώτος τρόπος δίνει πιο αξιόπιστες κρίσεις για τα αντικείμενα σε σχέση με τον δεύτερο, αλλά απαιτεί περισσότερο κόπο, κάτι που αποτελεί ανασταλτικό παράγοντα για τον χρήστη. Χαρακτηριστικά των αντικειμένων. Ανάλογα με τις εφαρμογές στις οποίες χρησιμοποιείται ένα Σύστημα Συστάσεων, ενδέχεται να υπάρχουν διαφόρων ειδών χαρακτηριστικά που περιγράφουν τα αντικείμενα και χρησιμεύουν στην εξαγωγή των συστάσεων. Για παράδειγμα, όταν τα αντικείμενα μας είναι ταινίες, τα χαρακτηριστικά μπορεί να είναι οι ηθοποιοί, ο σκηνοθέτης, το είδος -23-

24 της ταινίας, ο προϋπολογισμός της κ.α. Αντίστοιχα, όταν τα αντικείμενα είναι κινητά τηλέφωνα, τα χαρακτηριστικά τους είναι η οθόνη, η κάμερα, η μπαταρία κ.α. Οι αλγόριθμοι συστάσεων κατηγοριοποιούνται συνοπτικά ως εξής: - Ομοιότητα των προς σύσταση αντικειμένων με παλαιότερα αντικείμενα για τα οποία έχει ενδιαφερθεί ή αξιολογήσει ο χρήστης (Content-Based Recommender Systems). - Ομοιότητα των ενδιαφερόντων ή αξιολογήσεων μεταξύ μιας ομάδας χρηστών (Collaborative Filtering Recommender Systems). - Συνδυασμός των παραπάνω μεθόδων (Hybrid Recommender Systems). 1.4 Το Μοντέλο ενός Recommender System Το μοντέλο ενός Συστήματος Συστάσεων βασίζεται σε μια δομή πίνακα χρηστών - αντικειμένων. Ακόμη, παρουσιάζεται το πως η μακριά ουρά επηρεάζει τα Συστήματα Συστάσεων Δομή Πίνακα Χρηστών Αντικειμένων Στην εφαρμογή Συστημάτων Συστάσεων υπάρχουν δύο κατηγορίες οντοτήτων, οι χρήστες (users) και τα αντικείμενα (items). Οι χρήστες έχουν προτίμηση σε ορισμένα είδη, και αυτή η προτίμηση πρέπει να εμφανίζεται στα δεδομένα. Τα ίδια τα δεδομένα αντιπροσωπεύουν τη δομή πίνακα χρηστών αντικειμένων, δίνοντας για κάθε ζεύγος χρήστη αντικείμενο, μια τιμή που αντιπροσωπεύει ότι είναι γνωστό σχετικά με το βαθμό της προτίμησης του χρήστη για αυτό το αντικείμενο [21]. Οι αξίες προέρχονται από ένα διατεταγμένο σύνολο, π.χ., ακέραιοι αριθμοί 1-5 που αντιπροσωπεύουν τον αριθμό των αστεριών που ο χρήστης έδωσε ως βαθμολογία για αυτό το αντικείμενο. Υποθέτουμε ότι η δομή πίνακα χρηστών αντικειμένων είναι αραιή, πράγμα που σημαίνει ότι οι περισσότερες εγγραφές είναι «άγνωστες». Μια άγνωστη βαθμολογία συνεπάγεται ότι δεν έχουμε σαφείς πληροφορίες σχετικά με τις προτιμήσεις του χρήστη για το είδος. Στην εικόνα 3 βλέπουμε ένα παράδειγμα μιας δομής πίνακα χρηστών αντικειμένων, που εκπροσωπεί τις βαθμολογίες των ταινιών των χρηστών σε μια κλίμακα 1-5, με 5 την υψηλότερη βαθμολογία. Τα κενά αντιπροσωπεύουν την κατάσταση, όπου ο χρήστης δεν έχει αξιολογήσει την ταινία. Τα ονόματα των ταινιών -24-

25 είναι HP1, HP2 και HP3 για τον Harry Potter I, II και III, το TW για το Twilight, SW1, SW2, και SW3 για το Star Wars επεισόδια 1, 2, και 3. Με Α έως D εκπροσωπούνται οι χρήστες. Εικόνα 3: Δομή Πίνακα Χρηστών - Αντικειμένων Πηγή: Mining of Massive Datasets [21] Παρατηρείται ότι τα περισσότερα ζεύγη χρήστες ταινιών έχουν κενά, δηλαδή ο χρήστης δεν έχει βαθμολογήσει την ταινία. Στην πράξη, η δομή πίνακα χρηστών ταινιών θα είναι ακόμα πιο αραιή, με την τυπική αξιολόγηση του χρήστη να είναι μόνο ένα μικρό κλάσμα όλων των διαθέσιμων ταινιών. Ο στόχος ενός Συστήματος Συστάσεων είναι να προβλέψει τα κενά στη δομή πίνακα χρηστών αντικειμένων. Για παράδειγμα, στον χρήστη A θα αρέσει το SW2; Δεν υπάρχουν επαρκή στοιχεία στη μήτρα στην εικόνα 1. Θα μπορούσαμε να σχεδιάσουμε ένα Σύστημα Συστάσεων για να λαμβάνει υπόψη τις ιδιότητες των ταινιών, όπως παραγωγός, σκηνοθέτης, τα αστέρια τους ή ακόμη και την ομοιότητα των ονομάτων τους. Πιο συγκεκριμένα, θα μπορούσαμε να παρατηρήσουμε την ομοιότητα μεταξύ SW1 και SW2 και στη συνέχεια, να καταλήξουμε στο συμπέρασμα ότι στον χρήστη Α δεν άρεσε SW1, που ήταν απίθανο να του αρέσει το SW Το Φαινόμενο της Μακριάς Ουράς Υπάρχουν δυο είδη καταστημάτων, τα φυσικά καταστήματα που έχουν περιορισμένο χώρο και δείχνουν στον πελάτη μόνο ένα μικρό μέρος του συνόλου των επιλογών που υπάρχουν και τα on-line καταστήματα που παρουσιάζουν ότι υπάρχει στη διάθεση του πελάτη. Έτσι, ένα φυσικό βιβλιοπωλείο μπορεί να έχει αρκετές χιλιάδες βιβλία στα ράφια του, αλλά η Amazon προσφέρει εκατομμύρια βιβλία. Η σύσταση στο φυσικό κατάστημα είναι αρκετά απλή. Δεν είναι δυνατόν να προσαρμοστεί το κατάστημα για κάθε πελάτη. Τυπικά, ένα βιβλιοπωλείο θα εμφανίσει μόνο τα βιβλία που είναι πιο δημοφιλή. Η διάκριση μεταξύ των φυσικών και on-line καταστημάτων έχει οδηγήσει στο φαινόμενο της μακριάς ουράς (long tail) και απεικονίζεται στην εικόνα 4 [21]. Ο -25-

26 κατακόρυφος άξονας αντιπροσωπεύει τη δημοτικότητα (δηλαδή, πόσες φορές ένα αντικείμενο θα επιλεγεί). Η διάταξη των αντικειμένων είναι στον οριζόντιο άξονα ανάλογα με τη δημοτικότητα τους. Τα φυσικά καταστήματα παρέχουν μόνο τα πιο δημοφιλή αντικείμενα στα αριστερά της κατακόρυφης γραμμής, ενώ τα αντίστοιχα online καταστήματα παρέχουν όλο το φάσμα των ειδών. Εικόνα 4: Το Φαινόμενο της Μακριάς Ουράς Πηγή: Mining of Massive Datasets [21] 1.5 Είδη των Recommender Systems Υπάρχουν αρκετοί διαφορετικοί τύποι Συστημάτων Συστάσεων. Η ποικιλία αυτή οφείλεται στους τομείς στους οποίους τα συστήματα απευθύνονται, στη γνώση και στην πληροφορία που χρησιμοποιούν, στον τρόπο που οι συστάσεις συγκεντρώνονται και παρουσιάζονται στον χρήστη και τέλος, στους διαφορετικούς αλγορίθμους που εφαρμόζονται για την παραγωγή των συστάσεων. Παρακάτω, αναφέρονται οι βασικές κατηγορίες προσέγγισης Συστημάτων Συστάσεων Συστήματα με Βάση το Περιεχόμενο (Content-Based Filtering Recommender Systems) Τα Συστήματα με Βάση το Περιεχόμενο βασίζονται σε πληροφορίες σχετικές με τα χαρακτηριστικά και τα προϊόντα που πρόκειται να συστηθούν και πιο συγκεκριμένα συστήνουν προϊόντα όμοια με εκείνα που ο χρήστης είχε προτιμήσει στο παρελθόν. Ένα τέτοιο σύστημα μοντελοποιεί ένα προφίλ για τον χρήστη με βάση τις ιδιότητες των αντικειμένων που έχει παλαιότερα βαθμολογήσει ο χρήστης και στη συνέχεια, συνδυάζει τα χαρακτηριστικά που είναι αποθηκευμένα στο προφίλ αυτό (προτιμήσεις, ενδιαφέροντα) με τα χαρακτηριστικά του περιεχομένου που αντιστοιχούν στο προϊόν, προτείνοντας τελικά προϊόντα ενδιαφέροντα για τον χρήστη. -26-

27 Ο πράκτορας διατηρεί πληροφορίες σχετικά με τις προτιμήσεις των χρηστών, είτε από την αρχική είσοδο για τα συμφέροντα του χρήστη κατά τη διάρκεια της διαδικασίας εγγραφής είτε από τα έγγραφα αξιολόγησης [19]. Οι συστάσεις που σχηματίζονται λαμβάνουν υπόψη το περιεχόμενο και το φιλτράρισμα των εγγράφων, ώστε να συστηθούν τα προϊόντα που ταιριάζουν καλύτερα στις προτιμήσεις και το προφίλ του χρήστη. Το προφίλ αυτό ενημερώνεται αυτόματα ως απάντηση σε νέα σχόλια ή βαθμολογήσεις του χρήστη και αν διαμορφωθεί σωστά και αντικατοπτρίζει τα πραγματικά του ενδιαφέροντα, τότε το Σύστημα Συστάσεων θα δουλεύει αποδοτικά. Τα Συστήματα Συστάσεων με βάση το Περιεχόμενο χρησιμοποιούνται σε ένα μεγάλο εύρος τομέων, όπως μουσική, βίντεο, προϊόντα, συζητήσεις κ.α. Το Pandora Radio είναι ένα δημοφιλές παράδειγμα με βάση το περιεχόμενο του Συστήματος Συστάσεων που παίζει μουσική με χαρακτηριστικά παρόμοια με εκείνα ενός τραγουδιού που αρέσουν στον χρήστη. Πιο συγκεκριμένα, το Pandora Radio χρησιμοποιεί τα χαρακτηριστικά ενός τραγουδιού ή του καλλιτέχνη, προκειμένου να δημιουργήσει ένα σταθμό που παίζει μουσική με παρόμοια χαρακτηριστικά. Τα σχόλια των χρηστών χρησιμοποιούνται, για να βελτιώσουν τα αποτελέσματα του σταθμού. Αυτό τονίζεται, όταν ένας χρήστης λέει ότι «δεν μου αρέσει» ένα συγκεκριμένο τραγούδι ή όταν ένας χρήστης λέει «μου αρέσει» αυτό το τραγούδι [34]. Υπάρχει επίσης, ένας μεγάλος αριθμός με βάση το περιεχόμενο των Συστημάτων Συστάσεων με στόχο την παροχή συστάσεων ταινιών. Μερικά τέτοια παραδείγματα είναι το Rotten Tomatoes, το Internet Movie Database (IMDb), το Jinni Συστήματα με Συνεργατικό Φιλτράρισμα (Collaborative Filtering Based Recommender Systems) Τα Συστήματα με Συνεργατικό Φιλτράρισμα είναι η διαδικασία φιλτραρίσματος και αξιολόγησης προϊόντων μέσω της γνώμης άλλων ανθρώπων του δικτύου. Ο όρος Συνεργατικό Φιλτράρισμα προέκυψε μόλις τη τελευταία δεκαετία, όμως οι ρίζες της έννοιας αυτής ανήκουν σε μια διαδικασία που κάνουν οι άνθρωποι εδώ και αιώνες και μοιράζονται μεταξύ τους τις γνώμες τους. Πρόκειται για μια μέθοδο που στηρίζεται όχι μόνο στις παλαιότερες βαθμολογήσεις του χρήστη αντικειμένου, αλλά και σε εκείνες των άλλων χρηστών του συστήματος, για να παράγει αυτόματα προβλέψεις για το ενδιαφέρον του χρήστη αντικειμένου για τα προϊόντα του συστήματος [23]. -27-

28 Η κεντρική ιδέα είναι ότι η βαθμολόγηση ενός χρήστη u για ένα προϊόν i που δεν έχει δει, θα είναι όμοια με τη βαθμολόγηση που έδωσε στο προϊόν ένας άλλος χρήστης του συστήματος n, δεδομένου ότι οι χρήστες u και n έχουν βαθμολογήσει άλλα προϊόντα του συστήματος με παρόμοιο τρόπο. Με το ίδιο σκεπτικό, ο χρήστης u πιθανότατα θα δώσει παρόμοια βαθμολογία για δυο προϊόντα i και j αν οι άλλοι χρήστες του συστήματος έχουν δώσει παρόμοιες βαθμολογίες στα δυο αυτά προϊόντα. Οι μέθοδοι Συνεργατικού Φιλτραρίσματος παράγουν εξατομικευμένες συστάσεις προϊόντων στον χρήστη από τις αλληλεπιδράσεις του με το σύστημα και τις βαθμολογίες του, χωρίς να απαιτούνται εξωγενείς πληροφορίες, ούτε για τον χρήστη, ούτε για τα προϊόντα, όπως περιεχόμενο ή περιγραφές. Ένα βασικό πλεονέκτημα της συνεργατικής προσέγγισης φιλτραρίσματος είναι ότι δεν βασίζεται στη μηχανή ανάλυσης του περιεχομένου, αλλά είναι σε θέση να συστήσει με ακρίβεια τα αντικείμενα, όπως ταινίες, χωρίς να απαιτείται η κατανόηση του στο ίδιο το αντικείμενο. Οι βαθμολογήσεις που χρησιμοποιούν τα Συστήματα Συνεργατικού Φιλτραρίσματος μπορεί να έχουν διάφορες μορφές. Μια μορφή είναι η βαθμωτή βαθμολογία που αποτελείται, είτε από αριθμητικά δεδομένα, όπως η βαθμολόγηση με 1 5 αστέρια, όπως γίνεται στη MovieLens ή η βαθμολογία τάξεως, όπως οι επιλογές «συμφωνώ απόλυτα, συμφωνώ, είμαι ουδέτερος, διαφωνώ, διαφωνώ απόλυτα». Ένα άλλο είδος «απάντησης» των χρηστών στα προϊόντα είναι το μοντέλο δυαδικής βαθμολογίας, δηλαδή «μου αρέσει/δεν μου αρέσει» ή «συμφωνώ/διαφωνώ», όπως παρουσιάζεται στην εικόνα 5 στο κοινωνικό δίκτυο Facebook. Εικόνα 5: Βαθμολόγηση με «μου αρέσει/δεν μου αρέσει» στο κοινωνικό δίκτυο Facebook Πηγή:

29 Τέλος, υπάρχουν και οι μοναδιαίες αξιολογήσεις, οι οποίες μπορούν να υποδηλώσουν αν ο χρήστης έχει παρατηρήσει, βαθμολογήσει θετικά ή αγοράσει κάποιο προϊόν. Η έλλειψη βαθμολογίας δείχνει ότι δεν υπάρχει πληροφορία σχετικά με τη γνώμη του χρήστη για το προϊόν Υβριδικά Συστήματα (Hybrid Recommender Systems) Η κατηγορία αυτή συστημάτων χρησιμοποιεί ένα συνδυασμό των μεθόδων που αναφέραμε παραπάνω, εκμεταλλευόμενα τα προτερήματα της μιας τεχνικής, για να καλύψουν τα μειονεκτήματα της άλλης. Υπάρχουν πολλοί διαφορετικοί τρόποι με τους οποίους συνδυάζονται δύο ή και περισσότερες τεχνικές Συστημάτων Συστάσεων, για να δημιουργηθεί ένα Υβριδικό Σύστημα. Στόχος του συνδυασμού διαφορετικών μεθόδων είναι η βελτίωση της απόδοσης τους [6]. Τα Υβριδικά Συστήματα μπορούν να εφαρμοστούν με διάφορους τρόπους, όπως με βάση το περιεχόμενο και τη συνεργασία, με βάση τις προβλέψεις χωριστά και στη συνέχεια με συνδυασμό και των δύο μεθόδων. Αρκετές μελέτες οι οποίες συγκρίνουν εμπειρικά την απόδοση του Υβριδικού Συστήματος με τα Συστήματα με βάση το Περιεχόμενο και τα Συστήματα με Συνεργατικό Φιλτράρισμα ξεχωριστά, αποδεικνύουν ότι οι υβριδικές μέθοδοι μπορούν να παρέχουν πιο ακριβείς συστάσεις από το κάθε σύστημα ξεχωριστά. Αυτές οι μέθοδοι μπορούν επίσης, να χρησιμοποιηθούν, για να ξεπεραστούν μερικά από τα κοινά προβλήματα των συστημάτων συστάσεων, όπως των ελάχιστων αναφορών. Κάποια παραδείγματα Υβριδικών Συστημάτων είναι το Netflix και το See This Next. Κάνουν συστάσεις συγκρίνοντας την παρακολούθηση και την αναζήτηση συνηθειών παρόμοιων χρηστών (Συστήματα με Συνεργατικό Φιλτράρισμα), καθώς και με την παροχή ταινιών οι οποίες έχουν κοινά χαρακτηριστικά με ταινίες που ένας χρήστης έχει βάλει υψηλή βαθμολογία (Συστήματα με Βάση το Περιεχόμενο) [34]. 1.6 Προδιαγραφές ενός Recommender System Οι βασικές λειτουργίες που πρέπει να υλοποιεί κάθε σύστημα παραγωγής συστάσεων είναι η επιλογή των n καταλληλότερων αντικειμένων, ο υπολογισμός ομοιότητας ανάμεσα στα αντικείμενα και η πρόβλεψη της προτίμησης του κάθε χρήστη με το κάθε αντικείμενο. -29-

30 Επιλογή των n καταλληλότερων αντικειμένων (top N list items) Η βασική λειτουργία ενός Συστήματος Συστάσεων είναι να μπορέσει από μια μεγάλη λίστα αντικειμένων να επιλέξει τα n σημαντικότερα που πρέπει να προβάλλει. Συνήθως, τα συστήματα πρέπει να υπολογίζουν πολλές τέτοιες λίστες αντικειμένων για: κάθε χρήστη του συστήματος, χωρίς στοιχεία εξατομίκευσης, δηλαδή χωρίς να υπολογίζει τι αρέσει προσωπικά στον χρήστη, κάθε ομάδα χρηστών με κοινά δημογραφικά χαρακτηριστικά, τον εκάστοτε χρήστη εξατομικευμένα και σύμφωνα με τις πρόσφατες επιλογές του και σύμφωνα με τον εκάστοτε χρήστη εξατομικευμένα και σύμφωνα με τις μακροχρόνιες συνήθειες του. Υπολογισμός ομοιότητας αντικειμένων Με τη συνεχή εισαγωγή νέων αντικειμένων, για να μπορεί ένα σύστημα να επιλέξει ποια από αυτά είναι τα καταλληλότερα προς σύσταση, πρέπει να μπορεί να βρει πόσο μοιάζουν με τα αντικείμενα που αρέσουν στους χρήστες. Επίσης, πρέπει να μπορεί να ομαδοποιεί αντικείμενα που παρουσιάζουν κοινό ενδιαφέρον (π.χ. πωλούνται συχνά μαζί). Για να μπορεί λοιπόν, ένα σύστημα να κάνει καλές συστάσεις, πρέπει με κάποιο τρόπο να συγκρίνει ομοιότητα είτε βάσει των χαρακτηριστικών των αντικειμένων είτε βάσει του ενδιαφέροντος που παρουσιάζουν προς τους χρήστες. Πρόβλεψη προτιμήσεων Για να είναι επιτυχημένη μία λίστα προτεινόμενων αντικειμένων θα πρέπει να απαρτίζεται από αντικείμενα που εκτιμούμε ότι θα αρέσουν στον χρήστη. Άρα πρέπει να εκτιμηθεί το πόσο θα του άρεσε ή πως θα βαθμολογούσε ένα αντικείμενο για το οποίο δεν έχει εκφραστεί ρητή/άμεση προτίμηση. Ο στόχος των Συστημάτων Συστάσεων είναι να δημιουργήσει συστάσεις σχετικά με τα νέα στοιχεία ή να προβλέψει τη χρησιμότητα του συγκεκριμένου αντικειμένου για έναν συγκεκριμένο χρήστη. -30-

31 2 Movies Rating Prediction Based on Time Series Model Στο κεφάλαιο αυτό θα γίνει περιγραφή και ανάλυση του αλγορίθμου Time Series μέσα από διάφορα σενάρια που ισχύουν για τα προβλήματα ενός επιχειρηματικού μοντέλου, ώστε να μπορέσει να εφαρμοστεί στα Συστήματα Συστάσεων. Θα αναπτυχθούν τα μοντέλα για τον αλγόριθμο Time Series στο σύνολο δεδομένων MovieLens, επειδή το σύνολο δεδομένων MovieClick δεν περιέχουν κάποια κατάλληλη μεταβλητή για τον αλγόριθμο Time Series. Στη συνέχεια, θα γίνει η δημιουργία των μοντέλων του αλγόριθμου Time Series στη βάση δεδομένων MovieLens και έπειτα, η πρόβλεψη των μοντέλων του αλγορίθμου Time Series. Εκτός από την πρόβλεψη των μοντέλων θα γίνει και η αξιολόγηση της πρόβλεψης των βαθμολογιών για το έτος 2012 με τις βαθμολογίες που έχει λάβει κάθε ταινία από τους χρήστες του δικτύου IMDb και Rotten Tomatoes. Η αξιολόγηση θα γίνει με το μέτρο αποτίμησης του μέσου απόλυτου σφάλματος (mean absolute error). 2.1 O Αλγόριθμος Time Series Ο κύριος σκοπός του αλγορίθμου Time Series στο περιβάλλον MS SQL Server 2008 R2 είναι να προβλέψει τα μελλοντικά χαρακτηριστικά χρονοσειρών με βάση τα προηγούμενα αντικείμενα. Ο αλγόριθμος έχει ρυθμιστεί να κάνει όσο το δυνατόν καλύτερη δουλειά με ελάχιστες πληροφορίες και τα δεδομένα θα πρέπει να παρέχουν ακριβείς και ενημερωμένες προβλέψεις Το Περιεχόμενο του Μοντέλου Time Series Ο αλγόριθμος Time Series ενσωματώνει δύο διαφορετικούς αλγορίθμους του γνωστικού αντικειμένου της μηχανικής μάθησης. Ο πρώτος αλγόριθμος που είναι γνωστός ως Autoregressive Tree with Cross Prediction (ARTxp), έχει αποδειχθεί ότι είναι ο πιο ακριβής αλγόριθμος για την πρόβλεψη της επόμενης τιμής σε μια χρονοσειρά. Ο δεύτερος αλγόριθμος, ο ονομαζόμενος ως Autoregressive Integrated -31-

32 Moving Averages (ARIMA), είναι ένα δεύτερο πρότυπο αλγορίθμου πρόβλεψης. Η προεπιλεγμένη συμπεριφορά του αλγορίθμου Time Series είναι να συνδυάσει τα αποτελέσματα των δύο παραπάνω αλγορίθμων για την επίτευξη της βέλτιστης πρόβλεψης. Λόγω της διττής φύσης του αλγορίθμου Time Series, κάθε χρονοσειρά σε ένα μοντέλο έχει δύο ανεξάρτητους κόμβους αντιπροσωπεύοντας τα ARTxp και ARIMA χαρακτηριστικά του Αυτοπαλινδρόμηση Η Παλινδρόμηση (Regression) είναι μια διαδικασία καθορισμού μιας μεταβλητής Χ σε σχέση με άλλα χαρακτηριστικά, όπως φαίνεται στη συνάρτηση: X=aW+bX+cY+dZ+ε. Τα W, Χ, Υ, και Ζ αντιπροσωπεύουν τις παλινδρομούσες μεταβλητές στην είσοδο και τα a, b, c και d αντιπροσωπεύουν τους συντελεστές παλινδρόμησης. Ο τελευταίος όρος είναι το ε, ο οποίος αντιπροσωπεύει το θόρυβο. Η λειτουργία ενός γραμμικού αλγορίθμου παλινδρόμησης είναι να προσδιοριστούν οι παραπάνω συντελεστές. Η Αυτοπαλινδρόμηση (Autoregression) διαφέρει από την τυπική παλινδρόμηση από το ότι η τιμή Χ λαμβάνεται υπόψη για μία συγκεκριμένη χρονική στιγμή t και εκφράζεται σε όρους της τιμής της σε προηγούμενες φορές (t 1, t 2, t 3). Ως εκ τούτου, αν θεωρήσει κανείς n τις προηγούμενες φορές, θα καταλήξουμε σε μια συνάρτηση, όπως η ακόλουθη: Χ t = a 1 X t-1 + a 2 X t-2 + a 3 X t a n X t-n +ε t. Η λειτουργία του αλγορίθμου είναι να προσδιορίσει τους συντελεστές αυτοπαλινδρόμησης α 1 μέχρι α n. Ένα από τα βασικά βήματα της αυτοπαλινδρόμησης είναι να μετατρέψει εσωτερικά με χρονολογική σειρά τις πολλαπλές περιπτώσεις [15] Περιοδικότητα Οι περισσότερες χρονοσειρές έχουν περιοδικές ή εποχικές διακυμάνσεις. Για να ληφθεί μία ακριβής πρόβλεψη, είναι σημαντικό να τονιστεί ότι ο αλγόριθμος κατανοεί τις διάφορες περιοδικότητες στα δεδομένα. Ο αλγόριθμος χρησιμοποιεί την περιοδικότητα των δεδομένων, για να δημιουργήσει επιπλέον εισόδους. Για παράδειγμα, εάν κάνουμε μηνιαία εξόρυξη δεδομένων με μια χρονική διάρκεια 12 περιόδων, εκτός από την παραγωγή των όρων για το t 1, t 2, κ.α, ο αλγόριθμος θα χρησιμοποιήσει όρους t 12, t 24, κ.α. Επειδή, η χρονοσειρά -32-

33 μπορεί να έχει πολλαπλές περιοδικότητες, ο αλγόριθμος θα δημιουργήσει αυτούς τους όρους που απαιτούνται για όλες τις περιόδους Πρόβλεψη Ο αλγόριθμος Autoregressive Tree (ARTxp) έχει το πλεονέκτημα να είναι ιδιαίτερα βελτιστοποιημένος για την πρόβλεψη για την επόμενη τιμή σε μια χρονοσειρά. Για την περαιτέρω πρόβλεψη, ο αλγόριθμος υποθέτει ότι η προηγούμενη προβλεπόμενη τιμή είναι η πραγματική τιμή, και στη συνέχεια, προβλέπει την επόμενη προβλεπόμενη τιμή [15]. Επειδή, πολλές φορές ο αλγόριθμος ARTxp προβλέπει τιμές όπου μπορεί πολύ εύκολα να τον κάνουν ασταθή, για το λόγο αυτό, έχει προστεθεί ο ARIMA αλγόριθμος. Αν και ο ARIMA μπορεί να εμφανίσει αστάθεια, είναι πολύ πιο σταθερός στις μακροπρόθεσμες προβλέψεις από ότι ο ARTxp. Οι προβλέψεις γίνονται από την προβλεπόμενη τιμή χρησιμοποιώντας καθέναν από τους αλγορίθμους και την ανάμιξη των αποτελεσμάτων. Το αναμεμιγμένο αποτέλεσμα είναι ένας μέσος όρος των αποτελεσμάτων, όπου σταθμίζονται από το πόσο μακριά είναι η πρόβλεψη. Οι προβλέψεις βραχυπρόθεσμης διάρκειας θα πρέπει να σταθμίζονται προς το αποτέλεσμα ARTxp, ενώ οι μακροπρόθεσμες προβλέψεις σταθμίζονται προς τον ARIMA, όπου ο ARTxp ουσιαστικά φτάνει στο μηδέν, όπως φαίνεται στην εικόνα 6. Εικόνα 6: Συμβολή των ARTxp και ARIMA αλγορίθμων στα αποτελέσματα πρόβλεψης Πηγή: Data Mining with Microsoft SQL Server 2008 [15] Οι Παράμετροι του Αλγορίθμου Time Series Σε γενικές γραμμές, ο αλγόριθμος Time Series έχει αυτορρύθμιση και δεν απαιτεί πολλές αλλαγές στις παραμέτρους. Συνήθως, θα χρειαστούν αλλαγές μόνο οι παράμετροι που καθορίζουν την περιοδικότητα της χρονοσειράς και αυτοί που -33-

34 χειρίζονται τις χαμένες τιμές. Συγκεκριμένα, οι παράμετροι του αλγορίθμου Time Series φαίνονται στην εικόνα 7. Εικόνα 7: Οι παράμετροι του αλγορίθμου Time Series Παρακάτω, αναλύονται οι πιο σημαντικοί παράμετροι για τον αλγόριθμο Time Series: MISSING VALUE SUBSTITUTION Αυτή είναι η παράμετρος που μας βοηθάει αν παραλείψουμε κάποιο δεδομένο. Αν αφήσουμε κενή την παράμετρο MISSING VALUE SUBSTITUTION και υπάρχουν κενά στα δεδομένα μας (έστω και ένα μόνο), η επεξεργασία του μοντέλου θα αποτύχει. Ευτυχώς, αυτό θα συμβεί με ένα μήνυμα σφάλματος που μας ενημερώνει, ώστε να ρυθμίσουμε την παράμετρο MISSING VALUE SUBSTITUTION. Στόχος είναι η ενημέρωση των σφαλμάτων και οι διορθωτικές ενέργειες. Αυτό που μπορούμε να αλλάξουμε είναι η σειρά πηγής δεδομένων και να ρυθμίσουμε την παράμετρο με μία από τις ακόλουθες τιμές: Previous: Αυτή η ρύθμιση προκαλεί τον αλγόριθμο να χρησιμοποιήσει την προηγούμενη τιμή, όποτε υπάρχουν δεδομένα που λείπουν. -34-

35 Mean: Η ρύθμιση αυτή αντικαθιστά τα χαμένα δεδομένα με τη μέση τιμή του συνόλου των χρονοσειρών. Number: Η ρύθμιση αυτή καθορίζει μια αριθμητική τιμή, όπου θα προκαλέσει τον αλγόριθμο να αντικαταστήσει τις τιμές που λείπουν με ακριβώς αυτόν τον αριθμό. Αυτή η επιλογή είναι σωστή σε σενάρια, όπου ένας τέτοιος αριθμός μπορεί να είναι γνωστός και συνήθως, ο αριθμός θα είναι 0. PERIODICITY HINT Η παράμετρος PERIODICITY HINT είναι η δεύτερη πιο σημαντική παράμετρος μετά την MISSING VALUE SUBSTITUTION. Η σωστή περιοδικότητα μπορεί να κάνει τη διαφορά ανάμεσα σε ένα καλό μοντέλο και ένα κακό μοντέλο και θα πρέπει πάντα να ορίσουμε την περιοδικότητα, εάν την ξέρουμε. Η μορφή της παραμέτρου PERIODICITY HINT είναι v... που σημαίνει ότι μπορούμε να ορίσουμε όσες περιοδικότητες εμείς επιθυμούμε. MINIMUM και MAXIMUM SERIES VALUE Αυτές οι δύο παράμετροι απλά μας επιτρέπουν να περιορίσουμε το εύρος για έγκυρες προβλέψεις. Για παράδειγμα, αν προβλέπουμε την απογραφή σε πτωτική χρονοσειρά, θα έχουμε την τιμή 0. Ρύθμιση της παραμέτρου MINIMUM SERIES VALUE στο 0, προκαλεί αρνητικές προβλέψεις μέχρι να περικοπούν στο 0. Λόγω της σταυροειδούς πρόβλεψης από άλλες χρονοσειρές, μια χρονοσειρά που προβλέπει το ελάχιστο ή μέγιστο όριο, μπορεί ακόμα να αλλάξει τις μελλοντικές προβλέψεις. FORECAST METHOD Η παράμετρος FORECAST METHOD δείχνει ποιον αλγόριθμο να χρησιμοποιήσουμε, για να εκτελέσουμε τις προβλέψεις. Από προεπιλογή, αυτή η παράμετρος έχει οριστεί σε MIXED, αναφέροντας ότι θα χρησιμοποιήσει δύο αλγορίθμους που συνδυάζουν τα αποτελέσματα πρόβλεψης. Πρόσθετες επιλογές είναι ο ARIMA και ο ARTxp, για να καθορίσουμε την αποκλειστική χρήση ενός μόνο αλγορίθμου. -35-

36 2.2 Εφαρμογή του Αλγορίθμου Time Series στη Βάση Δεδομένων MovieLens Δημιουργία Μοντέλων του Αλγορίθμου Time Series Αρχικά, για τον αλγόριθμο Time Series δημιουργήθηκαν δυο μοντέλα με χρονολογική σειρά για τη βάση δεδομένων MovieLens (βλ. Παράρτημα Γ ) στον SQL Server Business Intelligence και στον SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Σκοπός των δυο μοντέλων είναι να προβλέψουν τις βαθμολογίες των ταινιών που έχουν βάλει οι χρήστες για το έτος 2012, συγκρίνοντας αυτές με τις βαθμολογίες που έχουν βάλει οι χρήστες στα δίκτυα IMDb και Rotten Tomatoes. Πρώτο Μοντέλο Στο πρώτο μοντέλο που δημιουργήθηκε, χρησιμοποιείται ο πίνακας RM ο οποίος δημιουργήθηκε για την παρούσα εργασία. Ο πίνακας RM αποτελεί τον πίνακα περίπτωσης και περιέχει όλους τους χρήστες και 50 τυχαία movieid από το 1997 μέχρι και το Ως κλειδιά έχουμε ορίσει το date_year και το movieid. Οι μεταβλητές εισόδου και πρόβλεψης είναι το rating. Στη συνέχεια, δημιουργήθηκε το πρώτο μοντέλο στο SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Για τη δημιουργία του πρώτου μοντέλου χρειάστηκε να οριστεί ποιος πίνακας θα χρησιμοποιηθεί, ποιες μεταβλητές είναι τα κλειδιά και ποια η μεταβλητή πρόβλεψης (βλ. Παράρτημα Δ ). Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING MODEL [RM] ( [date_year] DOUBLE KEY TIME, [movieid] DOUBLE KEY, [rating] DOUBLE CONTINUOUS PREDICT ) USING _Time_Series WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [RM_Structure] ( [date_year], [movieid], [rating]) OPENQUERY( [Movielens], 'SELECT [date_year], [movieid], [rating] FROM RM ORDER BY [date_year]' ) Στην εικόνα 8 παρουσιάζεται σε διάγραμμα οι βαθμολογίες των ταινιών από το 1997 μέχρι το 2009 για κάποιους κωδικούς ταινιών, καθώς και οι προβλέψεις των βαθμολογιών των ταινιών για τα επόμενα έτη. -36-

37 Εικόνα 8: Η γραφική παράσταση του μοντέλου Δεύτερο Μοντέλο Στο δεύτερο μοντέλο που δημιουργήθηκε, χρησιμοποιείται ο πίνακας Rated Movies MO που δημιουργήθηκε για την παρούσα εργασία. Ο πίνακας Rated Movies MO αποτελεί τον πίνακα περίπτωσης και περιέχει όλους τους χρήστες και 50 τυχαία movieid από το 1997 μέχρι και το Ο πίνακας αυτός περιέχει τους μέσους όρους των βαθμολογιών για κάθε έτος. Στην εικόνα 9 παρουσιάζεται η δημιουργία του πίνακα Rated Movies MO. Ως κλειδιά έχουμε ορίσει το date_year και το movieid. Οι μεταβλητές εισόδου και πρόβλεψης είναι το Avgrating. Εικόνα 9: Δημιουργία πίνακα Rated Movies MO -37-

38 Στη συνέχεια, δημιουργήθηκε το δεύτερο μοντέλο στο SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Για τη δημιουργία του δεύτερου μοντέλου χρειάστηκε να οριστεί ποιος πίνακας θα χρησιμοποιηθεί, ποιες μεταβλητές είναι τα κλειδιά, ποια η μεταβλητή πρόβλεψης και ποια παράμετρος χρησιμοποιήθηκε (βλ. Παράρτημα Δ ). Η επιλογή της παραμέτρου MISSING VALUE_SUBSTITUTION έγινε για να αντικαταστήσει τα χαμένα δεδομένα με τη μέση τιμή του συνόλου των χρονοσειρών. Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING MODEL [Rated_Movies_MO] ( [date_year] DOUBLE KEY TIME, [movieid] DOUBLE KEY, [Avgrating] DOUBLE CONTINUOUS PREDICT ) USING _Time_Series (MISSING_VALUE_SUBSTITUTION = 'Mean') WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [Rated_Movies_MO_Structure] ( [date_year], [movieid], [Avgrating]) OPENQUERY( [Monielens], 'SELECT date_year, movieid, AVG (rating) AS [Avgrating] FROM Rated_Movies_MO ORDER BY [date_year]' ) Στην εικόνα 10 παρουσιάζεται σε διάγραμμα οι βαθμολογίες των ταινιών από το 1997 μέχρι το 2009 για κάποιους κωδικούς ταινιών, καθώς και οι προβλέψεις των βαθμολογιών των ταινιών για τα επόμενα έτη. Εικόνα 10: Η γραφική παράσταση του μοντέλου -38-

39 2.2.2 Πρόβλεψη Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τα μοντέλα που δημιουργήθηκαν. Πρώτο Μοντέλο Παρακάτω, φαίνεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τα επόμενα 5 έτη από το 2010 μέχρι και το 2014 στο SQL Server Analysis Services. SELECT [RM].[movieID], PredictTimeSeries ([rating],5) FROM [RM] Ενώ, στην εικόνα 11 φαίνονται οι προβλέψεις των βαθμολογιών για το κάθε movieid για τα 5 έτη. Δεύτερο Μοντέλο Εικόνα 11: Αποτελέσματα προβλέψεων Παρακάτω, φαίνεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τα επόμενα 5 έτη από το 2010 μέχρι και το 2014 στο SQL Server Analysis Services. SELECT [Rated_Movies_MO].[movieID], PredictTimeSeries([Rated_Movies_MO].[Avgrating],5) FROM [Rated_Movies_MO] Ενώ, στην εικόνα 12 φαίνονται οι προβλέψεις των βαθμολογιών για το κάθε movieid για τα 5 έτη. -39-

40 Εικόνα 12: Αποτελέσματα προβλέψεων Αξιολόγηση Η αξιολόγηση που έγινε στα μοντέλα στον αλγόριθμο Time Series, θεωρεί ότι η κατανομή των βαθμολογιών του κάθε χρήστη αντικειμένου διαχωρίστηκε σε δύο σύνολα. Το πρώτο σύνολο είναι το σύνολο εκπαίδευσης (training set) που χρησιμοποιείται για να δημιουργήσει το μοντέλο εξόρυξης. Ενώ, το δεύτερο σύνολο είναι το σύνολο δοκιμών (testing set) που χρησιμοποιείται για να ελέγξει την ακρίβεια του μοντέλου. Μετά τη διαίρεση του συνόλου δεδομένων σε training και testing set, δημιουργήθηκαν οι πίνακες για τον αλγόριθμο. Τα μοντέλα θα αξιολογηθούν σε σχέση με την πρόβλεψη των βαθμολογιών για κάθε έτος. Συγκεκριμένα, θα αξιολογήσουμε την πρόβλεψη των βαθμολογιών για το έτος 2012 με τις βαθμολογίες που έχει λάβει κάθε ταινία από τους χρήστες του δικτύου IMDb και Rotten Tomatoes. Για να συγκρίνουμε τα αριθμητικά αποτελέσματα, έχουμε χρησιμοποιήσει ως μέτρο απόδοσης, το μέσο απόλυτο σφάλμα (Mean Absolute Error), όπου βρίσκει τη διαφορά μεταξύ παρατηρούμενων τιμών (αρχικές τιμές) και εκτιμώμενων τιμών. Το o και το e είναι η τιμή και η εκτιμώμενη τιμή. Το Mean Absolute Error (ΜΑΕ) ορίζεται ως εξής: 1 n MAE ( O, E) 1o i i ei [23]. n Στον παρακάτω πίνακα 1 παρουσιάζεται η αξιολόγηση των δυο μοντέλων (TS 2012 και ΤSMO 2012) που δημιουργήθηκαν πρωτύτερα. Τα αποτελέσματα που παρουσιάζει ο πίνακας 3, υπολογίστηκαν στο SPSS ορίζοντας ως Paired T-Test 95%. Το μ r είναι η μέση τιμή και τo σ r είναι η τυπική απόκλιση των βαθμολογιών για το 2012 που -40-

41 προβλέφθηκε από την SQL. Το IMDbμ r και το RTμ r είναι η μέση τιμή των βαθμολογιών για το 2012 από τα δίκτυα IMDb και Rotten Tomatoes. Ενώ, το IMDbσ r και το RTσ r είναι η τυπική απόκλιση των βαθμολογιών για το 2012 από τα δίκτυα IMDb και Rotten Tomatoes. Πίνακας 1: Αξιολόγηση των μοντέλων EXPL. μ r σ r IMDb IMDb RT RT IMDb IMDb RT RT STYLES μ r σ r μ r σ r μ d σ d μ d σ d TS TSMO Το IMDbμ d και το RTμ d είναι η μέση διαφορά των βαθμολογιών μεταξύ των βαθμολογιών που προβλέφθηκαν για το 2012 και των βαθμολογιών από τα δίκτυα IMDb και Rotten Tomatoes αντίστοιχα. Ενώ, το IMDbσ d και το RTσ d είναι η τυπική απόκλιση των βαθμολογιών μεταξύ των βαθμολογιών που προβλέφθηκαν για το 2012 και των βαθμολογιών από τα τα δίκτυα IMDb και Rotten Tomatoes. Σύμφωνα με τον πίνακα 1, το δεύτερο μοντέλο ΤSMO 2012 βγάζει τα καλύτερα αποτελέσματα γιατί το μ d είναι 0.67 στο IMDbμ d όπου είναι μικρότερο από το 0.81 που έχει το μοντέλο TS 2012 στο IMDbμ d. Το ίδιο συμβαίνει και στο μ d που είναι 0.64 στο RTμ d σε σύγκριση με το 0.84 που έχει το μοντέλο TS 2012 στο RTμ d. -41-

42 -42-

43 3 Movies Recommendation Based on Decision Trees Model Αυτό το κεφάλαιο θα καλύψει τον αλγόριθμο Decision Trees στο περιβάλλον MS SQL Server 2008 R2 και θα αναλύσει τα σενάρια χρήσης των Δέντρων Απόφασης, καθώς και τις βασικές έννοιες για το πως λειτουργούν τα δέντρα απόφασης. Έπειτα, θα αναπτυχθούν τα μοντέλα για τον αλγόριθμο Decision Trees στα σύνολα δεδομένων MovieLens και MovieClick. Αρχικά, θα παρουσιαστεί η δημιουργία των μοντέλων του αλγόριθμου Decision Trees και στη συνέχεια, η πρόβλεψη των μοντέλων του αλγορίθμου Time Series. Εκτός από την πρόβλεψη των μοντέλων θα γίνει και η αξιολόγηση της πρόβλεψης των ταινιών που συστήνονται στους χρήστες. Η αξιολόγηση θα γίνει με το Business Intelligence Development Studio. 3.1 Ο Αλγόριθμος Decision Trees Βασικές Έννοιες της Ανάπτυξης των Δέντρων Τα Δέντρα Απόφασης είναι ίσως, η πιο δημοφιλής τεχνική εξόρυξης δεδομένων, επειδή έχουν γρήγορη απόδοση της εκπαίδευσης και έναν υψηλό βαθμό ακρίβειας. Η πιο συνηθισμένη διαδικασία εξόρυξης δεδομένων για ένα Δέντρο Απόφασης, είναι η ταξινόμηση (classification), δηλαδή ο προσδιορισμός αν ένα σύνολο δεδομένων ή όχι ανήκει σ ένα συγκεκριμένο τύπο ή τάξη. Η κύρια λειτουργία ενός Δέντρου Απόφασης είναι να διαχωρίσει τα δεδομένα σε υποσύνολα. Κάθε χαρακτηριστικό εισόδου αξιολογείται, ώστε να προσδιοριστεί πόσο σωστά χωρίζει τα δεδομένα σε όλες τις τάξεις του προβλέψιμου χαρακτηριστικού. Η διαδικασία της αξιολόγησης όλων των εισόδων στη συνέχεια επαναλαμβάνεται σε κάθε υποσύνολο. Όταν αυτή η επαναληπτική διαδικασία έχει ολοκληρωθεί, σχηματίζεται ένα δέντρο απόφασης. Τα Δέντρα Απόφασης προσφέρουν αρκετά πλεονεκτήματα σε σχέση με -43-

44 άλλους αλγορίθμους εξόρυξης δεδομένων, όπως ότι είναι γρήγορα για να δημιουργηθούν και να ερμηνευθούν εύκολα Επιλογή Χαρακτηριστικών Οι αλγόριθμοι συστάσεων μπορεί να είναι πολύ ευαίσθητοι με τον αριθμό των χαρακτηριστικών που περιλαμβάνουν. Πάρα πολλά χαρακτηριστικά απαιτούν μεγάλη μνήμη για επεξεργασία. Επίσης, δεν είναι όλα τα χαρακτηριστικά εξίσου σημαντικά σύμφωνα με την ακρίβεια πρόβλεψης. Η επιλογή χαρακτηριστικών είναι μια διαδικασία που επιλέγει ένα υποσύνολο των χαρακτηριστικών έτσι ώστε, ο χρόνος επεξεργασίας να μπορεί να μειωθεί σημαντικά. Μπορούμε να χρησιμοποιήσουμε τις στατιστικές λειτουργίες (Εντροπία ή Bayesian σκορ), για να υπολογιστούν οι δυναμικές επιπτώσεις του κάθε χαρακτηριστικού εισόδου που σχετίζονται με το προβλέψιμο χαρακτηριστικό και στη συνέχεια, να επιλεχθούν τα πιο σημαντικά χαρακτηριστικά για το μοντέλο [15]. Η επιλογή χαρακτηριστικών εφαρμόζεται όχι μόνο σε χαρακτηριστικά εισόδου, αλλά και για τα προβλέψιμα χαρακτηριστικά Ανάλυση Συσχετίσεων με τον Αλγόριθμο Decision Trees Ένα από τα μοναδικά χαρακτηριστικά του αλγορίθμου Decision Trees είναι ότι μπορεί να χρησιμοποιηθεί για την ανάλυση συσχετίσεων. Αρχικά, δημιουργούνται δέντρα απόφασης όπου προβλέπονται κάποια χαρακτηριστικά και στη συνέχεια, τα προβλέψιμα χαρακτηριστικά με τη βοήθεια κανόνων συσχέτισης, δημιουργούν συσχετίσεις μεταξύ όλων των δέντρων που δημιουργήθηκαν. Αυτό έχει ως αποτέλεσμα τη δημιουργία συστάσεων ανάλογα με τα χαρακτηριστικά που προβλέπονται. Η εικόνα 13 απεικονίζει τέσσερα δέντρα για να προβλέψει τις σχέσεις ταινιών ώστε να γίνει γνωστό ποιες ταινίες μπορούν να συστηθούν στους θεατές. Το πρώτο δέντρο χρησιμοποιεί ως προβλέψιμο χαρακτηριστικό την ταινία Stargate, το δεύτερο δέντρο την ταινία Star Wars, το τρίτο την ταινία Terminator και το τέταρτο την ταινία Matrix. -44-

45 Εικόνα 13: Συσχέτιση χρησιμοποιώντας το Decision Trees Για παράδειγμα, στο πρώτο δέντρο που κάνει πρόβλεψη για το πιο σημαντικό χαρακτηριστικό την ταινία Stargate, η σκούρη ράβδος, στο ραβδόγραμμα, αντιπροσωπεύει την πιθανότητα ενός θεατή να μην του αρέσει η ταινία Stargate και η λευκή ράβδος αντιπροσωπεύει την πιθανότητα ενός θεατή να του αρέσει η ταινία Stargate. Ο πρώτος διαχωρισμός είναι για το χαρακτηριστικό Star Wars. Εάν σ ένα θεατή αρέσει η ταινία Star Wars, υπάρχει μια μεγάλη πιθανότητα να του αρέσει η ταινία Stargate. Ο δεύτερος διαχωρισμός δείχνει ότι σ ένα θεατή που του αρέσει η ταινία Star Trek υπάρχει, επίσης, μια υψηλή πιθανότητα να του αρέσει η ταινία Stargate. Υπάρχουν πολλαπλά δέντρα στο μοντέλο, με αποτέλεσμα από κάθε δέντρο να μπορούμε να βρούμε ταινίες που συσχετίζονται με την προβλέψιμη ταινία. Παρατηρώντας όλα τα δέντρα, μπορούμε να παράγουμε όλες τις σχέσεις μεταξύ των ταινιών. Αυτές οι σχέσεις είναι, στην πραγματικότητα, κανόνες συσχέτισης και μπορεί να χρησιμοποιηθούν για τη δημιουργία πρόβλεψης συσχετίσεων. Στη εικόνα 13, οι κανόνες συσχέτισης παρουσιάζονται με τις κόκκινες γραμμές. Για παράδειγμα, αν σ ένα θεατή αρέσει η ταινία Star Wars, μπορούμε να του συστήσουμε τις ταινίες Stargate και Matrix Οι Παράμετροι του Αλγορίθμου Decision Trees Ο αλγόριθμος Decision Trees έχει μια σειρά από παραμέτρους που χρησιμοποιούνται για τον έλεγχο της ανάπτυξης του δέντρου, το σχήμα δέντρου, καθώς -45-

46 και τις ρυθμίσεις εισόδου/εξόδου των χαρακτηριστικών. Με την προσαρμογή αυτών των ρυθμίσεων παραμέτρων, μπορούμε να ρυθμίσουμε την ακρίβεια του μοντέλου. Συγκεκριμένα, οι παράμετροι του αλγορίθμου Decision Trees φαίνονται στην εικόνα 14. Εικόνα 14: Οι παράμετροι του αλγορίθμου Decision Trees Παρακάτω, αναλύονται οι πιο σημαντικοί παράμετροι του αλγορίθμου Decision Trees: COMPLEXITY PENALTY Η COMPLEXITY PENALTY είναι μια παράμετρος που καθορίζει το μέγεθος του δέντρου. Η τιμή της εξαρτάται από το πλήθος των χαρακτηριστικών του μοντέλου και λαμβάνει τιμές [0,1]. Όταν η τιμή αυτής της παραμέτρου είναι κοντά στο 0, τα δέντρα που προκύπτουν είναι σχετικά μεγάλα. Όταν η τιμή του βρίσκεται κοντά στο 1, τα δέντρα που προκύπτουν είναι σχετικά μικρά. Η προεπιλεγμένη ρύθμιση σχετίζεται με τον αριθμό των χαρακτηριστικών εισόδου. Αν τα χαρακτηριστικά είναι λιγότερα από 10 τότε η προεπιλεγμένη τιμή της παραμέτρου είναι 0.5, αν είναι μεταξύ 10 και 99 η προεπιλεγμένη τιμή είναι 0.9 και αν τα χαρακτηριστικά είναι περισσότερα ή ίσα από 100, τότε η προεπιλεγμένη τιμή είναι

47 MINIMUM SUPPORT Η MINIMUM SUPPORT παράμετρος χρησιμοποιείται, για να καθορίσει το ελάχιστο πλήθος των περιπτώσεων στους κόμβους του δένδρου που απαιτούνται για τη δημιουργία του. Όταν η τιμή αυτή είναι μικρότερη ή ίση με 1, τότε εκφράζει ποσοστό σε σχέση με το πλήθος όλων των περιπτώσεων, ενώ όταν η τιμή είναι μεγαλύτερη από 1, εκφράζει πλήθος. Με αυτήν την παράμετρο καθορίζουμε στο σύστημα πότε θα σταματήσει η ανάλυση του δένδρου, δηλαδή καθορίζουμε το μέγεθός του. Η προεπιλεγμένη τιμή της παραμέτρου είναι 10. MAXIMUM INPUT ATTRIBUTES Η MAXIMUM INPUT ATTRIBUTES καθορίζει το μέγιστο αριθμό των χαρακτηριστικών εισόδου που ο αλγόριθμος μπορεί να χειριστεί πριν ο αλγόριθμος αρχίσει να επιλέγει χαρακτηριστικά. Η τιμή 0 απενεργοποιεί την δυνατότητα επιλογής των χαρακτηριστικών εισόδου. MAXIMUM OUTPUT ATTRIBUTES Η MAXIMUM OUTPUT ATTRIBUTES παράμετρος καθορίζει το μέγιστο αριθμό των χαρακτηριστικών εξόδου που ο αλγόριθμος μπορεί να χειριστεί πριν ο αλγόριθμος αρχίσει να επιλέγει χαρακτηριστικά. Η τιμή 0 απενεργοποιεί την δυνατότητα επιλογής των χαρακτηριστικών εξόδου. 3.2 Εφαρμογή του Αλγορίθμου Decision Trees στη Βάση Δεδομένων MovieClick Σ αυτήν την ενότητα θα αναπτυχθεί το μοντέλο για τον αλγόριθμο Decision Trees στο σύνολο δεδομένων MovieClick Δημιουργία Μοντέλου του Αλγορίθμου Decision Trees Για τον αλγόριθμο Decision Trees δημιουργήθηκε ένα μοντέλο δέντρου απόφασης στον SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Σκοπός του μοντέλου είναι να προβλέψει ταινίες που συστήνονται στους χρήστες. -47-

48 Για τη δημιουργία του μοντέλου χρειάστηκε να οριστούν ποιοι πίνακες θα χρησιμοποιηθούν (Customers, Movies), ποιες μεταβλητές είναι τα κλειδιά, ποια η μεταβλητή πρόβλεψης και ποιοι παράμετροι χρησιμοποιήθηκαν. Οι παράμετροι MAXIMUM INPUT ATTRIBUTES και MAXIMUM OUTPUT ATTRIBUTES που επιλέχθηκαν, θεωρούνται πολλοί σημαντικοί για τη δημιουργία του μοντέλου γιατί ορίζουν το μέγιστο αριθμό χαρακτηριστικών εισόδου και εξόδου (βλ. Παράρτημα Δ ). Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING STRUCTURE MovieDT ( CustomerID LONG KEY, Gender TEXT DISCRETE, Marital_Status TEXT DISCRETE, MoviePurchase TABLE ( Movie_Name TEXT KEY )) ALTER MINING STRUCTURE MovieDT ADD MINING MODEL MovieDT ( CustomerID, Gender PREDICT, Marital_Status PREDICT, MoviePurchase PREDICT ( Movie_Name )) USING _Decision_Trees (Maximum_Input_Attributes=20000, Maximum_Output_Attributes = 20000) WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [MovieDT] ( CustomerID, Gender, Marital_Status, MoviePurchase (SKIP, [Movie_Name]) ) SHAPE { OPENQUERY ([Movie Click], 'SELECT CustomerID, Gender, [Marital Status] FROM Customers ORDER BY CustomerId') } APPEND ( { OPENQUERY ([Movie Click], 'SELECT CustomerID, Movie FROM Movies ORDER BY CustomerID') } RELATE CustomerID To CustomerID ) AS Movie_Purchase Στην εικόνα 15 παρουσιάζεται το Δέντρο Απόφασης του μοντέλου. Παρατηρούμε ότι το δένδρο αποτελείται από 6 επίπεδα και 5 κόμβους. Η διάκριση του φύλου γίνεται πρώτα με την οικογενειακή κατάσταση των πελατών και έπειτα, με την ταινία που είδαν. Το μοντέλο αποτελείται από 3187 περιπτώσεις όπου το 77,17% προβλέφθηκαν άντρες και το 22,59% γυναίκες. Το ιστόγραμμα δείχνει το ποσοστό πρόβλεψης για κάθε κόμβο του δένδρου. -48-

49 Εικόνα 15: Το δέντρο απόφασης του μοντέλου Η αντίστοιχη σχέση εξάρτησης μεταξύ των μεταβλητών φαίνεται και στο περιβάλλον Dependency Network (εικόνα 16) Πρόβλεψη Εικόνα 16: Η σχέση εξάρτησης μεταξύ των μεταβλητών Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Παρακάτω, απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Analysis Services. SELECT t.customerid, Predict (MovieDT.Movies, 5, $AdjustedProbability) AS Recommendation FROM MovieDT NATURAL PREDICTION JOIN OPENQUERY ( [ Movie Click], 'SELECT CustomerID, Gender FROM Customers') AS T Ενώ, στην εικόνα 17 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. -49-

50 Εικόνα 17: Αποτελέσματα προβλέψεων Αξιολόγηση Η αξιολόγηση του μοντέλου στον αλγόριθμο Decision Trees έγινε στο Business Intelligence Development Studio. Η καρτέλα Mining Accuracy Chart του SQL Server 2008 R2 παρέχει την επικύρωση των αποτελεσμάτων των μοντέλων πρόβλεψης για τον αλγόριθμο Decision Trees. Παρατηρούμε ότι στο διάγραμμα αξιολόγησης Lift Chart το μοντέλο παρουσιάζει μια αρκετά καλή επίδοση και συγκεκριμένα Score Στο μοντέλο που δημιουργήθηκε με ενδεικτικό σημείο το 50% του συνολικού πληθυσμού, το μοντέλο προβλέπει σωστά το 40,04% του πληθυσμού με πιθανότητα 77,99%, ενώ το ιδανικό μοντέλο προβλέπει σωστά το 50% του πληθυσμού (εικόνα 18 και 19). Εικόνα 18: Διάγραμμα αξιολόγησης Lift Chart -50-

51 Εικόνα 19: Αποτελέσματα Lift Chart 3.3 Εφαρμογή του Αλγορίθμου Decision Trees στη Βάση Δεδομένων MovieLens Σ αυτήν την ενότητα θα αναπτυχθεί το μοντέλο για τον αλγόριθμο Decision Trees στο σύνολο δεδομένων MovieLens Δημιουργία Μοντέλου του Αλγορίθμου Decision Trees Για τον αλγόριθμο Decision Trees δημιουργήθηκε ένα μοντέλο Δέντρου Απόφασης στον SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Σκοπός του μοντέλου είναι να προβλέψει ταινίες που συστήνονται στους χρήστες. Για τη δημιουργία του μοντέλου χρειάστηκε να οριστούν ποιοι πίνακες θα χρησιμοποιηθούν (RatedMovies, Movies), ποιες μεταβλητές είναι τα κλειδιά, ποια η μεταβλητή πρόβλεψης και ποιοι παράμετροι χρησιμοποιήθηκαν. Οι παράμετροι MAXIMUM INPUT ATTRIBUTES και MAXIMUM OUTPUT ATTRIBUTES που επιλέχθηκαν, θεωρούνται πολλοί σημαντικοί για τη δημιουργία του μοντέλου γιατί ορίζουν το μέγιστο αριθμό χαρακτηριστικών εισόδου και εξόδου (βλ. Παράρτημα Δ ). Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING STRUCTURE DT ( movieid DOUBLE KEY, userid DOUBLE DISCRETE, rating DOUBLE DISCRETE, Movies TABLE ( movie_name TEXT KEY) ) ALTER MINING STRUCTURE DT ADD MINING MODEL DT ( movieid, userid PREDICT, rating PREDICT, Movies PREDICT ( movie_name) ) USING_Decision_Trees(Maximum_Input_Attributes=20000, Maximum_Output_Attributes = 20000) WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [DT] ( -51-

52 movieid, userid, rating, Movies (SKIP, [movie_name]) ) SHAPE { OPENQUERY ([Movielens], 'SELECT [movieid], userid, rating FROM Ratedmovies ORDER BY [movieid]') } APPEND ( { OPENQUERY ([Movielens], 'SELECT movieid, movie_name FROM Movies ORDER BY [movieid]') } RELATE [movieid] To [movieid] ) AS Movies Στην εικόνα 20 παρουσιάζεται το Δέντρο Απόφασης του μοντέλου. Παρατηρούμε ότι το δένδρο αποτελείται από 3 επίπεδα και 2 κόμβους. Η διάκριση των ταινιών γίνεται με την βαθμολογία που πήραν και το μοντέλο αποτελείται από 4539 περιπτώσεις. Εικόνα 20: Το δέντρο απόφασης του μοντέλου Η αντίστοιχη σχέση εξάρτησης μεταξύ των μεταβλητών φαίνεται και στο περιβάλλον Dependency Network (εικόνα 21). Εικόνα 21: Η σχέση εξάρτησης μεταξύ των μεταβλητών Πρόβλεψη Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Παρακάτω, απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Analysis Services. -52-

53 SELECT T.userID, Predict (DT.Movies, 5,$AdjustedProbability) AS Recommendation FROM DT NATURAL PREDICTION JOIN OPENQUERY([Movielens], 'SELECT movieid, userid, rating FROM Ratedmovies') AS T Ενώ, στην εικόνα 22 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. Εικόνα 22: Αποτελέσματα προβλέψεων Αξιολόγηση Η αξιολόγηση του μοντέλου στον αλγόριθμο Decision Trees έγινε στο Business Intelligence Development Studio. Η καρτέλα Mining Accuracy Chart του MS SQL Server 2008 R2 παρέχει την επικύρωση των αποτελεσμάτων των μοντέλων πρόβλεψης για τον αλγόριθμο Decision Trees. Παρατηρούμε ότι στο διάγραμμα αξιολόγησης Scatter Plot το μοντέλο παρουσιάζει μια αρκετά καλή επίδοση και συγκεκριμένα Score Αυτό φαίνεται και από το γεγονός ότι υπάρχουν αρκετές προβλέψεις του μοντέλου που βρίσκονται κοντά με τη διαγώνιο ευθεία που αντιπροσωπεύει το ιδανικό μοντέλο πρόβλεψης (εικόνα 23). Η διαγώνιος ευθεία βρίσκεται μεταξύ των τιμών 4 και 5, όπου είναι οι βαθμολογίες που έχουν πάρει οι ταινίες που προβλέφθηκαν. Εικόνα 23: Διάγραμμα αξιολόγησης Lift Chart -53-

54 -54-

55 4 Movies Recommendation Based on Association Rules Model Αυτό το κεφάλαιο θα παρουσιάσει μια επισκόπηση του αλγόριθμου Association Rules στο περιβάλλον MS SQL Server 2008 R2, ο οποίος αποτελεί τον πιο σημαντικό αλγόριθμο για τα Συστήματα Συστάσεων, καθώς και την κύρια χρήση του για την πρόβλεψη συσχετίσεων. Επιπλέον, θα αναπτυχθούν τα μοντέλα για τον αλγόριθμο Association Rules στα σύνολα δεδομένων MovieClick και MovieLens. Αρχικά, θα γίνει η δημιουργία των μοντέλων του αλγόριθμου Association Rules και στη συνέχεια, η πρόβλεψη των μοντέλων του αλγορίθμου Association Rules. Εκτός από την πρόβλεψη των μοντέλων θα γίνει και η αξιολόγηση της πρόβλεψης των ταινιών που συστήνονται στους χρήστες. Η αξιολόγηση θα γίνει με το Business Intelligence Development Studio. 4.1 Ο αλγόριθμος Association Rules O αλγόριθμος Association Rules παράγει συσχετίσεις μεταξύ αντικειμένων και ανήκει στην οικογένεια Apriori. Η ανάγκη για την κατανόηση και την ανάλυση του καλαθιού αγοράς (market basket analysis), έδωσε μεγάλη ώθηση στον αλγόριθμο Association Rules, καθώς με την αγορά ενός προϊόντος αναδεικνύονται οι αγοραστικές συνήθειες των πελατών. Οι ομάδες αντικειμένων που παράγει ο αλγόριθμος Association Rules, συσχετίζονται μεταξύ τους και ονομάζονται σύνολα αντικειμένων (itemsets). Υπάρχουν δύο στάδια που χωρίζεται ο αλγόριθμος Association Rules. Στο πρώτο στάδιο του αλγορίθμου γίνονται οι υπολογισμοί, για να επιλεγούν τα itemsets που εμφανίζονται με τη μεγαλύτερη συχνότητα. Ενώ, το δεύτερο στάδιο είναι η δημιουργία κανόνων συσχέτισης με βάση τις συχνότητες των itemsets. Στην εικόνα 24 περιγράφονται τα στάδια του αλγορίθμου Association Rules. -55-

56 Εικόνα 24: Τα δυο βήματα διαδικασίας του αλγορίθμου Association Rules Πηγή: Data Mining with Microsoft SQL Server 2008 [15] Στο πρώτο στάδιο, η επιλογή των itemsets με τη μεγαλύτερη συχνότητα, υπολογίζονται με τη χρήση της υποστήριξης. Η υποστήριξη (support) που χρησιμοποιείται, υπολογίζει το ποσοστό του συνολικού αριθμού των περιπτώσεων που εμφανίζεται το itemset {Α, Β}, και ορίζεται ως εξής: Support ({A, B}) = Number of Transactions (A, B). Στη συνέχεια, στο δεύτερο στάδιο, οι κανόνες συσχέτισης δημιουργούνται με τη χρήση της πιθανότητας (probability) ή της εμπιστοσύνης (confidence). Έπειτα, υπολογίζεται το ποσοστό εμφάνισης των επιτυχημένων κανόνων. Η πιθανότητα ορίζεται ως εξής: Probability (A B) =Probability (B A) =Support (A, B)/ Support (A) [15]. Ακόμη, υπάρχει ο δείκτης importance ή αλλιώς συσχέτιση που αξιολογεί τη σημασία (importance score) των itemsets και των κανόνων. Η σημασία ενός itemset ορίζεται με τον ακόλουθο τύπο: Importance ({A, B}) =Probability (A, B)/ (Probability (A)*Probability (B)) [15]. Εάν το importance = 1, τα Α και Β είναι ανεξάρτητα στοιχεία. Αυτό σημαίνει ότι η αγορά του προϊόντος Α και η αγορά του προϊόντος Β είναι δύο ανεξάρτητα γεγονότα. Εάν το importance < 1, τότε τα Α και Β έχουν αρνητική συσχέτιση, πράγμα που σημαίνει ότι εάν ένας πελάτης αγοράζει το Α, είναι απίθανο να αγοράσει επίσης το Β. Εάν το importance > 1, τότε τα Α και Β έχουν θετική συσχέτιση που σημαίνει ότι εάν ένας πελάτης αγοράσει το Α, είναι πολύ πιθανό να αγοράσει και το Β. Για τους -56-

57 κανόνες, η σημασία υπολογίζεται χρησιμοποιώντας τον ακόλουθο τύπο: Importance ({A B}) =log (B A)/ Probability (B not A)) [15]. Για το importance = 0 σημαίνει ότι δεν υπάρχει συσχέτιση μεταξύ Α και Β. Θετική βαθμολογία importance σημαίνει ότι η πιθανότητα του Β ανεβαίνει όταν το Α είναι αληθές. Μια αρνητική βαθμολογία importance σημαίνει ότι η πιθανότητα του Β κατεβαίνει, όταν το Α είναι αληθές Εύρεση Συχνών Itemsets Η εύρεση συχνών itemsets είναι το βασικό μέρος του αλγορίθμου Association Rules. Κατ αρχάς, πρέπει να καθοριστεί το όριο συχνότητας χρησιμοποιώντας την παράμετρο Minimum Support Count (π.χ. Minimum Support Count = 3). Αυτό σημαίνει ότι μας ενδιαφέρουν στην ανάλυση μόνο τα αντικείμενα που εμφανίζονται τουλάχιστον 3 φορές στο καλάθι αγορών. Ο αλγόριθμος βρίσκει όλα τα συχνά itemsets με size = 1 στην πρώτη επανάληψη (τα δημοφιλή προϊόντα με υποστήριξη μεγαλύτερη από το Minimum Support Count), κάνει τη σάρωση του συνόλου δεδομένων και μετρά την υποστήριξη του κάθε αντικειμένου. Η δεύτερη επανάληψη βρίσκει τα συχνά itemsets με size = 2. Πριν την έναρξη της δεύτερης επανάληψης, ο αλγόριθμος παράγει ένα σύνολο από υποψήφια itemsets του size = 2 με βάση το αποτέλεσμα της πρώτης επανάληψης (συχνότητες των itemsets του size = 1). Ξανά, ο αλγόριθμος σαρώνει το σύνολο δεδομένων και καταμετρά την υποστήριξη για κάθε υποψήφιο που παράγει itemsets. Στο τέλος της επανάληψης, επιλέγει υποψήφια με υποστήριξη μεγαλύτερη ή ίση με την ελάχιστη υποστήριξη για τον κατάλογο των συχνών itemsets με μέγεθος ίσο με 2. Ο αλγόριθμος επαναλαμβάνει την ίδια διαδικασία για να βρει συχνότητες itemsets με μεγέθη 3, 4, 5, και ούτω καθεξής, μέχρις ότου τα itemsets να μην πληρούν τα κριτήρια του Minimum Support Count. Η εικόνα 25 δείχνει τη διαδικασία αναγνώρισης των συχνών itemsets. Η Minimum Support Count έχει οριστεί σε 3. Κατά την πρώτη επανάληψη, η cola και τα eggs φιλτράρονται και απορρίπτονται. Κατά τη δεύτερη επανάληψη, τα υποψήφια {beer, bread} και {beer, milk} αποκλείονται. Κατά την τρίτη επανάληψη, τα υποψήφια {beer, diaper, bread} έχουν αρκετή υποστήριξη. -57-

58 Εικόνα 25: Εύρεση συχνών itemsets Πηγή: Introduction to Data Mining [28] Πρόβλεψη Ο αλγόριθμος Association Rules δεν βρίσκει μόνο τα itemsets και τους κανόνες συσχέτισης, αλλά έχει τη δυνατότητα να εκτελέσει προβλέψεις χρησιμοποιώντας αυτούς τους κανόνες. Τα αποτελέσματα από τις προβλέψεις είναι συνήθως μια σειρά από αντικείμενα που μπορούμε να τα συστήσουμε Οι Παράμετροι του Αλγορίθμου Association Rules Ο αλγόριθμος συσχετίσεων είναι πολύ ευαίσθητος με τις ρυθμίσεις των παραμέτρων του αλγορίθμου γι αυτό χρειάζεται προσοχή ποιοι θα χρησιμοποιηθούν. Συγκεκριμένα, οι παράμετροι του αλγορίθμου Association Rules φαίνονται στην εικόνα

59 Εικόνα 26: Οι παράμετροι του αλγορίθμου Association Rules Παρακάτω, παρουσιάζονται οι πιο σημαντικοί παράμετροι για τον αλγόριθμο Association Rules: MINIMUM SUPPORT Η παράμετρος MINIMUM SUPPORT προσδιορίζει τον ελάχιστο αριθμό των περιπτώσεων που μπορούν να υποστηριχθούν από ένα itemset. Η τιμή της είναι εντός του εύρους από 0 έως 1. Εάν αυτή η τιμή είναι πολύ χαμηλή (για παράδειγμα, 0.001), ο αλγόριθμος μπορεί να διαρκέσει πολύ περισσότερο στη διαδικασία και απαιτεί πολύ περισσότερη μνήμη. Η προεπιλεγμένη τιμή της παραμέτρου είναι 0, και ο αλγόριθμος χρησιμοποιεί μια διαδικασία, για να προσδιορίσει μια καλή ελάχιστη υποστήριξη. Εάν η MINIMUM SUPPORT έχει ρυθμιστεί σε μεγαλύτερο από 1, τότε αναπαριστά τον απόλυτο αριθμό των περιπτώσεων που μπορεί ένα itemset να περιέχει για να γίνει δεκτό. Αν η τιμή της παραμέτρου είναι μικρότερη του 1, τότε αναπαριστά ένα ποσοστό των συνολικών περιπτώσεων. MAXIMUM SUPPORT Η MAXIMUM_SUPPORT είναι μία παράμετρος που προσδιορίζει τον μέγιστο αριθμό των περιπτώσεων που μπορούν να υποστηριχθούν από ένα itemset. Η τιμή της είναι μέσα στην κλίμακα από 0 έως 1. Η προεπιλεγμένη τιμή είναι

60 Αυτή η παράμετρος μπορεί να χρησιμοποιηθεί, για να φιλτράρει τα στοιχεία εκείνα που είναι πολύ συχνά. Εάν η MAXIMUM SUPPORT έχει ρυθμιστεί σε μεγαλύτερο του 1, αναπαριστά τον απόλυτο αριθμό των περιπτώσεων που μπορεί ένα itemset να περιέχει. Ενώ, αν η τιμή της παραμέτρου είναι μικρότερη του 1, τότε αναπαριστά ένα ποσοστό των συνολικών περιπτώσεων. MINIMUM PROBABILITY Η MINIMUM PROBABILITY είναι μια παράμετρος που προσδιορίζει το ελάχιστο όριο της εμπιστοσύνης, για να γίνει ένας κανόνας δεκτός. Η τιμή της είναι μέσα στην κλίμακα από 0 έως 1. Η προεπιλεγμένη τιμή της είναι 0.4. MAXIMUM ITEMSET SIZE Η MAXIMUM ITEMSET SIZE καθορίζει το μέγιστο πλήθος των items που επιτρέπονται σε ένα itemset.. Η προεπιλεγμένη τιμή είναι 3. Δίνοντας στην παράμετρο την τιμή 0, ορίζουμε ότι δεν υπάρχει όριο στο πλήθος των items που επιτρέπονται στο itemset. Μειώνοντας το μέγιστο πλήθος itemset, μειώνεται ο χρόνος επεξεργασίας, επειδή ο αλγόριθμος μπορεί να εξοικονομήσει περαιτέρω επαναλήψεις πάνω από το σύνολο των δεδομένων, όταν το μέγεθος του υποψήφιου itemset φτάσει αυτό το όριο. 4.2 Εφαρμογή του Αλγορίθμου Association Rules στη Βάση Δεδομένων MovieClick Σ αυτήν την ενότητα θα αναπτυχθεί το μοντέλο για τον αλγόριθμο Association Rules στo σύνολο δεδομένων MovieClick Δημιουργία Μοντέλου του Αλγορίθμου Association Rules Για τον αλγόριθμο Association Rules δημιουργήθηκε ένα μοντέλο κανόνων συσχέτισης στον SQL Server Analysis Services με τη γλώσσα Data Mining Extensions (βλ. Παράρτημα Α ). Σκοπός του μοντέλου είναι να προβλέψει ταινίες που συστήνονται στους χρήστες. Για τη δημιουργία του μοντέλου χρειάστηκε να οριστούν ποιοι πίνακες θα χρησιμοποιηθούν (Customers, Movies), ποιες μεταβλητές είναι τα κλειδιά, ποια η μεταβλητή πρόβλεψης και ποιοι παράμετροι χρησιμοποιήθηκαν. Οι MINIMUM -60-

61 SUPPORT και MINIMUM PROBABILITY που επιλέχθηκαν, θεωρούνται πολλοί σημαντικοί για τη δημιουργία του μοντέλου γιατί ορίζουν τον ελάχιστο αριθμό περιπτώσεων για ένα itemset και το ελάχιστο όριο εμπιστοσύνης για έναν κανόνα συσχέτισης. Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING STRUCTURE MovieAssociation ( CustomerID LONG KEY, Gender TEXT DISCRETE, Marital_Status TEXT DISCRETE, MoviePurchase TABLE ( Movie_Name TEXT KEY )) ALTER MINING STRUCTURE MovieAssociation ADD MINING MODEL MovieAssociation ( CustomerID, Gender PREDICT, Marital_Status PREDICT, MoviePurchase PREDICT ( Movie_Name )) USING _Decision_Trees Rules (Minimum_Support=0.02, Minimum_Probability = 0.40) WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [MovieAssociation] ( CustomerID, Gender, Marital_Status, MoviePurchase (SKIP, [Movie_Name]) ) SHAPE { OPENQUERY ([Movie Click], 'SELECT CustomerID, Gender, [Marital Status] FROM Customers ORDER BY CustomerID') } APPEND ( { OPENQUERY ([Movie Click], 'SELECT CustomerID, Movie FROM Movies ORDER BY CustomerID') } RELATE CustomerID To CustomerID ) AS Movie_Purchase Στην εικόνα 27 παρουσιάζονται οι 547 κανόνες συσχέτισης με τη μεγαλύτερη πιθανότητα/εμπιστοσύνη (probability) και σημασία (importance). -61-

62 Εικόνα 27: Κανόνες συσχέτισης του μοντέλου Στην εικόνα 28 απεικονίζει τα itemsets με τη μεγαλύτερη συχνότητα που έχουν δημιουργηθεί από το μοντέλο. Στο μοντέλο που δημιουργήθηκε 560 itemsets έχουν την μεγαλύτερη συχνότητα. Εικόνα 28: Τα itemsets του μοντέλου Η αντίστοιχη σχέση εξάρτησης μεταξύ των μεταβλητών φαίνεται και στο περιβάλλον Dependency Network (εικόνα 29). -62-

63 4.2.2 Πρόβλεψη Εικόνα 29: Η σχέση εξάρτησης μεταξύ των μεταβλητών Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Παρακάτω, απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες SQL Server Analysis Services. SELECT T.CustomerID, Predict (MoviePurchase, 5) AS Recommendation FROM MovieAssociation NATURAL PREDICTION JOIN OPENQUERY([Movie Click], 'SELECT CustomerID, Gender, [Marital Status] FROM Customers') AS T Ενώ, στην εικόνα 30 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. Εικόνα 30: Αποτελέσματα προβλέψεων Αξιολόγηση Η αξιολόγηση του μοντέλου στον αλγόριθμο Association Rules έγινε στο Business Intelligence Development Studio. Η καρτέλα Mining Accuracy Chart του SQL Server -63-

64 2008 R2 παρέχει την επικύρωση των αποτελεσμάτων των μοντέλων πρόβλεψης για τον αλγόριθμο Association Rules. Παρατηρούμε ότι στο διάγραμμα αξιολόγησης Lift Chart το μοντέλο παρουσιάζει μια αρκετά καλή επίδοση και συγκεκριμένα Score Στο μοντέλο που δημιουργήθηκε με ενδεικτικό σημείο το 50% του συνολικού πληθυσμού, το μοντέλο προβλέπει σωστά το 40,73% του πληθυσμού με πιθανότητα 80,99%, ενώ το ιδανικό μοντέλο προβλέπει σωστά το 50% του πληθυσμού (εικόνα 31 και 32). Εικόνα 31: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 32: Αποτελέσματα Lift Chart 4.3 Εφαρμογή του Αλγορίθμου Association Rules στη Βάση Δεδομένων MovieLens Σ αυτήν την ενότητα θα αναπτυχθεί το μοντέλο για τον αλγόριθμο Association Rules στο σύνολο δεδομένων MovieLens Δημιουργία Μοντέλου του Αλγορίθμου Association Rules Για τον αλγόριθμο Association Rules δημιουργήθηκε ένα μοντέλο κανόνων συσχέτισης στον SQL Server Analysis Services με τη γλώσσα Data Mining Extensions -64-

65 (βλ. Παράρτημα Α ). Σκοπός του μοντέλου είναι να προβλέψει ταινίες που συστήνονται στους χρήστες. Για τη δημιουργία του μοντέλου χρειάστηκε να οριστούν ποιοι πίνακες θα χρησιμοποιηθούν (RatedMovies, Movies), ποιες μεταβλητές είναι τα κλειδιά, ποια η μεταβλητή πρόβλεψης και ποιοι παράμετροι χρησιμοποιήθηκαν. Οι MINIMUM SUPPORT και MINIMUM PROBABILITY που επιλέχθηκαν, θεωρούνται πολλοί σημαντικοί για τη δημιουργία του μοντέλου γιατί ορίζουν τον ελάχιστο αριθμό περιπτώσεων για ένα itemset και το ελάχιστο όριο εμπιστοσύνης για έναν κανόνα συσχέτισης. Οι εντολές που χρειάστηκαν φαίνονται παρακάτω: CREATE MINING STRUCTURE AR ( movieid DOUBLE KEY, userid DOUBLE DISCRETE, rating DOUBLE DISCRETE, Movies TABLE( movie_name TEXT KEY )) ALTER MINING STRUCTURE AR ADD MINING MODEL AR ( movieid, userid PREDICT, rating PREDICT, Movies PREDICT (movie_name)) USING Microsoft_Association_Rules(Minimum_Support = 0, Minimum_Probability = 0.40) WITH DRILLTHROUGH INSERT INTO MINING STRUCTURE [AR] ( movieid, userid, rating, Movies(SKIP, [movie_name]) ) SHAPE { OPENQUERY ([Movielens], 'SELECT [movieid], userid, rating FROM Ratedmovies ORDER BY [movieid]') } APPEND ( { OPENQUERY ([Movielens], 'SELECT movieid, movie_name FROM Movies ORDER BY [movieid]') } RELATE [movieid] To [movieid] ) AS Movies Στην εικόνα 33 παρουσιάζονται οι 2000 κανόνες συσχέτισης με τη μεγαλύτερη πιθανότητα/εμπιστοσύνη (probability) και σημασία (importance). -65-

66 Εικόνα 33: Κανόνες συσχέτισης του μοντέλου Στην εικόνα 34 απεικονίζει τα itemsets με τη μεγαλύτερη συχνότητα που έχουν δημιουργηθεί από το μοντέλο. Στο μοντέλο που δημιουργήθηκε 2000 itemsets έχουν την μεγαλύτερη συχνότητα. Εικόνα 34: Τα itemsets του μοντέλου Η αντίστοιχη σχέση εξάρτησης μεταξύ των μεταβλητών φαίνεται και στο περιβάλλον Dependency Network (εικόνα 35). -66-

67 4.3.2 Πρόβλεψη Εικόνα 35: Η σχέση εξάρτησης μεταξύ των μεταβλητών Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Παρακάτω, απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες SQL Server Analysis Services. SELECT T.userID, Predict (Movies, 5) AS Recommendation FROM AR NATURAL PREDICTION JOIN OPENQUERY([Movielens], 'SELECT movieid, userid, rating FROM Ratedmovies') AS T Ενώ, στην εικόνα 36 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. Εικόνα 36: Αποτελέσματα προβλέψεων Αξιολόγηση Η αξιολόγηση του μοντέλου στον αλγόριθμο Association Rules έγινε στο Business Intelligence Development Studio. Η καρτέλα Mining Accuracy Chart του SQL Server 2008 R2 παρέχει την επικύρωση των αποτελεσμάτων των μοντέλων πρόβλεψης για τον αλγόριθμο Association Rules. -67-

68 Παρατηρούμε ότι στο διάγραμμα αξιολόγησης Lift Chart το μοντέλο παρουσιάζει μια αρκετά καλή επίδοση και συγκεκριμένα Score 1. Στο μοντέλο που δημιουργήθηκε με ενδεικτικό σημείο το 50% του συνολικού πληθυσμού, το μοντέλο προβλέπει σωστά το 49,57% του πληθυσμού με πιθανότητα 100%, ενώ το ιδανικό μοντέλο προβλέπει σωστά το 50% του πληθυσμού (εικόνα 37 και 38). Εικόνα 37: Διάγραμμα αξιολόγησης Lift Chart Εικόνα 38: Αποτελέσματα Lift Chart -68-

69 5 Αξιολόγηση Στο κεφάλαιο αυτό αναλύονται τα στατιστικά στοιχεία των βάσεων δεδομένων της MovieClick και MovieLens και στη συνέχεια, γίνεται συγκριτική αξιολόγηση των αλγορίθμων Decision Trees και Association Rules. 5.1 Στατιστικά Στοιχεία Βάσεων Δεδομένων MovieClick και MovieLens Στην παρούσα Διπλωματική Εργασία χρησιμοποιήθηκαν δύο σύνολα δεδομένων από κινηματογραφικές ταινίες. Η πρώτη βάση δεδομένων ονομάζεται MovieClick και αποτελεί μία βάση δεδομένων από videoclub και η δεύτερη βάση ονομάζεται MovieLens και αποτελεί μια βάση δεδομένων κινηματογραφικών ταινιών, η οποία έχει χρησιμοποιηθεί σε πολλές έρευνες βελτιστοποίησης μοντέλων και τεχνικών εξόρυξης δεδομένων (βλ. Παράρτημα Γ ). Σ αυτές τις δυο βάσεις εφαρμόστηκαν οι αλγόριθμοι Time Series, Decision Trees και Association Rules για τα Συστήματα Συστάσεων. Χρειάστηκε όμως να ελεγχθούν και να απομακρυνθούν από αυτά εσφαλμένες τιμές ή και σε κάποιες περιπτώσεις να παραλλαχθούν τα δεδομένα, ώστε να απομονώσουμε τα δεδομένα που θεωρήθηκαν περισσότερο χρήσιμα για τα μοντέλα που αναπτύχθηκαν. Η εισαγωγή αυτών των βάσεων δεδομένων έγινε στον SQL Server 2008 R2 Management Studio. Στο παράρτημα Γ αναφέρονται οι τροποποιήσεις των πινάκων και το πώς αυτοί δημιουργήθηκαν και χρησιμοποιήθηκαν. Στη συνέχεια της ενότητας, θα παρουσιαστούν τα στατιστικά στοιχεία που παρουσιάζουν ενδιαφέρον για τα σύνολα δεδομένων MovieClick και MovieLens Στατιστικά Στοιχεία Βάσης Δεδομένων MovieClick Χρησιμοποιώντας το Business Intelligence Development Studio έγινε μια ανάλυση των στατιστικών αντικειμένων για τη βάση MovieClick. Αρχικά, δημιουργήθηκε ένα νέο Data Source View με τους πίνακες της βάσης MovieClick. Έπειτα, έγινε επιλογή -69-

70 κάποιου πίνακα και κάνοντας Explore Data εμφανίστηκαν τα δεδομένα του πίνακα που επιλέχθηκε. Η νέα καρτέλα που εμφανίζεται περιέχει τα Table, Pivot Table, Chart και Pivot Chart. Χρησιμοποιώντας το Pivot Chart προκύπτουν ορισμένα ενδιαφέροντα στατιστικά στοιχεία μεταξύ των πεδίων του κάθε πίνακα. Αρχικά, επιλέγοντας τον πίνακα Customers και χρησιμοποιώντας τα πεδία Gender και CustomerID, προσδιορίσαμε τα ποστοστά των πελατών ανά φύλο. Στην εικόνα 39 φαίνεται ότι οι περισσότεροι πελάτες είναι άντρες. Εικόνα 39: Το φύλο των πελατών Στο επόμενο διάγραμμα, όπως φαίνεται στην εικόνα 40, οι περισσότεροι πελάτες είναι παντρεμένοι. Ενώ, η αμέσως μεγαλύτερη κατηγορία πελατών είναι εκείνων που δεν έχουν παντρευτεί. Εικόνα 40: Η οικογενειακή κατάσταση των πελατών -70-

71 Στην συνέχεια, εξετάσαμε ανά κατηγορία φύλου ποια είναι η οικογενειακή τους κατάσταση. Όπως φαίνεται στην εικόνα 41, στις γυναίκες οι περισσότερες είναι παντρεμένες και αντίστοιχα και στους άντρες. Επιπλέον, όπως παρατηρείται, υπάρχει ένα πολύ μικρό ποσοστό αντρών πελατών που είναι σε διάσταση, ενώ δεν υπάρχουν σχεδόν καθόλου γυναίκες που είναι διαζευμένες. Εικόνα 41: Φύλο και οικογενειακή κατάσταση των πελατών Στον πίνακα Customers, χρησιμοποιήθηκαν ακόμη τα πεδία CustomerID και Age και φαίνεται από την εικόνα 42 ότι οι περισσότεροι πελάτες είναι ηλικίας 23 με 37 χρονών. Ενώ, υπάρχει ένα πολύ μικρό ποσοστό πελατών που είναι ηλικίας 55 με 57 χρονών. Εικόνα 42: Ηλικία των πελατών -71-

72 Επίσης, στον πίνακα Customers, χρησιμοποιήθηκαν τα πεδία CustomerID και Education Level, όπου προσδιορίζεται ποιο είναι το μορφωτικό επίπεδο των πελατών. Από την εικόνα 43, φαίνεται ότι οι περισσότεροι πελάτες είναι κάτοχοι κάποιου πτυχίου και υπάρχουν αρκετοί που είναι κάτοχοι μεταπτυχιακού τίτλου. Εικόνα 43: Μορφωτικό Επίπεδο των πελατών Στατιστικά Στοιχεία της Βάσης Δεδομένων MovieLens Χρησιμοποιώντας το Business Intelligence Development Studio έγινε μια ανάλυση των στατιστικών αντικειμένων για τη βάση MovieLens. Αρχικά, δημιουργήθηκε ένα νέο Data Source View με τους πίνακες της βάσης MovieLens. Έπειτα, έγινε επιλογή κάποιου πίνακα και κάνοντας Explore Data εμφανίστηκαν τα δεδομένα του πίνακα που επιλέχθηκε. Η νέα καρτέλα που εμφανίζεται περιέχει τα Table, Pivot Table, Chart και Pivot Chart. Χρησιμοποιώντας το Pivot Chart προκύπτουν ορισμένα στατιστικά στοιχεία μεταξύ των πεδίων του κάθε πίνακα. Αρχικά, επιλέγοντας τον πίνακα RatedMovies και χρησιμοποιώντας τα πεδία Rating και MovieID, προσδιορίζονται οι βαθμολογίες που παίρνουν οι ταινίες. Στην εικόνα 44 φαίνεται ότι οι βαθμολογίες που παίρνει κάθε ταινία είναι από 0 μέχρι 5 και οι περισσότερες ταινίες έχουν βαθμολογηθεί με 4. Ενώ, η επόμενη βαθμολογία που παίρνουν οι ταινίες είναι

73 Εικόνα 44: Βαθμολογίες που παίρνει κάθε ταινία Στη συνέχεια, προσδιορίζονται τα έτη που ξεκίνησαν να βαθμολογούν οι πελάτες τις ταινίες. Στην εικόνα 45 φαίνεται ότι οι πελάτες ξεκίνησαν να βαθμολογούν ταινίες από το 1997 και σταμάτησαν το Το 2006 ήταν η χρονιά που βαθμολόγησαν τις περισσότερες ταινίες. Παρατηρείται ότι το 2009 έχει μειωθεί κατά πολύ ο αριθμός των πελατών που βαθμολόγησαν ταινίες. Αυτό οφείλεται στο γεγονός ότι το 2009 σταματά η εισαγωγή δεδομένων στη βάση δεδομένων MovieLens. Εικόνα 45: Τα έτη που βαθμολογήθηκαν οι ταινίες Στον πίνακα Movies, χρησιμοποιήθηκαν τα πεδία MovieID και Year και προσδιορίζονται οι χρονολογίες που βγήκαν οι ταινίες.παρατηρείται από την εικόνα

74 ότι οι χρονολογίες που βγήκαν οι ταινίες, είναι από το 1915 μέχρι και το Οι περισσότερες ταινίες που συμμετέχουν είναι της χρονολογίας Εικόνα 46: Χρονολογίες ταινιών Ακόμη, στον ίδιο πίνακα χρησιμοποιώντας το Explore Data για τα πεδία UserID, Rating και Date Year, προσδιορίζεται ποια χρονιά οι πελάτες βαθμολόγησαν με μεγαλύτερο βαθμό τις ταινίες. Φαίνεται από την εικόνα 47 ότι οι περισσότεροι πελάτες βαθμολογούσαν ταινίες περισσότερο από το 2005 μέχρι και το Ενώ, παρουσιάζεται μια ξαφνική μείωση το Παρατηρείται ακόμη, ότι το 2006 και το 2007 οι περισσότερες ταινίες πήραν βαθμό 4. Ενώ, οι περισσότεροι πελάτες βαθμολόγησαν με 3 το 2006 και το Εικόνα 47: Ποια χρονιά οι χρήστες βαθμολογούσαν περισσότερο ταινίες -74-

75 5.2 Αξιολόγηση Στην ενότητα αυτή, γίνεται η σύγκριση των αλγορίθμων Decision Trees και Association Rules, ώστε να αξιολογηθούν τα αποτελέσματα τους με σκοπό να αποτελέσουν το καλύτερο Σύστημα Συστάσεων για τις βάσεις δεδομένων MovieClick και MovieLens. Αρχικά, παρουσιάζεται η μέθοδος αξιολόγησης και τα μέτρα απόδοσης που ακολουθήθηκαν και στη συνέχεια, τα διαγράμματα με τα αποτελέσματα της αξιολόγησης Μέθοδος Αξιολόγησης Η αξιολόγηση που έγινε στους αλγορίθμους Decision Trees και Association Rules, θεωρεί ότι η κατανομή των ταινιών του κάθε χρήστη-αντικειμένου, διαχωρίστηκε σε δύο σύνολα. Το πρώτο σύνολο είναι το σύνολο εκπαίδευσης (training set) που χρησιμοποιείται, για να δημιουργήσει το μοντέλο εξόρυξης. Ενώ, το δεύτερο σύνολο είναι το σύνολο δοκιμών (testing set) που χρησιμοποιείται, για να ελέγξει την ακρίβεια του μοντέλου. Μετά τη διαίρεση του συνόλου δεδομένων σε training και testing set, δημιουργήθηκαν οι πίνακες ομοιότητας για κάθε αλγόριθμο ξεχωριστά. Ο καθένας από τους αλγορίθμους, θα αξιολογηθεί σε σχέση με τη σειρά των τιμών που συστήνονται. Συγκεκριμένα, θα αξιολογήσουμε την απόδοση των αλγορίθμων με ακρίβεια (precision), ανάκληση (recall) και την αρμονική μέση τιμή (F-measure), ενώ ο αριθμός των παρεχόμενων συστάσεων θα ποικίλει ανάλογα με τις τιμές (1, 2, 3, 4, 5). Επιπλέον, το ποσοστό των παρατηρούμενων τιμών της σύνθεσης που θα χρησιμοποιηθεί, πρέπει να ποικίλλει ανάλογα με τις τιμές: 0.2, 0.4, 0.6 και Μέτρα Απόδοσης Ένα σύστημα συστάσεων, παρέχει σε ένα χρήστη (u), τη λίστα L = {M 1,..., M N } με top Ν τις ταινίες που συστήνονται. Για να μετρηθεί η ακρίβεια της σύστασης της λίστας L, χρησιμοποιούμε τα μέτρα, ακρίβεια και ανάκληση. Ειδικότερα, το Ν δηλώνει το μέγεθος των συστάσεων της λίστας L, το RL υποδηλώνει τον αριθμό των σχετικών αντικειμένων, δηλαδή εκείνων που έχουν βαθμολογηθεί θετικά από κάποιον χρήστη που περιλαμβάνονται στο L, και το R υποδηλώνει το συνολικό αριθμό των σχετικών αντικειμένων για κάποιον χρήστη που έχει βαθμολογήσει θετικά. Η ακρίβεια (precision) και η ανάκληση (recall) ορίζονται ως εξής: -75-

76 Precision είναι ο λόγος N RL [25]. RL Recall είναι ο λόγος [25]. R Χρησιμοποιήθηκε ακόμα και η αρμονική μέση τιμή (F-measure), η οποία υπολογίζεται συνδυάζοντας το Precision και το Recall. Η αρμονική μέση τιμή ορίζεται ως: Recall Precision F 2 [12]. Recall Precision Αξιολόγηση στη Βάση Δεδομένων MovieClick Για την αξιολόγηση των αλγορίθμων για τη βάση δεδομένων MovieClick έγιναν διάφορα πειράματα. Αρχικά, επιλέχθηκαν τα μοντέλα τα οποία κάνουν καλύτερη σύσταση χρησιμοποιώντας αυτές τις παραμέτρους που πληρούν καλύτερα τις προϋποθέσεις και τους στόχους που έχουμε βάλει. Το training set ήταν 60%, ενώ το testing set ήταν 40%. Στο διάγραμμα στην εικόνα 48 απεικονίζονται τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Decision Trees. Το μοντέλο DT1 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = και MAXIMUM OUTPUT ATTRIBUTES = 20000, ενώ το μοντέλο DT2 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = 20000, MAXIMUM OUTPUT ATTRIBUTES = και MINIMUM SUPPORT = 20. Σύμφωνα με το διάγραμμα Precision Recall στην εικόνα 48, το μοντέλο που θα χρησιμοποιηθεί για τα πειράματα της αξιολόγησης είναι το μοντέλο DT1, γιατί κάνει καλύτερες συστάσεις ταινιών. Εικόνα 48: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees -76-

77 Στο διάγραμμα στην εικόνα 49 απεικονίζονται τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Association Rules. Το μοντέλο AR1 χρησιμοποιεί τις παραμέτρους MINIMUM PROBABILITY = 0.4 και MINIMUM SUPPORT = 0.02, ενώ το μοντέλο AR2 χρησιμοποιεί τις παραμέτρους MINIMUM IMPORTANCE =1.5 και MINIMUM SUPPORT = 0. Σύμφωνα με το διάγραμμα Precision Recall στην εικόνα 49, το μοντέλο που θα χρησιμοποιηθεί για τα πειράματα της αξιολόγησης είναι το μοντέλο AR1, γιατί κάνει καλύτερες συστάσεις ταινιών. Εικόνα 49: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Association Rules Στη συνέχεια, έγινε η αξιολόγηση της ακρίβειας (precision) και της ανάκλησης (recall) για τη σύσταση 5 ταινιών για κάθε χρήστη. Στην εικόνα 50 απεικονίζεται το διάγραμμα του πειράματος και παρατηρείται ότι ο αλγόριθμος Association Rules κάνει λίγο καλύτερες συστάσεις, σε αντίθεση με τον αλγόριθμο Decision Trees. Εικόνα 50: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules -77-

78 Το επόμενο διάγραμμα στην εικόνα 51, δείχνει την αρμονική μέση τιμή (Fmeasure) με τις 5 ταινίες που συστήνονται. Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει μια μικρή ανοδική απόδοση για κάθε σύσταση ταινίας, ενώ ο αλγόριθμος Decision Trees έχει λίγο καλύτερη απόδοση από τον αλγόριθμο Association Rules. Όταν συστήνονται 4 ταινίες, έχουμε την καλύτερη απόδοση του αλγορίθμου Association Rules. Εικόνα 51: Διάγραμμα F-measure Vs Top N λίστα προτεινόμενων ταινιών Το διάγραμμα στην εικόνα 52, δείχνει την αρμονική μέση τιμή (F-measure) με διαφορετικό train set. Χρησιμοποιήθηκαν τα training sets (20%, 40%, 60%, 80%) με τα αντίστοιχα testing sets (80%, 60%, 40%, 20%). Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει μια σταθερή απόδοση για κάθε training set, ενώ ο αλγόριθμος Decision Trees έχει καλύτερη απόδοση από τον αλγόριθμο Association Rules. Στο training set 40%, έχουμε την ίδια απόδοση και των δυο αλγορίθμων. Εικόνα 52: Διάγραμμα F-measure Vs Training Set percentages -78-

79 5.2.4 Αξιολόγηση στη Βάση Δεδομένων MovieLens Για την αξιολόγηση των αλγορίθμων για τη βάση δεδομένων MovieLens έγιναν διάφορα πειράματα. Αρχικά, χωρίστηκε ο πίνακας RatedMovies στους χρήστες που έχουν βαθμολογήσει πάνω από 500 ταινίες και στους χρήστες που έχουν βαθμολογήσει κάτω από 100 ταινίες (βλ. Παράρτημα Γ ). Έπειτα, επιλέχθηκαν τα μοντέλα τα οποία κάνουν καλύτερες συστάσεις χρησιμοποιώντας αυτές τις παραμέτρους που έχουν καλύτερη απόδοση. Το training set ήταν 60%, ενώ το testing set ήταν 40%. Στο διάγραμμα στην εικόνα 53 απεικονίζονται τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Decision Trees για τους χρήστες που έχουν βαθμολογήσει πάνω από 500 ταινίες. Το μοντέλο DT1 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = και MAXIMUM OUTPUT ATTRIBUTES =20000, ενώ το μοντέλο DT2 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = 20000, MAXIMUM OUTPUT ATTRIBUTES = και COMPLEXITY PENALTY = Σύμφωνα με το διάγραμμα Precision Recall στην εικόνα 53, το μοντέλο που θα χρησιμοποιηθεί για τα πειράματα της αξιολόγησης είναι το μοντέλο DT1, γιατί κάνει πολύ καλύτερες συστάσεις ταινιών. Εικόνα 53: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees Για τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Association Rules για τους χρήστες που έχουν βαθμολογήσει πάνω από 500 ταινίες, παρατηρήθηκε ότι τα δυο μοντέλα κάνουν τις ίδιες συστάσεις, χωρίς να επηρεάζονται από τις παραμέτρους. Οι παράμετροι που χρησιμοποιήθηκαν για το μοντέλο AR1 ήταν η MINIMUM PROBABILITY = 0.4 και η MINIMUM SUPPORT = 0.02, ενώ για το μοντέλο AR2 η -79-

80 MINIMUM PROBABILITY = 0.6 και η MAXIMUM ITEMSET SIZE = 2. Το μοντέλο που επιλέχθηκε για τα πειράματα είναι το AR1. Στο διάγραμμα στην εικόνα 54 απεικονίζονται τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Decision Trees για τους χρήστες που έχουν βαθμολογήσει κάτω από 100 ταινίες. Το μοντέλο DT1 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = και MAXIMUM OUTPUT ATTRIBUTES = 20000, ενώ το μοντέλο DT2 χρησιμοποιεί τις παραμέτρους MAXIMUM INPUT ATTRIBUTES = 20000, MAXIMUM OUTPUT ATTRIBUTES = και COMPLEXITY PENALTY = Σύμφωνα με το διάγραμμα Precision Recall στην εικόνα 54, το μοντέλο που θα χρησιμοποιηθεί για τα πειράματα της αξιολόγησης είναι το μοντέλο DT1, γιατί κάνει πολύ καλύτερες συστάσεις ταινιών. Εικόνα 54: Διάγραμμα Precision Recall για τη σύγκριση 2 διαφορετικών μοντέλων του αλγορίθμου Decision Trees Για τα μοντέλα που δημιουργήθηκαν για τον αλγόριθμο Association Rules για τους χρήστες που έχουν βαθμολογήσει κάτω από 100 ταινίες, παρατηρήθηκε ότι τα δυο μοντέλα κάνουν τις ίδιες συστάσεις, χωρίς να επηρεάζονται από τις παραμέτρους. Οι παράμετροι που χρησιμοποιήθηκαν για το μοντέλο AR1 ήταν η MINIMUM PROBABILITY = 0.4 και η MINIMUM SUPPORT = 0.02, ενώ για το μοντέλο AR2 η MINIMUM PROBABILITY = 0.6 και η MAXIMUM ITEMSET SIZE = 2. Το μοντέλο που επιλέχθηκε για τα πειράματα είναι το AR1. Στη συνέχεια, έγινε η αξιολόγηση της ακρίβειας (precision) και της ανάκλησης (recall) για τη σύσταση 5 ταινιών για κάθε χρήστη που έχει βαθμολογήσει πάνω από 500 ταινίες. Στην εικόνα 55 απεικονίζεται το διάγραμμα του πειράματος και -80-

81 διαπιστώνεται ότι ο αλγόριθμος Association Rules κάνει πολύ καλύτερες προβλέψεις, σε αντίθεση με τον αλγόριθμο Decision Trees. Εικόνα 55: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules Το επόμενο διάγραμμα στην εικόνα 56, δείχνει την αρμονική μέση τιμή (Fmeasure) με τις 5 ταινίες που συστήνονται. Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει καλύτερη απόδοση για κάθε σύσταση ταινίας, ενώ ο αλγόριθμος Decision Trees έχει χαμηλότερη απόδοση από τον αλγόριθμο Association Rules. Όταν συστήνεται 1 ταινία, έχουμε την καλύτερη απόδοση του αλγορίθμου Association Rules. Εικόνα 56: Διάγραμμα F-measure Vs Top N λίστα προτεινόμενων ταινιών Το διάγραμμα στην εικόνα 57, δείχνει την αρμονική μέση τιμή (F-measure) με διαφορετικό train set. Χρησιμοποιήθηκαν τα training sets (20%, 40%, 60%, 80%) με τα αντίστοιχα testing sets (80%, 60%, 40%, 20%). Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει την καλύτερη απόδοση για κάθε training set, ενώ ο -81-

82 αλγόριθμος Decision Trees έχει χαμηλότερη απόδοση από τον αλγόριθμο Association Rules. Στο training set 20%, βλέπουμε τη μεγάλη διαφορά των δυο αλγορίθμων. Ο αλγόριθμος Decision Trees έχει πολύ χαμηλή απόδοση με αποτέλεσμα να γίνεται αισθητό πόσο αποδοτικός είναι ο αλγόριθμος Association Rules για τα Συστήματα Συστάσεων στις κινηματογραφικές ταινίες. Εικόνα 57: Διάγραμμα F-measure Vs Training Set percentages Το διάγραμμα στην εικόνα 58, δείχνει την αρμονική μέση τιμή (F-measure) με διαφορετική βάση δεδομένων στα έτη που έχουν βαθμολογηθεί οι ταινίες. Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει καλύτερες αποδόσεις για κάθε βάση δεδομένων χωρισμένη σε λιγότερες χρονιές, ενώ ο αλγόριθμος Decision Trees έχει χαμηλότερη απόδοση από τον αλγόριθμο Association Rules. Στη βάση δεδομένων με τα έτη , βλέπουμε τη μεγάλη διαφορά των δυο αλγορίθμων. Ο αλγόριθμος Decision Trees έχει πολύ χαμηλή απόδοση σε σχέση με τον αλγόριθμο Association Rules. Παρατηρείται μια σταθερή απόδοση στη βάση δεδομένων για τα έτη και Εικόνα 58: Διάγραμμα F-measure Vs Years -82-

83 Ακόμη, έγινε η αξιολόγηση της ακρίβειας (precision) και της ανάκλησης (recall) για τη σύσταση 5 ταινιών για κάθε χρήστη που έχει βαθμολογήσει κάτω από 100 ταινίες. Το training set ήταν 60%, ενώ το testing set ήταν 40%. Στην εικόνα 59 απεικονίζεται το διάγραμμα του πειράματος και διαπιστώνεται ότι ο αλγόριθμος Association Rules κάνει περίπου τις ίδιες συστάσεις με τον αλγόριθμο Decision Trees. Αυτό συμβαίνει, γιατί ο κάθε χρήστης βαθμολογεί λίγες ταινίες και υπάρχει αραιότητα μεταξύ των δεδομένων. Εικόνα 59: Διάγραμμα Precision Recall για τη σύγκριση των αλγορίθμων Decision Trees και Association Rules Το επόμενο διάγραμμα στην εικόνα 60, δείχνει την αρμονική μέση τιμή (Fmeasure) με τις 5 ταινίες που συστήνονται. Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει καλύτερη απόδοση για κάθε σύσταση ταινίας, ενώ ο αλγόριθμος Decision Trees έχει λίγο χαμηλότερη απόδοση από τον αλγόριθμο Association Rules. Όταν συστήνεται 1 ταινία, έχουμε την καλύτερη απόδοση του αλγορίθμου Association Rules και Decision Trees. Εικόνα 60: F-measure για τα 5 tops -83-

84 Το διάγραμμα στην εικόνα 61, δείχνει την αρμονική μέση τιμή (F-measure) με διαφορετικό train set. Χρησιμοποιήθηκαν τα training sets (20%, 40%, 60%, 80%) με τα αντίστοιχα testing sets (80%, 60%, 40%, 20%). Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει σχεδόν σταθερή απόδοση για κάθε training set, το οποίο συμβαίνει και στον αλγόριθμο Decision Trees. Εικόνα 61: Διάγραμμα F-measure Vs Training Set percentages Το διάγραμμα στην εικόνα 62, δείχνει την αρμονική μέση τιμή (F-measure) με διαφορετική βάση δεδομένων στα έτη που έχουν βαθμολογηθεί οι ταινίες. Στη βάση δεδομένων με τα έτη , βλέπουμε την ίση απόδοση των δυο αλγορίθμων. Ο αλγόριθμος Decision Trees έχει πολύ χαμηλή απόδοση σε σχέση με τον αλγόριθμο Association Rules στη βάση δεδομένων για τα έτη Παρατηρείται μια σταθερή απόδοση στη βάση δεδομένων για τα έτη Από το διάγραμμα φαίνεται ότι ο αλγόριθμος Association Rules έχει χαμηλότερες αποδόσεις στη βάση δεδομένων για τα έτη και για τα έτη και αυτό συμβαίνει λόγω της αραιότητας των δεδομένων. Εικόνα 62: F-measure Vs Years -84-

85 6 Συμπεράσματα Τα Συστήματα Συστάσεων είναι μια νέα, συνεχώς αναπτυσσόμενη τεχνολογία που έχει μπει δυναμικά στο χώρο του διαδικτύου. Αποτελούν ένα πολύτιμο εργαλείο, τόσο για τους πελάτες που τους κατατοπίζουν μέσα σε μία πληθώρα προϊόντων, όσο και για τις εταιρείες που ουσιαστικά τις βοηθούν να προβάλουν τα προϊόντα τους με τον αποδοτικότερο τρόπο. Συγκεκριμένα, σκοπός τους είναι να προτείνουν στον χρήστη προϊόντα που θα τον ενδιαφέρουν και θα τον βοηθήσουν να καταλήξει σε μια απόφαση. Στα πλαίσια αυτής της Διπλωματικής Εργασίας, αναπτύχθηκαν τα Συστήματα Συστάσεων μαζί με διάφορους αλγορίθμους σε βάσεις δεδομένων για κινηματογραφικές ταινίες, με σκοπό να προταθεί ο αλγόριθμος που κάνει τις καλύτερες συστάσεις ταινιών στους χρήστες, έτσι ώστε να καταλήξουμε σε χρήσιμα συμπεράσματα. Η εμπειρία που αποκτήθηκε με την ολοκλήρωση της εργασίας ήταν πλούσια και σημαντική τόσο υπό το πρίσμα της βιβλιογραφικής ανασκόπησης Συστημάτων Συστάσεων και των διαφόρων αλγορίθμων εξόρυξης δεδομένων στον MS SQL Server 2008 R2, όσο και της αξιολόγησης των αποτελεσμάτων. Αρχικά, έγινε προσπάθεια να αξιολογήσουμε τα αποτελέσματα πρόβλεψης του αλγορίθμου Times Series. Ο συγκεκριμένος αλγόριθμος προσπάθησε να προβλέψει τις βαθμολογίες των ταινιών για τα επόμενα 5 χρόνια. Για να γίνει πιο σωστή η αξιολόγηση των αποτελεσμάτων, επιλέχθηκε το έτος 2012, ώστε να συγκριθούν τα αποτελέσματα με τα δίκτυα IMDb και Rotten Tomatoes. Επιλέγοντας αυτά τα δίκτυα που είναι πολύ γνωστά για τη χρήση Συστημάτων Συστάσεων, ελέγχθηκαν οι βαθμολογίες που έχουν βάλει οι χρήστες τη χρονιά 2012, ώστε να συγκριθούν με τις βαθμολογίες που πρόβλεψε ο αλγόριθμος Times Series. Διαπιστώθηκε ότι ο αλγόριθμος κάνει πολύ αξιόπιστες προβλέψεις βαθμολογιών. Στη συνέχεια, έγινε αξιολόγηση των βαθμολογιών που βάζει ο κάθε χρήστης και των μέσων όρων των βαθμολογιών που έχει κάθε ταινία για κάθε χρονιά ξεχωριστά. Αυτό που παρατηρήθηκε είναι ότι οι μέσοι όροι των βαθμολογιών που έχει κάθε ταινία -85-

86 για κάθε χρονιά ξεχωριστά, έχουν πολύ μικρή απόκλιση από τα δίκτυα IMDb και Rotten Tomatoes με αποτέλεσμα ο αλγόριθμος να προβλέπει σωστότερα. Με βάση τις δοκιμές που δημιουργήθηκαν, θα προσπαθήσουμε στη συνέχεια, να διατυπώσουμε ορισμένα πιο συγκεκριμένα συμπεράσματα όσον αφορά τη σύγκριση των αλγορίθμων Decision Trees και Association Rules. Από την ανάλυση που προηγήθηκε θα μπορούσαμε να συμπεράνουμε ότι ο SQL Server αποτελεί ένα ολοκληρωμένο λογισμικό που προσφέρει πληθώρα εργαλείων για τα Συστήματα Συστάσεων. Για τη δημιουργία των μοντέλων παρουσιάστηκαν κάποια προβλήματα με τον όγκο των δεδομένων. Αυτό είχε ως αποτέλεσμα την ανάπτυξη δοκιμαστικών μοντέλων πρόβλεψης, πριν καταλήξουμε στα τελικά αποτελέσματα τα οποία και παρουσιάστηκαν. Πολλές φορές, χρειάστηκαν αρκετά λεπτά ή και ώρες για την επεξεργασία του μοντέλου από τον υπολογιστή. Η μεγάλη αποθήκη δεδομένων είχε οδηγήσει σε ανάλωση τεραστίων ποσοτήτων λειτουργικής μνήμης και αποθηκευτικού όγκου. Άλλο ένα αντικείμενο που συνέβαλλε στη δημιουργία των συγκεκριμένων μοντέλων είναι και η ταχύτητα εκτέλεσης των αλγορίθμων. Η δημιουργία των μοντέλων για τη σύσταση ταινιών έγινε στους αλγορίθμους Decision Trees και Association Rules στον MS SQL Server 2008 R2. Και οι δυο αλγόριθμοι είναι γνωστοί, για να προβλέπουν ταινίες στους χρήστες. Πέρα όμως από τις επιμέρους λεπτομέρειες δημιουργίας των μοντέλων που χρησιμοποιήθηκαν στους αλγορίθμους, κύριο χαρακτηριστικό επιλογής των κατάλληλων αλγορίθμων ήταν η ακρίβεια, καθώς θα έπρεπε να ερευνηθεί ποιος από τους δυο αλγορίθμους κάνει πιο αξιόπιστες συστάσεις ταινιών. Η αναλυτική αξιολόγηση των αλγορίθμων οδήγησε στη σωστότερη επιλογή συστάσεων. Σκοπός των πειραμάτων που αναπτύχθηκαν στις βάσεις δεδομένων MovieClick και MovieLens, ήταν να αναζητηθεί ποιος αλγόριθμος θεωρείται καλύτερος στα Συστήματα Συστάσεων για ταινίες. Χρειάστηκε να γίνουν αρκετά πειράματα στη δημιουργία των μοντέλων αλλά και των δεδομένων που θα αναλύονταν. Δημιουργήθηκαν μοντέλα με διαφορετικά χαρακτηριστικά εισόδου, αλλά και διαφορετικές παραμέτρους, μέχρι να βρεθούν τα μοντέλα που επιλέχθηκαν. Το επόμενο βήμα, ήταν η σύγκριση των δυο αλγορίθμων, ώστε να υπάρχει μια απάντηση στο ερώτημα "Ποιος αλγόριθμος είναι ποιο αξιόπιστος;". Η χρήση των δυο -86-

87 βάσεων δεδομένων MovieClick και MovieLens, είχε ως στόχο να διαπιστωθεί αν όντως οι αλγόριθμοι κάνουν καλές συστάσεις, αλλά και ποια κριτήρια παίζουν ρόλο. Μετά από μια χρονοβόρα διαδικασία διαπιστώθηκε ότι ο αλγόριθμος Association Rules θεωρείται καλύτερος, για να κάνει συστάσεις στους χρήστες και συγκεκριμένα, όταν υπάρχει πληθώρα ταινιών. Παρατηρήθηκε ότι ο όγκος των ταινιών παίζει σημαντικό ρόλο και πιο συγκεκριμένα, ο αριθμός των ταινιών που έχει βαθμολογήσει ο χρήστης. Στην περίπτωση της βάσης δεδομένων MovieClick, οι χρήστες δεν είχαν βαθμολογήσει πάνω από μια ταινία, ενώ στη βάση δεδομένων MovieLens, υπήρχαν χρήστες που είχαν βαθμολογήσει πάνω από 500 ταινίες και άλλοι κάτω από 100 ταινίες. Ο αλγόριθμος Association Rules θεωρείται πιο αξιόπιστος για τα Συστήματα Συστάσεων, όταν έχουμε Συνεργατικό Φιλτράρισμα, όπως συνέβη και στην παρούσα εργασία. Αυτό συμβαίνει, γιατί υπάρχει η δυνατότητα δημιουργίας κανόνων συσχέτισης και συσχέτισης με τη μεταβλητή την οποία θέλουμε να προβλέψουμε. Σε περίπτωση που χρειάζεται να συγκριθούν οι συστάσεις, ο αλγόριθμος Decision Trees θεωρείται μια καλή επιλογή σε σύγκριση με τον αλγόριθμο Association Rules. Ολοκληρώνοντας την παρούσα Διπλωματική Εργασία μπορούμε αναμφισβήτητα να πούμε ότι η διαδικασία εξόρυξης δεδομένων χρήσης για Συστήματα Συστάσεων είναι μία συνεχώς αναπτυσσόμενη τεχνολογία με ευρεία εφαρμογή στον τομέα των ταινιών, με αποτέλεσμα να τα χρησιμοποιούν πολλοί δικτυακοί τόποι, για να προτείνουν ταινίες στους χρήστες. -87-

88 -88-

89 7 Βιβλιογραφία 1. Adomavicius, G., Sankaranarayanan, S., Sen, S. and Tuzhilin, A. (2005) Incorporating Contextual Information in Recommender Systems Using a Multidimensional Approach, ACM Transactions on Information Systems, vol. 23, no. 1, pp Agrawal, R., Imielinski, T., and Swami, A. (1993) Mining association rules between sets of items in large databases. In Proc. of the ACM SIGMOD Conference on Management of Data, Washington, pp Agrawal, R., Mannila, H., Srikant, R., Toivonen, H. and Verkamo, A. (1997) Fast discovery of association rules, American Association for Artificial Intelligence Menlo Park, USA, pp Berry, M. and Linoff, G. (2004) Data Mining Techniques: For Marketing, Sales, and Customer Relationship Management, 2 nd Edition, Indianapolis: John Wiley & Sons. 5. Buckland, M and Gey, F. (1994) The Relationship between Recall and Precision, Journal of the American Society for Information Science, vol. 45, no. 1, pp Burke, R. (2007) Hybrid Web Recommender Systems, Lecture Notes in Computer Science, vol. 4321, pp Davis, J. and Goadrich, M. (2006) The Relationship Between Precision-Recall and ROC Curves, Proceedings of the 23rd international conference on Machine learning, pp Fahmi, I. (2004) Examining learning algorithms for text classification in digital libraries., 2004 Master Thesis thesis, University of Groningen, Netherland. 9. Han, J. and Kamber, M. (2005) Data Mining: Concepts and Techniques, 2 nd Edition, San Francisco: Morgan Kaufmann Publishers. -89-

90 10. Hand, D., Mannila, H. and Smyth, P. (2001) Principles of Data Mining (Adaptive Computation and Machine Learning, Cambridge, MA: MIT Press. 11. Hastie, T., Tibshirani, R. and Friedman, J. (2003) The Elements of Statistical Learning, New York: Springer Verlag. 12. Herlocker, J., Konstan, J., Terveen, L. and Riedl J. (2004) Evaluating collaborative filtering recommender systems, ACM Transactions on Information Systems, vol. 22, no. 1, pp Jung, J. (2012) Attribute selection-based recommendation framework for shorthead user group: An empirical study by MovieLens and IMDB, Expert Systems with Applications, vol. 39, no. 4, pp Lin, W., Alvarez, S. and Ruiz, C. (2002) Efficient Adaptive-Support Association Rule Mining for Recommender Systems, Data Mining and Knowledge Discovery, vol. 6, no. 1, pp MacLennan, J., Tang, Z. and Crivat, B. (2008) Data Mining with Microsoft SQL Server 2008, Indianapolis: Wiley Publishing, Inc. 16. Manos Papagelis, M. and Plexousakis, D. (2005) Qualitative analysis of userbased and item-based prediction algorithms for recommendation agents, Engineering Applications of Artificial Intelligence vol.18, pp Mobasher, Β. (2007) Data Mining for Web Personalization, The Adaptive Web, pp O Donovan, J. and Smyth, B. (2005) Trust in Recommender Systems, Proceedings of the 10th international conference on Intelligent user interfaces, pp Papagelis, M. and Plexousakis, D. (2005) Qualitative analysis of user-based and item-based prediction algorithms for recommendation agents, Journal Engineering Applications of Artificial Intelligence, vol. 18, no. 7, pp Park, D., Kim, K., Choi, I. and Kim, J. (2011) A Review and Classification of Recommender Systems Research, International Proceedings of Economics Development & Research, vol. 5, no. 1, pp Rajaraman, A., Leskovec, J. and Ullman, J. (2011) Mining of Massive Datasets, Cambridge University Press. -90-

91 22. Ruotsalo, T. (2010) Methods and Applications for Ontology-based Recommender Systems, Doctoral Dissertation. 23. Sarwar, B., Karypis, G., Konstan, J and Riedl, J. (2001) Item-based collaborative filtering recommendation algorithms. In Proc. WWW Conf., pp Sattari, M., Toroslu, I., Senkul, P., Manguoglu, M., Symeonidis, P. and Manolopoulos, Y. (2012) Geo-activity Recommendations by using Improved Feature Combination, UbiComp Workshop On Location-Based Social Networks, USA. 25. Symeonidis, P. and Manolopoulos, Y. (2011) Explaining recommendations of Movies in Web Video Rental Businesses, Proceedings of the 2nd Symposium on Business Informatics in Central and Eastern Europe, Romania. 26. Symeonidis P., Nanopoulos A., Manolopoulos Y. (2009) MovieExplain: A Recommender System with Explanations, Proceedings of the 3rd ACM Conference inσύστημα Συστάσεωνs, pp Symeonidis, P., Nanopoulos, A., & Manolopoulos, Y. (2007) Feature-weighted user model for recommender systems, Proceedings of the 11th international conference on User Modeling, vol. 4511, pp Tan, P., Steinbach, M. and Kumar V. (2006) Introduction to Data Mining, Addison Wesley. 29. Ujjin, S. and Bentley, P. (2001) Building a Lifestyle Recommender System, ( 30. Vozalis, E. and Margaritis, K. (2003) Analysis of Recommender Systems Algorithms, The 6th Hellenic European Conference on Computer Mathematics & its Applications HERCMA, Greece. 31. Cross-Validation, [15/2/2013] 32. Intermediate Data Mining Tutorial, [15/2/2013] 33. MovieLens Dataset, README.html [15/2/2013] 34. Recommender Systems, [23/2/2013] -91-

92 35. SQL Server Analysis Services - Data Mining, [15/2/2013] 36. SQL Server, [15/2/2013] 37. SQL Server Database Engine, [15/2/2013] -92-

93 Παράρτημα A 1 Data Mining Extensions στον SQL Η ενότητα αυτή παρέχει μια επισκόπηση της γλώσσας ερωτημάτων που δημιουργούνται για την εκτέλεση εργασιών εξόρυξης δεδομένων Data Mining Extensions (DMX) στον SQL. 1.1 Η Σύνταξη του Ερωτήματος στο DMX Το DMX είναι μια γλώσσα που μοιάζει πολύ με την εντολή SQL, πράγμα που σημαίνει ότι θα χρειαστούμε κάποιο πρόγραμμα για να εκτελέσει τις δηλώσεις που προβλέπονται στο παρόν τμήμα. Μπορούμε εύκολα να χρησιμοποιήσουμε τον SQL Server Management Studio και να εκτελέσει τις δηλώσεις DMX. Κατά συνέπεια, τα τρία βασικά βήματα της εξόρυξης δεδομένων που περιγράφονται παρακάτω είναι η: Δημιουργία Εκπαίδευση Πρόβλεψη Δημιουργία Δομής εξόρυξης Επειδή το DMX σχεδιάστηκε για να είναι όσο δυνατόν γίνεται παρόμοιο με τον SQL, η δημιουργία δομών και μοντέλων εξόρυξης μοιάζει πολύ με τη δημιουργία πινάκων στον SQL. Η σύνταξη είναι πολύ απλή, γιατί υπάρχουν λιγότερες επιλογές και υπάρχουν ορισμένα πρόσθετα χαρακτηριστικά γνωρίσματα. Στην εντολή παρακάτω φαίνεται η δημιουργία ενός mining structure (δομή εξόρυξης) με τις στήλες CustID, Name, Gender, Age, CarMake και CarModel. Επιπλέον, η στήλη CustID είναι το κλειδί της δομής και οι στήλες CustID και Age είναι ακέραιοι, ενώ οι υπόλοιπες στήλες είναι κείμενο. Ο τύπος περιεχομένου δείχνει εάν η στήλη θα πρέπει να είναι κατηγορηματική ή συνεχής. CREATE MINING STRUCTURE [People1] ( [CustID] LONG KEY, [Name] TEXT DISCRETE, -93-

94 [Gender] TEXT DISCRETE, [Age] LONG CONTINUOUS, [CarMake] TEXT DISCRETE, [CarModel] TEXT DISCRETE ) Η εντολή CREATE MINING STRUCTURE περιέχει το όνομα της δομής και τον κατάλογο στηλών. Το πιο σημαντικό μέρος είναι η λίστα των στηλών. Κάθε στήλη έχει το όνομα, τον τύπο δεδομένων, το είδος περιεχομένου, κάποιες προαιρετικές επιλογές μοντελοποίησης και καμιά φορά, την κατανομή των δεδομένων. Ένθετοι πίνακες Ένας ένθετος πίνακας ορίζεται ως δομή, με ένα όνομα και έναν κατάλογο στηλών, όπως φαίνεται στην εντολή παρακάτω. Σε αντίθεση με την δομή εξόρυξης, ένας ένθετος πίνακας έχει μόνο μία στήλη που είναι το κλειδί του ένθετου πίνακα. CREATE MINING STRUCTURE [People3] ( [CustID] LONG KEY, [Name] TEXT DISCRETE, [Gender] TEXT DISCRETE, [Age] LONG CONTINUOUS, [AgeDisc] LONG DISCRETIZED(EQUAL_AREAS,3), [CarMake] TEXT DISCRETE, [CarModel] TEXT DISCRETE, [Purchases] TABLE ( [Product] TEXT KEY, [Quantity] LONG CONTINUOUS, [OnSale] BOOLEAN DISCRETE ), [Movie Ratings] TABLE ( [Movie] TEXT KEY, [Rating] LONG CONTINUOUS ) ) Δημιουργία Μοντέλου Εξόρυξης Μετά τη δημιουργία της δομής εξόρυξης, μπορεί να ξεκινήσει η δημιουργία μοντέλων εξόρυξης. Ένα μοντέλο εξόρυξης διαφέρει από μια δομή στο ότι οι στήλες σημειώνονται ως προς το αν είναι είσοδοι ή έξοδοι σε έναν αλγόριθμο. Ένα μοντέλο μπορεί να περιέχει οποιοδήποτε υποσύνολο στηλών από τη δομή καθώς περιλαμβάνει κάθε πίνακα που η στήλη αποτελεί κλειδί. Δηλαδή, η βασική δομή εξόρυξης πρέπει να συμπεριλαμβάνει τα κλειδιά από τους ένθετους πίνακες. Ο απλούστερος τρόπος για να προστεθεί το μοντέλο σε μια δομή είναι να καθοριστεί με το όνομα και ο αλγόριθμος χωρίς στήλες, όπως γίνεται στην επόμενη εντολή. Στην περίπτωση αυτή, όλες οι στήλες θεωρούνται είσοδοι, ώστε αυτή η μορφή -94-

95 να είναι πραγματικά χρήσιμη μόνο για τον αλγόριθμο Clustering που δεν απαιτεί μια προκαθορισμένη έξοδο. ALTER MINING STRUCTURE [People1] ADD MINING MODEL [PeopleClusters] USING Microsoft_Clustering Στις περισσότερες περιπτώσεις, απαιτείται ένας κατάλογος στηλών, επειδή πρέπει να προσδιοριστούν οι στήλες εξόδου. Οι επιλογές για τον καθορισμό του κατά πόσο ή όχι μια στήλη είναι είσοδος ή έξοδος καθορίζεται με το PREDICT και το PREDICT ONLY. Η επόμενη εντολή δείχνει τον ορισμό ενός μοντέλου δέντρου απόφασης που προβλέπει το φύλο με βάση την ηλικία του ατόμου και το είδος του αυτοκινήτου που οδηγεί το άτομο. Στην περίπτωση αυτή, το PREDICT υποδηλώνει ότι η στήλη φύλο είναι τόσο είσοδος, όσο και έξοδος. Για τα δέντρα αποφάσεων, αυτό δεν είναι χρήσιμο, γιατί υπάρχει μόνο μία στήλη με την ένδειξη ως έξοδο. Αυτό δεν είναι αληθές για όλους τους αλγορίθμους, επειδή η ακριβής χρήση αυτών των τύπων δείχνει πώς ο αλγόριθμος επεξεργάζεται τα δεδομένα. ALTER MINING STRUCTURE [People2] ADD MINING MODEL [PredictGender-Tree] ( [CustID], [Gender] PREDICT, [Age], [CarModel] ) USING Microsoft_Decision_Trees Ένθετοι Πίνακες Μέχρι τώρα, τα μοντέλα που περιγράφονται έχουν πολύ απλά χαρακτηριστικά. Σε αυτά τα μοντέλα, κάθε στήλη αντιπροσωπεύει ένα χαρακτηριστικό και ο τύπος PREDICT δείχνει ποια χαρακτηριστικά θεωρούνται έξοδοι. εξετάζεται το μοντέλο που δημιουργήθηκε και περιέχει ένθετους πίνακες. ALTER MINING STRUCTURE [People3] ADD MINING MODEL [PredictGenderNested-Trees] ( [CustID], [Gender] PREDICT, [Age], [Purchases] ( [Product], [Quantity], [OnSale] ), [Movie Ratings] ( [Movie], Στην επόμενη εντολή -95-

96 [Rating] ) ) USING Microsoft_Decision_Trees(COMPLEXITY_PENALTY=0.5) Σε αυτό το μοντέλο, η υπόθεση έχει δύο περιπτώσεις χαρακτηριστικών: το φύλο (που είναι και είσοδος και έξοδος) και την ηλικία (η οποία είναι ένα χαρακτηριστικό εισόδου). Μετά από αυτό, η υπόθεση έχει ως χαρακτηριστικά το Quantity και το OnSale για όλα τα πιθανά προϊόντα και το χαρακτηριστικό Rating για όλες τις πιθανές ταινίες. Εισαγωγή Δεδομένων στο Mining Structure Αφού προσδιοριστούν η δομή και τα μοντέλα, μετά χρειάζεται η συμπλήρωση τους με τα δεδομένα. Φυσικά, αυτό απαιτεί ότι υπάρχει πρόσβαση στα δεδομένα προέλευσης. Χρησιμοποιώντας το ερώτημα της εντολής μέσα στο OPENQUERY εισάγονται τα δεδομένα στη δομή εξόρυξης, όπως φαίνεται και στην εντολή παρακάτω: INSERT INTO MINING STRUCTURE [People1] ([CustID], [Name], [Gender], [Age], [CarMake],[CarModel]) OPENQUERY(Chapter3Data, 'SELECT [Key], Name, Gender, Age, CarMake, CarModel FROM People') Για την εισαγωγή δεδομένων και ερωτημάτων όταν υπάρχουν ένθετοι πίνακες χρειάζεται η παρακάτω εντολή με το SHAPE: SHAPE { < rowset > } APPEND ( { <rowset> } RELATE <master> TO <child> ) AS <alias> Η παρακάτω εντολή δείχνει πώς χρησιμοποιείται η εντολή INSERT INTO, για να συμπληρωθεί η δομή της εξόρυξης που δημιουργήθηκε προηγουμένως. INSERT INTO MINING STRUCTURE [People3] ([CustID], [Name], [Gender], [Age], [AgeDisc], [CarMake], [CarModel],[Purchases](SKIP, [Product], [Quantity], [OnSale]),[Movie Ratings](SKIP, [Movie], [Rating]) ) SHAPE { OPENQUERY( Chapter3Data, 'SELECT [Key], Name, Gender, Age, Age, CarMake, CarModel FROM People ORDER BY [Key]') } APPEND ({ OPENQUERY( Chapter3Data, 'SELECT CustID, Product, Quantity, [On Sale] FROM Purchases ORDER BY CustID') } RELATE [Key] TO [CustID] ) AS Purchases, ({ OPENQUERY( Chapter3Data, 'SELECT CustID, Movie, Rating FROM MovieRatings ORDER BY CustID') } RELATE [Key] TO [CustID] ) AS MovieRatings -96-

97 Μια χρησιμότητα του SHAPE είναι ότι καθένας από τους ένθετους πίνακες στο σύνολο δεδομένων εισόδου περιέχει μια στήλη που αντιπροσωπεύει το ξένο κλειδί στον πίνακα περίπτωσης (case table). Προκειμένου να αντιμετωπισθεί η απαίτηση του SHAPE, η λέξη-κλειδί SKIP εισάγεται, για να υποδείξει τις στήλες που υπάρχουν στα δεδομένα προέλευσης που δεν θα χρησιμοποιηθούν στη δομή. Παρά το γεγονός ότι το SKIP εισάγεται ρητά για το σκοπό αυτό, μπορεί να χρησιμοποιηθεί, για να αγνοήσει κάθε στήλη τη οποία δεν θέλουμε να χρησιμοποιήσουμε από την πηγή Πρόβλεψη Η πρόβλεψη είναι η εφαρμογή των προτύπων που βρέθηκαν στα δεδομένα για να εκτιμηθεί η άγνωστη πληροφορία. Παραδείγματα πρόβλεψης είναι η πρόβλεψη αν ένας πελάτης θα είναι ή δεν θα είναι καλός για ένα δάνειο, η πιθανότητα των πελατών που θα ακυρώσουν μια υπηρεσία ή πρόβλεψη μελλοντικών τιμών της σειράς. Η πραγματική πληροφορία που προβλέπεται από τον αλγόριθμο εξόρυξης δεδομένων εξαρτάται από τις δυνατότητες του εν λόγω αλγορίθμου και από το πώς το μοντέλο έχει οριστεί. Η διαδικασία πρόβλεψης είναι συχνά ο τελικός στόχος σε κάθε σενάριο εξόρυξη δεδομένων, παρέχοντας το απόλυτο πλεονέκτημα της συλλογής δεδομένων και της μηχανικής μάθησης και μπορεί δραστικά να αλλάξει ο τρόπος λειτουργίας μιας επιχείρησης. Σύνταξη Ερωτήματος Πρόβλεψης Η πλήρης σύνταξη ερωτήματος πρόβλεψης έχει την παρακάτω εντολή για να πραγματοποιηθεί στο DMX: SELECT [TOP <count>] <column references> FROM <mining model> [[NATURAL] PREDICTION JOIN <source-data> [ ON <mapping clause> ] [ WHERE <condition clause> ] [ ORDER BY <order clause> [DESC ASC] ]] Ένα παράδειγμα ερωτήματος πρόβλεψης παρουσιάζεται στην επόμενη εντολή. Η εντολή αυτή ισχύει για το μοντέλο PredictGender-Bayes με σκοπό να προβλεφτεί το φύλο με βάση την ηλικία του ατόμου και το είδος του αυτοκινήτου που οδηγεί το άτομο. SELECT t.[name], Predict([Gender]) AS PredictedGender FROM [PredictGender-Bayes] PREDICTION JOIN OPENQUERY(Chapter3Data, 'SELECT [Key], [Name], [Age], [CarModel] FROM [NewPeople]') AS t ON [PredictGender-Bayes].[Age] = t.[age] AND -97-

98 [PredictGender-Bayes].[CarModel] = t.[carmodel] Οι λεπτομέρειες του τι συμβαίνει κατά τη διάρκεια πρόβλεψης προσδιορίζονται από τον αλγόριθμο. Ένας κανόνας που είναι συνεπής σε κάθε εφαρμογή αλγορίθμου και επιβάλλεται από το DMX, μπορεί να συμπεριλάβει μόνο στήλες εξόδου (στήλες με PREDICT ή PREDICT ONLY) από το μοντέλο πρόβλεψης. Ένθετη προέλευση δεδομένων Η ένθετη πηγή δεδομένων περιγράφεται με τον ίδιο τρόπο, όπως συμβαίνει και με το INSERT INTO. Στην παρακάτω εντολή παρουσιάζεται η εντολή εισαγωγής ένθετων δεδομένων και πρόβλεψης. SELECT t.[name], Predict([Gender]) AS PredictedGender FROM [PredictGenderNested-Trees] PREDICTION JOIN SHAPE { OPENQUERY( Chapter3Data, 'SELECT [Key], Name, Age FROM NewPeople ORDER BY [Key]') } APPEND ({ OPENQUERY( Chapter3Data, 'SELECT CustID, Product, Quantity FROM NewPeoplePurchases ORDER BY CustID') } RELATE [Key] TO [CustID] ) AS Purchases AS t ON [PredictGenderNested-Trees].Age = t.age AND [PredictGenderNested-Trees].Purchases.Product = t.purchases.product AND [PredictGenderNested-Trees].Purchases.Quantity = t.purchases.quantity -98-

99 Παράρτημα Β 2 Εισαγωγή Βάσεων Δεδομένων 2.1 Εισαγωγή Βάσεων Δεδομένων της MovieClick Για να δημιουργήσουμε τη βάση, θα χρησιμοποιήσουμε τον SQL Server Management Studio.Στο περιβάλλον των Windows επιλέγουμε Έναρξη Όλα τα Προγράμματα Microsoft SQL Server 2008 R2 SQL Server Business Intelligence Development Studio (εικόνα 63). Εικόνα 63: Επιλογή QL Server Business Intelligence Development Studio Στο παράθυρο που εμφανίζεται επιλέγουμε τον διακομιστή με τον οποίο θα συνδεθούμε, ώστε να έχουμε πρόσβαση στις βάσεις δεδομένων του (εικόνα 64). -99-

100 Εικόνα 64: Επιλογή Διακομιστή Στο παράθυρο που εμφανίζεται θα δημιουργήσουμε μία καινούρια βάση δεδομένων. Έτσι Επιλέγουμε την καρτέλα Object Explorer δεξί κλικ στο πεδίο Databases επιλέγουμε New Database (εικόνα 65). Εικόνα 65: Δημιουργία νέου Database Στο παράθυρο που εμφανίζεται συμπληρώνουμε τα στοιχεία στης βάσης που θα δημιουργήσουμε (εικόνα 66)

101 Εικόνα 66: Συμπλήρωση αντικειμένων της βάσης Στη συνέχεια πρέπει να εισάγουμε τα δεδομένα της βάσης MovieClick.mdb (αρχείο της Access) στη βάση που δημιουργήσαμε. Επιλέγουμε την καρτέλα Object Explorer Databases κάνουμε δεξί κλικ στην βάση MovieClick Tasks Import Data (εικόνα 67). Εικόνα 67: Εισαγωγή δεδομένων Εμφανίζεται το παράθυρο καλωσορίσματος του SQL Server Import and Export -101-

102 Wizard. Επιλέγουμε Next ώστε να προχωρήσουμε στο επόμενο βήμα (εικόνα 68). Εικόνα 68: Παράθυρο καλωσορίσματος του SQL Server Import and Export Wizard Στο βήμα που ακολουθεί επιλέγουμε τα στοιχεία της βάσης MovieClick την οποία θα εισάγουμε στη βάση του SQL Server (εικόνα 69). Εικόνα 69: Επιλογή αντικειμένων Επιλέγουμε που θα εισάγουμε τα δεδομένα της βάσης MovieClick.mdb (εικόνα 70)

103 Εικόνα 70: Επιλογή τοποθεσίας εισαγωγής της βάσης Στο συγκεκριμένο βήμα καλούμαστε να επιλέξουμε αν θα εισάγουμε όλα τα δεδομένα από τους πίνακες της βάσης MovieClick ή αν θα γράψουμε ένα SQL Query για να διαχειριστούμε ή να αποκλείσουμε κάποια δεδομένα. Στη συγκεκριμένη περίπτωση επιλέγουμε την Copy data from one or more tables or views (εικόνα 71). Εικόνα 71: Τρόπος επιλογής δεδομένων Σε αυτό το βήμα επιλέγουμε τους πίνακες της βάσης MovieClick.mdb που θα -103-

104 εισάγουμε στην βάση του SQL Server. Στη συγκεκριμένη περίπτωση επιλέγουμε τους πίνακες Customers και Movies, και στη συνέχεια προχωράμε στο επόμενο βήμα (εικόνα 72). Εικόνα 72: Επιλογή δεδομένων Στη συνέχεια επιλέγουμε Run immediately για να γίνει άμεση εκτέλεση και στη συνέχεια επιλέγουμε Next ώστε να προχωρήσουμε στο επόμενο βήμα (εικόνα 73). Εικόνα 73: Τρόπος εκτέλεσης Στη συνέχεια εμφανίζεται μία σύνοψη των επιλογών που έχουμε κάνει μέχρι τώρα. Επιλέγουμε Finish για να ολοκληρωθεί η διαδικασία εισαγωγής (εικόνα 74)

105 Εικόνα 74: Ολοκλήρωση διαδικασίας Στο παράθυρο που εμφανίζεται, αν έχουν ολοκληρωθεί όλα με επιτυχία δεν θα πρέπει να υπάρχουν καθόλου Errors ή Warnings. Η διαδικασία της εισαγωγής της βάσης MovieClick.mdb στην βάση MovieClick που δημιουργήσαμε στον SQL Server έχει πλέον ολοκληρωθεί. Κατόπιν επιλέγουμε Close για να εγκαταλείψουμε τον οδηγό (εικόνα 75). Εικόνα 75: Εγκατάσταση πινάκων 2.2 Εισαγωγή Βάσεων Δεδομένων της MovieLens Για να δημιουργήσουμε τη βάση ακολουθούμε τις ίδιες διαδικασίες που προαναφέρθηκαν για τη βάση MovieClick. Η μόνη διαφορά είναι στο βήμα που -105-

106 ακολουθεί, όπου επιλέγουμε Flat File Source για τα στοιχεία της βάσης MovieLens την οποία θα εισάγουμε στη βάση του SQL Server (εικόνα 76). Εικόνα 76: Επιλογή αντικειμένων -106-

107 Παράρτημα Γ 3 Τα Σύνολα Δεδομένων 3.1 Η Βάση Δεδομένων MovieClick Η πρώτη βάση δεδομένων που χρησιμοποιήθηκε στην ανάπτυξη των μοντέλων είναι η βάση δεδομένων MovieClick. Η βάση αυτή αποτελεί ένα σύνολο δεδομένων από videoclub και περιέχει 8 πίνακες, αλλά 2 από αυτούς αποτελούν τους κύριους πίνακες για την παρούσα εργασία. Η αρχική της δομή αναπτύχθηκε πρώτα στην Access και έπειτα, εισήχθηκε στον SQL Server Management Studio με την χρήση του οδηγού Import and Export Wizard. Οι 2 πίνακες της βάσης MovieClick που χρησιμοποιήθηκαν είναι οι εξής: Customers Movies Πίνακας Customers Ο πίνακας Customers αποτελεί τον βασικό πίνακα και πυρήνα της βάσης δεδομένων καθώς περιέχει τις περισσότερες πληροφορίες για τους πελάτες του videoclub. Περιέχει 3187 εγγραφές. Τα πεδία (στήλες) από τα οποία αποτελείται είναι τα εξής: Customer ID (Int): Αποτελεί το κλειδί του πίνακα Customers, καθώς είναι αυτό που τακτοποιεί μοναδικά κάθε εγγραφή του πίνακα και έχει τη μορφή ακέραιου αριθμού. Το πεδίο αυτό δεν μπορεί να περιέχει κενές τιμές (NULL), καθώς αποτελεί το πρωτεύον κλειδί. Age (Int): Περιέχει τις τιμές της ηλικίας κάθε πελάτη και έχει τη μορφή ακέραιου αριθμού. Education Level (VarChar): Περιέχει τις τιμές του επιπέδου μόρφωσης κάθε πελάτη και έχει τη μορφή χαρακτήρων. Gender (VarChar): Περιέχει τις τιμές του φύλου των πελατών και έχει τη μορφή χαρακτήρων. Το συγκεκριμένο πεδίο λαμβάνει την τιμή Male και την τιμή Female

108 Home Owenrship (VarChar): Περιέχει τιμές σχετικά με το αν οι πελάτες έχουν ιδιόκτητο σπίτι ή αν νοικιάζουν και έχει τη μορφή χαρακτήρων. Marital Status (VarChar): Περιέχει τις τιμές σχετικά με την οικογενειακή κατάσταση των πελατών, αν είναι έγγαμοι, άγαμοι, διαζευγμένοι κτλ. και έχει τη μορφή χαρακτήρων. Internet Connection (VarChar): Περιέχει τις τιμές σχετικά με τον τύπο σύνδεσης internet των πελατών (Dial-up, DSL κτλ) και έχει τη μορφή χαρακτήρων. Movie Selector (VarChar): Περιέχει τις τιμές για το αν οι πελάτες επιλέγουν ταινίες μόνοι τους ή κάποιοι άλλοι για αυτούς και έχει τη μορφή χαρακτήρων. Num Bathrooms (Int): Περιέχει τις τιμές για τον αριθμό των μπάνιων που διαθέτουν οι πελάτες στις οικίες τους και έχει τη μορφή ακέραιου αριθμού. Num Bedrooms (Int): Περιέχει τις τιμές για τον αριθμό των κρεβατοκάμαρων που διαθέτουν οι πελάτες στις οικίες τους. Num Cars (Int): Περιέχει τις τιμές για τον αριθμό των αυτοκινήτων που έχουν οι πελάτες στην κατοχή τους και έχει τη μορφή ακέραιου αριθμού. Num Children (Int): Περιέχει τις τιμές για τον αριθμό των παιδιών που έχουν οι πελάτες (παίρνοντας την τιμή 0 αν δεν έχουν) και έχει τη μορφή ακέραιου αριθμού. Num TVs (Int): Περιέχει τις τιμές για τον αριθμό των τηλεοράσεων που διαθέτουν οι πελάτες στις οικίες τους και έχει τη μορφή ακέραιου αριθμού. PPV Freq (VarChar): Περιέχει τις τιμές για το πόσο συχνά οι πελάτες πληρώνουν για να δουν κάποια ταινία στην τηλεόραση (Pay Per View) και έχει τη μορφή χαρακτήρων. Prerec Buying Freq (Int): Περιέχει τις τιμές για το κατά πόσο συχνά οι πελάτες αγοράζουν ταινίες και έχει τη μορφή χαρακτήρων. Prerec Format (VarChar): Περιέχει τις τιμές για την τεχνική μορφή των ταινιών που βλέπουν οι πελάτες (δηλαδή DVD, VHS κτλ.) και έχει τη μορφή χαρακτήρων. Prerec Renting Freq (VarChar): Περιέχει τις τιμές για τη συχνότητα με την οποία νοικιάζουν ταινίες οι πελάτες και έχει τη μορφή χαρακτήρων

109 Prerec Viewing Freq (Var Char): Περιέχει τις τιμές για τη συχνότητα που οι πελάτες παρακολουθούν ταινίες και έχει τη μορφή χαρακτήρων. Thater Freq (VarChar): Περιέχει τις τιμές για τη συχνότητα με την οποία οι πελάτες παρακολουθούν θεατρικές παραστάσεις και έχει τη μορφή χαρακτήρων. TV Movie Freq (VarChar): Περιέχει τις τιμές για τη συχνότητα με την οποία οι πελάτες παρακολουθούν ταινίες στην τηλεόραση και έχει τη μορφή χαρακτήρων. TV Signal (VarChar): Περιέχει τις τιμές για το είδος του τηλεοπτικού σήματος των πελατών (αναλογικό, ψηφιακό κτλ) και έχει τη μορφή χαρακτήρων. Στις εικόνες 77 και 78 παρουσιάζονται ο πίνακας Customers με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 77: Πίνακας Customers Εικόνα 78: Απόσπασμα από τις εγγραφές του πίνακα Customers -109-

110 Πίνακας Movies Ο πίνακας Movies περιέχει 2707 εγγραφές και αποτελείται από τα εξής πεδία (στήλες): CustomerID (Int): Αποτελεί το κλειδί του πελάτη και έχει τη μορφή ακέραιου αριθμού. Το πεδίο αυτό δεν μπορεί να περιέχει κενές τιμές (NULL), καθώς αποτελεί το πρωτεύον κλειδί. Movie (VarChar): Περιέχει τους τίτλους των ταινιών που έχουν ενοικιασθεί από τους πελάτες. Στην εικόνα 79 παρουσιάζονται ο πίνακας Movies με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 79: Πίνακας Movies και απόσπασμα από τις εγγραφές του πίνακα Movies Η Σχεσιακή Βάση Δεδομένων MovieClick μεταξύ των πινάκων Στη βάση δεδομένων MovieClick, οι πίνακες πρέπει να συνδέονται μεταξύ τους, ώστε να λαμβάνονται πληροφορίες από όλους. Ο πίνακας Customers είναι ο κεντρικός πίνακας της βάσης και το κλειδί CustomerID είναι αυτό με το οποίο γίνονται όλες οι συνδέσεις με τους υπόλοιπους πίνακες. Έτσι, σε κάθε πίνακα το πεδίο CustomerID, ανεξάρτητα αν αυτό αποτελεί το πρωτεύον κλειδί, συνδέεται με το πεδίο CustomerID του πίνακα Movies. Στην εικόνα 80 φαίνεται η σχέση των δυο πινάκων

111 Εικόνα 80: Η σχεσιακή βάση μεταξύ των πινάκων Customers και Movies 3.2 Η Βάση Δεδομένων MovieLens Το σύνολο δεδομένων που χρησιμοποιήθηκε στην ανάπτυξη των μοντέλων είναι η βάση δεδομένων MovieLens. Η βάση MovieLens αποτελεί ένα σύνολο δεδομένων από κινηματογραφικές ταινίες και περιέχει 13 πίνακες, αλλά 2 από αυτούς αποτελούν τους κύριους πίνακες για την παρούσα εργασία. Η βάση δεδομένων εισήχθηκε στον SQL Server Management Studio με τη χρήση του οδηγού Import and Export Wizard. Οι 2 πίνακες της βάσης MovieLens που χρησιμοποιήθηκαν είναι οι εξής: Movies RatedMovies (RM) Πίνακας Movies O πίνακας Movies περιέχει πληροφορίες για τις ταινίες. Περιέχει 9148 εγγραφές. Τα πεδία (στήλες) από τα οποία αποτελείται είναι τα εξής: MovieID (Numeric): Αποτελεί το κλειδί του πίνακα Movies, καθώς είναι το πεδίο που ταυτοποιεί μοναδικά κάθε εγγραφή του πίνακα και έχει τη μορφή αριθμού. Το πεδίο αυτό δεν μπορεί να περιέχει κενές τιμές (NULL), καθώς αποτελεί το πρωτεύον κλειδί. Movie_name (VarChar): Περιέχει τις τιμές με τους τίτλους των ταινιών και έχει τη μορφή χαρακτήρων

112 IMDbID (Int): Περιέχει τις τιμές του αναγνωριστικού κωδικού που έχουν οι ταινίες στο δίκτυο IMDb και έχει τη μορφή ακέραιου αριθμού. Spanish Title (VarChar): Περιέχει τις τιμές με τους λατινικούς τίτλους των ταινιών και έχει την μορφή χαρακτήρων. Year (Int): Περιέχει τις τιμές του έτους παραγωγής κάθε ταινίας και έχει τη μορφή ακεραίου αριθμού. RtID (Int): Περιέχει τις τιμές του αναγνωριστικού κωδικού που έχουν οι ταινίες στο δίκτυο Rotten Tomatoes και έχει τη μορφή ακέραιου αριθμού. RtAllCriticsRating (Real): Περιέχει τις τιμές με τη βαθμολογία που έχει λάβει κάθε ταινία από όλους τους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή πραγματικού αριθμού στο διάστημα [0, 10]. RtAllCriticsNumReviews (Int): Περιέχει τις τιμές με τον αριθμό των σχολιασμών που έχει λάβει κάθε ταινία από όλους τους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού. RtAllCriticsNumFresh (Int): Περιέχει τον αριθμό των πρόσφατων σχολιασμών που έχει λάβει κάθε ταινία από όλους τους κριτικούς του δικτύου Rotten Tomatoes και έχει τη μορφή ακέραιου αριθμού. RtAllCriticsNumRotten (Int): Περιέχει τον αριθμό των παλαιών σχολιασμών που έχει λάβει κάθε ταινία από όλους τους κριτικούς του δικτύου Rotten Tomatoes και έχει τη μορφή ακέραιου αριθμού. Σημειώνεται ότι το πεδίο rtallcriticsnumreviews είναι το άθροισμα των πεδίων rtallcriticsnumfresh και rtallcriticsnumrotten. RtAllCriticsScore (Int): Περιέχει τις τιμές με το συνολικό σκορ που έχει λάβει κάθε ταινία από όλους τους κριτικούς του δικτύου Rotten Tomatoes και έχει τη μορφή ακέραιου αριθμού στο διάστημα [0,100]. RtTopCriticsRating (Real): Περιέχει τις τιμές με την βαθμολογία που έχει λάβει κάθε ταινία από τους κορυφαίους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή πραγματικού αριθμού στο διάστημα [0, 10]. RtTopCriticsNumReviews (Int): Περιέχει τις τιμές με τον αριθμό των σχολιασμών που έχει λάβει κάθε ταινία από τους κορυφαίους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού

113 RtTopCriticsNumFresh (Int): Περιέχει τις τιμές με τον αριθμό των πρόσφατων σχολιασμών που έχει λάβει κάθε ταινία από τους κορυφαίους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού. RtTopCriticsNumRotten (Int): Περιέχει τις τιμές με τον αριθμό των παλαιών σχολιασμών που έχει λάβει κάθε ταινία από τους κορυφαίους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού. Σημειώνεται ότι το πεδίο rttopcriticsnumreviews είναι το άθροισμα των πεδίων rttopcriticsnumfresh και rttopcriticsnumrotten. RtTopCriticsScore (Int): Περιέχει τις τιμές με το σκορ που έχει λάβει κάθε ταινία από τους κορυφαίους κριτικούς του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού στο διάστημα [0,100]. RtAudienceRating (Real): Περιέχει τις τιμές με τη βαθμολογία που έχει λάβει κάθε ταινία από το κοινό του δικτύου Rotten Tomatoes και έχει την μορφή πραγματικού αριθμού στο διάστημα [0, 10]. RtAudienceNumRatings (Int): Περιέχει τον αριθμό των ατόμων από το κοινό του δικτύου Rotten Tomatoes που έχουν βαθμολογήσει κάθε ταινία και έχει την μορφή ακέραιου αριθμού. RtAudienceScore (Int): Περιέχει τις τιμές με το σκορ που έχει λάβει κάθε ταινία από το κοινό του δικτύου Rotten Tomatoes και έχει την μορφή ακέραιου αριθμού στο διάστημα [0,100]. Στην εικόνα 81 και 82 παρουσιάζονται ο πίνακας Movies με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 81: Πίνακας Movies -113-

114 Εικόνα 82: Απόσπασμα από τις εγγραφές του πίνακα Movies Πίνακας RatedMovies (RM) Ο πίνακας RatedMovies (RM) περιέχει εγγραφές και αποτελείται από τα εξής πεδία (στήλες): UserID (Numeric): Είναι το κλειδί του κάθε χρήστη και έχει τη μορφή αριθμού. MovieID (Numeric): Είναι το κύριο κλειδί του πίνακα RatedMovies(RM) και έχει τη μορφή αριθμού. Το πεδίο αυτό δεν μπορεί να περιέχει κενές τιμές (NULL), καθώς αποτελεί το πρωτεύον κλειδί. Rating (Numeric): Περιέχει τις τιμές με τη βαθμολογία κάθε χρήστη για μια ταινία και έχει τη μορφή αριθμού και οι τιμές που παίρνει είναι από 0.5 μέχρι 5. DateYear (Numeric): Περιέχει τις τιμές με το έτος που καταχωρήθηκε η κάθε βαθμολογία και έχει τη μορφή αριθμού. DateMonth (Numeric): Περιέχει τις τιμές με τον μήνα που καταχωρήθηκε η κάθε βαθμολογία και έχει την μορφή ακέραιου αριθμού. DateDay (Numeric): Περιέχει τις τιμές με την ημέρα του μήνα που καταχωρήθηκε η κάθε βαθμολογία και έχει τη μορφή αριθμού. DateHour (Numeric): Περιέχει τις τιμές με την ώρα που καταχωρήθηκε η κάθε βαθμολογία και έχει τη μορφή αριθμού. DateMinute (Numeric): Περιέχει τις τιμές με το λεπτό που καταχωρήθηκε η κάθε βαθμολογία και έχει τη μορφή αριθμού. DateSecond (Numeric): Περιέχει τις τιμές με το δευτερόλεπτο που καταχωρήθηκε η κάθε βαθμολογία και έχει τη μορφή αριθμού

115 Στην εικόνα 83 παρουσιάζονται ο πίνακας RM με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 83: Πίνακας RM και απόσπασμα από τις εγγραφές του πίνακα RM Για την παρούσα εργασία, δημιουργήθηκε ξανά ο πίνακας RatedMovies με κάποιες αλλαγές στα πεδία και στα δεδομένα. Αρχικά, δημιουργήθηκε ο πίνακας με την ονομασία RatedMovies MΟ που περιέχει τους μέσους όρους των βαθμολογιών για κάθε ταινία. Ο πίνακας αυτός χρειάζεται για τη δημιουργία μοντέλου με χρονολογική σειρά. Η δημιουργία του πίνακα RatedMovies MΟ δημιουργήθηκε με τις εξής εντολές στον SQL Business Intelligence: SELECT movieid, AVG (rating) AS Avgrating, date_year FROM dbo.rm GROUP BY movieid, date_year Στην εικόνα 84 παρουσιάζονται ο πίνακας RatedMovies MΟ με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 84: Πίνακας RatedMovies MO και απόσπασμα από τις εγγραφές του πίνακα RatedMovies MO -115-

116 Ακόμη, δημιουργήθηκε ο πίνακας με την ονομασία RMall που περιέχει τους χρήστες που έχουν βαθμολογήσει ταινίες με rating > 3 και που έχουν βαθμολογήσει πάνω από 500 ταινίες. Τα πεδία που περιέχει είναι ίδια με τον πίνακα RatedMovies. Η δημιουργία του πίνακα RΜall δημιουργήθηκε με τις εξής εντολές στον SQL Server Management Studio: INSERT INTO RMall SELECT * FROM [dokimi].[dbo].[ratedmovies] WHERE rating > 3 AND userid in (SELECt userid FROM user_ratedmovies WHERE rating > 3 GROUP BY userid HAVING COUNT (userid) >500) Στην εικόνα 85 και 86 παρουσιάζονται ο πίνακας RMall με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 85: Πίνακας RMall Εικόνα 86: Απόσπασμα από τις εγγραφές του πίνακα RMall Επίσης, δημιουργήθηκε ο πίνακας με την ονομασία RM100 που περιέχει τους χρήστες που έχουν βαθμολογήσει ταινίες με rating > 3 και που έχουν βαθμολογήσει -116-

117 κάτω από 100 ταινίες. Τα πεδία που περιέχει είναι ίδια με τον πίνακα RatedMovies. Η δημιουργία του πίνακα RΜ100 δημιουργήθηκε με τις εξής εντολές στον SQL Server Management Studio: INSERT INTO RM100 SELECT * FROM [dokimi].[dbo].[ratedmovies] WHERE rating > 3 AND userid in (SELECt userid FROM user_ratedmovies WHERE rating > 3 GROUP BY userid HAVING COUNT (userid) <100) Στην εικόνα 87 και 88 παρουσιάζονται ο πίνακας RM100 με τα πεδία και το πρωτεύον κλειδί του και τα δεδομένα που έχει ο πίνακας. Εικόνα 87: Πίνακας RM100 Εικόνα 88: Απόσπασμα από τις εγγραφές του πίνακα RM100 Η Σχεσιακή Βάση Δεδομένων MovieLens μεταξύ των πινάκων Στη βάση δεδομένων MovieLens, οι πίνακες πρέπει να συνδέονται μεταξύ τους, ώστε να λαμβάνονται πληροφορίες από όλους. Ο πίνακας RatedMovies (RM) είναι ο κεντρικός πίνακας της βάσης και το κλειδί movieid, είναι αυτό με το οποίο γίνονται όλες οι συνδέσεις με τους υπόλοιπους πίνακες. Έτσι, σε κάθε πίνακα το πεδίο movieid, -117-

118 ανεξάρτητα αν αυτό αποτελεί το πρωτεύον κλειδί, συνδέεται με το πεδίο moviesid του πίνακα Movies. Στην εικόνα 89 φαίνεται η σχέση των δυο πινάκων. Εικόνα 89: Η σχεσιακή βάση μεταξύ των πινάκων RM και Movies -118-

119 Παράρτημα Δ 4.1 Δημιουργία Μοντέλων Δημιουργία Μοντέλων του Αλγορίθμου Time Series Στην ενότητα αυτή, παρουσιάζεται ο τρόπο δημιουργίας του μοντέλου έγινε και στον SQL Server Business Intelligence. Στο πρώτο μοντέλο που δημιουργήθηκε, χρησιμοποιείται ο πίνακας RM. Ως κλειδιά έχουμε ορίσει το date_year και το movieid. Οι μεταβλητές εισόδου και πρόβλεψης είναι το rating. Στην εικόνα 90 και 91 παρουσιάζονται ο πίνακας που χρησιμοποιήθηκε και οι μεταβλητές που επιλέχθηκαν. Εικόνα 90: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested -119-

120 Εικόνα 91: Επιλογή των πεδίων των πινάκων Στο μοντέλο που δημιουργήθηκε, οι παράμετροι του αλγορίθμου, όπως παρουσιάζεται στην εικόνα 92, δεν τροποποιήθηκαν, αλλά έμειναν, όπως έχουν οριστεί από την SQL. Εικόνα 92: Επιλογή παραμέτρων Στο δεύτερο μοντέλο που δημιουργήθηκε, χρησιμοποιείται ο πίνακας Rated Movies MO. Ο πίνακας αυτός περιέχει τους μέσους όρους των βαθμολογιών για κάθε έτος. Ως -120-

121 κλειδιά έχουμε ορίσει το date_year και το movieid. Οι μεταβλητές εισόδου και πρόβλεψης είναι το Avgrating. Στην εικόνα 93 και 94 παρουσιάζονται ο πίνακας που χρησιμοποιήθηκε και οι μεταβλητές που επιλέχθηκαν. Εικόνα 93: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 94: Επιλογή των πεδίων των πινάκων -121-

122 Στο μοντέλο που δημιουργήθηκε, μόνο η παράμετρος MISSING VALUE SUBSTITUTION ορίστηκε ως Mean. Στην εικόνα 95 παρουσιάζεται η αλλαγή της παραμέτρου. Εικόνα 95: Επιλογή παραμέτρων Στην εικόνα 96 απεικονίζεται το ερώτημα που τέθηκε για το πρώτο μοντέλο πρόβλεψης για τα επόμενα 5 έτη από το 2010 μέχρι και το 2014 στον SQL Server Business Intelligence. Εικόνα 96: Δημιουργία ερωτήματος πρόβλεψης -122-

123 Στην εικόνα 97 φαίνονται οι προβλέψεις των βαθμολογιών για το κάθε movieid για τα 5 έτη. Εικόνα 97: Αποτελέσματα προβλέψεων Στην εικόνα 98 απεικονίζεται το ερώτημα που τέθηκε για το δεύτερο μοντέλο πρόβλεψης για τα επόμενα 5 έτη από το 2010 μέχρι και το 2014 στον SQL Server Business Intelligence. Εικόνα 98: Δημιουργία ερωτήματος πρόβλεψης -123-

124 Στην εικόνα 99 φαίνονται οι προβλέψεις των βαθμολογιών για το κάθε movieid για τα 5 έτη. Εικόνα 99: Αποτελέσματα προβλέψεων Δημιουργία Μοντέλων του Αλγορίθμου Decision Trees MovieClick Παρακάτω, παρουσιάζεται ο εναλλακτικός τρόπος δημιουργίας του μοντέλου στον SQL Server Business Intelligence. Στο μοντέλο που δημιουργήθηκε, χρησιμοποιούνται οι πίνακες Customers και Movies. Ο πίνακας Customers αποτελεί τον πίνακα περίπτωσης, ενώ ο πίνακας Movies αποτελεί τον εμφωλευμένο πίνακα. Ως κλειδί στον πίνακα Customers έχουμε ορίσει το CustomerID και στον πίνακα Movies, το κλειδί Movie. Ως μεταβλητές εισόδου στον πίνακα Customers έχουμε ορίσει το Gender και το Marital Status και στον πίνακα Movies, το Movie. Ενώ, ως μεταβλητή πρόβλεψης από τον πίνακα Movies έχουμε ορίσει το Movie. Στην εικόνα 100 και 101 παρουσιάζονται οι πίνακες που χρησιμοποιήθηκαν και οι μεταβλητές που επιλέχθηκαν

125 Εικόνα 100: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested -125-

126 Εικόνα 101: Επιλογή των πεδίων των πινάκων Στο μοντέλο που δημιουργήθηκε, οι παράμετροι του αλγορίθμου MAXIMUM INPUT ATTRIBUTES και MAXIMUM OUTPUT ATTRIBUTES ορίστηκαν σε τιμή Στην εικόνα 102 παρουσιάζονται οι αλλαγές των παραμέτρων. Εικόνα 102: Επιλογή παραμέτρων -126-

127 Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Στην εικόνα 103 απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Business Intelligence. Εικόνα 103: Δημιουργία ερωτήματος πρόβλεψης Στην εικόνα 104 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. Εικόνα 104: Αποτελέσματα προβλέψεων MovieLens Παρακάτω, παρουσιάζεται ο εναλλακτικός τρόπος δημιουργίας του μοντέλου στον SQL Server Business Intelligence. Στο μοντέλο που δημιουργήθηκε, χρησιμοποιούνται οι πίνακες RatedMovies και Movies. Ο πίνακας RatedMovies αποτελεί τον πίνακα -127-

128 περίπτωσης, ενώ ο πίνακας Movies αποτελεί τον ένθετο πίνακα. Ως κλειδί στον πίνακα RatedMovies έχουμε ορίσει το movieid και στον πίνακα Movies, το κλειδί movie_name. Ως μεταβλητές εισόδου στον πίνακα RatedMovies έχουμε ορίσει το rating και το userid και στον πίνακα Movies, το Movie. Ενώ, ως μεταβλητή πρόβλεψης από τον πίνακα Movies έχουμε ορίσει το movie_name. Στην εικόνα 105 και 106 παρουσιάζονται οι πίνακες που χρησιμοποιήθηκαν και οι μεταβλητές που επιλέχθηκαν. Εικόνα 105: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested Εικόνα 106: Επιλογή των πεδίων των πινάκων -128-

129 Στο μοντέλο που δημιουργήθηκε, οι παράμετροι του αλγορίθμου MAXIMUM INPUT ATTRIBUTES και MAXIMUM OUTPUT ATTRIBUTES ορίστηκαν σε τιμή Στην εικόνα 107 παρουσιάζονται οι αλλαγές των παραμέτρων. Εικόνα 107: Επιλογή παραμέτρων Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Στην εικόνα 108 απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Business Intelligence. Εικόνα 108: Δημιουργία ερωτήματος πρόβλεψης Στην εικόνα 109 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες

130 Εικόνα 109: Αποτελέσματα προβλέψεων Δημιουργία Μοντέλων του Αλγορίθμου Association Rules MovieClick Παρακάτω, παρουσιάζεται ο εναλλακτικός τρόπος δημιουργίας του μοντέλου στον SQL Server Business Intelligence. Στο μοντέλο που δημιουργήθηκε, χρησιμοποιούνται οι πίνακες Customers και Movies. Ο πίνακας Customers αποτελεί τον πίνακα περίπτωσης, ενώ ο πίνακας Movies αποτελεί τον εμφωλευμένο πίνακα. Ως κλειδί στον πίνακα Customers έχουμε ορίσει το CustomerID και στον πίνακα Movies, το κλειδί Movie. Ως μεταβλητές εισόδου στον πίνακα Customers έχουμε ορίσει το Gender και το Marital Status και στον πίνακα Movies, το Movie. Ενώ, ως μεταβλητή πρόβλεψης από τον πίνακα Movies έχουμε ορίσει το Movie. Στην εικόνα 110 και 111 παρουσιάζονται οι πίνακες που χρησιμοποιήθηκαν και οι μεταβλητές που επιλέχθηκαν. Εικόνα 110: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested -130-

131 Εικόνα 111: Επιλογή των πεδίων των πινάκων Στο μοντέλο που δημιουργήθηκε, οι παράμετροι του αλγορίθμου είναι MINIMUM_PROBABILITY = 0.4 και MINIMUM_SUPPORT = Στην εικόνα 112 παρουσιάζονται οι αλλαγές των παραμέτρων

132 Εικόνα 112: Επιλογή παραμέτρων Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Στην εικόνα 113 απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Business Intelligence. Εικόνα 113: Δημιουργία ερωτήματος πρόβλεψης Στην εικόνα 114 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες

133 Εικόνα 114: Αποτελέσματα προβλέψεων MovieLens Παρακάτω, παρουσιάζεται ο εναλλακτικός τρόπος δημιουργίας του μοντέλου στον SQL Server Business Intelligence. Στο μοντέλο που δημιουργήθηκε, χρησιμοποιούνται οι πίνακες RatedMovies και Movies. Ο πίνακας RatedMovies αποτελεί τον πίνακα περίπτωσης, ενώ ο πίνακας Movies αποτελεί τον ένθετο πίνακα. Ως κλειδί στον πίνακα RatedMovies έχουμε ορίσει το movieid και στον πίνακα Movies, το κλειδί movie_name. Ως μεταβλητές εισόδου στον πίνακα RatedMovies έχουμε ορίσει το rating και το userid και στον πίνακα Movies, το movie_name. Ενώ, ως μεταβλητή πρόβλεψης από τον πίνακα Movies έχουμε ορίσει το movie_name. Στην εικόνα 115 και 116 παρουσιάζονται οι πίνακες που χρησιμοποιήθηκαν και οι μεταβλητές που επιλέχθηκαν. Εικόνα 115: Επιλογή των πινάκων που θα χρησιμοποιηθούν ως Case και Nested -133-

134 Εικόνα 116: Επιλογή των πεδίων των πινάκων Στο μοντέλο που δημιουργήθηκε, οι παράμετροι του αλγορίθμου είναι MINIMUM_PROBABILITY = 0.4 και MINIMUM_SUPPORT = 0. Στην εικόνα 117 παρουσιάζονται οι αλλαγές των παραμέτρων. Εικόνα 117: Επιλογή παραμέτρων Το επόμενο βήμα που ακολουθεί είναι η δημιουργία ερωτήματος πρόβλεψης για τo μοντέλο που δημιουργήθηκε. Στην εικόνα 118 απεικονίζεται το ερώτημα που τέθηκε για το μοντέλο πρόβλεψης για τις 5 ταινίες που συστήνονται στους χρήστες στον SQL Server Business Intelligence

135 Εικόνα 118: Δημιουργία ερωτήματος πρόβλεψης Στην εικόνα 119 φαίνονται οι προβλέψεις των 5 ταινιών που συστήνονται στους χρήστες. Εικόνα 119: Αποτελέσματα προβλέψεων 4.2 Αποθήκευση Αποτελεσμάτων των Προβλέψεων Μετά τη δημιουργία των μοντέλων, υπάρχει η δυνατότητα αποθήκευσης των αποτελεσμάτων των προβλέψεων, για να τα επεξεργαστούμε και να κάνουμε τις κατάλληλες συστάσεις στους χρήστες, ώστε να αξιολογήσουμε τα αποτελέσματα. Μόλις εκτελέσουμε το ερώτημα πρόβλεψης, αποθηκεύουμε τα αποτελέσματα στη βάση δεδομένων (εικόνα 120)

136 Εικόνα 120: Αποθήκευση προβλέψεων 4.3 Ερωτήματα για την Αξιολόγηση Για την αξιολόγηση των προβλέψεων χρειάστηκε να δημιουργηθούν κάποιοι πίνακες και έπειτα, με τις κατάλληλες εντολές δίνονται τα αποτελέσματα για τις μετρικές αξιολόγησης. Αρχικά, δημιουργήθηκε ο πίνακας όπου αποθηκέυτηκαν τα αποτελέσματα της πρόβλεψης. Ο πίνακας αποτελέιται από δυο πεδία (userid, movie_name) στη περίπτωση της βάσης δεδομένων MovieLens. Στην εικόνα 121 παρουσιάζονται τα πεδία και οι τύποι τους. Εικόνα 121: Δημιουργία πινάκων προβλέψεων -136-

137 Στη συνέχεια, δημιουργήθηκε ο πίνακας όπου αποθηκεύτηκαν τα αποτελέσματα των μετρικών αξιολόγησης. Ο πίνακας αυτός, αποτελείται από 4 πεδία. Στη περίπτωση της βάσης δεδομένων MovieLens, το πρώτο πεδίο είναι το userid. Το δεύτερο πεδίο είναι το num_of_rec, δηλαδή ο αριθμός των ταινιών που συστήνονται. Το τρίτο πεδίο είναι το num_of_rating, δηλαδή ο αριθμός των ταινιών που έχει δει ο χρήστης από τις προβλεπόμενες ταινίες. Τέλος, το πεδίο num_of_rating_per_user είναι ο αριθμός των ταινιών που έχει δει γενικά ο χρήστης (εικόνα 122). Εικόνα 122: Δημιουργία πινάκων αξιολόγησης Έπειτα, δημιουργήθηκε ένα View για να συνδέσει τον πίνακα Movies και τον πίνακα προβλέψεων (εικόνα 123 και 124)

138 Εικόνα 123: Δημιουργία View Εικόνα 124: Δημιουργία View σύνδεσης πινάκων Για τη σύνδεση όλων των δεδομένων και την εμφάνιση των αποτελεσμάτων μετρικών αξιολόγησης, δημιουργήθηκε στο Programmability ένα Stored Procedure. Το Stored Procedure έχει τη δυνατότητα να εμφανίζει σε έναν πίνακα ενοποιημένα αποτελέσματα πολλών πινάκων μιας βάσης δεδομένων. Πιο συγκεκριμένα, περιλαμβάνει την επικύρωση δεδομένων με ερωτήματα από όλες τις εφαρμογές της διαδικασίας που προηγήθηκε. Στην εικόνα 125 φαίνεται πως δημιουργήθηκε

139 Εικόνα 125: Δημιουργία Stored Procedure Οι εντολές για τη δημιουργία ενός Stored Procedure για τη βάση MovieClick είναι: USE [movieclick] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[produceresultsar1] AS begin as int as smallint as smallint as smallint CURSOR = CURSOR FAST_FORWARD FOR SELECT CustomerID FROM Customers GROUP BY CustomerID order by CustomerID FETCH NEXT = 0 BEGIN Movies.CustomerID) FROM Movies INNER JOIN pxar1 ON Movies.CustomerID = pxar1.customerid AND Movies.Movie= pxar1.movie WHERE

140 FROM [dbo].[pxar1] where ([Movie])) FROM [dbo].[movies] WHERE INSERT INTO [dbo].[resultsar1] ([CustomerID],[num_of_rec],[num_of_rating],[num_of_rating_per_user]) VALUES FETCH NEXT END --while end Οι εντολές για τη δημιουργία ενός Stored Procedure για τη βάση MovieLens είναι: USE [MovieLens] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[produceresultsar1] AS begin as numeric(18,0) as smallint as smallint as smallint CURSOR = CURSOR FAST_FORWARD FOR SELECT userid FROM RMusers GROUP BY userid order by userid FETCH NEXT = 0 BEGIN RMusers.movieID) FROM RMusers INNER JOIN RM3_V2_AR1 ON RMusers.userID = RM3_V2_AR1.userID AND RMusers.movieID = RM3_V2_AR1.MovieId WHERE (RMusers.userID FROM [dbo].[pxar1] where [userid]=@userid ([movieid])) FROM [dbo].[rmusers] WHERE [userid]=@userid INSERT INTO [dbo].[resultsar1] -140-

141 ([userid],[num_of_rec],[num_of_rating],[num_of_rating_per_user]) VALUES FETCH NEXT END --while end Τα ερωτήματα που τέθηκαν, για να μας δείξουν τα αποτελέσματα του Precision και του Recall για τη βάση δεδομένων της MovieClick είναι τα εξής: SELECT [CustomerID],[num_of_rec],[num_of_rating], cast(1.0*[num_of_rating]/[num_of_rec]*1.0 as decimal(5,2)) as Precision FROM [dbo].[results] SET ARITHABORT OFF SET ANSI_WARNINGS OFF SELECT [CustomerID],[num_of_rating],[num_of_rating_per_user], cast(1.0*[num_of_rating]/[num_of_rating_per_user]*1.0 as decimal(5,2)) as Recall FROM [dbo].[results] Τα ερωτήματα που τέθηκαν για να μας δείξουν τα αποτελέσματα του Precision και του Recall για τη βάση δεδομένων της MovieLens είναι τα εξής: SELECT [userid],[num_of_rec],[num_of_rating], cast(1.0*[num_of_rating]/[num_of_rec]*1.0 as decimal(5,2)) as Precision FROM [dbo].[results] SELECT [userid],[num_of_rating],[num_of_rating_per_user],cast(1.0*[num_of_rating]/[num_of_rating_per_use r]*1.0 as decimal(5,2)) as Recall FROM [dbo].[results] Κάποια ενδεικτικά αποτελέσματα που εμφανίζει ο πίνακας αξιολόγησης, φαίνονται στην εικόνα 126. Εικόνα 126: Αποτελέσματα πίνακα αξιολόγησης -141-

Πετράκης Κώστας ΓΤΠ-61 Μάρτιος 2015

Πετράκης Κώστας ΓΤΠ-61 Μάρτιος 2015 Πετράκης Κώστας ΓΤΠ-61 Μάρτιος 2015 Εισαγωγή Πρόβλημα Ορισμός Μέθοδοι πρόβλεψης προτιμήσεων Δημιουργία βέλτιστων προτάσεων Τεκμηρίωση προτάσεων Ενημέρωση και επεκτασιμότητα People read around 10 MB worth

Διαβάστε περισσότερα

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

ΔΙΟΙΚΗΣΗ ΠΑΡΑΓΩΓΗΣ. ΕΝΟΤΗΤΑ 4η ΠΡΟΒΛΕΨΗ ΖΗΤΗΣΗΣ ΤΕΙ ΚΡΗΤΗΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΔΙΟΙΚΗΣΗ ΠΑΡΑΓΩΓΗΣ ΕΝΟΤΗΤΑ 4η ΠΡΟΒΛΕΨΗ ΖΗΤΗΣΗΣ ΓΙΑΝΝΗΣ ΦΑΝΟΥΡΓΙΑΚΗΣ ΕΠΙΣΤΗΜΟΝΙΚΟΣ ΣΥΝΕΡΓΑΤΗΣ ΤΕΙ ΚΡΗΤΗΣ ΔΟΜΗ ΠΑΡΟΥΣΙΑΣΗΣ 1. Εισαγωγή

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΛΗΡΟΦΟΡΙΑΣ ΠΑΡΟΥΣΙΑΣΗ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΛΙΝΑ ΜΑΣΣΟΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΑΛΓΟΡΙΘΜΟΙ ΕΞΟΡΥΞΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΠΑΡΟΥΣΙΑΣΗ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΛΙΝΑ ΜΑΣΣΟΥ Δ.Π.Μ.Σ: «Εφαρμοσμένες Μαθηματικές Επιστήμες» 2008

Διαβάστε περισσότερα

Εισαγωγή στις Τεχνολογίες της

Εισαγωγή στις Τεχνολογίες της Εισαγωγή στις Τεχνολογίες της Πληροφορίας και των Επικοινωνιών Ενότητα 13 : Crowdsourcing, Τεχνητή Νοημοσύνη, Συστήματα σύστασης Διδάσκων: Νικόλαος Τσέλιος Τμήμα Επιστημών της Εκπαίδευσης και της Αγωγής

Διαβάστε περισσότερα

Τεχνικές Εξόρυξης Δεδομένων

Τεχνικές Εξόρυξης Δεδομένων ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ Διατμηματικό Μεταπτυχιακό Πρόγραμμα στα Πληροφοριακά Συστήματα ( MIS ) Τεχνικές Εξόρυξης Δεδομένων για την βελτίωση της απόδοσης σε Κατανεμημένα Συστήματα Ζάχος Δημήτριος Επιβλέποντες:

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΠΑΡΟΥΣΙΑΣΗ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ ΔΟΥΒΛΕΤΗΣ ΧΑΡΑΛΑΜΠΟΣ ΕΠΙΒΛΕΠΟΝΤΕΣ ΚΑΘΗΓΗΤΕΣ Μαργαρίτης Κωνσταντίνος Βακάλη

Διαβάστε περισσότερα

Ενότητα 1: Εισαγωγή. ΤΕΙ Στερεάς Ελλάδας. Τμήμα Φυσικοθεραπείας. Προπτυχιακό Πρόγραμμα. Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο )

Ενότητα 1: Εισαγωγή. ΤΕΙ Στερεάς Ελλάδας. Τμήμα Φυσικοθεραπείας. Προπτυχιακό Πρόγραμμα. Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο ) ΤΕΙ Στερεάς Ελλάδας Τμήμα Φυσικοθεραπείας Προπτυχιακό Πρόγραμμα Μάθημα: Βιοστατιστική-Οικονομία της υγείας Εξάμηνο: Ε (5 ο ) Ενότητα 1: Εισαγωγή Δρ. Χρήστος Γενιτσαρόπουλος Λαμία, 2017 1.1. Σκοπός και

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ. Ερωτήσεις πολλαπλής επιλογής. Συντάκτης: Δημήτριος Κρέτσης

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ. Ερωτήσεις πολλαπλής επιλογής. Συντάκτης: Δημήτριος Κρέτσης ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ Ερωτήσεις πολλαπλής επιλογής Συντάκτης: Δημήτριος Κρέτσης 1. Ο κλάδος της περιγραφικής Στατιστικής: α. Ασχολείται με την επεξεργασία των δεδομένων και την ανάλυση

Διαβάστε περισσότερα

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS Ακαδημαϊκό Έτος 2016-2017, Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS A. Εισαγωγή στις βάσεις δεδομένων - Γνωριμία με την ACCESS B. Δημιουργία Πινάκων 1. Εξήγηση των

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 07-08 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutras@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

Β Γραφικές παραστάσεις - Πρώτο γράφημα Σχεδιάζοντας το μήκος της σανίδας συναρτήσει των φάσεων της σελήνης μπορείτε να δείτε αν υπάρχει κάποιος συσχετισμός μεταξύ των μεγεθών. Ο συνήθης τρόπος γραφικής

Διαβάστε περισσότερα

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

ΜΕΘΟΔΟΛΟΓΙΑ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΟΣ ΠΡΟΤΑΣΕΩΝ ΣΤΙΣ ΤΟΥΡΙΣΤΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΟΣ ΠΡΟΤΑΣΕΩΝ ΣΤΙΣ ΤΟΥΡΙΣΤΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Ονοματεπώνυμο: Σπελέτα Ελισάβετ Σειρά: 12 Επιβλέπων Καθηγητής: Δημήτρης Κ. Καρδαράς Δεκέμβριος 2015 Τουρισμός Ο τουρισμός συμβάλει

Διαβάστε περισσότερα

Πολιτική για τα cookies

Πολιτική για τα cookies Πολιτική για τα cookies Έκδοση 1.0 Πολιτική για τα cookies Εισαγωγή Πληροφορίες για τα cookies Η πλειονότητα των ιστοτόπων που επισκέπτεστε χρησιμοποιεί τα cookies για να βελτιώνει την εμπειρία του χρήστη,

Διαβάστε περισσότερα

Κεφάλαιο 9. Εξαγωγή Κανόνων Συσχέτισης

Κεφάλαιο 9. Εξαγωγή Κανόνων Συσχέτισης Κεφάλαιο 9. Εξαγωγή Κανόνων Συσχέτισης Σύνοψη Σ αυτό το κεφάλαιο θα μελετήσουμε τον αλγόριθμο Assosiation Rules. Ο συγκεκριμένος αλγόριθμος παράγει συσχετίσεις μεταξύ αντικειμένων και ανήκει στην οικογένεια

Διαβάστε περισσότερα

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

Ηλεκτρονικό εμπόριο. HE 8 Εξατομίκευση Ηλεκτρονικό εμπόριο HE 8 Εξατομίκευση Πληροφοριακός υπερφόρτος (information overload) Αδυναμία διαχείρισης μεγάλου όγκου πληροφοριών και εντοπισμού της χρήσιμης πληροφορίας Η εξατομίκευση στοχεύει στην

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 06-07 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutra@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ 8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ Στόχος του εργαστηρίου αυτού είναι να δείξει πώς τα εργαστήρια με τα δεδομένα της ICAP μπορούν να υλοποιηθούν χωρίς τη χρήση SQL Server, χρησιμοποιώντας μόνον Excel και Rapid

Διαβάστε περισσότερα

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

Διαβάστε περισσότερα

Περιεχόμενα Πώς να χρησιμοποιήσετε το βιβλίο... 7 Αντί προλόγου... 9 Κεφάλαιο 1: Κεφάλαιο 2: Κεφάλαιο 3: Κεφάλαιο 4: Κεφάλαιο 5: Πώς να δημιουργήσω το Προφίλ μου και να γίνω μέλος στο Facebook;... 15 Τι

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων ΕΣΔ516 Τεχνολογίες Διαδικτύου Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων Περιεχόμενα - Βιβλιογραφία Ενότητας Περιεχόμενα Ορισμοί Συστατικά στοιχεία εννοιολογικής σχεδίασης Συστατικά

Διαβάστε περισσότερα

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

Βάσεις δεδομένων και Microsoft Access Περιεχόμενα Κεφάλαιο 1 Βάσεις δεδομένων και Microsoft Access... 7 Κεφάλαιο 2 Microsoft Access 2010... 16 Κεφάλαιο 3 Σχεδιασμός βάσης δεδομένων και δημιουργία πίνακα... 27 Κεφάλαιο 4 Προβολές πινάκων και

Διαβάστε περισσότερα

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

Η ΧΡΗΣΗ ΤΩΝ ΨΥΧΟΜΕΤΡΙΚΩΝ ΕΡΓΑΛΕΙΩΝ ΣΤΟΝ ΕΠΑΓΓΕΛΜΑΤΙΚΟ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟ Η ΧΡΗΣΗ ΤΩΝ ΨΥΧΟΜΕΤΡΙΚΩΝ ΕΡΓΑΛΕΙΩΝ ΣΤΟΝ ΕΠΑΓΓΕΛΜΑΤΙΚΟ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟ Δέσποινα Σιδηροπούλου-Δημακάκου Καθηγήτρια Ψυχολογίας Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών 1 ΕΠΑΓΓΕΛΜΑΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ Αναφέρεται

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΑΝΑΛΥΣΗ ΔΙΑΚΥΜΑΝΣΗΣ. Επικ. Καθ. Στέλιος Ζήμερας. Τμήμα Μαθηματικών Κατεύθυνση Στατιστικής και Αναλογιστικά Χρηματοοικονομικά Μαθηματικά

ΑΝΑΛΥΣΗ ΔΙΑΚΥΜΑΝΣΗΣ. Επικ. Καθ. Στέλιος Ζήμερας. Τμήμα Μαθηματικών Κατεύθυνση Στατιστικής και Αναλογιστικά Χρηματοοικονομικά Μαθηματικά ΑΝΑΛΥΣΗ ΔΙΑΚΥΜΑΝΣΗΣ Επικ. Καθ. Στέλιος Ζήμερας Τμήμα Μαθηματικών Κατεύθυνση Στατιστικής και Αναλογιστικά Χρηματοοικονομικά Μαθηματικά 2015 Πληθυσμός: Εισαγωγή Ονομάζεται το σύνολο των χαρακτηριστικών που

Διαβάστε περισσότερα

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο Το περιβάλλον εργασίας Ανοίγοντας την Ελληνική Έκδοση του FrontPage, για πρώτη φορά, η εικόνα που θα συναντήσουμε είναι αυτή της Εικόνας 1 με τα Μενού Εντολών και τη Γραμμή Εργαλείων, στο πάνω μέρος της

Διαβάστε περισσότερα

Τίτλος Πακέτου Certified Computer Expert-ACTA

Τίτλος Πακέτου Certified Computer Expert-ACTA Κωδικός Πακέτου ACTA - CCE - 002 Τίτλος Πακέτου Certified Computer Expert-ACTA Εκπαιδευτικές Ενότητες Επεξεργασία Κειμένου - Word Δημιουργία Εγγράφου Προχωρημένες τεχνικές επεξεργασίας κειμένου & αρχείων

Διαβάστε περισσότερα

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

Διαβάστε περισσότερα

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας. Η Πυξίδα Απασχόλησης είναι ένα πλήρως παραμετροποιήσιμο portal που απευθύνεται σε Κέντρα Επαγγελματικής Κατάρτισης, Δήμους, Εκπαιδευτικούς Οργανισμούς και Εταιρίες Εύρεσης Εργασίας, με στόχο τόσο την μηχανογράφηση

Διαβάστε περισσότερα

Social Web: lesson #3

Social Web: lesson #3 Social Web: lesson #3 tagging social organisation of information ratings democratic editorial control shared opinions collaborative filtering recommendations case studies del.icio.us digg last.fm το Tag...

Διαβάστε περισσότερα

5.1.1 Περιγραφή των συστατικών τμημάτων ενός γραφήματος

5.1.1 Περιγραφή των συστατικών τμημάτων ενός γραφήματος 5. Γραφήματα 5.1 Εισαγωγή 5.1.1 Περιγραφή των συστατικών τμημάτων ενός γραφήματος Το Discoverer παρέχει μεγάλες δυνατότητες στη δημιουργία γραφημάτων, καθιστώντας δυνατή τη διαμόρφωση κάθε συστατικού μέρους

Διαβάστε περισσότερα

4.2 Μελέτη Επίδρασης Επεξηγηματικών Μεταβλητών

4.2 Μελέτη Επίδρασης Επεξηγηματικών Μεταβλητών 4.2 Μελέτη Επίδρασης Επεξηγηματικών Μεταβλητών Στο προηγούμενο κεφάλαιο (4.1) παρουσιάστηκαν τα βασικά αποτελέσματα της έρευνάς μας σχετικά με την άποψη, στάση και αντίληψη των μαθητών γύρω από θέματα

Διαβάστε περισσότερα

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

Διαβάστε περισσότερα

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

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ Tel.: +30 2310998051, Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Σχολή Θετικών Επιστημών Τμήμα Φυσικής 541 24 Θεσσαλονίκη Καθηγητής Γεώργιος Θεοδώρου Ιστοσελίδα: http://users.auth.gr/theodoru ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

Διαβάστε περισσότερα

Στασιμότητα χρονοσειρών Νόθα αποτελέσματα-spurious regression Ο έλεγχος στασιμότητας είναι απαραίτητος ώστε η στοχαστική ανάλυση να οδηγεί σε ασφαλή

Στασιμότητα χρονοσειρών Νόθα αποτελέσματα-spurious regression Ο έλεγχος στασιμότητας είναι απαραίτητος ώστε η στοχαστική ανάλυση να οδηγεί σε ασφαλή Χρονικές σειρές 12 Ο μάθημα: Έλεγχοι στασιμότητας ΑΝΑΚΕΦΑΛΑΙΩΣΗ: Εκτίμηση παραμέτρων γραμμικών μοντέλων Συνάρτηση μερικής αυτοσυσχέτισης Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική

Διαβάστε περισσότερα

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

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

7. ΣΥΣΤΗΜΑΤΑ ΕΞΟΡΥΞΗΣ ΔΕΔΟΜΕΝΩΝ

7. ΣΥΣΤΗΜΑΤΑ ΕΞΟΡΥΞΗΣ ΔΕΔΟΜΕΝΩΝ 7. ΣΥΣΤΗΜΑΤΑ ΕΞΟΡΥΞΗΣ ΔΕΔΟΜΕΝΩΝ ΠΡΟΣΟΧΗ: Κάθε φορά που θα φθάνετε στο σημείο αυτό πριν από τη δημιουργία κάθε μοντέλου, το σύστημα δίνει αυτόματα δυο αριθμήσεις: (1) στο τέλος του πεδίου Structure name

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018 Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα

Διαβάστε περισσότερα

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής Μάθημα 7ο Πολυμέσα 7.Α.1 Παρουσιάσεις Οι παρουσιάσεις είναι μια εφαρμογή που χρησιμεύει στην παρουσίαση των εργασιών μας. Αποτελούν μια συνοπτική μορφή των εργασιών μας. Μέσω δημιουργίας διαφανειών, μορφοποιήσεων

Διαβάστε περισσότερα

Βάσεις Δεδομένων Ενότητα 1

Βάσεις Δεδομένων Ενότητα 1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 1: Εισαγωγή στις Ιωάννης Μανωλόπουλος, Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

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

ΑΝΑΓΝΩΡΙΣΗ ΚΟΙΝΟΤΗΤΩΝ ΚΑΙ ΣΥΣΤΑΣΗ ΠΛΗΡΟΦΟΡΙΑΣ ΜΕ ΤΗΝ ΧΡΗΣΗ ΣΥΝΘΕΤΙΚΩΝ ΣΥΝΤΕΤΑΓΜΕΝΩΝ ΑΝΑΓΝΩΡΙΣΗ ΚΟΙΝΟΤΗΤΩΝ ΚΑΙ ΣΥΣΤΑΣΗ ΠΛΗΡΟΦΟΡΙΑΣ ΜΕ ΤΗΝ ΧΡΗΣΗ ΣΥΝΘΕΤΙΚΩΝ ΣΥΝΤΕΤΑΓΜΕΝΩΝ Παπαδάκης Χαράλαμπος 1, Παναγιωτάκης Κώστας 2, Παρασκευή Φραγκοπούλου 1 1 Τμήμα Μηχ/κών Πληροφορικής, ΤΕΙ Κρήτης 2 Τμήμα

Διαβάστε περισσότερα

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

Περιεχόμενα. Αντί προλόγου Πώς να χρησιμοποιήσετε το βιβλίο Κεφάλαιο 1: Πώς δημιουργώ το Προφίλ μου στο Facebook;... Περιεχόμενα Αντί προλόγου... 7 Πώς να χρησιμοποιήσετε το βιβλίο... 13 Κεφάλαιο 1: Πώς δημιουργώ το Προφίλ μου στο Facebook;...15 Κεφάλαιο 2: Τι βλέπω στην οθόνη μου όταν ολοκληρώσω τη δημιουργία του Προφίλ

Διαβάστε περισσότερα

Το σύστημα θα πρέπει να σχεδιαστεί με τρόπο που θα ικανοποιήσει τις απαιτήσεις του χρήστη εύκολα.

Το σύστημα θα πρέπει να σχεδιαστεί με τρόπο που θα ικανοποιήσει τις απαιτήσεις του χρήστη εύκολα. Έγγραφο απαιτήσεων 1 Περιγραφή Συστήματος Η online ιστοσελίδα και η αντίστοιχη έκδοση για κινητά τηλέφωνα έχει ως στόχο να υποστηρίξει και να ενισχύσει το User Experience (UX) των επισκεπτών του e-museum,

Διαβάστε περισσότερα

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

Οδηγός γρήγορης εκκίνησης Οδηγός γρήγορης εκκίνησης Το Microsoft Word 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης. Γραμμή

Διαβάστε περισσότερα

Στατιστική Ι. Ενότητα 9: Κατανομή t-έλεγχος Υποθέσεων. Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών

Στατιστική Ι. Ενότητα 9: Κατανομή t-έλεγχος Υποθέσεων. Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών Στατιστική Ι Ενότητα 9: Κατανομή t-έλεγχος Υποθέσεων Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΔΙΚΤΥΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΓΙΑ ΕΚΤΕΛΕΣΗ ΕΡΓΑΣΙΩΝ ΑΠΟ ΤΟΥΣ ΦΟΙΤΗΤΕΣ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΚΥΠΡΟΥ. Μιχάλης Ιωάννου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ

ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΔΙΚΤΥΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΓΙΑ ΕΚΤΕΛΕΣΗ ΕΡΓΑΣΙΩΝ ΑΠΟ ΤΟΥΣ ΦΟΙΤΗΤΕΣ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΚΥΠΡΟΥ. Μιχάλης Ιωάννου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΔΙΚΤΥΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΓΙΑ ΕΚΤΕΛΕΣΗ ΕΡΓΑΣΙΩΝ ΑΠΟ ΤΟΥΣ ΦΟΙΤΗΤΕΣ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΚΥΠΡΟΥ Μιχάλης Ιωάννου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Μάιος 2014 i ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Διαβάστε περισσότερα

ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την

ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την 1 ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την παλαιότερη γνώση τους, σημειώνουν λεπτομέρειες, παρακολουθούν

Διαβάστε περισσότερα

Ηλεκτρονικό Εμπόριο. Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ηλεκτρονικό Εμπόριο. Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ηλεκτρονικό Εμπόριο Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

1. Σκοπός της έρευνας

1. Σκοπός της έρευνας Στατιστική ανάλυση και ερμηνεία των αποτελεσμάτων των εξετάσεων πιστοποίησης ελληνομάθειας 1. Σκοπός της έρευνας Ο σκοπός αυτής της έρευνας είναι κυριότατα πρακτικός. Η εξέταση των δεκτικών/αντιληπτικών

Διαβάστε περισσότερα

«Καθοριστικοί παράγοντες της αποτελεσματικότητας της από στόμα-σε-στόμα επικοινωνίας στις ιστοσελίδες κοινωνικής δικτύωσης»

«Καθοριστικοί παράγοντες της αποτελεσματικότητας της από στόμα-σε-στόμα επικοινωνίας στις ιστοσελίδες κοινωνικής δικτύωσης» «Καθοριστικοί παράγοντες της αποτελεσματικότητας της από στόμα-σε-στόμα επικοινωνίας στις ιστοσελίδες κοινωνικής δικτύωσης» Ονοματεπώνυμο: Ταχταρά Κατερίνα Σειρά: 8 η Επιβλέπων Καθηγητής: Βρεχόπουλος Αδάμ

Διαβάστε περισσότερα

Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση

Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση Εκεί που είμαστε Κεφάλαια 7 και 8: Οι διωνυμικές,κανονικές, εκθετικές κατανομές και κατανομές Poisson μας επιτρέπουν να κάνουμε διατυπώσεις πιθανοτήτων γύρω από το Χ

Διαβάστε περισσότερα

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

Κατακερματισμός (Hashing) Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση

Διαβάστε περισσότερα

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ Ενότητα: Αναγνώριση Διεργασίας - Προσαρμοστικός Έλεγχος (Process Identification) Αλαφοδήμος Κωνσταντίνος

Διαβάστε περισσότερα

Τεχνική υποστήριξη λογισμικού HP

Τεχνική υποστήριξη λογισμικού HP Τεχνική υποστήριξη λογισμικού HP Τεχνολογικές υπηρεσίες HP βάσει συμβολαίου Τεχνικά δεδομένα Η τεχνική υποστήριξη λογισμικού HP παρέχει ολοκληρωμένες υπηρεσίες απομακρυσμένης υποστήριξης για προϊόντα λογισμικού

Διαβάστε περισσότερα

3. ΣΕΙΡΙΑΚΟΣ ΣΥΝΤΕΛΕΣΤΗΣ ΣΥΣΧΕΤΙΣΗΣ

3. ΣΕΙΡΙΑΚΟΣ ΣΥΝΤΕΛΕΣΤΗΣ ΣΥΣΧΕΤΙΣΗΣ 3. ΣΕΙΡΙΑΚΟΣ ΣΥΝΤΕΛΕΣΤΗΣ ΣΥΣΧΕΤΙΣΗΣ Πρόβλημα: Ένας ραδιοφωνικός σταθμός ενδιαφέρεται να κάνει μια ανάλυση για τους πελάτες του που διαφημίζονται σ αυτόν για να εξετάσει την ποσοστιαία μεταβολή των πωλήσεων

Διαβάστε περισσότερα

Διοίκηση Έργου. Ενότητα 2: Επιλογή Έργων. Σαμαρά Ελπίδα Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη)

Διοίκηση Έργου. Ενότητα 2: Επιλογή Έργων. Σαμαρά Ελπίδα Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Διοίκηση Έργου Ενότητα 2: Επιλογή Έργων Σαμαρά Ελπίδα Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

Διαβάστε περισσότερα

Μέρος Β /Στατιστική. Μέρος Β. Στατιστική. Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua.

Μέρος Β /Στατιστική. Μέρος Β. Στατιστική. Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua. Μέρος Β /Στατιστική Μέρος Β Στατιστική Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua.gr/gpapadopoulos) Από τις Πιθανότητες στη Στατιστική Στα προηγούμενα, στο

Διαβάστε περισσότερα

Πανεπιστήμιο Πατρών Μεταπτυχιακό Τμήμα Διοίκησης Επιχειρήσεων

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

Διαβάστε περισσότερα

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

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΘΕΣΣΑΛΟΝΙΚΗ, 2016 ΕΙΣΑΓΩΓΗ Μια διαδικτυακή υπηρεσία μπορεί να περιγραφεί απλά σαν μια οποιαδήποτε

Διαβάστε περισσότερα

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Φτάσαμε σιγά σιγά στο τέλος του βιβλίου. Αντί για κάποιον επίλογο σκέφτηκα να συλλέξω κάποια πράγματα που θα ήθελα να πω σε κάποιον ο οποίος αρχίζει

Διαβάστε περισσότερα

Προσωπικά Δεδομένα στα Windows 10: Τι Ξέρει η Microsoft

Προσωπικά Δεδομένα στα Windows 10: Τι Ξέρει η Microsoft revealedtheninthwave.blogspot.gr http://revealedtheninthwave.blogspot.gr/2015/08/windows-10-microsoft.html? utm_source=feedburner&utm_medium=email&utm_campaign=feed:+blogspot/qsuul+(αποκαλυψη+το+ενατο+κυμα)

Διαβάστε περισσότερα

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

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΜΟΣ ΝΕΩΝ ΠΡΟΪΟΝΤΩΝ ΕΙΣΗΓΗΤΗΣ: Δρ. Ιωάννης Σ. Τουρτούρας Μηχανικός Παραγωγής & Διοίκησης Δ.Π.Θ. Χρηματοδότηση Το

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΚΑΙ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗΣ ΜΕΤΟΧΙΑΝΑΚΗ ΙΩΑΝΝΑ ΑΜ:6725 ΠΛΗΡΟΦΟΡΙΑΚΟ ΣΥΣΤΗΜΑ ΓΙΑ ΑΛΥΣΙΔΑ SUPERMARKET ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων:

Διαβάστε περισσότερα

Αλεξάνδρειο ΣΕΙ Θεσσαλονίκης 1. Σμήμα Διοίκησης Επιχειρήσεων 2. Σμήμα Μηχανικών Πληροφορικής

Αλεξάνδρειο ΣΕΙ Θεσσαλονίκης 1. Σμήμα Διοίκησης Επιχειρήσεων 2. Σμήμα Μηχανικών Πληροφορικής Εξόρυξη γνώσης από σχόλια σε τουριστικές ιστοσελίδες και παραγοντική ανάλυση του αισθήματος ικανοποίησης των πελατών για το ξενοδοχείο τους Γιώργος ταλίδης 1, Παναγιώτης ταλίδης 2, Κώστας Διαμαντάρας 2

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο.

Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο. Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο. Εισηγητής : Χρήστος Μανώλης δάσκαλος Θεσσαλονίκη Οκτώβριος - Δεκέμβριος

Διαβάστε περισσότερα

Η προβολή πολυτελών υπηρεσιών μέσω του διαδικτύου και των μέσων κοινωνικής δικτύωσης

Η προβολή πολυτελών υπηρεσιών μέσω του διαδικτύου και των μέσων κοινωνικής δικτύωσης Η προβολή πολυτελών υπηρεσιών μέσω του διαδικτύου και των μέσων κοινωνικής δικτύωσης Δομή έρευνας Εισαγωγή Βασικές Έννοιες και Εργαλεία Έρευνας Σχεδιασμός Έρευνας Σκοπός Έρευνας Στρατηγική Έρευνας και

Διαβάστε περισσότερα

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

Ανακάλυψη κανόνων συσχέτισης από εκπαιδευτικά δεδομένα 6ο Πανελλήνιο Συνέδριο των Εκπαιδευτικών για τις ΤΠΕ «Αξιοποίηση των Τεχνολογιών της Πληροφορίας και της Επικοινωνίας στη Διδακτική Πράξη» Σύρος 6-8 Μαϊου 2011 Ανακάλυψη κανόνων συσχέτισης από εκπαιδευτικά

Διαβάστε περισσότερα

iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος

iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος xi 1 Αντικείμενα των Πιθανοτήτων και της Στατιστικής 1 1.1 Πιθανοτικά Πρότυπα και Αντικείμενο των Πιθανοτήτων, 1 1.2 Αντικείμενο της Στατιστικής, 3 1.3 Ο Ρόλος των Πιθανοτήτων

Διαβάστε περισσότερα

Data Mining: Στοχεύοντας στους σωστούς πελάτες. Αριστομένης Μακρής

Data Mining: Στοχεύοντας στους σωστούς πελάτες. Αριστομένης Μακρής Data Mining: Στοχεύοντας στους σωστούς πελάτες To CRM front-office πελατών Οι Προμηθευτές Οι Πελάτες ΟΟργανισμός Τροφοδότηση ενεργειών Μάρκετινγκ ΒΙ Απόταδεδομέναστηγνώση Επιχειρηματική Γνώση Επιχειρηματικοί

Διαβάστε περισσότερα

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2019 Β ΦΑΣΗ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2019 Β ΦΑΣΗ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΑΞΗ: ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΣ: ΜΑΘΗΜΑ: Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ημερομηνία: Σάββατο 20 Απριλίου 2019 Διάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

Διαβάστε περισσότερα

Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης

Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης 1 Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης Όπως γνωρίζουμε από προηγούμενα κεφάλαια, στόχος των περισσότερων στατιστικών αναλύσεων, είναι η έγκυρη γενίκευση των συμπερασμάτων, που προέρχονται από

Διαβάστε περισσότερα

ΛΥΜΕΝΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΟ 2 ο ΚΕΦΑΛΑΙΟ

ΛΥΜΕΝΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΟ 2 ο ΚΕΦΑΛΑΙΟ ΛΥΜΕΝΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΟ 2 ο ΚΕΦΑΛΑΙΟ 1. Έστω συνάρτηση ζήτησης με τύπο Q = 200 4P. Να βρείτε: α) Την ελαστικότητα ως προς την τιμή όταν η τιμή αυξάνεται από 10 σε 12. 1ος τρόπος Αν P 0 10 τότε Q 0 200 410

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΤΟΥ FACEBOOK

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΤΟΥ FACEBOOK ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΤΟΥ FACEBOOK Πίνακας περιεχομένων Α. Σελίδες... 3 Πώς να δημιουργήσετε μία σελίδα στο facebook... 3 Ποιος μπορεί να δημιουργήσει μια σελίδα ;... 3 Ποια ονόματα σελίδων επιτρέπονται στο Facebook;...

Διαβάστε περισσότερα

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

ΠΕΡΙΠΤΩΣΙΟΛΟΓΙΚΗ ΔΟΚΙΜΗ 2018: ΝΟΜΙΜΗ ΔΙΑΔΙΚΤΥΑΚΗ ΔΙΑΘΕΣΗ ΤΑΙΝΙΩΝ ΠΕΡΙΛΗΨΗ ΠΕΡΙΠΤΩΣΙΟΛΟΓΙΚΗ ΔΟΚΙΜΗ 2018: ΝΟΜΙΜΗ ΔΙΑΔΙΚΤΥΑΚΗ ΠΕΡΙΛΗΨΗ Γραφείο Διανοητικής Ιδιοκτησίας της Ευρωπαϊκής Ένωσης, 2018 Επιτρέπεται η αναπαραγωγή με αναφορά της πηγής. ΕΚΘΕΣΗ ΤΟΥ 2018 ΣΧΕΤΙΚΑ ΜΕ ΤΗΝ ΠΕΡΙΠΤΩΣΙΟΛΟΓΙΚΗ

Διαβάστε περισσότερα

Εισαγωγή στο 3DS Max 2009

Εισαγωγή στο 3DS Max 2009 Μάθημα 1ο Εισαγωγή στο 3DS Max 2009 Σε αυτό το μάθημα πραγματοποιείται εκμάθηση του περιβάλλοντος του προγράμματος 3DS Max 2009. Το 3D Studio Max είναι ένα από τα ισχυρότερα προγράμματα δημιουργίας και

Διαβάστε περισσότερα

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

Διαβάστε περισσότερα

Προγράμματα Προσήλωσης και Ηλεκτρονική Διαχείριση Σχέσεων Πελατών: Επιχειρηματικές Πρακτικές και Συμπεριφορά Καταναλωτή

Προγράμματα Προσήλωσης και Ηλεκτρονική Διαχείριση Σχέσεων Πελατών: Επιχειρηματικές Πρακτικές και Συμπεριφορά Καταναλωτή Προγράμματα Προσήλωσης και Ηλεκτρονική Διαχείριση Σχέσεων Πελατών: Επιχειρηματικές Πρακτικές και Συμπεριφορά Καταναλωτή Βασιλική Τσιλιγιάννη Σειρά: 11 Επιβλέπων Καθηγητής: Αδάμ Βρεχόπουλος Δεκέμβριος 2014

Διαβάστε περισσότερα

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

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access Κεφάλαιο 2: Microsoft Access Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access... 9 Κεφάλαιο 2: Microsoft Access 2002... 20 Κεφάλαιο 3: Το σύστημα Βοήθειας του Microsoft Office ΧΡ... 36

Διαβάστε περισσότερα

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Σύνοψη Σ αυτό το κεφάλαιο θα περιγράψουμε τη δημιουργία φορμών, προκειμένου να εισάγουμε δεδομένα και να εμφανίζουμε στοιχεία από τους πίνακες

Διαβάστε περισσότερα

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΘΕΟΔΟΣΙΟΥ ΝΙΚΗ Α.Μ. 103/04 ΠΑΠΑΠΕΤΡΟΥ ΦΩΤΕΙΝΗ Α.Μ. 134/04 Εξεταστική Επιτροπή Επιβλέπουσα Καθηγήτρια : Σατρατζέμη Μαρία, Καθηγήτρια Μέλη : Ευαγγελίδης

Διαβάστε περισσότερα

Εφαρμοσμένη Στατιστική: Συντελεστής συσχέτισης. Παλινδρόμηση απλή γραμμική, πολλαπλή γραμμική

Εφαρμοσμένη Στατιστική: Συντελεστής συσχέτισης. Παλινδρόμηση απλή γραμμική, πολλαπλή γραμμική ΕΦΑΡΜΟΣΜΕΝΗ ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕΡΟΣ B Δημήτρης Κουγιουμτζής e-mal: dkugu@auth.gr Ιστοσελίδα αυτού του τμήματος του μαθήματος: http://uer.auth.gr/~dkugu/teach/cvltraport/dex.html Εφαρμοσμένη Στατιστική:

Διαβάστε περισσότερα

ΜΕΣΑ ΚΟΙΝΩΝΙΚΗΣ ΔΙΚΤΥΩΣΗΣ

ΜΕΣΑ ΚΟΙΝΩΝΙΚΗΣ ΔΙΚΤΥΩΣΗΣ ΣΤΟΧΟΣ ΕΡΕΥΝΑΣ...είναι να διερευνηθεί κατά πόσο γίνεται χρήση των Social Media στο πολιτικό μάρκετινγκ στην Ελλάδα και ποια είναι η σχέση της χρήσης αυτών των μέσων με την πολιτική συμπεριφορά... Συγκεκριμένα,

Διαβάστε περισσότερα

2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων

2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων 2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων Μετά τον μετασχηματισμό των δεδομένων με τη χρήση του Excel, τα δεδομένα θα εισαχθούν σε μια σχεσιακή βάση δεδομένων (Microsoft SQL Sever 2005) ώστε να

Διαβάστε περισσότερα

Διαχείριση Έργων Πληροφορικής Εργαστήριο

Διαχείριση Έργων Πληροφορικής Εργαστήριο Διαχείριση Έργων Πληροφορικής Εργαστήριο «Εισαγωγή στο MS Project- Διάγραμμα Gantt» Μ.Τσικνάκης, Ρ.Χατζάκη Ε. Μανιαδή, Ά. Μαριδάκη 1. Εισαγωγή στο Microsoft Project To λογισμικό διαχείρισης έργων MS Project

Διαβάστε περισσότερα

Αγορά Πληροφορικής. Προϊόντα και Υπηρεσίες.

Αγορά Πληροφορικής. Προϊόντα και Υπηρεσίες. Αγορά Πληροφορικής. Προϊόντα και Υπηρεσίες. Υποδειγματικό Σενάριο Γνωστικό αντικείμενο: Πληροφορική Δημιουργός: ΚΩΝΣΤΑΝΤΙΝΑ ΚΟΝΤΟΣΗ ΙΝΣΤΙΤΟΥΤΟ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΠΟΛΙΤΙΚΗΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ, ΕΡΕΥΝΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ

Διαβάστε περισσότερα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv Σ ΤΑΤ Ι Σ Τ Ι Κ Η i Statisticum collegium iv Στατιστική Συμπερασματολογία Ι Σημειακές Εκτιμήσεις Διαστήματα Εμπιστοσύνης Στατιστική Συμπερασματολογία (Statistical Inference) Το πεδίο της Στατιστικής Συμπερασματολογία,

Διαβάστε περισσότερα

Διπλωματική Εργασία: «Συγκριτική Μελέτη Μηχανισμών Εκτίμησης Ελλιπούς Πληροφορίας σε Ασύρματα Δίκτυα Αισθητήρων»

Διπλωματική Εργασία: «Συγκριτική Μελέτη Μηχανισμών Εκτίμησης Ελλιπούς Πληροφορίας σε Ασύρματα Δίκτυα Αισθητήρων» Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πρόγραμμα Μεταπτυχιακών Σπουδών Διπλωματική Εργασία: «Συγκριτική Μελέτη Μηχανισμών Εκτίμησης Ελλιπούς Πληροφορίας σε Ασύρματα Δίκτυα Αισθητήρων» Αργυροπούλου Αιμιλία

Διαβάστε περισσότερα

ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΟΔΗΓΟΣ E-LEARNING

ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΟΔΗΓΟΣ E-LEARNING ΚΑΙΝΟΤΟΜΕΣ ΛΥΣΕΙΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗΣ ΑΘΗΝΑ 2014 1 1. Τι είναι το e-learning; Το e-learning, η ηλεκτρονική μάθηση, είναι μια διαδικασία μάθησης και ταυτόχρονα μια μεθοδολογία εξ αποστάσεως εκπαίδευσης

Διαβάστε περισσότερα

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

Σ ΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΚΑΙ ΕΡΜΗΝΕΙΑ ΑΠΟΤΕΛΕΣΜΑΤΩΝ Σ ΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΚΑΙ ΕΡΜΗΝΕΙΑ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΤΩΝ ΕΞΕΤΑΣΕΩΝ Μ ΑΪΟΥ 2002 2004 Δ ΕΥΤΕΡΟ ΜΕΡΟΣ Π ΕΡΙΛΗΨΗ: Η μελέτη αυτή έχει σκοπό να παρουσιάσει και να ερμηνεύσει τα ευρήματα που προέκυψαν από τη στατιστική

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Information Technology for Business

Information Technology for Business Information Technology for Business! Lecturer: N. Kyritsis, MBA, Ph.D. Candidate!! e-mail: kyritsis@ist.edu.gr Διαχείριση Επιχειρηματικών Δεδομένων - Databases Ορισμός Βάσης Δεδομένων Συλλογή συναφών αρχείων

Διαβάστε περισσότερα

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

ΕΙΔΗ ΕΡΕΥΝΑΣ I: ΠΕΙΡΑΜΑΤΙΚΗ ΕΡΕΥΝΑ & ΠΕΙΡΑΜΑΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΤΕΧΝΙΚΕΣ ΕΡΕΥΝΑΣ (# 252) Ε ΕΞΑΜΗΝΟ 9 η ΕΙΣΗΓΗΣΗ ΣΗΜΕΙΩΣΕΙΣ ΕΙΔΗ ΕΡΕΥΝΑΣ I: ΠΕΙΡΑΜΑΤΙΚΗ ΕΡΕΥΝΑ & ΠΕΙΡΑΜΑΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΛΙΓΗ ΘΕΩΡΙΑ Στην προηγούμενη διάλεξη μάθαμε ότι υπάρχουν διάφορες μορφές έρευνας

Διαβάστε περισσότερα

ΑΠΟ ΤΟ ΔΕΙΓΜΑ ΣΤΟΝ ΠΛΗΘΥΣΜΟ

ΑΠΟ ΤΟ ΔΕΙΓΜΑ ΣΤΟΝ ΠΛΗΘΥΣΜΟ ΑΠΟ ΤΟ ΔΕΙΓΜΑ ΣΤΟΝ ΠΛΗΘΥΣΜΟ Το ενδιαφέρον επικεντρώνεται πάντα στον πληθυσμό Το δείγμα χρησιμεύει για εξαγωγή συμπερασμάτων για τον πληθυσμό π.χ. το ετήσιο εισόδημα των κατοίκων μιας περιοχής Τα στατιστικά

Διαβάστε περισσότερα

Τσέκαρέ το! Facebook Check

Τσέκαρέ το! Facebook Check Facebook Check Ξέρεις καλά όλους τους «φίλους» σου; Ποιος μπορεί να δει τι κοινοποιείς στο Facebook; Διατήρησε τον έλεγχο των δημοσιεύσεών σου! Πώς διαχειρίζεσαι τις λίστες των «φίλων» σου; Πώς μπορείς

Διαβάστε περισσότερα

Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015

Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015 Εκπαίδευση Ενηλίκων: Εμπειρίες και Δράσεις ΑΘΗΝΑ, Δευτέρα 12 Οκτωβρίου 2015 Μάθηση και γνώση: μια συνεχής και καθοριστική αλληλοεπίδραση Αντώνης Λιοναράκης Στην παρουσίαση που θα ακολουθήσει θα μιλήσουμε

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟ Ι. ΓΙΑΝΝΑΤΣΗΣ

ΑΝΤΙΚΕΙΜΕΝΟ Ι. ΓΙΑΝΝΑΤΣΗΣ ΣΧΕΔΙΑΣΜΟΣ ΣΥΣΤΗΜΑΤΩΝ ΠΑΡΑΓΩΓΗΣ ΜΕΤΡΗΣΗ ΕΡΓΑΣΙΑΣ Ι. ΓΙΑΝΝΑΤΣΗΣ ΑΝΤΙΚΕΙΜΕΝΟ Η Μέτρηση Εργασίας (Work Measurement ή Time Study) έχει ως αντικείμενο τον προσδιορισμό του χρόνου που απαιτείται από ένα ειδικευμένο

Διαβάστε περισσότερα