Υπόδειξη περί θέματος

Ως γνωστόν, τα datasets του θέματος είναι διαθέσιμα εδώ, ενώ το train set περιέχει 39 attributes + output, ενώ τα quiz & test sets περιέχουν μόνο τα 39 attrs (σε αντίθεση με όσα ανέφερα στη διάλεξη σήμερα, το quiz set δεν περιλαμβάνει τιμές για το output/target attribute). Το train set χρησιμοποιείται για τη δημιουργία του μοντέλου, ενώ με τη χρήση cross validation μπορεί να προκύψει και αξιόπιστη εκτίμηση του σφάλματος, όπως αναφέρθηκε στη σημερινή διάλεξη 04. Ωστόσο, το μοντέλο που προκύπτει δεν μπορεί να χρησιμοποιηθεί στο weka για την εκπόνηση πρόβλεψης σε dataset διαφορετικού αριθμού χαρακτηριστικών, όπως τα quiz & test sets.
Για το λόγο αυτό, είναι αναγκαία η προσθήκη ενός πλαστού χαρακτηριστικού ‘prediction’ σε αυτά, πχ από το excel (και μετατροπή σε .arff, συνίσταται) ή preprocess/ filter/attribute/add. Σας αποστέλλεται για παράδειγμα ηλεκτρονικά το αρχείο QuizExtended.arff.pdf (το γνωστό trick, βγάλτε το .pdf από το όνομα του αρχείου για να ανοίξει με το weka), το οποίο περιέχει το πρόσθετο attribute ‘prediction’ με τιμή ίση με μηδέν σε όλα τα instances του αρχείου quiz που έχετε ήδη διαθέσιμο.
Οπότε, τελικά, προτείνεται:

  1. Χρήση του train set για προεπιλογή αλγορίθμων και ρύθμιση παραμέτρων τους μέσω της εκτίμησης του σφάλματος (cross validation)
  2. Επανάληψη χρήσης των προεπιλεγμένων αλγορίθμων και ρυθμίσεών τους, όπου στα test options τώρα δηλώνεται ως supplied test set το quiz ή test set με το πλαστό χαρακτηριστικό και επιλογή more options/output predictions, ώστε να εκτυπωθούν οι προβλέψεις του μοντέλου για το supplied test set στο classifier output. Τις προβλέψεις αυτές μπορείτε να τις αντιγράψετε εύκολα σε ένα αρχείο .txt (για διευκόλυνση ανοίξτε στη συνέχεια το αρχείο αυτό μέσα από το excel (open/all files/ toarxeio.txt, text import wizard…) ώστε να επιλέξετε μόνο τη στήλη που σας ενδιαφέρει).

Προσοχή: το σύνολο των επιλεγμένων (με πολύ trial & error) διαδικασιών προεπεξεργασίας που εφαρμόζονται στο train set, πρέπει να εφαρμοστούν με τον ίδιο ακριβώς τρόπο και στα υπόλοιπα datasets, ούτως ώστε να προκύψει το δυνητικά ‘βέλτιστο’ αποτέλεσμα.

Απορίες, ως συνήθως, δεκτές στα σχόλια :)

Advertisements

3 responses to “Υπόδειξη περί θέματος

  1. Πως κρατάμε σε script τις ενέργειες που αποφασίσαμε να κάνουμε, ώστε να τις ξανατρέξουμε με μια εντολή στα υπόλοιπα datasets?

  2. Μία λύση είναι το log file (το οποίο όμως δεν είναι ακριβώς script).

    Άλλη λύση είναι να χρησιμοποιήσεις τον experimenter (ίσως δύσχρηστος ή κακό trade-off μεταξύ απαιτούμενου χρόνου εκμάθησης και ωφέλειας χρόνου επί της διαδικασίας).

    Επίσης, τα πάντα μπορούν να τρέξουν από command line, δες πχ εδώ: http://www.cs.ucsd.edu/~aarvey/ml/labthree/labthree.pdf

    Ωστόσο, καμία λύση δεν με ικανοποιεί ούτε βρήκα κάτι να κάνει πχ record τα operations που κάνεις σε ένα executable. Θα το ξαναψάξω, όποιος βρει άλλη λύση ας την αναφέρει, θα ήταν χρήσιμο.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s