Clasificación de Aprendizaje automático supervisado

El aprendizaje automático es la ciencia (y el arte) de las computadoras de programación para que puedan aprender de los datos.

Machine Learning es el campo de estudio que le da a las computadoras la capacidad de aprender sin estar explícitamente programadas. Arthur Samuel, 1959

Una mejor definición:

Se dice que un programa de computadora aprende de la experiencia E con respecto a alguna tarea T y alguna medida de rendimiento P, si su desempeño en T, medido por P, mejora con la experiencia E. Tom Mitchell, 199

Por ejemplo, su filtro de correo no deseado es un programa de Aprendizaje automático que puede aprender a marcar ejemplos de correos electrónicos no deseados (p. Ej., Marcados por los usuarios) y ejemplos de programas regulares (no spam, también llamados ” jamón “) correos electrónicos.

Los ejemplos que el sistema usa para aprender se llaman el conjunto de entrenamiento. En este caso, la tarea T es marcar el correo no deseado para nuevos correos electrónicos, la experiencia E es la información de capacitación y la medida de rendimiento P debe definirse; por ejemplo, puede utilizar la proporción de correos electrónicos clasificados correctamente. Esta medida de rendimiento en particular se llama precisión y con frecuencia se usa en tareas de clasificación, ya que es un enfoque de aprendizaje supervisado y se estudiará en las secciones posteriores del post.

Aprendizaje supervisado

En Aprendizaje supervisado, los algoritmos aprenden de la etiqueta datos. Después de comprender los datos, el algoritmo determina qué etiqueta debe asignarse a los nuevos datos según el patrón y asociando los patrones a los nuevos datos sin etiquetar.

El aprendizaje supervisado se puede dividir en 2 categorías, es decir, Clasificación y Regresión

La clasificación predice una categoría a la que pertenecen los datos.

por ejemplo: Detección de correo no deseado, predicción de abandono, análisis de sentimiento, detección de raza de perro.

La regresión predice un valor numérico basado en datos observados previamente.

por ejemplo: predicción del precio de la vivienda, precio Predicción, Predicción de altura-peso.

Clasificación

La ​​clasificación es una técnica para determinar la clase a la que pertenece el dependiente según una o más variables independientes.

La clasificación se utiliza para predecir respuestas discretas. 

1. Regresión logística

La ​​regresión logística es una especie de regresión lineal, pero se usa cuando la variable dependiente no es un número, sino otra cosa (como un Sí / No respuesta). Se llama Regresión, pero realiza la clasificación según la regresión en la que clasifica la variable dependiente en cualquiera de las clases.

Regresión logística

La regresión logística se utiliza para la predicción de la producción que es binaria, como se indicó anteriormente. Por ejemplo, si una compañía de tarjetas de crédito va a construir un modelo para decidir si emitir una tarjeta de crédito a un cliente o no, modelará si el cliente va a “Predeterminado” o “No predeterminado” en esta tarjeta de crédito

Regresión lineal

En primer lugar, la regresión lineal se realiza en la relación entre las variables para obtener el modelo. Se supone que el umbral para la línea de clasificación es 0.5

Función sigmoidea logística

La función logística se aplica a la regresión para obtener las probabilidades de que pertenezca a cualquiera de las clases.

Probabilidades de registro

Probabilidades

Proporciona el registro de la probabilidad de que ocurra el evento para registrar la probabilidad de que no ocurra. Al final, clasifica la variable según la probabilidad más alta de cualquiera de las clases.

2. K-NN más cercanos (K-NN)

El algoritmo K-NN es uno de los algoritmos de clasificación más simples y se usa para identifique los puntos de datos que están separados en varias clases para predecir la clasificación de un nuevo punto de muestra. K-NN es un no paramétrico, algoritmo de aprendizaje perezoso. Clasifica los casos nuevos en función de una medida de similitud (por ejemplo, funciones de distancia).

  • K-NN Nearest Neighbors (K-NN)
  • K-NN Lazy Learning
  • Consejos para K-NN
  • Para K en K -NN

