Aprendizaje supervisado
Aprendizaje supervisado (SL) es un paradigma de aprendizaje automático para problemas en los que los datos disponibles consisten en ejemplos etiquetados, lo que significa que cada punto de datos contiene características (covariables) y una etiqueta asociada. El objetivo de los algoritmos de aprendizaje supervisado es aprender una función que asigna vectores de características (entradas) a etiquetas (salida), en función de pares de entrada-salida de ejemplo. Infiere una función de datos de entrenamiento etiquetados que consisten en un conjunto de ejemplos de entrenamiento. En el aprendizaje supervisado, cada ejemplo es un par que consta de un objeto de entrada (normalmente un vector) y un valor de salida deseado (también llamado señal de supervisión). Un algoritmo de aprendizaje supervisado analiza los datos de entrenamiento y produce una función inferida, que puede usarse para mapear nuevos ejemplos. Un escenario óptimo permitirá que el algoritmo determine correctamente las etiquetas de clase para instancias no vistas. Esto requiere que el algoritmo de aprendizaje generalice a partir de los datos de entrenamiento a situaciones no vistas de una manera "razonable" manera (ver sesgo inductivo). Esta calidad estadística de un algoritmo se mide a través del llamado error de generalización.
Pasos a seguir
Para resolver un problema dado de aprendizaje supervisado, se deben realizar los siguientes pasos:
- Determinar el tipo de ejemplos de capacitación. Antes de hacer cualquier otra cosa, el usuario debe decidir qué tipo de datos se utilizará como un conjunto de entrenamiento. En el caso del análisis de la escritura, por ejemplo, esto podría ser un solo carácter manuscrito, una palabra escrita entera, una frase completa de la escritura o tal vez un párrafo completo de la escritura.
- Reúne un set de entrenamiento. El conjunto de capacitación debe ser representativo del uso real de la función. Así, se recoge un conjunto de objetos de entrada y también se recogen los productos correspondientes, ya sea de expertos humanos o de mediciones.
- Determinar la representación de la función aprendida. La precisión de la función aprendida depende en gran medida de cómo se representa el objeto de entrada. Típicamente, el objeto de entrada se transforma en un vector de características, que contiene una serie de características que son descriptivas del objeto. El número de características no debe ser demasiado grande, debido a la maldición de la dimensionalidad; pero debe contener suficiente información para predecir con precisión la salida.
- Determinar la estructura de la función aprendida y el algoritmo de aprendizaje correspondiente. Por ejemplo, el ingeniero puede optar por utilizar máquinas de soporte-vector o árboles de decisión.
- Completa el diseño. Ejecute el algoritmo de aprendizaje en el conjunto de entrenamiento recogido. Algunos algoritmos de aprendizaje supervisados requieren que el usuario determine ciertos parámetros de control. Estos parámetros pueden ajustarse optimizando el rendimiento en un subconjunto (llamado a validación set) del conjunto de entrenamiento, o a través de la validación cruzada.
- Evaluar la exactitud de la función aprendida. Después del ajuste y el aprendizaje del parámetro, el rendimiento de la función resultante debe medirse en un conjunto de pruebas que está separado del conjunto de entrenamiento.
Elección de algoritmo
Hay disponible una amplia gama de algoritmos de aprendizaje supervisado, cada uno con sus puntos fuertes y débiles. No existe un único algoritmo de aprendizaje que funcione mejor en todos los problemas de aprendizaje supervisado (consulte el teorema No hay almuerzo gratis).
Hay cuatro cuestiones principales a considerar en el aprendizaje supervisado:
Compensación de sesgo-varianza
Una primera cuestión es el intercambio entre parciales y diferencia. Imaginemos que hemos disponible varios conjuntos de datos diferentes, pero igualmente buenos. Un algoritmo de aprendizaje es parcial para una entrada particular x{displaystyle x} si, cuando se entrena en cada uno de estos conjuntos de datos, es sistemáticamente incorrecto al predecir la salida correcta para x{displaystyle x}. Un algoritmo de aprendizaje tiene alta variabilidad para una entrada particular x{displaystyle x} si predice diferentes valores de salida cuando se entrena en diferentes conjuntos de capacitación. El error de predicción de un clasificador aprendido está relacionado con la suma del sesgo y la variabilidad del algoritmo de aprendizaje. Por lo general, hay una compensación entre parcialidad y varianza. Un algoritmo de aprendizaje con sesgo bajo debe ser "flexible" para que pueda adaptarse bien a los datos. Pero si el algoritmo de aprendizaje es demasiado flexible, se ajustará a cada conjunto de datos de entrenamiento de forma diferente, y por lo tanto tiene una alta variabilidad. Un aspecto clave de muchos métodos de aprendizaje supervisados es que son capaces de ajustar este intercambio entre sesgo y varianza (ya sea automáticamente o proporcionando un parámetro de sesgo/variancia que el usuario puede ajustar).
Complejidad de la función y cantidad de datos de entrenamiento
El segundo problema es la cantidad de datos de entrenamiento disponibles en relación con la complejidad del "verdadero" función (clasificador o función de regresión). Si la función verdadera es simple, entonces una función "inflexible" algoritmo de aprendizaje con alto sesgo y baja varianza podrá aprenderlo a partir de una pequeña cantidad de datos. Pero si la verdadera función es muy compleja (por ejemplo, porque involucra interacciones complejas entre muchas características de entrada diferentes y se comporta de manera diferente en diferentes partes del espacio de entrada), entonces la función solo podrá aprender con una gran cantidad de datos de entrenamiento emparejados con un "flexible" algoritmo de aprendizaje con bajo sesgo y alta varianza.
Dimensionalidad del espacio de entrada
Un tercer problema es la dimensionalidad del espacio de entrada. Si los vectores de características de entrada tienen grandes dimensiones, aprender la función puede ser difícil, incluso si la función real solo depende de un pequeño número de esas características. Esto se debe a que los muchos "extra" Las dimensiones pueden confundir el algoritmo de aprendizaje y hacer que tenga una gran variación. Por lo tanto, los datos de entrada de grandes dimensiones generalmente requieren ajustar el clasificador para que tenga una varianza baja y un sesgo alto. En la práctica, si el ingeniero puede eliminar manualmente las características irrelevantes de los datos de entrada, probablemente mejorará la precisión de la función aprendida. Además, existen muchos algoritmos de selección de características que buscan identificar las características relevantes y descartar las irrelevantes. Este es un ejemplo de la estrategia más general de reducción de dimensionalidad, que busca mapear los datos de entrada en un espacio de menor dimensión antes de ejecutar el algoritmo de aprendizaje supervisado.
Ruido en los valores de salida
Un cuarto problema es el grado de ruido en los valores de salida deseados (las variables objetivo de supervisión). Si los valores de salida deseados son a menudo incorrectos (debido a errores humanos o errores del sensor), entonces el algoritmo de aprendizaje no debe intentar encontrar una función que coincida exactamente con los ejemplos de entrenamiento. Intentar ajustar los datos con demasiado cuidado conduce a un sobreajuste. Puede sobreajustar incluso cuando no hay errores de medición (ruido estocástico) si la función que intenta aprender es demasiado compleja para su modelo de aprendizaje. En tal situación, la parte de la función de destino que no se puede modelar "corrompe" sus datos de entrenamiento: este fenómeno se ha denominado ruido determinista. Cuando cualquiera de los dos tipos de ruido está presente, es mejor optar por un estimador de mayor sesgo y menor varianza.
En la práctica, existen varios enfoques para aliviar el ruido en los valores de salida, como detenerse antes de tiempo para evitar el sobreajuste, así como detectar y eliminar los ejemplos de entrenamiento ruidosos antes de entrenar el algoritmo de aprendizaje supervisado. Hay varios algoritmos que identifican ejemplos de entrenamiento ruidosos y la eliminación de los ejemplos de entrenamiento ruidosos sospechosos antes del entrenamiento ha disminuido el error de generalización con significancia estadística.
Otros factores a considerar
Otros factores a considerar al elegir y aplicar un algoritmo de aprendizaje incluyen los siguientes:
- Heterogeneidad de los datos. Si los vectores de características incluyen características de muchos tipos diferentes (discreto, discreto ordenado, cuenta, valores continuos), algunos algoritmos son más fáciles de aplicar que otros. Muchos algoritmos, incluyendo máquinas de soporte-vector, regresión lineal, regresión logística, redes neuronales y métodos vecinos más cercanos, requieren que las características de entrada sean numéricas y escaladas a rangos similares (por ejemplo, al intervalo [-1,1]). Los métodos que emplean una función de distancia, como los métodos vecinos más cercanos y las máquinas de soporte-vector con núcleos gausianos, son particularmente sensibles a esto. Una ventaja de los árboles de decisión es que manejan fácilmente datos heterogéneos.
- Redundancia en los datos. Si las características de entrada contienen información redundante (por ejemplo, características altamente correlativas), algunos algoritmos de aprendizaje (por ejemplo, regresión lineal, regresión logística y métodos basados en la distancia) actuarán mal debido a las inestabilidades numéricas. Estos problemas a menudo se pueden resolver imponiendo alguna forma de regularización.
- Presencia de interacciones y no linealidades. Si cada una de las características hace una contribución independiente a la salida, entonces algoritmos basados en funciones lineales (por ejemplo, regresión lineal, regresión logística, máquinas de soporte-vector, bahías ingenuas) y funciones de distancia (por ejemplo, métodos vecinos más cercanos, máquinas de soporte-vector con núcleos gausianos) generalmente funcionan bien. Sin embargo, si hay interacciones complejas entre características, entonces algoritmos como los árboles de decisión y las redes neuronales funcionan mejor, porque están específicamente diseñados para descubrir estas interacciones. También se pueden aplicar métodos lineales, pero el ingeniero debe especificar manualmente las interacciones al utilizarlos.
Al considerar una nueva aplicación, el ingeniero puede comparar varios algoritmos de aprendizaje y determinar experimentalmente cuál funciona mejor en el problema en cuestión (consulte la validación cruzada). Ajustar el rendimiento de un algoritmo de aprendizaje puede llevar mucho tiempo. Dados los recursos fijos, a menudo es mejor dedicar más tiempo a recopilar datos de entrenamiento adicionales y características más informativas que dedicar más tiempo a ajustar los algoritmos de aprendizaje.
Algoritmos
Los algoritmos de aprendizaje más utilizados son:
- Máquinas de soporte-vector
- Regreso lineal
- Regresión logística
- Naive Bayes
- Análisis lineal discriminante
- Árboles de decisión
- algoritmo vecino de K-nearest
- Redes neuronales (Multilayer perceptron)
- Aprendizaje de la similitud
Cómo funcionan los algoritmos de aprendizaje supervisado
Dado un conjunto de N{displaystyle N} ejemplos de capacitación del formulario {}()x1,Sí.1),...,()xN,Sí.N)}{displaystyle {(x_{1},y_{1}),...,(x_{N},;y_{N}}} tales que xi{displaystyle x_{i}} es el vector de la característica i{displaystyle i}- el ejemplo y Sí.i{displaystyle Y... es su etiqueta (es decir, clase), un algoritmo de aprendizaje busca una función g:X→ → Y{displaystyle g:Xto Y}, donde X{displaystyle X} es el espacio de entrada y Y{displaystyle Sí. es el espacio de salida. La función g{displaystyle g} es un elemento de algún espacio de posibles funciones G{displaystyle G., generalmente llamado el hipotesis espacio. A veces es conveniente representar g{displaystyle g} usando una función de puntuación f:X× × Y→ → R{displaystyle f:Xtimes Yto mathbb {R} tales que g{displaystyle g} se define como devolver el Sí.{displaystyle y} valor que da la puntuación más alta: g()x)=arg maxSí.f()x,Sí.){displaystyle g(x)={underset {y}{argmax };f(x,y)}. Vamos F{displaystyle F} denota el espacio de funciones de puntuación.
Aunque G{displaystyle G. y F{displaystyle F} puede ser cualquier espacio de funciones, muchos algoritmos de aprendizaje son modelos probabilísticos donde g{displaystyle g} toma la forma de un modelo de probabilidad condicional g()x)=P()Sí.Silenciox){displaystyle g(x)=P(y sometidax)}, o f{displaystyle f} toma la forma de un modelo de probabilidad conjunta f()x,Sí.)=P()x,Sí.){displaystyle f(x,y)=P(x,y)}. Por ejemplo, las bahías ingenuas y el análisis discriminante lineal son modelos de probabilidad conjunta, mientras que la regresión logística es un modelo de probabilidad condicional.
Hay dos enfoques básicos para elegir f{displaystyle f} o g{displaystyle g}: minimización del riesgo empírico y minimización del riesgo estructural. La minimización del riesgo empírico busca la función que mejor se ajuste a los datos de capacitación. La minimización del riesgo estructural incluye una función penal que controla la compensación de sesgo/variancia.
En ambos casos, se supone que el conjunto de entrenamiento consiste en una muestra de parejas independientes y distribuidas idénticamente, ()xi,Sí.i){displaystyle (x_{i},;y_{i}}. Para medir qué tan bien se ajusta una función a los datos de entrenamiento, una función de pérdida L:Y× × Y→ → R≥ ≥ 0{displaystyle L:Ytimes Yto mathbb {R} se define. Ejemplo de capacitación ()xi,Sí.i){displaystyle (x_{i},;y_{i}}, la pérdida de predicción del valor Sí.^ ^ {displaystyle {hat {y}}} es L()Sí.i,Sí.^ ^ ){displaystyle L(y_{i},{hat {y}}}.
El riesgo R()g){displaystyle R(g)} de la función g{displaystyle g} se define como la pérdida prevista de g{displaystyle g}. Esto se puede estimar en los datos de capacitación
- Remp()g)=1N.. iL()Sí.i,g()xi)){displaystyle R_{emp}(g)={frac {1}{N}sum} ¿Qué?.
Minimización empírica del riesgo
En la minimización del riesgo empírico, el algoritmo de aprendizaje supervisado busca la función g{displaystyle g} que minimiza R()g){displaystyle R(g)}. Por lo tanto, un algoritmo de aprendizaje supervisado se puede construir aplicando un algoritmo de optimización para encontrar g{displaystyle g}.
Cuando g{displaystyle g} es una distribución de probabilidad condicional P()Sí.Silenciox){displaystyle P(y WordPressx)} y la función de pérdida es la probabilidad de registro negativa: L()Sí.,Sí.^ ^ )=− − log P()Sí.Silenciox){displaystyle L(y,{hat {y})=-log P(y sometidax)}, entonces la minimización del riesgo empírico es equivalente a la estimación de probabilidad máxima.
Cuando G{displaystyle G. contiene muchas funciones candidatas o el conjunto de capacitación no es suficientemente grande, la minimización empírica del riesgo conduce a una alta varianza y una baja generalización. El algoritmo de aprendizaje es capaz de memorizar los ejemplos de entrenamiento sin generalizar bien. Esto se llama overfitting.
Minimización de riesgos estructurales
La minimización del riesgo estructural busca evitar el sobreajuste mediante la incorporación de una penalización de regularización en la optimización. La sanción de regularización puede verse como la implementación de una forma de la navaja de Occam que prefiere las funciones más simples a las más complejas.
Se han aplicado diversas penas que corresponden a diferentes definiciones de complejidad. Por ejemplo, considere el caso en que la función g{displaystyle g} es una función lineal de la forma
- g()x)=.. j=1dβ β jxj{displaystyle g(x)=sum _{j=1}{d}beta ¿Qué?.
Una pena de regularización popular es .. jβ β j2{displaystyle sum _{j}beta _{j}^{2}, que es la norma euroclidiana cuadrada de los pesos, también conocida como L2{displaystyle L_{2} norma. Otras normas son: L1{displaystyle L_{1} norma, .. jSilencioβ β jSilencio{displaystyle sum _{j}Sobrevivirbeta _{j}, y el L0{displaystyle L_{0} "norm", que es el número de no cero β β j{displaystyle beta _{j}}s. La pena será denotada por C()g){displaystyle C(g)}.
El problema de optimización de aprendizaje supervisado es encontrar la función g{displaystyle g} que minimiza
- J()g)=Remp()g)+λ λ C()g).{displaystyle J(g)=R_{emp}(g)+lambda C(g}
El parámetro λ λ {displaystyle lambda } controla el intercambio de parcialidad. Cuando λ λ =0{displaystyle lambda =0}, esto da minimización del riesgo empírico con sesgo bajo y alta variabilidad. Cuando λ λ {displaystyle lambda } es grande, el algoritmo de aprendizaje tendrá alta parcialidad y baja variabilidad. El valor de λ λ {displaystyle lambda } puede ser elegido empíricamente mediante validación cruzada.
La pena de complejidad tiene una interpretación bayesiana como la probabilidad de tronco negativo anterior g{displaystyle g}, − − log P()g){displaystyle -log P(g)}, en cuyo caso J()g){displaystyle J(g)} es la probabilidad posterior de g{displaystyle g}.
Entrenamiento generativo
Los métodos de capacitación descritos anteriormente son los siguientes: capacitación discriminatoria métodos, porque buscan encontrar una función g{displaystyle g} que discrimina bien entre los diferentes valores de salida (ver modelo discriminativo). Para el caso especial donde f()x,Sí.)=P()x,Sí.){displaystyle f(x,y)=P(x,y)} es una distribución de probabilidad conjunta y la función de pérdida es la probabilidad de registro negativa − − .. ilog P()xi,Sí.i),{displaystyle - ¿Qué? un algoritmo de minimización de riesgo se dice para realizar formación generativa, porque f{displaystyle f} se puede considerar como un modelo generativo que explica cómo se generaron los datos. Los algoritmos de entrenamiento generativos son a menudo más simples y más eficientes computacionalmente que los algoritmos de entrenamiento discriminativos. En algunos casos, la solución se puede calcular en forma cerrada como en bahías ingenuas y análisis discriminante lineal.
Generalizaciones
Hay varias formas en las que se puede generalizar el problema de aprendizaje supervisado estándar:
- Aprendizaje semisupervisado: En esta configuración, los valores de salida deseados sólo se proporcionan para un subconjunto de los datos de entrenamiento. Los datos restantes no se etiquetan.
- Supervisión débil: En este entorno se utilizan fuentes ruidosas, limitadas o imprecisas para proporcionar señal de supervisión para etiquetar datos de capacitación.
- Aprendizaje activo: En lugar de suponer que todos los ejemplos de entrenamiento se dan al principio, algoritmos de aprendizaje activos recopilan interactivamente nuevos ejemplos, típicamente haciendo consultas a un usuario humano. A menudo, las consultas se basan en datos no etiquetados, que es un escenario que combina el aprendizaje semisupervisado con el aprendizaje activo.
- Predicción estructurada: Cuando el valor de salida deseado es un objeto complejo, como un árbol de pares o un gráfico etiquetado, se deben ampliar los métodos estándar.
- Aprender al rango: Cuando la entrada es un conjunto de objetos y la salida deseada es un ranking de esos objetos, entonces de nuevo los métodos estándar deben ser extendidos.
Enfoques y algoritmos
- Aprendizaje analítico
- Red neuronal artificial
- Backpropagation
- Boosting (meta-algorithm)
- Estadísticas bayesianas
- Razonamiento basado en casos
- Aprendizaje de árboles de decisión
- Programación lógica inductiva
- regresión del proceso gaussiano
- Programación genética
- Método del grupo de gestión de datos
- Estimadores de kernel
- Aprender automata
- Sistemas de clasificación de aprendizaje
- Aprendizaje cuantificación vectorial
- Longitud mínima del mensaje (árboles de decisión, gráficos de decisión, etc.)
- Multilinear subspace learning
- Clasificador de Naive Bayes
- Clasificador máximo de entropía
- Campo aleatorio condicional
- algoritmo vecino más cercano
- Probablemente aprendizaje correcto (PAC)
- Ripple down rules, a knowledge acquisition methodology
- algoritmos de aprendizaje de máquina simbólica
- algoritmos de aprendizaje de máquina sumergible
- Soporte de máquinas vectoriales
- Máquinas de complejidad mínima (MCM)
- Bosques aleatorios
- Conjuntos de clasificadores
- Clasificación oral
- Preprocesamiento de datos
- Manejo de conjuntos de datos desequilibrados
- Aprendizaje relacional estadístico
- Proaftn, un algoritmo de clasificación multicriterios
Aplicaciones
- Bioinformática
- Cheminformatics
- Estructura cuantitativa - relación de actividad
- Marketing de bases de datos
- Reconocimiento de escritura
- Recuperación de información
- Aprender al rango
- Extracción de información
- Reconocimiento de objetos en la visión informática
- Reconocimiento de caracteres ópticos
- Detección de gases
- Reconocimiento del patrón
- Reconocimiento del discurso
- El aprendizaje supervisado es un caso especial de causalidad descendente en los sistemas biológicos
- Clasificación de Landform utilizando imágenes satelitales
- Clasificación de los gastos en los procesos de adquisición
Cuestiones generales
- Teoría del aprendizaje computacional
- Sesgo inductivo
- Superficie (aprendizaje automático)
- Probabilidades de afiliación de clase
- Aprendizaje no supervisado
- Espacios de versión
Contenido relacionado
Red digital de servicios integrados de banda ancha
Ruta óctuple (análisis de políticas)
Inglés en la Commonwealth of Nations