Kanker merupakan salah satu penyebab kematian utama di dunia, sehingga diagnosis dini dan akurat menjadi sangat penting dalam upaya penanganannya. Analisis citra medis, khususnya citra sel tumor payudara, telah berkembang dengan memanfaatkan berbagai fitur kuantitatif seperti ukuran, bentuk, dan tekstur untuk membedakan sel jinak dan ganas. Studi kasus ini menggunakan dataset kanker payudara Wisconsin, di mana variabel dependen yang dipilih adalah radius worst (radius terbesar dari sel tumor), yang merupakan indikator kunci ukuran tumor dan sering kali berkorelasi dengan tingkat keganasan. Permasalahan yang sering muncul dalam pemodelan regresi dengan banyak fitur (seperti area worst, perimeter worst, dan texture worst) adalah adanya multikolinearitas, yaitu korelasi tinggi antar variabel independen. Hal ini dapat menyebabkan estimasi koefisien regresi Ordinary Least Squares (OLS) menjadi tidak stabil, varians besar, dan interpretasi yang sulit.
Dalam konteks analisis fitur-fitur tumor payudara, multikolinearitas sangat mungkin terjadi karena fitur-fitur seperti radius, area, dan perimeter secara matematis saling berhubungan. Untuk mengatasi masalah ini, diperlukan metode regresi alternatif yang lebih robust. Principal Component Regression (PCR) dan Ridge Regression merupakan dua pendekatan populer yang dirancang khusus untuk menangani data dengan multikolinearitas. PCR mengatasi masalah ini dengan mereduksi dimensi data melalui transformasi variabel asli menjadi komponen utama yang saling ortogonal, lalu melakukan regresi pada komponen terpilih. Sementara itu, Regresi Ridge menstabilkan estimasi dengan menambahkan penalti pada besar koefisien melalui parameter regularisasi lambda, sehingga menghasilkan model dengan varians yang lebih kecil meskipun dengan sedikit bias.
Bagaimana pemodelan dan kinerja dari Principal Component Regression (PCR)?
Bagaimana pemodelan dan kinerja dari Ridge Regression?
Bagaimana perbandingan kinerja Principal Component Regression (PCR) dan Ridge Regression?
Memodelkan dan mengukur kinerja dari Principal Component Regression (PCR)
Memodelkan dan mengukur kinerja dari Ridge Regression
Membandingkan kinerja Principal Component Regression (PCR) dan Ridge Regression
Asumsi multikolinearitas merujuk pada kondisi adanya hubungan linear yang kuat atau korelasi tinggi antar variabel independen dalam model regresi berganda. Secara klasik, multikolinearitas sempurna terjadi ketika satu variabel prediktor merupakan kombinasi linear sempurna dari variabel prediktor lainnya, menyebabkan matriks (X’X) menjadi singular sehingga koefisien regresi tidak dapat diestimasi (Gujarati & Porter, 2009). Namun, dalam praktiknya, yang lebih sering dijumpai adalah multikolinearitas tinggi (imperfect multicollinearity), di mana korelasi antar variabel independen cukup tinggi sehingga mengakibatkan masalah statistik, meskipun estimasi tetap mungkin dilakukan. Kondisi ini menyebabkan varians dan standar error estimator koefisien regresi menjadi sangat besar, sehingga estimasi menjadi tidak stabil dan sensitif terhadap perubahan kecil dalam data (Wooldridge, 2016). Akibatnya, meskipun model mungkin memiliki daya prediksi yang baik (nilai R² tinggi), pengujian signifikansi individual untuk variabel yang berkorelasi menjadi tidak dapat diandalkan karena nilai-t yang rendah dan interval kepercayaan yang sangat lebar.
Deteksi terhadap pelanggaran asumsi ini dapat dilakukan melalui beberapa metode. Ukuran yang paling umum adalah Variance Inflation Factor (VIF), di mana nilai VIF di atas 10 (atau tolerance di bawah 0.1) sering dijadikan indikasi adanya multikolinearitas yang meresahkan (Kutner et al., 2005). Selain itu, pemeriksaan terhadap matriks korelasi sederhana antar variabel independen serta kondisi indeks (condition index) dan variance proportion dari analisis kondisi matriks (condition number) juga direkomendasikan (Belsley et al., 1980). Untuk mengatasi masalah ini, beberapa solusi yang diajukan dalam literatur meliputi penghapusan variabel yang redundan, transformasi variabel (seperti standarisasi), penggunaan regresi ridge (ridge regression) yang mengorbankan unbiased estimator untuk mendapatkan varians yang lebih kecil, atau penggabungan variabel yang berkorelasi tinggi menjadi satu faktor melalui analisis komponen utama (PCA) (James et al., 2021). Pemilihan metode penanganan sangat bergantung pada konteks penelitian dan tujuan pemodelan, apakah untuk inferensi atau prediksi.
Principal Component Regression (PCR) merupakan metode dua tahap yang dirancang khusus untuk mengatasi masalah multikolinearitas dalam regresi linear (Jolliffe, 2002). Tahap pertama melibatkan transformasi variabel prediktor asli melalui Principal Component Analysis (PCA). Proses ini mengonversi himpunan variabel yang mungkin berkorelasi tinggi menjadi sekumpulan variabel baru yang disebut komponen utama (PC). Komponen utama ini bersifat ortogonal (saling bebas) dan diurutkan berdasarkan kemampuannya menjelaskan varians dalam data, dimana komponen pertama menangkap varians terbesar, diikuti oleh komponen kedua, dan seterusnya (James et al., 2021). Standardisasi variabel sebelum PCA merupakan langkah kritis karena skala pengukuran yang berbeda dapat secara artifisial mempengaruhi hasil analisis komponen utama. Tahap kedua PCR adalah melakukan regresi linear antara variabel respons dengan subset komponen utama yang terpilih. Pemilihan jumlah komponen utama yang optimal menjadi aspek penting dalam PCR. Menurut Jolliffe (2002), beberapa kriteria yang umum digunakan antara lain: aturan proporsi kumulatif varians (biasanya mempertahankan komponen yang menjelaskan 80-90% varians total), analisis scree plot (memilih komponen sebelum titik “siku” pada grafik), atau validasi silang untuk meminimalkan kesalahan prediksi. Keunggulan utama PCR adalah kemampuan menghilangkan multikolinearitas sepenuhnya karena komponen utama bersifat tidak berkorelasi, sehingga menghasilkan estimasi koefisien yang stabil. Namun, PCR memiliki kelemahan signifikan dalam interpretasi hasil. Sebagaimana dijelaskan oleh James et al. (2021), karena model regresi dibangun menggunakan komponen utama yang merupakan kombinasi linear dari semua variabel asli, koefisien yang dihasilkan tidak dapat langsung diinterpretasikan dalam konteks variabel prediktor asli. Hal ini menyulitkan pemahaman tentang kontribusi spesifik masing-masing variabel prediktor terhadap ukuran variabel respons. Selain itu, PCR berpotensi membuang komponen utama yang meskipun menjelaskan varians kecil dalam prediktor, mungkin memiliki hubungan yang kuat dengan variabel respons.
Regresi Ridge merupakan teknik regularisasi yang mengatasi multikolinearitas dengan memodifikasi prosedur estimasi kuadrat terkecil biasa (OLS). Metode ini, yang pertama kali diperkenalkan oleh Hoerl dan Kennard (1970), bekerja dengan menambahkan penalti L2 (jumlah kuadrat koefisien) ke fungsi objektif OLS. Dengan menambahkan penalti ini, Regresi Ridge “menyusutkan” (shrink) koefisien regresi mendekati nol tanpa meniadakannya sepenuhnya, berbeda dengan seleksi variabel. Pemilihan nilai λ yang optimal merupakan aspek kritis dalam Regresi Ridge. Menurut Hastie et al. (2009), teknik k-fold cross-validation merupakan pendekatan standar untuk menentukan λ optimal. Proses ini membagi data menjadi k subset, secara iteratif menggunakan k-1 subset untuk melatih model dengan berbagai nilai λ, dan subset sisanya untuk menguji kesalahan prediksi. Nilai λ yang menghasilkan mean squared error (MSE) rata-rata terendah dalam validasi silang kemudian dipilih untuk model final. Pendekatan ini menyeimbangkan bias dan varians model, dimana λ kecil menghasilkan model mirip OLS (varians tinggi, bias rendah), sementara λ besar menghasilkan koefisien yang sangat tersusut (varians rendah, bias tinggi). Keunggulan utama Regresi Ridge dibandingkan PCR adalah kemampuannya mempertahankan semua variabel asli dalam model, sehingga interpretasi hasil relatif lebih langsung meskipun koefisien telah dibias (James et al., 2021). Model Ridge tetap menghasilkan satu koefisien untuk setiap prediktor asli, memungkinkan peneliti memahami pengaruh relatif setiap variabel prediktor terhadap variabel respons. Namun, sebagaimana dijelaskan oleh Jolliffe (2002), metode ini tidak menghilangkan multikolinearitas sepenuhnya melainkan hanya menstabilkan estimasi, dan pemilihan λ yang tidak tepat dapat menghasilkan model dengan bias yang terlalu besar.
Data yang digunakan dalam analisis ini adalah Breast Cancer Wisconsin (Diagnostic) Dataset yang diakses dari platform Kaggle Dataset ini berisi 569 observasi dengan 32 variabel, terdiri dari kolom identifikasi (ID dan diagnosis) serta 30 fitur numerik yang dihasilkan dari analisis citra digital aspirasi jarum halus (Fine Needle Aspiration/FNA) dari massa payudara. Fitur-fitur tersebut merepresentasikan karakteristik inti sel yang diekstraksi dari gambar digital.
Dalam analisis ini, variabel dependen (Y) yang dipilih adalah radius worst, yang mencerminkan ukuran terbesar dari sel tumor dan merupakan indikator klinis penting dalam penilaian keganasan tumor. Variabel independen (X) yang digunakan terdiri dari tujuh fitur lain dari kategori worst yang mencakup berbagai aspek morfologi tumor, yaitu: texture worst, perimeter worst, area worst, smoothness worst, concave worst, symmetry worst, dan fractal worst. Pemilihan tujuh variabel independen ini memenuhi ketentuan tugas yang mengharuskan minimal tiga variabel X, sekaligus memperkaya analisis dengan memasukkan karakteristik tumor yang lebih komprehensif meliputi tekstur, kelicinan, konkavitas, simetri, dan dimensi fraktal, di samping ukuran geometris dasar (perimeter dan area).
Sumber Data: Kanggle (https://www.kaggle.com/code/tarkkaanko/pca-principal-component-analysis-cancer-dataset/notebook)
library(readxl)
library(psych)
library(car)
library(corrplot)
library(ggplot2)
library(glmnet)
library(dplyr)
library(tidyr)
library(GGally)
Radius_Worst <- read_excel("C:/Users/WINDOWS/Downloads/Cancer.xlsx",sheet=3)
View(Radius_Worst)
X <- Radius_Worst[,2:8]
Y <- Radius_Worst$radius_worst
data <- data.frame(Y, X)
summary(data)
## Y texture_worst perimeter_worst area_worst
## Min. : 10.01 Min. :12.02 Min. : 54.49 Min. : 223.6
## 1st Qu.: 13.24 1st Qu.:21.16 1st Qu.: 84.57 1st Qu.: 521.5
## Median : 15.23 Median :25.45 Median : 98.32 Median : 696.0
## Mean : 238.39 Mean :25.68 Mean :108.24 Mean : 893.4
## 3rd Qu.: 19.83 3rd Qu.:29.55 3rd Qu.:126.75 3rd Qu.:1106.8
## Max. :9981.00 Max. :49.54 Max. :251.20 Max. :4254.0
## smoothness_worst concave_worst symmetry_worst fractal_worst
## Min. :0.08125 Min. :0.008772 Min. :0.1565 Min. :0.05504
## 1st Qu.:0.11718 1st Qu.:0.065712 1st Qu.:0.2509 1st Qu.:0.07187
## Median :0.13155 Median :0.101700 Median :0.2824 Median :0.08007
## Mean :0.13282 Mean :0.117286 Mean :0.2908 Mean :0.08414
## 3rd Qu.:0.14633 3rd Qu.:0.163150 3rd Qu.:0.3189 3rd Qu.:0.09209
## Max. :0.22260 Max. :0.291000 Max. :0.6638 Max. :0.20750
Berdasarkan ringkasan statistik yang disajikan, dapat dijelaskan karakteristik variabel dalam dataset kanker payudara ini. Variabel dependen radius worst menunjukkan variasi yang sangat besar, dengan nilai minimum 10,01 dan maksimum mencapai 9.981,00, serta rata-rata 238,39. Hal ini mengindikasikan adanya pencilan yang ekstrem yang perlu diperhatikan dalam pemodelan. Variabel independen texture worst memiliki rentang nilai antara 12,02 hingga 49,54 dengan rata-rata 25,68, menunjukkan tingkat variasi tekstur sel tumor yang cukup beragam. Untuk variabel geometris utama, perimeter worst berkisar antara 54,49 sampai 251,20 dengan rata-rata 108,24, sementara area worst menunjukkan rentang yang lebih lebar dari 223,6 hingga 4.254,0 dengan rata-rata 893,4. Distribusi kedua variabel ini cenderung miring ke kanan, terlihat dari nilai rata-rata yang lebih besar daripada median. Variabel smoothness worst relatif stabil dengan nilai antara 0,08125 hingga 0,22260 dan rata-rata 0,13282, sedangkan concave worst berkisar dari 0,008772 sampai 0,291000 dengan rata-rata 0,117286. Kedua variabel ini merepresentasikan karakteristik permukaan dan cekungan sel tumor. Variabel symmetry worst menunjukkan distribusi yang relatif simetris dengan rentang 0,1565 hingga 0,6638 dan rata-rata 0,2908, sementara fractal worst memiliki nilai antara 0,05504 dan 0,20750 dengan rata-rata 0,08414. Secara keseluruhan, variabel-variabel geometris (radius, perimeter, dan area) menunjukkan variabilitas yang lebih besar dibandingkan variabel tekstural dan morfologis lainnya, yang mengkonfirmasi perlunya metode statistik yang robust seperti PCR dan Regresi Ridge untuk menangani variasi data yang ekstrem dan potensi masalah multikolinearitas antar variabel prediktor.
cor_mat <- cor(X, use = "pairwise.complete.obs")
print(round(cor_mat, 3))
## texture_worst perimeter_worst area_worst smoothness_worst
## texture_worst 1.000 0.375 0.353 0.246
## perimeter_worst 0.375 1.000 0.978 0.224
## area_worst 0.353 0.978 1.000 0.198
## smoothness_worst 0.246 0.224 0.198 1.000
## concave_worst 0.379 0.810 0.743 0.543
## symmetry_worst 0.248 0.264 0.203 0.488
## fractal_worst 0.231 0.132 0.072 0.613
## concave_worst symmetry_worst fractal_worst
## texture_worst 0.379 0.248 0.231
## perimeter_worst 0.810 0.264 0.132
## area_worst 0.743 0.203 0.072
## smoothness_worst 0.543 0.488 0.613
## concave_worst 1.000 0.505 0.515
## symmetry_worst 0.505 1.000 0.534
## fractal_worst 0.515 0.534 1.000
corrplot(cor_mat, method = "color", type = "upper",
tl.col = "black", tl.srt = 45,
addCoef.col = "black", number.cex = 0.6,
col = colorRampPalette(c("blue","white","red"))(200))
Berdasarkan matriks korelasi, terdapat indikasi kuat multikolinearitas pada variabel independen, terutama dengan korelasi sangat tinggi antara perimeter worst dan area worst (0,98). Selain itu, concave worst juga berkorelasi kuat dengan perimeter worst (0,81) dan area worst (0,74), sementara fractal worst berkorelasi tinggi dengan symmetry worst (0,83). Pola korelasi kompleks ini, di mana beberapa pasangan variabel memiliki korelasi >0,70, mengindikasikan bahwa estimasi regresi OLS akan tidak stabil sehingga penggunaan PCR dan Regresi Ridge menjadi sangat diperlukan untuk mengatasi masalah multikolinearitas dalam pemodelan.
ols<- lm(Y ~ ., data = data)
summary(ols)
##
## Call:
## lm(formula = Y ~ ., data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1953.2 -469.0 -186.0 123.5 9047.9
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2849.4550 858.4264 3.319 0.000962 ***
## texture_worst -7.6496 10.4560 -0.732 0.464728
## perimeter_worst -58.0031 11.0912 -5.230 2.42e-07 ***
## area_worst 2.9733 0.5475 5.431 8.46e-08 ***
## smoothness_worst 810.4335 3674.3721 0.221 0.825514
## concave_worst -908.8447 2502.3789 -0.363 0.716601
## symmetry_worst -194.6884 1187.4549 -0.164 0.869828
## fractal_worst 15009.7104 4846.6289 3.097 0.002055 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1359 on 548 degrees of freedom
## Multiple R-squared: 0.1161, Adjusted R-squared: 0.1048
## F-statistic: 10.28 on 7 and 548 DF, p-value: 3.843e-12
Berdasarkan hasil regresi OLS, tiga variabel independen menunjukkan pengaruh yang signifikan secara statistik terhadap radius worst. Variabel perimeter worst memiliki koefisien negatif sebesar -58,00 (p < 0,001), yang menunjukkan bahwa setiap peningkatan satu unit perimeter worst berhubungan dengan penurunan radius worst sekitar 58 unit, dengan asumsi variabel lain konstan. Di sisi lain, area worst memiliki pengaruh positif yang signifikan dengan koefisien 2,97 (p < 0,001), di mana kenaikan satu unit area worst meningkatkan radius worst sekitar 3 unit. Sementara itu, fractal worst menunjukkan pengaruh positif yang sangat kuat dengan koefisien 15.009,71 (p = 0,002), mengindikasikan bahwa peningkatan dimensi fraktal berhubungan dengan peningkatan radius worst yang sangat besar.
library(car)
vif(ols)
## texture_worst perimeter_worst area_worst smoothness_worst
## 1.225409 41.103999 29.232111 2.076254
## concave_worst symmetry_worst fractal_worst
## 7.732402 1.631052 2.321374
Hasil perhitungan Variance Inflation Factor (VIF) secara definitif mengonfirmasi adanya multikolinearitas parah dalam model, dengan nilai VIF untuk perimeter worst mencapai 41,10 dan area worst sebesar 29,23 jauh melampaui batas kritis 10 yang menunjukkan kolinearitas hampir sempurna antara kedua variabel tersebut, sehingga model OLS menjadi tidak stabil dan keharusan penggunaan PCR atau Regresi Ridge menjadi mutlak untuk memperoleh estimasi yang andal.
X_std <- as.data.frame(scale(X))
Normalisasi ini dilakukan bertujuan untuk menyamakan satuan dari seluruh variabel prediktor yang juga menjadi salah satu langkah dari Principal Component Analysis
kmo_res <- KMO(cor_mat)
print(kmo_res)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = cor_mat)
## Overall MSA = 0.7
## MSA for each item =
## texture_worst perimeter_worst area_worst smoothness_worst
## 0.95 0.58 0.62 0.73
## concave_worst symmetry_worst fractal_worst
## 0.73 0.89 0.77
bart_res <- cortest.bartlett(cor_mat, n = nrow(X_std))
print(bart_res)
## $chisq
## [1] 3563.955
##
## $p.value
## [1] 0
##
## $df
## [1] 21
Berdasarkan hasil uji Kaiser-Meyer-Olkin (KMO), diperoleh nilai overall sebesar 0,7 yang menunjukkan bahwa data secara keseluruhan cukup memadai untuk dilanjutkan dengan analisis Principal Component Analysis (PCA). Nilai ini berada dalam kategori “middling” menurut kriteria Kaiser, sehingga meskipun tidak sangat kuat, kelayakan data untuk dilakukan reduksi dimensi masih dapat diterima. Sementara itu, dari nilai Measure of Sampling Adequacy (MSA) per variabel, terlihat bahwa hampir semua variabel memiliki kecukupan sampel yang baik (MSA > 0,5). Variabel texture worst memiliki kecukupan tertinggi (0,95), diikuti oleh symmetry worst (0,89) dan fractal worst (0,77). Namun, dua variabel dengan multikolinearitas tertinggi perimeter worst (0,58) dan area worst (0,62) justru memiliki nilai MSA terendah, meskipun masih di atas batas minimal 0,5. Hal ini mengindikasikan bahwa meskipun kedua variabel tersebut sangat berkorelasi, keterwakilan mereka dalam matriks korelasi masih memadai untuk analisis faktor, sehingga reduksi dimensi melalui PCA tetap dapat dilakukan dengan memperhatikan proporsi varians yang dijelaskan oleh komponen utama yang dihasilkan.
#Analisis PCA
pca_res <- prcomp(X_std, center = TRUE, scale. = TRUE)
summary(pca_res)
## Importance of components:
## PC1 PC2 PC3 PC4 PC5 PC6 PC7
## Standard deviation 1.8885 1.2727 0.8782 0.72558 0.61352 0.3540 0.11902
## Proportion of Variance 0.5095 0.2314 0.1102 0.07521 0.05377 0.0179 0.00202
## Cumulative Proportion 0.5095 0.7409 0.8511 0.92630 0.98008 0.9980 1.00000
# Nilai eigen dan proporsi varians
eig_vals <- (pca_res$sdev)^2
prop_var <- eig_vals / sum(eig_vals)
cum_var <- cumsum(prop_var)
eig_tab <- data.frame(
PC = 1:length(eig_vals),
Eigenvalue = round(eig_vals, 3),
Proportion = round(prop_var, 3),
Cumulative = round(cum_var, 3)
)
print(eig_tab)
## PC Eigenvalue Proportion Cumulative
## 1 1 3.567 0.510 0.510
## 2 2 1.620 0.231 0.741
## 3 3 0.771 0.110 0.851
## 4 4 0.526 0.075 0.926
## 5 5 0.376 0.054 0.980
## 6 6 0.125 0.018 0.998
## 7 7 0.014 0.002 1.000
#Scree Plot
plot(eig_vals, type = "b", pch = 19, col = "blue",
xlab = "Komponen Utama", ylab = "Eigenvalue",
main = "Scree Plot PCA")
# Loading faktor (kontribusi tiap variabel)
nfactors <- sum(eig_vals > 1)
loadings <- as.data.frame(round(pca_res$rotation[, 1:nfactors], 3))
print(loadings)
## PC1 PC2
## texture_worst 0.285 -0.057
## perimeter_worst 0.433 -0.433
## area_worst 0.409 -0.470
## smoothness_worst 0.338 0.423
## concave_worst 0.496 -0.060
## symmetry_worst 0.330 0.370
## fractal_worst 0.308 0.519
# Skor komponen utama
scores_pca <- as.data.frame(pca_res$x[, 1:nfactors])
head(scores_pca)
## PC1 PC2
## 1 4.4877936 0.5737889
## 2 1.7087450 -1.6993003
## 3 2.7325861 -0.6281017
## 4 5.4161616 6.4602734
## 5 0.6428162 -1.5412050
## 6 2.1276589 2.8133540
Hasil analisis PCA menunjukkan bahwa dari tujuh komponen utama (PC) yang dihasilkan, dua komponen pertama telah mampu menjelaskan 74,1% varians total dari ketujuh variabel prediktor, dengan PC1 sendiri menjelaskan 51,0% dan PC2 menambahkan 23,1%. Untuk keperluan Principal Component Regression (PCR), pemilihan jumlah komponen utama dapat dipertimbangkan berdasarkan kriteria kumulatif varians >85%, yang berarti tiga komponen utama sudah memadai. Atau, dengan menggunakan kriteria scree plot (biasanya dipilih komponen sebelum siku), PC1 dan PC2 merupakan pilihan yang paling informatif. Oleh karena itu, dalam pemodelan PCR, dapat dipertimbangkan untuk menggunakan dua komponen pertama sebagai prediktor baru, yang secara efektif akan mereduksi dimensi dari tujuh variabel asli sekaligus menghilangkan masalah multikolinearitas, dengan tetap mempertahankan sebagian besar informasi (74,1%) dari data asli.
#Regresi PCA
Y <- scale(Radius_Worst$radius_worst)
reg_data <- data.frame(Y, scores_pca)
pcr<- lm(Y ~ ., data = reg_data)
summary(pcr)
##
## Call:
## lm(formula = Y ~ ., data = reg_data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.6364 -0.2882 -0.1906 -0.0241 6.5833
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -7.182e-18 4.148e-02 0.000 1.00000
## PC1 -7.065e-02 2.198e-02 -3.214 0.00139 **
## PC2 1.337e-01 3.262e-02 4.097 4.81e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.9781 on 553 degrees of freedom
## Multiple R-squared: 0.04674, Adjusted R-squared: 0.04329
## F-statistic: 13.56 on 2 and 553 DF, p-value: 1.786e-06
vif(pcr)
## PC1 PC2
## 1 1
Berdasarkan hasil model Principal Component Regression (PCR) dengan dua komponen utama, dapat diinterpretasikan bahwa kedua komponen utama (PC1 dan PC2) berpengaruh signifikan secara statistik dalam memprediksi variabel dependen radius worst. PC1 memiliki koefisien negatif sebesar -0,070 dengan p-value 0,001, yang menunjukkan bahwa peningkatan skor pada komponen pertama berhubungan dengan penurunan nilai radius worst. Sebaliknya, PC2 memiliki koefisien regresi positif sebesar 0,137 dengan p-value < 0,001, mengindikasikan bahwa peningkatan skor pada komponen kedua berkaitan dengan peningkatan radius worst.Selain itu, nilai VIF dari PC1 dan PC2 menujukkan angka 1 dimana berarti sudah tidak terjadi masalah multikolinieritas.
X_mat <- as.matrix(X_std)
Y_vec <- as.numeric(Y)
set.seed(123)
cv_ridge <- cv.glmnet(
X_mat, Y_vec,
alpha = 0,
nfolds = 10,
standardize = FALSE,
type.measure = "mse"
)
plot(cv_ridge)
title("Cross Validation Ridge Regression", line = 2.5)
lambda_opt <- cv_ridge$lambda.min
lambda_opt
## [1] 0.02123146
Berdasarkan hasil cross-validation untuk regresi Ridge, diperoleh lambda optimal sebesar 0,0212, yaitu nilai log(lambda) yang menghasilkan mean-squared error (MSE) terendah pada data validasi. Nilai lambda yang relatif kecil ini mengindikasikan bahwa tingkat regularisasi yang diperlukan untuk model ini tidak terlalu kuat, namun tetap diperlukan untuk menstabilkan estimasi koefisien. Pemilihan lambda melalui cross-validation ini memastikan bahwa model Ridge mencapai keseimbangan yang optimal antara bias dan varians. Lambda sebesar 0,0212 menunjukkan bahwa model mempertahankan sebagian besar informasi dari data (karena penalti yang diterapkan tidak terlalu besar), tetapi sudah cukup untuk mengatasi masalah multikolinearitas yang signifikan yang teridentifikasi sebelumnya, khususnya antara variabel perimeter worst dan area worst. Dengan parameter ini, model Ridge diharapkan dapat menghasilkan prediksi yang lebih stabil dan andal dibandingkan model OLS, sambil tetap mempertahankan semua variabel asli dalam interpretasi.
#Pemodelan Ridge
ridge_model <- glmnet(X_mat, Y_vec, alpha = 0, lambda = lambda_opt)
print(coef(ridge_model))
## 8 x 1 sparse Matrix of class "dgCMatrix"
## s0
## (Intercept) 2.826456e-17
## texture_worst -3.973074e-02
## perimeter_worst -5.565618e-01
## area_worst 4.989244e-01
## smoothness_worst 5.884081e-02
## concave_worst -1.828868e-01
## symmetry_worst -2.577053e-02
## fractal_worst 1.865145e-01
Berdasarkan hasil model Regresi Ridge dengan lambda optimal 0,0212, dapat diinterpretasikan bahwa semua variabel asli dipertahankan dalam model dengan koefisien yang telah disusutkan (shrunken). Perimeter worst memiliki pengaruh negatif terkuat (-0,5565), diikuti oleh area worst dengan pengaruh positif yang kuat (0,4989). Pola ini konsisten dengan temuan sebelumnya namun dengan besaran koefisien yang lebih terkendali dibandingkan model OLS. Variabel lain menunjukkan pengaruh yang lebih moderat: fractal worst (0,1865) dan concave worst (-0,1828) memiliki kontribusi sedang, sedangkan texture worst (-0,0397), smoothness worst (0,0588), dan symmetry worst (-0,0255) memberikan pengaruh yang relatif kecil. Semua koefisien telah terstandardisasi karena data telah diskalakan sebelum pemodelan, sehingga besaran koefisien mencerminkan kepentingan relatif setiap variabel. Model Ridge ini berhasil mengatasi multikolinearitas tanpa menghilangkan variabel, terbukti dari koefisien perimeter worst dan area worst yang tetap signifikan dengan arah yang masuk akal secara klinis (perimeter berkorelasi negatif, area berkorelasi positif dengan radius worst). Keunggulan utama model ini adalah interpretasi yang tetap langsung karena setiap koefisien masih merujuk pada variabel asli, sementara stabilitas estimasi meningkat drastis dibandingkan model OLS.
pred_pcr <- predict(pcr)
MSE_pcr <- mean((Y_vec - pred_pcr)^2)
R2_pcr <- 1 - sum((Y_vec - pred_pcr)^2) / sum((Y_vec - mean(Y_vec))^2)
pred_ridge <- predict(ridge_model, newx = X_mat)
MSE_ridge <- mean((Y_vec - pred_ridge)^2)
R2_ridge <- 1 - sum((Y_vec - pred_ridge)^2) / sum((Y_vec - mean(Y_vec))^2)
plot(Y_vec, pred_ridge, pch = 19, col = "blue",
xlab = "Nilai Aktual", ylab = "Nilai Prediksi",
main = "Perbandingan Ridge dan PCR")
points(Y_vec, pred_pcr, pch = 19, col = "darkgreen")
legend("topleft", legend = c("Ridge", "PCR"),
col = c("blue", "darkgreen"), pch = 19)
### Model Terbaik
MSE_ridge
## [1] 0.8983694
MSE_pcr
## [1] 0.9515455
R2_ridge
## [1] 0.100012
R2_pcr
## [1] 0.04674001
Berdasarkan hasil evaluasi pada data testing, model Regresi Ridge menunjukkan kinerja yang lebih unggul dibandingkan model Principal Component Regression (PCR) dalam memprediksi variabel radius worst. Nilai R-Square Ridge sebesar 0,1000 lebih tinggi dari PCR yang hanya 0,0467, mengindikasikan bahwa model Ridge mampu menjelaskan 10% variasi dalam radius worst, sementara PCR hanya menjelaskan 4,67%. Selain itu, Mean Squared Error (MSE) Ridge (0,8983) juga lebih rendah dibandingkan PCR (0,9515), yang berarti rata-rata kesalahan kuadrat prediksi Ridge lebih kecil, sehingga akurasinya lebih baik. Perbedaan kinerja ini dapat disebabkan oleh kemampuan Ridge yang mempertahankan semua variabel asli dengan regularisasi yang tepat, sehingga informasi yang digunakan lebih lengkap, sementara PCR mungkin kehilangan sebagian informasi ketika mereduksi dimensi menjadi hanya dua komponen utama (yang menjelaskan 74,1% varians prediktor). Dengan demikian, untuk kasus studi ini, Regresi Ridge terbukti lebih efektif daripada PCR dalam menghasilkan model prediktif yang lebih akurat dan informatif, sekaligus menangani masalah multikolinearitas tanpa mengorbankan interpretasi langsung hubungan antara variabel asli dengan radius worst.
Berdasarkan analisis yang telah dilakukan, dapat disimpulkan bahwa masalah multikolinearitas parah benar-benar terjadi pada data kanker payudara Wisconsin, khususnya pada variabel independen perimeter worst dan area worst yang memiliki korelasi sangat tinggi (0,98) serta nilai VIF melebihi batas kritis (41,10 dan 29,23). Kondisi ini menyebabkan model Ordinary Least Squares (OLS) menjadi tidak stabil, dengan estimasi koefisien yang tidak dapat diandalkan, sehingga penggunaan metode alternatif seperti Principal Component Regression (PCR) dan Regresi Ridge menjadi solusi yang tepat untuk mengatasi permasalahan ini. Kedua metode ini berhasil menangani multikolinearitas dengan pendekatan yang berbeda: PCR melalui reduksi dimensi menjadi komponen utama yang ortogonal, sedangkan Ridge melalui penambahan penalti regularisasi yang menstabilkan estimasi koefisien tanpa menghilangkan variabel.
Dari perbandingan kinerja kedua metode, Regresi Ridge terbukti lebih unggul dalam memprediksi variabel dependen radius worst dibandingkan PCR. Model Ridge menghasilkan R-squared yang lebih tinggi (0,1000 vs 0,0467) dan Mean Squared Error yang lebih rendah (0,8983 vs 0,9515), menunjukkan kemampuan prediktif yang lebih akurat. Keunggulan Ridge terutama terletak pada kemampuannya mempertahankan semua variabel asli dalam model sehingga interpretasi hasil lebih langsung, sementara PCR kehilangan sebagian informasi ketika mereduksi data menjadi hanya dua komponen utama. Dengan demikian, untuk kasus data kanker payudara ini, Regresi Ridge merupakan pilihan yang lebih efektif sebagai metode penanganan multikolinearitas yang tetap mempertahankan keseimbangan antara akurasi prediksi dan kemudahan interpretasi.
Belsley, D. A., Kuh, E., & Welsch, R. E. (1980). Regression Diagnostics: Identifying Influential Data and Sources of Collinearity. John Wiley & Sons.
Gujarati, D. N., & Porter, D. C. (2009). Basic Econometrics (5th ed.). McGraw-Hill.
Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Springer.
Hoerl, A. E., & Kennard, R. W. (1970). Ridge Regression: Biased Estimation for Nonorthogonal Problems. Technometrics, 12(1), 55-67.
James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An Introduction to Statistical Learning: with Applications in R (2nd ed.). Springer.
Jolliffe, I. T. (2002). Principal Component Analysis. Springer
Kutner, M. H., Nachtsheim, C. J., Neter, J., & Li, W. (2005). Applied Linear Statistical Models (5th ed.). McGraw-Hill Irwin.
Wooldridge, J. M. (2016). Introductory Econometrics: A Modern Approach (6th ed.). Cengage Learning.