KNN funciona bien con un pequeño número de variables de entrada (p), pero tiene problemas cuando el número de entradas es muy grande.

3.Support Vector Machine (SVM)

El Vector de soporte se usa para ambos Regresión y clasificación. Se basa en el concepto de planos de decisión que definen los límites de decisión. Un plano de decisión (hiperplano) es uno que separa entre un conjunto de objetos que tienen diferentes membresías de clase.

Vectores de soporte

Realiza una clasificación al encontrar el hiperplano que maximiza el margen entre las dos clases con la ayuda de vectores de soporte.

El aprendizaje del hiperplano en SVM se realiza transformando el problema usando un álgebra lineal, es decir, utilizando el núcleo anterior es un núcleo lineal que tiene una separabilidad lineal entre cada variable.

Para datos de dimensiones superiores, otros núcleos se utilizan como puntos No se puede clasificar fácilmente. Se especifican en la siguiente sección.

Kernel SVM

Kernel SVM toma una función de kernel en el algoritmo SVM y se transforma en la forma requerida que mapea los datos en una dimensión superior que se puede separar.

Los tipos de funciones del kernel son:
Tipos
  1. El SVM lineal es el que analizamos anteriormente.
  2. En el kernel polinomial, se debe especificar el grado del polinomio. Permite líneas curvas en el espacio de entrada.
  3. En el Kernel RBF, se utiliza para variables no linealmente separables. Para la distancia métrica cuadrada se utiliza la distancia euclidiana. El uso de un valor típico del parámetro puede llevar a un ajuste excesivo de nuestros datos. Se usa de forma predeterminada en sklearn
  4. . El núcleo sigmoideo, similar a la regresión logística, se utiliza para la clasificación binaria
Truco del núcleo

El núcleo del núcleo usa la función del núcleo para transformar los datos en una dimensión superior espacio de características para hacer posible la separación lineal para la clasificación.

Núcleo de función de base radial (RBF)

La ​​región de decisión de SVM del kernel de RBF es en realidad también una región de decisión lineal. Lo que realmente hace el RBF kernel SVM es crear combinaciones no lineales de sus características para elevar sus muestras a un espacio de características de mayor dimensión donde puede usar un límite de decisión lineal para separar sus clases.

SVC RBF Kernel

, la regla empírica es: usar SVM lineales para problemas lineales, y núcleos no lineales como el núcleo de la Función de Base Radial para problemas no lineales.

4.Naive Bayes

El clasificador Naive Bayes se basa en el teorema de Bayes con los supuestos de independencia entre los predictores, es decir, asume que la presencia de una entidad en una clase no está relacionada con ninguna otra característica. Incluso si estas características dependen unas de otras o de la existencia de las otras características, todas estas propiedades son independientes. Por lo tanto, el nombre Naive Bayes.

Naive Bayes

Basado en Naive Bayes, Gaussian Naive Bayes se usa para la clasificación según la distribución binomial (normal) de datos.

  • (clase | datos ) P es la probabilidad posterior de clase ( objetivo ) dado predictor ( atributo ). La probabilidad de que un punto de datos tenga cualquier clase, dado el punto de datos. Este es el valor que estamos buscando para calcular.
  • (clase) P es la probabilidad previa de clase .
  • (data | clase ) P es la probabilidad que es la probabilidad de predictor dada clase .
  • (datos) P es la probabilidad previa de predictor o probabilidad marginal .
NB Ejemplo de clasificación

Pasos

1.Calcular probabilidad previa

(clase) P = Número de puntos de datos en la clase / Nº total. de observaciones

(amarillo) P = 10/17

(verde) P = 7/17

2.Calcular Probabilidad Marginal

P (datos) = Número de puntos de datos similares a observación / Total no .de observaciones

