Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.
El objetivo del aprendizaje automático supervisado es construir un modelo que haga predicciones basadas en evidencia en presencia de incertidumbre. A medida que los algoritmos adaptativos identifican patrones en los datos, un ordenador "aprende" de las observaciones. Cuando se expone a más observaciones, el equipo mejora su rendimiento predictivo.
Específicamente, un algoritmo de aprendizaje supervisado toma un conjunto conocido de datos de entrada y respuestas conocidas a los datos (salida) y un modelo para generar predicciones razonables para la respuesta a nuevos datos.Trenes
Por ejemplo, supongamos que desea predecir si alguien tendrá un ataque al corazón dentro de un año. Tiene un conjunto de datos sobre pacientes anteriores, incluyendo edad, peso, altura, presión arterial, etc. Usted sabe si los pacientes anteriores tuvieron ataques cardíacos dentro de un año de sus mediciones. Por lo tanto, el problema es combinar todos los datos existentes en un modelo que pueda predecir si una nueva persona tendrá un ataque al corazón dentro de un año.
Puede pensar en todo el conjunto de datos de entrada como una matriz heterogénea. Las filas de la matriz se denominan , , o , y cada una contiene un conjunto de medidas para un sujeto (pacientes en el ejemplo).ObservacionesEjemplosInstancias Las columnas de la matriz se denominan , , o , y cada una de ellas son variables que representan una medida tomada en cada tema (edad, peso, altura, etc. en el ejemplo).PredictoresAtributosFunciones Puede pensar en los datos de respuesta como un vector de columna donde cada fila contiene la salida de la observación correspondiente en los datos de entrada (si el paciente tuvo un ataque cardíaco). A o a un modelo de aprendizaje supervisado, elija un algoritmo adecuado y, a continuación, pase los datos de entrada y respuesta a él.AjusteTren
El aprendizaje supervisado se divide en dos grandes categorías: clasificación y regresión.
En , el objetivo es asignar una clase (o ) de un conjunto finito de clases a una observación.ClasificaciónEtiqueta Es decir, las respuestas son variables categóricas. Las aplicaciones incluyen filtros de spam, sistemas de recomendación de publicidad y reconocimiento de imágenes y voz. Predecir si un paciente tendrá un ataque al corazón dentro de un año es un problema de clasificación, y las clases posibles son y .true
false
Los algoritmos de clasificación suelen aplicarse a los valores de respuesta nominal. Sin embargo, algunos algoritmos pueden acomodar clases ordinales (consulte ).fitcecoc
En , el objetivo es predecir una medición continua para una observación.Regresión Es decir, las variables de respuestas son números reales. Las aplicaciones incluyen la previsión de los precios de las existencias, el consumo de energía o la incidencia de enfermedades.
las funcionalidades de aprendizaje supervisado comprenden un marco de objetos forrado por secuencias.Statistics and Machine Learning Toolbox™ Puede entrenar de forma eficaz una variedad de algoritmos, combinar modelos en un conjunto, evaluar el rendimiento de los modelos, validar y predecir respuestas para nuevos datos.
Aunque hay muchos algoritmos para el aprendizaje supervisado, la mayoría utiliza el mismo flujo de trabajo básico para obtener un modelo de predictor.Statistics and Machine Learning Toolbox (La instrucción detallada sobre los pasos para el aprendizaje del conjunto está en .)Framework for Ensemble Learning Los pasos para el aprendizaje supervisado son:
Todos los métodos de aprendizaje supervisados comienzan con una matriz de datos de entrada, que normalmente se llama aquí.X
Cada fila de representa una observación.X
Cada columna de representa una variable o predictor.X
Representar las entradas que faltan con valores en . Los algoritmos de aprendizaje supervisado pueden controlar los valores, ya sea ignorándolos o ignorando cualquier fila con un valor.NaN
X
Statistics and Machine Learning ToolboxNaN
NaN
Puede utilizar varios tipos de datos para datos de respuesta.Y
Cada elemento de representa la respuesta a la fila correspondiente de .Y
X
Las observaciones con datos que faltan se omiten.Y
Para la regresión, debe ser un vector numérico con el mismo número de elementos que el número de filas de .Y
X
Para la clasificación, puede ser cualquiera de estos tipos de datos.Y
Esta tabla también contiene el método de incluir entradas que faltan.
Tipo de datos | Entrada perdida |
---|---|
Vector numérico | NaN |
Vector categórico | <undefined> |
Matriz de caracteres | Fila de espacios |
Matriz de cadenas | O<missing> "" |
Matriz de celdas de vectores de caracteres | '' |
Vector lógico | (No se puede representar) |
Hay compensaciones entre varias características de algoritmos, tales como:
Velocidad de entrenamiento
Uso de memoria
Precisión predictiva de los nuevos datos
Transparencia o interpretabilidad, lo que significa la facilidad con la que puedes entender las razones por las que un algoritmo hace sus predicciones
Los detalles de los algoritmos aparecen en .Características de los algoritmos de clasificación Más detalles sobre los algoritmos de conjunto está en .Choose an Applicable Ensemble Aggregation Method
La función de ajuste que utilice dependerá del algoritmo que elija.
Algoritmo | Función de ajuste |
---|---|
Arboles de clasificación | fitctree |
Los árboles de regresión | fitrtree |
Análisis discriminatorio (clasificación) | fitcdiscr |
-Vecinos más cercanos (clasificación)k | fitcknn |
Bayes ingenuos (clasificación) | fitcnb |
Máquinas vectoriales de soporte (SVM) para la clasificación | fitcsvm |
SVM para la regresión | fitrsvm |
Modelos multiclase para SVM u otros clasificadores | fitcecoc |
Conjuntos de Clasificación | fitcensemble |
Ensambles de regresión | fitrensemble |
Clasificación o conjuntos de árboles de regresión (por ejemplo, bosques aleatorios) en paralelo[1] | TreeBagger |
Para obtener una comparación de estos algoritmos, consulte .Características de los algoritmos de clasificación
Los tres métodos principales para examinar la precisión del modelo ajustado resultante son:
Examine el error de resustitución. Para ver ejemplos, consulte:
Examine el error de validación cruzada. Para ver ejemplos, consulte:
Examine el error fuera de la bolsa para los árboles de decisión embolsados. Para ver ejemplos, consulte:
Después de validar el modelo, es posible que desee cambiarlo para una mayor precisión, una mejor velocidad o para usar menos memoria.
Cambie los parámetros de ajuste para intentar obtener un modelo más preciso. Para ver ejemplos, consulte:
Cambie los parámetros de ajuste para intentar obtener un modelo más pequeño. Esto a veces da un modelo con más precisión. Para ver ejemplos, consulte:
Prueba con otro algoritmo. Para conocer las opciones aplicables, consulte:
Cuando esté satisfecho con un modelo de algunos tipos, puede recortarlo utilizando la función adecuada (compact
compact
para árboles de clasificación, compact
para árboles de regresión, compact
para el análisis discriminante, compact
para los ingenuos Bayes, compact
para SVM, compact
para modelos ECOC, compact
para conjuntos de clasificación, y compact
para conjuntos de regresión). elimina los datos de entrenamiento y otras propiedades no necesarias para la predicción, por ejemplo, la poda de información para los árboles de decisión, del modelo para reducir el consumo de memoria.compact
Dado que los modelos de clasificación NN requieren todos los datos de entrenamiento para predecir etiquetas, no puede reducir el tamaño de un modelo.kClassificationKNN
Para predecir la clasificación o la respuesta de regresión para la mayoría de los modelos ajustados, utilice el método:predict
Ypredicted = predict(obj,Xnew)
es el modelo ajustado o el modelo compacto ajustado.obj
son los nuevos datos de entrada.Xnew
es la respuesta pronosticada, ya sea clasificación o regresión.Ypredicted
Esta tabla muestra las características típicas de los diversos algoritmos de aprendizaje supervisado. Las características en cualquier caso particular pueden variar de las características enumeradas. Utilice la tabla como guía para su elección inicial de algoritmos. Decida la compensación que desea en velocidad, uso de memoria, flexibilidad e interpretabilidad.
Sugerencia
Pruebe primero un árbol de decisión o un discriminador, ya que estos clasificadores son rápidos y fáciles de interpretar. Si los modelos no son lo suficientemente precisos para predecir la respuesta, pruebe con otros clasificadores con mayor flexibilidad.
Para controlar la flexibilidad, consulte los detalles de cada tipo de clasificador. Para evitar el sobreajuste, busque un modelo de menor flexibilidad que proporcione suficiente precisión.
Clasificador | Soporte multiclase | Soporte de Predictor EscategórSoporte de Predictor Escategór | Velocidad de predicción | Uso de memoria | Interpretabilidad |
---|---|---|---|---|---|
Los árboles de decisión — fitctree | Sí | Sí | rápido | Pequeño | Fácil |
Clasificación de análisis discriminatorio — fitcdiscr Análisis discriminatorio | Sí | No | rápido | Pequeño para lineal, grande para cuadrático | Fácil |
Máquinas vectoriales de soporte para la clasificación binaria — fitcsvm Svm | No. Combine varios clasificadores SVM binarios mediante .fitcecoc | Sí | Medio para lineal. Lento para los demás. | Medio para lineal. Todos los demás: medio para multiclase, grande para binario. | Fácil para SVM lineal. Difícil para todos los demás tipos de kernel. |
Naive Bayes Classification — fitcnb Bayes ingenuos | Sí | Sí | Medio para distribuciones sencillas. Lento para distribuciones de kernel o datos de alta dimensión | Pequeño para distribuciones simples. Medio para distribuciones de kernel o datos de alta dimensión | Fácil |
Clasificación con los vecinos más cercanos — fitcknn Vecino más cercano | Sí | Sí | Lento para cúbico. Medio para otros. | Medio | Duro |
— yConjuntosfitcensemble fitrensemble | Sí | Sí | Rápido a medio dependiendo de la elección del algoritmo | De bajo a alto dependiendo de la elección del algoritmo. | Duro |
Los resultados de esta tabla se basan en un análisis de muchos conjuntos de datos. Los conjuntos de datos del estudio tienen hasta 7000 observaciones, 80 predictores y 50 clases. Esta lista define los términos de la tabla.
Velocidad:
Rápido — 0,01 segundos
Medio — 1 segundo
Lento — 100 segundos
Memoria
Pequeño — 1 MB
Medio — 4MB
Grande — 100MB
Nota
La tabla proporciona una guía general. Sus resultados dependen de sus datos y de la velocidad de su máquina.
En esta tabla se describe la compatibilidad de tipo de datos de los predictores para cada clasificador.
Clasificador | Todos los predictores numéricos | Todos los predictores categóricos | Algunos categóricos, algunos numéricos |
---|---|---|---|
Los árboles de decisión | Sí | Sí | Sí |
Análisis discriminatorio | Sí | No | No |
Svm | Sí | Sí | Sí |
Bayes ingenuos | Sí | Sí | Sí |
Vecino más cercano | Distancia euclidiana solamente | Distancia hamming solamente | No |
Conjuntos | Sí | Sí, excepto conjuntos subespaciales de clasificadores de análisis discriminantes | Sí, excepto conjuntos subespaciales |
[1] Breiman, L. Random Forests. Machine Learning 45, 2001, pp. 5–32.