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.

Flujo de trabajo de aprendizaje supervisado y algoritmos

¿Qué es el aprendizaje supervisado?

El objetivo del aprendizaje automático supervisado es construir un modelo que haga predicciones basadas en evidencias en presencia de incertidumbre. Como los algoritmos adaptables identifican patrones en los datos, un equipo "aprende" de las observaciones. Cuando se expone a más observaciones, el equipo mejora su rendimiento predictivo.

En concreto, 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 cardíaco en el plazo de un año. Usted tiene un conjunto de datos sobre pacientes anteriores, incluyendo la 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 puede 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 mediciones para un sujeto (pacientes en el ejemplo).ObservacionesEjemplosInstancias Las columnas de la matriz se denominan, o, y cada una de ellas representa 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). Para o 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 categorías generales: 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 imagen y voz. Predecir si un paciente tendrá un ataque cardíaco dentro de un año es un problema de clasificación, y las posibles clases son y.truefalse Los algoritmos de clasificación suelen aplicarse a valores de respuesta nominal. Sin embargo, algunos algoritmos pueden acomodar clases ordinales (ver).fitcecoc

  • En el, 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 previsión de precios de acciones, consumo de energía o incidencia de enfermedades.

las funcionalidades de aprendizaje supervisado comprenden un marco de objeto con líneas de flujo.Statistics and Machine Learning Toolbox™ Puede entrenar eficientemente una variedad de algoritmos, combinar modelos en un conjunto, evaluar las actuaciones del modelo, validar de forma cruzada y predecir las respuestas para los nuevos datos.

Pasos en el aprendizaje supervisado

Aunque hay muchos algoritmos para el aprendizaje supervisado, la mayoría usa el mismo flujo de trabajo básico para obtener un modelo de predictor.Statistics and Machine Learning Toolbox (Instrucciones detalladas sobre los pasos para el aprendizaje conjunto está en.)Framework for Ensemble Learning Los pasos para el aprendizaje supervisado son:

Preparar datos

Todos los métodos de aprendizaje supervisado empiezan con una matriz de datos de entrada, normalmente llamada aquí.X Cada fila de representa una observación.X Cada columna de representa una variable, o predictor.X Represente las entradas faltantes con valores en. los algoritmos de aprendizaje supervisados pueden controlar los valores, ya sea ignorándolos o ignorando cualquier fila con un valor.NaNXStatistics and Machine Learning ToolboxNaNNaN

Puede utilizar varios tipos de datos para los datos de respuesta.Y Cada elemento en representa la respuesta a la fila correspondiente de.YX Se omiten las observaciones con datos faltantes.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.YX

  • Para la clasificación, puede ser cualquiera de estos tipos de datos.Y Esta tabla también contiene el método de incluir entradas faltantes.

    Tipo de datosFalta de entrada
    Vector numéricoNaN
    Vector categórico<undefined>
    La matriz de caracteresFila de espacios
    Matriz de cadenasO<missing>""
    Matriz de vectores de caracteres''
    Vector lógico(No puede representar)

Elija un algoritmo

Hay compensaciones entre varias características de algoritmos, tales como:

  • Velocidad de entrenamiento

  • El uso de memoria

  • Precisión predictiva en nuevos datos

  • Transparencia o interpretabilidad, lo que significa lo fácil que puede 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.Elija un método de agregación de conjunto aplicable

Ajuste un modelo

La función de ajuste que utilice dependerá del algoritmo que elija.

AlgoritmoFunción de ajuste
Los árboles de clasificaciónfitctree
Los árboles de regresiónfitrtree
Análisis discriminante (clasificación)fitcdiscr
-Vecinos más cercanos (clasificación)kfitcknn
Bayes Naive (clasificación)fitcnb
Máquinas de vectores de soporte (SVM) para la clasificaciónfitcsvm
SVM para la regresiónfitrsvm
Los modelos multiclase para SVM u otros clasificadoresfitcecoc
Conjuntos de clasificaciónfitcensemble
Conjuntos de regresiónfitrensemble
Clasificación o conjuntos de árbol de regresión (p. ej., bosques aleatorios) en paralelo[1]TreeBagger

Para obtener una comparación de estos algoritmos, consulte.Características de los algoritmos de clasificación

Elija un método de validación

Los tres métodos principales para examinar la precisión del modelo ajustado resultante son:

Examine ajuste y actualización hasta que esté satisfecho

Después de validar el modelo, es posible que desee cambiarlo para obtener una mejor precisión, mejorar la velocidad o utilizar menos memoria.

Cuando esté satisfecho con un modelo de algunos tipos, puede recortarlo utilizando la función adecuada (compactcompact para los árboles de clasificación, compact para árboles de regresión, compact para el análisis discriminante, compact para la ingenua Bayes, compact para SVM, compact para los modelos ECOC, compact para los conjuntos de clasificación y compact para conjuntos de regresión). elimina los datos de entrenamiento y otras propiedades no requeridas para la predicción, por ejemplo, la información de poda para á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

Utilice modelo ajustado para predicciones

Para predecir la clasificación o la respuesta de regresión para la mayoría de los modelos ajustados, utilice el método:Predecir

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 la clasificación o la regresión.Ypredicted

Características de los algoritmos de clasificación

Esta tabla muestra las características típicas de los diversos algoritmos de aprendizaje supervisado. Las características en cualquier caso en particular pueden variar de las enumeradas. Utilice la tabla como guía para la elección inicial de los algoritmos. Decida la contrapartida que desea en cuanto a velocidad, uso de memoria, flexibilidad e interpretabilidad.

Sugerencia

Pruebe primero un árbol de decisión o discriminante, 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 una precisión suficiente.

ClasificadorSoporte multiclaseSoporte de predictor categóricoVelocidad de predicciónUso de memoriaInterpretación
Árboles de decisiónfitctreerápidoPequeñoFácil
El análisis discriminantefitcdiscrNorápidoPequeño para lineal, grande para cuadráticaFácil
SvmfitcsvmNo. Combine varios clasificadores de SVM binarios usando.
fitcecoc
Medio para lineal. Despacio para los demás.
Medio para lineal. Todos los demás: mediano para multiclase, grande para binario.
Fácil para SVM lineal. Difícil para todos los demás tipos de kernel.
Naive BayesfitcnbMedio para distribuciones simples. Lento para distribuciones de kernel o datos de alta dimensionalidad
Pequeño para distribuciones simples. Medio para distribuciones de kernel o datos de alta dimensionalidad
Fácil
Vecino más cercanofitcknnLento para cúbico. Medio para otros.
MedioDuro
— yConjuntosfitcensemblefitrensembleRápido a medio dependiendo de la elección del algoritmoBajo 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 en el 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

  • Mediano — 1 segundo

  • Lento: 100 segundos

Memoria

  • Pequeño — 1MB

  • Mediano — 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.

Soporte de predictor categórico

En esta tabla se describe el soporte de tipo de datos de los predictores para cada clasificador.

ClasificadorTodos los predictores numéricosTodos los predictores categóricosAlgunos categóricos, algunos numéricos
Árboles de decisión
Análisis discriminanteNoNo
Svm
Naive Bayes
Vecino más cercanoDistancia euclidiana sóloLa distancia de Hamming sóloNo
ConjuntosSí, excepto los conjuntos subespaciales de clasificadores de análisis discriminantesSí, excepto los conjuntos subespaciales

Referencias

[1] Breiman, L. Random Forests. Machine Learning 45, 2001, pp. 5–32.