Tipos comunes de conjuntos
Clasificador bayesiano óptimo
El clasificador bayesiano óptimo es una técnica de clasificación. Se trata de un conjunto de todas las hipótesis del espacio de hipótesis. Por término medio, ningún otro conjunto puede superarlo.[16] El clasificador Naive Bayes es una versión de éste que asume que los datos son condicionalmente independientes de la clase y hace que el cálculo sea más factible. A cada hipótesis se le da un voto proporcional a la probabilidad de que el conjunto de datos de entrenamiento sea muestreado de un sistema si esa hipótesis fuera cierta. Para facilitar los datos de entrenamiento de tamaño finito, el voto de cada hipótesis también se multiplica por la probabilidad a priori de esa hipótesis. El clasificador óptimo de Bayes puede expresarse con la siguiente ecuación:.
Donde es la clase prevista, es el conjunto de todas las posibles clases, es el espacio de hipótesis, se refiere a una probabilidad, y son los datos de entrenamiento. Como conjunto, el clasificador óptimo de Bayes representa una hipótesis que no está necesariamente en . Sin embargo, la hipótesis representada por el clasificador óptimo de Bayes es la hipótesis óptima en el espacio de conjuntos (el espacio de todos los conjuntos posibles formados sólo por hipótesis en ).
Esta fórmula puede reformularse utilizando el teorema de Bayes, que dice que la probabilidad posterior es proporcional a la probabilidad multiplicada por la probabilidad anterior:.
por lo tanto,.
Agregación de Bootstrap (bagging)
La agregación bootstrap (bagging) consiste en entrenar un conjunto a partir de conjuntos de datos bootstrap. Un conjunto bootstrap se crea seleccionando del conjunto de datos de entrenamiento original con reemplazo. Por lo tanto, un conjunto bootstrap puede contener un ejemplo dado cero, una o varias veces. Los miembros del conjunto también pueden tener límites en las características (por ejemplo, los nodos "Nodo (informática)") de un árbol de decisión), para fomentar la exploración de diversas características.[17] La varianza de la información local en los conjuntos bootstrap y las consideraciones sobre las características promueven la diversidad en el conjunto, y pueden fortalecerlo.[18] Para reducir el sobreajuste, un miembro puede validarse utilizando el conjunto fuera de la bolsa (los ejemplos que no están en su conjunto bootstrap).[19].
La inferencia se realiza por votación de las predicciones de los miembros del conjunto, lo que se denomina agregación. A continuación se ilustra con un conjunto de cuatro árboles de decisión. Cada árbol clasifica el ejemplo de consulta. Como tres de los cuatro predicen la clase positiva, la clasificación global del conjunto es positiva. Los bosques aleatorios como el que se muestra son una aplicación común del ensamblaje.
Boosting
El boosting consiste en entrenar modelos sucesivos haciendo hincapié en los datos de entrenamiento clasificados erróneamente por los modelos aprendidos previamente. Inicialmente, todos los datos (D1) tienen el mismo peso y se utilizan para aprender un modelo base M1. A los ejemplos mal clasificados por M1 se les asigna un peso mayor que a los correctamente clasificados. Estos datos reforzados (D2) se utilizan para entrenar un segundo modelo base M2, y así sucesivamente. La inferencia se realiza por votación.
En algunos casos, el boosting ha dado mejores resultados que el bagging, pero tiende a sobreajustar más. La aplicación más común de boosting es Adaboost"), pero algunos algoritmos más recientes obtienen mejores resultados.
Promedio bayesiano de modelos
El promediado bayesiano de modelos (BMA) realiza predicciones promediando las predicciones de los modelos ponderados por sus probabilidades a posteriori dados los datos.[20] Se sabe que el BMA suele dar mejores respuestas que un único modelo, obtenido, por ejemplo, mediante regresión paso a paso (stepwise)&action=edit&redlink=1 "Regresión paso a paso (stepwise) (aún no redactado)"), especialmente cuando modelos muy diferentes tienen un rendimiento casi idéntico en el conjunto de entrenamiento pero, por lo demás, pueden tener un rendimiento muy diferente.
La cuestión con cualquier uso del teorema de Bayes es el prior, es decir, la probabilidad (quizá subjetiva) de que cada modelo sea el mejor para un fin determinado. Conceptualmente, BMA puede utilizarse con cualquier prior. Los paquetes de R ensembleBMA[21] y BMA[22] utilizan la prioridad implícita en el criterio de información bayesiano (BIC), siguiendo a Raftery (1995).[23] El paquete de R BAS admite el uso de las prioridades implícitas en el criterio de información de Akaike (AIC) y otros criterios sobre los modelos alternativos, así como prioridades sobre los coeficientes.[24].
La diferencia entre el BIC y el AIC es la fuerza de la preferencia por la parsimonia. La penalización del BIC por la complejidad del modelo es , mientras que la de AIC es . La teoría asintótica de muestras grandes establece que si existe un mejor modelo, entonces, con tamaños de muestra crecientes, el BIC es fuertemente consistente, es decir, casi seguro que lo encontrará, mientras que el AIC puede que no, porque el AIC puede seguir colocando una probabilidad posterior excesiva en modelos que son más complicados de lo necesario. Por otra parte, AIC y AICc son asintóticamente "eficientes" (es decir, error medio cuadrático mínimo de predicción), mientras que BIC no lo es.[25].
Haussler et al. (1994) demostraron que cuando se utiliza BMA para la clasificación, su error esperado es, como máximo, el doble del error esperado del clasificador óptimo de Bayes.[26] Burnham y Anderson (1998, 2002) contribuyeron en gran medida a presentar a un público más amplio las ideas básicas del promediado bayesiano de modelos y a popularizar la metodología.[27] La disponibilidad de software, incluidos otros paquetes gratuitos de código abierto para R además de los mencionados anteriormente, ayudó a que los métodos fueran accesibles a un público más amplio.[28].
Combinación bayesiana de modelos
La combinación bayesiana de modelos (BMC) es una corrección algorítmica del promedio bayesiano de modelos (BMA). En lugar de muestrear cada modelo del conjunto individualmente, se muestrea a partir del espacio de posibles conjuntos (con pesos de modelo extraídos aleatoriamente de una distribución Dirichlet con parámetros uniformes). Esta modificación supera la tendencia de BMA a converger y dar todo el peso a un único modelo. Aunque la BMC es algo más costosa que la BMA desde el punto de vista informático, tiende a producir resultados mucho mejores. Se ha demostrado que la BMC es mejor en promedio (con significación estadística) que el BMA y el bagging.[29].
El uso de la ley de Bayes para calcular las ponderaciones de los modelos requiere calcular la probabilidad de los datos en función de cada modelo. Normalmente, ninguno de los modelos del conjunto es exactamente la distribución a partir de la cual se generaron los datos de entrenamiento, por lo que todos ellos reciben correctamente un valor cercano a cero para este término. Esto funcionaría bien si el conjunto fuera lo suficientemente grande como para muestrear todo el espacio de modelos, pero rara vez es posible. En consecuencia, cada patrón de los datos de entrenamiento hará que la ponderación del conjunto se desplace hacia el modelo del conjunto que más se aproxime a la distribución de los datos de entrenamiento. En esencia, se reduce a un método innecesariamente complejo para realizar la selección de modelos.
Las posibles ponderaciones de un conjunto pueden visualizarse como si estuvieran situadas en un simplex. En cada vértice del simplex, todo el peso se asigna a un único modelo del conjunto. El BMA converge hacia el vértice más próximo a la distribución de los datos de entrenamiento. En cambio, BMC converge hacia el punto en el que esta distribución se proyecta sobre el simplex. En otras palabras, en lugar de seleccionar el modelo más cercano a la distribución generada, busca la combinación de modelos más cercana a la distribución generada.
Los resultados de la BMA pueden aproximarse a menudo utilizando la validación cruzada para seleccionar el mejor modelo a partir de un conjunto de modelos. Del mismo modo, los resultados del BMC pueden aproximarse utilizando la validación cruzada para seleccionar la mejor combinación de conjuntos a partir de un muestreo aleatorio de posibles ponderaciones.
Bucket of models (Cubo de modelos)
Un "cubo de modelos" es una técnica de conjunto en la que se utiliza un algoritmo de selección de modelos para elegir el mejor modelo para cada problema. Cuando se prueba con un solo problema, un cubo de modelos puede no producir mejores resultados que el mejor modelo del conjunto, pero cuando se evalúa a través de muchos problemas, normalmente producirá resultados mucho mejores, de media, que cualquier modelo del conjunto.
El método más utilizado para la selección de modelos es la validación cruzada (a veces denominada "concurso de horneado"). Se describe con el siguiente pseudocódigo:.
La selección por validación cruzada puede resumirse como: "pruébelos todos con el conjunto de entrenamiento y elija el que mejor funcione".[30].
Gating es una generalización de la selección por validación cruzada. Consiste en entrenar otro modelo de aprendizaje para decidir cuál de los modelos del cubo es el más adecuado para resolver el problema. A menudo, se utiliza un perceptrón para el modelo de gating. Puede utilizarse para elegir el "mejor" modelo o para dar un peso lineal a las predicciones de cada modelo del cubo.
Cuando se utiliza un cubo de modelos con un gran conjunto de problemas, puede ser deseable evitar el entrenamiento de algunos de los modelos que tardan mucho tiempo en entrenarse. El aprendizaje de hitos es un enfoque de metaaprendizaje "Metaaprendizaje (ciencias de la computación)") que trata de resolver este problema. Consiste en entrenar sólo los algoritmos rápidos (pero imprecisos) del cubo y, a continuación, utilizar el rendimiento de estos algoritmos para ayudar a determinar qué algoritmo lento (pero preciso) tiene más probabilidades de obtener mejores resultados.[31].
Stacking (apilamiento)
El apilamiento (a veces denominado generalización apilada) consiste en entrenar un modelo para combinar las predicciones de otros algoritmos de aprendizaje. En primer lugar, se entrenan todos los demás algoritmos utilizando los datos disponibles y, a continuación, se entrena un algoritmo combinador (estimador final) para realizar una predicción final utilizando todas las predicciones de los demás algoritmos (estimadores base) como entradas adicionales o utilizando predicciones de validación cruzada de los estimadores base, lo que puede evitar el sobreajuste.[32] Si se utiliza un algoritmo combinador arbitrario, el apilamiento puede representar teóricamente cualquiera de las técnicas de conjunto descritas en este artículo, aunque, en la práctica, a menudo se utiliza un modelo de regresión logística como combinador.
El apilamiento suele dar mejores resultados que cualquiera de los modelos entrenados por separado.[33] Se ha utilizado con éxito tanto en tareas de aprendizaje supervisado (regresión,[34] clasificación y aprendizaje a distancia)[35] como en aprendizaje no supervisado (estimación de la densidad).[36] También se ha utilizado para estimar la tasa de error del bagging.[3][37] Se ha informado de que supera al promediado bayesiano de modelos.[38] Los dos mejores resultados del concurso de Netflix utilizaron la mezcla, que puede considerarse una forma de apilamiento.[39].
Votación
La votación es otra forma de ensamblaje. Véase, por ejemplo, el algoritmo de mayoría ponderada (aprendizaje automático).