P (?) = 4/17

El valor está presente al verificar ambas probabilidades.

3.Calcular Probabilidad

P (datos / clase) = Número de observaciones similares al clase / Total no. de puntos en la clase.

P (? / amarillo) = 1/7

P (? / verde) = 3/10

4. Probabilidad posterior para cada clase

5.Clasificación

Cuanto mayor es la probabilidad, la clase pertenece a esa categoría ya que por encima del 75% de probabilidad el punto pertenece a la clase verde.

Multinomial, Bernoulli Naive Bayes son los otros modelos utilizados para calcular las probabilidades. Por lo tanto, un modelo Naive Bayes es fácil de construir, sin una estimación de parámetros iterativos complicados, lo que lo hace particularmente útil para conjuntos de datos muy grandes.

5. Clasificación del árbol de decisión

El árbol de decisión construye modelos de clasificación o regresión en forma de estructura de árbol. Desglosa un conjunto de datos en subconjuntos cada vez más pequeños, mientras que al mismo tiempo se desarrolla incrementalmente un árbol de decisión asociado. El resultado final es un árbol con nodos de decisión y nodos de hoja . Sigue la estructura del algoritmo Iterative Dichotomiser 3 (ID3) para determinar la división.

Clasificación del árbol de decisión

El árbol de decisión usa Entropy y Information Gain para construir un árbol de decisión. 19659027] Entropía

La ​​entropía es el grado o grado de incertidumbre en la aleatoriedad de los elementos o, en otras palabras, es una medida de impureza .

Entropía

Intuitivamente, nos dice acerca de la previsibilidad de un cierto evento. La entropía calcula la homogeneidad de una muestra. Si la muestra es completamente homogénea, la entropía es cero y si la muestra está dividida en partes iguales, tiene una entropía de uno.

Información Aumento

Mide el cambio relativo en la entropía con respecto al atributo independiente. Intenta estimar la información contenida en cada atributo. Construir un árbol de decisiones consiste en encontrar el atributo que devuelve la mayor ganancia de información (es decir, las ramas más homogéneas).

Donde la ganancia (T, X) es la ganancia de información aplicando la característica X. Entropy (T) es la Entropía de todo el conjunto, mientras que el segundo término calcula la Entropía después de aplicar la característica X.

Atributo de rango de ganancia de información para filtrar en un nodo determinado en el árbol. La clasificación se basa en la mayor entropía de ganancia de información en cada división.

La desventaja de un modelo de árbol de decisión es el sobreajuste cuando trata de adaptarse al modelo al profundizar en el conjunto de entrenamiento y, por lo tanto, reducir la precisión de la prueba.

El exceso de ajuste en los árboles de decisión se puede minimizar mediante nodos de poda.

Métodos conjuntos para la clasificación

Un modelo conjunto es un equipo de modelos . Técnicamente, los modelos de conjunto comprenden varios modelos de aprendizaje supervisado que se entrenan individualmente, y los resultados se fusionan de varias maneras para lograr la predicción final. Este resultado tiene mayor poder predictivo que los resultados de cualquiera de sus algoritmos de aprendizaje constitutivos de manera independiente.

Métodos de conjunto

1. Clasificación de bosques aleatorios

El clasificador de bosques aleatorios es un algoritmo de conjunto basado en empaquetamiento, es decir, agregación de rutina. Los métodos de conjunto combinan más de un algoritmo del mismo o diferente tipo para clasificar objetos, es decir, un conjunto de SVM, Naive Bayes o Decision Trees.

Empaquetado

La idea general es que una combinación de modelos de aprendizaje aumenta. se selecciona el resultado general.

Clasificación de bosques aleatorios

Los árboles de decisión profunda pueden sufrir un sobreajuste, pero los bosques aleatorios evitan el sobreajuste mediante la creación de árboles en subconjuntos aleatorios. La razón principal es que toma el promedio de todas las predicciones, lo que cancela los sesgos.

