ΜΥΕ012/ΠΛΕ059 – Εξόρυξη Δεδομένων

Χειμερινό Εξάμηνο, 2017

 

Αρχική

Υλικό

Διαφάνειες

Ασκήσεις

Γενικές Πληροφορίες

Ώρες Διδασκαλίας: Τρίτη 4:00-7:00 μ.μ.
Διδάσκων: Παναγιώτης Τσαπάρας (
tsap _at_ cs.uoi.gr), Γραφείο Β.3

Παλαιότερα Μαθήματα: Εαρινό Εξάμηνο 2012, Χειμερινό Εξάμηνο 2012, Χειμερινό Εξάμηνο 2013, Χειμερινό Εξάμηνο 2014, Χειμερινό Εξάμηνο 2015, Εαρινό Εξάμηνο 20127

Βαθμολογία: Ο βαθμός του μαθήματος προκύπτει από τις ασκήσεις και project τα οποία είναι απαλλακτικά. Δεν υπάρχει τελική εξέταση ούτε τον Ιανουάριο, ούτε το Σεπτέμβριο.

Διαδικαστικά: Η διαφάνειες με τις διαδικαστικές λεπτομέρειες (pdf)

 

Ανακοινώσεις

 

·       Παρασκευή 2/3: Τελική βαθμολογία. Η τελική βαθμολογία είναι εδώ.

·       Δευτέρα 26/2: Πρόγραμμα Εξέτασης Τρίτης Άσκησης: Το πρόγραμμα της εξέτασης για την Τρίτη Άσκηση είναι εδώ. Αν έχετε κάποιο πρόβλημα με την ώρα παρακαλώ ενημερώστε με το συντομότερο δυνατό.

·       Σάββατο 24/2: Εξέταση Τρίτης Άσκησης: Η εξέταση της Τρίτης Άσκησης θα γίνει αυτή την εβδομάδα, την Τετάρτη 28/2. Οι διαθέσιμες ώρες είναι είτε πριν τις 11 είτε μετά τις 1. Παρακαλώ στείλτε μου τις ώρες που σας βολεύουν, ή μια εναλλακτική μέρα και ώρα μέσα στην επόμενη εβδομάδα.

·       Δευτέρα 12/2: Παράταση Άσκησης 3: Η Άσκηση παίρνει παράταση μέχρι το τέλος της Παρασκευής 16/2. Ο διαγωνισμός στο Kaggle θα είναι ανοιχτός μέχρι την Δευτέρα, για αυτούς που έχουν free passes, η κανονική προθεσμία είναι και για τον διαγωνισμό στο τέλος της Παρασκευής.

·       Πέμπτη 1/2: Σχετικά με την Ερώτηση 4 της Τρίτης Άσκησης: Στην ερώτηση αυτή σας ζητείται να συγκρίνετε ένα νέο αλγόριθμο συστάσεων με τους αλγορίθμους που υλοποιήσατε για την Δεύτερη άσκηση στα δεδομένα που δημιουργήσατε στην Δεύτερη άσκηση. Για την ερώτηση αυτή μπορείτε να βελτιώσετε τη λύση που υλοποιήσατε στην δεύτερη σειρά και να διορθώσετε λάθη που κάνατε στην δημιουργία των δεδομένων. Συχνά λάθη στην άσκηση αυτή ήταν τα εξής:

o   Επαναληπτικό κλάδεμα. Η άσκηση σας ζητούσε να κλαδέψετε επαναληπτικά  χρήστες και επιχειρήσεις μέχρις ότου στα δεδομένα που θα δημιουργήσετε  όλοι οι χρήστες να έχουν βαθμολογήσει τουλάχιστον 10 επιχειρήσεις, και κάθε επιχείρηση να έχει τουλάχιστον 10 ratings. Κάθε φορά που κλαδεύετε ένα χρήστη ή μια επιχείρηση, αλλάζει ο αριθμός των ratings που έχει δεχτεί μια επιχείρηση, ή που έχει κάνει ένας χρήστης. Πρέπει να γίνει επαναληπτικά η διαδικασία μέχρι να μην μπορούμε να κάνουμε άλλο κλάδεμα.

