El paquete caret (Clasification And Regression Training) es un paquete integral con una amplia variedad de algoritmos para el aprendizaje automático.
#install.packages("caret") #Algoritmos de aprendizaje
library(caret)
## Loading required package: ggplot2
## Loading required package: lattice
#install.packages("datasets") #Usar la base de datos "Iris"
library(datasets)
#install.packages("ggplot2") #Gráficas con mejor diseño
library(ggplot2)
#install.packages("lattice") #Crear gráficos
library(lattice)
#install.packages("DataExplorer") #Crear gráficos
library(DataExplorer)
#install.packages("mlbench") #Crear gráficos
library(mlbench)
#install.packages("tidyverse")
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ lubridate 1.9.3 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ✖ purrr::lift() masks caret::lift()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
data("BreastCancer")
df<- BreastCancer
# Asignar el dataframe BreastCancer a una variable (en este caso, df)
df <- df %>% select(-Id)
df <- na.omit(df)
df <- data.frame(sapply(df, as.numeric))
summary(df)
## Cl.thickness Cell.size Cell.shape Marg.adhesion
## Min. : 1.000 Min. : 1.000 Min. : 1.000 Min. : 1.00
## 1st Qu.: 2.000 1st Qu.: 1.000 1st Qu.: 1.000 1st Qu.: 1.00
## Median : 4.000 Median : 1.000 Median : 1.000 Median : 1.00
## Mean : 4.442 Mean : 3.151 Mean : 3.215 Mean : 2.83
## 3rd Qu.: 6.000 3rd Qu.: 5.000 3rd Qu.: 5.000 3rd Qu.: 4.00
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.00
## Epith.c.size Bare.nuclei Bl.cromatin Normal.nucleoli
## Min. : 1.000 Min. : 1.000 Min. : 1.000 Min. : 1.00
## 1st Qu.: 2.000 1st Qu.: 1.000 1st Qu.: 2.000 1st Qu.: 1.00
## Median : 2.000 Median : 1.000 Median : 3.000 Median : 1.00
## Mean : 3.234 Mean : 3.545 Mean : 3.445 Mean : 2.87
## 3rd Qu.: 4.000 3rd Qu.: 6.000 3rd Qu.: 5.000 3rd Qu.: 4.00
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.00
## Mitoses Class
## Min. :1.000 Min. :1.00
## 1st Qu.:1.000 1st Qu.:1.00
## Median :1.000 Median :1.00
## Mean :1.583 Mean :1.35
## 3rd Qu.:1.000 3rd Qu.:2.00
## Max. :9.000 Max. :2.00
summary(df)
## Cl.thickness Cell.size Cell.shape Marg.adhesion
## Min. : 1.000 Min. : 1.000 Min. : 1.000 Min. : 1.00
## 1st Qu.: 2.000 1st Qu.: 1.000 1st Qu.: 1.000 1st Qu.: 1.00
## Median : 4.000 Median : 1.000 Median : 1.000 Median : 1.00
## Mean : 4.442 Mean : 3.151 Mean : 3.215 Mean : 2.83
## 3rd Qu.: 6.000 3rd Qu.: 5.000 3rd Qu.: 5.000 3rd Qu.: 4.00
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.00
## Epith.c.size Bare.nuclei Bl.cromatin Normal.nucleoli
## Min. : 1.000 Min. : 1.000 Min. : 1.000 Min. : 1.00
## 1st Qu.: 2.000 1st Qu.: 1.000 1st Qu.: 2.000 1st Qu.: 1.00
## Median : 2.000 Median : 1.000 Median : 3.000 Median : 1.00
## Mean : 3.234 Mean : 3.545 Mean : 3.445 Mean : 2.87
## 3rd Qu.: 4.000 3rd Qu.: 6.000 3rd Qu.: 5.000 3rd Qu.: 4.00
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.00
## Mitoses Class
## Min. :1.000 Min. :1.00
## 1st Qu.:1.000 1st Qu.:1.00
## Median :1.000 Median :1.00
## Mean :1.583 Mean :1.35
## 3rd Qu.:1.000 3rd Qu.:2.00
## Max. :9.000 Max. :2.00
str(df)
## 'data.frame': 683 obs. of 10 variables:
## $ Cl.thickness : num 5 5 3 6 4 8 1 2 2 4 ...
## $ Cell.size : num 1 4 1 8 1 10 1 1 1 2 ...
## $ Cell.shape : num 1 4 1 8 1 10 1 2 1 1 ...
## $ Marg.adhesion : num 1 5 1 1 3 8 1 1 1 1 ...
## $ Epith.c.size : num 2 7 2 3 2 7 2 2 2 2 ...
## $ Bare.nuclei : num 1 10 2 4 1 10 10 1 1 1 ...
## $ Bl.cromatin : num 3 3 3 3 3 9 3 3 1 2 ...
## $ Normal.nucleoli: num 1 2 1 7 1 7 1 1 1 1 ...
## $ Mitoses : num 1 1 1 1 1 1 1 1 5 1 ...
## $ Class : num 1 1 1 1 1 2 1 1 1 1 ...
boxplot(df)
#plot_missing(df)
plot_histogram(df)
plot_correlation(df)
#create_report(df)
Nota: La variable que queremos predecir debe tener formato de FACTOR
class(df)
## [1] "data.frame"
set.seed(123)
renglones_entrenamiento <- createDataPartition(df$Class, p=.8, list=FALSE)
entrenamiento <- df[renglones_entrenamiento, ]
prueba <- df[-renglones_entrenamiento, ]
entrenamiento$Class <- as.factor(entrenamiento$Class)
prueba$Class <- as.factor(prueba$Class)
Los métodos más utilizados para modelar aprendizaje automático
son:
* SVM. Support Vector Machine o Máquina de
Vectores de Soporte. Hay varios subtipos: Lineal (svmLineal), Rdial
(svmRadial), Polinómico (svmPoly), etc.
* Árbol de Decisión. rpart
* Redes Neuronales. nnet
* Random Forest o Bosques Aleatorios. rf
#install.packages("kernlab")
library(caret)
modelo1 <- train(Class ~ ., data=entrenamiento,
method = "svmLinear",
preProcess = c("scale", "center"),
trControl = trainControl(method="cv", number=10),
tuneGrid = data.frame(C=1) #Cuando es svmLinear
)
resultado_entrenamiento1 <- predict(modelo1, entrenamiento)
resultado_prueba1 <- predict(modelo1, prueba)
#Matriz de Consufión
mcre1 <- confusionMatrix(resultado_entrenamiento1,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre1
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 347 7
## 2 8 185
##
## Accuracy : 0.9726
## 95% CI : (0.9552, 0.9846)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.9399
##
## Mcnemar's Test P-Value : 1
##
## Sensitivity : 0.9775
## Specificity : 0.9635
## Pos Pred Value : 0.9802
## Neg Pred Value : 0.9585
## Prevalence : 0.6490
## Detection Rate : 0.6344
## Detection Prevalence : 0.6472
## Balanced Accuracy : 0.9705
##
## 'Positive' Class : 1
##
mcrp1 <- confusionMatrix(resultado_prueba1, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp1
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 86 1
## 2 3 46
##
## Accuracy : 0.9706
## 95% CI : (0.9264, 0.9919)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.9356
##
## Mcnemar's Test P-Value : 0.6171
##
## Sensitivity : 0.9663
## Specificity : 0.9787
## Pos Pred Value : 0.9885
## Neg Pred Value : 0.9388
## Prevalence : 0.6544
## Detection Rate : 0.6324
## Detection Prevalence : 0.6397
## Balanced Accuracy : 0.9725
##
## 'Positive' Class : 1
##
modelo2 <- train(Class ~ ., data=entrenamiento,
method = "svmRadial",
preProcess = c("scale", "center"),
trControl = trainControl(method="cv", number=10),
tuneGrid = data.frame(sigma=1,C=1) #Cambiar
)
resultado_entrenamiento2 <- predict(modelo2, entrenamiento)
resultado_prueba2 <- predict(modelo2, prueba)
#Matriz de Consufión
mcre2 <- confusionMatrix(resultado_entrenamiento2,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre2
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 354 0
## 2 1 192
##
## Accuracy : 0.9982
## 95% CI : (0.9899, 1)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.996
##
## Mcnemar's Test P-Value : 1
##
## Sensitivity : 0.9972
## Specificity : 1.0000
## Pos Pred Value : 1.0000
## Neg Pred Value : 0.9948
## Prevalence : 0.6490
## Detection Rate : 0.6472
## Detection Prevalence : 0.6472
## Balanced Accuracy : 0.9986
##
## 'Positive' Class : 1
##
mcrp2 <- confusionMatrix(resultado_prueba2, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp2
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 82 0
## 2 7 47
##
## Accuracy : 0.9485
## 95% CI : (0.8968, 0.9791)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : < 2e-16
##
## Kappa : 0.8901
##
## Mcnemar's Test P-Value : 0.02334
##
## Sensitivity : 0.9213
## Specificity : 1.0000
## Pos Pred Value : 1.0000
## Neg Pred Value : 0.8704
## Prevalence : 0.6544
## Detection Rate : 0.6029
## Detection Prevalence : 0.6029
## Balanced Accuracy : 0.9607
##
## 'Positive' Class : 1
##
modelo3 <- train(Class ~ ., data = entrenamiento,
method = "svmPoly",
preProcess = c("scale", "center"),
trControl = trainControl(method = "cv", number = 10),
tuneGrid = data.frame(degree = 1, scale = 1, C = 1)) # Adjust values as needed
resultado_entrenamiento3 <- predict(modelo3, entrenamiento)
resultado_prueba3 <- predict(modelo3, prueba)
#Matriz de Consufión
mcre3 <- confusionMatrix(resultado_entrenamiento3,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre3
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 347 7
## 2 8 185
##
## Accuracy : 0.9726
## 95% CI : (0.9552, 0.9846)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.9399
##
## Mcnemar's Test P-Value : 1
##
## Sensitivity : 0.9775
## Specificity : 0.9635
## Pos Pred Value : 0.9802
## Neg Pred Value : 0.9585
## Prevalence : 0.6490
## Detection Rate : 0.6344
## Detection Prevalence : 0.6472
## Balanced Accuracy : 0.9705
##
## 'Positive' Class : 1
##
mcrp3 <- confusionMatrix(resultado_prueba3, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp3
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 86 1
## 2 3 46
##
## Accuracy : 0.9706
## 95% CI : (0.9264, 0.9919)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.9356
##
## Mcnemar's Test P-Value : 0.6171
##
## Sensitivity : 0.9663
## Specificity : 0.9787
## Pos Pred Value : 0.9885
## Neg Pred Value : 0.9388
## Prevalence : 0.6544
## Detection Rate : 0.6324
## Detection Prevalence : 0.6397
## Balanced Accuracy : 0.9725
##
## 'Positive' Class : 1
##
modelo4 <- train(Class ~ ., data=entrenamiento,
method = "rpart",
preProcess = c("scale", "center"),
trControl = trainControl(method="cv", number=10),
tuneLength = 10 #Cambiar
)
resultado_entrenamiento4 <- predict(modelo4, entrenamiento)
resultado_prueba4 <- predict(modelo4, prueba)
#Matriz de Consufión
mcre4 <- confusionMatrix(resultado_entrenamiento4,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre4
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 338 0
## 2 17 192
##
## Accuracy : 0.9689
## 95% CI : (0.9507, 0.9818)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.9331
##
## Mcnemar's Test P-Value : 0.0001042
##
## Sensitivity : 0.9521
## Specificity : 1.0000
## Pos Pred Value : 1.0000
## Neg Pred Value : 0.9187
## Prevalence : 0.6490
## Detection Rate : 0.6179
## Detection Prevalence : 0.6179
## Balanced Accuracy : 0.9761
##
## 'Positive' Class : 1
##
mcrp4 <- confusionMatrix(resultado_prueba4, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp4
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 83 0
## 2 6 47
##
## Accuracy : 0.9559
## 95% CI : (0.9064, 0.9836)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : < 2e-16
##
## Kappa : 0.9053
##
## Mcnemar's Test P-Value : 0.04123
##
## Sensitivity : 0.9326
## Specificity : 1.0000
## Pos Pred Value : 1.0000
## Neg Pred Value : 0.8868
## Prevalence : 0.6544
## Detection Rate : 0.6103
## Detection Prevalence : 0.6103
## Balanced Accuracy : 0.9663
##
## 'Positive' Class : 1
##
modelo5 <- train(Class ~ ., data=entrenamiento,
method = "nnet",
preProcess = c("scale", "center"),
trControl = trainControl(method="cv", number=10)
)
## # weights: 12
## initial value 369.528009
## iter 10 value 41.819970
## iter 20 value 39.433966
## iter 30 value 32.887215
## iter 40 value 32.799068
## iter 50 value 32.764193
## iter 60 value 32.755066
## iter 70 value 32.750204
## iter 80 value 32.747564
## iter 90 value 32.742868
## iter 100 value 32.740134
## final value 32.740134
## stopped after 100 iterations
## # weights: 34
## initial value 294.668916
## iter 10 value 30.055704
## iter 20 value 26.050427
## iter 30 value 19.457075
## iter 40 value 19.095042
## iter 50 value 19.090960
## final value 19.090956
## converged
## # weights: 56
## initial value 342.277239
## iter 10 value 24.720258
## iter 20 value 12.101687
## iter 30 value 9.041027
## iter 40 value 8.733649
## iter 50 value 8.592591
## iter 60 value 8.591593
## iter 70 value 8.591556
## iter 80 value 8.591499
## iter 90 value 8.591412
## iter 100 value 8.591368
## final value 8.591368
## stopped after 100 iterations
## # weights: 12
## initial value 354.804601
## iter 10 value 67.075547
## iter 20 value 44.691699
## iter 30 value 43.226554
## iter 40 value 43.163396
## final value 43.163232
## converged
## # weights: 34
## initial value 330.844731
## iter 10 value 61.358831
## iter 20 value 39.054280
## iter 30 value 36.278132
## iter 40 value 34.164218
## iter 50 value 33.901188
## iter 60 value 33.797582
## iter 70 value 33.786970
## iter 70 value 33.786970
## final value 33.786970
## converged
## # weights: 56
## initial value 329.936184
## iter 10 value 44.624095
## iter 20 value 36.172924
## iter 30 value 33.058378
## iter 40 value 32.462422
## iter 50 value 32.122565
## iter 60 value 31.946978
## iter 70 value 31.944346
## final value 31.944340
## converged
## # weights: 12
## initial value 372.974996
## iter 10 value 36.414256
## iter 20 value 33.837577
## iter 30 value 32.143484
## iter 40 value 30.279564
## iter 50 value 29.803641
## iter 60 value 29.741623
## iter 70 value 29.552948
## iter 80 value 29.530379
## iter 90 value 29.530302
## iter 100 value 29.529869
## final value 29.529869
## stopped after 100 iterations
## # weights: 34
## initial value 291.074263
## iter 10 value 31.192281
## iter 20 value 23.773599
## iter 30 value 19.405717
## iter 40 value 18.354602
## iter 50 value 17.179209
## iter 60 value 15.389018
## iter 70 value 12.792203
## iter 80 value 11.959741
## iter 90 value 11.584935
## iter 100 value 11.496790
## final value 11.496790
## stopped after 100 iterations
## # weights: 56
## initial value 408.249966
## iter 10 value 27.159978
## iter 20 value 15.704815
## iter 30 value 11.777367
## iter 40 value 11.241328
## iter 50 value 10.965649
## iter 60 value 10.576246
## iter 70 value 9.165488
## iter 80 value 6.954739
## iter 90 value 6.810054
## iter 100 value 6.709868
## final value 6.709868
## stopped after 100 iterations
## # weights: 12
## initial value 393.824737
## iter 10 value 49.395182
## iter 20 value 45.550806
## iter 30 value 45.517039
## iter 40 value 42.917800
## iter 50 value 39.510282
## iter 60 value 36.342265
## iter 70 value 36.321426
## iter 80 value 36.311902
## iter 90 value 36.309679
## iter 100 value 36.306146
## final value 36.306146
## stopped after 100 iterations
## # weights: 34
## initial value 348.321763
## iter 10 value 38.794295
## iter 20 value 26.286037
## iter 30 value 24.511966
## iter 40 value 23.812323
## iter 50 value 23.577728
## iter 60 value 23.311331
## iter 70 value 22.792928
## iter 80 value 22.621743
## iter 90 value 21.743386
## iter 100 value 21.704483
## final value 21.704483
## stopped after 100 iterations
## # weights: 56
## initial value 378.043380
## iter 10 value 38.869616
## iter 20 value 26.425979
## iter 30 value 24.397714
## iter 40 value 20.614828
## iter 50 value 14.759707
## iter 60 value 13.262644
## iter 70 value 11.614706
## iter 80 value 10.733897
## iter 90 value 9.718532
## iter 100 value 9.322398
## final value 9.322398
## stopped after 100 iterations
## # weights: 12
## initial value 372.143389
## iter 10 value 61.265734
## iter 20 value 47.484146
## iter 30 value 45.318841
## final value 45.315739
## converged
## # weights: 34
## initial value 353.596953
## iter 10 value 59.249687
## iter 20 value 37.156097
## iter 30 value 35.677434
## iter 40 value 33.931031
## iter 50 value 33.848048
## iter 60 value 33.828808
## final value 33.828798
## converged
## # weights: 56
## initial value 393.883329
## iter 10 value 37.594505
## iter 20 value 33.987094
## iter 30 value 33.314166
## iter 40 value 32.869876
## iter 50 value 32.591400
## iter 60 value 32.574621
## iter 70 value 32.572254
## iter 80 value 32.571875
## iter 90 value 32.571791
## iter 100 value 32.571551
## final value 32.571551
## stopped after 100 iterations
## # weights: 12
## initial value 310.166321
## iter 10 value 61.486355
## iter 20 value 48.753151
## iter 30 value 47.729536
## iter 40 value 46.627002
## iter 50 value 46.100506
## iter 60 value 46.075834
## iter 70 value 46.016354
## iter 80 value 46.014876
## iter 90 value 46.014772
## iter 100 value 46.014665
## final value 46.014665
## stopped after 100 iterations
## # weights: 34
## initial value 386.953348
## iter 10 value 38.523272
## iter 20 value 30.430677
## iter 30 value 28.161798
## iter 40 value 26.070472
## iter 50 value 24.090645
## iter 60 value 23.806977
## iter 70 value 23.638473
## iter 80 value 23.489186
## iter 90 value 23.306210
## iter 100 value 23.287900
## final value 23.287900
## stopped after 100 iterations
## # weights: 56
## initial value 422.604028
## iter 10 value 36.427840
## iter 20 value 20.138704
## iter 30 value 15.350478
## iter 40 value 14.019003
## iter 50 value 10.385515
## iter 60 value 9.978772
## iter 70 value 9.943863
## iter 80 value 9.907811
## iter 90 value 9.862090
## iter 100 value 9.829076
## final value 9.829076
## stopped after 100 iterations
## # weights: 12
## initial value 410.896791
## iter 10 value 91.075449
## iter 20 value 66.415312
## iter 30 value 58.182082
## iter 40 value 44.427391
## iter 50 value 39.135305
## iter 60 value 37.049764
## iter 70 value 36.496929
## iter 80 value 36.436878
## iter 90 value 35.987245
## iter 100 value 35.932504
## final value 35.932504
## stopped after 100 iterations
## # weights: 34
## initial value 356.728418
## iter 10 value 50.187736
## iter 20 value 43.613661
## iter 30 value 40.497995
## iter 40 value 38.861879
## iter 50 value 37.591193
## iter 60 value 36.414757
## iter 70 value 31.870857
## iter 80 value 27.771304
## iter 90 value 26.335968
## iter 100 value 26.071600
## final value 26.071600
## stopped after 100 iterations
## # weights: 56
## initial value 300.765541
## iter 10 value 38.694082
## iter 20 value 19.615132
## iter 30 value 10.438801
## iter 40 value 6.130038
## iter 50 value 5.047103
## iter 60 value 5.010580
## iter 70 value 5.004238
## iter 80 value 5.004025
## final value 5.004024
## converged
## # weights: 12
## initial value 315.139418
## iter 10 value 62.920550
## iter 20 value 49.774272
## iter 30 value 49.609764
## final value 49.609752
## converged
## # weights: 34
## initial value 330.972037
## iter 10 value 77.370411
## iter 20 value 51.158529
## iter 30 value 43.696200
## iter 40 value 40.344400
## iter 50 value 39.157190
## iter 60 value 38.498133
## iter 70 value 38.484126
## final value 38.484122
## converged
## # weights: 56
## initial value 309.107112
## iter 10 value 40.303629
## iter 20 value 37.828497
## iter 30 value 37.393351
## iter 40 value 37.067837
## iter 50 value 36.945768
## iter 60 value 36.934193
## final value 36.934120
## converged
## # weights: 12
## initial value 380.298739
## iter 10 value 77.589104
## iter 20 value 48.900443
## iter 30 value 43.660300
## iter 40 value 41.198243
## iter 50 value 39.970607
## iter 60 value 39.932757
## iter 70 value 39.918363
## iter 80 value 39.910610
## iter 90 value 39.905794
## iter 100 value 39.899607
## final value 39.899607
## stopped after 100 iterations
## # weights: 34
## initial value 350.496078
## iter 10 value 32.195786
## iter 20 value 23.678022
## iter 30 value 19.040790
## iter 40 value 18.944045
## iter 50 value 18.848037
## iter 60 value 18.636963
## iter 70 value 18.300233
## iter 80 value 18.144565
## iter 90 value 18.057101
## iter 100 value 17.994934
## final value 17.994934
## stopped after 100 iterations
## # weights: 56
## initial value 321.330799
## iter 10 value 31.472694
## iter 20 value 16.969868
## iter 30 value 8.878363
## iter 40 value 6.469743
## iter 50 value 6.229107
## iter 60 value 5.908416
## iter 70 value 5.807451
## iter 80 value 5.643872
## iter 90 value 5.326080
## iter 100 value 3.555650
## final value 3.555650
## stopped after 100 iterations
## # weights: 12
## initial value 355.356497
## iter 10 value 52.524845
## iter 20 value 45.907267
## iter 30 value 41.016510
## iter 40 value 40.563428
## iter 50 value 36.413786
## iter 60 value 35.181601
## iter 70 value 34.778378
## iter 80 value 34.579012
## iter 90 value 34.538333
## iter 100 value 34.449311
## final value 34.449311
## stopped after 100 iterations
## # weights: 34
## initial value 377.107170
## iter 10 value 33.292679
## iter 20 value 27.836480
## iter 30 value 23.941559
## iter 40 value 20.728814
## iter 50 value 19.680930
## iter 60 value 18.655866
## iter 70 value 17.976924
## iter 80 value 17.717182
## iter 90 value 17.683488
## iter 100 value 17.666402
## final value 17.666402
## stopped after 100 iterations
## # weights: 56
## initial value 312.926494
## iter 10 value 31.162308
## iter 20 value 15.690372
## iter 30 value 10.003080
## iter 40 value 6.719613
## iter 50 value 6.145456
## iter 60 value 6.090321
## iter 70 value 6.074871
## iter 80 value 6.069184
## iter 90 value 6.066960
## iter 100 value 6.066205
## final value 6.066205
## stopped after 100 iterations
## # weights: 12
## initial value 475.770258
## iter 10 value 70.927291
## iter 20 value 49.243630
## iter 30 value 48.733984
## iter 40 value 48.683221
## final value 48.683220
## converged
## # weights: 34
## initial value 417.091448
## iter 10 value 60.357968
## iter 20 value 43.504331
## iter 30 value 41.340080
## iter 40 value 39.360883
## iter 50 value 36.986296
## iter 60 value 36.485163
## iter 70 value 36.248848
## iter 80 value 36.247149
## final value 36.247142
## converged
## # weights: 56
## initial value 432.410034
## iter 10 value 42.477444
## iter 20 value 36.707169
## iter 30 value 35.694412
## iter 40 value 35.323019
## iter 50 value 35.125552
## iter 60 value 34.931194
## iter 70 value 34.906543
## iter 80 value 34.859237
## iter 90 value 34.825244
## final value 34.825220
## converged
## # weights: 12
## initial value 483.185808
## iter 10 value 44.274835
## iter 20 value 42.938796
## iter 30 value 42.538232
## iter 40 value 39.836819
## iter 50 value 39.834227
## iter 60 value 39.834130
## iter 70 value 39.834039
## iter 80 value 39.833989
## iter 90 value 39.833962
## final value 39.833956
## converged
## # weights: 34
## initial value 350.502515
## iter 10 value 32.927155
## iter 20 value 22.730048
## iter 30 value 17.206123
## iter 40 value 16.375815
## iter 50 value 16.262999
## iter 60 value 16.232913
## iter 70 value 16.208273
## iter 80 value 16.191870
## iter 90 value 16.175187
## iter 100 value 16.153326
## final value 16.153326
## stopped after 100 iterations
## # weights: 56
## initial value 356.799299
## iter 10 value 36.449025
## iter 20 value 18.887833
## iter 30 value 9.589752
## iter 40 value 4.716782
## iter 50 value 1.675048
## iter 60 value 0.698145
## iter 70 value 0.547533
## iter 80 value 0.502501
## iter 90 value 0.477363
## iter 100 value 0.453583
## final value 0.453583
## stopped after 100 iterations
## # weights: 12
## initial value 344.136501
## iter 10 value 52.780605
## iter 20 value 48.286081
## iter 30 value 45.631249
## iter 40 value 45.489322
## iter 50 value 45.484234
## iter 60 value 45.482398
## iter 70 value 45.479438
## iter 80 value 45.476549
## iter 90 value 45.475508
## iter 100 value 45.474052
## final value 45.474052
## stopped after 100 iterations
## # weights: 34
## initial value 292.720313
## iter 10 value 32.409860
## iter 20 value 31.276204
## iter 30 value 30.495487
## iter 40 value 29.334598
## iter 50 value 27.727389
## iter 60 value 27.115621
## iter 70 value 26.413413
## iter 80 value 25.981984
## iter 90 value 25.739081
## iter 100 value 25.607393
## final value 25.607393
## stopped after 100 iterations
## # weights: 56
## initial value 359.984588
## iter 10 value 37.144803
## iter 20 value 27.112851
## iter 30 value 20.017997
## iter 40 value 17.836122
## iter 50 value 15.875999
## iter 60 value 13.444093
## iter 70 value 13.144410
## iter 80 value 12.606599
## iter 90 value 12.040247
## iter 100 value 11.935470
## final value 11.935470
## stopped after 100 iterations
## # weights: 12
## initial value 307.654011
## iter 10 value 58.525836
## iter 20 value 48.342080
## iter 30 value 47.584723
## iter 40 value 47.574569
## iter 40 value 47.574569
## iter 40 value 47.574569
## final value 47.574569
## converged
## # weights: 34
## initial value 372.674142
## iter 10 value 41.390035
## iter 20 value 38.676063
## iter 30 value 37.172050
## iter 40 value 36.638221
## iter 50 value 36.574445
## final value 36.574319
## converged
## # weights: 56
## initial value 382.472849
## iter 10 value 72.420446
## iter 20 value 39.333417
## iter 30 value 36.185961
## iter 40 value 35.352723
## iter 50 value 35.216532
## iter 60 value 35.096788
## iter 70 value 35.082873
## iter 80 value 35.082814
## final value 35.082772
## converged
## # weights: 12
## initial value 330.122863
## iter 10 value 40.912739
## iter 20 value 38.506078
## iter 30 value 38.256446
## iter 40 value 34.105829
## iter 50 value 33.637980
## iter 60 value 33.445976
## iter 70 value 33.406364
## iter 80 value 33.397812
## iter 90 value 33.392176
## iter 100 value 33.379453
## final value 33.379453
## stopped after 100 iterations
## # weights: 34
## initial value 335.690660
## iter 10 value 36.381480
## iter 20 value 28.982668
## iter 30 value 23.805843
## iter 40 value 21.487236
## iter 50 value 20.241339
## iter 60 value 19.681873
## iter 70 value 19.626557
## iter 80 value 19.565181
## iter 90 value 19.558486
## iter 100 value 19.553292
## final value 19.553292
## stopped after 100 iterations
## # weights: 56
## initial value 341.588756
## iter 10 value 28.786236
## iter 20 value 18.168040
## iter 30 value 9.846261
## iter 40 value 5.032360
## iter 50 value 4.441379
## iter 60 value 2.679413
## iter 70 value 2.544886
## iter 80 value 2.498162
## iter 90 value 2.459608
## iter 100 value 2.437057
## final value 2.437057
## stopped after 100 iterations
## # weights: 12
## initial value 359.954945
## iter 10 value 47.835385
## iter 20 value 44.277785
## iter 30 value 41.309066
## iter 40 value 39.558618
## iter 50 value 39.472439
## final value 39.472349
## converged
## # weights: 34
## initial value 341.030572
## iter 10 value 46.703305
## iter 20 value 29.601659
## iter 30 value 26.940764
## iter 40 value 26.599190
## iter 50 value 21.519716
## iter 60 value 21.430501
## iter 70 value 21.409034
## iter 80 value 21.377963
## iter 90 value 21.361474
## iter 100 value 21.336973
## final value 21.336973
## stopped after 100 iterations
## # weights: 56
## initial value 324.843402
## iter 10 value 31.362872
## iter 20 value 20.374454
## iter 30 value 4.481585
## iter 40 value 3.743240
## iter 50 value 3.740621
## iter 60 value 3.740351
## iter 70 value 3.739010
## iter 80 value 3.674222
## final value 3.673951
## converged
## # weights: 12
## initial value 413.529404
## iter 10 value 72.810188
## iter 20 value 52.198007
## iter 30 value 50.592124
## iter 40 value 50.578712
## iter 40 value 50.578712
## iter 40 value 50.578712
## final value 50.578712
## converged
## # weights: 34
## initial value 315.080576
## iter 10 value 58.974724
## iter 20 value 40.539509
## iter 30 value 38.617470
## iter 40 value 38.222216
## iter 50 value 37.969486
## iter 60 value 37.961685
## iter 60 value 37.961685
## iter 60 value 37.961685
## final value 37.961685
## converged
## # weights: 56
## initial value 326.549524
## iter 10 value 61.234769
## iter 20 value 42.700873
## iter 30 value 38.423703
## iter 40 value 37.452549
## iter 50 value 37.294977
## iter 60 value 36.566381
## iter 70 value 36.213830
## iter 80 value 36.172025
## iter 90 value 36.167624
## final value 36.167622
## converged
## # weights: 12
## initial value 356.965518
## iter 10 value 51.688104
## iter 20 value 47.138198
## iter 30 value 43.722287
## iter 40 value 40.288868
## iter 50 value 39.791785
## iter 60 value 39.755746
## iter 70 value 39.747962
## iter 80 value 39.731725
## iter 90 value 39.727952
## iter 100 value 39.724732
## final value 39.724732
## stopped after 100 iterations
## # weights: 34
## initial value 374.323124
## iter 10 value 37.355608
## iter 20 value 32.072326
## iter 30 value 22.632809
## iter 40 value 20.233293
## iter 50 value 19.705316
## iter 60 value 17.013251
## iter 70 value 16.729733
## iter 80 value 16.460649
## iter 90 value 16.312008
## iter 100 value 16.171573
## final value 16.171573
## stopped after 100 iterations
## # weights: 56
## initial value 311.235313
## iter 10 value 30.155543
## iter 20 value 9.554859
## iter 30 value 5.811890
## iter 40 value 5.362715
## iter 50 value 5.107756
## iter 60 value 4.865939
## iter 70 value 4.798686
## iter 80 value 4.695730
## iter 90 value 4.616456
## iter 100 value 4.547477
## final value 4.547477
## stopped after 100 iterations
## # weights: 12
## initial value 343.614277
## iter 10 value 53.299168
## iter 20 value 32.509574
## iter 30 value 26.449451
## iter 40 value 26.307341
## iter 50 value 26.013269
## iter 60 value 25.846284
## iter 70 value 25.845141
## final value 25.845135
## converged
## # weights: 34
## initial value 316.873328
## iter 10 value 29.726297
## iter 20 value 20.532428
## iter 30 value 11.459159
## iter 40 value 7.101294
## iter 50 value 4.720538
## iter 60 value 3.464813
## iter 70 value 3.106115
## iter 80 value 3.064230
## iter 90 value 3.043057
## iter 100 value 3.042539
## final value 3.042539
## stopped after 100 iterations
## # weights: 56
## initial value 316.600953
## iter 10 value 28.737512
## iter 20 value 11.229893
## iter 30 value 6.075681
## iter 40 value 5.709626
## iter 50 value 5.605253
## iter 60 value 5.476611
## iter 70 value 5.282768
## iter 80 value 5.180506
## iter 90 value 5.132434
## iter 100 value 5.066015
## final value 5.066015
## stopped after 100 iterations
## # weights: 12
## initial value 323.491815
## iter 10 value 55.628329
## iter 20 value 43.165785
## iter 30 value 41.213636
## final value 41.212262
## converged
## # weights: 34
## initial value 367.131860
## iter 10 value 66.620816
## iter 20 value 35.450385
## iter 30 value 32.857447
## iter 40 value 32.691141
## iter 50 value 32.651666
## iter 60 value 32.651235
## final value 32.651233
## converged
## # weights: 56
## initial value 314.947373
## iter 10 value 77.106433
## iter 20 value 35.463501
## iter 30 value 30.716166
## iter 40 value 30.183467
## iter 50 value 29.617730
## iter 60 value 29.305492
## iter 70 value 29.299751
## final value 29.299670
## converged
## # weights: 12
## initial value 344.480465
## iter 10 value 83.740434
## iter 20 value 34.357641
## iter 30 value 26.885069
## iter 40 value 25.071417
## iter 50 value 23.328862
## iter 60 value 23.316932
## iter 70 value 23.312852
## iter 80 value 23.305286
## iter 90 value 23.303388
## iter 100 value 23.302829
## final value 23.302829
## stopped after 100 iterations
## # weights: 34
## initial value 354.145565
## iter 10 value 29.889402
## iter 20 value 21.587445
## iter 30 value 20.057871
## iter 40 value 19.012599
## iter 50 value 18.633272
## iter 60 value 17.540103
## iter 70 value 16.956364
## iter 80 value 16.717756
## iter 90 value 16.509332
## iter 100 value 16.086733
## final value 16.086733
## stopped after 100 iterations
## # weights: 56
## initial value 555.324625
## iter 10 value 26.135842
## iter 20 value 14.075957
## iter 30 value 7.154809
## iter 40 value 5.770379
## iter 50 value 5.526264
## iter 60 value 5.221688
## iter 70 value 4.926856
## iter 80 value 4.789912
## iter 90 value 4.639032
## iter 100 value 4.342006
## final value 4.342006
## stopped after 100 iterations
## # weights: 12
## initial value 322.850273
## iter 10 value 43.063804
## iter 20 value 39.941578
## iter 30 value 39.858368
## iter 40 value 39.474417
## iter 50 value 39.469062
## final value 39.469056
## converged
## # weights: 34
## initial value 332.260925
## iter 10 value 41.414748
## iter 20 value 30.230336
## iter 30 value 28.199957
## iter 40 value 26.509024
## iter 50 value 25.105297
## iter 60 value 24.058602
## iter 70 value 23.367914
## iter 80 value 23.155447
## iter 90 value 22.782940
## iter 100 value 22.722687
## final value 22.722687
## stopped after 100 iterations
## # weights: 56
## initial value 323.193537
## iter 10 value 31.245415
## iter 20 value 17.265422
## iter 30 value 6.269596
## iter 40 value 5.594091
## iter 50 value 5.468771
## iter 60 value 5.428449
## iter 70 value 5.424956
## iter 80 value 5.424893
## iter 90 value 5.424885
## iter 90 value 5.424885
## iter 90 value 5.424885
## final value 5.424885
## converged
## # weights: 12
## initial value 395.125121
## iter 10 value 92.698049
## iter 20 value 50.742225
## iter 30 value 49.074882
## iter 40 value 48.951537
## final value 48.951517
## converged
## # weights: 34
## initial value 338.900221
## iter 10 value 111.422120
## iter 20 value 43.396065
## iter 30 value 37.975350
## iter 40 value 37.206679
## iter 50 value 36.568418
## iter 60 value 36.391689
## iter 70 value 36.380616
## final value 36.380609
## converged
## # weights: 56
## initial value 374.263961
## iter 10 value 41.580653
## iter 20 value 36.605013
## iter 30 value 35.750170
## iter 40 value 34.693029
## iter 50 value 34.142092
## iter 60 value 34.126771
## iter 70 value 34.125163
## iter 80 value 34.124630
## final value 34.124630
## converged
## # weights: 12
## initial value 334.114972
## iter 10 value 54.877785
## iter 20 value 46.809506
## iter 30 value 42.894717
## iter 40 value 39.722044
## iter 50 value 39.639217
## iter 60 value 39.627470
## iter 70 value 39.625332
## iter 80 value 39.623099
## iter 90 value 39.618324
## iter 100 value 39.617493
## final value 39.617493
## stopped after 100 iterations
## # weights: 34
## initial value 309.920641
## iter 10 value 33.371633
## iter 20 value 23.194254
## iter 30 value 14.331682
## iter 40 value 13.337363
## iter 50 value 12.880946
## iter 60 value 12.436954
## iter 70 value 12.081840
## iter 80 value 11.899487
## iter 90 value 11.683769
## iter 100 value 11.654989
## final value 11.654989
## stopped after 100 iterations
## # weights: 56
## initial value 425.302509
## iter 10 value 29.941186
## iter 20 value 10.986143
## iter 30 value 6.310928
## iter 40 value 6.176340
## iter 50 value 4.950996
## iter 60 value 3.172406
## iter 70 value 2.819869
## iter 80 value 2.671431
## iter 90 value 2.611110
## iter 100 value 2.526765
## final value 2.526765
## stopped after 100 iterations
## # weights: 12
## initial value 354.023869
## iter 10 value 39.283516
## iter 20 value 35.770340
## iter 30 value 34.373859
## iter 40 value 33.848125
## iter 50 value 33.157726
## iter 60 value 33.117666
## iter 70 value 33.024354
## iter 80 value 32.955375
## iter 90 value 32.954441
## iter 100 value 32.913144
## final value 32.913144
## stopped after 100 iterations
## # weights: 34
## initial value 397.673134
## iter 10 value 38.784999
## iter 20 value 28.359039
## iter 30 value 22.141237
## iter 40 value 21.063550
## iter 50 value 20.740871
## iter 60 value 20.384461
## iter 70 value 20.089028
## iter 80 value 19.927941
## iter 90 value 19.769947
## iter 100 value 19.499301
## final value 19.499301
## stopped after 100 iterations
## # weights: 56
## initial value 313.374671
## iter 10 value 32.083672
## iter 20 value 23.708195
## iter 30 value 21.112298
## iter 40 value 20.248257
## iter 50 value 18.632902
## iter 60 value 18.339068
## iter 70 value 18.152288
## iter 80 value 17.997704
## iter 90 value 17.848595
## iter 100 value 17.685149
## final value 17.685149
## stopped after 100 iterations
## # weights: 12
## initial value 337.077746
## iter 10 value 63.281287
## iter 20 value 54.863565
## iter 30 value 48.413095
## iter 40 value 47.845264
## final value 47.790421
## converged
## # weights: 34
## initial value 366.353690
## iter 10 value 64.794440
## iter 20 value 44.957517
## iter 30 value 40.769897
## iter 40 value 36.650964
## iter 50 value 34.748855
## iter 60 value 34.555152
## iter 70 value 34.517861
## iter 80 value 34.516252
## iter 90 value 34.513131
## final value 34.513084
## converged
## # weights: 56
## initial value 294.712202
## iter 10 value 46.347189
## iter 20 value 37.957016
## iter 30 value 35.220965
## iter 40 value 34.703193
## iter 50 value 34.298810
## iter 60 value 34.275328
## iter 70 value 34.273655
## final value 34.273646
## converged
## # weights: 12
## initial value 379.362140
## iter 10 value 57.455067
## iter 20 value 52.911394
## iter 30 value 52.761506
## iter 40 value 52.754954
## iter 50 value 52.737421
## iter 60 value 52.735613
## iter 70 value 52.734265
## iter 80 value 52.731898
## iter 90 value 52.731129
## iter 100 value 52.730710
## final value 52.730710
## stopped after 100 iterations
## # weights: 34
## initial value 342.250550
## iter 10 value 35.180483
## iter 20 value 29.693837
## iter 30 value 24.370972
## iter 40 value 20.872998
## iter 50 value 20.581446
## iter 60 value 20.540750
## iter 70 value 20.519548
## iter 80 value 20.511201
## iter 90 value 20.503910
## iter 100 value 20.498901
## final value 20.498901
## stopped after 100 iterations
## # weights: 56
## initial value 450.573408
## iter 10 value 34.037837
## iter 20 value 17.860088
## iter 30 value 12.759443
## iter 40 value 9.255811
## iter 50 value 8.870258
## iter 60 value 8.395126
## iter 70 value 7.791529
## iter 80 value 7.294425
## iter 90 value 6.575039
## iter 100 value 6.222544
## final value 6.222544
## stopped after 100 iterations
## # weights: 12
## initial value 307.017398
## iter 10 value 34.914184
## iter 20 value 31.813467
## iter 30 value 31.292020
## iter 40 value 30.298390
## iter 50 value 28.798551
## iter 60 value 28.553735
## iter 70 value 28.395953
## iter 80 value 28.390058
## iter 90 value 28.287602
## iter 100 value 28.285959
## final value 28.285959
## stopped after 100 iterations
## # weights: 34
## initial value 395.706784
## iter 10 value 38.119674
## iter 20 value 27.756374
## iter 30 value 21.821249
## iter 40 value 21.664364
## iter 50 value 21.609400
## iter 60 value 21.512754
## iter 70 value 21.407259
## iter 80 value 21.325151
## iter 90 value 21.282174
## iter 100 value 21.164080
## final value 21.164080
## stopped after 100 iterations
## # weights: 56
## initial value 339.263717
## iter 10 value 21.401622
## iter 20 value 10.241894
## iter 30 value 4.448594
## iter 40 value 2.561257
## iter 50 value 2.294347
## iter 60 value 2.264403
## iter 70 value 2.254425
## iter 80 value 2.251592
## iter 90 value 2.249424
## iter 100 value 2.249138
## final value 2.249138
## stopped after 100 iterations
## # weights: 12
## initial value 360.518253
## iter 10 value 65.507009
## iter 20 value 45.812107
## iter 30 value 42.672270
## iter 40 value 41.952116
## final value 41.951920
## converged
## # weights: 34
## initial value 431.808831
## iter 10 value 54.638091
## iter 20 value 35.458633
## iter 30 value 33.578262
## iter 40 value 33.079096
## iter 50 value 33.055063
## final value 33.055026
## converged
## # weights: 56
## initial value 270.295335
## iter 10 value 46.265356
## iter 20 value 34.582750
## iter 30 value 32.251874
## iter 40 value 31.562441
## iter 50 value 31.483987
## iter 60 value 31.454296
## iter 70 value 31.419194
## final value 31.418875
## converged
## # weights: 12
## initial value 381.216543
## iter 10 value 40.427486
## iter 20 value 32.682573
## iter 30 value 29.881991
## iter 40 value 28.051135
## iter 50 value 26.999489
## iter 60 value 26.969361
## iter 70 value 26.963407
## iter 80 value 26.962656
## iter 90 value 26.960979
## iter 100 value 26.960518
## final value 26.960518
## stopped after 100 iterations
## # weights: 34
## initial value 327.104152
## iter 10 value 44.786711
## iter 20 value 44.081802
## iter 30 value 43.104457
## iter 40 value 41.899283
## iter 50 value 33.995060
## iter 60 value 29.951902
## iter 70 value 28.199882
## iter 80 value 27.398332
## iter 90 value 27.277569
## iter 100 value 27.177694
## final value 27.177694
## stopped after 100 iterations
## # weights: 56
## initial value 253.505969
## iter 10 value 34.865541
## iter 20 value 24.171863
## iter 30 value 14.604240
## iter 40 value 9.551494
## iter 50 value 3.351279
## iter 60 value 0.541836
## iter 70 value 0.442962
## iter 80 value 0.426645
## iter 90 value 0.396665
## iter 100 value 0.375886
## final value 0.375886
## stopped after 100 iterations
## # weights: 34
## initial value 506.788021
## iter 10 value 52.239847
## iter 20 value 41.095093
## iter 30 value 40.489771
## iter 40 value 40.269751
## iter 50 value 40.209301
## iter 60 value 40.105537
## final value 40.105025
## converged
resultado_entrenamiento5 <- predict(modelo5, entrenamiento)
resultado_prueba5 <- predict(modelo5, prueba)
#Matriz de Consufión
mcre5 <- confusionMatrix(resultado_entrenamiento5,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre5
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 348 5
## 2 7 187
##
## Accuracy : 0.9781
## 95% CI : (0.962, 0.9886)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.952
##
## Mcnemar's Test P-Value : 0.7728
##
## Sensitivity : 0.9803
## Specificity : 0.9740
## Pos Pred Value : 0.9858
## Neg Pred Value : 0.9639
## Prevalence : 0.6490
## Detection Rate : 0.6362
## Detection Prevalence : 0.6453
## Balanced Accuracy : 0.9771
##
## 'Positive' Class : 1
##
mcrp5 <- confusionMatrix(resultado_prueba5, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp5
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 87 1
## 2 2 46
##
## Accuracy : 0.9779
## 95% CI : (0.9369, 0.9954)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.9515
##
## Mcnemar's Test P-Value : 1
##
## Sensitivity : 0.9775
## Specificity : 0.9787
## Pos Pred Value : 0.9886
## Neg Pred Value : 0.9583
## Prevalence : 0.6544
## Detection Rate : 0.6397
## Detection Prevalence : 0.6471
## Balanced Accuracy : 0.9781
##
## 'Positive' Class : 1
##
modelo6 <- train(Class ~ ., data=entrenamiento,
method = "rf",
preProcess = c("scale", "center"),
trControl = trainControl(method="cv", number=10),
tuneGrid = expand.grid(mtry=c(2,4,6))
)
resultado_entrenamiento6 <- predict(modelo6, entrenamiento)
resultado_prueba6 <- predict(modelo6, prueba)
#Matriz de Consufión
mcre6 <- confusionMatrix(resultado_entrenamiento6,entrenamiento$Class) #Matriz de confusion de resultado de entrenamiento
mcre6
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 355 0
## 2 0 192
##
## Accuracy : 1
## 95% CI : (0.9933, 1)
## No Information Rate : 0.649
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 1
##
## Mcnemar's Test P-Value : NA
##
## Sensitivity : 1.000
## Specificity : 1.000
## Pos Pred Value : 1.000
## Neg Pred Value : 1.000
## Prevalence : 0.649
## Detection Rate : 0.649
## Detection Prevalence : 0.649
## Balanced Accuracy : 1.000
##
## 'Positive' Class : 1
##
mcrp6 <- confusionMatrix(resultado_prueba6, prueba$Class) #Matriz de confusion de resultado de prueba
mcrp6
## Confusion Matrix and Statistics
##
## Reference
## Prediction 1 2
## 1 87 2
## 2 2 45
##
## Accuracy : 0.9706
## 95% CI : (0.9264, 0.9919)
## No Information Rate : 0.6544
## P-Value [Acc > NIR] : <2e-16
##
## Kappa : 0.935
##
## Mcnemar's Test P-Value : 1
##
## Sensitivity : 0.9775
## Specificity : 0.9574
## Pos Pred Value : 0.9775
## Neg Pred Value : 0.9574
## Prevalence : 0.6544
## Detection Rate : 0.6397
## Detection Prevalence : 0.6544
## Balanced Accuracy : 0.9675
##
## 'Positive' Class : 1
##
resultados <- data.frame(
"svmLinear" = c(mcre1$overall["Accuracy"], mcrp1$overall["Accuracy"]),
"svmRadial" = c(mcre2$overall["Accuracy"], mcrp2$overall["Accuracy"]),
"svmPoly" = c(mcre3$overall["Accuracy"], mcrp3$overall["Accuracy"]),
"rpart" = c(mcre4$overall["Accuracy"], mcrp4$overall["Accuracy"]),
"nnet" = c(mcre5$overall["Accuracy"], mcrp5$overall["Accuracy"]),
"rf" = c(mcre6$overall["Accuracy"], mcrp6$overall["Accuracy"])
)
rownames(resultados) <- c("Precision de entrenamiento", "Precision de prueba")
resultados
## svmLinear svmRadial svmPoly rpart nnet
## Precision de entrenamiento 0.9725777 0.9981718 0.9725777 0.9689214 0.9780622
## Precision de prueba 0.9705882 0.9485294 0.9705882 0.9558824 0.9779412
## rf
## Precision de entrenamiento 1.0000000
## Precision de prueba 0.9705882
El modelo con el método de bosques aleatorios presenta sobreajuste,
ya que tiene una alta precisión en entrenamiento, pero baja en
prueba.
Acorde al resumen de resultados, el mejor modelo es el de Redes
Neuronales debido a la poca variación entre resultados y un
valor mayor en la prueba.