Netflix Prize – Ο στόχος επετεύχθη!

Τα σχόλια είναι περιττά, δείτε απλά την τρέχουσα κατάσταση στο Leaderboard:
Picture 2

Όσοι είσασταν παρόντες στην παρουσίαση Αμπαζή μία εβδομάδα πριν στο συνέδριο ΕΛΛΑΚ μάλλον θα έχετε μείνει με το στόμα ανοικτό, οι υπόλοιποι δείτε εκτενέστερη κάλυψη εδώ:
New York Times
Wired
Read Write Web
Geeking with Greg

Για να δούμε τι θα μας φέρουν οι 30 μέρες που θα ακολουθήσουν, οι θερμότερες των ευχών μας στους Νίκο Αμπαζή και Γιώργο Τσάγκα της ομάδας Feeds2 (αυτή τη στιγμή στη θέση 14).

Τελική Βαθμολογία

Παραθέτω την τελική βαθμολογία, στην μορφή Όνομα_Επώνυμο: Συνολικοί βαθμοί ως σήμερα + Βαθμολογία Εξέτασης (με άριστα το 30) (βαθμολογία υποβολής test set εξέτασης + βαθμολογία περιγραφής πρώτου ζητήματος + βαθμολογία περιγραφής δεύτερου ζητήματος) = Τελικοί συνολικοί βαθμοί, με άριστα το 100 -> Βαθμολογία προς υποβολή στη γραμματεία, με άριστα το 10.

Παρακαλώ διορθώστε όποιο λάθος υπάρχει, ή υποβάλλετε τελικά σχόλια αν αυτά υπάρχουν, ώστε να προωθηθεί η τελική βαθμολογία στη γραμματεία και επισήμως.

Θεώνη Αγάθου: 75 + 22 (5+8+9) = 97 -> 10/10
Αθανάσιος Αγγελάκης: 89 + 18 (8+5+5) = 107 -> 10/10
Κατερίνα Αργύρη: 49 + 26 (6+10+10) = 75 -> 8/10
Βαγγέλης Κατσαβριάς: 80 + 25 (8+9+9) = 105 -> 10/10
Χριστίνα Μιχαηλίδου: 57 + 23 (5+9+9) = 80 -> 8/10
Νίκη Μόσχου: 63 + 22 (4+9+9) = 85 -> 9/10
Βασιλική Μουτσανά: 78 + 24 (5+9+10) = 102 -> 10/10
Γιώργος Μουτσάτσος: 71 + 24 (6+9+9) = 95 -> 10/10
Δήμητρα Μπάρλα: 62 + 23 (6+8+9) = 85 -> 9/10
Ιωάννα Μπλίντζιου: 76 + 27 (7+10+10) = 103 -> 10/10
Νικόλαος Νανούρης: 67 + 30 (10+10+10) = 97 -> 10/10
Μακρίνα Σαλμανίδου: 55 + 27 (9+9+9) = 82 -> 8/10
Δήμητρα Τάτσιου: 73 + 23 (5+9+9) = 96 -> 10/10
Αθηνά Τσανούσα: 44 + 0 (0,0,0) = 44 -> 5/10
Μαρία Τζωρτζάκη: 66 + 23 (5+9+9) = 91 -> 9/10
Ιωάννης Χουχούμης: 74 + 25 (5+10+10) = 99 -> 10/10

Και πάλι, τα θερμά μου συγχαρητήρια και οι ευχαριστίες μου προς όλους.

Αξιοπιστία υποβολών εξέτασης

Πολύ πρόχειρα, μέχρι να βγάλω συνολική βαθμολογία:

agathou: 0.732
aggelakis: 0.776
argurh: 0.760
chouchoumis: 0.732
katsabrias: 0.776
mixailidou: 0.708
moschou: 0.608
moutsana: 0.756
moutsatos: 0.760
mparla: 0.760
mplintziou: 0.764
nanouris: 0.780
salmanidou: 0.772
tatsiou: 0.732
tzortzaki: 0.752

