まとめ
- R² teradjust mengoreksi R² standar sesuai jumlah fitur, sehingga tidak terlalu optimistis ketika model makin kompleks.
- Hitung R² dan R² teradjust di Python untuk melihat bagaimana nilainya berbeda saat menambah prediktor.
- Pahami keterbatasannya pada sampel kecil dan bagaimana mengombinasikannya dengan kriteria lain.
1. Definisi #
$$ \mathrm{R}^2_{\mathrm{adj}} = 1 - (1 - R^2)\frac{n - 1}{n - p - 1} $$
- \(n\): jumlah sampel, \(p\): jumlah fitur.
- Ketika \(p\) bertambah tanpa peningkatan kecocokan, R² teradjust akan turun.
2. Contoh Python #
import numpy as np
from sklearn.datasets import make_regression
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
X, y = make_regression(
n_samples=1_000,
n_features=10,
n_informative=6,
noise=5.0,
random_state=0,
)
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=0
)
model = LinearRegression()
model.fit(X_train, y_train)
r2 = model.score(X_test, y_test)
n, p = X_test.shape
adj_r2 = 1 - (1 - r2) * (n - 1) / (n - p - 1)
print(f"R2 = {r2:.3f}")
print(f"R2 teradjust = {adj_r2:.3f}")
Pastikan \(n - p - 1 > 0\); jika tidak, kurangi fitur atau tambah ukuran validasi.
3. Kapan digunakan #
- Seleksi fitur: jika R² teradjust turun setelah menambah fitur, kemungkinan fitur tersebut tidak membantu.
- Sampel kecil: nilai cenderung fluktuatif; gunakan validasi silang untuk memastikan peningkatan.
- Perbandingan model: dalam dataset yang sama, R² teradjust menghargai model yang lebih hemat fitur.
4. Hubungan dengan metrik lain #
| Metrik | Kelebihan | Kekurangan |
|---|---|---|
| R² | Menjelaskan proporsi variansi | Selalu naik saat menambah fitur |
| R² teradjust | Mengoreksi jumlah fitur | Tidak stabil untuk sampel sangat kecil |
| AIC / BIC | Likelihood + penalti | Bergantung pada asumsi likelihood |
Ringkasan #
- R² teradjust menahan R² agar tidak terlalu optimistis, dan menunjukkan apakah fitur tambahan benar-benar berguna.
- Gunakan bersamaan dengan R², AIC/BIC, atau validasi silang untuk memperoleh gambaran menyeluruh.
- Perhatikan rasio sampel terhadap fitur; metrik ini bekerja baik hanya jika penyebut tetap positif.