Random Forest agrega aleatoriedad adicional al modelo mientras crece los árboles. En lugar de buscar la característica más importante al dividir un nodo, busca la mejor característica entre un subconjunto aleatorio de características. Esto da como resultado una amplia diversidad que generalmente resulta en un mejor modelo.

2. Clasificación de realce de gradientes

El clasificador de realce de gradientes está mejorando el método de conjunto. Impulsar es una forma de combinar (agrupar) estudiantes débiles, principalmente para reducir el sesgo de predicción.

En lugar de crear un conjunto de predictores, como en el empaquetamiento, el refuerzo produce una cascada de ellos, donde cada salida es la entrada para el siguiente aprendiz.

Por lo general, en un algoritmo de empaquetado los árboles se cultivan en paralelo para obtener la predicción promedio en todos los árboles, donde cada árbol está construido sobre una muestra de datos originales.

La mejora de gradiente, por otro lado, en lugar de paralelizar el proceso de construcción de árboles, la mejora requiere un enfoque secuencial para obtener predicciones. En el aumento de gradiente, cada árbol de decisión predice el error del árbol de decisión anterior, con lo cual aumenta (mejora) el error (gradiente).

Refuerzo

Trabajo de refuerzo de gradiente

  1. Inicialice las predicciones con un simple árbol de decisión.
  2. Calcule el valor residual (predicción real).
  3. Cree otro árbol de decisión superficial que predice el residuo basándose en todos los valores independientes.
  4. Actualice la predicción original con la nueva predicción multiplicada por velocidad de aprendizaje.
  5. Repita los pasos 2 a 4 para un cierto número de iteraciones (el número de iteraciones será el número de árboles).

Modelo de clasificación Rendimientos

1. Matriz de confusión

Una matriz de confusión es una tabla que se usa a menudo para describir el rendimiento de un modelo de clasificación en un conjunto de datos de prueba f o que se conocen los verdaderos valores. Es una tabla con 4 combinaciones diferentes de valores predichos y reales en el caso de un clasificador binario.

Matriz de confusión multiclase general

La matriz de confusión para un problema de clasificación de múltiples clases puede ayudarlo a determinar patrones de error.  Para un clasificador binario,

Matriz de confusión binaria

Un verdadero positivo es un resultado donde el modelo correctamente predice la clase positiva . De manera similar, un verdadero negativo es un resultado donde el modelo correctamente predice la clase negativa .

Falso positivo y falso negativo

Los términos Falso positivo y False Negative es muy importante para determinar qué tan bien se predice el modelo con respecto a la clasificación. Un falso positivo es un resultado donde el modelo incorrectamente predice la clase positiva . Y un falso negativo es un resultado donde el modelo incorrectamente predice la clase negativa . Cuanto más valores haya en la diagonal principal, mejor será el modelo, mientras que la otra diagonal dará el peor resultado para la clasificación.

Falso positivo

Un ejemplo en el que el modelo predijo erróneamente la clase positiva . Por ejemplo, el modelo dedujo que un mensaje de correo electrónico en particular era spam (la clase positiva), pero ese mensaje de correo electrónico en realidad no era spam. Es como una señal de advertencia de que el error fue corregido, ya que no es una gran preocupación en comparación con False Negative.

False positivo (error de tipo I) – cuando rechace una verdadera hipótesis nula

falsa tasa positiva

falso negativa

Un ejemplo en el que el modelo predijo erróneamente la clase negativa . Por ejemplo, el modelo dedujo que un mensaje de correo electrónico en particular no era spam (la clase negativa), pero ese mensaje de correo electrónico en realidad era spam. Es como una señal de peligro de que el error se debe corregir lo antes posible, ya que es una preocupación muy seria en comparación con Falso Positivo.

Falso negativo (error de tipo II) cuando acepta una hipótesis nula falsa .

