Configurarea validării încrucișate (pachet de îngrijire) în R: un ghid pas cu pas

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(Acest articol a fost publicat pentru prima dată pe R-posts.comși a contribuit cu drag la R-Bloggers). (Puteți raporta problema despre conținutul de pe această pagină aici)


Doriți să vă împărtășiți conținutul pe R-Bloggers? Faceți clic aici dacă aveți un blog sau aici dacă nu.

În acest blog, am explorat cum să ne configuram validare încrucișată în r folosind caret Pachet, un instrument puternic pentru evaluarea modelelor de învățare automată. Iată o recapitulare rapidă a ceea ce am acoperit:

  1. Introducere în validarea încrucișată:

  2. Configurare pas cu pas:

    • Am încărcat caret pachet și a definit o configurație de validare încrucișată folosind trainControlspecificând Validare încrucișată repetată de 10 ori cu 5 repetări.

    • De asemenea, am salvat configurația pentru reutilizare folosind saveRDS.

  3. Exemplu practic:

  4. De ce contează:

    • Validarea încrucișată asigură o evaluare robustă a modelului, evită supraîncărcarea și îmbunătățește reproductibilitatea și selecția modelului.

  5. Concluzie:


Să ne scufundăm în detalii!


1. Introducere în validarea încrucișată

Validarea încrucișată este o tehnică de eșantionare utilizată pentru a evalua performanța și generalizarea modelelor de învățare automată. Ajută la abordarea problemelor precum supraîncărcarea și asigură că performanța modelului este consecventă în diferite subseturi ale datelor. Prin împărțirea datelor în mai multe pliuri și repetarea procesului, validarea încrucișată oferă o estimare robustă a performanței modelului.


2. Configurarea pas cu pas de validare încrucișată

Pasul 1: Încărcați biblioteca necesară


Pasul 2: Definiți controlul trenului pentru validarea încrucișată

train_control <- trainControl(
  method = "repeatedcv",      # Repeated cross-validation
  number = 10,                # 10 folds
  repeats = 5,                # 5 repeats
  savePredictions = "final"   # Save predictions for the final model
)

Pasul 3: Salvați obiectul de control al trenului

saveRDS(train_control, "./train_control_config.Rds")

3. Exemplu: Validarea încrucișată în acțiune

Să parcurgem un exemplu practic folosind un set de date de eșantion.

Pasul 1: Încărcați setul de date

Pentru acest exemplu, vom folosi iris set de date, care este inclus în R.


Pasul 2: Definiți configurația de validare încrucișată

library(caret)

# Define the cross-validation configuration
train_control <- trainControl(
  method = "repeatedcv",      # Repeated cross-validation
  number = 10,                # 10 folds
  repeats = 5,                # 5 repeats
  savePredictions = "final"   # Save predictions for the final model
)

Pasul 3: Antrenează un model folosind validare încrucișată

Vom antrena un model simplu de vecini K (KNN), folosind validarea încrucișată.

# Train a KNN model using cross-validation
set.seed(123)
model <- train(
  Species ~ .,                # Formula: Predict Species using all other variables
  data = iris,                # Dataset
  method = "knn",             # Model type: K-Nearest Neighbors
  trControl = train_control   # Cross-validation configuration
)

# View the model results
print(model)

Ieșire:

k-Nearest Neighbors 

150 samples
  4 predictor
  3 classes: 'setosa', 'versicolor', 'virginica' 

No pre-processing
Resampling: Cross-Validated (10 fold, repeated 5 times) 
Summary of sample sizes: 135, 135, 135, 135, 135, 135, ... 
Resampling results across tuning parameters:

  k  Accuracy   Kappa    
  5  0.9666667  0.95     
  7  0.9666667  0.95     
  9  0.9666667  0.95     

Accuracy was used to select the optimal model using the largest value.
The final value used for the model was k = 5.

Pasul 4: Salvați configurația de validare încrucișată

saveRDS(train_control, "./train_control_config.Rds")

# (Optional) Load the saved configuration
train_control <- readRDS("./train_control_config.Rds")

4. De ce contează acest flux de lucru

Acest flux de lucru asigură că modelul dvs. este evaluat puternic și constant. Folosind validarea încrucișată, puteți:

  1. Evitați supraîncărcarea: Validarea încrucișată oferă o estimare mai fiabilă a performanței modelului prin testarea mai multor subseturi ale datelor.

  2. Asigurați reproductibilitatea: Salvarea configurației de validare încrucișată vă permite să reutilizați aceleași setări în analizele viitoare.

  3. Îmbunătățiți selecția modelului: Validarea încrucișată vă ajută să alegeți cel mai bun model prin compararea performanței în diferite configurații.


5. Concluzie

Validarea încrucișată este o tehnică esențială pentru evaluarea modelelor de învățare automată. Urmărind acest flux de lucru, vă puteți asigura că modelele dvs. sunt robuste, generalizabile și gata de desfășurare. Sunteți gata să îl încercați? Instalați caret Pachetul și începeți să configurați o validare încrucișată în proiectele dvs. astăzi!

install.packages("caret")
library(caret)

Codificare fericită! 😊


Configurarea validării încrucișate (pachet de îngrijire) în R: Un ghid pas cu pas a fost postat pentru prima dată pe 13 aprilie 2025 la 7:08.

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.