Data Mining + Συνέδριο Δημιουργών ΕΛ/ΛΑΚ

Αν και ο χρόνος μέσα στην εξεταστική είναι περιορισμένος για όλους μας αξίζει να κλέψουμε λίγο από αυτόν για μια επίσκεψη στο
Συνέδριο δημιουργών ΕΛ/ΛΑΚ (Ελεύθερου Λογισμικού / λογισμικού ανοιχτού κωδικά ) ,
το οποίο θα διεξαχθεί στην Πολυτεχνειούπολη Ζωγράφου το διήμερο Παρασκευή 19 και Σάββατο 20 Ιουνίου.

Στο Συνέδριο θα  υπάρξουν  ενδιαφέρουσες ομιλίες και workshops σχετικά  με εφαρμογές Data mining καθώς και πλήθος παρουσιάσεων για  εφαρμογές ανοιχτού λογισμικού   σε μικρομεσαίες   επιχειρήσεις ,  στην εκπαίδευση και στην έρευνα (Προσομοιώσεις,  Στατιστική επεξεργασία).
Όσοι από εσάς δεν γνωρίζετε για το ελεύθερο λογισμικό το παραπάνω διήμερο είναι μια καλή ευκαιρία για να το ανακαλύψετε.

Σας παραθέτω ενδεικτικά τις ομιλίες  ενός workshop της Παρασκευής που έχει άμεση σχέση με το μάθημα:

Data Mining: Το Πρόβλημα, τα Εργαλεία Ανοιχτού Λογισμικού, οι Εφαρμογές & η Υπόσχεση (Παρασκευή 19 Ιουνίου  17:00-19:00)

Η Εγγραφή στο συνέδριο και η συμμετοχή στα workshops είναι δωρεάν!
Οι έγγραφες θα γίνονται μέχρι την Τετάρτη 17 Ιουνίου εδώ

 

Why Managers Should Analyse Data Themselves

Ενώ ακόμα δεν έχω βγάλει βαθμολογία (ευελπιστώ σημερα ή αύριο), σας παραθέτω ένα ενδιαφέρον ανάγνωσμα, να το θυμάστε όταν γίνεται υψηλά ιστάμενοι ερευνητές ή managers (από έναν εξαιρετικό καναδό ερευνητή & blogger): Why Senior Researchers And Managers Should Analyze Data Themselves

Τελική Εργασία: Θεώνη Αγάθου

Ζήτημα 1:
Ανοίγουμε το αρχείο creditdata_trainsetarff1.arff και κάνουμε την εξής διαδικασία:

  •  Πάμε στο tab Visualise All και παρατηρούμε ότι δεν υπάρχει κάποιο attribute που να μπορούμε εύκολα να αφαιρέσουμε.
  • Με attribute selection και δοκιμάζοντας τους περισσότερους συνδυασμούς attribute evaluation και search methods, παρατηρούμε ότι οι τα χαρακτηριστικά 5,8,11,13,16,18 και 19 πρέπει να αφαιρεθούν.
  • Με την αφαίρεση αυτή, βλέπουμε ότι  εφαρμόζοντας τον αλγόριθμο (meta)–>Bagging–>J48 υπάρχει βελτίωση του σφάλματος και τελικά από 72.2667% correctly classified instances, δίνει 73.2%.
  • Αποθηκεύουμε το νέο train set, ως creditdata_trainsetarff2 και ανοίγουμε το creditdata_testsetarff1.
  • Τροποποιούμε το testset με ανάλογο τρόπο (δηλαδή αφαιρούμε τα παραπάνω attributes) και το αποθηκεύουμε ως creditdata_testsetarff2.
  • Εφοδιάζουμε το creditdata_testsetarff2 στο trainingdata_trainsetarff2 (ως supplied test set) και με cross validation προκύπτουν οι προβλέψεις (το ακόλουθο txt αρχείο):
    Θεώνη_Αγάθουtxt
Zήτημα:

