Fingers$Height2Group <- ntile(Fingers$Height, 2)
head(select(Fingers, Thumb, Height, Height2Group), 10)
9 Κεφάλαιο: Εμβαθύνοντας στα Mοντέλα Oμάδων
Όλα πρέπει να γίνονται όσο πιο απλά είναι δυνατόν, αλλά όχι απλούστερα.
— Albert Einstein
9.1 Επέκταση σε Μοντέλο Τριών Ομάδων
Μέχρι αυτό το σημείο έχετε μάθει πώς να ορίζετε ένα μοντέλο με μία ανεξάρτητη ποιοτική μεταβλητή που περιλαμβάνει δύο κατηγορίες (ομάδες). Η επέκταση αυτής της ιδέας σε μια ποιοτική ανεξάρτητη μεταβλητή με τρεις ομάδες είναι σχετικά απλή.
Ένα Νέο Μοντέλο Δύο Ομάδων
Ας χρησιμοποιήσουμε μια νέα ανεξάρτητη μεταβλητή για να εξηγήσουμε τη μεταβλητότητα στο μήκος του αντίχειρα: το Ύψος φοιτητή (Height
). Στο πλαίσιο δεδομένων Fingers
, το ύψος είναι μια ποσοτική μεταβλητή μετρημένη σε εκατοστά. Για εκπαιδευτικούς σκοπούς, μπορούμε να δημιουργήσουμε μια νέα μεταβλητή που μετατρέπει το ύψος σε ποιοτική μεταβλητή με δύο κατηγορίες: short
(κοντοί) και tall
(ψηλοί).
Μπορούμε να το επιτύχουμε αυτό με τη συνάρτηση ntile()
. Ο παρακάτω κώδικας χωρίζει το δείγμα σε δύο ομάδες ίσου μεγέθους με βάση το ύψος (Height
) και αποθηκεύει το αποτέλεσμα σε μια νέα μεταβλητή με το όνομα Height2Group
.
Χρησιμοποιήσαμε τις συναρτήσεις head()
και select()
για να εμφανίσουμε τις πρώτες 10 γραμμές των σχετικών μεταβλητών: Thumb
, Height
και Height2Group
:
Thumb Height Height2Group1 66.00 179.070 2
2 64.00 164.592 1
3 56.00 162.560 1
4 58.42 177.800 2
5 74.00 172.720 2
6 60.00 172.720 2
7 70.00 175.260 2
8 55.00 166.878 2
9 60.00 158.750 1
10 52.00 161.036 1
Στο παρακάτω πλαίσιο κώδικα, χρησιμοποιήστε τη συνάρτηση factor()
για να προσθέσετε ετικέτες στη μεταβλητή Height2Group
, ώστε η τιμή 1 να αντιστοιχεί στο short
και η τιμή 2 στο tall
:
Thumb Height Height2Group1 66.00 179.070 tall
2 64.00 164.592 short
3 56.00 162.560 short
4 58.42 177.800 tall
5 74.00 172.720 tall
6 60.00 172.720 tall
7 70.00 175.260 tall
8 55.00 166.878 tall
9 60.00 158.750 short
10 52.00 161.036 short
Ακολουθούμε την ίδια προσέγγιση που ακολουθήσαμε για τη μεταβλητή Gender
και γράφουμε το μοντέλο της Height2Group
ως εξής:
\[\text{Thumb}_i = b_0 + b_1 \text{Height2Group}_i + e_i\]
Τι σημαίνουν τα διαφορετικά σύμβολα στην παραπάνω εξίσωση;
Το \(Y_i\) αντιστοιχεί σε:
Το \(X_i\) αντιστοιχεί σε:
Η γενική μορφή του μοντέλου:
\[Y_i = b_0 + b_1X_i + e_i\]
Στο συγκεκριμένο μοντέλο:
\[\text{Thumb}_i = b_0 + b_1\text{Height2Group}_i + e_i\]
\(Y_i\) = Thumb (Εξαρτημένη μεταβλητή)
Το \(Y_i\) είναι η εξαρτημένη μεταβλητή
Αυτό που προσπαθούμε να προβλέψουμε ή να εξηγήσουμε
Σε αυτήν την περίπτωση: το μήκος του αντίχειρα
\(X_i\) = Height2Group (Ανεξάρτητη μεταβλητή)
Το \(X_i\) είναι η ανεξάρτητη μεταβλητή
Αυτό που χρησιμοποιούμε για να εξηγήσουμε τη μεταβλητότητα στην \(Y\)
Σε αυτήν την περίπτωση: η ομάδα του ύψους (1 = short, 2 = tall)
Άλλα σύμβολα:
\(b_0\): μέσος όρος της ομάδας αναφοράς
\(b_1\): μέση διαφορά μεταξύ των ομάδων
\(e_i\): υπόλοιπο (σφάλμα πρόβλεψης)
\(i\): δείκτης για κάθε παρατήρηση (κάθε άτομο)
Γιατί όχι οι άλλες:
Height
: Δεν χρησιμοποιείται στο μοντέλο (χρησιμοποιείται η Height2Group)Gender
: Δεν εμφανίζεται στο μοντέλοshort
/tall
: Αυτές είναι οι τιμές τηςHeight2Group
, όχι η μεταβλητή
Μπορείτε να προσαρμόσετε το μοντέλο με τη συνάρτηση lm()
και να εμφανίσετε τις εκτιμήσεις των παραμέτρων και τον πίνακα ANOVA:
lm(formula = Thumb ~ Height2Group, data = Fingers)
:
Coefficients
(Intercept) Height2Grouptall57.818 4.601
Η τιμή του \(b_0\) είναι:
Η τιμή του \(b_1\) είναι:
Από τα αποτελέσματα της lm()
:
\(b_0\) = 57.818 (
Intercept
)\(b_1\) = 4.601 (
Height2Grouptall
)
Το μοντέλο:
\[\text{Thumb}_i = 57.818 + 4.601 \times \text{Height2Group}_i\]
Ερμηνεία:
\(b_0 = 57.818\) mm:
Ο μέσος όρος του μήκους αντίχειρα για την ομάδα αναφοράς (short)
Όταν Height2Group = 0 (short)
\(b_1 = 4.601\) mm:
Η διαφορά στο μέσο μήκος αντίχειρα μεταξύ tall και short
Τα ψηλά άτομα έχουν κατά μέσο όρο 4.601mm μεγαλύτερο αντίχειρα
Υπολογισμοί:
Γιατί στα αποτελέσματα εμφανίζεται το όνομα Height2Grouptall
(αντί απλά το Height2Group
);
Πώς θα γίνει από την lm
η κωδικοποίηση της \(X_i\) για να έχει νόημα αυτό το μοντέλο;
Πρώτη ερώτηση - Σωστή απάντηση: Δ
Γιατί Height2Grouptall
:
Η R προσθέτει το όνομα της κατηγορίας στο όνομα της μεταβλητής για να δείξει ποιο επίπεδο κωδικοποιείται ως 1.
# Η μεταβλητή: Height2Group
# Οι κατηγορίες (levels): "short" και "tall"
# Ομάδα αναφοράς: "short" (κωδικοποιείται ως 0)
# Ομάδα σύγκρισης: "tall" (κωδικοποιείται ως 1)
# Άρα ο συντελεστής ονομάζεται: Height2Grouptall
Ερμηνεία του \(b_1 = 4.601\):
Αυτή είναι η ποσότητα που προστίθεται στο μήκος αντίχειρα όταν κάποιος είναι στην ομάδα tall
.
# Short: Thumb = 57.818 + 4.601×0 = 57.818 mm
# Tall: Thumb = 57.818 + 4.601×1 = 62.419 mm
# Η ποσότητα που προστίθεται: +4.601mm για tall
Δεύτερη ερώτηση - Σωστή απάντηση: Δ
Κωδικοποίηση 0/1 (dummy coding):
Γιατί 0/1:
Αυτή είναι η προεπιλεγμένη κωδικοποίηση στην lm()
για ποσοτικές μεταβλητές:
\[\text{Thumb} = 57.818 + 4.601 \times X_i\]
Όταν \(X_i = 0\) (
short
):Thumb
= 57.818 ✓Όταν \(X_i = 1\) (
tall
):Thumb
= 57.818 + 4.601 = 62.419 ✓
Γιατί οι άλλες είναι λάθος:
Α & Γ (-1/1): Αυτή η κωδικοποίηση ονομάζεται κωδικοποίηση επίδρασης (effect coding)
Θα έδινε διαφορετικές εκτιμήσεις
Το
Intercept
θα ήταν ο γενικός μέσος όρος, όχι ο μέσος όρος τηςshort
Β (1/2):
Δεν χρησιμοποιείται
Θα έδινε λάθος ερμηνεία του
Intercept
Συμπέρασμα:
Η lm()
χρησιμοποιεί ψευδομεταβλητή (0/1) όπου:
0 = ομάδα αναφοράς (
short
)1 = ομάδα σύγκρισης (
tall
)Το όνομα
Height2Grouptall
δείχνει ότι ο συντελεστής αναφέρεται στην κατηγορίαtall
Table (Type III SS)
Analysis of Variance : Thumb ~ Height2Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 830.880 1 830.880 11.656 0.0699 .0008
Error (from model) | 11049.331 155 71.286
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Τι είναι το SS Total
; (Υπάρχουν περισσότερες από μία σωστές απαντήσεις.)
Σωστές απαντήσεις: Α, Β, Δ
Το SS\(_{\text{Total}}\) είναι το ίδιο με το SS\(_{\text{Error}}\) από το κενό μοντέλο.
Α. Συνολικό τετραγωνικό σφάλμα από το γενικό μέσο όρο - ΣΩΣΤΟ ✓
\[\text{SS}_{\text{Total}} = \sum_{i=1}^{n}(\text{Thumb}_i - \bar{\text{Thumb}})^2\]
Μετράει όλη τη μεταβλητότητα στα δεδομένα
Υπόλοιπα από το γενικό μέσο όρο (κενό μοντέλο)
Β. Το άθροισμα τετραγώνων των υπολοίπων από το κενό μοντέλο - ΣΩΣΤΟ ✓
Το κενό μοντέλο προβλέπει μόνο το γενικό μέσο όρο
Όλη η μεταβλητότητα είναι “σφάλμα” σε αυτό το μοντέλο
Δ. Το άθροισμα τετραγώνων των σφαλμάτων από το κενό μοντέλο - ΣΩΣΤΟ ✓
Αυτό είναι ακριβώς το ίδιο με το Β
SS Total = SS Error (από το κενό μοντέλο)
Γιατί οι άλλες είναι λάθος:
Γ. “Εξηγείται από Height2Group” - ΛΑΘΟΣ:
Αυτό είναι το SS Model (830.880), όχι το SS Total
SS Model = η μεταβλητότητα που εξηγείται
Σχέση:
\[\text{SS}_{\text{Total}} = \text{SS}_{\text{Model}} + \text{SS}_{\text{Error}}\]
\[11880.211 = 830.880 + 11049.331\]
Συμπέρασμα:
Το SS\(_{\text{Total}}\) (11880.211) αντιπροσωπεύει:
Τη συνολική μεταβλητότητα στο μήκος αντίχειρα
Το σφάλμα (ή τη μεταβλητότητα που υπολείπεται) από το κενό μοντέλο
Το άθροισμα τετραγώνων των αποκλίσεων από το γενικό μέσο όρο
Ποια είναι η τιμή του PRE για το μοντέλο της
Height2Group
;
Τι δείχνει ο δείκτης PRE;
Σωστή απάντηση: Γ
PRE = Αναλογική Μείωση του Σφάλματος (Proportional Reduction in Error)
\[\text{PRE} = \frac{\text{SS}_{\text{Model}}}{\text{SS}_{\text{Total}}} = \frac{830.880}{11880.211} = 0.0699\]
Ερμηνεία:
Το PRE = 0.0699 (ή 6.99%) σημαίνει ότι το μοντέλο της Height2Group
εξηγεί περίπου το 7% της μεταβλητότητας του μήκους αντίχειρα.
Γιατί οι άλλες είναι λάθος:
Α. “Εξηγείται από το κενό μοντέλο” - ΛΑΘΟΣ:
Το κενό μοντέλο δεν εξηγεί μεταβλητότητα
Το PRE πάντα αναφέρεται στο σύνθετο μοντέλο
Β. “Αριθμός τετραγωνικών mm” - ΛΑΘΟΣ:
Αυτό θα ήταν το
SS Model
(830.880mm²)Το PRE είναι αναλογία (0-1), όχι απόλυτη τιμή
Δ. “Ανεξήγητη μεταβλητότητα” - ΛΑΘΟΣ:
Αυτό θα ήταν: \(1 - \text{PRE} = 1 - 0.0699 = 0.9301\) (93%)
Το PRE μετράει την εξηγούμενη, όχι την ανεξήγητη
Ε. “Άθροισμα σφαλμάτων” - ΛΑΘΟΣ:
Παράδοξο: τα σφάλματα δεν “εξηγούνται”
Το μοντέλο μειώνει το σφάλμα εξηγώντας μεταβλητότητα
Συμπέρασμα:
Το PRE είναι η αναλογία της μεταβλητότητας που εξηγείται από το μοντέλο της Height2Group
- ένας δείκτης χωρίς μονάδες μέτρησης μεταξύ του 0 και του 1 που δείχνει πόσο καλά το μοντέλο εξηγεί τη μεταβλητότητα στα δεδομένα.
Ένα Μοντέλο Τριών Ομάδων
Ας εφαρμόσουμε τώρα την ίδια προσέγγιση, αυτή τη φορά χωρίζοντας το δείγμα σε τρεις ομάδες ύψους: short
, medium
και tall
.
Τροποποιήστε τον παρακάτω κώδικα ώστε να δημιουργηθεί μια νέα μεταβλητή με όνομα Height3Group
, η οποία θα ταξινομεί τους φοιτητές σε τρεις κατηγορίες με βάση το ύψος τους, καθεμία με ίσο αριθμό ατόμων. Κωδικοποιήστε τις κατηγορίες (1, 2, 3) ως short
, medium
και tall
, αντίστοιχα.
Thumb Height Height3Group1 66.00 179.070 tall
2 64.00 164.592 medium
3 56.00 162.560 short
4 58.42 177.800 tall
5 74.00 172.720 tall
6 60.00 172.720 tall
7 70.00 175.260 tall
8 55.00 166.878 medium
9 60.00 158.750 short
10 52.00 161.036 short
Υπολογίστε και εμφανίστε τους μέσους όρους για τις τρεις ομάδες ύψους.
Height3Group min Q1 median Q3 max mean sd n missing1 short 39.00 51.00 55 58.42 79.00 56.07113 7.499937 53 0
2 medium 45.00 55.00 60 64.00 86.36 60.22375 8.490406 52 0
3 tall 44.45 59.75 64 68.25 90.00 64.09365 8.388113 52 0
Ποιο μοτίβο παρατηρείτε στους μέσους όρους, σύμφωνα με τα αποτελέσματα της favstats()
, για τις τρεις ομάδες της μεταβλητής Height3Group
;
Σωστή απάντηση: Γ
Το μοτίβο των μέσων:
short: mean = 56.07 mm
medium: mean = 60.22 mm
tall: mean = 64.09 mm
# Ξεκάθαρη αύξηση: 56 → 60 → 64
Καθώς το ύψος αυξάνεται, ο μέσος όρος του μήκους αντίχειρα επίσης αυξάνεται.
Γιατί οι άλλες είναι λάθος:
Α. “Περισσότεροι άνθρωποι” - ΛΑΘΟΣ:
Το n είναι παρόμοιο: 53, 52, 52
Όχι σαφές μοτίβο αύξησης
Η ερώτηση είναι για το μοτίβο των μέσων, όχι των μεγεθών δείγματος
Β. “Ψηλότεροι άνθρωποι στην tall” - ΛΑΘΟΣ:
Αυτός ο πίνακας δείχνει μήκος αντίχειρα (Thumb), όχι ύψος ατόμου
Οι ομάδες ορίζονται από ύψος, αλλά τα δεδομένα είναι για αντίχειρες
Η δήλωση είναι τετριμμένη (προφανώς η ομάδα “tall” έχει ψηλότερα άτομα)
Δ. “Medium > tall” - ΛΑΘΟΣ:
Το αντίθετο είναι αληθές
medium: 60.22 mm < tall: 64.09 mm
Συμπέρασμα:
Υπάρχει μια θετική συνάφεια μεταξύ ύψους και μήκους αντίχειρα: οι ψηλότερες ομάδες έχουν κατά μέσο όρο μεγαλύτερους αντίχειρες.
Ακολουθεί ένα διάγραμμα jitter που απεικονίζει την κατανομή του μήκους αντίχειρα για κάθε μία από τις τρεις ομάδες ύψους, μαζί με το μέσο όρο κάθε ομάδας. Στην επόμενη ενότητα θα δούμε πώς να προσαρμόσουμε ένα μοντέλο μήκους αντίχειρα βασισμένο στις τρεις αυτές ομάδες.

9.2 Προσαρμογή και Ερμηνεία του Μοντέλου Τριών Ομάδων
Τώρα μπορούμε να δημιουργήσουμε ένα μοντέλο που προσαρμόζει τις προβλέψεις ανάλογα με το αν οι φοιτητές είναι κοντοί, μετρίου ύψους ή ψηλοί (δηλαδή, με βάση τη μεταβλητή Height3Group
). Ας δούμε πώς να προσαρμόσουμε αυτό το μοντέλο με την R και τη σημειολογία του GLM.
Προσαρμογή του Μοντέλου της Height3Group
Χρησιμοποιήστε τον παρακάτω κώδικα για να προσαρμόσετε το μοντέλο στα δεδομένα και να εμφανίσετε τις εκτιμήσεις των παραμέτρων:
lm(formula = Thumb ~ Height3Group, data = Fingers)
:
Coefficients
(Intercept) Height3Groupmedium Height3Grouptall56.071 4.153 8.023
Το μοντέλο τριών ομάδων μπορεί να εκφραστεί με τη σημειολογία του Γενικού Γραμμικού Μοντέλου (GLM) ως εξής:
\[Y_i = b_0 + b_1 X_{1i} + b_2 X_{2i} + e_i\]
Ενώ η προσαρμογή του μοντέλου δύο ομάδων περιλάμβανε δύο εκτιμήσεις παραμέτρων (\(b_0\) και \(b_1\)), το μοντέλο τριών ομάδων προσθέτει μια τρίτη (\(b_2\)), η οποία αντιστοιχεί στη διαφορά του μέσου όρου της τρίτης ομάδας σε σχέση με την ομάδα αναφοράς.
Ποιοι αριθμοί από το μοντέλο της Height3Group
αντιστοιχούν σε αυτές τις εκτιμήσεις παραμέτρων;
\(b_0\) =
\(b_1\) =
\(b_2\) =
Από τα αποτελέσματα της lm()
:
\(b_0\) = 56.071 (Intercept)
\(b_1\) = 4.153 (Height3Groupmedium)
\(b_2\) = 8.023 (Height3Grouptall)
Το μοντέλο:
\[\text{Thumb}_i = 56.071 + 4.153 \times X_{1i} + 8.023 \times X_{2i}\]
όπου:
\(X_{1i}\) = 1 αν medium, 0 διαφορετικά
\(X_{2i}\) = 1 αν tall, 0 διαφορετικά
Ερμηνεία:
\(b_0 = 56.071\) mm:
Ο μέσος όρος του μήκους αντίχειρα για την ομάδα αναφοράς (short)
Όταν \(X_1 = 0\) και \(X_2 = 0\) (short)
\(b_1 = 4.153\) mm:
Η ποσότητα που προστίθεται για την ομάδα medium
Η διαφορά μεταξύ medium και short
\(b_2 = 8.023\) mm:
Η ποσότητα που προστίθεται για την ομάδα tall
Η διαφορά μεταξύ tall και short
Υπολογισμοί των μέσων όρων:
# Short group (X1 = 0, X2 = 0):
Thumb = 56.071 + 4.153×0 + 8.023×0 = 56.071mm
# Medium group (X1 = 1, X2 = 0):
Thumb = 56.071 + 4.153×1 + 8.023×0 = 60.224mm
# Tall group (X1 = 0, X2 = 1):
Thumb = 56.071 + 4.153×0 + 8.023×1 = 64.094mm
Παρατήρηση:
Αυτές οι τιμές ταιριάζουν με τους μέσους όρους από την favstats()
:
short: 56.07mm ✓
medium: 60.22mm ✓
tall: 64.09mm ✓
Το \(Y_i\) αντιστοιχεί σε:
Το \(X_{1i}\) αντιστοιχεί σε:
Το \(X_{2i}\) αντιστοιχεί σε:
Το μοντέλο τριών ομάδων:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Για το συγκεκριμένο μοντέλο:
\[\text{Thumb}_i = 56.071 + 4.153X_{1i} + 8.023X_{2i} + e_i\]
\(Y_i\) = Το μήκος του αντίχειρα του ατόμου
Η εξαρτημένη μεταβλητή
Αυτό που προσπαθούμε να προβλέψουμε
Μετριέται σε χιλιοστά (mm)
\(X_{1i}\) = Αν το άτομο ανήκει στην ομάδα medium
Ψευδομεταβλητή (dummy variable) για την ομάδα
medium
\(X_{1i} = 1\) αν το άτομο είναι
medium
\(X_{1i} = 0\) αν το άτομο δεν είναι
medium
(short
ήtall
)
\(X_{2i}\) = Αν το άτομο ανήκει στην ομάδα tall
Ψευδομεταβλητή (dummy variable) για την ομάδα
tall
\(X_{2i} = 1\) αν το άτομο είναι
tall
\(X_{2i} = 0\) αν το άτομο δεν είναι
tall
(short
ήmedium
)
Κωδικοποίηση ψευδομεταβλητών:
Ομάδα | \(X_{1i}\) | \(X_{2i}\) | Πρόβλεψη |
---|---|---|---|
short | 0 | 0 | 56.071 |
medium | 1 | 0 | 60.224 |
tall | 0 | 1 | 64.094 |
Παρατηρήσεις:
Η ομάδα
short
είναι η ομάδα αναφοράς (reference group)Δεν χρειάζεται ψευδομεταβλητή για την
short
γιατί αναπαρίσταται με \(X_{1i} = 0\) και \(X_{2i} = 0\)Για \(k\) ομάδες χρειαζόμαστε \(k-1\) ψευδομεταβλητές
Εδώ: 3 ομάδες → 2 ψευδομεταβλητές (\(X_1\) και \(X_2\))
Υπολογισμοί:
Ερμηνεία του Μοντέλου της Height3Group
Το \(b_0\) είναι ο μέσος όρος της ομάδας short
. Το \(b_1\) είναι η ποσότητα που πρέπει να προστεθεί στην ομάδα short
για να πάρουμε το μέσο όρο της ομάδας medium
. Και το \(b_2\) είναι η ποσότητα που πρέπει να προστεθεί στην ομάδα short
για να πάρουμε το μέσο όρο της ομάδας tall
.

Μπορούμε να αντικαταστήσουμε τις εκτιμήσεις των παραμέτρων στην εξίσωση του μοντέλου, ως εξής:
\[\text{Thumb}_i = 56.071 + 4.153 X_{1i} + 8.023 X_{2i} + e_i\] Ή, πιο συγκεκριμένα, ως εξής:
\[\text{Thumb}_i = 56.071 + 4.153 \text{Height3Groupmedium}_i + 8.023 \text{Height3Grouptall}_i + e_i\] Όπως και πριν, είναι χρήσιμο να κατανοήσουμε πώς ακριβώς κωδικοποιούνται οι μεταβλητές \(Χ\). Στο μοντέλο τριών ομάδων έχουμε τώρα δύο μεταβλητές αντί για μία, \(X_{i1}\) και \(X_{i2}\). Οι νέοι δείκτες (1 και 2) απλώς διακρίνουν μεταξύ αυτών των δύο μεταβλητών· αντί να τους δώσουμε διαφορετικά ονόματα, τις ονομάζουμε συνήθως medium
και tall
.
Ο δείκτης \(i\) δείχνει ότι αυτές δεν είναι εκτιμήσεις παραμέτρων, αλλά μεταβλητές, που σημαίνει ότι κάθε παρατήρηση στο σύνολο δεδομένων θα έχει τις δικές της τιμές στις δύο μεταβλητές. Όπως και πριν, είναι λίγο δύσκολο να καταλάβουμε ποιες είναι οι πιθανές τιμές σε αυτές τις δύο μεταβλητές, και επίσης πώς αποδίδονται οι τιμές σε κάθε παρατήρηση.
Ποια είναι η διαφορά μεταξύ εκτίμησης παραμέτρου και μεταβλητής; (Υπάρχουν περισσότερες από μία σωστές απαντήσεις.)
Σωστές απαντήσεις: Β, Γ, και Δ
Το μοντέλο:
\[\text{Thumb}_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Β. Οι εκτιμήσεις παραμέτρων είναι οι ίδιες για κάθε άτομο - ΣΩΣΤΟ ✓
Εκτιμήσεις παραμέτρων (σταθερές για όλους):
\(b_0 = 56.071\) mm
\(b_1 = 4.153\) mm
\(b_2 = 8.023\) mm
Μεταβλητές (διαφέρουν για κάθε άτομο):
\(X_{1i}\): 0 ή 1 (ανάλογα με την ομάδα)
\(X_{2i}\): 0 ή 1 (ανάλογα με την ομάδα)
\(Y_i\): διαφορετικό μήκος αντίχειρα για κάθε άτομο
Γ. Το μήκος αντίχειρα αποτελείται από τις ίδιες εκτιμήσεις παραμέτρων αλλά διαφορετικές τιμές για τις μεταβλητές - ΣΩΣΤΟ ✓
Παράδειγμα:
# Άτομο 1 (short): X1=0, X2=0
Thumb₁ = 56.071 + 4.153(0) + 8.023(0) = 56.071 mm
# Άτομο 2 (medium): X1=1, X2=0
Thumb₂ = 56.071 + 4.153(1) + 8.023(0) = 60.224 mm
# Άτομο 3 (tall): X1=0, X2=1
Thumb₃ = 56.071 + 4.153(0) + 8.023(1) = 64.094 mm
Οι εκτιμήσεις παραμέτρων (56.071, 4.153, 8.023) είναι οι ίδιες και για τα τρία άτομα.
Οι τιμές των μεταβλητών (\(X_1\), \(X_2\)) διαφέρουν για κάθε άτομο.
Δ. Οι μεταβλητές έχουν δείκτη i - ΣΩΣΤΟ ✓
Με δείκτη \(i\) (μεταβλητές):
\(Y_i\) - διαφορετικό για κάθε άτομο \(i\)
\(X_{1i}\) - διαφορετικό για κάθε άτομο \(i\)
\(X_{2i}\) - διαφορετικό για κάθε άτομο \(i\)
\(e_i\) - διαφορετικό υπόλοιπο για κάθε άτομο \(i\)
Χωρίς δείκτη \(i\) (παράμετροι):
\(b_0\) - σταθερό για όλους
\(b_1\) - σταθερό για όλους
\(b_2\) - σταθερό για όλους
Γιατί η Α είναι λάθος:
Α. “Παράμετροι με λατινικά, μεταβλητές με ελληνικά” - ΛΑΘΟΣ
Αυτό είναι ανάποδα:
Παράμετροι: \(\beta_0, \beta_1, \beta_2\) (άγνωστες παράμετροι πληθυσμού)
Εκτιμήσεις παραμέτρων: \(b_0, b_1, b_2\) (εκτιμήσεις από δείγμα)
-
Μεταβλητές: χρησιμοποιούν λατινικά γράμματα (X, Y)
\(Y_i\) - εξαρτημένη μεταβλητή
\(X_{1i}, X_{2i}\) - ανεξάρτητες μεταβλητές
Η συνάρτηση lm()
στην R δεν χρησιμοποιεί απαραίτητα την ίδια κωδικοποίηση που έχετε επιλέξει εσείς για μια μεταβλητή. Στο μοντέλο της Height3Group
δημιουργήσαμε μια ποιοτική ανεξάρτητη μεταβλητή (Height3Group
), όπου η κατηγορία 1 αντιστοιχεί σε short
, η κατηγορία 2 σε medium
και η κατηγορία 3 σε tall
. Ωστόσο, η lm()
μετατρέπει αυτή τη μία μεταβλητή σε δύο νέες μεταβλητές, \(X_1\) και \(X_2\), οι οποίες είναι κωδικοποιημένες ως ψευδομεταβλητές (dummy variables). Αυτό σημαίνει ότι για κάθε παρατήρηση οι τιμές τους μπορούν να είναι μόνο 0 ή 1.
Ας δούμε πώς γίνεται η κωδικοποίηση των ψευδομεταβλητών:
Για ένα άτομο στην ομάδα short
, το μοντέλο του αποδίδει την τιμή 56.07, που είναι ο μέσος όρος της ομάδας short
. Αυτή η τιμή είναι το \(b_0\). Η \(X_1\) μπορεί να θεωρηθεί ως μια μεταβλητή που «ρωτάει» για κάθε άτομο: «Ανήκει αυτό το άτομο στην ομάδα medium
;». Η τιμή 0 σημαίνει «όχι» και η τιμή 1 σημαίνει «ναι». Ομοίως, η \(X_2\) δείχνει αν ένα άτομο ανήκει στην ομάδα tall
. Για τα άτομα της ομάδας short
, και οι δύο ψευδομεταβλητές \(X_1\) και \(X_2\) παίρνουν την τιμή 0, καθώς δεν ανήκουν ούτε στην medium
ούτε στην tall
.

Ας υπολογίσουμε την εξίσωση για ένα άτομο στην ομάδα short
.
\[Y_i = 56.07 + 4.15X_{1i} + 8.02X_{2i} + e_i\]
Ποια είναι η σωστή εξίσωση για ένα άτομο στην ομάδα short
;
Σωστή απάντηση: Α
Το μοντέλο:
\[Y_i = 56.07 + 4.15X_{1i} + 8.02X_{2i} + e_i\]
όπου:
\(X_{1i}\) = 1 αν
medium
, 0 διαφορετικά\(X_{2i}\) = 1 αν
tall
, 0 διαφορετικά
Για κάποιον στην ομάδα short
:
Η ομάδα short
είναι η ομάδα αναφοράς (reference group), οπότε:
\(X_{1i} = 0\) (δεν είναι
medium
)\(X_{2i} = 0\) (δεν είναι
tall
)
Αντικατάσταση στο μοντέλο:
\[Y_i = 56.07 + 4.15(0) + 8.02(0) + e_i\]
\[Y_i = 56.07 + 0 + 0 + e_i\]
\[Y_i = 56.07 + e_i\]
Άρα η πρόβλεψη για την ομάδα short
είναι 56.07 mm (όταν \(e_i = 0\)).
Γιατί οι άλλες είναι λάθος:
Β. \(56.07 \times 0 + 4.15 + 8.02 \times 0 + e_i\) - ΛΑΘΟΣ
Πολλαπλασιάζει το Intercept (\(b_0 = 56.07\)) με 0
Το
Ιntercept
είναι εκτίμηση παραμέτρου, όχι μεταβλητή - δεν πολλαπλασιάζεται με τίποταΤο \(b_0\) πάντα προστίθεται ως σταθερός όρος
Θα έδινε: \(0 + 4.15 + 0 + e_i = 4.15 + e_i\) (εντελώς λάθος)
Γ. \(56.07 + 4.15 + 8.02 \times 0 + e_i\) - ΛΑΘΟΣ
Ίδιο λάθος με το Β
Θα έδινε: \(56.07 + 4.15 = 60.22\) mm (που είναι η τιμή για
medium
, όχιshort
)
Δ. \(56.07 + 4.15 + 8.02 + e_i\) - ΛΑΘΟΣ
Αυτό υποθέτει ότι και τα δύο \(X_{1i}\) και \(X_{2i}\) είναι 1
Αλλά ένα άτομο δεν μπορεί να είναι ταυτόχρονα
medium
καιtall
Θα έδινε: \(56.07 + 4.15 + 8.02 = 68.24\) mm (που δεν αντιστοιχεί σε καμία ομάδα)
Σύνοψη - Κωδικοποίηση για τις τρεις ομάδες:
Ομάδα | \(X_{1i}\) | \(X_{2i}\) | Εξίσωση | Πρόβλεψη |
---|---|---|---|---|
short |
0 | 0 | \(56.07 + 4.15(0) + 8.02(0) + e_i\) | 56.07 mm |
medium |
1 | 0 | \(56.07 + 4.15(1) + 8.02(0) + e_i\) | 60.22 mm |
tall |
0 | 1 | \(56.07 + 4.15(0) + 8.02(1) + e_i\) | 64.09 mm |
Κλειδί: Για την ομάδα short
, και οι δύο ψευδομεταβλητές είναι 0, οπότε απλά παίρνουμε το Ιntercept
(\(b_0 = 56.07\)).
Ας υπολογίσουμε την εξίσωση για ένα άτομο στην ομάδα medium
.
\[Y_i = 56.07 + 4.15X_{1i} + 8.02X_{2i} + e_i\]
Ποια είναι η σωστή εξίσωση για ένα άτομο στην ομάδα medium
;
Σωστή απάντηση: Β
Το μοντέλο:
\[Y_i = 56.07 + 4.15X_{1i} + 8.02X_{2i} + e_i\]
όπου:
\(X_{1i}\) = 1 αν
medium
, 0 διαφορετικά\(X_{2i}\) = 1 αν
tall
, 0 διαφορετικά
Για κάποιον στην ομάδα medium
:
\(X_{1i} = 1\) (ναι, είναι
medium
)\(X_{2i} = 0\) (όχι, δεν είναι
tall
)
Αντικατάσταση στο μοντέλο:
\[Y_i = 56.07 + 4.15(1) + 8.02(0) + e_i\]
\[Y_i = 56.07 + 4.15 + 0 + e_i\]
\[Y_i = 60.22 + e_i\]
Άρα η πρόβλεψη για την ομάδα medium
είναι 60.22 mm (όταν \(e_i = 0\)).
Γιατί οι άλλες είναι λάθος:
Α. \(56.07 + 4.15 \times 0 + 8.02 \times 0 + e_i\) - ΛΑΘΟΣ
Αυτό υποθέτει \(X_{1i} = 0\) και \(X_{2i} = 0\) (ομάδα
short
)Αλλά κάποιος στην
medium
έχει \(X_{1i} = 1\)Θα έδινε: 56.07 mm (που είναι η τιμή για την
short
, όχι τηνmedium
)
Γ. \(56.07 \times 0 + 4.15 + 8.02 \times 0 + e_i\) - ΛΑΘΟΣ
Πολλαπλασιάζει το
Intercept
(\(b_0 = 56.07\)) με 0Το
Intercept
είναι εκτίμηση παράμετρου, όχι μεταβλητή - δεν πολλαπλασιάζεται με τίποταΤο \(b_0\) πάντα προστίθεται ως σταθερός όρος
Θα έδινε: \(0 + 4.15 + 0 + e_i = 4.15 + e_i\) (εντελώς λάθος)
Δ. \(56.07 + 4.15 + 8.02 + e_i\) - ΛΑΘΟΣ
Αυτό υποθέτει \(X_{1i} = 1\) και \(X_{2i} = 1\)
Αλλά ένα άτομο δεν μπορεί να είναι ταυτόχρονα
medium
καιtall
Για
medium
: \(X_{2i} = 0\), άρα το 8.02 πολλαπλασιάζεται με 0Θα έδινε: 68.24 mm (που δεν αντιστοιχεί σε καμία ομάδα)
Βήμα-βήμα υπολογισμός:
# Βήμα 1: Ταυτοποίηση των τιμών για `medium`
X1 = 1 # Είναι medium
X2 = 0 # Δεν είναι tall
# Βήμα 2: Αντικατάσταση στην εξίσωση
Y = 56.07 + 4.15*X1 + 8.02*X2 + e
# Βήμα 3: Υπολογισμός
Y = 56.07 + 4.15*(1) + 8.02*(0) + e
Y = 56.07 + 4.15 + 0 + e
Y = 60.22 + e
Σύνοψη - Κωδικοποίηση για τις τρεις ομάδες:
Ομάδα | \(X_{1i}\) | \(X_{2i}\) | Εξίσωση | Πρόβλεψη |
---|---|---|---|---|
short | 0 | 0 | \(56.07 + 4.15(0) + 8.02(0) + e_i\) | 56.07 mm |
medium | 1 | 0 | \(56.07 + 4.15(1) + 8.02(0) + e_i\) | 60.22 mm |
tall | 0 | 1 | \(56.07 + 4.15(0) + 8.02(1) + e_i\) | 64.09 mm |
Κλειδί: Για την ομάδα medium
, το \(X_1 = 1\) οπότε προσθέτουμε το 4.15, αλλά το \(X_2 = 0\) οπότε δεν προσθέτουμε το 8.02.
Για ένα άτομο που ανήκει στην ομάδα medium
, η τιμή της \(X_1\) θα είναι 1 (επειδή ανήκει στην ομάδα medium
), ενώ η τιμή της \(X_2\) θα είναι 0 (επειδή δεν ανήκει στην ομάδα tall
). Συνεπώς, το μοντέλο θα του αποδώσει προβλεπόμενο μήκος αντίχειρα ίσο με 56.07 + 4.15 = 60.22 χιλιοστά.
Παρατηρήστε ότι, σύμφωνα με τα αποτελέσματα της favstats()
που ακολουθούν, ο μέσος όρος του μήκους του αντίχειρα για την ομάδα medium
είναι πράγματι 60.22 χιλιοστά!
Height3Group min Q1 median Q3 max mean sd n missing1 short 39.00 51.00 55 58.42 79.00 56.07113 7.499937 53 0
2 medium 45.00 55.00 60 64.00 86.36 60.22375 8.490406 52 0
3 tall 44.45 59.75 64 68.25 90.00 64.09365 8.388113 52 0
Η διαδικασία της δημιουργίας ψευδομεταβλητών μετατρέπει τις ποιοτικές μεταβλητές σε ένα σύνολο δυαδικών μεταβλητών (0/1). Όπως φαίνεται και στον παρακάτω πίνακα, αποδίδοντας σε κάθε άτομο την τιμή 0 ή την τιμή 1 στις \(X_1\) και \(X_2\), μπορούμε να το κατατάξουμε εύκολα σε μία από τις τρεις κατηγορίες: short
, medium
ή tall
.
Κατηγορία (Ομάδα) | Κωδικοποίηση \(X_1\) | Κωδικοποίηση \(X_2\) |
---|---|---|
short |
0 | 0 |
medium |
1 | 0 |
tall |
0 | 1 |
Ίσως αναρωτιέστε γιατί είναι απαραίτητο να γνωρίζετε όλες αυτές τις λεπτομέρειες σχετικά με το πώς η R κωδικοποιεί τις ψευδομεταβλητές για μια ποιοτική ανεξάρτητη μεταβλητή. Ο λόγος είναι ότι σας βοηθά να ερμηνεύετε σωστά τις παραμέτρους του μοντέλου. Για παράδειγμα, σας επιτρέπει να αντιληφθείτε πώς το μοντέλο υπολογίζει την τιμή πρόβλεψης για την τρίτη ομάδα, προσθέτοντας το \(b_2\) στο \(b_0\) (και όχι στο \(b_1\)). Σε αυτό το μάθημα, δεν θα σας ζητηθεί να υπολογίσετε αυτούς τους αριθμούς μόνοι σας· ο στόχος είναι να εστιάσετε στο νόημα των αριθμών και στο πώς αυτοί περιγράφουν τις διαφορές μεταξύ των ομάδων.
9.3 Σύγκριση της Προσαρμογής των Μοντέλων Δύο και Τριών Ομάδων
Εξέταση της Προσαρμογής του Μοντέλου Τριών Ομάδων
Μέχρι τώρα έχετε δημιουργήσει την ποιοτική ανεξάρτητη μεταβλητή Height3Group
, εξετάσει τους μέσους όρους του μήκους αντίχειρα για κάθε ομάδα, προσαρμόσει το μοντέλο της Height3Group
με τη συνάρτηση lm()
και ερμηνεύσει τις εκτιμήσεις παραμέτρων, και μάθει πώς να αναπαριστάτε το μοντέλο τριών ομάδων με χρήση της σημειολογίας του GLM.
Το τελευταίο βήμα είναι να εξετάσετε τον πίνακα ANOVA για να συγκρίνετε την προσαρμογή του μοντέλου της Height3Group
με το κενό μοντέλο. Μπορείτε να το κάνετε χρησιμοποιώντας τη συνάρτηση supernova()
. Προσαρμόστε το μοντέλο της Height3Group
και εμφανίστε τον πίνακα ANOVA.
Παρακάτω εμφανίζονται οι πίνακες ANOVA για τα δύο μοντέλα: πρώτα για το μοντέλο της Height2Group
και στη συνέχεια για το μοντέλο της Height3Group
, ώστε να μπορείτε να τα συγκρίνετε εύκολα.
Μοντέλο της Height2Group
Table (Type III SS)
Analysis of Variance : Thumb ~ Height2Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 830.880 1 830.880 11.656 0.0699 .0008
Error (from model) | 11049.331 155 71.286
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Μοντέλο της Height3Group
Table (Type III SS)
Analysis of Variance : Thumb ~ Height3Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 1690.440 2 845.220 12.774 0.1423 .0000
Error (from model) | 10189.770 154 66.167
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Παρατηρήστε τον πίνακα ANOVA για το μοντέλο της Height3Group
. Ποια αναλογία της μεταβλητότητας στο μήκος αντίχειρα εξηγείται από αυτό το μοντέλο;
Σωστή απάντηση: Α - PRE (0.1423)
Τι σημαίνει PRE;
PRE = Proportional Reduction in Error (Αναλογική Μείωση του Σφάλματος)
Το PRE μετράει την αναλογία της μεταβλητότητας που εξηγείται από το μοντέλο.
Ο τύπος:
\[\text{PRE} = \frac{\text{SS}_{\text{Model}}}{\text{SS}_{\text{Total}}} = \frac{1690.440}{11880.211} = 0.1423\]
Ερμηνεία:
PRE = 0.1423 ή 14.23%
Το μοντέλο της Height3Group εξηγεί περίπου το 14% της μεταβλητότητας στο μήκος αντίχειρα
Το υπόλοιπο 86% παραμένει ανεξήγητο (οφείλεται σε άλλους παράγοντες)
Εναλλακτικοί υπολογισμοί:
Μπορείτε επίσης να το υπολογίσετε ως μείωση του σφάλματος:
\[\text{PRE} = \frac{\text{SS}_{\text{Total}} - \text{SS}_{\text{Error}}}{\text{SS}_{\text{Total}}} = \frac{11880.2 - 10189.8}{11880.2} = \frac{1690.4}{11880.2} = 0.1423\]
Γιατί οι άλλες είναι λάθος:
Β. \(SS_{Model}\) (1690.4) - ΛΑΘΟΣ
Αυτό είναι το άθροισμα τετραγώνων που εξηγείται από το μοντέλο
Έχει μονάδες μέτρησης (mm²)
Η ερώτηση ζητάει αναλογία (χωρίς μονάδες, 0-1)
Γ. \(SS_{Error}\) (10189.8) - ΛΑΘΟΣ
Αυτό είναι η ανεξήγητη μεταβλητότητα
Όχι η εξηγούμενη μεταβλητότητα
Αντιπροσωπεύει το σφάλμα που απομένει μετά το μοντέλο
Δ. \(SS_{Total}\) (11880.2) - ΛΑΘΟΣ
Αυτό είναι η συνολική μεταβλητότητα
Όχι η αναλογία που εξηγείται
Είναι το άθροισμα: \(SS_{Model} + SS_{Error}\)
Συμπέρασμα:
Το PRE = 0.1423 είναι η σωστή απάντηση γιατί:
Είναι αναλογία (0-1), όχι απόλυτη τιμή
Μετράει την εξηγούμενη μεταβλητότητα
Υπολογίζεται ως \(\frac{SS_{Model}}{SS_{Total}}\)
Απαντάει άμεσα στην ερώτηση: «Ποια αναλογία εξηγείται;»
Συγκρίνετε τους πίνακες ANOVA για τα μοντέλα της Height3Group
και της Height2Group
. Γιατί το συνολικό Άθροισμα Τετραγώνων (Total SS
) είναι το ίδιο και για τα δύο μοντέλα;
Σωστή απάντηση: Δ - Και τα δύο έχουν την ίδια εξαρτημένη μεταβλητή
Τι είναι το SS\(_{\text{Total}}\);
\[\text{SS}_{\text{Total}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2\]
Το SS\(_{\text{Total}}\) μετράει τη συνολική μεταβλητότητα της εξαρτημένης μεταβλητής από το γενικό μέσο όρο.
Και τα δύο μοντέλα:
Height2Group:
Thumb ~ Height2Group
Height3Group:
Thumb ~ Height3Group
προσπαθούν να εξηγήσουν το μήκος αντίχειρα.
Γιατί το SS\(_{\text{Total}}\) είναι το ίδιο (11880.211);
Ίδια εξαρτημένη μεταβλητή: Και τα δύο μοντέλα χρησιμοποιούν την ίδια μεταβλητή \(Y\) (Thumb)
Ίδια δεδομένα: Και τα δύο χρησιμοποιούν το ίδιο σύνολο δεδομένων (n = 157 άτομα)
Ίδιος γενικός μέσος όρος: Ο μέσος όρος του μήκους αντίχειρα είναι ο ίδιος
Το SS\(_{\text{Total}}\) δεν εξαρτάται από το μοντέλο - εξαρτάται μόνο από:
Τη μεταβλητότητα της \(Y\) (Thumb)
Τον αριθμό των παρατηρήσεων
Γιατί οι άλλες είναι λάθος:
Α. “Ίδια ανεξάρτητη μεταβλητή” - ΛΑΘΟΣ
-
Οι ανεξάρτητες μεταβλητές είναι διαφορετικές:
Height2Group: 2 κατηγορίες (short, tall)
Height3Group: 3 κατηγορίες (short, medium, tall)
Και οι δύο βασίζονται στο ύψος (Height), αλλά με διαφορετική κατηγοριοποίηση
Β. “Ποιοτική ανεξάρτητη μεταβλητή” - ΛΑΘΟΣ
Ναι, και οι δύο χρησιμοποιούν ποιοτική μεταβλητή
Αλλά αυτός δεν είναι ο λόγος για τον οποίο το SS\(_{\text{Total}}\) είναι ίδιο
Το SS\(_{\text{Total}}\) θα ήταν ίδιο ακόμα και με ποσοτική ανεξάρτητη μεταβλητή
Γ. “Ποσοτική μεταβλητή” - ΛΑΘΟΣ
Και τα δύο χρησιμοποιούν ποιοτική ανεξάρτητη μεταβλητή (ομάδες ύψους)
Όχι ποσοτική
Αν και το Height (ύψος) είναι ποσοτική, οι Height2Group και Height3Group είναι ποιοτικές
Συμπέρασμα:
Το SS\(_{\text{Total}}\) είναι το ίδιο επειδή και τα δύο μοντέλα εξηγούν την ίδια εξαρτημένη μεταβλητή (Thumb) χρησιμοποιώντας τα ίδια δεδομένα. Η συνολική μεταβλητότητα της \(Y\) δεν αλλάζει - αλλάζει μόνο πόσο καλά την εξηγούμε.
Ποιο μοντέλο προσαρμόζεται καλύτερα στα δεδομένα;
Πώς μπορείτε να καταλάβετε ποιο μοντέλο προσαρμόζεται καλύτερα στα δεδομένα; (Υπάρχουν περισσότερες από μία σωστές απαντήσεις.)
Πρώτη ερώτηση - Σωστή απάντηση: Α - Height3Group
Δεύτερη ερώτηση - Σωστές απαντήσεις: Β, Γ, και Δ
Πώς συγκρίνουμε μοντέλα;
Μέτρο | Height2Group | Height3Group | Καλύτερο |
---|---|---|---|
PRE | 0.0699 (7%) | 0.1423 (14%) | Height3Group ✓ |
SS\(_{\text{Model}}\) | 830.880 | 1690.440 | Height3Group ✓ |
SS\(_{\text{Error}}\) | 11049.331 | 10189.770 | Height3Group ✓ |
SS\(_{\text{Total}}\) | 11880.211 | 11880.211 | Ίδιο |
Β. Μεγαλύτερο PRE - ΣΩΣΤΟ ✓
PRE = Proportional Reduction in Error
Μετράει την αναλογία της μεταβλητότητας που εξηγείται
Height3Group: PRE = 0.1423 (14.23%)
Height2Group: PRE = 0.0699 (6.99%)
Μεγαλύτερο PRE = καλύτερο μοντέλο
\[\text{PRE} = \frac{\text{SS}_{\text{Model}}}{\text{SS}_{\text{Total}}}\]
Γ. Μεγαλύτερο SS Model - ΣΩΣΤΟ ✓
SS\(_{\text{Model}}\) = η μεταβλητότητα που εξηγείται από το μοντέλο
Height3Group: SS\(_{\text{Model}}\) = 1690.440
Height2Group: SS\(_{\text{Model}}\) = 830.880
Μεγαλύτερο SS\(_{\text{Model}}\) = περισσότερη εξηγούμενη μεταβλητότητα = καλύτερο μοντέλο
Δ. Μικρότερο SS Error - ΣΩΣΤΟ ✓
SS\(_{\text{Error}}\) = η μεταβλητότητα που δεν εξηγείται (υπολειπόμενο σφάλμα)
Height3Group: SS\(_{\text{Error}}\) = 10189.770
Height2Group: SS\(_{\text{Error}}\) = 11049.331
Μικρότερο SS\(_{\text{Error}}\) = λιγότερο ανεξήγητο σφάλμα = καλύτερο μοντέλο
Γιατί οι άλλες είναι λάθος:
Α. “Μεγαλύτερο SS Total” - ΛΑΘΟΣ
Το SS\(_{\text{Total}}\) είναι το ίδιο και για τα δύο μοντέλα (11880.211)
Εξαρτάται μόνο από τη μεταβλητότητα της εξαρτημένης μεταβλητής (Thumb)
Δεν αλλάζει με το μοντέλο
Ε. “Μικρότερο SS Total” - ΛΑΘΟΣ
Ίδιος λόγος με το Α
Το SS\(_{\text{Total}}\) δεν σχετίζεται με την ποιότητα του μοντέλου
Η σχέση:
\[\text{SS}_{\text{Total}} = \text{SS}_{\text{Model}} + \text{SS}_{\text{Error}}\]
Αφού το SS\(_{\text{Total}}\) είναι σταθερό:
Όταν το SS\(_{\text{Model}}\) ↑ → το SS\(_{\text{Error}}\) ↓
Καλύτερο μοντέλο = περισσότερη εξηγούμενη, λιγότερη ανεξήγητη μεταβλητότητα
Συμπέρασμα:
Το μοντέλο της Height3Group είναι καλύτερο μοντέλο επειδή:
Εξηγεί διπλάσια μεταβλητότητα (14% vs 7%)
Έχει μεγαλύτερο SS\(_{\text{Model}}\) (1690 vs 831)
Έχει μικρότερο SS\(_{\text{Error}}\) (10190 vs 11049)
Το SS\(_{\text{Total}}\) δεν έχει σημασία - είναι το ίδιο για όλα τα μοντέλα με την ίδια εξαρτημένη μεταβλητή
Γιατί νομίζετε ότι αυτό το μοντέλο (της Height3Group
) είναι καλύτερο;
Σωστή απάντηση: Β - Πιο ακριβείς προβλέψεις, μικρότερα υπόλοιπα
Γιατί το μοντέλο της Height3Group είναι καλύτερο;
Το μοντέλο της Height3Group χωρίζει τα δεδομένα σε 3 ομάδες αντί για 2, επιτρέποντας:
Πιο εξειδικευμένες προβλέψεις
Καλύτερη προσαρμογή στα δεδομένα
Μικρότερα υπόλοιπα (residuals)
Σύγκριση:
Μοντέλο | Προβλέψεις | SS\(_{\text{Error}}\) | PRE |
---|---|---|---|
Height2Group | 2 μέσοι όροι: • short: 57.82 mm • tall: 62.42 mm |
11049.3 | 7% |
Height3Group | 3 μέσοι όροι: • short: 56.07 mm • medium: 60.22 mm • tall: 64.09 mm |
10189.8 | 14% |
Τι σημαίνει “πιο ακριβείς προβλέψεις”;
Με 3 ομάδες αντί για 2:
Τα άτομα μεσαίου ύψους παίρνουν τη δική τους πρόβλεψη (60.22 mm)
Δεν αναγκάζονται να ομαδοποιηθούν με τους κοντούς ή τους ψηλούς
Οι προβλέψεις είναι πιο κοντά στις πραγματικές τιμές
Μείωση υπολοίπων:
Μικρότερα υπόλοιπα = οι προβλέψεις είναι πιο κοντά στις πραγματικές τιμές
SS\(_{\text{Error}}\) μειώθηκε από 11049 → 10189 (μείωση ~860 mm²)
Γιατί οι άλλες είναι λάθος:
Α. “Λιγότερη συνολική μεταβλητότητα” - ΛΑΘΟΣ
Το SS\(_{\text{Total}}\) είναι το ίδιο και για τα δύο μοντέλα (11880.2)
Η συνολική μεταβλητότητα εξαρτάται από τα δεδομένα, όχι από το μοντέλο
Και τα δύο μοντέλα χρησιμοποιούν τα ίδια δεδομένα
Γ. “Εύρος προβλέψεων για κάθε άτομο” - ΛΑΘΟΣ
Κάθε μοντέλο κάνει μία πρόβλεψη ανά άτομο (το μέσο όρο της ομάδας του)
Δεν κάνει “εύρος” προβλέψεων
Δ. “Μοντέλα 2 ομάδων πάντα καλύτερα” - ΛΑΘΟΣ
Αυτό είναι το αντίθετο από αυτό που ισχύει
Τα πιο σύνθετα μοντέλα (με περισσότερες ομάδες) συχνά προσαρμόζονται καλύτερα στα δεδομένα
Η απλότητα ενός μοντέλου είναι επιθυμητή, αλλά όχι εις βάρος της ακρίβειας της πρόβλεψης
Εδώ, το μοντέλο της Height3Group έχει σαφώς καλύτερη προσαρμογή (PRE: 14% vs 7%)
Ε. “Έτυχε” - ΛΑΘΟΣ
Αυτό δεν είναι σύμπτωση
Υπάρχει συστηματική βελτίωση όταν προσθέτουμε μια ομάδα
Συμπέρασμα:
Το μοντέλο της Height3Group είναι καλύτερο επειδή παράγει πιο ακριβείς προβλέψεις με τη δημιουργία μιας ξεχωριστής ομάδας για τα άτομα μεσαίου ύψους. Αυτό μειώνει τα υπόλοιπα (SS\(_{\text{Error}}\)) και αυξάνει την εξηγούμενη μεταβλητότητα (PRE).
Σε επόμενο κεφάλαιο θα μάθουμε πώς να συγκρίνουμε άμεσα τα δύο μοντέλα μεταξύ τους. Προς το παρόν, θα περιοριστούμε στη σύγκριση κάθε μοντέλου με το κενό μοντέλο.
Βελτίωση Μοντέλων με την Προσθήκη Παραμέτρων
Όπως είδαμε παραπάνω, το μοντέλο της Height3Group
εξηγεί μεγαλύτερο ποσοστό της μεταβλητότητας σε σχέση με το μοντέλο της Height2Group
. Με άλλα λόγια, μειώνει περισσότερο το ανεξήγητο σφάλμα σε σύγκριση με το κενό μοντέλο. Αυτό φαίνεται καθαρά αν συγκρίνετε τις τιμές του PRE (.14 έναντι .07, αντίστοιχα).
Αν εξετάσετε τα παρακάτω ιστογράμματα και τα διαγράμματα jitter για το μοντέλο δύο ομάδων και το μοντέλο τριών ομάδων, αντίστοιχα, θα κατανοήσετε γιατί συμβαίνει αυτό. Όσο προσθέτουμε στο μοντέλο περισσότερες ομάδες ύψους, μειώνουμε τη μεταβλητότητα των υπολοίπων γύρω από το μέσο όρο του ύψους για κάθε ομάδα, κάτι που οδηγεί σε καλύτερη προσαρμογή του μοντέλου.

Γενικά, όσο περισσότερες παραμέτρους προσθέτουμε σε ένα μοντέλο, τόσο μικρότερο γίνεται το υπολειπόμενο σφάλμα μετά την αφαίρεση της επίδρασης του μοντέλου. Αν και αυτό δεν ισχύει πάντα, συνήθως τα πιο σύνθετα μοντέλα έχουν υψηλότερες τιμές PRE. Εφόσον ο στόχος μας είναι να μειώσουμε το σφάλμα, η αυξημένη πολυπλοκότητα φαίνεται αρχικά επιθυμητή — και πράγματι είναι, αλλά μόνο μέχρι ενός σημείου.
Ας κάνουμε ένα μικρό πείραμα σκέψης. Γνωρίζουμε ήδη ότι το μοντέλο τριών ομάδων εξηγεί περισσότερη μεταβλητότητα από το μοντέλο δύο ομάδων. Με την ίδια λογική, το μοντέλο τεσσάρων ομάδων θα εξηγούσε ακόμη περισσότερη, και ούτω καθεξής. Τι θα συνέβαινε, όμως, αν συνεχίζαμε να διαιρούμε τη μεταβλητή του ύψους σε όλο και περισσότερες ομάδες, μέχρι τελικά κάθε άτομο να ανήκει στη δική του ξεχωριστή ομάδα;
Αν το κάναμε αυτό, το σφάλμα θα μηδενιζόταν. Γιατί; Επειδή κάθε άτομο θα είχε τη δική του παράμετρο στο μοντέλο, και η τιμή πρόβλεψης για κάθε άτομο θα ήταν ακριβώς ίση με την πραγματική του τιμή. Δεν θα υπήρχε λοιπόν καμία διαφορά — κανένα υπόλοιπο — μεταξύ τιμής πρόβλεψης και πραγματικής τιμής. Με αυτόν τον τρόπο, όλη η μεταβλητότητα θα φαινόταν να εξηγείται από το μοντέλο.
Ωστόσο, αυτό οδηγεί σε δύο σημαντικά προβλήματα:
Πρώτον, αν και το μοντέλο θα προσαρμοζόταν τέλεια στα δεδομένα μας, δεν θα αναμενόταν να αποδώσει εξίσου καλά σε ένα νέο δείγμα, καθώς τα άτομα θα ήταν διαφορετικά.
Δεύτερον, ο σκοπός της αυξημένης πολυπλοκότητας είναι να μας βοηθήσει να κατανοήσουμε καλύτερα τη Διαδικασία Παραγωγής των Δεδομένων. Είναι λογικό να προσθέτουμε παραμέτρους όταν αυτό οδηγεί σε βαθύτερη κατανόηση του φαινομένου που μελετάμε. Αν, όμως, καταλήξουμε να έχουμε τόσες παραμέτρους όσες και παρατηρήσεις, τότε έχουμε προσθέσει πολυπλοκότητα χωρίς να έχουμε κερδίσει καμία ουσιαστική γνώση για τη διαδικασία που δημιουργεί τα δεδομένα.
Παρόλο που μπορούμε να βελτιώσουμε την προσαρμογή ενός μοντέλου προσθέτοντας περισσότερες παραμέτρους, υπάρχει πάντα ένας συμβιβασμός μεταξύ της μείωσης του σφάλματος, από τη μία πλευρά, και της διατήρησης της απλότητας, της ερμηνευσιμότητας και της κομψότητας του μοντέλου, από την άλλη.
Αυτός είναι και ένας βασικός περιορισμός του PRE ως μέτρου της επιτυχίας ενός μοντέλου στη μείωση του σφάλματος. Για παράδειγμα, μια τιμή PRE = .40 θα ήταν αρκετά εντυπωσιακή αν προέκυπτε με την προσθήκη μόνο μίας παραμέτρου. Αν όμως είχαμε το ίδιο αποτέλεσμα μετά την προσθήκη δέκα παραμέτρων, τότε η επίδοση αυτή δεν θα θεωρούνταν ιδιαίτερα αξιοσημείωτη. Αυτό το φαινόμενο είναι γνωστό στους στατιστικολόγους ως υπερπροσαρμογή (overfitting), δηλαδή η υπερβολική προσαρμογή ενός μοντέλου στα συγκεκριμένα δεδομένα του δείγματος, με αποτέλεσμα να χάνει τη γενικευσιμότητά του.
Ένα γνωμικό που αποδίδεται στον Αϊνστάιν συνοψίζει άψογα αυτή την ιδέα: «Όλα πρέπει να γίνονται όσο πιο απλά είναι δυνατόν, αλλά όχι απλούστερα.» Μια ορισμένη ποσότητα πολυπλοκότητας είναι αναπόφευκτη — τα μοντέλα μας πρέπει να αντικατοπτρίζουν, έστω και μερικώς, την πολυπλοκότητα του πραγματικού κόσμου. Ωστόσο, όσο μπορούμε να διατηρούμε τα μοντέλα μας απλά, χωρίς να χάνουμε τη δυνατότητα να κατανοούμε το φαινόμενο ή να κάνουμε επαρκώς ακριβείς προβλέψεις, τόσο το καλύτερο.
Ο στόχος της δημιουργίας ενός στατιστικού μοντέλου δεν είναι απλώς η μείωση του σφάλματος. Θέλουμε, φυσικά, να μειώσουμε το σφάλμα όσο το δυνατόν περισσότερο, αλλά αυτό δεν είναι ο μοναδικός μας σκοπός. Ποιοι άλλοι στόχοι πρέπει να μας καθοδηγούν όταν κατασκευάζουμε ένα μοντέλο;
Σωστή απάντηση: Όλα τα Α, Β, Γ
Η δημιουργία ενός καλού στατιστικού μοντέλου απαιτεί την εξισορρόπηση πολλαπλών στόχων, όχι μόνο τη μείωση του σφάλματος.
Α. Κατανόηση της Διαδικασίας Παραγωγής των Δεδομένων - ΣΩΣΤΟ ✓
Τι είναι η ΔΠΔ;
Η Διαδικασία Παραγωγής Δεδομένων είναι ο υποκείμενος μηχανισμός που δημιουργεί τα δεδομένα που παρατηρούμε.
Παράδειγμα:
Ερώτημα: Γιατί τα ψηλότερα άτομα έχουν μεγαλύτερους αντίχειρες;
ΔΠΔ: Το ύψος και το μήκος αντίχειρα συσχετίζονται επειδή και τα δύο επηρεάζονται από γενετικούς παράγοντες, διατροφή, κλπ.
Το μοντέλο: Μας βοηθά να κατανοήσουμε αυτή τη σχέση
Γιατί είναι σημαντικό;
Θέλουμε να εξηγήσουμε φαινόμενα, όχι μόνο να προβλέψουμε
Κατανοώντας τη ΔΠΔ, μπορούμε να γενικεύσουμε σε νέες καταστάσεις
Μας βοηθά να λάβουμε αποφάσεις (π.χ., παρεμβάσεις)
Β. Καλές προβλέψεις - ΣΩΣΤΟ ✓
Γιατί χρειαζόμαστε προβλέψεις;
Ένα μοντέλο πρέπει να κάνει αρκετά καλές προβλέψεις για νέα δεδομένα.
Παράδειγμα:
Αν ξέρουμε ότι κάποιος είναι ψηλός, μπορούμε να προβλέψουμε ότι πιθανόν έχει μεγαλύτερο αντίχειρα
-
Το μοντέλο της
Height3Group
προβλέπει:short: 56.07 mm
medium: 60.22 mm
tall: 64.09 mm
Αλλά όχι τέλειες προβλέψεις:
Δεν χρειάζεται να έχουμε μηδενικό σφάλμα
Αρκεί να είναι χρήσιμες προβλέψεις (καλύτερες από την τύχη)
Υπερβολική ακρίβεια μπορεί να οδηγήσει σε υπερπροσαρμογή (overfitting)
Γ. Εξισορρόπηση απλότητας και ακρίβειας μοντέλου - ΣΩΣΤΟ ✓
Το δίλημμα:
Απλότητα ←──────────────────→ Ακρίβεια
(λίγες παράμετροι) (πολλές παράμετροι)
Εύκολο να κατανοηθεί Καλύτερη προσαρμογή
Γενικεύει καλά Κίνδυνος υπερπροσαρμογής
Παράδειγμα:
Μοντέλο | Παράμετροι | PRE | Απλότητα vs Ακρίβεια |
---|---|---|---|
Κενό μοντέλο | 1 (\(b_0\)) | 0% | Πολύ απλό, καμία ακρίβεια |
Height2Group | 2 (\(b_0, b_1\)) | 7% | Απλό, μέτρια ακρίβεια |
Height3Group | 3 (\(b_0, b_1, b_2\)) | 14% | Πιο πολύπλοκο, καλύτερη ακρίβεια |
Ατομικό μοντέλο | 157 παράμετροι | 100% | Πολύ πολύπλοκο, τέλεια προσαρμογή αλλά άχρηστο! |
Γιατί όχι πάντα το πιο ακριβές μοντέλο;
Υπερπροσαρμογή: Ένα μοντέλο με μια παράμετρο για κάθε άτομο θα έχει μηδενικό σφάλμα, αλλά θα είναι άχρηστο για νέα, άγνωστα δεδομένα
Ερμηνευσιμότητα: Απλούστερα μοντέλα είναι πιο εύκολο να κατανοηθούν
Γενίκευση: Απλούστερα μοντέλα συχνά λειτουργούν καλύτερα σε νέα δεδομένα
Η αρχή της απλότητας (Parsimony / Occam’s Razor):
«Προτιμήστε το απλούστερο μοντέλο που κάνει αρκετά καλή δουλειά.»
Γιατί όλα τα παραπάνω;
Ένα καλό μοντέλο πρέπει να:
-
Εξηγεί την υποκείμενη διαδικασία (ΔΠΔ)
Κατανοούμε γιατί υπάρχει η σχέση
π.χ., «Το ύψος σχετίζεται με το μήκος αντίχειρα»
-
Προβλέπει αρκετά καλά
Δίνει χρήσιμες εκτιμήσεις για νέες παρατηρήσεις
π.χ., PRE = 14% σημαίνει ότι εξηγούμε μέρος της μεταβλητότητας
-
Εξισορροπεί απλότητα και ακρίβεια
Όχι υπερβολικά απλό (χαμηλή ακρίβεια)
Όχι υπερβολικά πολύπλοκο (υπερπροσαρμογή)
π.χ., Height3Group: 3 παράμετροι = καλή ισορροπία
Παράδειγμα από τα δεδομένα μας:
Το μοντέλο της Height3Group ικανοποιεί και τους τρεις στόχους:
✓ Κατανόηση: Βλέπουμε ότι το ύψος συσχετίζεται θετικά με το μήκος αντίχειρα
✓ Πρόβλεψη: Εξηγεί 14% της μεταβλητότητας (αρκετά χρήσιμο)
✓ Ισορροπία: 3 παράμετροι = απλό αλλά όχι υπερβολικά απλό
Συμπέρασμα:
Η μοντελοποίηση δεν είναι μόνο για τη μείωση του σφάλματος. Χρειαζόμαστε μοντέλα που:
Μας βοηθούν να καταλάβουμε τον κόσμο (ΔΠΔ)
Κάνουν χρήσιμες προβλέψεις
Είναι αρκετά απλά για να γενικεύουν αλλά αρκετά πολύπλοκα για να είναι ακριβή
Όλοι αυτοί οι στόχοι είναι εξίσου σημαντικοί και πρέπει να λαμβάνονται ταυτόχρονα υπόψη!
Ποιο είναι το μειονέκτημα του PRE;
Σωστή απάντηση: Δ - Το PRE δεν λαμβάνει υπόψη την πολυπλοκότητα του μοντέλου
Το πρόβλημα με το PRE:
Το PRE μετράει πόσο καλά το μοντέλο προσαρμόζεται στα δεδομένα, αλλά δεν λαμβάνει υπόψη πόσο πολύπλοκο είναι το μοντέλο.
Παράδειγμα:
Μοντέλο | Παράμετροι | PRE | Πολυπλοκότητα |
---|---|---|---|
Κενό μοντέλο | 1 | 0% | Πολύ απλό |
Height2Group | 2 | 7% | Απλό |
Height3Group | 3 | 14% | Μέτρια |
Height10Group | 10 | 25% | Πολύ πολύπλοκο |
Ατομικό μοντέλο | 157 | 100% | Άχρηστα πολύπλοκο! |
Το πρόβλημα:
Αν συνεχίσουμε να προσθέτουμε παραμέτρους:
Το PRE θα συνεχίσει να αυξάνεται
Τελικά θα φτάσουμε σε 100% PRE (τέλεια προσαρμογή)
Αλλά το μοντέλο θα είναι υπερπροσαρμοσμένο (overfitted)
Δεν θα γενικεύεται σε νέα δεδομένα
Το PRE ΔΕΝ δείχνει:
Αν η βελτίωση στην προσαρμογή αξίζει την προσθήκη πολυπλοκότητας
Αν το μοντέλο θα λειτουργήσει καλά σε νέα δεδομένα
Αν έχουμε την καλύτερη ισορροπία μεταξύ απλότητας και ακρίβειας
Γιατί οι άλλες είναι λάθος:
Α. “Τέλειο στατιστικό” - ΛΑΘΟΣ
Κανένα στατιστικό δεν είναι τέλειο
Το PRE έχει σημαντικό μειονέκτημα: αγνοεί την πολυπλοκότητα
Β. “Δεν δείχνει πόσο σφάλμα μειώθηκε σε σχέση με το συνολικό” - ΛΑΘΟΣ
- Αυτό είναι ακριβώς αυτό που κάνει το PRE!
\[\text{PRE} = \frac{\text{SS}_{\text{Model}}}{\text{SS}_{\text{Total}}} = \frac{\text{Μείωση σφάλματος}}{\text{Συνολικό σφάλμα}}\]
- Π.χ., PRE = 0.14 σημαίνει ότι μειώσαμε το 14% του συνολικού σφάλματος
Γ. “Ένα από πολλά μέτρα” - ΜΕΡΙΚΩΣ ΣΩΣΤΟ αλλά όχι το χειρότερο
Ναι, υπάρχουν και άλλα μέτρα (AIC, BIC, Adjusted R², κλπ.)
Αλλά αυτό δεν είναι μειονέκτημα του PRE
Είναι καλό να έχουμε πολλά μέτρα!
Το πραγματικό πρόβλημα είναι η αγνόηση της πολυπλοκότητας
Παράδειγμα του προβλήματος:
Φανταστείτε ότι συγκρίνουμε:
Μοντέλο Α: 3 παράμετροι, PRE = 14%
Μοντέλο Β: 50 παράμετροι, PRE = 18%
Το PRE δείχνει ότι το Β είναι καλύτερο (18% > 14%).
Αλλά:
Το Β προσθέτει 47 επιπλέον παραμέτρους για μόνο 4% βελτίωση
Αξίζει την πολυπλοκότητα;
Το PRE δεν μας το δείχνει!
Λύσεις - Μέτρα που λαμβάνουν υπόψη την πολυπλοκότητα:
-
Adjusted R² (Διορθωμένο R²)
“Τιμωρεί” μοντέλα με πολλές παραμέτρους
Αυξάνεται μόνο αν η νέα παράμετρος βελτιώνει αρκετά την προσαρμογή
-
AIC (Akaike Information Criterion)
Ισορροπεί καλή προσαρμογή με απλότητα
Μικρότερο AIC = καλύτερο μοντέλο
-
BIC (Bayesian Information Criterion)
- Παρόμοιο με AIC αλλά “τιμωρεί” περισσότερο την πολυπλοκότητα
Συμπέρασμα:
Το μειονέκτημα του PRE είναι ότι:
Δε λαμβάνει υπόψη την πολυπλοκότητα του μοντέλου
Αυτό σημαίνει ότι:
Μπορεί να μας οδηγήσει σε υπερβολικά πολύπλοκα μοντέλα
Δεν μας βοηθά να βρούμε την καλύτερη ισορροπία μεταξύ απλότητας και ακρίβειας
Πρέπει να το χρησιμοποιούμε μαζί με άλλα μέτρα που λαμβάνουν υπόψη την πολυπλοκότητα
Για αυτό το λόγο:
Χρησιμοποιούμε το PRE για να κατανοήσουμε την ποσότητα της μεταβλητότητας που εξηγεί ένα μοντέλο, αλλά δεν μπορούμε να βασιστούμε σε αυτό για να επιλέξουμε μεταξύ μοντέλων διαφορετικής πολυπλοκότητας.
9.4 Το πηλίκο F
Στην προηγούμενη ενότητα συζητήσαμε τους περιορισμούς του PRE ως μέτρου προσαρμογής ενός μοντέλου. Ένα μοντέλο μπορεί να «υπερπροσαρμοστεί» αν προσθέσουμε υπερβολικά πολλές παραμέτρους, γεγονός που μειώνει μεν το σφάλμα, αλλά εις βάρος της γενικευσιμότητας. Το PRE, επομένως, από μόνο του δεν επαρκεί για να αξιολογήσουμε ουσιαστικά τη βελτίωση της προσαρμογής· μας δείχνει αν το σφάλμα μειώνεται, αλλά όχι με ποιο κόστος επιτυγχάνεται αυτή η μείωση.
Το πηλίκο F
(F
ratio) έρχεται να καλύψει αυτό το κενό, καθώς προσφέρει έναν δείκτη της μείωσης του σφάλματος που επιτυγχάνεται από ένα μοντέλο, λαμβάνοντας υπόψη τον αριθμό των παραμέτρων που απαιτήθηκαν για αυτή τη μείωση.
Για να κατανοήσουμε πώς υπολογίζεται το πηλίκο F, ας επιστρέψουμε στον πίνακα ANOVA για το μοντέλο Height2Group
(που φαίνεται παρακάτω). Έχουμε ήδη εξηγήσει πώς ερμηνεύεται η στήλη SS
. Τώρα, ας εξετάσουμε τις επόμενες τρεις στήλες: df
, MS
και F
. Το df
αναφέρεται στους βαθμούς ελευθερίας (degrees of freedom), το MS
αντιστοιχεί στο Μέσο Άθροισμα Τετραγώνων (Mean Square), και το F
είναι, φυσικά, το πηλίκο F
.
Table (Type III SS)
Analysis of Variance : Thumb ~ Height2Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 830.880 1 830.880 11.656 0.0699 .0008
Error (from model) | 11049.331 155 71.286
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Βαθμοί Ελευθερίας (df
)
Τεχνικά, οι βαθμοί ελευθερίας είναι ο αριθμός των ανεξάρτητων πληροφοριών που χρησιμοποιούνται για τον υπολογισμό μιας εκτίμησης παραμέτρου (π.χ., των \(b_0\) ή \(b_1\)). Ωστόσο, είναι συχνά πιο διαισθητικό να τους σκεφτόμαστε ως ένα «απόθεμα» (budget) που έχουμε στη διάθεσή μας. Όσο περισσότερες παρατηρήσεις διαθέτουμε (δηλαδή όσο μεγαλύτερο είναι το μέγεθος του δείγματος, \(n\)), τόσο περισσότερους βαθμούς ελευθερίας έχουμε για να εκτιμήσουμε περισσότερες παραμέτρους — με άλλα λόγια, για να δημιουργήσουμε πιο σύνθετα μοντέλα.
Στο σύνολο δεδομένων Fingers
υπάρχουν 157 παρατηρήσεις (φοιτητές). Όταν εκτιμήσαμε τη μοναδική παράμετρο του κενού μοντέλου (την εκτίμηση \(b_0\)), χρησιμοποιήσαμε 1 βαθμό ελευθερίας (1 df
), αφήνοντας 156 βαθμούς ελευθερίας διαθέσιμους — αυτό το σύνολο ονομάζεται df Total
.
Το μοντέλο της Height2Group
απαιτούσε την εκτίμηση μίας επιπλέον παραμέτρου (της εκτίμησης \(b_1\)), γεγονός που μας «κόστισε» έναν ακόμη βαθμό ελευθερίας. Γι’ αυτό, στον πίνακα ANOVA (γραμμή Model (error reduced)
), βλέπουμε ότι το df Model
είναι 1. Μετά την προσαρμογή του μοντέλου της Height2Group
, απομένουν 155 βαθμοί ελευθερίας, οι οποίοι αντιστοιχούν στο df Error
.
Κάθε επιπλέον παράμετρος σε ένα μοντέλο κοστίζει:
Σωστή απάντηση: Β - έναν επιπλέον βαθμό ελευθερίας
Τι είναι οι βαθμοί ελευθερίας;
Οι βαθμοί ελευθερίας είναι ο αριθμός των “ανεξάρτητων κομματιών πληροφορίας” που απομένουν μετά την εκτίμηση των παραμέτρων ενός μοντέλου.
Τύπος:
\[\text{df}_{\text{Error}} = n - k\]
όπου:
\(n\) = αριθμός παρατηρήσεων (άτομα)
\(k\) = αριθμός παραμέτρων στο μοντέλο
Παραδείγματα από τα μοντέλα μας:
Μοντέλο | Παράμετροι \((k)\) | Παρατηρήσεις \((n)\) | df Error |
---|---|---|---|
Κενό μοντέλο | 1 (\(b_0\)) | 157 | \(157 - 1 = 156\) |
Height2Group | 2 (\(b_0, b_1\)) | 157 | \(157 - 2 = 155\) |
Height3Group | 3 (\(b_0, b_1, b_2\)) | 157 | \(157 - 3 = 154\) |
Από τον πίνακα ANOVA:
Height2Group:
Error (from model) | 11049.331 155 71.286
^^^ df = 155
Height3Group:
Error (from model) | 10189.770 154 66.167
^^^ df = 154
Γιατί «κοστίζει» βαθμούς ελευθερίας;
Κάθε παράμετρος που εκτιμούμε:
-
“Χρησιμοποιεί” ένα μέρος των δεδομένων
Για να εκτιμήσουμε το \(b_0\), χρειαζόμαστε δεδομένα
Για να εκτιμήσουμε το \(b_1\), χρειαζόμαστε περισσότερα δεδομένα
κλπ.
-
Μειώνει την “ελευθερία” των υπολοίπων
Με περισσότερες παραμέτρους, τα υπόλοιπα έχουν λιγότερη ελευθερία να διαφέρουν
Το μοντέλο είναι πιο “περιορισμένο”
-
Επηρεάζει την ακρίβεια της εκτίμησης
- Με λιγότερους df, οι εκτιμήσεις μας είναι λιγότερο ακριβείς
Γιατί οι άλλες είναι λάθος:
Α. “Επιπλέον σύνολο δεδομένων” - ΛΑΘΟΣ
Οι παράμετροι δεν χρειάζονται νέα δεδομένα
Χρησιμοποιούμε το ίδιο σύνολο δεδομένων για όλες τις παραμέτρους
Π.χ., Τα μοντέλα των Height2Group και Height3Group χρησιμοποιούν τα ίδια 157 άτομα
Γ. “Μια μεταβλητή” - ΛΑΘΟΣ
- Οι παράμετροι και οι μεταβλητές είναι διαφορετικά πράγματα
Παράμετροι: - Σταθερές τιμές που εκτιμούμε (\(b_0, b_1, b_2\))
- Οι ίδιες για όλα τα άτομα
Μεταβλητές: - Δεδομένα που διαφέρουν ανά άτομο (\(Y_i, X_{1i}, X_{2i}\))
- Έχουν δείκτη \(i\)
Π.χ., στο μοντέλο της Height3Group:
3 παράμετροι: \(b_0, b_1, b_2\)
3 μεταβλητές: \(Y_i\) (Thumb), \(X_{1i}\) (medium), \(X_{2i}\) (tall)
Αλλά οι παράμετροι κοστίζουν df, όχι μεταβλητές
Αναλυτική παρουσίαση:
Έχουμε 157 άτομα (n = 157)
Κενό μοντέλο: 1 παράμετρος
├─ Χρησιμοποιεί 1 df για το b₀
└─ Απομένουν: 157 - 1 = 156 df
Height2Group: 2 παράμετροι
├─ Χρησιμοποιεί 1 df για το b₀
├─ Χρησιμοποιεί 1 df για το b₁
└─ Απομένουν: 157 - 2 = 155 df
Height3Group: 3 παράμετροι
├─ Χρησιμοποιεί 1 df για το b₀
├─ Χρησιμοποιεί 1 df για το b₁
├─ Χρησιμοποιεί 1 df για το b₂
└─ Απομένουν: 157 - 3 = 154 df
Κάθε παράμετρος κοστίζει 1 df!
Συμπέρασμα:
Κάθε επιπλέον παράμετρος σε ένα μοντέλο κοστίζει έναν βαθμό ελευθερίας.
Για αυτό λέμε ότι η εκτίμηση επιπλέον παραμέτρων δεν είναι δωρεάν - έχει «κόστος» σε βαθμούς ελευθερίας!
Μέσα Αθροίσματα Τετραγώνων (MS)
Η στήλη με τίτλο MS
, γνωστή και ως διακύμανση, περιέχει τα μέσα αθροίσματα τετραγώνων.
Table (Type III SS)
Analysis of Variance : Thumb ~ Height2Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 830.880 1 830.880 11.656 0.0699 .0008
Error (from model) | 11049.331 155 71.286
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Κάθε τιμή MS
υπολογίζεται διαιρώντας το άθροισμα τετραγώνων (SS
) με τους αντίστοιχους βαθμούς ελευθερίας (df
) για κάθε γραμμή του πίνακα.
\[\begin{align} \text{MS}_{\text{Model}} &= \frac{\text{SS}_{\text{Model}}}{\text{df}_{\text{Model}}} \\ \text{MS}_{\text{Error}} &= \frac{\text{SS}_{\text{Error}}}{\text{df}_{\text{Error}}} \\ \text{MS}_{\text{Total}} &= \frac{\text{SS}_{\text{Total}}}{\text{df}_{\text{Total}}} \end{align}\]
Ξεκινώντας από την τελευταία γραμμή, το MS Total
δείχνει πόσο συνολικό σφάλμα υπάρχει στην εξαρτημένη μεταβλητή ανά βαθμό ελευθερίας, μετά την προσαρμογή του κενού μοντέλου. Αυτό, σε προηγούμενο κεφάλαιο, το ονομάσαμε διακύμανση της εξαρτημένης μεταβλητής. Το MS Error
δείχνει πόσο σφάλμα παραμένει ανεξήγητο ανά βαθμό ελευθερίας, μετά την προσαρμογή του μοντέλου της Height2Group
. Το MS Model
εκφράζει τη μείωση του σφάλματος που πέτυχε το μοντέλο ανά βαθμό ελευθερίας που χρησιμοποιήθηκε πέρα από το κενό μοντέλο.
Ποιο από τα παρακάτω μέσα αθροίσματα τετραγώνων (MS) εκφράζει το συνολικό σφάλμα που υπολείπεται από το κενό μοντέλο ανά βαθμό ελευθερίας;
Σωστή απάντηση: Γ - MS Total
Τι είναι το MS Total;
\[\text{MS}_{\text{Total}} = \frac{\text{SS}_{\text{Total}}}{\text{df}_{\text{Total}}}\]
Από τον πίνακα ANOVA:
\[\text{MS}_{\text{Total}} = \frac{11880.211}{156} = 76.155\]
Τι σημαίνει αυτό;
Το MS Total είναι το συνολικό σφάλμα από το κενό μοντέλο, διαιρεμένο με τους βαθμούς ελευθερίας που υπολείπονται στο κενό μοντέλο.
Αναλυτικά:
-
SS\(_{\text{Total}}\) = 11880.211
Η συνολική μεταβλητότητα του μήκους αντίχειρα
Το σφάλμα από το κενό μοντέλο (που προβλέπει μόνο το γενικό μέσο όρο)
\[\text{SS}_{\text{Total}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2\]
-
df\(_{\text{Total}}\) = 156
Οι βαθμοί ελευθερίας του κενού μοντέλου
\[\text{df}_{\text{Total}} = n - 1 = 157 - 1 = 156\]
Χάνουμε 1 df επειδή εκτιμούμε το γενικό μέσο όρο (\(\bar{Y}\) ή \(b_0\))
-
MS\(_{\text{Total}}\) = 76.155
Το μέσο σφάλμα ανά βαθμό ελευθερίας
Πόσο σφάλμα έχουμε “κατά μέσο όρο” όταν χρησιμοποιούμε μόνο το γενικό μέσο όρο
Γιατί οι άλλες είναι λάθος:
Α. “MS Model” - ΛΑΘΟΣ
\[\text{MS}_{\text{Model}} = \frac{\text{SS}_{\text{Model}}}{\text{df}_{\text{Model}}} = \frac{830.880}{1} = 830.880\]
Αυτό αντιπροσωπεύει τη μεταβλητότητα που εξηγείται από το μοντέλο
Όχι το σφάλμα από το κενό μοντέλο
df\(_{\text{Model}}\) = 1 (αριθμός ψευδομεταβλητών: \(X_1\) για tall)
Β. “MS Error” - ΛΑΘΟΣ
\[\text{MS}_{\text{Error}} = \frac{\text{SS}_{\text{Error}}}{\text{df}_{\text{Error}}} = \frac{11049.331}{155} = 71.286\]
Αυτό αντιπροσωπεύει το σφάλμα που υπολείπεται μετά την προσαρμογή του μοντέλου της Height2Group
Όχι το σφάλμα από το κενό μοντέλο
df\(_{\text{Error}}\) = 155 = 157 - 2 (χάσαμε 2 df για τις 2 παραμέτρους: \(b_0, b_1\))
Σύγκριση των τριών MS:
Μέτρο | Τύπος | Τιμή | Ερμηνεία |
---|---|---|---|
MS Total | \(\frac{SS_{Total}}{df_{Total}}\) | \(\frac{11880.2}{156} = 76.155\) | Μέσο σφάλμα από κενό μοντέλο |
MS Model | \(\frac{SS_{Model}}{df_{Model}}\) | \(\frac{830.9}{1} = 830.880\) | Μέση εξηγούμενη μεταβλητότητα |
MS Error | \(\frac{SS_{Error}}{df_{Error}}\) | \(\frac{11049.3}{155} = 71.286\) | Μέσο σφάλμα από Height2Group |
Παρατηρήσεις:
-
MS Total (76.155) > MS Error (71.286)
Το μοντέλο της Height2Group μείωσε το μέσο σφάλμα!
Από 76.155 → 71.286 mm²
MS Model (830.880) >> MS Error (71.286)
Οπτικοποίηση:
ΚΕΝΟ ΜΟΝΤΕΛΟ (προβλέπει μόνο το γενικό μέσο όρο):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SS_Total = 11880.2 mm²
df_Total = 156
MS_Total = 76.155 mm² ← Αυτό!
ΜΟΝΤΕΛΟ ΤΗΣ HEIGHT2GROUP:
┌─────────────────┬──────────────────────────┐
│ SS_Model │ SS_Error │
│ 830.9 │ 11049.3 │
│ df = 1 │ df = 155 │
│ MS = 830.880 │ MS = 71.286 │
└─────────────────┴──────────────────────────┘
Total = 11880.2, df = 156
Γιατί είναι σημαντικό το MS Total;
-
Βάση για σύγκριση:
Δείχνει πόσο σφάλμα έχουμε χωρίς μοντέλο
Συγκρίνουμε το MS Error με το MS Total για να δούμε τη βελτίωση
-
Υπολογισμός του PRE:
Μπορούμε να εκφράσουμε το PRE χρησιμοποιώντας το MS:
Η μείωση από 76.155 → 71.286 αντιπροσωπεύει τη βελτίωση
-
Κατανόηση της βελτίωσης:
MS Total = 76.155 mm² (ξεκινώντας)
MS Error = 71.286 mm² (μετά το μοντέλο)
Βελτίωση: \(76.155 - 71.286 = 4.869\) mm² ανά df
Συμπέρασμα:
Το MS Total αντιπροσωπεύει το συνολικό σφάλμα από το κενό μοντέλο ανά βαθμό ελευθερίας. Είναι το σημείο αναφοράς που δείχνει πόσο σφάλμα έχουμε όταν δεν χρησιμοποιούμε καμία ανεξάρτητη μεταβλητή - απλά προβλέπουμε το γενικό μέσο όρο για όλους.
Ποιο από τα μέσα αθροίσματα τετραγώνων (MS) εκφράζει το σφάλμα που υπολείπεται από το σύνθετο μοντέλο ανά βαθμό ελευθερίας;
Σωστή απάντηση: Β - MS Error
Τι είναι το MS Error
;
\[\text{MS}_{\text{Error}} = \frac{\text{SS}_{\text{Error}}}{\text{df}_{\text{Error}}}\]
Από τον πίνακα ANOVA:
\[\text{MS}_{\text{Error}} = \frac{11049.331}{155} = 71.286\]
Τι σημαίνει αυτό;
Το MS Error
είναι το σφάλμα που απομένει από το σύνθετο μοντέλο (της Height2Group
), διαιρεμένο με τους βαθμούς ελευθερίας που απομένουν μετά την εκτίμηση των παραμέτρων του μοντέλου.
Αναλυτικά:
-
SS\(_{\text{Error}}\) = 11049.331
Η μεταβλητότητα που δεν εξηγείται από το μοντέλο της
Height2Group
Το άθροισμα των τετραγώνων των υπολοίπων:
\[\text{SS}_{\text{Error}} = \sum_{i=1}^{n}(Y_i - \hat{Y}_i)^2\]
-
df\(_{\text{Error}}\) = 155
Οι βαθμοί ελευθερίας που απομένουν μετά την προσαρμογή του μοντέλου
\[\text{df}_{\text{Error}} = n - k = 157 - 2 = 155\]
Χάσαμε 2 df για τις 2 παραμέτρους: \(b_0, b_1\)
-
MS\(_{\text{Error}}\) = 71.286
Το μέσο σφάλμα ανά βαθμό ελευθερίας από το σύνθετο μοντέλο
Πόσο σφάλμα απομένει “κατά μέσο όρο” μετά την εξήγηση από το μοντέλο της
Height2Group
Γιατί λέγεται “σφάλμα από το σύνθετο μοντέλο”;
Το σύνθετο μοντέλο είναι:
\[\text{Thumb}_i = b_0 + b_1X_{1i} + e_i\]
όπου \(X_1\) = 1 αν το άτομο είναι tall
, 0 αν είναι short
.
Το σφάλμα από το σύνθετο μοντέλο είναι το \(e_i\) - η μεταβλητότητα που δεν μπόρεσε να εξηγήσει το μοντέλο.
Γιατί οι άλλες είναι λάθος:
Α. MS Model
- ΛΑΘΟΣ
\[\text{MS}_{\text{Model}} = \frac{\text{SS}_{\text{Model}}}{\text{df}_{\text{Model}}} = \frac{830.880}{1} = 830.880\]
Αυτό αντιπροσωπεύει τη μεταβλητότητα που ΕΞΗΓΕΙΤΑΙ από το μοντέλο
Όχι το σφάλμα που απομένει
Μετράει την επιτυχία του μοντέλου, όχι το σφάλμα του
Γ. MS Total
- ΛΑΘΟΣ
\[\text{MS}_{\text{Total}} = \frac{\text{SS}_{\text{Total}}}{\text{df}_{\text{Total}}} = \frac{11880.211}{156} = 76.155\]
Αυτό αντιπροσωπεύει το σφάλμα από το ΚΕΝΟ μοντέλο
Όχι από το σύνθετο μοντέλο (της
Height2Group
)Είναι το σημείο αναφοράς πριν προσθέσουμε ανεξάρτητες μεταβλητές
Σύγκριση των τριών MS:
Μέτρο | Τύπος | Τιμή | Τι αντιπροσωπεύει |
---|---|---|---|
MS Total | \(\frac{SS_{Total}}{df_{Total}}\) | \(\frac{11880.2}{156} = 76.155\) | Σφάλμα από κενό μοντέλο |
MS Error | \(\frac{SS_{Error}}{df_{Error}}\) | \(\frac{11049.3}{155} = 71.286\) | Σφάλμα από σύνθετο μοντέλο |
MS Model | \(\frac{SS_{Model}}{df_{Model}}\) | \(\frac{830.9}{1} = 830.880\) | Μεταβλητότητα που εξηγείται |
Πιο αναλυτικά:
ΔΙΑΔΙΚΑΣΙΑ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ:
Βήμα 1: ΚΕΝΟ ΜΟΝΤΕΛΟ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SS_Total = 11880.2 mm²
MS_Total = 76.155 mm²/df
(Όλο σφάλμα)
Βήμα 2: ΠΡΟΣΘΕΤΟΥΜΕ ΤΗΝ HEIGHT2GROUP
┌─────────────────┬──────────────────────────┐
│ ΕΞΗΓΕΙΤΑΙ │ ΑΠΟΜΕΝΕΙ (ΣΦΑΛΜΑ) │
│ SS_Model │ SS_Error ← Αυτό! │
│ 830.9 │ 11049.3 │
│ MS = 830.880 │ MS = 71.286 ← Αυτό! │
│ │ (Σφάλμα από σύνθετο) │
└─────────────────┴──────────────────────────┘
Το MS Error (71.286) είναι το μέσο σφάλμα
που ΑΠΟΜΕΝΕΙ μετά το μοντέλο της `Height2Group`
Η βελτίωση:
Πριν το μοντέλο: MS Total = 76.155 mm²/df
Μετά το μοντέλο: MS Error = 71.286 mm²/df
Μείωση: 76.155 - 71.286 = 4.869 mm²/df (6.4% μείωση)
Γιατί είναι σημαντικό το MS Error
;
-
Μετράει την ποιότητα του μοντέλου:
Μικρότερο
MS Error
= καλύτερο μοντέλοΛιγότερο σφάλμα ανά βαθμό ελευθερίας
-
Χρησιμοποιείται για στατιστικούς ελέγχους:
- Θα τους δούμε σε επόμενο κεφάλαιο
-
Εκτίμηση της διακύμανσης:
Το
MS Error
εκτιμά τη διακύμανση \(\sigma^2\) των υπολοίπωνΧρησιμοποιείται για να υπολογίσουμε τυπικά σφάλματα (θα τα δούμε σε επόμενο κεφάλαιο)
Σύγκριση μοντέλων:
Μοντέλο | MS Error |
Ερμηνεία |
---|---|---|
Κενό | 76.155 | Αρχικό σφάλμα ανά df |
Height2Group |
71.286 | Λιγότερο |
Παράδειγμα ερμηνείας:
Το MS Error
= 71.286 mm² σημαίνει:
«Μετά την προσαρμογή του μοντέλου, το μέσο τετραγωνικό σφάλμα που απομένει είναι 71.286 mm². Αυτό σημαίνει ότι οι προβλέψεις μας έχουν τυπική απόκλιση περίπου \(\sqrt{71.286} \approx 8.44\) mm.»
Συμπέρασμα:
Το MS Error αντιπροσωπεύει το σφάλμα που απομένει από το σύνθετο μοντέλο (Height2Group) ανά βαθμό ελευθερίας. Μετράει πόσο σφάλμα δεν μπόρεσε να εξηγήσει το μοντέλο - αυτό που παραμένει ακόμα και μετά την προσθήκη της ανεξάρτητης μεταβλητής.
Ποιο από αυτά τα μέσα αθροίσματα τετραγώνων (MS) εκφράζει το σφάλμα που μειώθηκε από το σύνθετο μοντέλο ανά βαθμό ελευθερίας που δαπανήθηκε;
Σωστή απάντηση: Α - MS Model
Τι είναι το MS Model
;
\[\text{MS}_{\text{Model}} = \frac{\text{SS}_{\text{Model}}}{\text{df}_{\text{Model}}}\]
Από τον πίνακα ANOVA:
\[\text{MS}_{\text{Model}} = \frac{830.880}{1} = 830.880\]
Τι σημαίνει αυτό;
Το MS Model
αντιπροσωπεύει το σφάλμα που μειώθηκε (ή τη μεταβλητότητα που εξηγήθηκε) από το σύνθετο μοντέλο, διαιρεμένο με τους βαθμούς ελευθερίας που δαπανήθηκαν για να επιτευχθεί αυτή η μείωση.
Αναλυτικά:
-
SS\(_{\text{Model}}\) = 830.880
Το σφάλμα που μειώθηκε από το κενό μοντέλο
Η μεταβλητότητα που εξηγήθηκε από το μοντέλο της
Height2Group
\[\text{SS}_{\text{Model}} = \text{SS}_{\text{Total}} - \text{SS}_{\text{Error}}\]
\[830.880 = 11880.211 - 11049.331\]
-
df\(_{\text{Model}}\) = 1
Οι βαθμοί ελευθερίας που δαπανήθηκαν για το μοντέλο
Αριθμός ψευδομεταβλητών (ανεξάρτητων μεταβλητών)
2 ομάδες → 1 ψευδομεταβλητή (\(X_1\) για tall)
Όχι 2, επειδή η ομάδα αναφοράς (
short
) δεν χρειάζεται ψευδομεταβλητή
-
MS\(_{\text{Model}}\) = 830.880
Το μέσο σφάλμα που μειώθηκε ανά df που δαπανήθηκε
Πόσο σφάλμα μειώσαμε “κατά μέσο όρο” για κάθε παράμετρο που προσθέσαμε
Γιατί οι άλλες είναι λάθος:
Β. MS Error
- ΛΑΘΟΣ
\[\text{MS}_{\text{Error}} = \frac{11049.331}{155} = 71.286\]
Αυτό αντιπροσωπεύει το σφάλμα που ΑΠΟΜΕΝΕΙ (όχι που μειώθηκε)
Είναι η ανεξήγητη μεταβλητότητα, όχι η εξηγούμενη
Γ. MS Total
- ΛΑΘΟΣ
\[\text{MS}_{\text{Total}} = \frac{11880.211}{156} = 76.155\]
Αυτό αντιπροσωπεύει το συνολικό σφάλμα από το κενό μοντέλο
Δεν μετράει τη μείωση που επιτεύχθηκε από το σύνθετο μοντέλο
Η έννοια του “σφάλματος που μειώθηκε ανά df που δαπανήθηκε”:
ΚΕΝΟ ΜΟΝΤΕΛΟ:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SS_Total = 11880.2
(Όλο σφάλμα)
ΠΡΟΣΘΕΤΟΥΜΕ ΤΗΝ HEIGHT2GROUP:
Δαπανούμε 1 df (για X₁)
┌─────────────────┬──────────────────────────┐
│ ΜΕΙΩΣΗ ΣΦΑΛΜΑΤΟΣ│ ΥΠΟΛΟΙΠΟΜΕΝΟ ΣΦΑΛΜΑ │
│ SS_Model │ SS_Error │
│ 830.9 │ 11049.3 │
│ │ │
│ Δαπανήθηκε 1 df │ Απομένουν 155 df │
│ │ │
│ MS = 830.9/1 │ MS = 11049.3/155 │
│ = 830.880 ←──┼─ Αυτό! │
│ │ = 71.286 │
└─────────────────┴──────────────────────────┘
MS Model = Πόσο σφάλμα μειώσαμε κατά μέσο όρο
ανά παράμετρο που προσθέσαμε
Ερμηνεία:
Το MS Model
= 830.880 mm² σημαίνει:
«Για τον έναν βαθμό ελευθερίας που δαπανήσαμε (την παράμετρο που προσθέσαμε), μειώσαμε το σφάλμα κατά 830.880 mm².»
Δαπανήσαμε 1 df (για \(b_1\))
Μειώσαμε συνολικά 830.9 mm² σφάλμα
Κατά μέσο όρο: 830.9 mm² ανά df
Σύγκριση των τριών MS:
Μέτρο | Τύπος | Τιμή | Τι μετράει |
---|---|---|---|
MS Total |
\(\frac{SS_{Total}}{df_{Total}}\) | \(\frac{11880.2}{156} = 76.155\) | Συνολικό σφάλμα (ανά df) πριν το μοντέλο |
MS Model |
\(\frac{SS_{Model}}{df_{Model}}\) | \(\frac{830.9}{1} = 830.880\) | Σφάλμα που μειώθηκε (ανά δαπανηθέν df) |
MS Error |
\(\frac{SS_{Error}}{df_{Error}}\) | \(\frac{11049.3}{155} = 71.286\) | Σφάλμα που απομένει (ανά df που απομένει) |
Γιατί είναι σημαντικό το MS Model
;
-
Μετράει την αποδοτικότητα του μοντέλου:
Μεγάλο
MS Model
= πολύ σφάλμα μειώθηκε ανά παράμετροΔείχνει ότι η παράμετρος “άξιζε” την επιπλέον πολυπλοκότητα
-
Αξιολόγηση κόστους-οφέλους:
Κόστος: 1 df δαπανήθηκε
Όφελος: 830.9 mm² μείωση ανά df
Αξίζει; Ναι! Το
MS Model
>>MS Error
Οπτικοποίηση της έννοιας:
"Πόσο σφάλμα μειώνουμε ανά παράμετρο;"
Κάθε παράμετρος (df) "αγοράζει" μείωση σφάλματος:
Παράμετρος 1 (b₁): ┌────────────┐
│ 830.9 mm² │
│ μείωση │
└────────────┘
Σύνολο: 1 df × 830.9 = 830.9 mm² (`SS_Model`)
Μέσος όρος: 830.9 mm²/df (`MS_Model`)
Συμπέρασμα:
Το MS Model
αντιπροσωπεύει το σφάλμα που μειώθηκε από το σύνθετο μοντέλο ανά βαθμό ελευθερίας που δαπανήθηκε. Είναι μέτρο της αποδοτικότητας του μοντέλου - πόσο σφάλμα εξηγούμε κατά μέσο όρο για κάθε παράμετρο που προσθέτουμε. Μεγάλο MS Model
σημαίνει ότι η παράμετρος “άξιζε” την πολυπλοκότητα που πρόσθεσε.
Το πηλίκο F
Τώρα ας περάσουμε στο πηλίκο F. Στον πίνακά μας εμφανίζονται δύο διαφορετικές εκτιμήσεις διακύμανσης μετά την προσαρμογή του μοντέλου της Height2Group
: το MS Model
και το MS Error
.
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 830.880 1 830.880 11.656 0.0699 .0008
Error (from model) | 11049.331 155 71.286
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
Το MS Model
εκφράζει τη διακύμανση των προβλέψεων που παράγει το μοντέλο της Height2Group
, ενώ το MS Error
εκφράζει τη διακύμανση των υπολοίπων, δηλαδή του σφάλματος που απομένει αφού αφαιρέσουμε το μοντέλο.
Το πηλίκο F υπολογίζεται ως ο λόγος αυτών των δύο ποσοτήτων:
\[F = \frac{\text{MS}_{\text{Model}}}{\text{MS}_{\text{Error}}} = \frac{\text{SS}_{\text{Model}}/\text{df}_{\text{Model}}}{\text{SS}_{\text{Error}}/\text{df}_{\text{Error}}}\]
Αυτό το πηλίκο αποτελεί έναν εξαιρετικά χρήσιμο στατιστικό δείκτη. Αν η μεταβλητή Height2Group
έχει μικρή ή καθόλου επίδραση στο μήκος του αντίχειρα, τότε η διακύμανση των προβλέψεων του μοντέλου θα είναι περίπου ίση με τη διακύμανση των υπολοίπων, με αποτέλεσμα το πηλίκο F να είναι κοντά στο 1. Αντίθετα, όσο μεγαλύτερη είναι η διακύμανση των προβλέψεων σε σχέση με τη διακύμανση των υπολοίπων, τόσο μεγαλύτερο είναι το πηλίκο F και τόσο καλύτερη θεωρείται η προσαρμογή του μοντέλου.
Ένας άλλος τρόπος να το σκεφτούμε είναι ότι το F εκφράζει τη διακύμανση μεταξύ των ομάδων (καθώς οι μέσοι όροι των ομάδων αντιστοιχούν στις προβλέψεις του μοντέλου) προς τη διακύμανση εντός των ομάδων (δηλαδή τη διασπορά των παρατηρήσεων γύρω από τους μέσους όρους). Όταν η διακύμανση μεταξύ των ομάδων είναι μεγαλύτερη από τη διακύμανση εντός των ομάδων, τότε το πηλίκο F υπερβαίνει τη μονάδα, υποδεικνύοντας ότι το μοντέλο εξηγεί ουσιαστικό μέρος της συνολικής μεταβλητότητας.
Το πηλίκο F για το μοντέλο της Height2Group
είναι 11.66. Ποια είναι η σωστή ερμηνεία;
Σωστή απάντηση: Γ - Η διακύμανση που εξηγείται είναι 11.66 φορές μεγαλύτερη από τη διακύμανση που παραμένει ανεξήγητη
Τι είναι το πηλίκο F;
Το πηλίκο F είναι ο λόγος δύο διακυμάνσεων:
\[F = \frac{\text{MS}_{\text{Model}}}{\text{MS}_{\text{Error}}}\]
Από τον πίνακα ANOVA:
\[F = \frac{830.880}{71.286} = 11.656 \approx 11.66\]
Τι δείχνει το F;
Το F συγκρίνει:
Αριθμητής (MS Model): Πόσο καλά το μοντέλο εξηγεί τη μεταβλητότητα (ανά βαθμό ελευθερίας)
Παρονομαστής (MS Error): Πόση μεταβλητότητα παραμένει ανεξήγητη (ανά βαθμό ελευθερίας)
Με απλά λόγια:
\[F = \frac{\text{Πόσο καλά δουλεύει το μοντέλο}}{\text{Πόσο σφάλμα απομένει}}\]
Ερμηνεία του F = 11.66:
«Η μεταβλητότητα που εξηγείται από την
Height2Group
(ανά βαθμό ελευθερίας) είναι 11.66 φορές μεγαλύτερη από τη μεταβλητότητα που παραμένει ανεξήγητη (ανά βαθμό ελευθερίας).»
«Η μεταβλητότητα που εξηγείται από την Height2Group είναι 11.66 φορές μεγαλύτερη από τη μεταβλητότητα που οφείλεται σε τυχαίο θόρυβο.»
Γιατί οι άλλες είναι λάθος:
Α. “11 άτομα προβλέπονται καλύτερα” - ΛΑΘΟΣ
Το F δεν μετράει αριθμό ατόμων
Είναι ένας λόγος διακυμάνσεων (χωρίς μονάδες μέτρησης)
Το μοντέλο δίνει προβλέψεις για όλα τα άτομα, όχι μόνο για 11
Β. “Μέγεθος επίδρασης 11.66 τυπικές αποκλίσεις” - ΛΑΘΟΣ
Το F δεν είναι μέγεθος επίδρασης σε τυπικές αποκλίσεις
Το F είναι χωρίς μονάδες
Για το μέγεθος επίδρασης μπορούμε να χρησιμοποιήσουμε το d του Cohen (βλ. επόμενη ενότητα)**
Δ. Το “SS Model είναι 11.66 φορές μεγαλύτερο από το SS Error” - ΛΑΘΟΣ
Ας το ελέγξουμε:
\[\frac{\text{SS}_{\text{Model}}}{\text{SS}_{\text{Error}}} = \frac{830.880}{11049.331} = 0.0752\]
Το SS Model είναι 0.075 φορές (όχι 11.66 φορές) το SS Error
Το SS Model είναι στην πραγματικότητα πολύ μικρότερο από το SS Error
Το F χρησιμοποιεί MS, όχι SS!
Η διαφορά μεταξύ SS και MS:
Άθροισμα Τετραγώνων (SS) | Μέσο Τετραγωνικό Σφάλμα (MS) | |
---|---|---|
Τύπος | Άθροισμα | Μέσος όρος (ανά df) |
Model | 830.880 | 830.880 / 1 = 830.880 |
Error | 11049.331 | 11049.331 / 155 = 71.286 |
Πηλίκο | 0.075 | 11.66 |
Γιατί η Γ είναι σωστή;
Το MS μετράει διακύμανση:
\[\text{MS} = \frac{\text{SS}}{\text{df}} = \text{μέση μεταβλητότητα ανά βαθμό ελευθερίας}\]
Ο υπολογισμός:
MS_Model = 830.880 / 1 = 830.880
MS_Error = 11049.331 / 155 = 71.286
F = MS_Model / MS_Error
= 830.880 / 71.286
= 11.656
# Ερμηνεία:
# Η εξηγούμενη μεταβλητότητα (ανά df) είναι
# 11.66 φορές η ανεξήγητη μεταβλητότητα (ανά df)
Οπτικοποίηση:
Μεταβλητότητα (ανά df):
ΕΞΗΓΟΥΜΕΝΗ (MS Model = 830.880):
████████████████████████████████████████████████
████████████████████████████████████████████████
████████████████████████████████████████████████ (× 11.66)
ΑΝΕΞΗΓΗΤΗ (MS Error = 71.286):
████
F = 11.66 σημαίνει:
Η εξηγούμενη μεταβλητότητα είναι 11.66× μεγαλύτερη!
Τι σημαίνει αυτό στην πράξη;
-
Το μοντέλο είναι αποδοτικό:
- Κάθε βαθμός ελευθερίας που δαπανήσαμε (εδώ 1 για το \(b_1\)) εξηγεί 11.66 φορές περισσότερη μεταβλητότητα από όση θα περιμέναμε από τυχαία διακύμανση.
-
Σύγκριση με τυχαίο θόρυβο:
Αν η Height2Group δεν είχε καμία πραγματική επίδραση, θα περιμέναμε F ≈ 1
F = 11.66 >> 1, άρα η επίδραση είναι πολύ μεγαλύτερη από τυχαίες διακυμάνσεις.
Όπως θα δούμε σε επόμενο κεφάλαιο, είναι εξαιρετικά απίθανο (p = .0008) να δούμε τόσο μεγάλο F αν η ομάδα ύψους δεν επηρέαζε πραγματικά το μήκος αντίχειρα
Πλήρης ερμηνεία του F = 11.66:
«Το μοντέλο της Height2Group εξηγεί 11.66 φορές περισσότερη μεταβλητότητα στο μήκος αντίχειρα (ανά βαθμό ελευθερίας) σε σχέση με τη μεταβλητότητα που παραμένει ανεξήγητη. Αυτό σημαίνει ότι η γνώση της ομάδας ύψους (short vs tall) συμβάλει ουσιαστικά στην πρόβλεψη του μήκους αντίχειρα, πέρα από τον τυχαίο θόρυβο.»
Σύνδεση με άλλα μέτρα:
PRE = 0.0699 (7%): Το μοντέλο εξηγεί 7% της συνολικής μεταβλητότητας
F = 11.66: Η μεταβλητότητα που εξηγείται (ανά df) είναι 11.66× την ανεξήγητη (ανά df)
Όλα τα μέτρα μας δείχνουν το ίδιο πράγμα από διαφορετική οπτική: Η Height2Group έχει σημαντική επίδραση!
Συμπέρασμα:
Ένα πηλίκο F = 11.66 σημαίνει ότι η μεταβλητότητα που εξηγείται από το μοντέλο (ανά βαθμό ελευθερίας) είναι 11.66 φορές μεγαλύτερη από τη μεταβλητότητα που απομένει ανεξήγητη (ανά βαθμό ελευθερίας). Αυτό είναι η ουσία του πηλίκου F: συγκρίνει τη μέση εξηγούμενη με τη μέση ανεξήγητη μεταβλητότητα.
Όπως η διακύμανση μας βοηθά να προσαρμόσουμε το άθροισμα τετραγώνων (SS) ανάλογα με τους διαθέσιμους βαθμούς ελευθερίας, έτσι και το πηλίκο F λαμβάνει υπόψη του πόσους βαθμούς ελευθερίας «δαπανήσαμε» για να κάνουμε το μοντέλο πιο σύνθετο. Το F μας δείχνει αν αυτή η δαπάνη άξιζε τον κόπο — αν οι παράμετροι που προσθέσαμε εξηγούν πραγματικά κάτι σημαντικό, ή αν απλώς «ταιριάξαμε» το μοντέλο στον τυχαίο θόρυβο των δεδομένων.
Αν πάρουμε ένα άλλο δείγμα 157 φοιτητών και τους ζητήσουμε μετρήσεις αντίχειρα και ύψους, θα πάρουμε την ίδια τιμή F;
Σωστή απάντηση: Β - Όχι, αυτό είναι απίθανο
Γιατί δεν θα πάρουμε το ίδιο F;
Το πηλίκο F υπολογίζεται από δεδομένα δείγματος, οπότε εξαρτάται από την τυχαία δειγματοληπτική μεταβλητότητα (sampling variability).
Τι είναι η δειγματοληπτική μεταβλητότητα;
Κάθε φορά που παίρνουμε ένα νέο δείγμα από τον πληθυσμό:
Θα έχουμε διαφορετικά άτομα
Με διαφορετικές τιμές μήκους αντίχειρα και ύψους
Άρα διαφορετικά SS, MS, και F
Γιατί συμβαίνει αυτό;
-
Τυχαία δειγματοληψία:
Κάθε δείγμα είναι μια τυχαία επιλογή από τον πληθυσμό
Διαφορετικά δείγματα → διαφορετικοί μέσοι όροι, μεταβλητότητα
-
Μεταβλητότητα στις εκτιμήσεις:
Οι παράμετροι \(b_0, b_1\) αναμένεται να διαφέρουν
Τα υπόλοιπα θα είναι διαφορετικά
Άρα διαφορετικά SS, MS, F
-
Ατομικές διαφορές:
Κάθε δείγμα θα έχει διαφορετικά άτομα
Μερικά δείγματα μπορεί να έχουν πιο ακραίες τιμές
Άλλα μπορεί να έχουν πιο “συνηθισμένες” τιμές
Οπτικοποίηση:
ΠΛΗΘΥΣΜΟΣ ΦΟΙΤΗΤΩΝ
(Όλοι οι φοιτητές)
│
├─────┬─────┬─────┬─────┐
│ │ │ │ │
Δείγμα Δείγμα Δείγμα ... Δείγμα
1 2 3 ∞
┌────┐ ┌────┐ ┌────┐ ┌────┐
│F= │ │F= │ │F= │ ... │F= │
│11.7│ │10.8│ │12.6│ │ ; │
└────┘ └────┘ └────┘ └────┘
Κάθε δείγμα δίνει διαφορετικό F!
Τι ΘΑ είναι παρόμοιο;
Αν και το ακριβές F θα διαφέρει, αναμένουμε:
-
Παρόμοιο μέγεθος F:
Αν το πραγματικό F στον πληθυσμό είναι γύρω στο 11-12
Τα περισσότερα δείγματα αναμένεται να δώσουν παρόμοιο F
-
Παρόμοια κατεύθυνση επίδρασης:
Τα ψηλά άτομα θα έχουν μεγαλύτερους αντίχειρες
Το πρόσημο των \(b_1\) θα είναι θετικό
Αλλά το ΑΚΡΙΒΕΣ F = 11.656 είναι απίθανο να επαναληφθεί!
Γιατί η απάντηση “Ναι, σίγουρα” είναι λάθος:
Το “σίγουρα” υπονοεί:
100% βεβαιότητα ότι F = 11.656 ακριβώς
Αυτό είναι σχεδόν αδύνατο λόγω δειγματοληπτικής μεταβλητότητας
Ακόμα και αν το F του πληθυσμού είναι 11.656, τα δείγματα θα διαφέρουν
Συμπέρασμα:
Όχι, δεν θα πάρουμε το ίδιο F. Κάθε νέο δείγμα θα δώσει ελαφρώς διαφορετικές τιμές λόγω δειγματοληπτικής μεταβλητότητας. Ενώ αναμένουμε το F να είναι παρόμοιο και να δείχνει την ίδια γενική επίδραση, το ακριβές F = 11.656 είναι απίθανο να επαναληφθεί. Αυτή είναι η φύση της στατιστικής: εκτιμούμε παραμέτρους από δείγματα, αλλά οι εκτιμήσεις μας έχουν αβεβαιότητα.
Τι είναι ο δείκτης F;
Σωστή απάντηση: Α - Ένα στατιστικό δείγματος
Τι σημαίνει αυτό;
Το πηλίκο F είναι ένα στατιστικό επειδή:
-
Υπολογίζεται από δεδομένα δείγματος
- Χρησιμοποιούμε τις 157 παρατηρήσεις από το δείγμα μας
-
Διαφέρει από δείγμα σε δείγμα
Κάθε δείγμα θα δώσει διαφορετικό F
Υπόκειται σε δειγματοληπτική μεταβλητότητα
-
Χρησιμοποιείται για να εκτιμήσουμε κάτι για τον πληθυσμό
Χρησιμοποιούμε το F για να βγάλουμε συμπεράσματα
Ελέγχουμε αν υπάρχει πραγματική επίδραση στον πληθυσμό
Ορισμοί:
Στατιστικό (Statistic):
Μια αριθμητική τιμή που υπολογίζεται από δείγμα
Χρησιμοποιείται για να εκτιμήσει μια παράμετρο πληθυσμού
Παραδείγματα: \(\bar{x}\), \(s\), \(b_0\), \(b_1\), \(F\), \(t\)
Ελληνικά γράμματα (στην εκτίμηση): \(b\), συνήθως λατινικά στον υπολογισμό
Παράμετρος πληθυσμού (Parameter):
Μια σταθερή τιμή που περιγράφει τον πληθυσμό
Συνήθως άγνωστη - προσπαθούμε να την εκτιμήσουμε
Παραδείγματα: \(\mu\), \(\sigma\), \(\beta_0\), \(\beta_1\)
Ελληνικά γράμματα: \(\beta\), \(\mu\), \(\sigma\)
Γιατί το F είναι στατιστικό μέτρο;
\[F = \frac{\text{MS}_{\text{Model}}}{\text{MS}_{\text{Error}}}\]
Υπολογίζεται από:
SS Model = από τα δεδομένα του δείγματος
SS Error = από τα δεδομένα του δείγματος
df Model, df Error = από το μέγεθος δείγματος
Όλα προέρχονται από το δείγμα!
Σύγκριση:
Στατιστικό (από δείγμα) | Παράμετρος (από πληθυσμό) | |
---|---|---|
Μέσος όρος | \(\bar{x}\) | \(\mu\) |
Τυπική απόκλιση | \(s\) | \(\sigma\) |
Παράμετρος μοντέλου | \(b_0, b_1\) | \(\beta_0, \beta_1\) |
πηλίκο F | \(F\) | — |
Αλλάζει; | Ναι (κάθε δείγμα) | Όχι (σταθερό) |
Γνωστό; | Ναι (υπολογίζεται) | Όχι (εκτιμάται) |
Σημείωση για το F:
Δεν υπάρχει “F του πληθυσμού” με την ίδια έννοια
Το F είναι ένα στατιστικό που υπολογίζεται από δείγματα
Χρησιμοποιείται για να ελέγξουμε υποθέσεις για παραμέτρους του πληθυσμού
Γιατί οι άλλες είναι λάθος:
Β. “Παράμετρος πληθυσμού” - ΛΑΘΟΣ
Το F δεν είναι παράμετρος του πληθυσμού
Υπολογίζεται από δείγμα, όχι από πληθυσμό
Διαφέρει από δείγμα σε δείγμα
Οι πραγματικές παράμετροι πληθυσμού στο μοντέλο μας:
\(\beta_0\): Ο πληθυσμιακός μέσος όρος της ομάδας αναφοράς
\(\beta_1\): Η πληθυσμιακή διαφορά μεταξύ ομάδων
\(\sigma^2\): Η πληθυσμιακή διακύμανση των σφαλμάτων
Αυτές είναι άγνωστες και τις εκτιμούμε με \(b_0, b_1, MS_{Error}\).
Γ. “Μοντέλο” - ΛΑΘΟΣ
Το F είναι όχι το ίδιο το μοντέλο
Είναι ένα στατιστικό που χρησιμοποιείται για να αξιολογήσει το μοντέλο
Το μοντέλο:
\[Y_i = b_0 + b_1X_i + e_i\]
Το πηλίκο F:
\[F = \frac{MS_{Model}}{MS_{Error}}\]
Το F προέρχεται από το μοντέλο, αλλά δεν είναι το μοντέλο.
Οπτικοποίηση:
ΠΛΗΘΥΣΜΟΣ (άγνωστος)
┌─────────────────────────┐
│ Παράμετροι: │
│ β₀, β₁, σ² │
│ (άγνωστα) │
└─────────────────────────┘
↓ δειγματοληψία
┌─────────────────────────┐
│ ΔΕΙΓΜΑ (n=157) │
├─────────────────────────┤
│ Υπολογίζουμε: │
│ • Στατιστικά: b₀, b₁ │
│ • Στατιστικά: MS, SS │
│ • Στατιστικό: F = 11.66 │
└─────────────────────────┘
↓ συμπερασματολογία
┌─────────────────────────┐
│ ΣΥΜΠΕΡΑΣΜΑ για πληθυσμό:│
│ "Πιθανώς υπάρχει │
│ πραγματική επίδραση" │
└─────────────────────────┘
Συμπέρασμα:
Το πηλίκο F είναι ένα δειγματικό στατιστικό μέτρο επειδή:
Υπολογίζεται από δεδομένα δείγματος
Διαφέρει από δείγμα σε δείγμα
Χρησιμοποιείται για να κάνουμε συμπεράσματα για παραμέτρους πληθυσμού
Υπόκειται σε δειγματοληπτική μεταβλητότητα
Γιατί θα ήταν απίθανο να πάρουμε το ίδιο πηλίκο F;
Σωστή απάντηση: Α - Το F είναι στατιστικό μέτρο που διαφέρει μεταξύ δειγμάτων
Γιατί αυτό είναι σωστό;
Το πηλίκο F είναι ένα δειγματικό στατιστικό μέτρο (sample statistic), όπως:
Ο μέσος όρος δείγματος (\(\bar{x}\))
Η τυπική απόκλιση δείγματος (\(s\))
Το PRE
Οι εκτιμήσεις παραμέτρων (\(b_0, b_1\))
Χαρακτηριστικά στατιστικών μέτρων:
Υπολογίζονται από δεδομένα δείγματος
Διαφέρουν από δείγμα σε δείγμα (δειγματοληπτική μεταβλητότητα)
Χρησιμοποιούνται για να εκτιμήσουν παραμέτρους πληθυσμού
Όλα τα στατιστικά διαφέρουν μεταξύ δειγμάτων!
Γιατί οι άλλες είναι λάθος:
Β. “Λάθη υπολογισμού” - ΛΑΘΟΣ
Η διαφορά δεν οφείλεται σε σφάλματα υπολογισμού
Οφείλεται σε φυσική δειγματοληπτική μεταβλητότητα
Ακόμα και με τέλειους υπολογισμούς, τα δείγματα θα διαφέρουν
Αναλογία:
Αν ρίξουμε ένα νόμισμα 100 φορές, μπορεί να πάρουμε 48 φορές γράμματα.
Αν το ρίξουμε άλλες 100 φορές, μπορεί να πάρουμε 52 φορές γράμματα.
Αυτό δεν είναι “λάθος” - είναι τυχαία μεταβλητότητα!
Γ. “Διαφορετικό F για κάθε άτομο” - ΛΑΘΟΣ
Το F δεν υπολογίζεται ξεχωριστά για κάθε άτομο
Υπάρχει μία τιμή F για ολόκληρο το μοντέλο
Το F συγκρίνει τη μεταβλητότητα σε επίπεδο δείγματος, όχι ατόμου
Δ. “Διαφορετικό F για κάθε ομάδα” - ΛΑΘΟΣ
Το F δεν υπολογίζεται ξεχωριστά για κάθε ομάδα
Υπάρχει μία τιμή F για το όλο το μοντέλο
Το F ελέγχει: “Έχουν όλες οι ομάδες μαζί επίδραση;”
Τι διαφέρει μεταξύ ομάδων:
Οι μέσοι όροι διαφέρουν: short = 57.82, tall = 62.42
Οι παράμετροι διαφέρουν: \(b_1\) για tall
Αλλά το F είναι ένα για το συνολικό μοντέλο
Ε. “Το df Total θα ήταν διαφορετικό” - ΛΑΘΟΣ
Το df Total εξαρτάται από το μέγεθος του δείγματος (n)
\[df_{Total} = n - 1\]
Αν πάρουμε νέο δείγμα με το ΙΔΙΟ n:
Τα df είναι τα ίδια, αλλά το F διαφέρει!
Γιατί το F διαφέρει αν τα df είναι ίδια;
Επειδή τα SS (αθροίσματα τετραγώνων) διαφέρουν.
Τα df παραμένουν ίδια, αλλά τα SS αλλάζουν → το F αλλάζει!
Συμπέρασμα:
Θα ήταν απίθανο να πάρουμε τον ίδιο λόγο F επειδή:
✓ Το F είναι δειγματικό στατιστικό μέτρο
✓ Όπως όλα τα στατιστικά μέτρα, διαφέρει μεταξύ δειγμάτων
✓ Κάθε δείγμα έχει διαφορετικά άτομα με διαφορετικές τιμές
✓ Αυτό οδηγεί σε διαφορετικά SS, MS, και τελικά F
Αυτή είναι η δειγματοληπτική μεταβλητότητα - ένα θεμελιώδες χαρακτηριστικό της στατιστικής συμπερασματολογίας. Χρησιμοποιούμε δείγματα για να εκτιμήσουμε τον πληθυσμό, αλλά οι εκτιμήσεις μας έχουν φυσική μεταβλητότητα.
Ποιος είναι ο τύπος υπολογισμού του F;
Σωστή απάντηση: Γ
\[F = \frac{MS_{Model}}{MS_{Error}}\]
Τι σημαίνει αυτός ο τύπος;
Το πηλίκο F συγκρίνει:
Αριθμητής (MS\(_{Model}\)): Η μεταβλητότητα που εξηγείται από το μοντέλο (ανά df)
Παρονομαστής (MS\(_{Error}\)): Η μεταβλητότητα που δεν εξηγείται (ανά df)
Γιατί αυτός ο τύπος έχει νόημα;
Το F μετράει:
«Πόσες φορές μεγαλύτερη είναι η εξηγούμενη μεταβλητότητα (ανά df) σε σχέση με την ανεξήγητη μεταβλητότητα (ανά df);»
Ερμηνεία:
F >> 1: Το μοντέλο εξηγεί πολύ περισσότερη μεταβλητότητα από την τυχαία μεταβλητότητα → καλό μοντέλο
F ≈ 1: Το μοντέλο εξηγεί περίπου όσο την τυχαία μεταβλητότητα → μη σημαντικό μοντέλο
F < 1: Το μοντέλο εξηγεί λιγότερο από την τυχαία μεταβλητότητα → κακό μοντέλο
Στο παράδειγμά μας: F = 11.656 >> 1, άρα πολύ καλό μοντέλο!
Γιατί οι άλλες είναι λάθος:
Α. \(F = \frac{MS_{Error}}{MS_{Total}}\) - ΛΑΘΟΣ
Ας το υπολογίσουμε:
\[F = \frac{71.286}{76.155} = 0.936\]
Προβλήματα:
Αυτό θα έδινε F < 1, που δεν έχει νόημα για καλό μοντέλο
Συγκρίνει το σφάλμα από το σύνθετο μοντέλο με το σφάλμα από το κενό μοντέλο - όχι τη σωστή σύγκριση
Δεν μετράει την εξηγούμενη μεταβλητότητα
Β. \(F = \frac{MS_{Total}}{MS_{Error}}\) - ΛΑΘΟΣ
Ας το υπολογίσουμε:
\[F = \frac{76.155}{71.286} = 1.068\]
Προβλήματα:
Αυτό θα έδινε F ≈ 1 πάντα, ανεξάρτητα από το πόσο καλό είναι το μοντέλο
Συγκρίνει τη συνολική με την ανεξήγητη μεταβλητότητα - λείπει η εξηγούμενη μεταβλητότητα
Δ. \(F = \frac{MS_{Model}}{MS_{Total}}\) - ΛΑΘΟΣ
Ας το υπολογίσουμε:
\[F = \frac{830.880}{76.155} = 10.911\]
Προβλήματα:
Αυτό συγκρίνει την εξηγούμενη μεταβλητότητα με τη συνολική
Δεν λαμβάνει υπόψη την ανεξήγητη μεταβλητότητα από το σύνθετο μοντέλο
Αυτό μοιάζει περισσότερο με το PRE (αλλά όχι ακριβώς):
\[PRE = \frac{SS_{Model}}{SS_{Total}} = \frac{830.880}{11880.211} = 0.0699\]
Σύγκριση όλων των τύπων:
Τύπος | Υπολογισμός | Αποτέλεσμα | Σωστό; |
---|---|---|---|
Α: \(\frac{MS_{Error}}{MS_{Total}}\) | \(\frac{71.286}{76.155}\) | 0.936 | ✗ |
Β: \(\frac{MS_{Total}}{MS_{Error}}\) | \(\frac{76.155}{71.286}\) | 1.068 | ✗ |
Γ: \(\frac{MS_{Model}}{MS_{Error}}\) | \(\frac{830.880}{71.286}\) | 11.656 | ✓ |
Δ: \(\frac{MS_{Model}}{MS_{Total}}\) | \(\frac{830.880}{76.155}\) | 10.911 | ✗ |
Μόνο η Γ δίνει το σωστό F = 11.656 από τον πίνακα ANOVA!
Η λογική πίσω από τον τύπο:
1. Τι θέλουμε να μετρήσουμε;
Θέλουμε να ελέγξουμε αν το μοντέλο εξηγεί σημαντικά περισσότερη μεταβλητότητα από την τυχαία μεταβλητότητα.
2. Πώς το κάνουμε;
Συγκρίνουμε:
Αριθμητής: Πόση μεταβλητότητα εξηγεί το μοντέλο (MS\(_{Model}\))
Παρονομαστής: Πόση μεταβλητότητα δεν εξηγείται (MS\(_{Error}\))
3. Τι δείχνει το αποτέλεσμα;
F = 11.66 σημαίνει: «Για κάθε μονάδα ανεξήγητης μεταβλητότητας, έχουμε 11.66 μονάδες εξηγούμενης μεταβλητότητας»
Αυτό είναι πολύ μεγαλύτερο από το αναμενόμενο από τύχη (που θα ήταν F ≈ 1)
Συμπέρασμα:
Ο σωστός τύπος είναι:
\[F = \frac{MS_{Model}}{MS_{Error}}\]
Αυτός ο τύπος συγκρίνει την εξηγούμενη μεταβλητότητα (ανά df που δαπανήθηκε) με την ανεξήγητη μεταβλητότητα (ανά df που απομένει), δίνοντάς μας ένα μέτρο του πόσο καλά το μοντέλο λειτουργεί σε σχέση με την τυχαία μεταβλητότητα.
Ένας Εναλλακτικός Τρόπος Έκφρασης του Πηλίκου F
Υπάρχει ένας διαφορετικός τρόπος να σκεφτούμε το πηλίκο F, που καθιστά πιο σαφή τη σχέση του με το PRE. Εκφράζεται μέσω της ακόλουθης εναλλακτικής εξίσωσης:
\[F = \frac{\text{PRE} / \text{df}_{\text{Model}}}{(1 - \text{PRE}) / \text{df}_{\text{Error}}}\]
Η εξίσωση αυτή δίνει ακριβώς το ίδιο αποτέλεσμα με εκείνη που παρουσιάστηκε στην προηγούμενη ενότητα, αλλά διευκολύνει την κατανόηση της σχέσης μεταξύ PRE και F.
Ο αριθμητής της εξίσωσης δείχνει πόσο PRE επιτυγχάνεται στο μοντέλο ανά βαθμό ελευθερίας που έχει χρησιμοποιηθεί (δηλαδή, ανά εκτιμημένη παράμετρο πέρα από το κενό μοντέλο). Στην περίπτωση του μοντέλου της Height2Group
, αυτό αντιστοιχεί στο PRE διαιρεμένο με 1, καθώς το μοντέλο χρησιμοποίησε μόνο έναν επιπλέον βαθμό ελευθερίας (\(b_1\)) σε σχέση με το κενό μοντέλο.
Ο παρονομαστής δείχνει πόσο σφάλμα απομένει να εξηγηθεί (δηλαδή, το υπόλοιπο ανεξήγητο σφάλμα, 1 − PRE) ανά διαθέσιμο βαθμό ελευθερίας αν χρησιμοποιούσαμε όλους τους υπόλοιπους βαθμούς ελευθερίας (df Error
) στο μοντέλο. Με άλλα λόγια, δείχνει ποιο θα ήταν, κατά μέσο όρο, το PRE αν επιλέγαμε τυχαία μια παράμετρο προς εκτίμηση αντί για εκείνη που συμπεριλάβαμε στο μοντέλο μας.
Έτσι, το πηλίκο F συγκρίνει την ποσότητα του PRE που επιτεύχθηκε από τις συγκεκριμένες παραμέτρους του μοντέλου (ανά βαθμό ελευθερίας) με τη μέση ποσότητα του ανεξήγητου σφάλματος που θα μπορούσε να μειωθεί αν προσθέταμε όλες τις υπόλοιπες πιθανές παραμέτρους.
Με άλλα λόγια, το πηλίκο F απαντά στο εξής ερώτημα: Πόσες φορές μεγαλύτερο είναι το PRE που επιτεύχθηκε από το προσαρμοσμένο μοντέλο μας (ανά βαθμό ελευθερίας που ξοδεύτηκε), σε σύγκριση με το PRE που θα μπορούσε να επιτευχθεί (επίσης ανά βαθμό ελευθερίας) αν δαπανούσαμε όλους τους υπόλοιπους διαθέσιμους βαθμούς ελευθερίας;
Δίνονται οι τύποι:
\[F = \frac{MS_{Model}}{MS_{Error}}\]
\[F = \frac{PRE/df_{model}}{(1-PRE)/df_{error}}\]
Ποια από τις παρακάτω δηλώσεις είναι ΨΕΥΔΗΣ;
Σωστή απάντηση: Α - ΨΕΥΔΗΣ δήλωση
Γιατί η Α είναι ψευδής;
Οι δύο τύποι δίνουν την ΙΔΙΑ τιμή για το F - δεν δίνουν διαφορετικές τιμές!
Είναι μαθηματικά ισοδύναμοι - απλά εκφράζουν το F με διαφορετικό τρόπο.
Απόδειξη ότι δίνουν την ίδια τιμή:
Από το παράδειγμά μας (Height2Group):
Τύπος 1: Χρησιμοποιώντας MS
\[F = \frac{MS_{Model}}{MS_{Error}} = \frac{830.880}{71.286} = 11.656\]
Τύπος 2: Χρησιμοποιώντας το PRE
Γνωρίζουμε: - PRE = 0.0699
df\(_{model}\) = 1
df\(_{error}\) = 155
\[F = \frac{PRE/df_{model}}{(1-PRE)/df_{error}} = \frac{0.0699/1}{(1-0.0699)/155}\]
\[F = \frac{0.0699}{0.9301/155} = \frac{0.0699}{0.006001} = 11.648\]
(Η μικρή διαφορά 11.648 vs 11.656 οφείλεται σε στρογγυλοποίηση του PRE)
Και οι δύο τύποι δίνουν F ≈ 11.66!
Γιατί οι άλλες είναι αληθείς;
Β. “Διαφορετικοί τρόποι σκέψης” - ΑΛΗΘΗΣ ✓
Ναι! Οι δύο τύποι εκφράζουν διαφορετικές οπτικές:
Τύπος 1: \(F = \frac{MS_{Model}}{MS_{Error}}\)
Σκέψη: «Πόσες φορές μεγαλύτερη είναι η εξηγούμενη μεταβλητότητα από την ανεξήγητη μεταβλητότητά;»
Οπτική της Διακύμανσης (variance)
Τύπος 2: \(F = \frac{PRE/df_{model}}{(1-PRE)/df_{error}}\)
Σκέψη: «Πόσο αποδοτική είναι η μείωση σφάλματος (PRE) ανά df που δαπανήθηκε;»
Οπτική της Αναλογικής μείωσης σφάλματος (proportional error reduction)
Γ. “Μία σχέση με διακύμανση, μία με PRE” - ΑΛΗΘΗΣ ✓
Ναι! Ακριβώς αυτό:
Δ. “Λαμβάνουν υπόψη τους df” - ΑΛΗΘΗΣ ✓
Ναι! Και οι δύο τύποι ενσωματώνουν τους βαθμούς ελευθερίας:
Και οι δύο τύποι λαμβάνουν υπόψη το κόστος της πολυπλοκότητας (df που δαπανήθηκαν)!
Συμπέρασμα:
Η δήλωση Α είναι ΨΕΥΔΗΣ επειδή:
Χρειαζόμαστε και τους δύο επειδή δίνουν διαφορετικές τιμές» - ΛΑΘΟΣ!
✓ Η αλήθεια: Οι δύο τύποι είναι μαθηματικά ισοδύναμοι και δίνουν την ίδια τιμή για το F. Τους χρειαζόμαστε επειδή:
Εκφράζουν διαφορετικούς τρόπους σκέψης (διασπορές vs αναλογική μείωση)
Δείχνουν διαφορετικές σχέσεις (με MS vs με PRE)
Και οι δύο λαμβάνουν υπόψη τους βαθμούς ελευθερίας
Εξετάστε την εξίσωση:
\[F = \frac{PRE / df_{model}}{(1 - PRE) / df_{error}}\]
Αν ο λόγος F είναι ίσος με 1, τι σημαίνει αυτό;
Σωστή απάντηση: Γ – Το PRE δεν είναι ιδιαίτερο
Όταν το F είναι ίσο με 1, αυτό σημαίνει ότι:
\[\frac{PRE/df_{model}}{(1-PRE)/df_{error}} = 1\]
Άρα:
\[PRE/df_{model} = (1 - PRE)/df_{error}\]
Ερμηνεία:
Η μείωση του σφάλματος ανά βαθμό ελευθερίας που χρησιμοποιήθηκε είναι ίση με τη μη-μείωση του σφάλματος ανά βαθμό ελευθερίας που απομένει.
Με άλλα λόγια, η επιπλέον παράμετρος που προσθέσαμε εξηγεί μια τυπική (μέση) ποσότητα μεταβλητότητας — δηλαδή, περίπου όση θα εξηγούσε μια τυχαία παράμετρος.
Πρακτικά:
- Η παράμετρος δεν είναι χρήσιμη· δεν προσθέτει πραγματική εξηγηματική ισχύ.
- Το μοντέλο μας δεν είναι καλύτερο από το κενό μοντέλο.
Παράδειγμα:
Αν df\(_{model}\) = 1 και df\(_{error}\) = 155, τότε:
\[1 = \frac{PRE / 1}{(1 - PRE) / 155}\]
\[PRE = \frac{1}{156} = 0.0064 \approx 0.64\%\]
Άρα η παράμετρος εξηγεί μόνο περίπου 0.64% της μεταβλητότητας — δηλαδή, όσο θα εξηγούσε τυχαία μια οποιαδήποτε παράμετρος.
Συνοψίζοντας:
Όταν F = 1: - Το PRE είναι μέσο/τυπικό. - Η παράμετρος δεν έχει πραγματική επίδραση. - Δεν αξίζει τους βαθμούς ελευθερίας που χρησιμοποιήθηκαν.
9.5 Μέτρα Μεγέθους Επίδρασης
Επανεξέταση της Μελέτης του Φιλοδωρήματος
Πίσω στο Κεφάλαιο 5 εξετάσαμε μια πειραματική μελέτη που διερεύνησε κατά πόσον η σχεδίαση χαμογελαστών προσώπων στην πίσω πλευρά του λογαριασμού θα οδηγούσε τους πελάτες εστιατορίου να αφήνουν υψηλότερα φιλοδωρήματα (Rind & Bordia, 1996).
Η μελέτη ήταν ένα τυχαιοποιημένο πείραμα που πραγματοποιήθηκε σε πραγματικές συνθήκες. Μια σερβιτόρα σε συγκεκριμένο εστιατόριο ζητήθηκε είτε να σχεδιάσει ένα χαμογελαστό προσωπάκι στο χαρτάκι του λογαριασμού είτε όχι για κάθε τραπέζι που εξυπηρετούσε, ακολουθώντας μια προκαθορισμένη τυχαία διαδικασία. Η εξαρτημένη μεταβλητή ήταν το ποσοστό φιλοδωρήματος από κάθε τραπέζι (Tip
). Συνολικά, 44 τραπέζια κατανεμήθηκαν τυχαία σε δύο ομάδες (\(n=22\) τραπέζια ανά συνθήκη): μία που έλαβε λογαριασμό με χαμογελαστό προσωπάκι και μία που έλαβε λογαριασμό χωρίς αυτό (μεταβλητή Condition
).
Οι κατανομές του ποσοστού φιλοδωρήματος στις δύο πειραματικές συνθήκες παρουσιάζονται στο παρακάτω διάγραμμα. Έχουμε επίσης προβάλει σε αυτό τις εκτιμήσεις παραμέτρων του μοντέλου με την gf_model()
.
Condition_model <- lm(Tip ~ Condition, data = TipExperiment)
gf_jitter(Tip ~ Condition, data = TipExperiment, width = .1) %>%
gf_model(Condition_model)

Μια ερώτηση που μπορούμε να θέσουμε για ένα στατιστικό μοντέλο είναι: Πόσο μεγάλη είναι η επίδραση; Όταν μοντελοποιούμε την επίδραση μιας μεταβλητής σε μια άλλη, όπως της συνθήκης (Condition
) στο ποσοστό φιλοδωρήματος (Tip
), είναι φυσικό κάποιος να θέσει αυτή την ερώτηση.
Αυτό μας οδηγεί σε μια συζήτηση για το μέγεθος της επίδρασης (effect size) και πώς να το μετρήσουμε. Δεν έχουμε χρησιμοποιήσει τον όρο μέγεθος επίδρασης μέχρι τώρα, αλλά στην πραγματικότητα έχουμε ήδη παρουσιάσει δύο μέτρα μεγέθους επίδρασης. Εδώ θα επανεξετάσουμε αυτά τα δύο μέτρα και θα προσθέσουμε ένα τρίτο.
Διαφορά Μέσων Όρων (ή \(b_1\))
Το πιο απλό μέτρο μεγέθους επίδρασης στο πλαίσιο του μοντέλου δύο ομάδων είναι η διαφορά των μέσων όρων μεταξύ των δύο ομάδων στην εξαρτημένη μεταβλητή.
Δίνονται οι εκτιμήσεις των παραμέτρων από το μοντέλο με ανεξάρτητη τη συνθήκη και εξαρτημένη το ποσοστό φιλοδωρήματος.
:
Calllm(formula = Tip ~ Condition, data = TipExperiment)
:
Coefficients
(Intercept) ConditionSmiley Face27.000 6.045
Ποια τιμή δείχνει τη διαφορά στο μέσο ποσοστό φιλοδωρήματος ανάμεσα στις δύο ομάδες;
Στο σύνολο δεδομένων TipExperiment
μπορούμε να δούμε ότι το μέγεθος της επίδρασης της συνθήκης (Condition
) είναι περίπου 6 ποσοστιαίες μονάδες: τα τραπέζια που έλαβαν χαμογελαστό προσωπάκι στο λογαριασμό άφησαν κατά μέσο όρο 6% μεγαλύτερο φιλοδώρημα σε σχέση με τα τραπέζια χωρίς χαμογελαστό προσωπάκι.
R: Η Συνάρτηση b1()
Οι παραπάνω εκτιμήσεις παραμέτρων προήλθαν από την εκτέλεση της lm(Tip ~ Condition, data = TipExperiment)
. Υπάρχει όμως ένας πιο άμεσος τρόπος να βρούμε το \(b_1\) (τη διαφορά των μέσων όρων μεταξύ των δύο ομάδων): η συνάρτηση b1()
από το πακέτο supernova
. Στο παρακάτω πλαίσιο, αντικαταστήστε την lm()
με την b1()
για να δείτε πώς λειτουργεί.
Παρατηρήστε ότι η b1()
επιστρέφει 6.045 — τη διαφορά στο μέσο ποσοστό φιλοδωρήματος μεταξύ της ομάδας με το χαμογελαστό προσωπάκι (smiley face) και της ομάδας ελέγχου (control). Αυτή η τιμή είναι η εκτίμηση παραμέτρου \(b_1\). Τώρα δοκιμάστε να αλλάξετε τη b1()
σε b0()
και εκτελέστε ξανά τον κώδικα. Αυτή η συνάρτηση επιστρέφει την εκτίμηση του \(b_0\), δηλαδή το μέσο ποσοστό φιλοδωρήματος της ομάδας ελέγχου.
PRE
Το PRE είναι ένα δεύτερο μέτρο μεγέθους επίδρασης. Όπως είδαμε παραπάνω, εκφράζει την αναλογική μείωση του σφάλματος που επιτυγχάνεται όταν προσθέτουμε μια ανεξάρτητη μεταβλητή στο κενό μοντέλο. Το PRE είναι ιδιαίτερα χρήσιμο ως μέτρο μεγέθους επίδρασης επειδή είναι σχετικό: δείχνει πόσο βελτιώνεται το μοντέλο (μείωση σφάλματος) με την προσθήκη της ανεξάρτητης μεταβλητής.
Όπως συμβαίνει με όλα τα στατιστικά μέτρα, το PRE ποικίλλει από δείγμα σε δείγμα και από μελέτη σε μελέτη. Το τι θεωρείται «μεγάλη» ή «σημαντική» επίδραση εξαρτάται επίσης από πεδίο της έρευνας. Αυτή η αίσθηση αναπτύσσεται με την εμπειρία στην ανάλυση δεδομένων και τη δημιουργία μοντέλων.
Στις κοινωνικές επιστήμες υπάρχουν ορισμένες γενικά αποδεκτές κατευθυντήριες γραμμές:
- PRE = .25: Μεγάλη επίδραση
- PRE = .09: Μέτρια επίδραση
- PRE = .01: Μικρή επίδραση
Με βάση αυτές τις συμβάσεις, τα αποτελέσματα για το Condition_model
(PRE = .07) δείχνουν μια μικρή έως μέτρια επίδραση του χαμογελαστού προσώπου στα φιλοδωρήματα. Αντίθετα, στο Height3Group_model
, η ομάδα του ύψους είχε μέτρια ως μεγάλη επίδραση στο μήκος αντίχειρα (PRE = .14).
Προσοχή όμως: αυτές οι συμβάσεις δεν είναι απόλυτοι κανόνες. Το αν ένα μέγεθος επίδρασης είναι σημαντικό εξαρτάται από το πλαίσιο και το σκοπό της μελέτης. Για παράδειγμα, αν ένας διαδικτυακός λιανοπωλητής διαπιστώσει μια μικρή επίδραση στις πωλήσεις από την αλλαγή του χρώματος του κουμπιού «Αγορά» στον ιστότοπό του (π.χ. PRE = 0.01), μπορεί να επιλέξει να την εφαρμόσει. Αν και η επίδραση είναι μικρή, η αλλαγή είναι δωρεάν και εύκολη στην εφαρμογή, και μπορεί να οδηγήσει σε ουσιαστική αύξηση των πωλήσεων.
R: Η Συνάρτηση pre()
Όπως η συνάρτηση b1()
, έτσι και η pre()
επιστρέφει απευθείας μια συγκεκριμένη τιμή από το μοντέλο — σε αυτή την περίπτωση, το PRE.
Στο παρακάτω πλαίσιο κώδικα, εκτελέστε τη συνάρτηση supernova()
στο Condition_model
. Εντοπίστε στον πίνακα ANOVA την τιμή του PRE.
Στη συνέχεια, αλλάξτε τη supernova()
σε pre()
για να λάβετε απευθείας την ίδια τιμή. Αργότερα, όταν μελετήσουμε τις δειγματοληπτικές κατανομές, θα γίνει σαφές πόσο χρήσιμες είναι αυτές οι εξειδικευμένες συναρτήσεις όπως οι b1()
και pre()
.
Ο δείκτης d του Cohen
Ένα τρίτο μέτρο μεγέθους επίδρασης, που εφαρμόζεται ειδικά σε μοντέλα δύο ομάδων (όπως το Condition_model), είναι το \(d\) του Cohen. Το \(d\) εκφράζει το μέγεθος μιας διαφοράς μεταξύ ομάδων σε μονάδες τυπικής απόκλισης.
Για παράδειγμα, αντί να πούμε ότι η ομάδα με το χαμογελαστό προσωπάκι δίνει 6% περισσότερο φιλοδώρημα από την ομάδα ελέγχου, θα μπορούσαμε να πούμε ότι τα ποσοστά φιλοδωρημάτων της ομάδας με το χαμογελαστό προσωπάκι είναι κατά μέσο όρο 0.55 τυπικές αποκλίσεις μεγαλύτερα από αυτά της ομάδας ελέγχου.
Το \(d\) του Cohen συνδέεται με την έννοια της τιμής z. Θυμηθείτε ότι οι τιμές z δείχνουν πόσο μακριά βρίσκεται μια παρατήρηση από το μέσο όρο μιας κατανομής, μετρημένη σε τυπικές αποκλίσεις. Και οι δύο δείκτες — τιμές z και \(d\) του Cohen — μας επιτρέπουν να αξιολογήσουμε το μέγεθος μιας διαφοράς ανεξάρτητα από τις αρχικές μονάδες μέτρησης.
\[d = \frac{\bar{Y_1}-{\bar{Y_2}}}{s}\]
Υπολογισμός του \(d\) του Cohen: Ποια Τυπική Απόκλιση να Χρησιμοποιήσουμε;
Αν προσπαθήσουμε να υπολογίσουμε το \(d\) του Cohen, αντιμετωπίζουμε το εξής πρόβλημα: Ποια τυπική απόκλιση πρέπει να χρησιμοποιήσουμε; Την τυπική απόκλιση της εξαρτημένης μεταβλητής για ολόκληρο το δείγμα, ή την τυπική απόκλιση εντός των δύο ομάδων; Αν οι μέσοι όροι των ομάδων απέχουν αρκετά μεταξύ τους, η συνολική τυπική απόκλιση μπορεί να είναι σημαντικά μεγαλύτερη από την τυπική απόκλιση εντός κάθε ομάδας.
Γενικά, χρησιμοποιούμε την τυπική απόκλιση εντός ομάδων όταν υπολογίζουμε το \(d\), επειδή αυτή είναι η καλύτερη εκτίμησή μας για τη μεταβλητότητα που δεν εξηγείται από το μοντέλο. Επειδή όμως οι τυπικές αποκλίσεις συχνά διαφέρουν από ομάδα σε ομάδα, χρειαζόμαστε έναν τρόπο να συνδυάσουμε τις δύο τυπικές αποκλίσεις σε μία.
Μια πρώτη σκέψη είναι να υπολογίσουμε τον απλό μέσο όρο των δύο τυπικών αποκλίσεων. Αυτό λειτουργεί καλά όταν οι δύο ομάδες έχουν το ίδιο μέγεθος. Αλλά τι γίνεται αν μια ομάδα έχει 100 παρατηρήσεις και η άλλη μόνο 10; Ο απλός μέσος όρος θα έδινε την ίδια βαρύτητα στην εκτίμηση από την ομάδα των 10 όσο και σε αυτή από την ομάδα των 100 — κάτι που δεν είναι λογικό. Θα πρέπει να έχουμε μεγαλύτερη εμπιστοσύνη στην εκτίμηση που βασίζεται στο μεγαλύτερο δείγμα.
Η λύση είναι να χρησιμοποιήσουμε έναν σταθμισμένο μέσο όρο των δύο τυπικών αποκλίσεων, με βάρη ανάλογα των βαθμών ελευθερίας κάθε ομάδας. Αυτό ονομάζεται «σταθμισμένη ή συγκεντρωτική τυπική απόκλιση» (pooled standard deviation), και είναι αυτή που χρησιμοποιούμε για να υπολογίσουμε το \(d\) του Cohen. Η σταθμισμένη τυπική απόκλιση (\(s_{\text{pooled}}\)) υπολογίζεται ως εξής:
\[s_{\text{pooled}} = \sqrt{\frac{\text{df}_1 s_1^2 + \text{df}_2 s_2^2}{\text{df}_1 + \text{df}_2}}\]
Ένας πιο άμεσος τρόπος να βρούμε τη σταθμισμένη τυπική απόκλιση είναι να πάρουμε την τετραγωνική ρίζα του MS Error
(Mean Square Error) από τον πίνακα ANOVA. Το MS Error
, αν θυμάστε, είναι το SS Error
διαιρεμένο με τους βαθμούς ελευθερίας του σφάλματος, και μας δίνει μια εκτίμηση της διακύμανσης που βασίζεται αποκλειστικά στη μεταβλητότητα εντός των ομάδων. Στην περίπτωσή μας, η σταθμισμένη τυπική απόκλιση είναι η τετραγωνική ρίζα του 121.64 (βλέπε πίνακα παρακάτω), δηλαδή περίπου 11.
Table (Type III SS)
Analysis of Variance : Tip ~ Condition
Model
SS df MS F PRE p----- --------------- | -------- -- ------- ----- ------ -----
Model (error reduced) | 402.023 1 402.023 3.305 0.0729 .0762
Error (from model) | 5108.955 42 121.642
----- --------------- | -------- -- ------- ----- ------ -----
Total (empty model) | 5510.977 43 128.162
Μπορούμε να βελτιώσουμε την εξίσωση για το \(d\) του Cohen αντικαθιστώντας το \(s\) με το \(s_{\text{pooled}}\):
\[d = \frac{\beta_1}{s_{\text{pooled}}}\]
R: Η Συνάρτηση cohensD()
Όπως και με τα άλλα στατιστικά μέτρα που είδαμε, υπάρχει συνάρτηση στην R για τον υπολογισμό του \(d\) του Cohen.
cohensD(Tip ~ Condition, data = TipExperiment)
Δοκιμάστε να εκτελέσετε τον παρακάτω κώδικα.
0.5481351
Σε ποια μονάδα μέτρησης είναι αυτός ο αριθμός;
Σωστή απάντηση: Γ - τυπικές αποκλίσεις (standard deviations)
Τι είναι το Cohen’s d;
Το d του Cohen είναι ένα μέτρο μεγέθους επίδρασης (effect size) που εκφράζει τη διαφορά μεταξύ δύο ομάδων σε τυπικές αποκλίσεις.
Τύπος:
\[d = \frac{\bar{x}_1 - \bar{x}_2}{s_{pooled}}\]
όπου:
\(\bar{x}_1 - \bar{x}_2\) = η διαφορά των μέσων όρων
\(s_{pooled}\) = η σταθμισμένη τυπική απόκλιση (pooled standard deviation)
Ερμηνεία του αποτελέσματος:
\[d = 0.548\]
Αυτό σημαίνει:
«Η διαφορά μεταξύ των δύο συνθηκών (Condition) είναι 0.548 τυπικές αποκλίσεις.»
Με άλλα λόγια, οι δύο ομάδες διαφέρουν κατά περίπου μισή τυπική απόκλιση.
Γιατί είναι σε τυπικές αποκλίσεις;
Το d του Cohen τυποποιεί τη διαφορά διαιρώντας με την τυπική απόκλιση:
-
Παρονομαστής = τυπική απόκλιση
Διαιρούμε τη διαφορά με την τυπική απόκλιση
Αυτό μετατρέπει τη διαφορά σε μονάδες τυπικών αποκλίσεων
-
Αποτέλεσμα = αδιάστατος αριθμός
Το d δεν έχει μονάδες (δολάρια, χιλιοστά, κλπ.)
Εκφράζεται σε τυπικές αποκλίσεις
-
Πλεονέκτημα της τυποποίησης:
Μπορούμε να συγκρίνουμε μεγέθη επίδρασης μεταξύ διαφορετικών μελετών
Ακόμα και αν χρησιμοποιούν διαφορετικές κλίμακες μέτρησης
Παράδειγμα:
Ας υποθέσουμε ότι στο TipExperiment:
Ομάδα 1 (π.χ., Smiley Face): μέσος όρος φιλοδωρήματος = $5.00, τυπική απόκλιση = $2.00
Ομάδα 2 (π.χ., Control): μέσος όρος φιλοδωρήματος = $3.90, τυπική απόκλιση = $2.00
Υπολογισμός:
\[d = \frac{5.00 - 3.90}{2.00} = \frac{1.10}{2.00} = 0.55\]
Ερμηνεία:
Η διαφορά είναι $1.10 (σε δολάρια)
Αλλά το d = 0.55 (σε τυπικές αποκλίσεις)
Αυτό σημαίνει: η διαφορά είναι 0.55 τυπικές αποκλίσεις
Γιατί οι άλλες είναι λάθος:
Α. “ποσοστό” - ΛΑΘΟΣ
Το d του Cohen δεν είναι ποσοστό
Τα ποσοστά κυμαίνονται από 0% έως 100%
Το d μπορεί να είναι οποιοσδήποτε αριθμός (θετικός ή αρνητικός)
Μέτρα σε ποσοστό:
- PRE (Proportional Reduction in Error)
Β. “ποσοστό στο τετράγωνο” - ΛΑΘΟΣ
Το Cohen’s d δεν είναι στο τετράγωνο
Είναι σε γραμμικές μονάδες (τυπικές αποκλίσεις), όχι τετραγωνικές
Μέτρα σε τετραγωνικές μονάδες:
Διακύμανση = SD²
Άθροισμα Τετραγώνων (SS)
Μέσο Άθροισμα Τετραγώνων (MS)
Δ. “τιμές z” - ΛΑΘΟΣ (αλλά συνδέεται στενά)
Το d του Cohen δεν είναι το ίδιο με την τιμή z
Αλλά και τα δύο εκφράζονται σε τυπικές αποκλίσεις!
Διαφορές:
-
τιμή z: Πόσες τυπικές αποκλίσεις απέχει μια μεμονωμένη παρατήρηση από το μέσο όρο
- \[z = \frac{x - \mu}{\sigma}\]
-
d του Cohen: Πόσες τυπικές αποκλίσεις διαφέρουν δύο ομάδες μεταξύ τους
- \[d = \frac{\bar{x}_1 - \bar{x}_2}{s_{pooled}}\]
Ε. “πίνακες” - ΛΑΘΟΣ
Αυτό δεν έχει νόημα
Το d του Cohen είναι ένας αριθμός, όχι μονάδα μέτρησης
Σύγκριση με άλλα μέτρα:
Μέτρο | Μονάδα | Εύρος | Παράδειγμα |
---|---|---|---|
Διαφορά μέσων | Αρχικές μονάδες (π.χ., $) | -∞ έως +∞ | $1.10 |
d του Cohen | Τυπικές αποκλίσεις | -∞ έως +∞ | 0.548 SD |
PRE | Αναλογία (0-1) | 0 έως 1 | 0.07 (7%) |
πηλίκο F | Αδιάστατος λόγος | 0 έως +∞ | 11.66 |
Γιατί χρησιμοποιούμε τυπικές αποκλίσεις;
-
Τυποποίηση:
Διαφορετικές μελέτες μπορούν να έχουν διαφορετικές κλίμακες
Π.χ., φιλοδωρήματα σε δολάρια vs ικανοποίηση σε κλίμακα 1-10
Το d τις κάνει συγκρίσιμες!
-
Διαισθητική ερμηνεία:
“Μισή τυπική απόκλιση” είναι εύκολο να κατανοηθεί
Συνδέεται με την κανονική κατανομή
-
Σύνδεση με άλλα μέτρα:
- Μπορούμε να μετατρέψουμε μεταξύ τους τα d, r, F, κλπ.
Συμπέρασμα:
Το d = 0.548 είναι σε μονάδες τυπικών αποκλίσεων. Αυτό σημαίνει ότι η διαφορά μεταξύ των δύο συνθηκών στο πείραμα του φιλοδωρήματος είναι 0.548 τυπικές αποκλίσεις - ένα μέτριο μέγεθος επίδρασης που υποδηλώνει μια ουσιαστική αλλά όχι τεράστια διαφορά μεταξύ των ομάδων.
Γνωρίζουμε ότι η διαφορά στο φιλοδώρημα κατά μέσο όρο μεταξύ των ομάδων smiley face
και control
είναι 6 ποσοστιαίες μονάδες, και η σταθμισμένη τυπική απόκλιση είναι περίπου 11. Χρησιμοποιώντας την τυπική απόκλιση (11) ως μονάδα μέτρησης, η διαφορά των μέσων όρων (6) αντιστοιχεί σε λίγο πάνω από μισή τυπική απόκλιση — ακριβώς 0.55 τυπικές αποκλίσεις.
Για τη μελέτη με τα φιλοδωρήματα, το να γνωρίζουμε ότι υπάρχει διαφορά περίπου 6 ποσοστιαίων μονάδων είναι αρκετά προφανές και κατανοητό. Όμως, για άλλες μεταβλητές — όπως το σκορ στα βιντεοπαιχνίδια Kargle και Spargle — οι άνθρωποι μπορεί διαισθητικά να μην αντιλαμβάνονται τι σημαίνει μια διαφορά π.χ. 6 πόντων. Σε τέτοιες περιπτώσεις, η έκφραση της διαφοράς σε τυπικές αποκλίσεις (με το \(d\) του Cohen) είναι ιδιαίτερα χρήσιμη.
Αντιστοιχίστε κάθε μέτρο μεγέθους επίδρασης με τη μονάδα στην οποία μετριέται.
Σε ποια μονάδα μετριέται η διαφορά μέσων όρων;
Σωστή απάντηση: Α - Αρχικές μονάδες
Τι είναι:
\[\text{Μέση διαφορά} = \bar{x}_1 - \bar{x}_2\]
Μονάδα: Οι αρχικές μονάδες μέτρησης της μεταβλητής
Παραδείγματα:
Μεταβλητή | Mean Difference | Μονάδα |
---|---|---|
Φιλοδώρημα | $1.10 | Δολάρια |
Μήκος αντίχειρα | 4.60 mm | Χιλιοστά |
Βαθμολογία τεστ | 12.5 points | Βαθμοί |
Ύψος | 15 cm | Εκατοστά |
Γιατί “αρχικές μονάδες”;
Η διαφορά μέσων όρων διατηρεί τις μονάδες των δεδομένων
Αν μετράμε σε δολάρια, η διαφορά είναι σε δολάρια
Αν μετράμε σε χιλιοστά, η διαφορά είναι σε χιλιοστά
Πλεονέκτημα: - Εύκολη ερμηνεία (π.χ., “$1.10 περισσότερο φιλοδώρημα”)
Μειονέκτημα: - Δεν μπορούμε να συγκρίνουμε μεταξύ διαφορετικών κλιμάκων
Σε ποια μονάδα μετριέται το PRE (Αναλογική Μείωση του Σφάλματος);
Σωστή απάντηση: Γ - Ποσοστό ή αναλογία
Τι είναι:
\[PRE = \frac{SS_{Total} - SS_{Error}}{SS_{Total}} = \frac{SS_{Model}}{SS_{Total}}\]
Μονάδα: Ποσοστό (0% έως 100%) ή αναλογία (0 έως 1)
Παραδείγματα:
PRE (αναλογία) | PRE (ποσοστό) | Ερμηνεία |
---|---|---|
0.07 | 7% | Το μοντέλο εξηγεί 7% της διασποράς |
0.14 | 14% | Το μοντέλο εξηγεί 14% της διασποράς |
0.50 | 50% | Το μοντέλο εξηγεί 50% της διασποράς |
Γιατί “ποσοστό ή αναλογία”;
Το PRE μετράει τι ποσοστό του σφάλματος μειώθηκε
Εύρος: 0 έως 1 (ή 0% έως 100%)
Αδιάστατο - δεν έχει μονάδες όπως δολάρια ή χιλιοστά
Ερμηνεία:
PRE = 0.14 σημαίνει: > «Το μοντέλο μείωσε το σφάλμα κατά 14% (ή 0.14 αναλογία)»
Σχέση με R²: - PRE = R² (coefficient of determination)
- Και τα δύο εκφράζονται ως ποσοστό/αναλογία
Σε ποια μονάδα μετριέται το d του Cohen;
Σωστή απάντηση: Δ - Τυπικές αποκλίσεις
Τι είναι:
\[d = \frac{\bar{x}_1 - \bar{x}_2}{s_{pooled}}\]
Μονάδα: Τυπικές αποκλίσεις (standard deviations)
Παραδείγματα:
Cohen’s d | Ερμηνεία |
---|---|
0.2 SD | Μικρή διαφορά (0.2 τυπικές αποκλίσεις) |
0.5 SD | Μέτρια διαφορά (0.5 τυπικές αποκλίσεις) |
0.8 SD | Μεγάλη διαφορά (0.8 τυπικές αποκλίσεις) |
Γιατί “τυπικές αποκλίσεις”;
- Το d διαιρεί τη διαφορά μέσων με την τυπική απόκλιση
\[d = \frac{\text{Διαφορά σε αρχικές μονάδες}}{\text{Τυπική απόκλιση σε αρχικές μονάδες}} = \text{Αριθμός τυπικών αποκλίσεων}\]
Παράδειγμα:
Φιλοδώρημα: - Διαφορά μέσων = $1.10
Τυπική απόκλιση = $2.00
Cohen’s d = 1.10 / 2.00 = 0.55 SD
Πλεονέκτημα: - Τυποποιημένο - μπορούμε να συγκρίνουμε μελέτες με διαφορετικές κλίμακες
Ποια από αυτά τα μέτρα μεγέθους επίδρασης μπορεί να χρησιμοποιηθεί με ένα μοντέλο τριών ομάδων (ή ένα με ακόμα περισσότερες ομάδες);
Σωστή απάντηση: Β - PRE
Γιατί το PRE λειτουργεί με 3+ ομάδες;
Το PRE (Proportional Reduction in Error) μπορεί να χρησιμοποιηθεί με οποιονδήποτε αριθμό ομάδων επειδή:
- Μετράει τη συνολική μείωση σφάλματος:
\[PRE = \frac{SS_{Total} - SS_{Error}}{SS_{Total}} = \frac{SS_{Model}}{SS_{Total}}\]
Δεν εξαρτάται από το πόσες ομάδες υπάρχουν
Συγκρίνει το συνολικό μοντέλο με το κενό μοντέλο
- Παραδείγματα με διαφορετικό αριθμό ομάδων:
Μοντέλο | Αριθμός ομάδων | PRE | Ερμηνεία |
---|---|---|---|
Height2Group | 2 (short, tall) | 0.07 | Εξηγεί 7% της διασποράς |
Height3Group | 3 (short, medium, tall) | 0.14 | Εξηγεί 14% της διασποράς |
Height5Group | 5 ομάδες | 0.25 | Εξηγεί 25% της διασποράς |
Height10Group | 10 ομάδες | 0.40 | Εξηγεί 40% της διασποράς |
Το PRE πάντα λειτουργεί, ανεξάρτητα από τον αριθμό ομάδων!
Γιατί οι άλλες ΔΕΝ λειτουργούν με 3+ ομάδες;
Α. Mean Difference - ΜΟΝΟ για 2 ομάδες
Πρόβλημα: Η “διαφορά μέσων όρων” υποθέτει δύο μέσους όρους
Με 2 ομάδες:
Ομάδα 1: μέσος = 57.82 mm
Ομάδα 2: μέσος = 62.42 mm
Διαφορά = 62.42 - 57.82 = 4.60 mm ✓
Με 3 ομάδες:
Ομάδα 1 (short): μέσος = 56.07 mm
Ομάδα 2 (medium): μέσος = 60.22 mm
Ομάδα 3 (tall): μέσος = 64.09 mm
Ποια διαφορά υπολογίζουμε;
• 60.22 - 56.07 = 4.15 mm;
• 64.09 - 56.07 = 8.02 mm;
• 64.09 - 60.22 = 3.87 mm;
• Όλες τις παραπάνω; ✗
Συμπέρασμα: Δεν υπάρχει μία διαφορά μέσων όρων με 3+ ομάδες!
Τι μπορούμε να κάνουμε αντί αυτού;
Με 3+ ομάδες, μπορούμε να υπολογίσουμε:
-
Πολλαπλές διαφορές ανά ζεύγη (pairwise comparisons)
Short vs Medium: 4.15 mm
Short vs Tall: 8.02 mm
Medium vs Tall: 3.87 mm
Αλλά αυτό δεν είναι ένα μέτρο για το συνολικό μοντέλο!
Γ. Cohen’s d - ΜΟΝΟ για 2 ομάδες
Πρόβλημα: Το Cohen’s d σχεδιάστηκε για δύο ομάδες
Τύπος:
\[d = \frac{\bar{x}_1 - \bar{x}_2}{s_{pooled}}\]
Απαιτεί δύο μέσους όρους: \(\bar{x}_1\) και \(\bar{x}_2\)
Υπολογίζει μία συγκεντρωτική τυπική απόκλιση από δύο ομάδες
Με 2 ομάδες:
Με 3 ομάδες:
Γιατί;
Με 3 ομάδες: - Ποια δύο ομάδες συγκρίνουμε;
- Ποιες ομάδες χρησιμοποιούμε για το \(s_{pooled}\);
Τι μπορούμε να κάνουμε αντί αυτού;
Υπολογίζουμε πολλαπλά Cohen’s d για κάθε ζεύγος:
# Short vs Tall
cohensD(Thumb ~ Height, data = subset(Fingers, Height != "medium"))
# Short vs Medium
cohensD(Thumb ~ Height, data = subset(Fingers, Height != "tall"))
# Medium vs Tall
cohensD(Thumb ~ Height, data = subset(Fingers, Height != "short"))
Αλλά και πάλι, αυτό δίνει πολλαπλά d, όχι ένα συνολικό μέτρο!
Σύγκριση:
Μέτρο | 2 Ομάδες | 3 Ομάδες | 4+ Ομάδες | Γιατί; |
---|---|---|---|---|
PRE | ✓ Ναι | ✓ Ναι | ✓ Ναι | Μετράει συνολική μείωση σφάλματος |
Mean Difference | ✓ Ναι | ✗ Όχι | ✗ Όχι | Απαιτεί ακριβώς 2 μέσους όρους |
Cohen’s d | ✓ Ναι | ✗ Όχι* | ✗ Όχι* | Σχεδιασμένο για 2 ομάδες |
*Μπορούμε να υπολογίσουμε πολλαπλά d ανά ζεύγη, αλλά όχι ένα συνολικό d
Εναλλακτικά μέτρα για 3+ ομάδες:
Εκτός από το PRE, μπορούμε να χρησιμοποιήσουμε:
1. η² (Eta squared) - Παρόμοιο με PRE:
\[\eta^2 = \frac{SS_{Model}}{SS_{Total}} = PRE\]
Ίδιο με το PRE!
Λειτουργεί με οποιονδήποτε αριθμό ομάδων
2. ω² (Omega squared) - Διορθωμένο:
\[\omega^2 = \frac{SS_{Model} - df_{Model} \times MS_{Error}}{SS_{Total} + MS_{Error}}\]
Λιγότερο μεροληπτικό από το η²
Λειτουργεί με οποιονδήποτε αριθμό ομάδων
3. F-ratio:
\[F = \frac{MS_{Model}}{MS_{Error}}\]
Όχι ακριβώς “μέγεθος επίδρασης”, αλλά μέτρο στατιστικής σημαντικότητας
Λειτουργεί με οποιονδήποτε αριθμό ομάδων
Παράδειγμα με Height3Group:
Model: Thumb ~ Height3Group
SS df MS F PRE p
----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 1690.440 2 845.220 12.774 0.1423 .0000
Error (from model) | 10189.770 154 66.167
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11880.211 156 76.155
PRE = 0.1423 (14.23%)
Αυτό λειτουργεί τέλεια! Το μοντέλο με 3 ομάδες εξηγεί 14.23% της διασποράς.
Αλλά δεν μπορούμε να υπολογίσουμε:
Μία “διαφορά μέσων όρων” (ποια από τις 3;)
Ένα Cohen’s d (ποιες 2 από τις 3 ομάδες;)
Οπτικοποίηση:
2 ΟΜΑΔΕΣ:
┌─────────┐ ┌─────────┐
│ Short │ │ Tall │
│ 57.82 │ │ 62.42 │
└─────────┘ └─────────┘
↕ Μία διαφορά
4.60 mm
✓ Mean Difference: 4.60 mm
✓ Cohen's d: 0.548
✓ PRE: 0.07
─────────────────────────────
3 ΟΜΑΔΕΣ:
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Short │ │ Medium │ │ Tall │
│ 56.07 │ │ 60.22 │ │ 64.09 │
└─────────┘ └─────────┘ └─────────┘
↕ ↕ ↕
Πολλές διαφορές!
4.15mm 3.87mm 8.02mm
✗ Mean Difference: Ποια;
✗ Cohen's d: Ποιες 2 ομάδες;
✓ PRE: 0.14 (λειτουργεί!)
Γιατί το PRE είναι τόσο ευέλικτο;
Το PRE:
-
Δεν εξαρτάται από συγκεκριμένες ομάδες:
Μετράει τη συνολική μείωση σφάλματος
Δεν χρειάζεται να επιλέξει ποιες ομάδες να συγκρίνει
-
Λειτουργεί με οποιοδήποτε μοντέλο:
2 ομάδες, 3 ομάδες, 10 ομάδες
Ακόμα και με συνεχείς μεταβλητές (παλινδρόμηση)
-
Απλή ερμηνεία:
“Το μοντέλο εξηγεί X% της διασποράς”
Ανεξάρτητα από τον αριθμό ομάδων
Συμπέρασμα:
Μόνο το PRE μπορεί να χρησιμοποιηθεί με μοντέλο τριών (ή περισσότερων) ομάδων επειδή:
✓ Μετράει τη συνολική μείωση σφάλματος από το μοντέλο
✓ Δεν απαιτεί σύγκριση μεταξύ δύο συγκεκριμένων ομάδων
✓ Λειτουργεί με οποιονδήποτε αριθμό ομάδων (2, 3, 4, …)
✓ Παρέχει ένα μέτρο για το συνολικό μοντέλο
Αντίθετα:
✗ Mean Difference και Cohen’s d σχεδιάστηκαν για ακριβώς 2 ομάδες
✗ Με 3+ ομάδες, θα χρειαζόμασταν πολλαπλά μέτρα (ένα για κάθε ζεύγος)
9.6 Μοντελοποίηση της ΔΠΔ
Έχουμε μάθει πώς να προσαρμόζουμε ένα μοντέλο δύο ομάδων και ένα μοντέλο τριών ομάδων στα δεδομένα, καθώς και να αξιολογούμε πόσο σφάλμα μειώνεται όταν χρησιμοποιούμε ένα μοντέλο ομάδων σε σχέση με το κενό μοντέλο. Έχουμε επίσης δει πώς να ποσοτικοποιούμε αυτή τη μείωση του σφάλματος με διάφορα μέτρα μεγέθους επίδρασης, όπως το \(b_1\), το PRE και το \(d\) του Cohen.
Ωστόσο, αξίζει να σταθούμε για λίγο και να θυμηθούμε ότι το κύριο ενδιαφέρον μας δεν είναι το συγκεκριμένο δείγμα δεδομένων που έχουμε στα χέρια μας, αλλά η Διαδικασία Παραγωγής των Δεδομένων — δηλαδή, η υποκείμενη διαδικασία που παρήγαγε αυτά τα δεδομένα.
Σκέψεις για τη ΔΠΔ των Φιλοδωρημάτων
Στο παρακάτω διάγραμμα παρατηρούμε ότι τα τραπέζια στην ομάδα του χαμογελαστού προσώπου άφησαν, κατά μέσο όρο, υψηλότερα φιλοδωρήματα σε σχέση με εκείνα στην ομάδα ελέγχου. Ωστόσο, υπάρχει σημαντική επικάλυψη μεταξύ των δύο κατανομών.
Είναι πράγματι πιθανό ότι η προσθήκη του χαμογελαστού προσώπου στον λογαριασμό προκάλεσε μια μικρή αύξηση στα φιλοδωρήματα. Όμως, είναι εξίσου πιθανό η φαινομενική αυτή διαφορά να οφείλεται απλώς σε τυχαία δειγματοληπτική μεταβλητότητα.
Condition_model <- lm(Tip ~ Condition, data = TipExperiment)
gf_jitter(Tip ~ Condition, data = TipExperiment, width = .1) %>%
gf_model(Condition_model)

Πίσω στο Κεφάλαιο 5, εξετάσαμε αυτή την πιθανότητα χρησιμοποιώντας τη συνάρτηση shuffle()
για να διερευνήσουμε ποια μοτίβα αποτελεσμάτων θα μπορούσαν να προκύψουν αν η πραγματική επίδραση της πειραματικής συνθήκης στη ΔΠΔ ήταν καθαρά τυχαία.
Τότε, η προσέγγισή μας ήταν να δημιουργήσουμε πολλά τυχαία ανακατέματα των δεδομένων και να συγκρίνουμε τα διαγράμματα αυτών των τυχαίων δειγμάτων με το διάγραμμα των πραγματικών δεδομένων, ώστε να διαπιστώσουμε αν υπήρχε ουσιαστική διαφορά. Τώρα που έχουμε μάθει πώς να προσαρμόζουμε ένα μοντέλο δύο ομάδων, θα επανεξετάσουμε τη συνάρτηση shuffle()
.
Όπως θα δούμε, οι έννοιες και οι διαδικασίες της στατιστικής μοντελοποίησης που μάθαμε από τότε μπορούν να μας βοηθήσουν να χρησιμοποιήσουμε τη shuffle()
με πιο εξελιγμένο τρόπο. Πρώτον, μας επιτρέπουν να διατυπώσουμε το ερώτημά μας μέσα σε ένα πλαίσιο σύγκρισης μοντέλων. Δεύτερον, μας δίνουν τη δυνατότητα να ποσοτικοποιήσουμε την ανάλυση των δεδομένων που παράγονται τυχαία.
Μοντελοποίηση των Δεδομένων
Ας ξεκινήσουμε κοιτάζοντας ξανά το μοντέλο δύο ομάδων της Tip
ανά Condition
:
\[\text{Tip}_i = b_0 + b_1 \text{Condition}_i + e_i\]
Όταν προσαρμόζουμε το μοντέλο χρησιμοποιώντας την lm()
, παίρνουμε τις εξής εκτιμήσεις παραμέτρων:
lm(formula = Tip ~ Condition, data = TipExperiment)
:
Coefficients
(Intercept) ConditionSmiley Face27.000 6.045
Ποια από τις δύο εκτιμήσεις παραμέτρων είναι το \(b_1\);
Σωστή απάντηση: Β - 6.045
Κατανόηση των αποτελεσμάτων της lm():
Το μοντέλο που εκτιμήθηκε είναι:
\[\text{Tip}_i = b_0 + b_1 \cdot X_{1i} + e_i\]
όπου \(X_1\) = 1 αν Smiley Face, 0 αν Control
Από τα αποτελέσματα:
Coefficients:
(Intercept) ConditionSmiley Face
27.000 6.045
(Intercept) = 27.000 → Αυτό είναι το \(b_0\)
ConditionSmiley Face = 6.045 → Αυτό είναι το \(b_1\)
Γιατί η Α (27) είναι λάθος;
Το 27 είναι το \(b_0\) (Intercept), όχι το \(b_1\).
\(b_0\) = 27.000: Το μέσο φιλοδώρημα στην ομάδα Control
\(b_1\) = 6.045: Η διαφορά από το Control όταν πάμε στο Smiley Face
Συμπέρασμα:
Το \(b_1\) = 6.045 είναι η εκτίμηση που αντιστοιχεί στην ψευδομεταβλητή ConditionSmiley Face
.
Ποια από τις παρακάτω είναι η καλύτερη ερμηνεία του \(b_1\);
Σωστή απάντηση: Δ - Η ποσότητα που πρέπει να προστεθεί στο μέσο φιλοδώρημα στη συνθήκη control για να πάρουμε το μέσο φιλοδώρημα στη συνθήκη smiley face.
Το μοντέλο:
\[\text{Tip}_i = b_0 + b_1 \cdot X_{1i}\]
όπου: - \(X_1\) = 0 αν Control, 1 αν Smiley Face
\(b_0\) = 27.000
\(b_1\) = 6.045
Τι αντιπροσωπεύει το \(b_1\);
Το \(b_1\) είναι η διαφορά μεταξύ των δύο ομάδων:
\[b_1 = \bar{Y}_{\text{Smiley}} - \bar{Y}_{\text{Control}}\]
\[b_1 = 33.045 - 27.000 = 6.045\]
Ερμηνεία:
«Όταν προσθέτουμε 6.045 στο μέσο φιλοδώρημα της ομάδας ελέγχου (27.000), παίρνουμε το μέσο φιλοδώρημα της ομάδας με το χαμογελαστό προσωπάκι (33.045).»
Με άλλα λόγια:
«Το \(b_1\) είναι η ποσότητα που προστίθεται όταν πάμε από την Control στην Smiley Face.»
Γιατί οι άλλες είναι λάθος;
Α. “Το μέσο ποσό φιλοδωρήματος στη συνθήκη control” - ΛΑΘΟΣ
Αυτό είναι το \(b_0\), όχι το \(b_1\)
\(b_0\) = 27.000 = μέσο φιλοδώρημα στην Control
Β. “Το μέσο ποσό φιλοδωρήματος στη συνθήκη smiley face” - ΛΑΘΟΣ
Το μέσο φιλοδώρημα στην Smiley Face είναι \(b_0 + b_1\), όχι μόνο \(b_1\)
Μέσο Smiley Face = 27.000 + 6.045 = 33.045
Το \(b_1\) = 6.045 είναι μόνο η διαφορά, όχι ο μέσος όρος
Γ. “Το μέσο φιλοδώρημα που κέρδισε κάθε σερβιτόρος ανά τραπέζι” - ΛΑΘΟΣ
Αυτό είναι πολύ ασαφές και δεν περιγράφει το \(b_1\)
Το \(b_1\) δεν είναι ένα “μέσο φιλοδώρημα” - είναι μια διαφορά
Μαθηματική απόδειξη:
Για Control (X₁ = 0):
\[\text{Tip} = b_0 + b_1 \cdot 0 = b_0 = 27.000\]
Για Smiley Face (X₁ = 1):
\[\text{Tip} = b_0 + b_1 \cdot 1 = b_0 + b_1 = 27.000 + 6.045 = 33.045\]
Διαφορά:
\[\text{Smiley} - \text{Control} = (b_0 + b_1) - b_0 = b_1 = 6.045\]
Άρα, το \(b_1\) είναι η διαφορά (ή αύξηση) μεταξύ των δύο ομάδων!
Γενική αρχή για ερμηνεία ψευδομεταβλητών:
Σε ένα μοντέλο με μία ψευδομεταβλητή:
\[Y_i = b_0 + b_1 \cdot X_{1i}\]
\(b_0\): Ο μέσος όρος της ομάδας αναφοράς (όταν \(X_1\) = 0)
\(b_1\): Η διαφορά μεταξύ της ομάδας με \(X_1\) = 1 και της ομάδας αναφοράς
Ερμηνεία του \(b_1\):
«Η θετική ή αρνητική ποσότητα που προσθέτουμε στο \(b_0\) όταν μεταβαίνουμε από την ομάδα αναφοράς στην άλλη ομάδα.»
Συμπέρασμα:
Η καλύτερη ερμηνεία του \(b_1\) = 6.045 είναι:
«Η ποσότητα που πρέπει να προστεθεί στο μέσο φιλοδώρημα της συνθήκης control για να υπολογίσουμε το μέσο φιλοδώρημα της συνθήκης smiley face.»
Με απλά λόγια: Τα τραπέζια στη συνθήκη του χαμογελαστού προσώπου άφησαν κατά μέσο όρο περίπου 6 τοις εκατό του λογαριασμού μεγαλύτερο φιλοδώρημα από τα τραπέζια στη συνθήκη Control.
Στο παρακάτω διάγραμμα παρουσιάζεται το ποσοστό φιλοδωρήματος ανά ομάδα, μαζί με τις τιμές πρόβλεψης του μοντέλου δύο ομάδων (μέσους όρους). Η εκτίμηση παραμέτρου \(b_1\) μας δείχνει ότι η προσθήκη ενός χαμογελαστού προσώπου στον λογαριασμό οδηγεί σε αύξηση των φιλοδωρημάτων, κατά μέσο όρο, κατά 6 ποσοστιαίες μονάδες (είναι η απόσταση ανάμεσα στις δύο κόκκινες γραμμές).

Σύγκριση Δύο Μοντέλων της ΔΠΔ
Αφού προσαρμόσαμε το μοντέλο, μπορούμε να επιστρέψουμε στο ίδιο ερώτημα που θέσαμε στο Κεφάλαιο 5 — αυτή τη φορά όμως, να το διατυπώσουμε με πιο εξελιγμένο τρόπο. Στο Κεφάλαιο 5 αναρωτηθήκαμε: είναι πιθανό η μικρή αύξηση στα φιλοδωρήματα μεταξύ των δύο ομάδων να οφείλεται απλώς σε τυχαία δειγματοληπτική μεταβλητότητα και όχι σε πραγματική επίδραση στη ΔΠΔ;
Αν δεν υπήρχε επίδραση του χαμογελαστού προσώπου στα φιλοδωρήματα, ποια θα ήταν η τιμή του \(\beta_1\) στη ΔΠΔ;
Σωστή απάντηση: Β - 0
Τι είναι η ΔΠΔ (Διαδικασία Παραγωγής Δεδομένων);
Η ΔΠΔ είναι η πραγματική, υποκείμενη διαδικασία που παράγει τα δεδομένα. Είναι το “αληθινό” μοντέλο στον πληθυσμό, όχι το μοντέλο που εκτιμούμε από το δείγμα.
Το μοντέλο στη ΔΠΔ:
\[\text{Tip}_i = \beta_0 + \beta_1 \cdot X_{1i} + \epsilon_i\]
όπου: - \(\beta_0, \beta_1\) = οι πραγματικές παράμετροι στον πληθυσμό (ΔΠΔ)
\(b_0, b_1\) = οι εκτιμήσεις από το δείγμα
\(X_1\) = 1 αν ανήκει στην ομάδα χαμογελαστού προσώπου, 0 αν ανήκει στην ομάδα ελέγχου
Τι σημαίνει “δεν υπάρχει επίδραση”;
Αν το χαμογελαστό προσωπάκι δεν έχει επίδραση στα φιλοδωρήματα, τότε:
«Το μέσο φιλοδώρημα είναι το ίδιο στις δύο συνθήκες.»
Αν δεν υπάρχει επίδραση, τότε:
\[\beta_0 = \beta_0 + \beta_1\]
\[\Rightarrow \beta_1 = 0\]
Συμπέρασμα:
Αν το χαμογελαστό προσωπάκι δεν έχει επίδραση, τότε \(\beta_1 = 0\) στη ΔΠΔ.
Γιατί οι άλλες είναι λάθος;
Α. “6.045” - ΛΑΘΟΣ
Το 6.045 είναι η εκτίμηση παραμέτρου \(b_1\) από το δείγμα, όχι η αληθινή τιμή \(\beta_1\) στη ΔΠΔ
Αν δεν υπάρχει επίδραση στη ΔΠΔ (\(\beta_1 = 0\)), τότε το \(b_1 = 6.045\) είναι απλά τυχαία δειγματοληπτική μεταβλητότητα
Σύγκριση:
Παράμετρος | Σύμβολο | Τιμή | Πού υπάρχει |
---|---|---|---|
Πραγματική παράμετρος | \(\beta_1\) | 0 (αν δεν υπάρχει επίδραση) | ΔΠΔ (πληθυσμός) |
Εκτίμηση από δείγμα | \(b_1\) | 6.045 | Δείγμα |
Γ. “27” - ΛΑΘΟΣ
Το 27 είναι η εκτίμηση του \(b_0\) (Intercept), όχι του \(\beta_1\)
Το \(\beta_0\) αντιπροσωπεύει το μέσο φιλοδώρημα στην ομάδα ελέγχου
Ακόμα κι αν δεν υπάρχει επίδραση του χαμογελαστού προσώπου, το \(\beta_0\) μπορεί να είναι οποιαδήποτε τιμή (π.χ., 27)
Δ. “Άγνωστο (Unknown)” - ΛΑΘΟΣ
Η τιμή του \(\beta_1\) δεν είναι άγνωστη αν ξέρουμε ότι δεν υπάρχει επίδραση
“Δεν υπάρχει επίδραση” σημαίνει ακριβώς \(\beta_1 = 0\)
Η διαφορά μεταξύ ΔΠΔ και δείγματος:
ΔΠΔ (ΠΛΗΘΥΣΜΟΣ):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Πραγματικό μοντέλο:
Tip = β₀ + β₁·X₁ + ε
Αν δεν υπάρχει επίδραση:
β₁ = 0
↓ Παίρνουμε δείγμα
ΔΕΙΓΜΑ:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Εκτιμώμενο μοντέλο:
Tip = b₀ + b₁·X₁
Από τα δεδομένα:
b₀ = 27.000
b₁ = 6.045 ← Τυχαία μεταβλητότητα!
Ακόμα κι αν β₁ = 0 (ΔΠΔ),
το b₁ ≠ 0 λόγω τυχαίας δειγματοληπτικής μεταβλητότητας
Συμπέρασμα:
Αν δεν υπάρχει επίδραση του χαμογελαστού προσώπου στα φιλοδωρήματα, τότε:
\[\beta_1 = 0 \text{ στη ΔΠΔ}\]
Αυτό σημαίνει ότι:
Οι δύο συνθήκες έχουν το ίδιο μέσο φιλοδώρημα στον πληθυσμό
Η διαφορά που παρατηρούμε στο δείγμα (\(b_1 = 6.045\)) οφείλεται αποκλειστικά σε τυχαία δειγματοληπτική μεταβλητότητα
Το \(\beta_1 = 0\) είναι ο ορισμός της “απουσίας επίδρασης” στη ΔΠΔ.
Αν και το προσαρμοσμένο μοντέλο εκτιμά την παράμετρο \(b_1\) ως 6 ποσοστιαίες μονάδες, θα μπορούσε ένα τέτοιο αποτέλεσμα να έχει προκύψει από μια ΔΠΔ στην οποία το \(\beta_1\) είναι στην πραγματικότητα ίσο με 0;
Με άλλα λόγια, με βάση τα δεδομένα μας, ποιο μοντέλο θα προτιμήσουμε;
- Το πιο σύνθετο μοντέλο, όπου η συνθήκη (
Condition
) περιλαμβάνεται ως ανεξάρτητη μεταβλητή και το \(\beta_1\) εκτιμάται ίσο με 6; - Ή το απλούστερο, κενό μοντέλο, στο οποίο το \(\beta_1\) θεωρείται ίσο με 0;
Μοντέλο Condition: \(\text{Tip}_i = \beta_0 + \beta_1 \text{Condition}_i + \epsilon_i\)
Κενό μοντέλο: \(\text{Tip}_i = \beta_0 + \epsilon_i\)
Σημειώστε ότι η μόνη διαφορά μεταξύ αυτών των δύο μοντέλων είναι ότι ο όρος \(\beta_1 \text{Condition}_i\) δεν υπάρχει στο κενό μοντέλο. Αν το \(\beta_1\) είναι 0, τότε αυτός ο όρος θα εξαλειφθεί.
9.7 Χρήση του Τυχαίου Ανακατέματος για Σύγκριση Μοντέλων της ΔΠΔ
Προσομοίωση του Κενού Μοντέλου με τη shuffle()
Αν στην πραγματικότητα δεν υπήρχε καμία επίδραση του χαμογελαστού προσώπου στα φιλοδωρήματα, τότε το κενό μοντέλο, στο οποίο το \(\beta_1 = 0\), θα αποτελούσε μια καλή αναπαράσταση της ΔΠΔ. Ωστόσο, ακόμη κι αν αυτή ήταν η πραγματική ΔΠΔ, δεν θα περιμέναμε η εκτίμηση της επίδρασης στο δείγμα μας (\(b_1\)) να είναι ακριβώς μηδέν. Ειδικά σε μικρά δείγματα, η εκτίμηση θα μπορούσε να είναι λίγο μεγαλύτερη ή λίγο μικρότερη από το 0. Το ερώτημα είναι: πόσο μεγαλύτερη ή μικρότερη θα μπορούσε να είναι;
Για να διερευνήσουμε αυτό το ερώτημα, μπορούμε να χρησιμοποιήσουμε τη συνάρτηση shuffle()
. Τώρα όμως που έχουμε μάθει να προσαρμόζουμε μοντέλα, μπορούμε να αξιοποιήσουμε το ανακάτεμα με πιο εξελιγμένο τρόπο: αντί απλώς να ανακατεύουμε τις τιμές των φιλοδωρημάτων και να παρατηρούμε τα διαγράμματα των ανακατεμένων ομάδων, μπορούμε να προσαρμόζουμε ένα μοντέλο σε κάθε ανακατεμένο δείγμα και να υπολογίζουμε την εκτίμηση του \(\beta_1\) από κάθε ένα από αυτά.

Στην πραγματικότητα, δεν χρειαζόμαστε καν τα διαγράμματα. Μπορούμε να συνδυάσουμε τη συνάρτηση b1()
με τη shuffle()
ώστε να υπολογίσουμε απευθείας την εκτίμηση του \(b_1\) για κάθε ανακατεμένο δείγμα. Αν επαναλάβουμε αυτή τη διαδικασία πολλές φορές, μπορούμε να δούμε το εύρος των εκτιμήσεων που προκύπτουν όταν το κενό μοντέλο είναι η πραγματική ΔΠΔ — δηλαδή, όταν οποιαδήποτε διαφορά μεταξύ των ομάδων οφείλεται αποκλειστικά στην τύχη.
Στο παρακάτω παράθυρο κώδικα έχουμε προσθέσει εντολές για να υπολογίσουμε την εκτίμηση του \(b_1\) από τα πραγματικά δεδομένα του πειράματος φιλοδωρημάτων. Έχουμε επίσης προσθέσει κώδικα που ανακατεύει τις τιμές των φιλοδωρημάτων και υπολογίζει εκ νέου την εκτίμηση του \(b_1\) με βάση τα ανακατεμένα δεδομένα.
Εκτελέστε τον κώδικα μερικές φορές και παρατηρήστε τα αποτελέσματα που προκύπτουν.
6.045
0.036
Πήραμε τα δύο παραπάνω αποτελέσματα όταν εκτελέσαμε τον κώδικα. Το 6.045 μάς είναι ήδη γνωστό — είναι η εκτίμηση παραμέτρου \(b_1\) που υπολογίσαμε νωρίτερα από την προσαρμογή του μοντέλου στα πραγματικά δεδομένα με τη συνάρτηση lm()
. Το 0.036 είναι η εκτίμηση παραμέτρου \(b_1\) που προέκυψε από τα ανακατεμένα δεδομένα.
Τι συμβαίνει κάθε φορά που εκτελείτε τον παραπάνω κώδικα; Παίρνετε το ίδιο αποτέλεσμα κάθε φορά; Γιατί ή γιατί όχι;
Επειδή το ανακάτεμα είναι μια τυχαία διαδικασία, η εκτίμηση παραμέτρου \(b_1\) θα αλλάζει κάθε φορά που εκτελείτε τον κώδικα. Δοκιμάστε να τον εκτελέσετε αρκετές φορές για να δείτε τη μεταβλητότητα των αποτελεσμάτων.
Αν προσθέσετε τη συνάρτηση do()
πριν από τον κώδικα, μπορείτε να επαναλάβετε αυτόματα τη διαδικασία του τυχαίου ανακατέματος όσες φορές θέλετε, ώστε να παραχθεί μια νέα εκτίμηση παραμέτρου \(b_1\) κάθε φορά.
Για παράδειγμα, για να πραγματοποιήσετε 5 ανακατέματα, θα γράφατε:
do(5) * b1(shuffle(Tip) ~ Condition, data = TipExperiment)
Δοκιμάστε να τροποποιήσετε τον κώδικα στο παρακάτω πλαίσιο ώστε να εκτελέσετε 10 ανακατέματα των φιλοδωρημάτων μεταξύ των συνθηκών και να παραγάγετε 10 τυχαιοποιημένες εκτιμήσεις \(b_1\).
b11 -3.7727273
2 -2.6818182
3 -1.4090909
4 -2.6818182
5 -4.6818182
6 2.0454545
7 -0.1363636
8 -1.1363636
9 0.5909091
10 4.6818182
Οι δέκα εκτιμήσεις \(b_1\) που προέκυψαν όταν εκτελέσατε τον κώδικα δεν θα είναι ακριβώς ίδιες με τις εκτιμήσεις που πήραμε εμείς (φαίνονται παραπάνω). Παρατηρήστε, ωστόσο, ότι μερικές από αυτές τις τιμές του \(b_1\) είναι θετικές, άλλες αρνητικές· κάποιες διαφέρουν αρκετά από το 0 (π.χ. 4.68 και -3.77), ενώ άλλες είναι πολύ κοντά στο 0 (π.χ. -0.13). Εκτελέστε τον κώδικα μερικές φορές ακόμη, ώστε να αποκτήσετε μια αίσθηση του πώς μπορεί να μεταβάλλονται αυτές οι εκτιμήσεις.
Αν συνεχίσουμε να δημιουργούμε τυχαίες εκτιμήσεις \(b_1\), θα παρατηρήσουμε ότι, αν και σπάνια είναι ακριβώς 0, συγκεντρώνονται γύρω από το 0. Αυτό συμβαίνει επειδή η shuffle()
προσομοιώνει μια Διαδικασία Παραγωγής Δεδομένων (ΔΠΔ) στην οποία δεν υπάρχει καμία πραγματική επίδραση του χαμογελαστού προσώπου στα φιλοδωρήματα — δηλαδή, τα τραπέζια θα έδιναν περίπου το ίδιο φιλοδώρημα ακόμη ανεξάρτητα από τη συνθήκη.
Να θυμάστε: κάθε μία από αυτές τις εκτιμήσεις \(b_1\) προκύπτει από μια καθαρά τυχαία διαδικασία, που δεν έχει καμία σχέση με το αν το τραπέζι έλαβε λογαριασμό με χαμογελαστό πρόσωπο ή όχι. Η συνάρτηση shuffle()
μιμείται μια ΔΠΔ στην οποία το πραγματικό \(\beta_1 = 0\). Μερικές φορές αυτή η ΔΠΔ αποκαλείται και «γονικός πληθυσμός» (parent population), επειδή όταν παράγει εκτιμήσεις \(b_1\), αυτά τα «παιδιά» τείνουν να μοιάζουν με τον «γονέα» τους — συγκεντρώνονται δηλαδή γύρω από το μηδέν.
Χρήση Προσομοιωμένων \(b_1\) για να μας Βοηθήσουν να Κατανοήσουμε Καλύτερα τα Δεδομένα
Μπορούμε να χρησιμοποιήσουμε αυτές τις προσομοιωμένες εκτιμήσεις \(b_1\) για να κατανοήσουμε καλύτερα τα δεδομένα μας. Ξεκινάμε με την πραγματική εκτίμηση \(b_1\) που προέκυψε από τη μελέτη (6.045) και τη συγκρίνουμε με τις 10 εκτιμήσεις \(b_1\) που δημιουργήσαμε από τα ανακατεμένα δεδομένα.
Παρουσιάζονται ξανά παρακάτω, αυτή τη φορά ταξινομημένες από τη μικρότερη προς τη μεγαλύτερη.
b11 -3.7727273
2 -3.2272727
3 -1.6818182
4 -1.6818182
5 -1.5000000
6 -0.5000000
7 0.1363636
8 2.7727273
9 3.6818182
10 6.9545455
Θυμηθείτε ότι το \(b_1\) του δείγματος ήταν περίπου 6. Πως συγκρίνεται το \(b_1\) του δείγματος σε σχέση με αυτά τα ανακατεμένα \(b_1\);
Σωστή απάντηση: Β - Το \(b_1\) του δείγματος είναι σχετικά μεγάλο.
Το πλαίσιο:
Στο πείραμα φιλοδωρημάτων: - Το \(b_1\) του δείγματος ≈ 6.045
- Αυτό αντιπροσωπεύει τη διαφορά μεταξύ Smiley Face και Control
Τι είναι τα “ανακατεμένα” δεδομένα (shuffled) \(b_1\);
Η μετάθεση (shuffling/permutation) είναι μια τεχνική για να:
-
Προσομοιώσουμε το \(\beta_1 = 0\):
Ανακατεύουμε τυχαία τις ετικέτες των ομάδων (Smiley Face vs Control)
Αυτό σπάει οποιαδήποτε πραγματική σχέση μεταξύ συνθήκης και φιλοδωρήματος
Προσομοιώνει έναν κόσμο όπου \(\beta_1 = 0\) (δεν υπάρχει επίδραση)
-
Υπολογίσουμε το \(b_1\) για κάθε ανακάτεμα:
Κάθε φορά που ανακατεύουμε, υπολογίζουμε ένα νέο \(b_1\)
Αυτά τα \(b_1\) δείχνουν τι τιμές είναι πιθανές λόγω τυχαιότητας
Παρατήρηση:
Το \(b_1 = 6.045\) του δείγματος βρίσκεται πολύ μακριά από το κέντρο (0) της κατανομής των ανακατεμένων \(b_1\).
Αυτό σημαίνει ότι το \(b_1 = 6.045\) είναι σχετικά μεγάλο σε σύγκριση με τις τιμές που παίρνουμε από τύχη.
Γιατί οι άλλες είναι λάθος;
Α. “Το \(b_1\) του δείγματος είναι σχετικά μικρό” - ΛΑΘΟΣ
Το \(b_1 = 6.045\) δεν είναι μικρό
Βρίσκεται στη δεξιά ουρά της κατανομής των ανακατεμένων \(b_1\)
Οι περισσότερες ανακατεμένες τιμές είναι κοντά στο 0, όχι κοντά στο 6
Γ. “Το \(b_1\) θα έπεφτε στη μέση” - ΛΑΘΟΣ
Η μέση των ανακατεμένων \(b_1\) είναι περίπου 0
Το \(b_1 = 6.045\) είναι πολύ μακριά από τη μέση
Δ. “Δεν μπορώ να απαντήσω” - ΛΑΘΟΣ
Δεν χρειάζεται η ακριβής τιμή 6.045 να εμφανιστεί στις μεταθέσεις
Μπορούμε να συγκρίνουμε το 6.045 με την κατανομή των ανακατεμένων τιμών
Ρωτάμε: “Πού βρίσκεται το 6.045 σε σχέση με την κατανομή;”
Ερμηνεία:
«Μόνο το 0.8% των ανακατεμένων \(b_1\) είναι τόσο μεγάλα ή μεγαλύτερα από το 6.045. Αυτό σημαίνει ότι το \(b_1 = 6.045\) του δείγματός μας είναι σχετικά μεγάλο και απίθανο να προέκυψε από τύχη.»
Συμπέρασμα:
Το \(b_1 = 6.045\) του δείγματος είναι σχετικά μεγάλο σε σύγκριση με τα ανακατεμένα \(b_1\) επειδή:
✓ Βρίσκεται πολύ μακριά από τη μέση (≈0) των ανακατεμένων τιμών
✓ Βρίσκεται στην δεξιά ουρά της κατανομής
✓ Πολύ λίγες ανακατεμένες τιμές είναι τόσο μεγάλες
Αυτό αποτελεί μια πρώτη ένδειξη ότι το χαμογελαστό πρόσωπο έχει πραγματική επίδραση στα φιλοδωρήματα!
Αυτό που μπορούμε να δούμε τώρα —πολύ πιο καθαρά απ’ ό,τι όταν είχαμε μόνο τα διαγράμματα— είναι ότι μόνο μία από τις 10 τυχαία παραγόμενες εκτιμήσεις \(b_1\) είναι τόσο μεγάλη ή μεγαλύτερη από αυτήν που παρατηρήθηκε στη μελέτη. Από αυτό μπορούμε να συμπεράνουμε ότι υπάρχει περίπου μία πιθανότητα στις δέκα να παρατηρήσουμε μια εκτίμηση \(b_1 = 6.045\) αν το κενό μοντέλο είναι πράγματι το σωστό μοντέλο της ΔΠΔ.
Με βάση αυτό, θα πρέπει να απορρίψουμε το κενό μοντέλο ως το πραγματικό μοντέλο της ΔΠΔ; Αυτή είναι μια δύσκολη απόφαση — και θα επιστρέψουμε σε αυτή σε επόμενο κεφάλαιο. Προς το παρόν, αρκεί να σημειώσουμε ότι, βλέποντας την παρατηρούμενη εκτίμηση \(b_1\) σε σύγκριση με τις εκτιμήσεις που θα μπορούσαν να είχαν παραχθεί από το κενό μοντέλο, μαθαίνουμε να σκεφτόμαστε πιο κριτικά σχετικά με το πώς πρέπει να ερμηνεύουμε τα αποτελέσματα της μελέτης με τα φιλοδωρήματα.
9.8 Ασκήσεις Επανάληψης Κεφαλαίου 9
Το StudentSurvey
είναι ένα πλαίσιο δεδομένων με 362 παρατηρήσεις στις ακόλουθες 17 μεταβλητές:
Year
: Έτος σπουδώνGender
: Φύλο φοιτητή: F ή MSmoke
: Καπνιστής; No ή YesAward
: Προτίμηση για βραβείο: Academy, Nobel, ή OlympicHigherSAT
: Ποια επίδοση στη δοκιμασία SAT είναι υψηλότερη; Math ή VerbalExercise
: Ώρες άσκησης ανά εβδομάδαTV
: Ώρες παρακολούθησης τηλεόρασης ανά εβδομάδαHeight
: Ύψος (σε ίντσες)Weight
: Βάρος (σε λίβρες)Siblings
: Αριθμός αδελφώνBirthOrder
: Σειρά γέννησης, 1 = μεγαλύτεροVerbalSAT
: Βαθμολογία στη δοκιμασία Verbal SATMathSAT
: Βαθμολογία στη δοκιμασία Math SATSAT
: Σύνθετη βαθμολογία Verbal + Math SATGPA
: Βαθμός πτυχίουPulse
: Σφυγμός (χτύποι ανά λεπτό)Piercings
: Αριθμός piercing στο σώμα
Ας ρίξουμε μια ματιά στον αριθμό των ωρών που αφιερώνουν στην άσκηση κάθε εβδομάδα οι φοιτητές αυτού του δείγματος.
gf_histogram(~ Exercise, data = StudentSurvey, bins = 8)

1. Γιατί ο μέσος όρος μπορεί να είναι ένα καλό απλό μοντέλο για αυτή την κατανομή;
Σωστή απάντηση: Α - Επειδή ο μέσος όρος είναι ένα μοντέλο που εξισορροπεί τις αποκλίσεις από το μοντέλο και ελαχιστοποιεί το άθροισμα των τετραγωνισμένων υπολοίπων.
Γιατί ο μέσος όρος είναι ένα καλό απλό μοντέλο;
Ο μέσος όρος \(\bar{Y}\) είναι το βέλτιστο απλό μοντέλο (κενό μοντέλο) επειδή:
1. Ελαχιστοποιεί το Άθροισμα των Τετραγώνων των Υπολοίπων (SS):
Για οποιοδήποτε μοντέλο με μία σταθερά:
\[Y_i = b_0 + e_i\]
Το άθροισμα τετραγώνων των υπολοίπων είναι:
\[SS = \sum_{i=1}^{n}(Y_i - b_0)^2\]
Το \(SS\) ελαχιστοποιείται όταν \(b_0 = \bar{Y}\) (ο μέσος όρος).
2. Εξισορροπεί τις αποκλίσεις:
Το άθροισμα των αποκλίσεων από το μέσο όρο είναι πάντα μηδέν:
\[\sum_{i=1}^{n}(Y_i - \bar{Y}) = 0\]
Αυτό σημαίνει ότι: - Οι θετικές αποκλίσεις (τιμές πάνω από το μέσο)
- Εξισορροπούνται ακριβώς από τις αρνητικές αποκλίσεις (τιμές κάτω από το μέσο)
Γιατί οι άλλες είναι λάθος;
Β. “Ο μέσος όρος είναι η μόνη στατιστικά αποδεκτή τιμή του \(b_0\)” - ΛΑΘΟΣ
Ο μέσος όρος δεν είναι η “μόνη” αποδεκτή τιμή
Θα μπορούσαμε να χρησιμοποιήσουμε οποιαδήποτε τιμή ως \(b_0\)
Αλλά ο μέσος όρος είναι η βέλτιστη τιμή (ελαχιστοποιεί SS)
Γ. “Ο μέσος όρος είναι η πιο συχνή τιμή” - ΛΑΘΟΣ
Η πιο συχνή τιμή είναι η επικρατούσα τιμή (mode), όχι ο μέσος όρος
Στην κατανομή της Exercise, η επικρατούσα τιμή φαίνεται να είναι περίπου 5-7 ώρες
Ο μέσος όρος είναι πιθανώς περίπου 10-12 ώρες (μετατοπισμένος δεξιά λόγω της ασυμμετρίας)
Δ. “Σε ασύμμετρες κατανομές, ο μέσος είναι καλύτερος επειδή διαφέρει από τη διάμεσο” - ΛΑΘΟΣ
Αυτό δεν έχει νόημα ως αιτιολογία
Στην πραγματικότητα, σε ασύμμετρες κατανομές, η διάμεσος (median) συχνά προτιμάται
Η διάμεσος είναι πιο ανθεκτική (robust) σε ακραίες τιμές
Συμπέρασμα:
Ο μέσος όρος είναι ένα καλό απλό μοντέλο για την κατανομή της Exercise επειδή:
✓ Ελαχιστοποιεί το άθροισμα των τετραγώνων των υπολοίπων (SS)
✓ Εξισορροπεί τις αποκλίσεις - το άθροισμα των αποκλίσεων είναι μηδέν
✓ Παρέχει μια βέλτιστη σταθερά για να προβλέπουμε την άσκηση χωρίς άλλες μεταβλητές
✓ Είναι η βάση για τη σύγκριση με πιο σύνθετα μοντέλα (PRE, F)
Αυτές οι ιδιότητες κάνουν το μέσο όρο το μαθηματικά βέλτιστο απλό μοντέλο, ανεξάρτητα από το σχήμα της κατανομής (συμμετρική, ασύμμετρη, κλπ.).
2. Αν χρησιμοποιήσουμε αυτόν τον κώδικα για να προσαρμόσουμε το κενό μοντέλο:
Και στη συνέχεια χρησιμοποιήσουμε τη συνάρτηση predict()
για να κάνουμε πρόβλεψη για τον αριθμό ωρών άσκησης την εβδομάδα κάθε φοιτητή, ποια τιμή θα προέβλεπε για κάθε φοιτητή;
Σωστή απάντηση: Α - Η τιμή θα ήταν ο μέσος αριθμός ωρών άσκησης αυτού του δείγματος και θα ήταν η ίδια για κάθε φοιτητή.
Τι είναι το κενό μοντέλο;
Το κενό μοντέλο (empty model ή null model) είναι το απλούστερο μοντέλο που περιλαμβάνει μόνο μία σταθερά:
\[\text{Exercise}_i = b_0 + e_i\]
Όπου: - \(b_0\) = ο σταθερός όρος (intercept)
- \(e_i\) = το υπόλοιπο (residual) για το φοιτητή \(i\)
Στην R:
Exercise ~ NULL
σημαίνει: “προβλέπουμε την Exercise χωρίς ανεξάρτητες μεταβλητές”Αυτό εκτιμά μόνο το \(b_0\), που είναι ο μέσος όρος της Exercise
Τι κάνει η συνάρτηση predict()
;
Η predict()
επιστρέφει τις προβλέψεις του μοντέλου για κάθε παρατήρηση.
Για το κενό μοντέλο:
\[\hat{Y}_i = b_0\]
Επειδή δεν υπάρχουν ανεξάρτητες μεταβλητές, η πρόβλεψη είναι πάντα το \(b_0\) (ο μέσος όρος).
Γιατί οι άλλες είναι λάθος;
Β. “Θα εξαρτιόταν από το πόσο πραγματικά ασκήθηκαν” - ΛΑΘΟΣ
Το κενό μοντέλο ΔΕΝ χρησιμοποιεί καμία πληροφορία για τον συγκεκριμένο φοιτητή
Η πρόβλεψη είναι η ίδια για όλους, ανεξάρτητα από το πόσο πραγματικά ασκούνται
Γ. “Δεν θα μπορούσατε να προσδιορίσετε την τιμή επειδή αναπαρίσταται από το \(b_0\)” - ΛΑΘΟΣ
Μπορούμε εύκολα να προσδιορίσουμε το \(b_0\)!
Το \(b_0\) εκτιμάται από το μοντέλο και είναι ο μέσος όρος της Exercise
Μπορούμε να το δούμε με:
Δ. “Ο μέσος αριθμός ωρών αυτού του φοιτητή εκείνο το έτος” - ΛΑΘΟΣ
Αυτό δεν έχει νόημα - κάθε φοιτητής έχει μία τιμή Exercise στο dataset
Δεν υπάρχει “μέσος αριθμός ωρών για αυτόν τον φοιτητή” - υπάρχει μόνο μία παρατήρηση
Η πρόβλεψη είναι ο μέσος όρος ολόκληρου του δείγματος, όχι ατομικός μέσος
Γιατί όλες οι προβλέψεις είναι ίδιες;
Το κενό μοντέλο:
\[\text{Exercise}_i = b_0\]
Δεν περιλαμβάνει: - Καμία ανεξάρτητη μεταβλητή (π.χ., Gender, Year)
- Καμία πληροφορία για τον συγκεκριμένο φοιτητή
Άρα, η πρόβλεψη είναι: - Η ίδια για όλους
- Βασισμένη μόνο στον συνολικό μέσο όρο
Αναλογία:
Αν ρωτήσετε “Πόσες ώρες ασκείται ένας τυχαίος φοιτητής;” χωρίς να ξέρετε τίποτα για αυτόν, η καλύτερη εικασία σας είναι ο μέσος όρος όλων των φοιτητών.
Σύγκριση με σύνθετο μοντέλο:
Κενό μοντέλο:
- Πρόβλεψη: 9.4 ώρες για όλους
Σύνθετο μοντέλο (με Gender):
Πρόβλεψη για άνδρες: 11.2 ώρες
Πρόβλεψη για γυναίκες: 7.6 ώρες
Το σύνθετο μοντέλο δίνει διαφορετικές προβλέψεις ανάλογα με το Gender!
Υπόλοιπα (Residuals):
Επειδή όλες οι προβλέψεις είναι ίδιες στο κενό μοντέλο:
\[e_i = Y_i - \hat{Y}_i = Y_i - \bar{Y}\]
Συμπέρασμα:
Όταν χρησιμοποιούμε τηνpredict()
με το κενό μοντέλο:
Η τιμή που προβλέπεται είναι:
✓ Ο μέσος αριθμός ωρών άσκησης του δείγματος
✓ Η ίδια για κάθε φοιτητή (περίπου 9.4 ώρες)
✓ Δεν εξαρτάται από χαρακτηριστικά του φοιτητή (Gender, Year, κλπ.)
✓ Δεν εξαρτάται από το πραγματικό Exercise του φοιτητή
Αυτό συμβαίνει επειδή το κενό μοντέλο δεν έχει ανεξάρτητες μεταβλητές - χρησιμοποιεί μόνο τη συνολική μέση τιμή ως πρόβλεψη για όλους!
3. Το να έχεις χαμηλό καρδιακό ρυθμό ηρεμίας (καταγεγραμμένο στη μεταβλητή Pulse
) υποτίθεται ότι είναι ένδειξη καλής καρδιαγγειακής υγείας. Ας υποθέσουμε ότι θέλουμε να δημιουργήσουμε τρεις ομάδες βάσει της Pulse
: low, medium, και high. Ποιος από τους παρακάτω κώδικες θα το έκανε αυτό και θα αποθήκευε τις τιμές σε μια νέα μεταβλητή που ονομάζεται Pulse3Group
;
Σωστή απάντηση: Γ - StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 3)
Τι κάνει η συνάρτηση ntile()
;
Η συνάρτηση ntile()
από το πακέτο dplyr
διαιρεί μια μεταβλητή σε n ομάδες ίσου μεγέθους βάσει εκατοστημορίων.
Σύνταξη:
Όπου: - x
= η μεταβλητή που θέλουμε να διαιρέσουμε σε ομάδες
-
n
= ο αριθμός των ομάδων
Τι επιστρέφει: - Ένα διάνυσμα με αριθμούς 1, 2, …, n που αντιπροσωπεύουν την ομάδα κάθε παρατήρησης
Ανάλυση της σωστής απάντησης:
Τι κάνει αυτός ο κώδικας;
StudentSurvey$Pulse
: Επιλέγει τη μεταβλητήPulse
από το data frameStudentSurvey
-
ntile(..., 3)
: Διαιρεί τοPulse
σε 3 ομάδες:Ομάδα 1: Χαμηλό Pulse (low) - κάτω 33%
Ομάδα 2: Μέτριο Pulse (medium) - μεσαίο 33%
Ομάδα 3: Υψηλό Pulse (high) - πάνω 33%
StudentSurvey$Pulse3Group <-
: Αποθηκεύει το αποτέλεσμα σε μια νέα μεταβλητήPulse3Group
στο data frameStudentSurvey
Γιατί οι άλλες είναι λάθος;
Α. Pulse3Group <- ntile(3)
- ΛΑΘΟΣ
Προβλήματα:
-
Λείπει το πρώτο όρισμα:
Η
ntile()
χρειάζεται 2 ορίσματα: τη μεταβλητή και τον αριθμό ομάδωνΑυτός ο κώδικας δίνει μόνο το
3
-
Δεν αναφέρεται στο πλαίσιο δεδομένων:
Δεν ορίζει πού να αποθηκευτεί η νέα μεταβλητή
Δημιουργεί μεταβλητή στο global environment, όχι στο
StudentSurvey
- Θα δώσει σφάλμα:
Β. StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 2)
- ΛΑΘΟΣ
Πρόβλημα:
Χρησιμοποιεί
n = 2
αντί γιαn = 3
Αυτό δημιουργεί 2 ομάδες (low και high), όχι 3 ομάδες (low, medium, high)
Αποτέλεσμα:
StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 2)
table(StudentSurvey$Pulse3Group)
# 1 2
# 181 181
# Μόνο 2 ομάδες, όχι 3!
Δ. StudentSurvey <- ntile(StudentSurvey$Pulse3Group)
- ΛΑΘΟΣ
Προβλήματα:
-
Λανθασμένη σειρά ορισμάτων:
Προσπαθεί να χρησιμοποιήσει
Pulse3Group
(που δεν υπάρχει ακόμα)Λείπει το δεύτερο όρισμα (αριθμός ομάδων)
-
Αντικαθιστά ολόκληρο το data frame:
StudentSurvey <-
θα αντικαταστήσει ολόκληρο το data frameΘα χάσουμε όλες τις άλλες μεταβλητές!
- Θα δώσει σφάλμα:
StudentSurvey <- ntile(StudentSurvey$Pulse3Group)
# Error: object 'Pulse3Group' not found
# (επειδή δεν υπάρχει ακόμα)
Σύγκριση όλων των επιλογών:
Επιλογή | Κώδικας | Σωστό; | Πρόβλημα |
---|---|---|---|
Α | Pulse3Group <- ntile(3) |
✗ | Λείπει η μεταβλητή x |
Β | StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 2) |
✗ | Δημιουργεί 2 ομάδες, όχι 3 |
Γ | StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 3) |
✓ | Τέλειο! |
Δ | StudentSurvey <- ntile(StudentSurvey$Pulse3Group) |
✗ | Λάθος σύνταξη, αντικαθιστά data frame |
Πλήρες παράδειγμα στο R:
# Φορτώνουμε τα δεδομένα και το dplyr
library(Lock5Data)
library(dplyr)
data(StudentSurvey)
# Δημιουργούμε 3 ομάδες βάσει Pulse
StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 3)
# Ελέγχουμε το αποτέλεσμα
table(StudentSurvey$Pulse3Group)
# 1 2 3
# 121 120 121
# Βλέπουμε το εύρος Pulse σε κάθε ομάδα
StudentSurvey %>%
group_by(Pulse3Group) %>%
summarise(
min_pulse = min(Pulse, na.rm = TRUE),
max_pulse = max(Pulse, na.rm = TRUE),
mean_pulse = mean(Pulse, na.rm = TRUE)
)
Αποτέλεσμα:
Pulse3Group min_pulse max_pulse mean_pulse
1 1 35 64 56.2
2 2 65 75 69.8
3 3 76 130 87.3
Εναλλακτικός τρόπος με ετικέτες:
Αν θέλουμε να χρησιμοποιήσουμε ετικέτες “low”, “medium”, “high” αντί για 1, 2, 3:
# Δημιουργία με αριθμούς
StudentSurvey$Pulse3Group <- ntile(StudentSurvey$Pulse, 3)
# Μετατροπή σε ετικέτες
StudentSurvey$Pulse3Group <- factor(
StudentSurvey$Pulse3Group,
levels = c(1, 2, 3),
labels = c("low", "medium", "high")
)
# Ή όλα μαζί με mutate και case_when:
library(dplyr)
StudentSurvey <- StudentSurvey %>%
mutate(
Pulse3Group = ntile(Pulse, 3),
Pulse3Group = case_when(
Pulse3Group == 1 ~ "low",
Pulse3Group == 2 ~ "medium",
Pulse3Group == 3 ~ "high"
)
)
Σημαντικές παρατηρήσεις:
1. Ίσα μεγέθη ομάδων:
Η
ntile()
προσπαθεί να δημιουργήσει ομάδες με περίπου ίσο πλήθος παρατηρήσεωνΌχι ίσα εύρη τιμών (π.χ., 0-33, 34-66, 67-100)
2. Χειρισμός ισοτιμιών (ties):
- Αν πολλοί φοιτητές έχουν το ίδιο Pulse, μπορεί να μην είναι ακριβώς 1/3 σε κάθε ομάδα
3. Χαμηλό Pulse = Καλή υγεία:
Ομάδα 1 (χαμηλό Pulse) = καλύτερη καρδιαγγειακή υγεία
Ομάδα 3 (υψηλό Pulse) = χειρότερη καρδιαγγειακή υγεία
Συμπέρασμα:
Ο σωστός κώδικας είναι:
Αυτός ο κώδικας:
✓ Επιλέγει τη σωστή μεταβλητή: StudentSurvey$Pulse
✓ Δημιουργεί 3 ομάδες: n = 3
✓ Αποθηκεύει το αποτέλεσμα στη νέα μεταβλητή: StudentSurvey$Pulse3Group
✓ Διατηρεί το data frame StudentSurvey
με όλες τις άλλες μεταβλητές
✓ Δημιουργεί 3 ομάδες περίπου ίσου μεγέθους που αντιπροσωπεύουν low (1), medium (2), και high (3) Pulse
4. Ποια από αυτές τις επιλογές θα μπορούσε να χρησιμοποιηθεί για να απεικονίσει τη σχέση μεταξύ Exercise
και Pulse3Group
;
Σωστή απάντηση: Δ - Όλα τα παραπάνω
Όλες οι τρεις επιλογές μπορούν να απεικονίσουν τη σχέση μεταξύ Exercise
(συνεχής μεταβλητή) και Pulse3Group
(κατηγορική μεταβλητή με 3 επίπεδα).
9.9 Γιατί όλα τα παραπάνω είναι σωστά;
Κοινό χαρακτηριστικό:
Και οι τρεις μέθοδοι:
✓ Απεικονίζουν τη σχέση μεταξύ της Exercise (ποσοτική Y) και της Pulse3Group (ποιοτική X)
✓ Επιτρέπουν σύγκριση των τιμών της Exercise μεταξύ των τριών ομάδων της Pulse
✓ Χρησιμοποιούν τη σωστή σύνταξη της ggformula(): Y ~ X, data = ...
✓ Είναι κατάλληλες για αυτό το είδος δεδομένων (ποσοτική vs ποιοτική)
Διαφορετικές οπτικές γωνίες:
Boxplot: Συνοπτική σύγκριση (καλύτερο για μια γρήγορη σύγκριση)
Ιστόγραμμα: Λεπτομερής κατανομή (καλύτερο για να δούμε το σχήμα της κατανομής)
Διάγραμμα διασποράς: Ατομικά δεδομένα (καλύτερα για ατομικές παρατηρήσεις)
9.10 Πότε να χρησιμοποιήσεις κάθε μέθοδο;
Χρησιμοποίησε Boxplot όταν: - Θέλεις γρήγορη σύγκριση μεταξύ ομάδων
Ενδιαφέρεσαι για διάμεσο και τεταρτημόρια
Θέλεις να εντοπίσεις ακραίες τιμές
Έχεις πολλές ομάδες προς σύγκριση
Χρησιμοποίησε Διαιρεμένο Ιστόγραμμα όταν: - Θέλεις να δεις το σχήμα της κατανομής (συμμετρία, ασυμμετρία)
Ενδιαφέρεσαι για συχνότητες ή πλήθη
Θέλεις να εξετάσεις λεπτομερώς την κατανομή σε κάθε ομάδα
Χρησιμοποίησε Διάγραμμα Διασποράς όταν: - Θέλεις να δεις κάθε ατομική παρατήρηση
Ενδιαφέρεσαι για διασπορά εντός ομάδων
Θέλεις να εντοπίσεις μοτίβα ή συστάδες
Θέλεις να προσθέσεις επιπλέον πληροφορίες (π.χ., χρώμα βάσει Gender)
9.11 Συνδυασμός μεθόδων
Συχνά, η καλύτερη προσέγγιση είναι να χρησιμοποιήσεις πολλαπλές οπτικοποιήσεις:
# Συνδυασμός boxplot + jitter
gf_boxplot(Exercise ~ Pulse3Group, data = StudentSurvey,
fill = "lightblue", alpha = 0.5) %>%
gf_jitter(width = 0.1, height = 0, alpha = 0.3)
Αυτό δίνει: - Συνοπτική πληροφορία (από το boxplot)
- Ατομικά δεδομένα (από τα σημεία)
9.12 Συμπέρασμα
Όλες οι τρεις μέθοδοι είναι σωστές για την αναπαράσταση της σχέσης μεταξύ της Exercise και της Pulse3Group:
✓ Boxplot - Συνοπτική, εύκολη σύγκριση
✓ Διαιρεμένο Ιστόγραμμα - Λεπτομερής κατανομή
✓ Διάγραμμα Διασποράς - Ατομικές παρατηρήσεις
Η επιλογή εξαρτάται από: - Το ερώτημα που θέλεις να απαντήσεις
Το κοινό που απευθύνεσαι
Το επίπεδο λεπτομέρειας που χρειάζεσαι
Συνήθως, η χρήση πολλαπλών οπτικοποιήσεων παρέχει την πιο πλήρη εικόνα των δεδομένων!
5. Πρόκειται να προσπαθήσουμε να εξηγήσουμε τη μεταβλητότητας στις ώρες άσκησης την εβδομάδα (Exercise
) με την καρδιαγγειακή υγεία (Pulse3Group
).
Υποθέτουμε ότι το μοντέλο μας είναι το εξής:
Exercise = Pulse3Group + άλλα πράγματα
Αν γράψουμε το μοντέλο σε σημειογραφία GLM, ποια εξίσωση αντιπροσωπεύει αυτό το μοντέλο της Pulse3Group
;
Σωστή απάντηση: Γ - \(Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\)
Κατανόηση του προβλήματος:
Έχουμε: - Εξαρτημένη μεταβλητή (Y): Exercise
(ποσοτική)
-
Ανεξάρτητη μεταβλητή (X):
Pulse3Group
(ποιοτική με 3 κατηγορίες: Low, Medium, High)
Πρόβλημα: Πώς εκφράζουμε μια ποιοτική μεταβλητή με 3 επίπεδα σε GLM σημειογραφία;
9.13 Κωδικοποίηση ποιοτικής μεταβλητής με 3 επίπεδα
Μια κατηγορική μεταβλητή με k επίπεδα χρειάζεται k - 1 ψευδομεταβλητές (dummy variables).
Για Pulse3Group
με 3 επίπεδα: - Χρειαζόμαστε 3 - 1 = 2 ψευδομεταβλητές
Κωδικοποίηση:
Ας υποθέσουμε ότι η ομάδα αναφοράς είναι “Low” (Pulse3Group = 1):
Pulse3Group | \(X_{1i}\) | \(X_{2i}\) | Περιγραφή |
---|---|---|---|
Low (1) | 0 | 0 | Ομάδα αναφοράς |
Medium (2) | 1 | 0 | \(X_1\) = 1 για Medium |
High (3) | 0 | 1 | \(X_2\) = 1 για High |
Μοντέλο GLM:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Όπου: - \(Y_i\) = Exercise
για φοιτητή \(i\)
\(X_{1i}\) = 1 αν Medium, 0 αλλιώς
\(X_{2i}\) = 1 αν High, 0 αλλιώς
\(b_0\) = Μέσος όρος Exercise για Low (ομάδα αναφοράς)
\(b_1\) = Διαφορά: Medium - Low
\(b_2\) = Διαφορά: High - Low
\(e_i\) = Υπόλοιπο (residual)
9.14 Πώς λειτουργεί το μοντέλο για κάθε ομάδα;
Για Low Pulse (ομάδα αναφοράς):
\(X_{1i} = 0\), \(X_{2i} = 0\)
\[Y_i = b_0 + b_1(0) + b_2(0) + e_i = b_0 + e_i\]
\[E[Y_i | \text{Low}] = b_0\]
Για Medium Pulse:
\(X_{1i} = 1\), \(X_{2i} = 0\)
\[Y_i = b_0 + b_1(1) + b_2(0) + e_i = b_0 + b_1 + e_i\]
\[E[Y_i | \text{Medium}] = b_0 + b_1\]
Για High Pulse:
\(X_{1i} = 0\), \(X_{2i} = 1\)
\[Y_i = b_0 + b_1(0) + b_2(1) + e_i = b_0 + b_2 + e_i\]
\[E[Y_i | \text{High}] = b_0 + b_2\]
9.15 Ερμηνεία των παραμέτρων
Παράμετρος | Τι αντιπροσωπεύει | Ερμηνεία |
---|---|---|
\(b_0\) | Μέσο Exercise για Low | Baseline (π.χ., 12 ώρες/εβδομάδα) |
\(b_1\) | Διαφορά Medium - Low | Πόσο περισσότερο/λιγότερο ασκούνται οι Medium (π.χ., -2 ώρες) |
\(b_2\) | Διαφορά High - Low | Πόσο περισσότερο/λιγότερο ασκούνται οι High (π.χ., -4 ώρες) |
Παράδειγμα αποτελεσμάτων:
lm(Exercise ~ Pulse3Group, data = StudentSurvey)
Coefficients:
Estimate
(Intercept) 12.00 # b₀: Μέσο για Low
Pulse3GroupMedium -2.00 # b₁: Medium - Low
Pulse3GroupHigh -4.00 # b₂: High - Low
Ερμηνεία: - Low Pulse: Μέσο Exercise = 12.00 ώρες
Medium Pulse: Μέσο Exercise = 12.00 - 2.00 = 10.00 ώρες
High Pulse: Μέσο Exercise = 12.00 - 4.00 = 8.00 ώρες
9.16 Γιατί οι άλλες είναι λάθος;
Α. \(Y_i = b_0 + e_i\) - ΛΑΘΟΣ
Αυτό είναι το κενό μοντέλο (empty model)
Δεν περιλαμβάνει καμία ανεξάρτητη μεταβλητή
Δεν εξηγεί τη διακύμανση με το Pulse3Group
Σε R:
Β. \(Y_i = b_0 + b_1X_i + e_i\) - ΛΑΘΟΣ
Αυτό είναι για μια ανεξάρτητη μεταβλητή με 2 επίπεδα (μία ψευδομεταβλητή)
Το Pulse3Group έχει 3 επίπεδα, όχι 2
Χρειαζόμαστε 2 ψευδομεταβλητές, όχι 1
Παράδειγμα με 2 επίπεδα:
# Αν είχαμε μόνο 2 ομάδες (π.χ., Low vs High):
lm(Exercise ~ Gender, data = StudentSurvey) # M vs F (2 επίπεδα)
# Μοντέλο: Y = b₀ + b₁X₁ + e
Δ. \(\text{Pulse3Group}_i = b_0 + b_1\text{Exercise}_i + e_i\) - ΛΑΘΟΣ
Προβλήματα:
-
Λάθος εξαρτημένη μεταβλητή:
Το μοντέλο προβλέπει
Pulse3Group
(ποιοτική), όχιExercise
(ποσοτική)Θέλουμε να εξηγήσουμε την Exercise, όχι το Pulse3Group
-
Λάθος κατεύθυνση:
Η ερώτηση λέει: “εξηγούμε την Exercise με Pulse3Group”
Αυτό το μοντέλο κάνει το αντίθετο
9.17 Γενική εξίσωση για k επίπεδα
Για ποιοτική μεταβλητή με k επίπεδα:
Αριθμός ψευδομεταβλητών: k - 1
Μοντέλο GLM:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + \cdots + b_{k-1}X_{(k-1)i} + e_i\]
Παραδείγματα:
Αριθμός επιπέδων (k) | Ψευδομεταβλητές (k-1) | Μοντέλο |
---|---|---|
2 | 1 | \(Y_i = b_0 + b_1X_{1i} + e_i\) |
3 | 2 | \(Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\) |
4 | 3 | \(Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + b_3X_{3i} + e_i\) |
Συμπέρασμα: Φοιτητές με χαμηλότερο καρδιακό ρυθμό (καλύτερη καρδιαγγειακή υγεία) τείνουν να ασκούνται περισσότερο!
9.18 Επαλήθευση των μέσων όρων
# Υπολογισμός μέσων όρων ανά ομάδα
StudentSurvey %>%
group_by(Pulse3Group) %>%
summarise(mean_exercise = mean(Exercise, na.rm = TRUE))
Pulse3Group mean_exercise
1 Low 11.35 ← b₀
2 Medium 9.38 ← b₀ + b₁
3 High 8.66 ← b₀ + b₂
Οι εκτιμήσεις του μοντέλου ταιριάζουν ακριβώς με τους μέσους όρους των ομάδων! ✓
9.19 Συμπέρασμα
Για να εξηγήσουμε την Exercise
με την Pulse3Group
(3 επίπεδα), το σωστό μοντέλο GLM είναι:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Επειδή:
✓ Το Pulse3Group
έχει 3 επίπεδα → χρειαζόμαστε 2 ψευδομεταβλητές
✓ \(X_{1i}\) = 1 για Medium, 0 αλλιώς
✓ \(X_{2i}\) = 1 για High, 0 αλλιώς
✓ \(b_0\) = μέσο για Low (ομάδα αναφοράς)
✓ \(b_1\) = διαφορά Medium - Low
✓ \(b_2\) = διαφορά High - Low
✓ Το μοντέλο εξηγεί τη μεταβλητότητα της Exercise με βάση την καρδιαγγειακή υγεία
6. Πρόκειται να προσπαθήσουμε να εξηγήσουμε τη μεταβλητότητα στις ώρες άσκησης ανά εβδομάδα (Exercise
) με την καρδιαγγειακή υγεία (Pulse3Group
).
Υποθέτουμε ότι το μοντέλο μας είναι το εξής:
Exercise = Pulse3Group + άλλα πράγματα
Αν γράψουμε το μοντέλο σε σημειογραφία GLM, τι αντιπροσωπεύει το \(Y_i\);
Σωστή απάντηση: Α - Η τιμή της Exercise
για κάθε άτομο
Το Μοντέλο GLM:
Για το μοντέλο Exercise ~ Pulse3Group
, η σημειογραφία GLM είναι:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Τι αντιπροσωπεύει το \(Y_i\);
Το \(Y_i\) είναι η παρατηρούμενη τιμή της εξαρτημένης μεταβλητής για το άτομο \(i\).
Στο πλαίσιο μας:
\[Y_i = \text{Exercise}_i\]
«Το \(Y_i\) είναι ο πραγματικός αριθμός ωρών άσκησης την εβδομάδα για τον φοιτητή \(i\).»
9.20 Ανατομία του μοντέλου GLM
Το πλήρες μοντέλο:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Κάθε όρος:
Σύμβολο | Τι αντιπροσωπεύει | Παράδειγμα |
---|---|---|
\(Y_i\) | Παρατηρούμενη τιμή της Exercise για άτομο \(i\) | 10 ώρες |
\(b_0\) | Μέσο Exercise για ομάδα αναφοράς (Low) | 11.35 ώρες |
\(b_1\) | Διαφορά Medium - Low | -1.97 ώρες |
\(X_{1i}\) | 1 αν άτομο \(i\) είναι Medium, 0 αλλιώς | 0 ή 1 |
\(b_2\) | Διαφορά High - Low | -2.69 ώρες |
\(X_{2i}\) | 1 αν άτομο \(i\) είναι High, 0 αλλιώς | 0 ή 1 |
\(e_i\) | Υπόλοιπο (residual) για άτομο \(i\) | -1.35 ώρες |
9.21 Γιατί οι άλλες είναι λάθος;
Β. “Ο μέσος όρος της Exercise για όλους τους συμμετέχοντες” - ΛΑΘΟΣ
- Ο μέσος όρος όλων των συμμετεχόντων συμβολίζεται με \(\bar{Y}\), όχι \(Y_i\)
Διαφορά:
Σύμβολο | Τι είναι | Τιμή | Σημείωση |
---|---|---|---|
\(Y_i\) | Ατομική τιμή | Διαφορετική για κάθε \(i\) | Π.χ., \(Y_1=10\), \(Y_2=4\) |
\(\bar{Y}\) | Μέσος όρος όλων | Μία τιμή για όλους | Π.χ., \(\bar{Y}=9.4\) |
Γ. “Η απόκλιση μεταξύ της Exercise κάθε ατόμου και του μέσου όρου της Exercise” - ΛΑΘΟΣ
- Το υπόλοιπο συμβολίζεται με \(e_i\), όχι \(Y_i\)
Δ. “Μπορεί να είναι οποιοδήποτε από τα παραπάνω” - ΛΑΘΟΣ
Το \(Y_i\) έχει μία και μόνη ερμηνεία στη σημειογραφία GLM
Πάντα αντιπροσωπεύει την παρατηρούμενη τιμή της εξαρτημένης μεταβλητής
Δεν αλλάζει ανάλογα με το πλαίσιο ή την ερμηνεία
9.22 Σύγκριση συμβολισμών
Σύμβολο | Όνομα | Τι αντιπροσωπεύει | Μία τιμή ή πολλές; |
---|---|---|---|
\(Y_i\) | Παρατηρούμενη τιμή | Πραγματική τιμή Exercise ατόμου \(i\) | Πολλές (μία για κάθε \(i\)) |
\(\bar{Y}\) | Μέσος όρος | Μέσος όρος Exercise όλων | Μία |
\(\hat{Y}_i\) | Τιμή πρόβλεψης | Πρόβλεψη μοντέλου για άτομο \(i\) | Πολλές (μία για κάθε \(i\)) |
\(e_i\) | Υπόλοιπο | Σφάλμα πρόβλεψης | Πολλές (μία για κάθε \(i\)) |
\(b_0, b_1, b_2\) | Παράμετροι | Συντελεστές μοντέλου | Μία κάθε |
9.23 Συμπέρασμα
Στο μοντέλο GLM:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Το \(Y_i\) αντιπροσωπεύει:
Την παρατηρούμενη τιμή της
Exercise
για το άτομο \(i\)
Αυτό σημαίνει:
✓ Είναι η πραγματική μέτρηση από τα δεδομένα
✓ Είναι διαφορετική για κάθε άτομο
✓ Είναι το αριστερό μέρος της εξίσωσης - αυτό που προσπαθούμε να εξηγήσουμε
✓ Για παράδειγμα: \(Y_1 = 10\) σημαίνει “ο φοιτητής 1 ασκείται 10 ώρες την εβδομάδα”
Αυτή είναι η μόνη σωστή ερμηνεία του \(Y_i\) στη σημειογραφία GLM - δεν αλλάζει ανάλογα με το πλαίσιο!
7. Ορίστε μια απεικόνιση της σχέσης μεταξύ τηςExercise
και της Pulse3Group
.
Όταν η Pulse3Group
συμπεριλαμβάνεται ως ανεξάρτητη μεταβλητή στο μοντέλο μας για την Exercise
, παίρνουμε τα παρακάτω αποτελέσματα από την lm(Exercise ~ Pulse3Group, data = StudentSurvey)
:
Call:
lm(formula = Exercise ~ Pulse3Group, data = StudentSurvey)
Coefficients:
(Intercept) Pulse3Groupmed Pulse3Grouphigh
10.3802 -0.8468 -3.1427
Ερμηνεύστε την τιμή -3.14.
Σωστή απάντηση: Α - Αυτό αντιπροσωπεύει τη διαφορά στον μέσο αριθμό ωρών άσκησης για άτομα στην ομάδα υψηλού παλμού σε σχέση με την ομάδα χαμηλού παλμού.
Ανάλυση του μοντέλου:
Coefficients:
(Intercept) Pulse3Groupmed Pulse3Grouphigh
10.3802 -0.8468 -3.1427
Μοντέλο GLM:
\[\text{Exercise}_i = b_0 + b_1 \cdot \text{Medium}_i + b_2 \cdot \text{High}_i + e_i\]
Όπου: - \(b_0 = 10.38\) = Μέσο Exercise για low (ομάδα αναφοράς)
\(b_1 = -0.85\) = Διαφορά: medium - low
\(b_2 = -3.14\) = Διαφορά: high - low ← ΑΥΤΟ ΕΡΜΗΝΕΥΟΥΜΕ
9.24 Τι σημαίνει το \(b_2 = -3.14\);
Το \(b_2 = -3.14\) είναι ο συντελεστής για το Pulse3Grouphigh
.
Ερμηνεία: Άτομα στην ομάδα high pulse ασκούνται κατά μέσο όρο 3.14 ώρες λιγότερο την εβδομάδα σε σχέση με άτομα στην ομάδα low pulse (ομάδα αναφοράς).
Με άλλα λόγια:
\[E[\text{Exercise} | \text{High}] - E[\text{Exercise} | \text{Low}] = -3.14\]
9.25 Υπολογισμός μέσων όρων για κάθε ομάδα
Low Pulse (ομάδα αναφοράς):
\[E[\text{Exercise} | \text{Low}] = b_0 = 10.38 \text{ ώρες}\]
Medium Pulse:
\[E[\text{Exercise} | \text{Medium}] = b_0 + b_1 = 10.38 + (-0.85) = 9.53 \text{ ώρες}\]
High Pulse:
\[E[\text{Exercise} | \text{High}] = b_0 + b_2 = 10.38 + (-3.14) = 7.24 \text{ ώρες}\]
9.26 Επαλήθευση της ερμηνείας
Διαφορά High - Low:
\[7.24 - 10.38 = -3.14\] ✓
Αυτό επιβεβαιώνει ότι το \(b_2 = -3.14\) είναι η διαφορά μεταξύ high και low!
9.27 Οπτικοποίηση
Μέσος Exercise (ώρες/εβδομάδα)
↑
12 │
│
10 │ ●━━━━━ 10.38 (Low = b₀)
│ ↘
8 │ ●━━━━━ 9.53 (Med = b₀ + b₁)
│ ↘
6 │ ●━━━━━ 7.24 (High = b₀ + b₂)
│
4 │
└────────┴─────────┴─────────→ Pulse3Group
Low Medium High
Διαφορές:
Medium - Low: 9.53 - 10.38 = -0.85 (b₁)
High - Low: 7.24 - 10.38 = -3.14 (b₂) ← ΑΥΤΟ!
9.28 Γιατί οι άλλες είναι λάθος;
Β. “Ο μέσος αριθμός ωρών άσκησης για την ομάδα υψηλού παλμού” - ΛΑΘΟΣ
Ο μέσος για high pulse είναι: \(b_0 + b_2 = 10.38 + (-3.14) = **7.24 ώρες**\)
Το \(b_2 = -3.14\) μόνο του δεν είναι ο μέσος - είναι η διαφορά
Σύγκριση:
Τι | Τιμή | Τι αντιπροσωπεύει |
---|---|---|
\(b_2\) | -3.14 | Διαφορά (High - Low) |
\(b_0 + b_2\) | 7.24 | Μέσος για High |
Γ. “Ο αριθμός των ατόμων που έχουν υψηλό καρδιακό ρυθμό” - ΛΑΘΟΣ
Οι συντελεστές του μοντέλου αφορούν ώρες άσκησης, όχι πλήθος ατόμων
Ο αριθμός ατόμων στην ομάδα high είναι περίπου 121 (1/3 των 362)
Το -3.14 δεν έχει καμία σχέση με το πλήθος
Αν θέλαμε το πλήθος:
Δ. “Η διαφορά σε σχέση με την ομάδα μέτριου παλμού” - ΛΑΘΟΣ
- Το \(b_2 = -3.14\) αντιπροσωπεύει τη διαφορά High - Low, όχι High - Medium
Υπολογισμός High - Medium:
\[E[\text{Exercise} | \text{High}] - E[\text{Exercise} | \text{Medium}]\]
\[= (b_0 + b_2) - (b_0 + b_1)\]
\[= b_2 - b_1\]
\[= -3.14 - (-0.85)\]
\[= -3.14 + 0.85\]
\[= -2.29 \text{ ώρες}\]
Η διαφορά High - Medium είναι -2.29 ώρες, όχι -3.14!
9.29 Πίνακας όλων των διαφορών
Σύγκριση | Φόρμουλα | Υπολογισμός | Τιμή |
---|---|---|---|
Medium - Low | \(b_1\) | \(-0.85\) | -0.85 ώρες |
High - Low | \(b_2\) | \(-3.14\) | -3.14 ώρες ← ΑΥΤΟ! |
High - Medium | \(b_2 - b_1\) | \(-3.14 - (-0.85)\) | -2.29 ώρες |
9.30 Σύνδεση με τα ιστογράμματα
Από τα ιστογράμματα που δίνονται:
Παρατηρήσεις:
Low pulse: Κατανομή με κέντρο περίπου στις 10 ώρες (ταιριάζει με \(b_0 = 10.38\))
Medium pulse: Κατανομή ελαφρώς αριστερά από το low, περίπου στις 9-10 ώρες (ταιριάζει με 9.53)
High pulse: Κατανομή πιο αριστερά, περίπου στις 7-8 ώρες (ταιριάζει με 7.24)
Σύγκριση κορυφών:
Low: |──── κορυφή ~10 ωρών
Medium: |─── κορυφή ~8-9 ωρών
High: |── κορυφή ~6-7 ωρών
Διαφορά Low → High: περίπου -3 ώρες ✓
9.31 Πλήρης ερμηνεία του μοντέλου
Exercise_i = 10.38 - 0.85·Medium_i - 3.14·High_i + e_i
Ερμηνείες:
\(b_0 = 10.38\): > «Άτομα με χαμηλό καρδιακό ρυθμό (καλή καρδιαγγειακή υγεία) ασκούνται κατά μέσο όρο 10.38 ώρες την εβδομάδα.»
\(b_1 = -0.85\): > «Άτομα με μέτριο καρδιακό ρυθμό ασκούνται κατά μέσο όρο 0.85 ώρες λιγότερο την εβδομάδα σε σχέση με άτομα με χαμηλό καρδιακό ρυθμό.»
\(b_2 = -3.14\): ← ΑΥΤΟ ΕΡΜΗΝΕΥΟΥΜΕ > «Άτομα με υψηλό καρδιακό ρυθμό (χειρότερη καρδιαγγειακή υγεία) ασκούνται κατά μέσο όρο 3.14 ώρες λιγότερο την εβδομάδα σε σχέση με άτομα με χαμηλό καρδιακό ρυθμό.»
9.32 Επαλήθευση με R
# Μέσοι όροι ανά ομάδα
StudentSurvey %>%
group_by(Pulse3Group) %>%
summarise(mean_exercise = mean(Exercise, na.rm = TRUE))
Pulse3Group mean_exercise
1 low 10.38 ← b₀
2 med 9.53 ← b₀ + b₁ = 10.38 - 0.85
3 high 7.24 ← b₀ + b₂ = 10.38 - 3.14
Υπολογισμός διαφορών:
# Διαφορά High - Low
7.24 - 10.38
# [1] -3.14 ✓
# Επιβεβαίωση από συντελεστές
coef(pulse_model)["Pulse3Grouphigh"]
# Pulse3Grouphigh
# -3.1427 ✓
9.33 Ουσιαστική ερμηνεία
Τι μας λέει το \(b_2 = -3.14\);
Κατεύθυνση: Το αρνητικό πρόσημο σημαίνει ότι η ομάδα high pulse ασκείται λιγότερο
Μέγεθος: Η διαφορά είναι 3.14 ώρες - αρκετά μεγάλη (περίπου 30% μείωση)
Σύγκριση: Η διαφορά είναι σε σχέση με την ομάδα αναφοράς (low pulse)
-
Αιτία; Πιθανώς:
Άτομα που ασκούνται περισσότερο έχουν χαμηλότερο καρδιακό ρυθμό (καλύτερη φυσική κατάσταση)
Ή άτομα με χαμηλό καρδιακό ρυθμό είναι πιο πιθανό να ασκούνται
(Το μοντέλο δεν αποδεικνύει αιτιότητα!)
9.34 Συμπέρασμα
Το \(b_2 = -3.14\) (συντελεστής του Pulse3Grouphigh
) ερμηνεύεται ως:
«Η διαφορά στον μέσο αριθμό ωρών άσκησης για άτομα στην ομάδα υψηλού παλμού σε σχέση με την ομάδα χαμηλού παλμού.»
Συγκεκριμένα:
✓ Άτομα με high pulse ασκούνται κατά μέσο όρο 3.14 ώρες λιγότερο την εβδομάδα
✓ Η σύγκριση είναι με την ομάδα αναφοράς (low pulse)
✓ Αυτό είναι μια διαφορά μέσων, όχι ο ίδιος ο μέσος
✓ Το αρνητικό πρόσημο δείχνει ότι η ομάδα high pulse έχει χαμηλότερο μέσο Exercise
✓ Αυτό ταιριάζει με την ιδέα ότι καλύτερη καρδιαγγειακή υγεία (χαμηλότερος παλμός) σχετίζεται με περισσότερη άσκηση
8. Στην εξίσωση \(Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\), τι αντιπροσωπεύει το \(X_{1i}\);
Σωστή απάντηση: Β - Αν κάποιος ανήκει στην ομάδα μέτριου παλμού (medium pulse group) ή όχι
Ανάλυση του μοντέλου:
\[Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\]
Αυτό είναι ένα μοντέλο με κατηγορική μεταβλητή 3 επιπέδων (Pulse3Group
), που κωδικοποιείται με 2 ψευδομεταβλητές (dummy variables).
9.35 Τι είναι το \(X_{1i}\);
Το \(X_{1i}\) είναι μια ψευδομεταβλητή (dummy variable ή indicator variable) που:
Παίρνει την τιμή 1 αν το άτομο \(i\) ανήκει στην ομάδα MEDIUM pulse, και 0 αλλιώς.
Μαθηματικά:
\[X_{1i} = \begin{cases} 1 & \text{αν το άτομο } i \text{ έχει Medium pulse} \\ 0 & \text{αν το άτομο } i \text{ ΔΕΝ έχει Medium pulse} \end{cases}\]
9.36 Πλήρης κωδικοποίηση
Για την κατηγορική μεταβλητή Pulse3Group
με 3 επίπεδα (Low, Medium, High):
Pulse3Group | \(X_{1i}\) | \(X_{2i}\) | Περιγραφή |
---|---|---|---|
Low | 0 | 0 | Ομάδα αναφοράς |
Medium | 1 | 0 | \(X_{1i} = 1\) για Medium ← ΑΥΤΟ! |
High | 0 | 1 | \(X_{2i} = 1\) για High |
Ερμηνεία:
\(X_{1i}\) “ενεργοποιείται” (= 1) μόνο όταν το άτομο είναι στην ομάδα Medium
\(X_{2i}\) “ενεργοποιείται” (= 1) μόνο όταν το άτομο είναι στην ομάδα High
Όταν και τα δύο είναι 0, το άτομο ανήκει στην ομάδα αναφοράς (Low)
9.37 Παραδείγματα
Άτομο 1: Low Pulse
Pulse3Group = Low
\(X_{11} = 0\) (δεν είναι Medium)
\(X_{21} = 0\) (δεν είναι High)
\[Y_1 = 10.38 - 0.85(0) - 3.14(0) + e_1 = 10.38 + e_1\]
Άτομο 2: Medium Pulse
Pulse3Group = Medium
\(X_{12} = 1\) ← Το άτομο ΕΙΝΑΙ στην ομάδα Medium!
\(X_{22} = 0\) (δεν είναι High)
\[Y_2 = 10.38 - 0.85(1) - 3.14(0) + e_2 = 10.38 - 0.85 + e_2 = 9.53 + e_2\]
Άτομο 3: High Pulse
Pulse3Group = High
\(X_{13} = 0\) (δεν είναι Medium)
\(X_{23} = 1\) (είναι High)
\[Y_3 = 10.38 - 0.85(0) - 3.14(1) + e_3 = 10.38 - 3.14 + e_3 = 7.24 + e_3\]
9.38 Γιατί οι άλλες είναι λάθος;
Α. “Το intercept για το Pulse3Groupmed” - ΛΑΘΟΣ
Το intercept είναι το \(b_0 = 10.38\), όχι το \(X_{1i}\)
Το \(X_{1i}\) είναι μια μεταβλητή (δεδομένα), όχι μια παράμετρος (συντελεστής)
Διαφορά:
Σύμβολο | Τι είναι | Τύπος |
---|---|---|
\(b_0 = 10.38\) | Intercept | Παράμετρος (εκτιμάται από δεδομένα) |
\(X_{1i}\) | Ψευδομεταβλητή Medium | Δεδομένα (0 ή 1 για κάθε άτομο) |
Γ. “Ο αριθμός των μελών στην ομάδα μέτριου παλμού” - ΛΑΘΟΣ
Το \(X_{1i}\) παίρνει τιμές 0 ή 1, όχι τον αριθμό μελών
Ο αριθμός μελών είναι σταθερός για το δείγμα (π.χ., 120 άτομα)
Το \(X_{1i}\) διαφέρει για κάθε άτομο \(i\)
Παράδειγμα:
# Αριθμός μελών σε κάθε ομάδα
table(StudentSurvey$Pulse3Group)
# low med high
# 121 120 121
# Οι τιμές του X₁ᵢ για κάθε άτομο
X1 <- ifelse(StudentSurvey$Pulse3Group == "med", 1, 0)
X1[1:10]
# [1] 0 0 1 0 0 1 0 1 0 0 ← Διαφέρει για κάθε άτομο!
Δ. “Αν κάποιος ανήκει στην ομάδα low ή medium ή high” - ΛΑΘΟΣ
Αυτό περιγράφει την αρχική κατηγορική μεταβλητή
Pulse3Group
, όχι το \(X_{1i}\)Το \(X_{1i}\) μόνο δείχνει αν κάποιος είναι στην ομάδα Medium
Για να κωδικοποιήσουμε και τα 3 επίπεδα, χρειαζόμαστε και τις δύο ψευδομεταβλητές (\(X_{1i}\) και \(X_{2i}\) μαζί)
Σύγκριση:
Τι | Τιμές | Τι δείχνει |
---|---|---|
Pulse3Group |
Low, Med, High | Όλες τις 3 ομάδες |
\(X_{1i}\) | 0, 1 | Μόνο Medium (ναι/όχι) |
\(X_{2i}\) | 0, 1 | Μόνο High (ναι/όχι) |
\((X_{1i}, X_{2i})\) μαζί | (0,0), (1,0), (0,1) | Όλες τις 3 ομάδες |
9.39 Οπτικοποίηση της κωδικοποίησης
ΠΟΙΟΤΙΚΗ ΜΕΤΑΒΛΗΤΗ → ΨΕΥΔΟΜΕΤΑΒΛΗΤΕΣ
Pulse3Group X₁ᵢ (Medium;) X₂ᵢ (High;)
──────────── ───────────── ───────────
Low → 0 0
Medium → 1 ← 0 ΑΥΤΟ είναι το X₁ᵢ!
High → 0 1
X₁ᵢ = 1: "Ναι, είναι Medium"
X₁ᵢ = 0: "Όχι, δεν είναι Medium"
9.40 Πώς λειτουργεί στην πράξη
Στο R:
# Το R δημιουργεί αυτόματα τις ψευδομεταβλητές
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
# Βλέπουμε τη μήτρα σχεδίου (design matrix)
model.matrix(pulse_model)[1:5, ]
(Intercept) Pulse3Groupmed Pulse3Grouphigh
1 1 0 0 ← Low
2 1 0 1 ← High
3 1 1 0 ← Medium (X₁=1!)
4 1 0 1 ← High
5 1 1 0 ← Medium (X₁=1!)
↑ ↑ ↑
b₀ X₁ᵢ X₂ᵢ
9.41 Σύνδεση με τους συντελεστές
Μοντέλο:
\[Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\]
Τι σημαίνει ο συντελεστής \(-0.85\);
Είναι ο συντελεστής που πολλαπλασιάζει το \(X_{1i}\)
Όταν \(X_{1i} = 1\) (άτομο στην Medium), προσθέτουμε \(-0.85\) στο intercept
Όταν \(X_{1i} = 0\) (άτομο ΔΕΝ είναι στην Medium), δεν προσθέτουμε τίποτα
Παράδειγμα:
Άτομο στην Medium:
Y = 10.38 - 0.85(1) - 3.14(0) = 9.53
↑
Επειδή X₁ᵢ = 1
Άτομο στην Low:
Y = 10.38 - 0.85(0) - 3.14(0) = 10.38
↑
Επειδή X₁ᵢ = 0
9.42 Γενική αρχή ψευδομεταβλητών
Για κατηγορική μεταβλητή με k επίπεδα:
Χρειαζόμαστε k - 1 ψευδομεταβλητές
Κάθε ψευδομεταβλητή δείχνει ένα επίπεδο (εκτός από την ομάδα αναφοράς)
Κάθε ψευδομεταβλητή παίρνει τιμές 0 ή 1
Για το Pulse3Group (k = 3):
Χρειαζόμαστε 3 - 1 = 2 ψευδομεταβλητές
\(X_{1i}\) = Indicator για Medium
\(X_{2i}\) = Indicator για High
Low είναι η ομάδα αναφοράς (όταν και τα δύο = 0)
9.43 Συμπέρασμα
Στην εξίσωση:
\[Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\]
Το \(X_{1i}\) αντιπροσωπεύει:
«Αν το άτομο \(i\) ανήκει στην ομάδα μέτριου παλμού (Medium pulse group) ή όχι»
Συγκεκριμένα:
✓ Είναι μια ψευδομεταβλητή (dummy variable)
✓ Παίρνει την τιμή 1 αν το άτομο είναι στην ομάδα Medium
✓ Παίρνει την τιμή 0 αν το άτομο είναι στην ομάδα Low ή High
✓ “Ενεργοποιεί” τον συντελεστή \(-0.85\) όταν = 1
✓ Είναι δεδομένα (διαφέρει για κάθε άτομο), όχι παράμετρος
✓ Μαζί με το \(X_{2i}\), κωδικοποιεί πλήρως την κατηγορική μεταβλητή Pulse3Group
9. Όταν η Pulse3Group
συμπεριλαμβάνεται στο μοντέλο μας για να εξηγήσει τη μεταβλητότητα στην Exercise
, πώς υπολογίζεται το σφάλμα από αυτό το πιο σύνθετο μοντέλο;
Σωστή απάντηση: Β - Η απόκλιση του Exercise
κάθε ατόμου από το μέσο Exercise
της ομάδας Pulse3Group
στην οποία ανήκει
Το σύνθετο μοντέλο:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Πώς υπολογίζεται το σφάλμα (error/residual);
Το υπόλοιπο (residual) για κάθε άτομο είναι:
\[e_i = Y_i - \hat{Y}_i\]
Όπου: - \(Y_i\) = Παρατηρούμενη τιμή Exercise για άτομο \(i\)
- \(\hat{Y}_i\) = Προβλεπόμενη τιμή από το μοντέλο
Τι προβλέπει το μοντέλο;
Το μοντέλο προβλέπει τον μέσο όρο της ομάδας στην οποία ανήκει το άτομο:
\[\hat{Y}_i = \bar{Y}_{\text{group}[i]}\]
Δηλαδή: - Αν άτομο \(i\) είναι Low → \(\hat{Y}_i = \bar{Y}_{\text{Low}}\)
Αν άτομο \(i\) είναι Medium → \(\hat{Y}_i = \bar{Y}_{\text{Medium}}\)
Αν άτομο \(i\) είναι High → \(\hat{Y}_i = \bar{Y}_{\text{High}}\)
Άρα, το σφάλμα είναι:
\[e_i = Y_i - \bar{Y}_{\text{group}[i]}\]
«Η απόκλιση του Exercise του ατόμου από το μέσο Exercise της ομάδας του»
9.44 Παράδειγμα
Μέσοι όροι ανά ομάδα (από το μοντέλο):
Ομάδα | Μέσος Exercise (\(\bar{Y}_{\text{group}}\)) |
---|---|
Low | 10.38 ώρες |
Medium | 9.53 ώρες |
High | 7.24 ώρες |
Άτομο 1: Low pulse, Exercise = 12 ώρες
Παρατηρούμενο: \(Y_1 = 12\)
Προβλεπόμενο: \(\hat{Y}_1 = \bar{Y}_{\text{Low}} = 10.38\)
Υπόλοιπο: \(e_1 = 12 - 10.38 = 1.62\) ώρες
Άτομο 2: Medium pulse, Exercise = 8 ώρες
Παρατηρούμενο: \(Y_2 = 8\)
Προβλεπόμενο: \(\hat{Y}_2 = \bar{Y}_{\text{Medium}} = 9.53\)
Υπόλοιπο: \(e_2 = 8 - 9.53 = -1.53\) ώρες
Άτομο 3: High pulse, Exercise = 10 ώρες
Παρατηρούμενο: \(Y_3 = 10\)
Προβλεπόμενο: \(\hat{Y}_3 = \bar{Y}_{\text{High}} = 7.24\)
Υπόλοιπο: \(e_3 = 10 - 7.24 = 2.76\) ώρες
Παρατήρηση: Κάθε άτομο συγκρίνεται με το μέσο της δικής του ομάδας, όχι με το γενικό μέσο!
9.45 Οπτικοποίηση
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ (με Pulse3Group):
Exercise
↑
14 │ ● ● (Y₃ = 10)
12 │ ● (Y₁ = 12) ↑
10 │ ━━━━━ (Ŷ_Low = 10.38) │ e₃ = 2.76
│ ↑ ↓
8 │ │ e₁ = 1.62 ━━━━━ (Ŷ_High = 7.24)
│ ● (Y₂ = 8)
6 │ ━━━━━ (Ŷ_Med = 9.53)
│ ↑
4 │ │ e₂ = -1.53
│ ↓
2 │
└────────┴─────────┴─────────→
Low Medium High
Κάθε υπόλοιπο = Απόσταση από το ΜΕΣΟ ΤΗΣ ΟΜΑΔΑΣ
9.46 Γιατί οι άλλες είναι λάθος;
Α. “Η απόκλιση από το Grand Mean” - ΛΑΘΟΣ
- Αυτό ισχύει για το κενό μοντέλο (empty model), όχι για το σύνθετο μοντέλο
Σύγκριση:
Μοντέλο | Πρόβλεψη (\(\hat{Y}_i\)) | Υπόλοιπο (\(e_i\)) |
---|---|---|
Κενό | \(\bar{Y}\) (Grand Mean) | \(Y_i - \bar{Y}\) |
Σύνθετο | \(\bar{Y}_{\text{group}[i]}\) | \(Y_i - \bar{Y}_{\text{group}[i]}\) |
Παράδειγμα:
Grand Mean = 9.4 ώρες
Άτομο 1 (Low): Y₁ = 12 ώρες
ΚΕΝΟ ΜΟΝΤΕΛΟ:
e₁ = 12 - 9.4 = 2.6 ← Απόκλιση από ΓΕΝΙΚΟ μέσο
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ:
e₁ = 12 - 10.38 = 1.62 ← Απόκλιση από μέσο ΟΜΑΔΑΣ
Γ. “Η απόκλιση του μέσου κάθε ομάδας από το Grand Mean” - ΛΑΘΟΣ
- Αυτό δεν είναι το σφάλμα (error) - είναι η εξήγηση (explained variation)!
Διάσπαση διακύμανσης:
\[\underbrace{Y_i - \bar{Y}}_{\text{Total}} = \underbrace{\bar{Y}_{\text{group}[i]} - \bar{Y}}_{\text{Model/Explained}} + \underbrace{Y_i - \bar{Y}_{\text{group}[i]}}_{\text{Error/Unexplained}}\]
Όρος | Τι αντιπροσωπεύει | Όνομα |
---|---|---|
\(Y_i - \bar{Y}\) | Συνολική απόκλιση | Total deviation |
\(\bar{Y}_{\text{group}[i]} - \bar{Y}\) | Εξήγηση από μοντέλο | Model/Explained ← Επιλογή Γ (ΛΑΘΟΣ για error!) |
\(Y_i - \bar{Y}_{\text{group}[i]}\) | Σφάλμα μοντέλου | Error/Residual ← Επιλογή Β (ΣΩΣΤΟ!) |
Η επιλογή Γ περιγράφει πόσο διαφέρει κάθε ομάδα από το γενικό μέσο - αυτό είναι τι ΕΞΗΓΕΙ το μοντέλο, όχι το σφάλμα!
Παράδειγμα:
Grand Mean = 9.4 ώρες
EXPLAINED (Επιλογή Γ):
Low: 10.38 - 9.4 = 0.98
Medium: 9.53 - 9.4 = 0.13
High: 7.24 - 9.4 = -2.16
ERROR (Επιλογή Β):
Άτομο 1 (Low): 12 - 10.38 = 1.62
Άτομο 2 (Med): 8 - 9.53 = -1.53
Άτομο 3 (High): 10 - 7.24 = 2.76
Δ. “Κανένα από τα παραπάνω” - ΛΑΘΟΣ
- Η επιλογή Β είναι σωστή!
9.47 Οπτικοποίηση διάσπασης διακύμανσης
ΔΙΑΣΠΑΣΗ ΔΙΑΚΥΜΑΝΣΗΣ:
Y₁ = 12
●
│ Total = 12 - 9.4 = 2.6
│
Ŷ_Low ━━━━━ 10.38
│ Model = 10.38 - 9.4 = 0.98 (Explained)
│
Grand Ȳ ━━━━━━━━━━━━━━━━━ 9.4
ERROR (Residual) = Y₁ - Ŷ_Low = 12 - 10.38 = 1.62
Επαλήθευση:
Total = Model + Error
2.6 = 0.98 + 1.62 ✓
9.48 Sum of Squares
Το ίδιο ισχύει για τα αθροίσματα τετραγώνων:
\[SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error}}\]
SS_Error (αυτό που μας ενδιαφέρει):
\[SS_{\text{Error}} = \sum_{i=1}^{n}(Y_i - \bar{Y}_{\text{group}[i]})^2\]
Στο R:
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
# Υπόλοιπα (residuals)
residuals(pulse_model)[1:5]
# 1 2 3 4 5
# -0.380165 1.619835 0.144628 -4.855372 -4.380165
# Κάθε υπόλοιπο = Y_i - μέσο της ομάδας του
# SS_Error
sum(residuals(pulse_model)^2)
# [1] 14523.84
# Από ANOVA table
anova(pulse_model)
# Response: Exercise
# Df Sum Sq Mean Sq F value Pr(>F)
# Pulse3Group 2 1088.8 544.42 13.545 2.1e-06 ***
# Residuals 359 14423.8 40.18 ← SS_Error
9.49 Σύγκριση κενού vs σύνθετου μοντέλου
Κενό μοντέλο: Exercise ~ NULL
Πρόβλεψη για ΟΛΟΥΣ: Ȳ = 9.4
Exercise
↑
12 │ ●
10 │ ● ●
8 │ ● ●
│ ━━━━━━━━━━━━━━━ ← Ȳ = 9.4 (μία πρόβλεψη)
6 │
4 │
└─────────────────→
Error = Y_i - 9.4 (απόκλιση από ΓΕΝΙΚΟ μέσο)
Σύνθετο μοντέλο: Exercise ~ Pulse3Group
Πρόβλεψη ανά ομάδα:
Exercise
↑
12 │ ●
10 │ ━━━━━ ← Ŷ_Low = 10.38
8 │ ● ━━━━━ ← Ŷ_Med = 9.53
6 │ ● ━━━━━ ← Ŷ_High = 7.24
4 │
└────────┴─────────┴─────────→
Low Medium High
Error = Y_i - Ŷ_group (απόκλιση από μέσο ΟΜΑΔΑΣ)
Παρατήρηση: Το σύνθετο μοντέλο έχει μικρότερα υπόλοιπα επειδή χρησιμοποιεί τους μέσους των ομάδων, που είναι πιο κοντά στα δεδομένα από το γενικό μέσο!
9.50 Γενική αρχή
Για οποιοδήποτε μοντέλο:
\[\text{Error}_i = \text{Observed}_i - \text{Predicted}_i\]
\[e_i = Y_i - \hat{Y}_i\]
Τι προβλέπει το μοντέλο εξαρτάται από το μοντέλο:
Μοντέλο | \(\hat{Y}_i\) | Error |
---|---|---|
Κενό | \(\bar{Y}\) | \(Y_i - \bar{Y}\) |
Με Pulse3Group | \(\bar{Y}_{\text{group}[i]}\) | \(Y_i - \bar{Y}_{\text{group}[i]}\) |
Με Gender | \(\bar{Y}_{\text{gender}[i]}\) | \(Y_i - \bar{Y}_{\text{gender}[i]}\) |
Γραμμική παλινδρόμηση | \(b_0 + b_1X_i\) | \(Y_i - (b_0 + b_1X_i)\) |
9.51 Πρακτικό παράδειγμα
# Δημιουργία μοντέλου
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
# Προβλέψεις για κάθε άτομο
predictions <- predict(pulse_model)
predictions[1:5]
# 1 2 3 4 5
# 10.38017 10.38017 9.53353 7.23760 10.38017
# Παρατηρούμενες τιμές
StudentSurvey$Exercise[1:5]
# [1] 10 12 9 2 6
# Υπόλοιπα (Error)
residuals(pulse_model)[1:5]
# 1 2 3 4 5
# -0.380165 1.619835 -0.533531 -5.237604 -4.380165
# Επαλήθευση: Y - Ŷ
StudentSurvey$Exercise[1:5] - predictions[1:5]
# 1 2 3 4 5
# -0.380165 1.619835 -0.533531 -5.237604 -4.380165 ✓
9.52 Συμπέρασμα
Όταν το Pulse3Group
συμπεριλαμβάνεται στο μοντέλο:
\[\text{Exercise}_i = b_0 + b_1\text{Medium}_i + b_2\text{High}_i + e_i\]
Το σφάλμα (error/residual) υπολογίζεται ως:
«Η απόκλιση του Exercise κάθε ατόμου από το μέσο Exercise της ομάδας Pulse3Group στην οποία ανήκει»
\[e_i = Y_i - \bar{Y}_{\text{group}[i]}\]
Αυτό σημαίνει:
✓ Κάθε άτομο συγκρίνεται με τη δική του ομάδα, όχι με το γενικό μέσο
✓ Το μοντέλο προβλέπει τον μέσο της ομάδας για κάθε άτομο
✓ Το σφάλμα είναι πόσο το άτομο αποκλίνει από το μέσο της ομάδας του
✓ Αυτό είναι το unexplained variation - τι δεν μπορεί να εξηγήσει το Pulse3Group
✓ Μικρότερα υπόλοιπα = καλύτερο μοντέλο (το Pulse3Group εξηγεί περισσότερη διακύμανση)
10. Όταν προσθέτεις μια ανεξάρτητη μεταβλητή στο μοντέλο σου, ποια θα πρέπει να είναι η επίδραση στο Sum of Squares (άθροισμα τετραγώνων) από το κενό μοντέλο;
Σωστή απάντηση: Δ - Θα πρέπει να μειωθεί.
Σημείωση: Η ερώτηση αναφέρεται στο SS_Error (Sum of Squared Errors/Residuals), όχι στο SS_Total!
9.53 Διάσπαση διακύμανσης
Θεμελιώδης εξίσωση:
\[SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error}}\]
Όπου:
\(SS_{\text{Total}}\) = Συνολική διακύμανση (σταθερή, δεν αλλάζει με το μοντέλο)
\(SS_{\text{Model}}\) = Διακύμανση που εξηγείται από το μοντέλο
\(SS_{\text{Error}}\) = Διακύμανση που δεν εξηγείται (υπόλοιπα)
9.54 Τι συμβαίνει όταν προσθέτουμε μεταβλητή;
Κενό μοντέλο (Empty Model):
\[Y_i = b_0 + e_i\]
\(SS_{\text{Model}} = 0\) (δεν εξηγεί τίποτα)
\(SS_{\text{Error}} = SS_{\text{Total}}\) (όλη η διακύμανση είναι ανεξήγητη)
Σύνθετο μοντέλο (με επεξηγηματική μεταβλητή):
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
\(SS_{\text{Model}} > 0\) (εξηγεί κάποια διακύμανση)
\(SS_{\text{Error}} < SS_{\text{Total}}\) (λιγότερη ανεξήγητη διακύμανση)
Επειδή:
\[SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error}}\]
Αν το \(SS_{\text{Model}}\) αυξάνεται (από 0 σε κάποιο θετικό), τότε το \(SS_{\text{Error}}\) πρέπει να μειωθεί!
9.55 Μαθηματική απόδειξη
Κενό μοντέλο:
\[SS_{\text{Error (Empty)}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2 = SS_{\text{Total}}\]
Σύνθετο μοντέλο:
\[SS_{\text{Error (Complex)}} = \sum_{i=1}^{n}(Y_i - \hat{Y}_i)^2\]
Σύγκριση:
Επειδή το σύνθετο μοντέλο προβλέπει \(\hat{Y}_i\) βάσει πληροφορίας (π.χ., Pulse3Group):
Το \(\hat{Y}_i\) είναι πιο κοντά στο \(Y_i\) από ό,τι το \(\bar{Y}\)
Άρα \((Y_i - \hat{Y}_i)^2 < (Y_i - \bar{Y})^2\) κατά μέσο όρο
Άρα \(SS_{\text{Error (Complex)}} < SS_{\text{Error (Empty)}}\)
Συμπέρασμα: Το \(SS_{\text{Error}}\) μειώνεται όταν προσθέτουμε μεταβλητή!
9.56 Παράδειγμα με Exercise ~ Pulse3Group
Κενό μοντέλο:
Response: Exercise
Df Sum Sq Mean Sq
Residuals 361 15512.6 42.97 ← SS_Error = SS_Total
\(SS_{\text{Error}} = 15512.6\)
Όλη η διακύμανση είναι ανεξήγητη
Σύνθετο μοντέλο:
Response: Exercise
Df Sum Sq Mean Sq F value Pr(>F)
Pulse3Group 2 1088.8 544.42 13.545 2.1e-06 ***
Residuals 359 14423.8 40.18 ← SS_Error ΜΕΙΩΘΗΚΕ!
\(SS_{\text{Model}} = 1088.8\) (εξηγημένη διακύμανση)
\(SS_{\text{Error}} = 14423.8\) (ανεξήγητη διακύμανση)
Σύγκριση:
Μοντέλο | \(SS_{\text{Model}}\) | \(SS_{\text{Error}}\) | \(SS_{\text{Total}}\) |
---|---|---|---|
Κενό | 0 | 15512.6 | 15512.6 |
Σύνθετο | 1088.8 | 14423.8 | 15512.6 |
Μείωση SS_Error:
\[15512.6 - 14423.8 = 1088.8\]
Το \(SS_{\text{Error}}\) μειώθηκε κατά 1088.8 - αυτό είναι ακριβώς το \(SS_{\text{Model}}\)!
9.57 Οπτικοποίηση
ΔΙΑΣΠΑΣΗ ΔΙΑΚΥΜΑΝΣΗΣ:
ΚΕΝΟ ΜΟΝΤΕΛΟ:
┌─────────────────────────────────┐
│ SS_Error = 15512.6 │ ← Όλη ανεξήγητη
│ (= SS_Total) │
└─────────────────────────────────┘
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ (με Pulse3Group):
┌──────────┬──────────────────────┐
│ SS_Model │ SS_Error │
│ 1088.8 │ 14423.8 │
│ Εξήγηση │ Ανεξήγητο │
└──────────┴──────────────────────┘
↑ ↑
ΑΥΞΗΣΗ ΜΕΙΩΣΗ!
SS_Total = 15512.6 (παραμένει σταθερό)
9.58 Γιατί οι άλλες είναι λάθος;
Α. “Εξαρτάται από το πόση διακύμανση εξηγείται” - ΛΑΘΟΣ (αλλά σχεδόν σωστό!)
Το \(SS_{\text{Error}}\) πάντα μειώνεται όταν προσθέτουμε μεταβλητή
Το πόσο μειώνεται εξαρτάται από την επεξηγηματική ικανότητα
Αλλά η κατεύθυνση της αλλαγής είναι πάντα προς τα κάτω
Διευκρίνιση:
Επεξηγηματική ικανότητα | \(SS_{\text{Model}}\) | Μείωση \(SS_{\text{Error}}\) |
---|---|---|
Ισχυρή | Μεγάλο | Μεγάλη μείωση |
Ασθενής | Μικρό | Μικρή μείωση |
Καμία | ~0 | Σχεδόν καμία μείωση |
Αλλά σε όλες τις περιπτώσεις: Μείωση, όχι αύξηση ή σταθερότητα!
Β. “Θα πρέπει να αυξηθεί” - ΛΑΘΟΣ
Αυτό είναι αντίθετο με την πραγματικότητα
Όταν προσθέτουμε μεταβλητή, το μοντέλο γίνεται καλύτερο, όχι χειρότερο
Το \(SS_{\text{Error}}\) μετρά το σφάλμα - θέλουμε να το μειώσουμε!
Σύγχυση;
Ίσως κάποιος σκεφτεί το \(SS_{\text{Model}}\), που αυξάνεται. Αλλά η ερώτηση ρωτά για το “Sum of Squares from the empty model”, που είναι το \(SS_{\text{Error}}\).
Γ. “Θα πρέπει να παραμείνει αμετάβλητο” - ΛΑΘΟΣ
Μόνο το \(SS_{\text{Total}}\) παραμένει σταθερό
Το \(SS_{\text{Error}}\) πάντα αλλάζει (μειώνεται) όταν προσθέτουμε μεταβλητή
Τι παραμένει σταθερό:
\[SS_{\text{Total}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2\]
Εξαρτάται μόνο από τα δεδομένα \(Y_i\)
Δεν αλλάζει με το μοντέλο
9.59 Σύνδεση με PRE (Proportional Reduction in Error)
Το PRE μετρά το ποσοστό μείωσης του σφάλματος:
\[\text{PRE} = \frac{SS_{\text{Error (Empty)}} - SS_{\text{Error (Complex)}}}{SS_{\text{Error (Empty)}}}\]
\[\text{PRE} = \frac{SS_{\text{Model}}}{SS_{\text{Total}}}\]
Για το παράδειγμά μας:
\[\text{PRE} = \frac{1088.8}{15512.6} = 0.0702 = 7.02\%\]
«Το Pulse3Group εξηγεί το 7.02% της διακύμανσης στο Exercise.»
Ερμηνεία:
Το \(SS_{\text{Error}}\) μειώθηκε κατά 7.02%
Το \(SS_{\text{Model}}\) είναι το 7.02% του \(SS_{\text{Total}}\)
Το υπόλοιπο 92.98% παραμένει ανεξήγητο
9.60 Γενική αρχή
Πάντα ισχύει:
\(SS_{\text{Total}}\) = Σταθερό (εξαρτάται μόνο από δεδομένα)
-
Όταν προσθέτουμε μεταβλητή:
\(SS_{\text{Model}}\) αυξάνεται (από 0 σε θετική τιμή)
\(SS_{\text{Error}}\) μειώνεται (αφήνει χώρο για το Model)
Άθροισμα πάντα σταθερό:
\[SS_{\text{Model}} + SS_{\text{Error}} = SS_{\text{Total}} = \text{σταθερό}\]
Αναλογία:
Φανταστείτε μια πίτα (SS_Total). Αρχικά, όλη η πίτα είναι “ανεξήγητη” (SS_Error). Όταν προσθέτετε μεταβλητή, παίρνετε ένα κομμάτι από την “ανεξήγητη” πίτα και το κάνετε “εξήγηση” (SS_Model). Το μέγεθος της πίτας δεν αλλάζει, αλλά το κομμάτι “ανεξήγητο” γίνεται μικρότερο!
9.61 Πρακτικό παράδειγμα
# Κενό μοντέλο
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
ss_empty <- sum(residuals(empty_model)^2)
ss_empty
# [1] 15512.59
# Σύνθετο μοντέλο
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
ss_complex <- sum(residuals(pulse_model)^2)
ss_complex
# [1] 14423.79
# Μείωση
reduction <- ss_empty - ss_complex
reduction
# [1] 1088.802
# Ποσοστιαία μείωση
reduction / ss_empty
# [1] 0.0702 (7.02%)
9.62 Οπτική σύγκριση
SS_Error ΑΝΑ ΜΟΝΤΕΛΟ:
Κενό: ████████████████████████ 15512.6
↓
Σύνθετο: ████████████████████ 14423.8
└──────────┘
Μείωση: 1088.8 (7%)
Το SS_Error ΠΑΝΤΑ μειώνεται!
9.63 Ειδικές περιπτώσεις
Τι γίνεται αν η μεταβλητή δεν εξηγεί ΤΙΠΟΤΑ;
\(SS_{\text{Model}} \approx 0\) (πολύ κοντά στο μηδέν)
\(SS_{\text{Error}} \approx SS_{\text{Total}}\) (σχεδόν καμία μείωση)
Αλλά ακόμα και τότε, το \(SS_{\text{Error}}\) δεν αυξάνεται - απλά παραμένει σχεδόν το ίδιο
Παράδειγμα:
# Προσθήκη τυχαίας μεταβλητής
StudentSurvey$Random <- rnorm(nrow(StudentSurvey))
random_model <- lm(Exercise ~ Random, data = StudentSurvey)
anova(random_model)
Response: Exercise
Df Sum Sq Mean Sq F value Pr(>F)
Random 1 2.4 2.36 0.0549 0.8149 ← Πολύ μικρό SS_Model
Residuals 360 15510.2 43.08
\(SS_{\text{Error}}\) μειώθηκε από 15512.6 σε 15510.2 (μόνο 2.4!)
Ελάχιστη μείωση, αλλά όχι αύξηση
9.64 Συμπέρασμα
Όταν προσθέτεις μια επεξηγηματική μεταβλητή στο μοντέλο:
Το \(SS_{\text{Error}}\) (Sum of Squared Errors) πάντα μειώνεται.
Γιατί:
✓ Το \(SS_{\text{Total}}\) είναι σταθερό
✓ Το \(SS_{\text{Model}}\) αυξάνεται (από 0 σε κάτι θετικό)
✓ Επειδή \(SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error}}\)
✓ Το \(SS_{\text{Error}}\) πρέπει να μειωθεί για να ισορροπήσει η εξίσωση
✓ Το πόσο μειώνεται εξαρτάται από την επεξηγηματική ικανότητα
✓ Αλλά η κατεύθυνση είναι πάντα: ΜΕΙΩΣΗ ↓
Αυτό είναι το νόημα του “καλύτερου μοντέλου” - μικρότερο σφάλμα!
11. Αν εκφράσουμε το μοντέλο μας ως \(Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\), ποιο μέρος αντιπροσωπεύει την πρόβλεψη του μοντέλου για το Exercise
;
Σωστή απάντηση: Γ - \(b_0 + b_1X_{1i} + b_2X_{2i}\)
Ανατομία του μοντέλου:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Αυτή η εξίσωση μπορεί να γραφτεί ως:
\[\underbrace{Y_i}_{\text{Παρατηρούμενο}} = \underbrace{b_0 + b_1X_{1i} + b_2X_{2i}}_{\text{Πρόβλεψη μοντέλου } (\hat{Y}_i)} + \underbrace{e_i}_{\text{Υπόλοιπο/Σφάλμα}}\]
Η πρόβλεψη του μοντέλου είναι:
\[\hat{Y}_i = b_0 + b_1X_{1i} + b_2X_{2i}\]
«Το μοντέλο προβλέπει το Exercise χρησιμοποιώντας το intercept (\(b_0\)) και τις συνεισφορές από τις ψευδομεταβλητές Medium (\(b_1X_{1i}\)) και High (\(b_2X_{2i}\)).»
9.65 Γιατί αυτό είναι η πρόβλεψη;
Η πρόβλεψη είναι το μέρος του μοντέλου που:
✓ Δεν περιλαμβάνει το υπόλοιπο \(e_i\) (σφάλμα)
✓ Περιλαμβάνει όλους τους συστηματικούς όρους (intercept + συντελεστές × μεταβλητές)
✓ Είναι το μέρος που μπορούμε να υπολογίσουμε από τις ανεξάρτητες μεταβλητές
9.66 Παράδειγμα
Μοντέλο με εκτιμήσεις:
\[Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\]
Άτομο 1: Low Pulse
\(X_{11} = 0\) (όχι Medium)
\(X_{21} = 0\) (όχι High)
Πρόβλεψη:
\[\hat{Y}_1 = 10.38 + (-0.85)(0) + (-3.14)(0)\]
\[\hat{Y}_1 = 10.38 + 0 + 0 = 10.38 \text{ ώρες}\]
Άτομο 2: Medium Pulse
\(X_{12} = 1\) (είναι Medium)
\(X_{22} = 0\) (όχι High)
Πρόβλεψη:
\[\hat{Y}_2 = 10.38 + (-0.85)(1) + (-3.14)(0)\]
\[\hat{Y}_2 = 10.38 - 0.85 + 0 = 9.53 \text{ ώρες}\]
Άτομο 3: High Pulse
\(X_{13} = 0\) (όχι Medium)
\(X_{23} = 1\) (είναι High)
Πρόβλεψη:
\[\hat{Y}_3 = 10.38 + (-0.85)(0) + (-3.14)(1)\]
\[\hat{Y}_3 = 10.38 + 0 - 3.14 = 7.24 \text{ ώρες}\]
Σε όλες τις περιπτώσεις, η πρόβλεψη είναι: \(b_0 + b_1X_{1i} + b_2X_{2i}\)
9.67 Σχέση μεταξύ \(Y_i\), \(\hat{Y}_i\), και \(e_i\)
Θεμελιώδης εξίσωση:
\[Y_i = \hat{Y}_i + e_i\]
Όπου:
Σύμβολο | Όνομα | Τι είναι | Φόρμουλα |
---|---|---|---|
\(Y_i\) | Παρατηρούμενη τιμή | Πραγματικό Exercise | (Από δεδομένα) |
\(\hat{Y}_i\) | Προβλεπόμενη τιμή | Πρόβλεψη μοντέλου | \(b_0 + b_1X_{1i} + b_2X_{2i}\) |
\(e_i\) | Υπόλοιπο | Σφάλμα πρόβλεψης | \(Y_i - \hat{Y}_i\) |
Παράδειγμα:
Άτομο με Medium Pulse, πραγματικό Exercise = 12 ώρες:
\(Y_i = 12\) (παρατηρούμενο)
\(\hat{Y}_i = 9.53\) (πρόβλεψη για Medium)
\(e_i = 12 - 9.53 = 2.47\) (υπόλοιπο)
Επαλήθευση:
\[Y_i = \hat{Y}_i + e_i\]
\[12 = 9.53 + 2.47\] ✓
9.68 Γιατί οι άλλες είναι λάθος;
Α. \(b_1X_{1i}\) - ΛΑΘΟΣ
Αυτό είναι μόνο η συνεισφορά της ψευδομεταβλητής Medium
Δεν περιλαμβάνει το intercept (\(b_0\)) ή τη συνεισφορά της High (\(b_2X_{2i}\))
Δεν είναι πλήρης πρόβλεψη
Παράδειγμα:
Για άτομο Low Pulse: - \(b_1X_{1i} = (-0.85)(0) = 0\) ← Αυτό ΔΕΝ είναι η πρόβλεψη!
- Σωστή πρόβλεψη: \(\hat{Y}_i = 10.38\) ← Πρέπει να συμπεριλάβουμε το \(b_0\)!
Β. \(Y_i\) - ΛΑΘΟΣ
Το \(Y_i\) είναι η παρατηρούμενη τιμή, όχι η προβλεπόμενη
Είναι το αποτέλεσμα (outcome), όχι η πρόβλεψη
Το μοντέλο προσπαθεί να εξηγήσει το \(Y_i\), δεν το προβλέπει τέλεια
Διαφορά:
Σύμβολο | Τι είναι | Γνωστό πριν από τα δεδομένα; |
---|---|---|
\(Y_i\) | Παρατηρούμενο | ΟΧΙ - το μετράμε από δεδομένα |
\(\hat{Y}_i\) | Πρόβλεψη | ΝΑΙ - το υπολογίζουμε από μοντέλο |
Δ. \(b_0\) - ΛΑΘΟΣ
Το \(b_0\) είναι μόνο το intercept
Είναι η πρόβλεψη μόνο για την ομάδα αναφοράς (Low) όταν όλες οι ψευδομεταβλητές = 0
Δεν περιλαμβάνει τις συνεισφορές των ψευδομεταβλητών Medium και High
Παράδειγμα:
Για άτομο High Pulse: - \(b_0 = 10.38\) ← Αυτό ΔΕΝ είναι η πρόβλεψη για High!
- Σωστή πρόβλεψη: \(\hat{Y}_i = 10.38 - 3.14 = 7.24\) ← Πρέπει να συμπεριλάβουμε το \(b_2X_{2i}\)!
9.69 Οπτικοποίηση
ΑΝΑΤΟΜΙΑ ΤΟΥ ΜΟΝΤΕΛΟΥ:
Y_i = b₀ + b₁X₁ᵢ + b₂X₂ᵢ + eᵢ
│ └─────────┬──────────┘ │
│ Ŷᵢ = ΠΡΟΒΛΕΨΗ │
│ (Συστηματικό) │
│ │
└─ ΠΑΡΑΤΗΡΟΥΜΕΝΟ ΣΦΑΛΜΑ ─┘
(Δεδομένα) (Τυχαίο)
ΠΡΟΒΛΕΨΗ = Όλοι οι συστηματικοί όροι
= b₀ + b₁X₁ᵢ + b₂X₂ᵢ
= Ŷᵢ
9.70 Στο R
# Προσαρμογή μοντέλου
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
# Παρατηρούμενες τιμές (Y_i)
StudentSurvey$Exercise[1:3]
# [1] 10 12 9
# Προβλέψεις μοντέλου (Ŷ_i = b₀ + b₁X₁ᵢ + b₂X₂ᵢ)
predict(pulse_model)[1:3]
# 1 2 3
# 10.38017 10.38017 9.53353 ← ΑΥΤΟ είναι b₀ + b₁X₁ᵢ + b₂X₂ᵢ
# Υπόλοιπα (e_i)
residuals(pulse_model)[1:3]
# 1 2 3
# -0.380165 1.619835 -0.533531
# Επαλήθευση: Y_i = Ŷ_i + e_i
StudentSurvey$Exercise[1] # Y₁
# [1] 10
predict(pulse_model)[1] + residuals(pulse_model)[1]
# 1
# 10 ✓
9.71 Σύγκριση όλων των όρων
Όρος | Σύμβολο | Φόρμουλα | Τι αντιπροσωπεύει |
---|---|---|---|
Παρατηρούμενο | \(Y_i\) | (Δεδομένα) | Πραγματικό Exercise |
Πρόβλεψη | \(\hat{Y}_i\) | \(b_0 + b_1X_{1i} + b_2X_{2i}\) | Εκτίμηση μοντέλου ← ΑΥΤΟ! |
Υπόλοιπο | \(e_i\) | \(Y_i - \hat{Y}_i\) | Σφάλμα πρόβλεψης |
Intercept | \(b_0\) | (Παράμετρος) | Μέσο για Low (μόνο) |
Συνεισφορά Medium | \(b_1X_{1i}\) | \(b_1 \times 0\) ή \(1\) | Προσθήκη αν Medium |
Συνεισφορά High | \(b_2X_{2i}\) | \(b_2 \times 0\) ή \(1\) | Προσθήκη αν High |
9.72 Παράδειγμα με πραγματικές τιμές
Μοντέλο:
\[Y_i = 10.38 - 0.85X_{1i} - 3.14X_{2i} + e_i\]
Άτομο στην ομάδα High με πραγματικό Exercise = 10 ώρες:
Δεδομένα:
- Pulse3Group = High
- X₁ᵢ = 0 (όχι Medium)
- X₂ᵢ = 1 (ναι High)
- Yᵢ = 10 (παρατηρούμενο)
ΠΡΟΒΛΕΨΗ (Ŷᵢ):
Ŷᵢ = b₀ + b₁X₁ᵢ + b₂X₂ᵢ
= 10.38 + (-0.85)(0) + (-3.14)(1)
= 10.38 + 0 - 3.14
= 7.24 ώρες ← Η πρόβλεψη του μοντέλου!
ΥΠΟΛΟΙΠΟ (eᵢ):
eᵢ = Yᵢ - Ŷᵢ
= 10 - 7.24
= 2.76 ώρες
ΠΛΗΡΗΣ ΕΞΙΣΩΣΗ:
Yᵢ = Ŷᵢ + eᵢ
10 = 7.24 + 2.76 ✓
9.73 Γενική μορφή
Για οποιοδήποτε γραμμικό μοντέλο:
\[Y_i = \beta_0 + \beta_1X_{1i} + \beta_2X_{2i} + \cdots + \beta_pX_{pi} + \epsilon_i\]
Η πρόβλεψη είναι πάντα:
\[\hat{Y}_i = \beta_0 + \beta_1X_{1i} + \beta_2X_{2i} + \cdots + \beta_pX_{pi}\]
«Όλοι οι όροι εκτός του υπολοίπου \(\epsilon_i\) (ή \(e_i\))»
9.74 Οπτική αναπαράσταση
ΜΟΝΤΕΛΟ ΚΑΙ ΠΡΟΒΛΕΨΗ:
Exercise
↑
12 │ ● Yᵢ = 12 (παρατηρούμενο)
│ │
│ │ eᵢ = 2.47 (υπόλοιπο)
│ ↓
10 │ ━━━━● Ŷᵢ = 9.53 (ΠΡΟΒΛΕΨΗ)
8 │ ↑
│ └─ b₀ + b₁X₁ᵢ + b₂X₂ᵢ
6 │ = 10.38 - 0.85(1) - 3.14(0)
│ = 9.53
4 │
└─────────────────────→
Medium
Η πρόβλεψη = Σημείο στη γραμμή
= b₀ + b₁X₁ᵢ + b₂X₂ᵢ
9.75 Συμπέρασμα
Στο μοντέλο:
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Η πρόβλεψη του μοντέλου για το Exercise είναι:
\(\hat{Y}_i = b_0 + b_1X_{1i} + b_2X_{2i}\)
Αυτό περιλαμβάνει:
✓ Το intercept \(b_0\) (μέσο για Low)
✓ Τη συνεισφορά από Medium \(b_1X_{1i}\) (προσθέτει \(b_1\) αν Medium)
✓ Τη συνεισφορά από High \(b_2X_{2i}\) (προσθέτει \(b_2\) αν High)
✓ ΔΕΝ περιλαμβάνει το υπόλοιπο \(e_i\) (σφάλμα)
✓ Είναι το μέρος που μπορούμε να υπολογίσουμε από τις ανεξάρτητες μεταβλητές
✓ Αντιπροσωπεύει τον μέσο της ομάδας στην οποία ανήκει το άτομο
✓ Είναι το συστηματικό μέρος του μοντέλου (όχι το τυχαίο)
12. Μπορούμε να υπολογίσουμε τα υπόλοιπα (residuals) τόσο από το κενό μοντέλο όσο και από το σύνθετο μοντέλο. Τι είναι όμοιο σχετικά με αυτά τα δύο σύνολα υπολοίπων;
Σωστή απάντηση: Γ - Τα υπόλοιπα αντιπροσωπεύουν τη διαφορά μεταξύ των δεδομένων και της πρόβλεψης του μοντέλου.
Θεμελιώδης ορισμός υπολοίπου:
Για οποιοδήποτε μοντέλο, το υπόλοιπο ορίζεται ως:
\[e_i = Y_i - \hat{Y}_i\]
«Το υπόλοιπο είναι η διαφορά μεταξύ της παρατηρούμενης τιμής και της προβλεπόμενης τιμής του μοντέλου.»
Αυτός ο ορισμός είναι ίδιος για το κενό και το σύνθετο μοντέλο!
9.76 Σύγκριση κενού και σύνθετου μοντέλου
Κενό μοντέλο (Empty Model):
\[Y_i = b_0 + e_i\]
Πρόβλεψη: \(\hat{Y}_i = b_0 = \bar{Y}\) (Grand Mean)
Υπόλοιπο: \(e_i = Y_i - \bar{Y}\)
Σύνθετο μοντέλο (Complex Model):
\[Y_i = b_0 + b_1X_{1i} + b_2X_{2i} + e_i\]
Πρόβλεψη: \(\hat{Y}_i = b_0 + b_1X_{1i} + b_2X_{2i}\) (μέσος ομάδας)
Υπόλοιπο: \(e_i = Y_i - (b_0 + b_1X_{1i} + b_2X_{2i})\)
Κοινό χαρακτηριστικό:
Και στις δύο περιπτώσεις:
\[\boxed{e_i = \text{Παρατηρούμενο} - \text{Πρόβλεψη μοντέλου}}\]
9.77 Παράδειγμα
Άτομο με Medium Pulse, Exercise = 12 ώρες
Κενό μοντέλο:
Πρόβλεψη (Ŷᵢ):
Ŷᵢ = Ȳ = 9.4 (Grand Mean για ΟΛΟΥΣ)
Υπόλοιπο (eᵢ):
eᵢ = Yᵢ - Ŷᵢ
= 12 - 9.4
= 2.6 ώρες
Σύνθετο μοντέλο (με Pulse3Group):
Πρόβλεψη (Ŷᵢ):
Ŷᵢ = Ȳ_Medium = 9.53 (μέσος για Medium)
Υπόλοιπο (eᵢ):
eᵢ = Yᵢ - Ŷᵢ
= 12 - 9.53
= 2.47 ώρες
Παρατήρηση:
Οι τιμές είναι διαφορετικές (2.6 vs 2.47)
Αλλά η έννοια είναι η ίδια: διαφορά παρατηρούμενου - πρόβλεψης
Και τα δύο μετρούν πόσο το μοντέλο αποτυγχάνει να προβλέψει
9.78 Γιατί οι άλλες είναι λάθος;
Α. “Οι τιμές των υπολοίπων θα είναι οι ίδιες” - ΛΑΘΟΣ
Οι τιμές των υπολοίπων είναι διαφορετικές μεταξύ των δύο μοντέλων
Το σύνθετο μοντέλο έχει μικρότερα υπόλοιπα (γενικά)
Σύγκριση:
# Κενό μοντέλο
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
residuals(empty_model)[1:5]
# 1 2 3 4 5
# 0.601835 2.601835 -0.398165 -7.398165 -3.398165
# Σύνθετο μοντέλο
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
residuals(pulse_model)[1:5]
# 1 2 3 4 5
# -0.380165 1.619835 -0.533531 -5.237604 -4.380165
# ΟΙ ΤΙΜΕΣ ΕΙΝΑΙ ΔΙΑΦΟΡΕΤΙΚΕΣ!
Οπτικοποίηση:
Άτομο 1 (Low Pulse, Exercise = 10):
ΚΕΝΟ ΜΟΝΤΕΛΟ:
Yᵢ = 10
Ŷᵢ = 9.4 (Grand Mean)
eᵢ = 10 - 9.4 = 0.6
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ:
Yᵢ = 10
Ŷᵢ = 10.38 (μέσος Low)
eᵢ = 10 - 10.38 = -0.38
0.6 ≠ -0.38 ✗
Β. “Τα υπόλοιπα αντιπροσωπεύουν τη διαφορά από το Grand Mean” - ΛΑΘΟΣ
Αυτό ισχύει μόνο για το κενό μοντέλο
Για το σύνθετο μοντέλο, τα υπόλοιπα είναι η διαφορά από τον μέσο της ομάδας, όχι από το Grand Mean
Σύγκριση:
Μοντέλο | Πρόβλεψη | Υπόλοιπο |
---|---|---|
Κενό | \(\bar{Y}\) (Grand Mean) | \(Y_i - \bar{Y}\) ← Διαφορά από Grand Mean ✓ |
Σύνθετο | \(\bar{Y}_{\text{group}}\) (μέσος ομάδας) | \(Y_i - \bar{Y}_{\text{group}}\) ← ΟΧΙ από Grand Mean ✗ |
Παράδειγμα:
Άτομο High Pulse, Exercise = 10:
Grand Mean = 9.4
Μέσος High = 7.24
ΚΕΝΟ:
eᵢ = 10 - 9.4 = 0.6 (από Grand Mean)
ΣΥΝΘΕΤΟ:
eᵢ = 10 - 7.24 = 2.76 (από μέσο ομάδας, ΟΧΙ Grand Mean!)
Δ. “Τα υπόλοιπα μπορούν να μειωθούν σχεδόν στο 0 με προσοχή” - ΛΑΘΟΣ
Τα υπόλοιπα δεν μπορούν να εξαλειφθούν με καλύτερη μέτρηση
Τα υπόλοιπα αντιπροσωπεύουν πραγματική διακύμανση στα δεδομένα
-
Ακόμα και με τέλεια μέτρηση, θα υπάρχουν υπόλοιπα λόγω:
Ατομικής μεταβλητότητας (οι άνθρωποι διαφέρουν)
Παραγόντων που δεν μετρήθηκαν (π.χ., κίνητρο, χρόνος)
Τυχαιότητας στη συμπεριφορά
Διευκρίνιση:
Πηγή διακύμανσης | Μπορεί να μειωθεί με προσοχή; |
---|---|
Σφάλματα μέτρησης | ΝΑΙ (π.χ., λάθος καταγραφή) |
Πραγματική διακύμανση | ΟΧΙ (οι άνθρωποι διαφέρουν!) |
Τα υπόλοιπα αντιπροσωπεύουν κυρίως την πραγματική διακύμανση, όχι σφάλματα!
9.79 Το κοινό χαρακτηριστικό: Ορισμός
Για κάθε μοντέλο:
\[e_i = Y_i - \hat{Y}_i\]
Σε λόγια:
«Το υπόλοιπο είναι πάντα η διαφορά μεταξύ του τι παρατηρήσαμε και του τι προέβλεψε το μοντέλο.»
Αυτό δεν αλλάζει:
✓ Ανεξάρτητα από το μοντέλο (κενό ή σύνθετο)
✓ Ανεξάρτητα από τις μεταβλητές που χρησιμοποιούμε
✓ Ανεξάρτητα από το πόσο καλό είναι το μοντέλο
Αυτό που αλλάζει:
✗ Η πρόβλεψη \(\hat{Y}_i\) (διαφέρει μεταξύ μοντέλων)
✗ Οι τιμές των υπολοίπων (διαφέρουν μεταξύ μοντέλων)
✗ Το μέγεθος των υπολοίπων (συνήθως μικρότερα στο σύνθετο)
9.80 Οπτικοποίηση
ΚΕΝΟ ΜΟΝΤΕΛΟ:
Exercise
↑
12 │ ●
│ │ eᵢ = Yᵢ - Ŷᵢ
│ │ = 12 - 9.4 = 2.6
10 │ ↓
│ ━━━━━━━━━━━━━━━━━━━━━ Ŷ = Ȳ = 9.4 (Grand Mean)
8 │
└─────────────────────→
Υπόλοιπο = Απόσταση από ΓΡΑΜΜΗ (πρόβλεψη)
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ:
Exercise
↑
12 │ ●
│ │ eᵢ = Yᵢ - Ŷᵢ
│ │ = 12 - 9.53 = 2.47
10 │ ━━━━━ ↓ ━━━━━ ━━━━━
│ Low Medium High
8 │ 10.38 9.53 7.24
└────────┴─────────┴─────────→
Υπόλοιπο = Απόσταση από ΓΡΑΜΜΗ ΟΜΑΔΑΣ (πρόβλεψη)
ΚΑΙ ΤΑ ΔΥΟ: eᵢ = Παρατηρούμενο - Πρόβλεψη
9.81 Ιδιότητες υπολοίπων (και στα δύο μοντέλα)
Κοινά χαρακτηριστικά:
Ορισμός: \(e_i = Y_i - \hat{Y}_i\) ✓
Άθροισμα = 0: \(\sum e_i = 0\) ✓
Μετρούν σφάλμα: Πόσο το μοντέλο αποτυγχάνει ✓
Ελαχιστοποιούνται: Το μοντέλο ελαχιστοποιεί \(\sum e_i^2\) ✓
Διαφορές:
Χαρακτηριστικό | Κενό | Σύνθετο |
---|---|---|
Τιμές \(e_i\) | Διαφορετικές | Διαφορετικές |
Μέγεθος | Μεγαλύτερα | Μικρότερα (συνήθως) |
\(SS_{\text{Error}}\) | = \(SS_{\text{Total}}\) | < \(SS_{\text{Total}}\) |
Πρόβλεψη \(\hat{Y}_i\) | \(\bar{Y}\) | \(\bar{Y}_{\text{group}}\) |
9.82 Επαλήθευση στο R
# Κενό μοντέλο
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
resid_empty <- residuals(empty_model)
# Σύνθετο μοντέλο
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
resid_complex <- residuals(pulse_model)
# 1. Ορισμός: e = Y - Ŷ
all.equal(
resid_empty,
StudentSurvey$Exercise - predict(empty_model)
)
# [1] TRUE ✓
all.equal(
resid_complex,
StudentSurvey$Exercise - predict(pulse_model)
)
# [1] TRUE ✓
# 2. Άθροισμα = 0
sum(resid_empty)
# [1] -8.881784e-15 ≈ 0 ✓
sum(resid_complex)
# [1] -1.065814e-14 ≈ 0 ✓
# 3. Οι ΤΙΜΕΣ είναι διαφορετικές
head(resid_empty)
# 0.6018 2.6018 -0.3982 -7.3982 -3.3982
head(resid_complex)
# -0.3802 1.6198 -0.5335 -5.2376 -4.3802
identical(resid_empty, resid_complex)
# [1] FALSE ✗ (οι τιμές διαφέρουν)
9.83 Γενική αρχή
Το κοινό χαρακτηριστικό όλων των υπολοίπων:
«Τα υπόλοιπα πάντα μετρούν την απόκλιση των δεδομένων από την πρόβλεψη του μοντέλου.»
Αυτό ισχύει για:
✓ Κενό μοντέλο (πρόβλεψη = Grand Mean)
✓ Σύνθετο μοντέλο με κατηγορική μεταβλητή (πρόβλεψη = μέσος ομάδας)
✓ Γραμμική παλινδρόμηση (πρόβλεψη = \(b_0 + b_1X\))
✓ Πολλαπλή παλινδρόμηση (πρόβλεψη = \(b_0 + b_1X_1 + b_2X_2 + ...\))
✓ Οποιοδήποτε μοντέλο!
9.84 Συμπέρασμα
Το κοινό χαρακτηριστικό των υπολοίπων από το κενό και το σύνθετο μοντέλο είναι:
«Τα υπόλοιπα αντιπροσωπεύουν τη διαφορά μεταξύ των δεδομένων και της πρόβλεψης του μοντέλου.»
\[e_i = Y_i - \hat{Y}_i\]
Αυτό σημαίνει:
✓ Ο ορισμός είναι ο ίδιος και για τα δύο μοντέλα
✓ Και τα δύο μετρούν πόσο το μοντέλο αποτυγχάνει να προβλέψει
✓ Και τα δύο είναι η ανεξήγητη διακύμανση
✓ Η έννοια είναι πανομοιότυπη (παρατηρούμενο - πρόβλεψη)
Οι διαφορές είναι:
✗ Οι τιμές των υπολοίπων (διαφορετικές)
✗ Η πρόβλεψη \(\hat{Y}_i\) που χρησιμοποιείται (Grand Mean vs μέσος ομάδας)
✗ Το μέγεθος των υπολοίπων (μικρότερα στο σύνθετο)
Αλλά η βασική ιδέα - ότι το υπόλοιπο είναι παρατηρούμενο μείον πρόβλεψη - παραμένει σταθερή!
13. Φανταστείτε ότι έχετε υπολογίσει το SS (Sum of Squares) τόσο για το κενό μοντέλο όσο και για το σύνθετο μοντέλο για το Exercise
. Τι θα ισχύει για αυτά τα SS;
Σωστή απάντηση: Δ - Το SS που απομένει από το κενό μοντέλο θα είναι μεγαλύτερο από το SS που απομένει από το σύνθετο μοντέλο.
Ορισμός SS (Sum of Squared residuals):
\[SS = \sum_{i=1}^{n} e_i^2 = \sum_{i=1}^{n} (Y_i - \hat{Y}_i)^2\]
Το “SS leftover” (SS που απομένει) αναφέρεται στο \(SS_{\text{Error}}\) - το άθροισμα των τετραγωνισμένων υπολοίπων.
9.85 Γιατί το σύνθετο μοντέλο έχει μικρότερο SS;
Θεμελιώδης αρχή:
«Όσο καλύτερο το μοντέλο, τόσο μικρότερα τα υπόλοιπα, άρα μικρότερο το \(SS_{\text{Error}}\).»
Κενό μοντέλο:
Πρόβλεψη για ΟΛΟΥΣ: \(\hat{Y}_i = \bar{Y} = 9.4\) ώρες
Μία πρόβλεψη για όλους (δεν χρησιμοποιεί πληροφορία από Pulse3Group)
Υπόλοιπα: \(e_i = Y_i - 9.4\) (συχνά μεγάλα)
Σύνθετο μοντέλο:
-
Πρόβλεψη ανά ομάδα:
Low: \(\hat{Y}_i = 10.38\) ώρες
Medium: \(\hat{Y}_i = 9.53\) ώρες
High: \(\hat{Y}_i = 7.24\) ώρες
Τρεις διαφορετικές προβλέψεις (χρησιμοποιεί πληροφορία από Pulse3Group)
Υπόλοιπα: \(e_i = Y_i - \bar{Y}_{\text{group}}\) (συχνά μικρότερα)
Συμπέρασμα:
Επειδή το σύνθετο μοντέλο δίνει προβλέψεις πιο κοντά στα πραγματικά δεδομένα:
\[SS_{\text{Error (Empty)}} > SS_{\text{Error (Complex)}}\]
9.86 Μαθηματική απόδειξη
Διάσπαση διακύμανσης:
\[SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error}}\]
Για το κενό μοντέλο:
\[SS_{\text{Total}} = 0 + SS_{\text{Error (Empty)}}\]
\[SS_{\text{Error (Empty)}} = SS_{\text{Total}}\]
Για το σύνθετο μοντέλο:
\[SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error (Complex)}}\]
Επειδή \(SS_{\text{Model}} > 0\) (το μοντέλο εξηγεί κάτι):
\[SS_{\text{Error (Complex)}} = SS_{\text{Total}} - SS_{\text{Model}}\]
\[SS_{\text{Error (Complex)}} < SS_{\text{Total}}\]
Συνδυάζοντας:
\[SS_{\text{Error (Empty)}} = SS_{\text{Total}} > SS_{\text{Total}} - SS_{\text{Model}} = SS_{\text{Error (Complex)}}\]
\[\boxed{SS_{\text{Error (Empty)}} > SS_{\text{Error (Complex)}}}\]
9.87 Παράδειγμα με Exercise ~ Pulse3Group
Κενό μοντέλο:
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
sum(residuals(empty_model)^2)
# [1] 15512.59
- \(SS_{\text{Error (Empty)}} = 15512.6\)
Σύνθετο μοντέλο:
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
sum(residuals(pulse_model)^2)
# [1] 14423.79
- \(SS_{\text{Error (Complex)}} = 14423.8\)
Σύγκριση:
\[15512.6 > 14423.8\] ✓
Μείωση:
\[15512.6 - 14423.8 = 1088.8\]
Το \(SS_{\text{Error}}\) μειώθηκε κατά 1088.8 (αυτό είναι το \(SS_{\text{Model}}\))!
9.88 Οπτικοποίηση
SS_Error (Sum of Squared Residuals):
ΚΕΝΟ ΜΟΝΤΕΛΟ:
████████████████████████████ 15512.6
│ │
│ Όλη η διακύμανση │
│ είναι ανεξήγητη │
└───────────────────────────┘
ΣΥΝΘΕΤΟ ΜΟΝΤΕΛΟ:
████████████████████████ 14423.8
│ │
│ Λιγότερη ανεξήγητη │
│ διακύμανση │
└───────────────────────┘
↑
ΜΙΚΡΟΤΕΡΟ!
Μείωση: 1088.8 (7.0%)
9.89 Γιατί οι άλλες είναι λάθος;
Α. “SS κενού < SS σύνθετου” - ΛΑΘΟΣ
Αυτό είναι αντίθετο με την πραγματικότητα
Το κενό μοντέλο έχει χειρότερες προβλέψεις → μεγαλύτερα υπόλοιπα → μεγαλύτερο SS
Β. “SS κενού = SS σύνθετου” - ΛΑΘΟΣ
Αυτό θα ίσχυε μόνο αν το Pulse3Group δεν εξηγούσε ΤΙΠΟΤΑ
Αλλά στην πράξη, σχεδόν κάθε μεταβλητή εξηγεί κάτι (έστω ελάχιστο)
Άρα \(SS_{\text{Model}} > 0\) → \(SS_{\text{Error (Complex)}} < SS_{\text{Error (Empty)}}\)
Παράδειγμα ακραίας περίπτωσης:
Αν η επεξηγηματική μεταβλητή ήταν εντελώς τυχαία:
StudentSurvey$Random <- sample(1:3, nrow(StudentSurvey), replace = TRUE)
random_model <- lm(Exercise ~ Random, data = StudentSurvey)
sum(residuals(random_model)^2)
# [1] 15510.2 (ελάχιστη μείωση από 15512.6)
Ακόμα και τότε: Μικρή μείωση, όχι ισότητα!
Γ. “Και τα δύο SS = 0” - ΛΑΘΟΣ
Το \(SS\) ποτέ δεν είναι 0 (εκτός αν όλα τα \(Y_i\) είναι ίδια)
Το γεγονός ότι \(\sum e_i = 0\) (άθροισμα υπολοίπων) δεν σημαίνει ότι \(\sum e_i^2 = 0\)
Διαφορά:
Μέτρο | Τιμή | Γιατί |
---|---|---|
\(\sum e_i\) | = 0 | Τα υπόλοιπα εξισορροπούνται (θετικά + αρνητικά) |
\(\sum e_i^2\) | > 0 | Τα τετράγωνα είναι πάντα θετικά |
Παράδειγμα:
Υπόλοιπα: -2, -1, 0, 1, 2
Άθροισμα:
Σe_i = -2 + (-1) + 0 + 1 + 2 = 0 ✓
Άθροισμα τετραγώνων:
Σe_i² = 4 + 1 + 0 + 1 + 4 = 10 (ΟΧΙ 0!)
9.90 Παράδειγμα με ατομικά υπόλοιπα
Άτομο 1: Low Pulse, Exercise = 12 ώρες
Κενό μοντέλο:
Πρόβλεψη: \(\hat{Y}_1 = 9.4\)
Υπόλοιπο: \(e_1 = 12 - 9.4 = 2.6\)
Τετράγωνο: \(e_1^2 = 2.6^2 = 6.76\)
Σύνθετο μοντέλο:
Πρόβλεψη: \(\hat{Y}_1 = 10.38\) (μέσος Low)
Υπόλοιπο: \(e_1 = 12 - 10.38 = 1.62\)
Τετράγωνο: \(e_1^2 = 1.62^2 = 2.62\)
Σύγκριση:
\[6.76 > 2.62\]
Το τετράγωνο του υπολοίπου είναι μικρότερο στο σύνθετο μοντέλο!
Αυτό ισχύει για τα περισσότερα άτομα → Συνολικά μικρότερο \(SS_{\text{Error}}\)
9.91 Σύνδεση με PRE
Proportional Reduction in Error:
\[\text{PRE} = \frac{SS_{\text{Error (Empty)}} - SS_{\text{Error (Complex)}}}{SS_{\text{Error (Empty)}}}\]
\[\text{PRE} = \frac{SS_{\text{Model}}}{SS_{\text{Total}}}\]
Για το παράδειγμά μας:
\[\text{PRE} = \frac{15512.6 - 14423.8}{15512.6} = \frac{1088.8}{15512.6} = 0.0702\]
«Το σύνθετο μοντέλο μειώνει το σφάλμα κατά 7.02% σε σχέση με το κενό μοντέλο.»
Ερμηνεία:
Αν PRE > 0 → \(SS_{\text{Error (Complex)}} < SS_{\text{Error (Empty)}}\) ✓
Αν PRE = 0 → \(SS_{\text{Error (Complex)}} = SS_{\text{Error (Empty)}}\) (σπάνιο)
Αν PRE < 0 → Αδύνατο! (το σύνθετο πάντα μειώνει ή διατηρεί το σφάλμα)
9.92 ANOVA Table
Response: Exercise
Df Sum Sq Mean Sq F value Pr(>F)
Pulse3Group 2 1088.8 544.42 13.545 2.094e-06 ***
Residuals 359 14423.8 40.18
Ανάλυση:
Πηγή | SS | Ερμηνεία |
---|---|---|
Pulse3Group | 1088.8 | Εξηγημένη διακύμανση από μοντέλο |
Residuals | 14423.8 | Ανεξήγητη διακύμανση (SS_Error) |
Total | 15512.6 | Συνολική διακύμανση (από κενό) |
Επαλήθευση:
\[1088.8 + 14423.8 = 15512.6\] ✓
\[SS_{\text{Model}} + SS_{\text{Error (Complex)}} = SS_{\text{Error (Empty)}}\] ✓
9.93 Γραφική σύγκριση
ΣΥΓΚΡΙΣΗ SS_Error:
SS_Error
↓
Κενό: ████████████████████ 15512.6
│ │
│ │
Σύνθετο: ████████████████ 14423.8
└────────┬─────┘
│
Μείωση = 1088.8
(αυτό είναι το SS_Model)
SS_Error(Empty) > SS_Error(Complex) ✓
9.94 Γενική αρχή
Για οποιαδήποτε σύγκριση μοντέλων:
Αν το μοντέλο Β προσθέτει επεξηγηματικές μεταβλητές στο μοντέλο Α:
\[SS_{\text{Error (A)}} \geq SS_{\text{Error (B)}}\]
Με ισότητα μόνο αν οι νέες μεταβλητές δεν εξηγούν τίποτα.
Παράδειγμα:
Μοντέλο | SS_Error |
---|---|
Κενό | 15512.6 |
+ Pulse3Group | 14423.8 ↓ |
+ Pulse3Group + Gender | 13800.0 ↓ |
+ Pulse3Group + Gender + Year | 13200.0 ↓ |
Κάθε νέα μεταβλητή μειώνει ή διατηρεί το \(SS_{\text{Error}}\), ποτέ δεν το αυξάνει!
9.95 Συμπέρασμα
Όταν συγκρίνουμε το \(SS_{\text{Error}}\) (SS leftover) από το κενό και το σύνθετο μοντέλο:
«Το \(SS_{\text{Error}}\) από το κενό μοντέλο είναι ΠΑΝΤΑ μεγαλύτερο από το \(SS_{\text{Error}}\) από το σύνθετο μοντέλο.»
\[SS_{\text{Error (Empty)}} > SS_{\text{Error (Complex)}}\]
Γιατί:
✓ Το κενό μοντέλο δεν χρησιμοποιεί καμία πληροφορία → χειρότερες προβλέψεις
✓ Το σύνθετο μοντέλο χρησιμοποιεί Pulse3Group → καλύτερες προβλέψεις
✓ Καλύτερες προβλέψεις = μικρότερα υπόλοιπα = μικρότερο SS
✓ Η διαφορά είναι το \(SS_{\text{Model}}\) που το σύνθετο μοντέλο εξηγεί
✓ \(SS_{\text{Total}} = SS_{\text{Model}} + SS_{\text{Error (Complex)}}\)
✓ Επειδή \(SS_{\text{Model}} > 0\), έχουμε \(SS_{\text{Error (Complex)}} < SS_{\text{Total}} = SS_{\text{Error (Empty)}}\)
Αυτό είναι το θεμέλιο της βελτίωσης μοντέλου - προσθέτουμε μεταβλητές για να μειώσουμε το σφάλμα!
14. Μπορούμε να υπολογίσουμε τα υπόλοιπα από το σύνθετο μοντέλο και τους μέσους όρους των υπολοίπων για τις τρεις ομάδες με αυτόν τον κώδικα:
StudentSurvey$Residuals <- resid(Pulse3Group_model)
mean(Residuals ~ Pulse3Group, data = StudentSurvey)
Ορίστε το αποτέλεσμα:
low med high
-3.938696e-16 1.064014e-15 -1.234220e-15
Έχετε κάνει κάτι λάθος στο R;
Σωστή απάντηση: Γ - Όχι. Οι μέσοι όροι πάντα εξισορροπούν τα υπόλοιπα.
Τι βλέπουμε στο αποτέλεσμα;
low med high
-3.938696e-16 1.064014e-15 -1.234220e-15
Αυτοί οι αριθμοί είναι σε επιστημονική σημειογραφία:
\(-3.94 \times 10^{-16}\) για low
\(1.06 \times 10^{-15}\) για med
\(-1.23 \times 10^{-15}\) για high
Αυτοί οι αριθμοί είναι ΕΞΑΙΡΕΤΙΚΑ κοντά στο μηδέν!
9.96 Τι σημαίνει e-16;
Επιστημονική σημειογραφία:
\[3.94 \times 10^{-16} = \frac{3.94}{10^{16}} = 0.000000000000000394\]
Αυτό είναι:
16 μηδενικά μετά την υποδιαστολή
Πρακτικά μηδέν για οποιαδήποτε πρακτική εφαρμογή
Προκύπτει από στρογγυλοποίηση υπολογιστή (floating-point arithmetic)
Σύγκριση μεγέθους:
1 = 1
0.000001 = 1 × 10⁻⁶ (ένα εκατομμυριοστό)
0.000000001 = 1 × 10⁻⁹ (ένα δισεκατομμυριοστό)
3.94 × 10⁻¹⁶ ← Εξαιρετικά μικρό!
9.97 Γιατί οι μέσοι όροι των υπολοίπων είναι (σχεδόν) μηδέν;
Θεμελιώδης ιδιότητα γραμμικού μοντέλου:
«Ο μέσος όρος των υπολοίπων σε κάθε ομάδα είναι πάντα 0 όταν το μοντέλο εκτιμάται με την μέθοδο ελαχίστων τετραγώνων.»
Γιατί;
Για κάθε ομάδα \(g\), το μοντέλο προβλέπει τον μέσο της ομάδας:
\[\hat{Y}_i = \bar{Y}_g \text{ για άτομα στην ομάδα } g\]
Τα υπόλοιπα είναι:
\[e_i = Y_i - \bar{Y}_g\]
Ο μέσος όρος των υπολοίπων στην ομάδα \(g\):
\[\bar{e}_g = \frac{1}{n_g}\sum_{i \in g}(Y_i - \bar{Y}_g)\]
\[= \frac{1}{n_g}\sum_{i \in g}Y_i - \frac{1}{n_g}\sum_{i \in g}\bar{Y}_g\]
\[= \bar{Y}_g - \bar{Y}_g = 0\]
Αυτό ισχύει για κάθε ομάδα!
9.98 Γιατί δεν είναι ακριβώς 0;
Σφάλματα στρογγυλοποίησης υπολογιστή:
Οι υπολογιστές αποθηκεύουν αριθμούς με περιορισμένη ακρίβεια (floating-point)
Στρογγυλοποιήσεις κατά τους υπολογισμούς προκαλούν μικρά σφάλματα
Αυτά τα σφάλματα συσσωρεύονται, αλλά παραμένουν εξαιρετικά μικρά
Παράδειγμα:
# Θεωρητικά αυτό πρέπει να είναι 0
0.1 + 0.2 - 0.3
# [1] 5.551115e-17 ← ΟΧΙ ακριβώς 0!
# Αλλά είναι τόσο κοντά που θεωρείται 0
all.equal(0.1 + 0.2, 0.3)
# [1] TRUE
9.99 Επαλήθευση με παράδειγμα
Ας το δούμε βήμα προς βήμα:
# Υποθετικά δεδομένα
Low_data <- c(8, 10, 12, 14) # Μέσος = 11
Med_data <- c(7, 9, 11) # Μέσος = 9
High_data <- c(5, 7, 9, 11) # Μέσος = 8
# Υπόλοιπα Low
resid_low <- Low_data - mean(Low_data)
resid_low
# [1] -3 -1 1 3
mean(resid_low)
# [1] 0 ✓ Ακριβώς 0!
# Υπόλοιπα Med
resid_med <- Med_data - mean(Med_data)
mean(resid_med)
# [1] 0 ✓
# Υπόλοιπα High
resid_high <- High_data - mean(High_data)
mean(resid_high)
# [1] 0 ✓
Με πραγματικά δεδομένα:
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
StudentSurvey$Residuals <- resid(pulse_model)
# Μέσοι υπολοίπων ανά ομάδα
mean(Residuals ~ Pulse3Group, data = StudentSurvey)
# low med high
# -3.938696e-16 1.064014e-15 -1.234220e-15
# Αυτά είναι ΠΡΑΚΤΙΚΑ 0!
9.100 Γιατί οι άλλες είναι λάθος;
Α. “Αυτό δείχνει ότι έχουμε μοντέλο τριών παραμέτρων” - ΛΑΘΟΣ
Το ότι οι μέσοι υπολοίπων είναι 0 δεν σχετίζεται με τον αριθμό παραμέτρων
Αυτό ισχύει για οποιοδήποτε γραμμικό μοντέλο (1, 2, 3, ή περισσότερες παράμετροι)
Αριθμός παραμέτρων:
Το μοντέλο έχει 3 παραμέτρους: \(b_0\), \(b_1\), \(b_2\)
Αλλά αυτό προσδιορίζεται από τη δομή του μοντέλου, όχι από τους μέσους υπολοίπων
Β. “Αυτό είναι σπάνιο, ελέγξτε τον κώδικα” - ΛΑΘΟΣ
Αυτό δεν είναι σπάνιο - είναι το αναμενόμενο αποτέλεσμα!
Θα έπρεπε να ανησυχήσετε αν οι μέσοι υπολοίπων ΔΕΝ ήταν κοντά στο 0
Τι θα ήταν πραγματικά σπάνιο:
low med high
2.5 1.8 -3.2 ← ΑΥΤΟ θα ήταν λάθος!
Δ. “Ναι! Αυτό φαίνεται λάθος” - ΛΑΘΟΣ
Όχι μόνο δεν είναι λάθος, αλλά είναι απόδειξη ότι το μοντέλο λειτουργεί σωστά!
-
Οι μέσοι υπολοίπων κοντά στο 0 επιβεβαιώνουν ότι:
Το μοντέλο εκτιμήθηκε σωστά
Οι υπολογισμοί είναι ακριβείς
Η μέθοδος ελαχίστων τετραγώνων λειτούργησε κανονικά
9.101 Γενική ιδιότητα υπολοίπων
Για οποιοδήποτε γραμμικό μοντέλο με intercept:
- Άθροισμα υπολοίπων = 0:
\[\sum_{i=1}^{n} e_i = 0\]
- Μέσος όρος υπολοίπων = 0:
\[\bar{e} = \frac{1}{n}\sum_{i=1}^{n} e_i = 0\]
- Μέσος όρος υπολοίπων ανά ομάδα = 0 (όταν το μοντέλο έχει κατηγορική μεταβλητή):
\[\bar{e}_g = 0 \text{ για κάθε ομάδα } g\]
Επαλήθευση:
# Συνολικός μέσος υπολοίπων
mean(StudentSurvey$Residuals)
# [1] -2.959232e-17 ≈ 0 ✓
# Άθροισμα υπολοίπων
sum(StudentSurvey$Residuals)
# [1] -1.065814e-14 ≈ 0 ✓
9.102 Πώς να ελέγξετε αν κάτι είναι λάθος
Αν ανησυχείτε για τον κώδικα σας, ελέγξτε:
1. Οι μέσοι υπολοίπων είναι ΚΟΝΤΑ στο 0;
means <- mean(Residuals ~ Pulse3Group, data = StudentSurvey)
all(abs(means) < 1e-10) # Όλοι < 0.0000000001;
# [1] TRUE ✓
2. Το άθροισμα τετραγώνων είναι θετικό;
3. Οι μέσοι των ομάδων ταιριάζουν με το μοντέλο;
# Μέσοι από δεδομένα
mean(Exercise ~ Pulse3Group, data = StudentSurvey)
# low med high
# 10.38017 9.53353 7.23760
# Προβλέψεις μοντέλου
unique(predict(pulse_model))
# 10.38017 9.53353 7.23760 ✓ Ίδιες!
Αν όλα αυτά ισχύουν → Το μοντέλο είναι σωστό!
9.103 Τι ΘΑ ήταν λάθος;
Παραδείγματα πραγματικών λαθών:
1. Μέσοι υπολοίπων μακριά από 0:
low med high
5.2 -3.1 2.8 ← ΠΡΟΒΛΗΜΑ!
Αυτό θα σήμαινε: - Το μοντέλο δεν εκτιμήθηκε σωστά
- Πιθανώς χρησιμοποιήθηκε λάθος μέθοδος
2. NaN ή NA στα υπόλοιπα:
low med high
NaN 2.3 NA ← ΠΡΟΒΛΗΜΑ!
Αυτό θα σήμαινε: - Λείπουν δεδομένα που δεν διαχειρίστηκαν σωστά
- Σφάλματα στους υπολογισμούς
3. Υπόλοιπα με παράξενη κατανομή:
hist(StudentSurvey$Residuals)
# Αν το ιστόγραμμα δείχνει πολύ ασύμμετρη
# ή multimodal κατανομή → ελέγξτε το μοντέλο
9.104 Οπτικοποίηση
ΜΕΣΟΙ ΟΡΟΙ ΥΠΟΛΟΙΠΩΝ ΑΝΑ ΟΜΑΔΑ:
Low: -3.94 × 10⁻¹⁶ │
Med: 1.06 × 10⁻¹⁵ │ ← Όλα ΠΟΛΥ κοντά στο 0
High: -1.23 × 10⁻¹⁵ │
↓
━━━━━━━━━━━━━━ 0
Αυτό είναι ΣΩΣΤΟ! ✓
ΥΠΟΛΟΙΠΑ ΑΝΑ ΟΜΑΔΑ:
Residuals
↑
10 │ ●
5 │ ●●●
0 │●●●●● ← Μέσος ≈ 0
-5 │ ●●●
-10 │ ●
└────────→ Low
Τα υπόλοιπα εξισορροπούνται γύρω από το 0!
9.105 Συμπέρασμα
ΟΧΙ, δεν έχετε κάνει κάτι λάθος!
Οι μέσοι όροι των υπολοίπων:
low med high
-3.938696e-16 1.064014e-15 -1.234220e-15
Είναι ακριβώς αυτό που αναμένουμε επειδή:
✓ Οι μέσοι όροι πάντα εξισορροπούν τα υπόλοιπα σε γραμμικά μοντέλα
✓ Οι αριθμοί είναι πρακτικά 0 (e-16 ≈ 0.0000000000000004)
✓ Η μικρή απόκλιση από το 0 οφείλεται σε στρογγυλοποίηση υπολογιστή
✓ Αυτό επιβεβαιώνει ότι το μοντέλο εκτιμήθηκε σωστά
✓ Είναι μαθηματικά αναγκαίο από τη μέθοδο ελαχίστων τετραγώνων
✓ Ισχύει για κάθε ομάδα ξεχωριστά (Low, Med, High)
Αυτό δεν είναι σφάλμα - είναι απόδειξη ότι τα πάντα λειτουργούν όπως πρέπει!
15. Φανταστείτε ότι έχετε και το κενό μοντέλο για το Exercise
και το σύνθετο μοντέλο για το Exercise
(δηλαδή, το μοντέλο που περιλαμβάνει το Pulse3Group
). Τι θα κάνατε αν θέλατε να συγκρίνετε πόσο καλά προβλέπουν το Exercise
;
Σωστή απάντηση: Δ - Οποιαδήποτε από τα παραπάνω
Όλες οι τρεις προσεγγίσεις είναι έγκυρες και ισοδύναμες μέθοδοι για τη σύγκριση μοντέλων. Ας δούμε καθεμία ξεχωριστά και πώς συνδέονται.
9.106 Α. Σύγκριση SS από κάθε μοντέλο
Μέθοδος:
Υπολογίστε το \(SS_{\text{Error}}\) για κάθε μοντέλο και συγκρίνετε:
\[SS_{\text{Error (Empty)}} \text{ vs } SS_{\text{Error (Complex)}}\]
Παράδειγμα:
# Κενό μοντέλο
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
ss_empty <- sum(residuals(empty_model)^2)
ss_empty
# [1] 15512.59
# Σύνθετο μοντέλο
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
ss_complex <- sum(residuals(pulse_model)^2)
ss_complex
# [1] 14423.79
Ερμηνεία:
\(SS_{\text{Error (Empty)}} = 15512.6\) → Περισσότερο ανεξήγητο σφάλμα
\(SS_{\text{Error (Complex)}} = 14423.8\) → Λιγότερο ανεξήγητο σφάλμα
Το σύνθετο μοντέλο είναι καλύτερο (μικρότερο SS) ✓
9.107 Β. Εξέταση της μείωσης σφάλματος
Μέθοδος:
Υπολογίστε πόσο μειώθηκε το σφάλμα με την προσθήκη του Pulse3Group
:
\[\text{Reduction} = SS_{\text{Error (Empty)}} - SS_{\text{Error (Complex)}}\]
\[\text{Reduction} = SS_{\text{Model}}\]
Παράδειγμα:
Ερμηνεία:
Η μείωση σφάλματος είναι 1088.8
Αυτό είναι το \(SS_{\text{Model}}\) - η διακύμανση που το Pulse3Group εξηγεί
Μεγαλύτερη μείωση = καλύτερο μοντέλο ✓
9.108 Γ. Εξέταση του PRE
Μέθοδος:
Υπολογίστε το Proportional Reduction in Error (PRE):
\[\text{PRE} = \frac{SS_{\text{Error (Empty)}} - SS_{\text{Error (Complex)}}}{SS_{\text{Error (Empty)}}}\]
\[\text{PRE} = \frac{SS_{\text{Model}}}{SS_{\text{Total}}}\]
Παράδειγμα:
PRE <- (ss_empty - ss_complex) / ss_empty
PRE
# [1] 0.07020319
# Ή από ANOVA
anova_table <- anova(pulse_model)
ss_model <- anova_table$"Sum Sq"[1]
ss_total <- ss_empty
PRE <- ss_model / ss_total
PRE
# [1] 0.07020319
Ερμηνεία:
PRE = 0.0702 = 7.02%
Το Pulse3Group εξηγεί το 7.02% της διακύμανσης στο Exercise
Το σφάλμα μειώθηκε κατά 7.02% σε σχέση με το κενό μοντέλο
Το PRE είναι ίδιο με το \(R^2\) σε απλή ανάλυση ✓
9.109 Πώς συνδέονται όλες οι μέθοδοι;
Όλες οι τρεις προσεγγίσεις βασίζονται στην ίδια πληροφορία:
Μέθοδος | Τι υπολογίζει | Φόρμουλα |
---|---|---|
Α. Σύγκριση SS | Απόλυτες τιμές σφάλματος | \(SS_{\text{Empty}}\) vs \(SS_{\text{Complex}}\) |
Β. Μείωση σφάλματος | Απόλυτη μείωση | \(SS_{\text{Empty}} - SS_{\text{Complex}}\) |
Γ. PRE | Αναλογική μείωση | \(\frac{SS_{\text{Empty}} - SS_{\text{Complex}}}{SS_{\text{Empty}}}\) |
Σχέση:
Α. SS_Empty = 15512.6 SS_Complex = 14423.8
↓ ↓
Σύγκριση: 15512.6 > 14423.8 (σύνθετο καλύτερο)
Β. Reduction = SS_Empty - SS_Complex
= 15512.6 - 14423.8
= 1088.8
Γ. PRE = Reduction / SS_Empty
= 1088.8 / 15512.6
= 0.0702 (7.02%)
Κάθε μέθοδος δίνει διαφορετική οπτική, αλλά όλες οδηγούν στο ίδιο συμπέρασμα!
9.110 Πότε να χρησιμοποιείτε καθεμία;
Α. Σύγκριση SS:
✓ Πότε: Όταν θέλετε να δείτε απόλυτες τιμές σφάλματος
✓ Πλεονέκτημα: Απλό, άμεσο
✓ Μειονέκτημα: Δύσκολο να ερμηνεύσετε το μέγεθος (15512 vs 14424 - πόσο καλό είναι;)
Β. Μείωση σφάλματος:
✓ Πότε: Όταν θέλετε να δείτε πόσο βελτίωσε το μοντέλο
✓ Πλεονέκτημα: Δείχνει την απόλυτη συνεισφορά της μεταβλητής
✓ Μειονέκτημα: Εξαρτάται από την κλίμακα των δεδομένων (1088 - μεγάλο ή μικρό;)
Γ. PRE:
✓ Πότε: Όταν θέλετε τυποποιημένο μέτρο σύγκρισης
✓ Πλεονέκτημα: Ανεξάρτητο από κλίμακα, εύκολο να ερμηνευτεί (7% είναι κατανοητό)
✓ Μειονέκτημα: Χρειάζεται επιπλέον υπολογισμό
9.111 Πλήρης ανάλυση σύγκρισης
# 1. ΥΠΟΛΟΓΙΣΜΟΣ SS
empty_model <- lm(Exercise ~ NULL, data = StudentSurvey)
pulse_model <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
ss_empty <- sum(residuals(empty_model)^2)
ss_complex <- sum(residuals(pulse_model)^2)
cat("SS Error (Empty): ", ss_empty, "\n")
# SS Error (Empty): 15512.59
cat("SS Error (Complex): ", ss_complex, "\n")
# SS Error (Complex): 14423.79
# 2. ΜΕΙΩΣΗ ΣΦΑΛΜΑΤΟΣ
reduction <- ss_empty - ss_complex
cat("Reduction in Error: ", reduction, "\n")
# Reduction in Error: 1088.802
# 3. PRE
PRE <- reduction / ss_empty
cat("PRE: ", PRE, "\n")
cat("PRE (percentage): ", PRE * 100, "%\n")
# PRE: 0.07020319
# PRE (percentage): 7.020319 %
# 4. ΣΥΓΚΡΙΣΗ
cat("\nΣύγκριση:\n")
cat("Το σύνθετο μοντέλο έχει", ss_empty - ss_complex, "λιγότερο SS\n")
cat("Αυτό αντιπροσωπεύει μείωση", PRE * 100, "%\n")
cat("Το Pulse3Group εξηγεί", PRE * 100, "% της διακύμανσης\n")
Αποτέλεσμα:
Σύγκριση:
Το σύνθετο μοντέλο έχει 1088.802 λιγότερο SS
Αυτό αντιπροσωπεύει μείωση 7.020319 %
Το Pulse3Group εξηγεί 7.020319 % της διακύμανσης
9.112 Οπτικοποίηση των τριών μεθόδων
Α. ΣΥΓΚΡΙΣΗ SS:
═══════════════════════════════
Empty: ████████████████████ 15512.6
Complex: ████████████████ 14423.8
Complex < Empty → Καλύτερο! ✓
Β. ΜΕΙΩΣΗ ΣΦΑΛΜΑΤΟΣ:
═══════════════════════════════
┌─────────────────────────────┐
│ Empty: 15512.6 │
└─────────────────────────────┘
↓ Μείωση
┌───────────────────────┬─────┐
│ Complex: 14423.8 │1088.8│ ← SS_Model
└───────────────────────┴─────┘
Reduction = 1088.8 ✓
Γ. PRE (ΑΝΑΛΟΓΙΚΗ ΜΕΙΩΣΗ):
═══════════════════════════════
Total: ████████████████████████████ 100%
├─────────────────┬──────────┤
│ Unexplained │ Explained │
│ 92.98% │ 7.02% │ ← PRE
└─────────────────┴──────────┘
PRE = 7.02% ✓
9.113 Σύνδεση με ANOVA
Όλες οι πληροφορίες σε ένα ANOVA table:
Response: Exercise
Df Sum Sq Mean Sq F value Pr(>F)
Pulse3Group 2 1088.8 544.42 13.545 2.094e-06 ***
Residuals 359 14423.8 40.18
Από το ANOVA μπορούμε να πάρουμε:
Μέτρο | Τιμή | Από πού |
---|---|---|
\(SS_{\text{Model}}\) | 1088.8 | Sum Sq (Pulse3Group) |
\(SS_{\text{Error (Complex)}}\) | 14423.8 | Sum Sq (Residuals) |
\(SS_{\text{Total}}\) | 15512.6 | 1088.8 + 14423.8 |
Μείωση | 1088.8 | \(SS_{\text{Model}}\) |
PRE | 0.0702 | \(1088.8 / 15512.6\) |
Όλες οι μέθοδοι χρησιμοποιούν την ίδια πληροφορία!
9.114 Πρακτικό παράδειγμα σύγκρισης
Ερώτηση: «Είναι το Pulse3Group χρήσιμο για την πρόβλεψη του Exercise;»
Απάντηση με κάθε μέθοδο:
Α. Σύγκριση SS:
«Ναι, το σύνθετο μοντέλο έχει \(SS_{\text{Error}} = 14423.8\), που είναι μικρότερο από το \(SS_{\text{Error}} = 15512.6\) του κενού μοντέλου.»
Β. Μείωση σφάλματος:
«Ναι, το Pulse3Group μειώνει το σφάλμα κατά 1088.8 μονάδες, που είναι σημαντικό.»
Γ. PRE:
«Ναι, το Pulse3Group εξηγεί το 7.02% της διακύμανσης στο Exercise, που είναι μια μετρήσιμη βελτίωση.»
Όλες οι απαντήσεις οδηγούν στο ίδιο συμπέρασμα!
9.115 Επιπλέον μέτρα σύγκρισης
Εκτός από Α, Β, Γ, υπάρχουν και άλλες μέθοδοι:
4. R² (ίδιο με PRE):
5. F-test:
anova(empty_model, pulse_model)
# F = 13.545, p = 2.094e-06 ***
# Στατιστικά σημαντικό → σύνθετο καλύτερο
6. AIC/BIC:
9.116 Συμπέρασμα
Όλες οι τρεις μέθοδοι (Α, Β, Γ) είναι έγκυρες και χρήσιμες:
✓ Α. Σύγκριση SS: Απλή, άμεση σύγκριση απόλυτων τιμών
✓ Β. Μείωση σφάλματος: Δείχνει την απόλυτη βελτίωση
✓ Γ. PRE: Τυποποιημένο μέτρο, εύκολο να ερμηνευτεί
Στην πράξη:
Χρησιμοποιήστε PRE (ή R²) για τυποποιημένη σύγκριση
Χρησιμοποιήστε μείωση σφάλματος για να δείτε την απόλυτη συνεισφορά
Χρησιμοποιήστε σύγκριση SS για γρήγορη οπτική επιθεώρηση
Ή καλύτερα - χρησιμοποιήστε και τις τρεις για πλήρη εικόνα!
16. Δίνεται ο πίνακας της supernova()
για το Pulse3Group_model
:
Analysis of Variance Table (Type III SS)
Model: Exercise ~ Pulse3Group
SS df MS F PRE p
----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 594.286 1 594.286 18.931 0.0501 .0000
Error (from model) | 11269.910 359 31.393
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11864.197 360 32.956
Ερμηνεύστε το PRE.
Σωστή απάντηση: Β - Το 0.05 (5%) της συνολικής μεταβλητότητας στις ώρες άσκησης εξηγείται από τις ομάδες καρδιακού παλμού.
Τι είναι το PRE;
Το PRE (Proportional Reduction in Error) μετρά το ποσοστό της μεταβλητότητας που εξηγεί το μοντέλο:
\[\text{PRE} = \frac{SS_{\text{Model}}}{SS_{\text{Total}}} = \frac{SS_{\text{Error (Empty)}} - SS_{\text{Error (Complex)}}}{SS_{\text{Error (Empty)}}}\]
9.117 Υπολογισμός από τον πίνακα
Από το supernova table:
SS_Model = 594.286
SS_Error = 11269.910
SS_Total = 11864.197
PRE = 0.0501
Επαλήθευση:
\[\text{PRE} = \frac{SS_{\text{Model}}}{SS_{\text{Total}}} = \frac{594.286}{11864.197} = 0.0501\]
Ή:
\[\text{PRE} = \frac{SS_{\text{Total}} - SS_{\text{Error}}}{SS_{\text{Total}}} = \frac{11864.197 - 11269.910}{11864.197} = \frac{594.287}{11864.197} = 0.0501\] ✓
9.118 Ερμηνεία του PRE = 0.0501
«Το Pulse3Group εξηγεί το 5.01% της συνολικής διακύμανσης στις ώρες άσκησης.»
Ή ισοδύναμα:
«Το σφάλμα μειώθηκε κατά 5.01% όταν προσθέσαμε το Pulse3Group στο μοντέλο.»
Με απλά λόγια:
Από τη συνολική διαφορά που βλέπουμε στις ώρες άσκησης μεταξύ των ατόμων
Το 5.01% μπορεί να εξηγηθεί από το ποια ομάδα καρδιακού παλμού ανήκει κάποιος
Το υπόλοιπο 94.99% οφείλεται σε άλλους παράγοντες (ατομικές διαφορές, κίνητρο, χρόνος, κ.λπ.)
9.119 Οπτικοποίηση
ΣΥΝΟΛΙΚΗ ΔΙΑΚΥΜΑΝΣΗ (SS_Total = 11864.2):
┌─────┬────────────────────────────────────────────┐
│ 5% │ 95% │
│Model│ Error │
└─────┴────────────────────────────────────────────┘
↑ ↑
│ Ανεξήγητη διακύμανση
│ (άλλοι παράγοντες)
│
Εξηγείται από Pulse3Group
(PRE = 5.01%)
594.3 μονάδες 11269.9 μονάδες
(εξήγηση) (σφάλμα)
9.120 Γιατί οι άλλες είναι λάθος;
Α. “Πιθανότητα 0.05 ότι έχουμε επεξηγηματικό μοντέλο” - ΛΑΘΟΣ
Αυτό συγχέει το PRE με το p-value
Το PRE = 0.0501 είναι μέτρο επιδόσης (effect size), όχι πιθανότητα
Το p-value στον πίνακα είναι p = 0.0000 (< 0.05), όχι 0.05
Διαφορά:
Μέτρο | Τιμή | Τι σημαίνει |
---|---|---|
PRE | 0.0501 (5%) | Πόση διακύμανση εξηγείται (effect size) |
p-value | 0.0000 | Πιθανότητα να δούμε αυτό το αποτέλεσμα αν H₀ αληθές |
Β. “5% του δείγματος έχει σχέση” - ΛΑΘΟΣ
Το PRE δεν αναφέρεται στο ποσοστό του δείγματος
Αναφέρεται στο ποσοστό της διακύμανσης
Όλα τα άτομα στο δείγμα συμμετέχουν στην ανάλυση, όχι μόνο το 5%
Παράδειγμα:
Δείγμα: 362 άτομα
PRE = 0.0501 ΔΕΝ σημαίνει ότι μόνο \(362 \times 0.05 = 18\) άτομα έχουν σχέση
Σημαίνει ότι το 5% της διακύμανσης εξηγείται για όλα τα 362 άτομα
Δ. “5% του SS του σύνθετου μοντέλου” - ΛΑΘΟΣ
Το PRE υπολογίζεται ως ποσοστό του \(SS_{\text{Total}}\), όχι του \(SS_{\text{Complex}}\)
Το “σύνθετο μοντέλο” έχει \(SS_{\text{Error}} = 11269.9\), όχι \(SS_{\text{Total}}\)
Σύγκριση:
Τι | Τιμή | PRE σε σχέση με αυτό; |
---|---|---|
\(SS_{\text{Total}}\) | 11864.2 | ΝΑΙ ← PRE = \(\frac{594.3}{11864.2}\) ✓ |
\(SS_{\text{Error}}\) | 11269.9 | ΟΧΙ ← Αυτό είναι το ανεξήγητο μέρος ✗ |
\(SS_{\text{Model}}\) | 594.3 | ΟΧΙ ← Αυτό είναι ο αριθμητής, όχι το παρονομαστής ✗ |
Αν υπολογίζαμε λάθος:
\[\frac{SS_{\text{Model}}}{SS_{\text{Error}}} = \frac{594.3}{11269.9} = 0.0527\] ← Λάθος φόρμουλα!
9.121 Πλήρης διάσπαση διακύμανσης
Από τον πίνακα:
SS_Total = SS_Model + SS_Error
11864.197 = 594.286 + 11269.910 ✓
PRE = SS_Model / SS_Total
= 594.286 / 11864.197
= 0.0501
= 5.01%
Explained: 594.3 (5.01%)
Unexplained: 11269.9 (94.99%)
─────────────────────────────
Total: 11864.2 (100%)
9.122 Σύνδεση με R²
Το PRE είναι ίδιο με το R²:
\[\text{PRE} = R^2 = \frac{SS_{\text{Model}}}{SS_{\text{Total}}} = 0.0501\]
Και τα δύο ερμηνεύονται ως:
«Το ποσοστό της διακύμανσης της εξαρτημένης μεταβλητής που εξηγείται από το μοντέλο.»
9.123 Πρακτική ερμηνεία
PRE = 0.0501 σημαίνει:
1. Σε όρους εξήγησης:
«Αν γνωρίζω σε ποια ομάδα καρδιακού παλμού ανήκει κάποιος, μπορώ να εξηγήσω το 5% της διακύμανσης στις ώρες άσκησης του.»
2. Σε όρους πρόβλεψης:
«Το μοντέλο με Pulse3Group κάνει 5% καλύτερες προβλέψεις από το κενό μοντέλο που χρησιμοποιεί μόνο το γενικό μέσο όρο.»
3. Σε όρους μείωσης σφάλματος:
«Το σφάλμα πρόβλεψης μειώθηκε κατά 5% όταν προσθέσαμε το Pulse3Group.»
4. Σε όρους ανεξήγητης διακύμανσης:
«Το 95% της διακύμανσης παραμένει ανεξήγητο - οφείλεται σε άλλους παράγοντες πέρα από το Pulse3Group.»
9.124 Είναι το 5% καλό;
Εξαρτάται από το πλαίσιο:
Στις κοινωνικές επιστήμες:
5% θεωρείται μικρό έως μέτριο effect size
Αλλά μπορεί να είναι στατιστικά σημαντικό (p < 0.05)
Και πρακτικά σημαντικό αν ο παράγοντας είναι εύκολα μετρήσιμος
Cohen’s guidelines για R²:
R² | Effect Size | Ερμηνεία |
---|---|---|
0.01 | Μικρό | Ελάχιστη επίδραση |
0.05 | Μικρό-Μέτριο | ← Εδώ είμαστε |
0.09 | Μέτριο | Αξιοσημείωτη επίδραση |
0.25 | Μεγάλο | Ισχυρή επίδραση |
Στο παράδειγμά μας:
PRE = 5% είναι μικρό, αλλά όχι αμελητέο
Το p < 0.0001 δείχνει ότι είναι στατιστικά σημαντικό
Υπάρχει πραγματική σχέση μεταξύ Exercise και Pulse3Group
Αλλά πολλοί άλλοι παράγοντες επηρεάζουν το Exercise (95%!)
9.125 Παράδειγμα με αριθμούς
Φανταστείτε 100 άτομα με διακύμανση Exercise = 100 μονάδες:
Συνολική διακύμανση: 100 μονάδες
PRE = 0.05 σημαίνει:
Εξηγημένη από Pulse3Group: 5 μονάδες (5%)
Ανεξήγητη (άλλοι παράγοντες): 95 μονάδες (95%)
Παράγοντες που μπορεί να εξηγούν το 95%:
- Κίνητρο/στόχοι
- Διαθέσιμος χρόνος
- Οικονομική κατάσταση (γυμναστήριο)
- Κουλτούρα/κοινωνικό περιβάλλον
- Υγεία/τραυματισμοί
- Προσωπικότητα
- κ.λπ.
9.126 Σύνδεση με F-test
Από τον πίνακα:
F = 18.931
p = .0000 (< .0001)
Το F-test ελέγχει αν το PRE είναι στατιστικά σημαντικό:
H₀: PRE = 0 (το Pulse3Group δεν εξηγεί τίποτα)
H₁: PRE > 0 (το Pulse3Group εξηγεί κάτι)
Αποτέλεσμα:
F = 18.931 είναι μεγάλο
p < 0.0001 είναι πολύ μικρό
Απορρίπτουμε το H₀
Συμπέρασμα: Το PRE = 5% είναι στατιστικά σημαντικό
9.127 Συμπέρασμα
Το PRE = 0.0501 ερμηνεύεται ως:
«Το 5.01% της συνολικής διακύμανσης στις ώρες άσκησης εξηγείται από τις ομάδες καρδιακού παλμού (Pulse3Group).»
Με άλλα λόγια:
✓ Από τη συνολική διαφορά στις ώρες άσκησης μεταξύ ατόμων
✓ Το 5% οφείλεται στο ποια ομάδα καρδιακού παλμού ανήκουν
✓ Το 95% οφείλεται σε άλλους παράγοντες
✓ Αυτό είναι ένα μικρό αλλά στατιστικά σημαντικό effect
✓ Το Pulse3Group βελτιώνει την πρόβλεψη σε σχέση με το κενό μοντέλο
✓ Αλλά υπάρχει πολύς χώρος για βελτίωση (95% ανεξήγητο!)
Το PRE μετρά ΠΑΝΤΑ το ποσοστό της διακύμανσης που εξηγείται, όχι πιθανότητες, ποσοστά δείγματος, ή άλλα μεγέθη!
17. Αποδεικνύει αυτή η ανάλυση ότι η καρδιαγγειακή υγεία (δηλαδή, το να ανήκει κάποιος σε χαμηλότερη ομάδα καρδιακού παλμού) προκαλεί τους φοιτητές να ασκούνται περισσότερο;
Σωστή απάντηση: Γ - Όχι, δεν μπορείς να αποδείξεις αιτιότητα από μια συσχετιστική μελέτη.
Θεμελιώδης αρχή:
«Correlation does not imply causation»
«Η συσχέτιση δεν συνεπάγεται αιτιότητα»
Η ανάλυση μας δείχνει ότι υπάρχει σχέση (association) μεταξύ Pulse3Group και Exercise, αλλά όχι ότι η μία μεταβλητή προκαλεί την άλλη.
9.128 Τι είδους μελέτη είναι αυτή;
Παρατηρησιακή/Συσχετιστική μελέτη (Observational/Correlational Study):
Μέτρηση μεταβλητών όπως υπάρχουν φυσικά
ΟΧΙ χειρισμός/παρέμβαση (manipulation)
ΟΧΙ τυχαία ανάθεση (random assignment)
Δεν ελέγχονται συγχυτές μεταβλητές (confounders)
Αυτή η μελέτη:
Ρωτήσαμε φοιτητές πόσες ώρες ασκούνται
Μετρήσαμε τον καρδιακό τους παλμό
Βρήκαμε σχέση μεταξύ τους
Αλλά ΔΕΝ παρέμβαμε ή ελέγξαμε άλλους παράγοντες
9.129 Γιατί δεν μπορούμε να αποδείξουμε αιτιότητα;
Υπάρχουν τρία πιθανά σενάρια:
1. Χαμηλός παλμός → Περισσότερη άσκηση (αιτιώδης κατεύθυνση Α)
«Άτομα με καλή καρδιαγγειακή υγεία (χαμηλός παλμός) έχουν περισσότερη ενέργεια και ασκούνται περισσότερο.»
2. Περισσότερη άσκηση → Χαμηλός παλμός (αιτιώδης κατεύθυνση Β)
«Άτομα που ασκούνται περισσότερο αναπτύσσουν καλύτερη καρδιαγγειακή υγεία και χαμηλότερο παλμό.»
3. Τρίτη μεταβλητή → Και τα δύο (συγχυτής/confounding)
«Κάποιος άλλος παράγοντας (π.χ., γενετική, κοινωνικοοικονομική κατάσταση) επηρεάζει και τον παλμό και την άσκηση.»
Η συσχετιστική μελέτη ΔΕΝ μπορεί να διακρίνει μεταξύ αυτών των σεναρίων!
9.130 Οπτικοποίηση πιθανών αιτιωδών σχέσεων
ΣΕΝΑΡΙΟ 1: Χαμηλός παλμός προκαλεί άσκηση
┌──────────────────┐
│ Καρδιαγγειακή │
│ υγεία (χαμηλός │ ──→ Περισσότερη
│ παλμός) │ άσκηση
└──────────────────┘
ΣΕΝΑΡΙΟ 2: Άσκηση προκαλεί χαμηλό παλμό
┌──────────────────┐
│ Περισσότερη │
│ άσκηση │ ──→ Καρδιαγγειακή
│ │ υγεία (χαμηλός παλμός)
└──────────────────┘
ΣΕΝΑΡΙΟ 3: Συγχυτής (τρίτη μεταβλητή)
┌──────────────────┐
│ Γενετική / │
│ Κοινωνικοοικο- │
│ νομική κατά- │
│ σταση / Ηλικία │
└────────┬─────────┘
│
┌────────┴────────┐
↓ ↓
Χαμηλός παλμός Περισσότερη
άσκηση
Η συσχετιστική μελέτη δείχνει μόνο:
Χαμηλός παλμός ←──;──→ Περισσότερη άσκηση
(Υπάρχει σχέση, αλλά όχι κατεύθυνση!)
9.131 Τι θα χρειαζόταν για αιτιότητα;
Για να αποδείξουμε αιτιότητα, χρειαζόμαστε:
1. Πειραματικό σχεδιασμό (Experimental Design):
Τυχαία ανάθεση (random assignment) σε ομάδες
Χειρισμός της ανεξάρτητης μεταβλητής
Έλεγχος άλλων παραγόντων
Παράδειγμα πειραματικού σχεδιασμού:
1. Πάρε 300 άτομα με παρόμοιο fitness level
2. Τυχαία ανάθεση σε 3 ομάδες:
- Ομάδα Α: 0 ώρες άσκησης/εβδομάδα (έλεγχος)
- Ομάδα Β: 5 ώρες άσκησης/εβδομάδα
- Ομάδα Γ: 10 ώρες άσκησης/εβδομάδα
3. Παρακολούθησε για 6 μήνες
4. Μέτρησε καρδιακό παλμό στο τέλος
5. Αν Β και Γ έχουν χαμηλότερο παλμό από Α:
→ Μπορούμε να πούμε ότι η άσκηση ΠΡΟΚΑΛΕΙ χαμηλότερο παλμό
2. Κριτήρια Bradford Hill για αιτιότητα:
Χρονική προτεραιότητα: Η αιτία πρέπει να προηγείται του αποτελέσματος
Ισχύς σχέσης: Ισχυρότερη σχέση = πιο πιθανή αιτιότητα
Σχέση δόσης-απόκρισης: Περισσότερη αιτία = περισσότερο αποτέλεσμα
Συνέπεια: Αναπαραγώγιμη σε διαφορετικές μελέτες
Βιολογική πιθανότητα: Υπάρχει μηχανισμός που εξηγεί τη σχέση;
Εναλλακτικές εξηγήσεις: Έχουν αποκλειστεί;
Η μελέτη μας ΔΕΝ πληροί αυτά τα κριτήρια!
9.132 Γιατί οι άλλες είναι λάθος;
Α. “Η ανάλυση δείχνει ότι η άσκηση προκαλεί χαμηλό παλμό” - ΛΑΘΟΣ
Αυτό επίσης δεν αποδεικνύεται από τη συσχετιστική μελέτη
Η επιλογή Α απλά αντιστρέφει την αιτιώδη κατεύθυνση, αλλά εξακολουθεί να είναι λάθος
Κανένα από τα δύο σενάρια δεν αποδεικνύεται
Διευκρίνιση:
Ενώ είναι πιο πιθανό (βάσει βιολογίας) ότι η άσκηση προκαλεί χαμηλό παλμό, η συσχετιστική μελέτη δεν το αποδεικνύει.
Β. “Ναι, επειδή έχουμε τις καλύτερες εκτιμήσεις παραμέτρων” - ΛΑΘΟΣ
Οι παράμετροι του μοντέλου (\(b_0\), \(b_1\), \(b_2\)) περιγράφουν τη σχέση
ΟΧΙ την αιτιότητα
Διαφορά:
Μέτρο | Τι δείχνει | Δείχνει αιτιότητα; |
---|---|---|
Παράμετροι (\(b_0\), \(b_1\), \(b_2\)) | Μέγεθος σχέσης | ΟΧΙ |
F-statistic | Στατιστική σημαντικότητα | ΟΧΙ |
PRE/R² | Ποσοστό εξήγησης | ΟΧΙ |
Πειραματικός σχεδιασμός | Χειρισμός + τυχαία ανάθεση | ΝΑΙ |
Δ. “Ναι, επειδή το F είναι μεγάλο και το PRE λογικό” - ΛΑΘΟΣ
Το F-statistic δείχνει ότι η σχέση είναι στατιστικά σημαντική
Το PRE δείχνει το μέγεθος της σχέσης
Κανένα από τα δύο δεν δείχνει αιτιότητα
Παράδειγμα:
Σχέση: Πωλήσεις παγωτού ←→ Πνιγμοί
Ανάλυση:
- F = 25.3 (πολύ σημαντικό!)
- PRE = 0.65 (ισχυρή σχέση!)
Αλλά:
- Το παγωτό ΔΕΝ προκαλεί πνιγμούς
- Οι πνιγμοί ΔΕΝ προκαλούν πωλήσεις παγωτού
Συγχυτής: ΘΕΡΜΟΚΡΑΣΙΑ
- Καλοκαίρι → περισσότερο παγωτό
- Καλοκαίρι → περισσότερη κολύμβηση → περισσότεροι πνιγμοί
9.133 Τι ΜΠΟΡΟΥΜΕ να πούμε από αυτή τη μελέτη;
Ασφαλείς δηλώσεις:
✓ «Υπάρχει σχέση μεταξύ καρδιακού παλμού και ωρών άσκησης.»
✓ «Άτομα με χαμηλό καρδιακό παλμό τείνουν να ασκούνται περισσότερο κατά μέσο όρο.»
✓ «Άτομα με υψηλό καρδιακό παλμό τείνουν να ασκούνται λιγότερο κατά μέσο όρο.»
✓ «Το Pulse3Group εξηγεί το 5% της διακύμανσης στο Exercise.»
✓ «Η σχέση είναι στατιστικά σημαντική (p < 0.001).»
Μη ασφαλείς δηλώσεις (χωρίς πειραματικό σχεδιασμό):
✗ «Χαμηλός παλμός προκαλεί περισσότερη άσκηση.»
✗ «Η άσκηση προκαλεί χαμηλό παλμό.»
✗ «Αν βελτιώσεις την καρδιαγγειακή σου υγεία, θα ασκηθείς περισσότερο.»
✗ «Αν ασκηθείς περισσότερο, θα έχεις χαμηλότερο παλμό.»
9.134 Παράδειγμα με πιθανούς συγχυτές
Πιθανές τρίτες μεταβλητές που επηρεάζουν και τα δύο:
1. Ηλικία:
Νεότεροι άνθρωποι: χαμηλότερος παλμός + περισσότερη άσκηση
Μεγαλύτεροι άνθρωποι: υψηλότερος παλμός + λιγότερη άσκηση
2. Γενετική προδιάθεση:
- Κάποιοι γεννιούνται με καλύτερο μεταβολισμό → χαμηλότερος παλμός + περισσότερη ενέργεια για άσκηση
3. Κοινωνικοοικονομική κατάσταση:
- Υψηλότερο εισόδημα → πρόσβαση σε γυμναστήρια, διατροφολόγους → καλύτερη υγεία + περισσότερη άσκηση
4. Stress:
Χαμηλό stress → χαμηλότερος παλμός + περισσότερος χρόνος για άσκηση
Υψηλό stress → υψηλότερος παλμός + λιγότερος χρόνος για άσκηση
5. Ύπνος:
- Καλός ύπνος → χαμηλότερος παλμός + περισσότερη ενέργεια για άσκηση
Χωρίς έλεγχο αυτών των παραγόντων, δεν μπορούμε να ξεχωρίσουμε την αιτία!
9.135 Σύγκριση σχεδιασμών μελέτης
Χαρακτηριστικό | Παρατηρησιακή | Πειραματική |
---|---|---|
Τυχαία ανάθεση | ΟΧΙ | ΝΑΙ |
Χειρισμός μεταβλητής | ΟΧΙ | ΝΑΙ |
Έλεγχος συγχυτών | ΟΧΙ | ΝΑΙ |
Μπορεί να δείξει σχέση | ΝΑΙ | ΝΑΙ |
Μπορεί να δείξει αιτιότητα | ΟΧΙ | ΝΑΙ |
Παράδειγμα | Ερωτηματολόγιο | Τυχαιοποιημένο πείραμα |
Η μελέτη μας είναι παρατηρησιακή → ΔΕΝ μπορεί να αποδείξει αιτιότητα!
9.136 Τι λένε οι ειδικοί;
Bradford Hill (1965):
«All scientific work is incomplete… All scientific work is liable to be upset or modified by advancing knowledge. That does not confer upon us a freedom to ignore the knowledge we already have, or to postpone the action that it appears to demand at a given time.»
Pearl (2009) - Causality:
«Correlation is not causation, but it’s a hint.»
Σωστή προσέγγιση:
Η συσχετιστική μελέτη υποδεικνύει πιθανή σχέση
Διεξάγουμε πειραματικές μελέτες για να επιβεβαιώσουμε αιτιότητα
Εξετάζουμε μηχανισμούς (πώς λειτουργεί η αιτιότητα;)
Αναζητούμε αναπαραγωγιμότητα σε πολλές μελέτες
9.137 Συμπέρασμα
ΟΧΙ, αυτή η ανάλυση ΔΕΝ αποδεικνύει αιτιότητα.
Γιατί;
«Δεν μπορείς να αποδείξεις αιτιότητα από μια συσχετιστική μελέτη.»
Τι έχουμε:
✓ Παρατηρησιακά δεδομένα (ερωτηματολόγιο)
✓ Στατιστικά σημαντική σχέση (F = 18.9, p < 0.001)
✓ Μέτριο μέγεθος επίδρασης (PRE = 5%)
Τι ΔΕΝ έχουμε:
✗ Τυχαία ανάθεση σε ομάδες
✗ Χειρισμό της ανεξάρτητης μεταβλητής
✗ Έλεγχο συγχυτών (confounders)
✗ Χρονική προτεραιότητα (ποια έρχεται πρώτη;)
Πιθανές εξηγήσεις:
Χαμηλός παλμός → Περισσότερη άσκηση
Περισσότερη άσκηση → Χαμηλός παλμός (πιο πιθανό βιολογικά)
Τρίτη μεταβλητή → Και τα δύο (π.χ., γενετική, ηλικία, SES)
Χωρίς πειραματικό σχεδιασμό, δεν μπορούμε να διακρίνουμε μεταξύ αυτών!
Για να αποδείξουμε αιτιότητα, θα χρειαζόμασταν:
Randomized Controlled Trial (RCT)
Προοπτική μελέτη (longitudinal study)
Quasi-experimental design με προσεκτικό έλεγχο συγχυτών
Μέχρι τότε, μπορούμε μόνο να πούμε: “Υπάρχει σχέση, όχι απαραίτητα αιτιότητα.”
18. Ενδιαφερόμασταν για το αν οι ομάδες καρδιακού παλμού εξηγούν επίσης κάποια από τη μεταβλητότητα που βλέπουμε στον αριθμό των piercing των φοιτητών. Ορίστε ο πίνακας της supernova για αυτό το μοντέλο:
Analysis of Variance Table (Type III SS)
Model: Piercings ~ Pulse3Group
SS df MS F PRE p
----- --------------- | -------- --- ------ ----- ------ -----
Model (error reduced) | 28.704 1 28.704 6.168 0.0169 .0135
Error (from model) | 1670.725 359 4.654
----- --------------- | -------- --- ------ ----- ------ -----
Total (empty model) | 1699.429 360 4.721
Γιατί αυτός ο πίνακας έχει μικρότερο Sum of Squares Total (1699) από τον πίνακα supernova για την Exercise
που εξηγείται από την Pulse3Group
(11864);
Σωστή απάντηση: Δ - Το SS Total εξαρτάται από τη διακύμανση στην εξαρτημένη μεταβλητή (outcome). Το Piercings
είναι διαφορετική εξαρτημένη μεταβλητή, οπότε έχει διαφορετικό SS Total.
Τι είναι το \(SS_{\text{Total}}\);
\[SS_{\text{Total}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2\]
«Το \(SS_{\text{Total}}\) μετρά τη συνολική διακύμανση στην εξαρτημένη μεταβλητή (outcome variable), ανεξάρτητα από οποιαδήποτε επεξηγηματική μεταβλητή.»
9.138 Σύγκριση των δύο μοντέλων
Μοντέλο 1: Exercise ~ Pulse3Group
SS_Total = 11864.197
Εξαρτημένη μεταβλητή: Exercise (ώρες άσκησης/εβδομάδα)
Επεξηγηματική μεταβλητή: Pulse3Group
\(SS_{\text{Total}} = \sum(\text{Exercise}_i - \overline{\text{Exercise}})^2\)
Μοντέλο 2: Piercings ~ Pulse3Group
SS_Total = 1699.429
Εξαρτημένη μεταβλητή: Piercings (αριθμός piercing)
Επεξηγηματική μεταβλητή: Pulse3Group (ίδια!)
\(SS_{\text{Total}} = \sum(\text{Piercings}_i - \overline{\text{Piercings}})^2\)
Διαφορά:
Η επεξηγηματική μεταβλητή είναι η ίδια (Pulse3Group), αλλά η εξαρτημένη μεταβλητή είναι διαφορετική (Exercise vs Piercings).
9.139 Γιατί το \(SS_{\text{Total}}\) διαφέρει;
Το \(SS_{\text{Total}}\) μετρά τη διακύμανση στο Y (outcome):
\[SS_{\text{Total}} = \sum_{i=1}^{n}(Y_i - \bar{Y})^2\]
Για το Exercise:
Μέσος: \(\bar{\text{Exercise}} \approx 9.4\) ώρες
Εύρος: από 0 έως ~40 ώρες (μεγάλη διακύμανση)
Διακύμανση: \(s^2 \approx 32.96\)
\(SS_{\text{Total}} = 11864.2\) (μεγάλο)
Για το Piercings:
Μέσος: \(\bar{\text{Piercings}} \approx 1.5\) piercing
Εύρος: από 0 έως ~10 piercing (μικρότερη διακύμανση)
Διακύμανση: \(s^2 \approx 4.72\)
\(SS_{\text{Total}} = 1699.4\) (μικρότερο)
Συμπέρασμα:
Το Exercise έχει μεγαλύτερη διακύμανση από το Piercings → μεγαλύτερο \(SS_{\text{Total}}\)!
9.140 Μαθηματική εξήγηση
Σχέση SS Total με διακύμανση:
\[SS_{\text{Total}} = (n-1) \times s^2\]
Όπου: - \(n\) = αριθμός παρατηρήσεων
- \(s^2\) = διακύμανση (variance)
Για το Exercise:
\[SS_{\text{Total}} = 360 \times 32.956 = 11864.2\] ✓
Για το Piercings:
\[SS_{\text{Total}} = 360 \times 4.721 = 1699.4\] ✓
Επειδή το Exercise έχει μεγαλύτερη διακύμανση (\(s^2 = 32.96\) vs \(4.72\)), έχει μεγαλύτερο \(SS_{\text{Total}}\)!
9.141 Οπτικοποίηση
ΔΙΑΚΥΜΑΝΣΗ ΣΤΟ EXERCISE:
Exercise (ώρες)
↑
40 │ ●
30 │ ● ●
20 │ ● ● ● ● ● ← Μεγάλη διακύμανση
10 │ ● ● ● ● ● ● ● ● ●
0 │ ● ● ● ● ●
└─────────────────→
Ȳ = 9.4, s² = 32.96
SS_Total = 11864 (ΜΕΓΑΛΟ)
ΔΙΑΚΥΜΑΝΣΗ ΣΤΟ PIERCINGS:
Piercings (αριθμός)
↑
10 │ ●
8 │ ●
6 │ ● ← Μικρότερη διακύμανση
4 │ ● ●
2 │ ● ● ● ● ●
0 │ ● ● ● ● ● ● ● ●
└─────────────────→
Ȳ = 1.5, s² = 4.72
SS_Total = 1699 (ΜΙΚΡΟΤΕΡΟ)
9.142 Γιατί οι άλλες είναι λάθος;
Α. “Το SS Total δεν πρέπει ποτέ να αλλάζει - σφάλμα κώδικα” - ΛΑΘΟΣ
Το \(SS_{\text{Total}}\) αλλάζει όταν αλλάζει η εξαρτημένη μεταβλητή
Είναι φυσιολογικό να είναι διαφορετικό για Exercise vs Piercings
Δεν υπάρχει σφάλμα!
Τι παραμένει σταθερό:
Το \(SS_{\text{Total}}\) παραμένει σταθερό μόνο για την ίδια εξαρτημένη μεταβλητή, ανεξάρτητα από το μοντέλο:
Μοντέλο | \(SS_{\text{Total}}\) |
---|---|
Exercise ~ NULL | 11864.2 |
Exercise ~ Pulse3Group | 11864.2 ✓ (ίδιο) |
Exercise ~ Gender | 11864.2 ✓ (ίδιο) |
Piercings ~ Pulse3Group | 1699.4 ✗ (διαφορετικό Y!) |
Β. “Το SS Total εξαρτάται από την επεξηγηματική μεταβλητή” - ΛΑΘΟΣ
Το \(SS_{\text{Total}}\) ΔΕΝ εξαρτάται από την επεξηγηματική μεταβλητή (X)
Εξαρτάται ΜΟΝΟ από την εξαρτημένη μεταβλητή (Y)
Απόδειξη:
\[SS_{\text{Total}} = \sum(Y_i - \bar{Y})^2\]
Δεν υπάρχει X σε αυτόν τον τύπο! Μόνο Y!
Παράδειγμα:
# Exercise με διαφορετικές επεξηγηματικές μεταβλητές
model1 <- lm(Exercise ~ Pulse3Group, data = StudentSurvey)
model2 <- lm(Exercise ~ Gender, data = StudentSurvey)
model3 <- lm(Exercise ~ Year, data = StudentSurvey)
# Όλα έχουν το ΙΔΙΟ SS_Total!
sum(residuals(lm(Exercise ~ NULL))^2)
# [1] 11864.197 ← Πάντα το ίδιο για Exercise!
Γ. “Το SS Total είναι πάντα μοναδικά διαφορετικό” - ΛΑΘΟΣ
Αυτό είναι υπερβολικά γενικό και ανακριβές
Το \(SS_{\text{Total}}\) είναι το ίδιο για την ίδια εξαρτημένη μεταβλητή
Είναι διαφορετικό μόνο όταν αλλάζει η εξαρτημένη μεταβλητή
Σωστή δήλωση:
«Το \(SS_{\text{Total}}\) είναι μοναδικό για κάθε εξαρτημένη μεταβλητή, αλλά σταθερό για την ίδια εξαρτημένη μεταβλητή ανεξάρτητα από το μοντέλο.»
9.143 Κλειδί για κατανόηση: Τι εξαρτάται από τι;
\(SS_{\text{Total}}\) (συνολική διακύμανση):
✓ Εξαρτάται από: Εξαρτημένη μεταβλητή Y (Exercise, Piercings, κ.λπ.)
✗ ΔΕΝ εξαρτάται από: Επεξηγηματική μεταβλητή X (Pulse3Group, Gender, κ.λπ.)
✗ ΔΕΝ εξαρτάται από: Το μοντέλο που χρησιμοποιούμε
\(SS_{\text{Model}}\) (εξηγημένη διακύμανση):
✓ Εξαρτάται από: Και τα δύο Y και X
✓ Εξαρτάται από: Πόσο καλά το X εξηγεί το Y
\(SS_{\text{Error}}\) (ανεξήγητη διακύμανση):
✓ Εξαρτάται από: Και τα δύο Y και X
✓ Εξαρτάται από: Πόσο το μοντέλο αποτυγχάνει να εξηγήσει
9.144 Σύγκριση των δύο μοντέλων side-by-side
Στοιχείο | Exercise ~ Pulse3Group | Piercings ~ Pulse3Group |
---|---|---|
Εξαρτημένη Y | Exercise | Piercings ← ΔΙΑΦΟΡΑ! |
Επεξηγηματική X | Pulse3Group | Pulse3Group ← ΙΔΙΑ |
\(SS_{\text{Total}}\) | 11864.2 | 1699.4 ← ΔΙΑΦΟΡΑ! |
\(SS_{\text{Model}}\) | 594.3 | 28.7 ← Διαφορά |
\(SS_{\text{Error}}\) | 11269.9 | 1670.7 ← Διαφορά |
PRE | 0.0501 (5%) | 0.0169 (1.7%) ← Διαφορά |
Διακύμανση Y (\(s^2\)) | 32.96 | 4.72 ← ΔΙΑΦΟΡΑ! |
Το \(SS_{\text{Total}}\) αντικατοπτρίζει τη διακύμανση του Y!
9.145 Πρακτικό παράδειγμα
# Υπολογισμός SS_Total για Exercise
exercise_mean <- mean(StudentSurvey$Exercise, na.rm = TRUE)
ss_total_exercise <- sum((StudentSurvey$Exercise - exercise_mean)^2, na.rm = TRUE)
ss_total_exercise
# [1] 11864.197
# Υπολογισμός SS_Total για Piercings
piercings_mean <- mean(StudentSurvey$Piercings, na.rm = TRUE)
ss_total_piercings <- sum((StudentSurvey$Piercings - piercings_mean)^2, na.rm = TRUE)
ss_total_piercings
# [1] 1699.429
# Σύγκριση διακυμάνσεων
var(StudentSurvey$Exercise, na.rm = TRUE)
# [1] 32.95610 ← Μεγαλύτερη!
var(StudentSurvey$Piercings, na.rm = TRUE)
# [1] 4.720636 ← Μικρότερη!
# Σχέση: SS_Total = (n-1) × variance
360 * 32.95610
# [1] 11864.20 ✓
360 * 4.720636
# [1] 1699.43 ✓
9.146 Γιατί αυτό έχει σημασία;
Κατανόηση του \(SS_{\text{Total}}\):
Σύγκριση μοντέλων: Μπορούμε να συγκρίνουμε μοντέλα για την ίδια εξαρτημένη μεταβλητή
Ερμηνεία PRE: Το PRE είναι σχετικό με το \(SS_{\text{Total}}\) της εξαρτημένης
Αποφυγή σύγχυσης: Δεν περιμένουμε το ίδιο \(SS_{\text{Total}}\) για διαφορετικές εξαρτημένες
Παράδειγμα:
PRE για Exercise = 5.01%
→ Εξηγεί 594/11864 = 5%
PRE για Piercings = 1.69%
→ Εξηγεί 29/1699 = 1.7%
Τα PRE είναι συγκρίσιμα (και τα δύο ποσοστά),
αλλά τα απόλυτα SS δεν είναι!
9.147 Συμπέρασμα
Το \(SS_{\text{Total}}\) είναι μικρότερο για το Piercings (1699) από ό,τι για το Exercise (11864) επειδή:
«Το \(SS_{\text{Total}}\) εξαρτάται από τη διακύμανση στην εξαρτημένη μεταβλητή (outcome). Το Piercings είναι διαφορετική εξαρτημένη μεταβλητή, οπότε έχει διαφορετικό \(SS_{\text{Total}}\).»
Συγκεκριμένα:
✓ Το Exercise έχει μεγαλύτερη διακύμανση (\(s^2 = 32.96\))
✓ Το Piercings έχει μικρότερη διακύμανση (\(s^2 = 4.72\))
✓ Άρα: \(SS_{\text{Total (Exercise)}} > SS_{\text{Total (Piercings)}}\)
✓ Η επεξηγηματική μεταβλητή (Pulse3Group) είναι ίδια και στα δύο
✓ Αλλά η εξαρτημένη μεταβλητή είναι διαφορετική
✓ Το \(SS_{\text{Total}}\) καθορίζεται μόνο από το Y, όχι από το X
Γενικός κανόνας:
\[SS_{\text{Total}} = \sum(Y_i - \bar{Y})^2 = (n-1) \times s_Y^2\]
Διαφορετικό Y → Διαφορετική διακύμανση → Διαφορετικό \(SS_{\text{Total}}\)!
- Ρίξτε μια ματιά στους δύο πίνακες της
supernova()
παρακάτω. Με βάση αυτούς τους πίνακες, θα μπορούσαμε να υποστηρίξουμε ότι ηPulse3Group
εξηγεί μεγαλύτερο μέρος της μεταβλητότητας στηνExercise
παρά στηνPiercings
. Εξηγήστε γιατί.
Table (Type III SS)
Analysis of Variance : Exercise ~ Pulse3Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 594.286 1 594.286 18.931 0.0501 .0000
Error (from model) | 11269.910 359 31.393
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11864.197 360 32.956
Table (Type III SS)
Analysis of Variance : Piercings ~ Pulse3Group
Model
SS df MS F PRE p----- --------------- | -------- --- ------ ----- ------ -----
Model (error reduced) | 28.704 1 28.704 6.168 0.0169 .0135
Error (from model) | 1670.725 359 4.654
----- --------------- | -------- --- ------ ----- ------ -----
Total (empty model) | 1699.429 360 4.721
- Μπορούμε να χρησιμοποιήσουμε το άθροισμα τετραγώνων για να υποστηρίξουμε ότι η μεταβλητή
Pulse3Group
εξηγεί μεγαλύτερη μεταβλητότητα στηνExercise
σε σχέση με τηνPiercings
; Γιατί ναι ή γιατί όχι;
Table (Type III SS)
Analysis of Variance : Exercise ~ Pulse3Group
Model
SS df MS F PRE p----- --------------- | --------- --- ------- ------ ------ -----
Model (error reduced) | 594.286 1 594.286 18.931 0.0501 .0000
Error (from model) | 11269.910 359 31.393
----- --------------- | --------- --- ------- ------ ------ -----
Total (empty model) | 11864.197 360 32.956
Table (Type III SS)
Analysis of Variance : Piercings ~ Pulse3Group
Model
SS df MS F PRE p----- --------------- | -------- --- ------ ----- ------ -----
Model (error reduced) | 28.704 1 28.704 6.168 0.0169 .0135
Error (from model) | 1670.725 359 4.654
----- --------------- | -------- --- ------ ----- ------ -----
Total (empty model) | 1699.429 360 4.721