o   Χρήση αργών δομών: Κάποιοι παραπονέθηκαν ότι το πρόγραμμα ήταν πολύ αργό ή τρώει πολύ μνήμη. Για το δεύτερο, θα πρέπει να φορτώσετε μόνο τα δεδομένα από το Τορόντο. Το πρώτο φιλτράρισμα θα πρέπει να γίνει ενώ διαβάζετε τα δεδομένα και ποτέ δεν θα φορτώσετε όλες τις γραμμές του αρχείου. Μετά θα πρέπει να δημιουργήσετε τις κατάλληλες δομές ώστε το πρόγραμμα σας να τρέχει γρήγορα. Η αποθήκευση σε λίστες είναι αργή αν θέλετε να ψάξετε μια επιχείρηση, ή χρήστη. Η πιο λογική δομή είναι λεξικό, το οποίο θα έχει τιμές λεξικά. Επίσης μπορεί να χρειαστεί να κάνετε δύο τέτοια λεξικά, ένα για χρήστες και ένα για επιχειρήσεις.

o   Δειγματοληψία: Η δειγματοληψία πρέπει να γίνει στα ratings όχι στους χρήστες ή στις επιχειρήσεις.

o   Υπολογισμός ομοιότητας: Για τον υπολογισμό της ομοιότητας αφαιρέσετε την μέση τιμή των μη μηδενικών στοιχείων (μιας γραμμής ή μια στήλης) από τα μη μηδενικά στοιχεία και πάρετε το cosine similarity. Μην πάρετε την συνολική μέση τιμή της γραμμής ή της στήλης γιατί αυτή λαμβάνει υπόψη και τα μηδενικά.

o   Γείτονες: Όταν κοιτάτε τους Κ πιο κοντινούς γείτονες ενός χρήστη, πρέπει να πάρετε τους Κ πιο κοντινούς που έχουν κάνει rate την επιχείρηση που κοιτάμε (ή αντίστοιχα για μια επιχείρηση τις επιχειρήσεις που έχουν γίνει rated από τον χρήστη που κοιτάμε). Αλλιώς μπορεί να συμπεριλάβετε πολλά μηδενικά.

o   SVD: Πειραματιστείτε με αρκετά Κ για το SVD και πάρετε και πιο μεγάλες τιμές (π.χ., Κ = 100).

·       Τετάρτη 31/1: Βαθμολογία Ασκήσεων 1&2: Η βαθμολογία για τις δύο πρώτες σειρές ασκήσεων είναι εδώ.

·       Τρίτη 23/1: Πρόγραμμα Εξετάσεων Ασκήσεις 1&2: Το πρόγραμμα των εξετάσεων είναι εδώ. Η εξέταση θα είναι περίπου 45 λεπτά ανά άτομο, μπορείτε να είσαστε λίγο πιο νωρίς σε περίπτωση που τελειώσει νωρίτερα. Αν έχετε κάποιο πρόβλημα με την ώρα ενημερώστε με. Αν γίνεται αυτοί που ζήτησαν να εξεταστούν Παρασκευή να μετακινηθούν Τετάρτη ή Πέμπτη, θα βόλευε

·       Κυριακή 21/1. Εξέταση Ασκήσεων 1&2: Η εξέταση των δύο πρώτων ασκήσεων θα γίνει την επόμενη εβδομάδα Τετάρτη-Παρασκευή 24-26/1. Στείλετε μου email αν θέλετε να εξεταστείτε για τις δύο πρώτες ασκήσεις, και την διαθεσιμότητα σας για 24-16/1. Να υπενθυμίσω ότι όποιος δεν εξεταστεί για τις δύο πρώτες ασκήσεις μηδενίζεται αυτομάτως για το μάθημα. Επίσης για στην εξέταση θα ερωτηθείτε για την λύση που έχετε δώσει (είτε προγραμματιστική είτε θεωρητική) και θα πρέπει να μπορείτε να την εξηγήσετε, αλλιώς θα σας αφαιρεθούν βαθμοί.

·       Κυριακή 24/12. Τρίτη Άσκηση: Η τρίτη άσκηση είναι διαθέσιμη στη σελίδα ασκήσεων του μαθήματος.

·       Κυριακή 26/11. Δεύτερη Άσκηση: Η δεύτερη άσκηση είναι διαθέσιμη στη σελίδα ασκήσεων του μαθήματος.

·       Παρασκευή 3/11. Πρώτη Άσκηση: Η πρώτη άσκηση είναι διαθέσιμη στη σελίδα ασκήσεων του μαθήματος.

·       Τρίτη 26/9. Καλώς ήρθατε στην Εξόρυξη Δεδομένων!