Άσκηση 1

Χρησιμοποιήστε το αρχείο δεδομένων prostate.data, που περιέχει δεδομένα για όγκους του προστάτη, εξαρτημένη μεταβλητή το επίπεδο PSA και ανεξάρτητες μια σειρά από κλινικές μετρήσεις (περιγραφή στο αρχείο prostate.info.txt και στο βιβλίο σελ. 3-4.)

(α) Εισαγάγετε το αρχείο σε ένα dataframe. Χωρίστε το dataframe σε training και test sets ανάλογα με την τιμή της μεταβλητής TRAIN.

(β) Υπολογίστε τους συντελεστές παλινδρόμησης για το μοντέλο που περιέχει όλες τις ανεξάρτητες μεταβλητές και βρείτε ποιοι είναι στατιστικά σημαντικοί στο επίπεδο 95%.

(γ) Δημιουργήστε μια συνάρτηση που παίρνει ως όρισμα την παράμετρο συστολής \(\lambda\), και μια παράμετρο \(\alpha \in [0,1]\). Η συνάρτηση προσαρμόζει ένα μοντέλο regularized regression με συνάρτηση penalty \[ \lambda \left ( \frac{1-\alpha}{2} ||\beta||_2^2+ \alpha ||\beta||_1 \right ) \] χρησιμοποιώντας τη βιβλιοθήκη glmnet. Eπιστρέφει τους συντελεστές παλινδρόμησης που υπολογίζονται από το training set και το μέσο σφάλμα πρόβλεψης από το test set χρησιμοποιώντας αυτούς τους συντελεστές.

(δ) Θεωρήστε τιμές του \(\alpha\) από 0 έως 1 με βήμα 0.2 και του \(\lambda\) από 0.01 έως 500 με βήμα 0.1 ως προς \(\log\lambda\) (δηλαδή \(\lambda= e^{\log(0.01)+ 0.1 i}, i=0,1,\ldots\) έως την πρώτη τιμή του \(i\) όπου \(\lambda >500\)). Δημιουργήστε ένα πρόγραμμα που για κάθε τιμή του \(\alpha\) δημιουργεί ένα γράφημα των συντελεστών ως συνάρτηση του \(\log\lambda\) (αντίστοιχο του Σχήματος 3.8 αλλά με οριζόντιο άξονα το \(\log\lambda\)), και ένα γράφημα του μέσου σφάλματος πρόβλεψης ως συνάρτηση του \(\log\lambda\).

(ε) Δημιουργήστε ένα πρόγραμμα (αν θέλετε ενσωματώστε τις εντολές στο πρόγραμμα του ερωτήματος (δ)) που βρίσκει για ποιον από τους παραπάνω συνδυασμούς τιμών \(\alpha, \lambda\) ελαχιστοποιείται στο μέσο σφάλμα πρόβλεψης.

Άσκηση 2

Χρησιμοποιήστε το αρχείο A.Rdata, που περιέχει δεδομένα για 300 παρατηρήσεις που κατατάσσονται σε 4 ομάδες σύμφωνα με τη μεταβλητή \(Y\) και έχουν μετρήσεις από δύο μεταβλητές \(X_1, X_2\). Χωρίστε το dataframe σε training set με τις 200 πρώτες παρατηρήσεις και test set με τις υπόλοιπες.

** (α) ** Δημιουργήστε ένα γράφημα με τα σημεία \((X_1,X_2)\) του training set με διαφορετικό χρώμα για κάθε ομάδα.

** (β) ** Προγραμματίστε τον αλγόριθμο γραμμικής διαχωριστικής ανάλυσης για το training set και δώστε τις διακρίνουσες συναρτήσεις των ομάδων.

** (γ) ** Εφαρμόστε τα αποτελέσματα στο test set για πρόβλεψη της ομάδας κάθε παρατήρησης και υπολογίσττε το ποσοστό σωστών προβλέψεων ανά ομάδα και συνολικά.

** (δ) ** Ομαδοποιήστε εκ νέου όλα τα δεδομένα και των δύο sets σύμφωνα με την μεταβλητή \(G\) που παίρνει τιμές 0 αν \(Y=1,4\) και 1 αν \(Y=2,3\). Χρησιμοποιώντας ως εξαρτημένη τη νέα μεταβλητή \(G\) προγραμματίστε τον αλγόριθμο logistic regression και υπολογίστε τους συντελεστές \(\b_0, \b_1, \b_2\).

** (ε) ** Επαναλάβετε το (γ) για τις νέες ομάδες με βάση τα αποτελέσματα του (δ).

Άσκηση 3

Λύστε τις Ασκήσεις 3.2, 3.12, 4.3, 4.5.