Esta imagen ilustra fácilmente las métricas anteriores. Los resultados de la prueba del hombre dicen que “usted está embarazada” es Falso Positivo ya que un hombre no puede estar embarazada, y los resultados de la prueba de una mujer embarazada dicen que “Embarazada” es Falso Negativo, ya que la imagen identificó fácilmente que la mujer está embarazada. De la Matriz de Confusión, podemos inferir Precisión, Precisión, Recuperación, Puntuación F-1.

Precisión

La ​​precisión es la fracción de predicciones que nuestro modelo acertó.

Término de Precisión

La exactitud también se puede escribir como

Precisión

La precisión por sí sola no cuenta la historia completa cuando se trabaja con un conjunto de datos de desequilibrio de clase, donde existe una disparidad significativa entre el número de etiquetas positivas y negativas. Precisión y recuperación son mejores métricas para evaluar problemas de desequilibrio de clase.

Precisión

De todas las clases, cuánto predecimos correctamente.

La precisión debería ser lo más alta posible.

Recordar

De todas las clases positivas, cuánto pronosticamos correctamente. También se denomina sensibilidad o tasa verdadera positiva (TPR, por sus siglas en inglés).

La recuperación debe ser lo más alta posible.

Puntuación F-1

A menudo es conveniente combinar precisión y recuperación en una sola métrica llamada F1 Puntuación, en particular, si necesita una forma sencilla de comparar dos clasificadores. La puntuación de F1 es la media armónica de precisión y recuperación.

La media regular trata a todos los valores por igual, la media armónica otorga mucho más peso a los valores bajos y, por lo tanto, castiga a los valores extremos. Como resultado, el clasificador solo obtendrá una puntuación alta en F1 si tanto la recuperación como la precisión son altas.

3. La curva ROC del operador receptor y el área bajo la curva (AUC)

La ​​curva ROC es una importante métrica de evaluación de la clasificación. Nos dice qué tan bien se predice con precisión el modelo. La curva ROC muestra la sensibilidad del clasificador al trazar la tasa de verdaderos positivos a la tasa de falsos positivos. Si el clasificador es sobresaliente, la tasa positiva verdadera aumentará, y el área debajo de la curva estará cerca de 1. Si el clasificador es similar a la adivinación aleatoria, la tasa positiva verdadera aumentará linealmente con la tasa positiva falsa. Cuanto mejor sea la medida del AUC, mejor será el modelo.

4. Curva de perfil de precisión acumulativa

La ​​PAC de un modelo representa el número acumulativo de resultados positivos a lo largo de la y -axis versus el correspondiente acumulado número de un parámetro de clasificación a lo largo del eje x . La CAP es distinta de la característica operativa del receptor (ROC), que representa la tasa de positivos verdaderos contra la tasa de falsos positivos. La curva de CAP rara vez se usa en comparación con la Curva de ROC

Curva de CAP

Considerando un modelo para comprar y no comprar un producto, si se selecciona un cliente al azar, hay un 50% de probabilidad de que el consumidor compre el producto. Los elementos numéricos acumulativos para los que el cliente compra aumentarán linealmente hacia un valor máximo correspondiente al número total de clientes. Esta distribución se denomina CAP “aleatoria”. Es la línea azul en el diagrama de arriba. Una predicción perfecta, por otro lado, determina exactamente qué cliente comprará el producto, de modo que el máximo de clientes que compren la propiedad se alcance con un número mínimo de selección de clientes entre los elementos. Esto produce una línea pronunciada en la curva CAP que se mantiene plana una vez que se alcanza el máximo, que es la PAC “perfecta”. También se denomina línea “ideal” y línea gris en la figura anterior.

Al final, un modelo debe predecir dónde maximiza las predicciones correctas y se acerca a una línea de modelo perfecta.

Referencias: Evaluación de clasificador con curva CAP en Python

Implementación de la clasificación: Github Repo .

Dejá un comentario