Ανοίγουμε το vehicle.arff και για να διεξάγουμε κανόνες για την μεταβλητή στόχο (class), που παίρνει τις τιμές: οpel, saab, bus και van χρησιμοποιύμε τους classifier rules JRip (17 κανόνες) και PART (29 κανόνες) του weka.
Αξιοσημείωτοι εμφανίζονται οι ακόλουθοι κανόνες, στους οποίους δίδεται και επεξήγηση:

 

 

 

 

 

 

 

 

  • MAX.LENGTH ASPECT RATIO > 8 AND
    HOLLOWS RATIO > 189 AND
    SKEWNESS ABOUT_MAJOR > 63: van (107.0/2.0)

    Ερμηνεία:  Αν το εν λόγω αυτοκίνητο έχει MAX.LENGTH ASPECT RATIO>8 και HOLLOWS RATIO>189 και SKEWNESS ABOUT_MAJOR>63, τότε ο τύπος του αυτοκινήτου είναι van. Πρόκειται για συνοπτικό και ‘καλό’ κανόνα, διότι δίνει 107 σωστές και μόνο 2 λανθασμένες εκτιμήσεις. Προέκυψε με τον PART:

  • SCALED VARIANCE_MINOR > 309 AND
    DISTANCE CIRCULARITY <= 76 AND
    SKEWNESS ABOUT_MINOR <= 10 AND
    SKEWNESS ABOUT_MAJOR > 64 AND
    CIRCULARITY > 41: bus (107.0/1.0)

    Ερμηνεία:  Όμοια με πριν, εαν ισχύουν οι παραπάνω προυποθέσεις για τα χαρακτηριστικά που φαίνονται,  τότε ο τύπος του αυτοκινήτου είναι bus. Επίσης πρόκειται για καλό κανόνα, γιατί δίνει 107 σωστές εκτιμήσεις και μόλις μια λάθος, ωστόσο απαιτεί να συμβαίνουν πολλές προϋποθέσεις μαζί (δηλαδή ίσως να μην είναι τόσο βολικός τελικά). Τέλος, και ο κανόνας αυτός προέκυψε με τον κανόνα PART.

  • (ELONGATEDNESS >= 43) and (MAX.LENGTH ASPECT RATIO >= 9) and (DISTANCE CIRCULARITY >= 73) =>Class=van (86.0/0.0)

    Ερμηνεία:  Πρόκειται για έναν επίσης καλό κανόνα, που υποδεικνύει ότι εαν ισχύουν οι προϋποθέσεις του, τότε ο τύπος του αυτοκινήτου είναι van (με 86 σωστές εκτιμήσεις και καμία λάθος). Προέκυψε με τον rule JRip. 

  • ELONGATEDNESS <= 41 AND
    MAX.LENGTH ASPECT RATIO > 7: opel (132.0/65.0)

    Ερμηνεία: Εδώ έχουμε έναν μη καλό κανόνα γιατί βγάζει πολλές λανθασμένες εκτιμήσεις (65.0) αν και δεν απαιτεί να συμβαίνουν πολλές προϋποθέσεις ταυτόχρονα. Προέκυψε με τον PART

  • (MAX.LENGTH ASPECT RATIO >= 8) and (COMPACTNESS <= 103) and (ELONGATEDNESS <= 37) and (HOLLOWS RATIO <= 195) => Class=opel (14.0/0.0)

    Ερμηνεία: Εδώ ο κανόνας είναι αρκετά καλός και συνοπτικός, για τον τύπο αυτοκινήτου opel και προέκυψε με τον  JRip.

  • (MAX.LENGTH ASPECT RATIO >= 9) and (DISTANCE CIRCULARITY >= 100) and (SCALED VARIANCE_MAJOR <= 231) => Class=saab(71.0/9.0)
    Ερμηνεία:  Τέλος, ένας ακόμη καλός κανόνας που προέκυψε με τον JRip φαίνεται να ισχύει για τον τύπο αυτοκινήτου saab. Ισχύει όταν  ισχύουν οι τρεις προϋποθέσεις που βλέπουμε , που αφορούν τα χαρακτηριστικά (MAX.LENGTH ASPECT RATIO, DISTANCE CIRCULARITY και SCALED VARIANCE_MAJOR)

 

 

 

 

 

