Para el modelo se utilizaron 640 observaciones validadas por buceo, de estas, 512 fueron usadas para entrenar el modelo y 128 fueron apartadas para comprobar el desempeño del modelo con datos no usados para su entrenamiento. El entrenamiento se realizo con el paquete caret (Jed Wing et al. 2018) en el software libre R (R Core Team 2019).
El modelo utilizado fue el algoritmo GBM (Ridgeway 2007), donde probamos una matriz de 280 opciones de parámetros dada por la combinación de profundidad de interacción (2, 5, 7, 9, 11, 13 o 15), número de árboles (50, 100, 150, 200, 250, 300, 350, 400, 450 o 500), shrinkage o tasa de aprendizaje (0.1 o 0.01) y número mínimo de observaciones finales, en las cuales probamos 10 o 20.
Para el entrenamiento ocupamos repeated k-fold crossvalidation que es uno de los mejores estimadores para clasificadores en machine learning (Kim 2009), donde usamos 10 repeated 10-fold crossvalidation, esto es dividimos la base de entrenamiento en 10, y se entrenaba con 9 modelos para ser testeado con el décimo restante, y esta división se repite 10 veces.
El modelo elegido a través del repeated k-fold crossvalidation fue el que tenía 500 arboles, una profundidad de interacción de 15, un shrinkage de 0.1 y al menos 20 observaciones por nodo final. Como vemos en la figura 1. Como vemos ya la curva de mejora del accuracy parece haber llegado a una asintota, por lo que es poco probable el poder mejorar este modelo (aunque aun se podrán testear otros algoritmos como neural networks)
Fig 1: Accuracy vs parámetros del modelo
Considerando solo los resultados de predicción sobre la base de datos de testeo, el Accuracy del algoritmo de machine learning es de 0.88, con un intervalo de confianza del 95% entre 0.8 y 0.93. Dependiendo de la clase a predecir, esto varia desde 0.81 para Boulder+Arena hasta 0.92 para Arena.
Al continuación podemos ver la matriz de confusion, donde vemos que las categorias con menor accuracy, (BOULDER+ARENA), solo es confundido con Boulder, y que (ROCA&ARENA, solo es confunfifo con ROCA).
## Reference
## Prediction ARENA BOULDER BOULDER+ARENA ROCA ROCA & ARENA
## ARENA 10 0 0 0 0
## BOULDER 2 29 3 1 0
## BOULDER+ARENA 0 1 5 0 0
## ROCA 0 8 0 65 1
## ROCA & ARENA 0 0 0 0 3
A continuacin se muestra un mapa interactivo con las predicciones
Jed Wing, Max Kuhn. Contributions from, Steve Weston, Andre Williams, Chris Keefer, Allan Engelhardt, Tony Cooper, Zachary Mayer, et al. 2018. Caret: Classification and Regression Training. https://CRAN.R-project.org/package=caret.
Kim, Ji-Hyun. 2009. “Estimating Classification Error Rate: Repeated Cross-Validation, Repeated Hold-Out and Bootstrap.” Computational Statistics & Data Analysis 53 (11). Elsevier: 3735–45.
R Core Team. 2019. R: A Language and Environment for Statistical Computing. Vienna, Austria: R Foundation for Statistical Computing. https://www.R-project.org/.
Ridgeway, Greg. 2007. “Generalized Boosted Models: A Guide to the Gbm Package.” Update 1 (1): 2007.