Consensos asistidos en Medicina Parte 2

Ledys Izquierdo, Luis E. Pino
Miembros Fundadores de AIpocrates

…En el mundo de la Inteligencia Artificial (IA), aparece el concepto denominado “la sabiduría de la multitud”, que se entiende como un fenómeno estadístico que nos muestra que al hacer una pregunta a mil personas comunes y agregar sus respuestas, obtendremos mejores resultados que si tuviéramos una sola respuesta de un experto en el tema. Aplicado en Aprendizaje de Máquinas (por su sigla en inglés ML), si unimos predictores con bajas perspectivas (predictores débiles), obtendremos un mejor resultado (predictores fuertes) que con un único predictor. Este concepto es utilizado como base para definir las técnicas de ensamblaje, modelos que han revolucionado el mundo de los datos tabulares y sus resultados debido a una gran optimización de la capacidad predictiva de los datos. 

Tradicionalmente en ML, se trabajaba con el aprendizaje de un modelo único, hoy se busca la precisión combinando un conjunto de modelos y técnicas en un solo modelo o metamodelo, que como siempre debe buscar un equilibrio entre sesgo y varianza. La combinación de modelos mejora métricas de bajo perfil y siempre busca el mejor ajuste de los datos, a través de técnicas de ensamble homogéneas como Boosting y Bagging o modelos heterogéneos como el stacking. Como vemos en la gráfica, estos metamodelos integran modelos más “simples” como clusterización (KNN), árboles de decisión o máquinas de soporte vectorial (SVM). Sobre estos modelos en específico trataremos posteriormente en AIpocrates en nuestra serie sobre ciencia de datos. 

Gráfica modificada eiwwGeRwqno 

 No hay etapas únicas y rigurosas para construir ensambles y su caracterización puede ser amplia. Basados en Kuncheva (2014) se pueden describir algunos pasos para construir un ensamblado estadístico:

  1. Elegir los modelos.

Los modelos de conjunto son mejores en términos de rendimiento. Pueden usarse tanto en problemas de regresión (predicción) como en los de clasificación. Dependiendo del problema que se quiera resolver, los modelos de conjunto se pueden construir con algoritmos de la misma familia, por ejemplo, solo árboles de decisión, que también se llamarían conjuntos homogéneos. Se puede optar por elegirlos de diferentes familias; máquinas de vectores de soporte (SVM) o bosques aleatorios  y en este caso el modelo de conjunto se denominaría heterogéneo.  De la amplia gama de modelos base, las posibles combinaciones de ensamble pueden ser infinitas, dependen del problema a resolver y de la experticia para hacerlo. Para combinar los clasificadores se han desarrollado dos técnicas; fusión y selección. En la fusión de clasificadores cada miembro del conjunto tiene conocimiento de todo el espacio de características. En la selección del clasificador, se supone que cada miembro del ensamblaje conoce bien una parte del espacio de características y es responsable de los objetos en esta parte. La selección de clasificadores no ha atraído tanta atención como la fusión de clasificadores.

  1. Evaluación de modelos seleccionados.

En ML, el muestreo y el muestreo con reemplazo son fundamentales para evaluar el desempeño de los modelos. El muestreo es la fase convencional, técnicas como: k-fold and leave-one-out y cross-validation entre otros, toman un subconjunto de observaciones para inferir parámetros de la población. El muestreo sin reemplazo mejora la precisión de las muestras, usando subconjuntos de las mismas (Técnica Jacknifing). En otros casos, se usa muestreo con reemplazo de la muestra original, para obtener estimaciones robustas de parámetros de la población (técnica Bootstrapping), que es la más utilizada. O se pueden aplicar test de significancia para el estudio de diferencia entre grupos, como en el test de permutaciones. 

  1. Ensamblado.

En los ensamblados los problemas a resolver son frecuentemente de tipo supervisado. Un modelo de ensamblaje requiere primero los modelos base, que como clasificadores deben ser precisos, pero no necesariamente correlacionados en sus respuestas. Lo segundo: el ensamblaje, donde los modelos o clasificadores base se combinan para formar un solo modelo de predicción. En las técnicas de ensambles, una vez se dispone del resultado de los modelos base, las posibles combinaciones dependerán de los resultados estadísticos, computacionales y representacionales del espacio de características que den respuesta a la pregunta inicial. Los ensambles pueden producir L modelos no entrenables y entrenables.

Técnicas de ensamble como el voting o comité no necesitan entrenamiento, utilizan la salida de los L modelos base para obtener una clasificación, se elige la mayor votación, ya sea votación simple (para problemas de clasificación) o por medio de una votación (por eso voting) o suma ponderada (para problemas de regresión). Los modelos entrenables utilizan las salidas de los modelos base para dotar de información extra al conjunto de entrenamiento S, el entrenamiento puede llegar a requerir también la construcción de un metamodelo. La combinación reduce los errores y mejora significativamente la varianza y el sesgo del modelo de predicción. 