Τελική Εξέταση : Κατσαβριάς Ευάγγελος

Ζήτημα 1 :

  • Απο το “Visualize All” δεν βγάζουμε κάποιο συμπέρασμα
  • Χρησιμοποιόντας την επιλογή “Select attributes” με διάφορους συνδιασμούς
  • Το attribute 16 δεν φαίνεται σημαντικό
  • Κάνουμε “remove” την attribute16 και αποθηκεύουμε το καινούργιο training set (trainset2)
  • Δοκιμάζουμε διάφορους αλγόριθμους (κυρίως meta) με Cross-validation
  • Επιλογή του αλγορίθμου : bagging+AdaboostM1+J48  

με ποσοστά επιτυχίας : Correctly Classified Instances 76.9333%

και σφάλμα 68.5112%

  • Αφαιρούμε απο το test set την attribute 16 και το αποθηκεύουμε(testset2)
  • Τρέχουμε το  trainset2 με “Supplied test set” το testset2 χρησιμοποιώντας τον παραπάνω αλγόριθμο
  • Το αποτέλεσμα είναι : Teliki_Vagelis_Katsavriasxls

Ζήτημα 2 :

Τρέχοντας το αρχείο Vehicle στο WEKA,με την βοήθεια των rules αλγορίθμων (κυρίως τον Part) μας εμφανίζει κάποιους κανόνες κατηγοριοποίησης των οχημάτων σε “Opel,Saab,Bus και Van”. Οι κανόνες που θέλουμε να βγάλουμε πρέπει να μην είναι πολύπλοκοι, αλλά λιτοί, όσο χρειάζεται φυσικά. Ακόμα στους κανόνες πρέπει να προσέξουμε το ποσοστό των σωστών προβλέψεων, όπου το WEKA μας το αναφέρει μέσα σε παρένθεση.            Έτσι θα έχουμε :

  • ELONGATEDNESS <= 41 AND
    MAX.LENGTH ASPECT RATIO <= 7 AND
    COMPACTNESS > 95: bus (70.0/1.0)

Δηλαδή εάν elongatedness<=41 και το max lenghta spect ratio<=7 και το compactness>95 τότε είναι bus.  Στην παρένθεση μας αναφέρει οτι στις 70 περιπτώσεις που ισχύουν οι παραπάνω περιορισμοί, μόνο σε 1 δεν είναι bus. Κάποιοι ακόμα κανόνες :

  • MAX.LENGTH ASPECT RATIO > 8 AND
    HOLLOWS RATIO > 189 AND
    SKEWNESS ABOUT_MAJOR > 63: van (107.0/2.0)

 

  • SCALED VARIANCE_MINOR > 309 AND
    DISTANCE CIRCULARITY <= 76 AND
    SKEWNESS ABOUT_MINOR <= 10 AND
    SKEWNESS ABOUT_MAJOR > 64 AND
    CIRCULARITY > 41: bus (107.0/1.0)

 

  • (MAX.LENGTH ASPECT RATIO >= 9) and (DISTANCE CIRCULARITY >= 100) and (SCALED VARIANCE_MAJOR <= 231) => saab (71.0/9.0)

 

  • ELONGATEDNESS <= 41 AND
    MAX.LENGTH ASPECT RATIO > 7 AND
    SCALED VARIANCE_MINOR > 721: opel (23.0/1.0)

 

  • SCALED VARIANCE_MAJOR <= 173 AND
    COMPACTNESS > 82 AND
    KURTOSIS ABOUT_MAJOR <= 19 AND
    SCATTER RATIO <= 142 AND
    PR.AXIS RECTANGULARITY <= 17 AND
    SKEWNESS ABOUT_MINOR <= 18: van (30.0/1.0)