Dentro de las técnicas de ensamble que utilizan técnicas de fusión de clasificadores se destacan los métodos como el bagging y el boosting, que se describen a continuación:

Bagging (embolsado):  es un método que emplea algoritmos homogéneos y entrenables. Proviene del concepto de empaquetado y agregación de Bootstrap. En estos métodos de bagging los algoritmos simples son usados en paralelo, con el principal objetivo de aprovechar la independencia que existe entre ellos, así se puede reducir el error, al promediar las salidas de los modelos reduciendo las varianzas de las estimaciones. Bagging se emplea en modelos con muy poco sesgo, pero con alta varianza.

Este algoritmo se compone de dos pasos: Boostrapping, que es un método de muestreo aleatorio que se utiliza para derivar muestras de los datos mediante el procedimiento de reemplazo, crea varios subconjuntos de datos de entrenamiento, en los que se ejecutan algoritmos de aprendizaje. En el proceso de agregación el algoritmo combina la salida de todos los modelos base y, en función de su salida, predice un resultado agregado con mayor precisión y varianza reducida. 

Los bosques aleatorios (random forest) son una variante de bagging específicamente diseñados para trabajar con árboles de decisión, que utiliza modelos homogéneos. Es flexible tanto para problemas de clasificación como de regresión (CAR). No se sobreajusta y es muy estable ya que la predicción final se basa en la votación por mayoría o en el promedio aplicando aqui estos como proceso de ajuste. Es difícil de operar porque requiere alta potencia computacional.

Boosting (el impulso), a partir de un grupo de modelos débiles, intenta obtener un modelo fuerte, más preciso, con boosting se presenta un ajuste secuencial y cada nuevo modelo emplea información del modelo anterior para aprender de sus errores mejorando con cada iteración. La diferencia con el bagging es que en el boosting los algoritmos no se entrenan independientemente, sino que se ponderan según los errores de los anteriores. Boosting utiliza modelos homogéneos y reduce el sesgo. 

Boosting tiene unas variantes o  diferentes algoritmos de potenciación o refuerzo como la potenciación adaptativa (AdaBoost), la potenciación de gradientes y la potenciación de gradientes extremos como XGBoost, lightGBM y el categórico CatBoost.

Comparación entre modelos de ensamble homogéneos

BaggingBoosting
Entrenamiento paraleloEntrenamiento secuencial
Pesos igualesPesos variables (se da mayor peso a los predictores débiles pero de mejor desempeño en cada iteración)
Muestras independientesMuestras dependientes
Reduce la varianza del modeloReduce el sesgo del modelo
Ejemplos: Clasificadores bagging y random forestEjemplos: Boost adaptativo (Ada-Boost), GPM (gradient boost), XG-Boost (Gradiente optimizado) y Cat-Boost

El stacking. El apilamiento se usa principalmente para minimizar el error de generalización de los modelos base y mejorar las predicciones. Combina la predicción de varios clasificadores de aprendizaje débiles y heterogéneos, también puede tener modelos de ensamblaje y potenciados como adaboost, XGBoost, bosques aleatorios y los utiliza como entrada para crear un segundo modelo que es un metamodelo, este proceso se realiza mediante k-fold cross validation,  y puede verse como una versión refinada de la validación cruzada, Esto se hace porque a veces es difícil encontrar un modelo preciso que se ajuste al conjunto de datos. en la práctica a menudo se utiliza un modelo de regresión logística como combinador.

Gráfica modificada analyticsvidhya

Las técnicas descritas permiten entender, que el ensamblado es una especie de consenso, en donde un grupo de decisiones individuales adoptadas en modelos base, puede reclasificarse y entrenarse para recuperar información más predictiva. Las ventajas de procesamiento de datos en ML, permiten que exista información rápida, estructurada, en mejores condiciones estadísticas, con mejores opciones de procesamiento y con mayores posibilidades de representación teórica frente a los problemas fácticos.

¿En ML ya se tienen técnicas que funcionan como consensos o comité, porque no llevar estas técnicas a una práctica que hacemos en medicina que son los consensos? ¿Y cómo lo haríamos? Se realizará un ejercicio en la próxima entrega…

Referencias

Ensemble Machine Learning Cookbook: Over 35 Practical Recipes to Explore Ensemble Machine Learning Techniques Using Python. ISBN: 978-1-78913-250-2; 978-1-78913-660-9 

Combining Pattern Classifiers: Methods and Algorithms.  Ludmila I. Kuncheva Edición 2. John Wiley & Sons, 2014. ISBN: 1118914546, 9781118914540

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: