Regresión logística para aprendizaje automático: una guía completa

Publicado: 2021-10-04

Los modelos de aprendizaje automático requieren algoritmos para funcionar. Según el conjunto de condiciones, un modelo de ML en particular puede funcionar mejor con uno u otro algoritmo. Como resultado, los ingenieros y entusiastas del aprendizaje automático deben conocer los diferentes tipos de algoritmos que se pueden usar en diferentes contextos, para saber cuál usar cuando llegue el momento. Nunca existe una solución única para todos en Machine Learning, y ajustar con diferentes algoritmos puede brindar los resultados deseados.

Por ejemplo, ya debe saber acerca de la regresión lineal. Sin embargo, este algoritmo simplemente no se puede aplicar a variables categóricamente dependientes. Aquí es donde la regresión logística resulta útil.

En el aprendizaje automático, la regresión logística es un método de aprendizaje supervisado que se utiliza para predecir la probabilidad de una variable dependiente o objetivo. Con la regresión logística, puede predecir y establecer relaciones entre las variables dependientes y una o más independientes.

Las ecuaciones y los modelos de regresión logística se utilizan generalmente para el análisis predictivo de la clasificación binaria. También puede usarlos para la clasificación de varias clases.

Así es como se ve la ecuación de regresión logística para el aprendizaje automático:

logit(p) = ln(p/(1-p)) = h0+h1X1+h2X2+h3X3….+hkXk

Donde;

p= probabilidad de ocurrencia de la característica

x1,x2,..xk = conjunto de características de entrada

h1,h2,….hk = valores paramétricos a estimar en la ecuación de Regresión Logística.

Tabla de contenido

Tipos de modelos de regresión logística en aprendizaje automático

Según la forma en que se utiliza la regresión logística, el tipo de modelos de regresión logística se puede clasificar de la siguiente manera:

1. Modelo de regresión logística binaria

Este es uno de los modelos de regresión más utilizados para la regresión logística. Ayuda a clasificar los datos en dos clases y a predecir el valor de una nueva entrada como perteneciente a cualquiera de las dos clases. Por ejemplo, el tumor de un paciente puede ser benigno o maligno, pero nunca ambos.

2. Modelo de regresión logística multinomial

Este modelo ayuda a clasificar las variables objetivo en más de dos clases, independientemente de cualquier importancia cuantitativa. Un ejemplo de esto podría ser predecir el tipo de comida que probablemente pedirá una persona en función de sus preferencias dietéticas y experiencias pasadas.

Únase al curso de aprendizaje automático en línea de las mejores universidades del mundo: maestrías, programas ejecutivos de posgrado y programa de certificado avanzado en ML e IA para acelerar su carrera.

3. Modelo de regresión logística ordinal

Este modelo se utiliza para clasificar la variable objetivo. Por ejemplo, el desempeño de un estudiante en un examen se puede clasificar como malo, bueno y excelente en un orden jerárquico. De esa manera, los datos se clasifican en tres categorías distintas, y cada clase tiene un nivel específico de importancia.

La ecuación de regresión logística se puede utilizar en varios casos, como la detección de spam, la clasificación de tumores, la categorización por sexo y muchos más. Veamos dos de los casos de uso de ejemplo más comunes de la ecuación de regresión logística en el aprendizaje automático para ayudarlo a comprender mejor.

Ejemplos de casos de uso de la ecuación de regresión logística

Ejemplo 1: Identificación de correos electrónicos no deseados

Considere la clase 1 si el correo electrónico es spam y 0 si no lo es. Para detectar esto, se analizan múltiples atributos del cuerpo del correo. Éstos incluyen:

  • El remitente
  • Errores de ortografía
  • Palabras clave en el correo electrónico como "datos bancarios", "suerte", "ganador", "felicidades".
  • Detalles de contacto o URL en el correo electrónico

Estos datos extraídos se pueden introducir en la ecuación de regresión logística para el aprendizaje automático, que analizará todas las entradas y entregará una puntuación entre 0 y 1. Si la puntuación es superior a 0 pero inferior a 0,5, el correo electrónico se clasificará como correo no deseado y si la puntuación está entre 0,5 y 1, el correo se marca como no spam.

Ejemplo 2: Identificación del fraude con tarjetas de crédito

Usando ecuaciones de regresión logística o modelos de aprendizaje automático basados ​​en regresión logística, los bancos pueden identificar rápidamente transacciones fraudulentas con tarjetas de crédito. Para esto, los detalles como PoS, número de tarjeta, valor de transacción, datos de transacción y similares se introducen en el modelo de regresión logística, que decide si una transacción determinada es genuina (0) o fraudulenta (1). Por ejemplo, si el valor de compra es demasiado alto y se desvía de los valores típicos, el modelo de regresión asigna un valor (entre 0,5 y 1) que clasifica la transacción como fraude.

Funcionamiento de la regresión logística en el aprendizaje automático

La regresión logística funciona mediante el uso de la función Sigmoid para asignar las predicciones a las probabilidades de salida. Esta función es una curva en forma de S que traza los valores predichos entre 0 y 1. Luego, los valores se trazan hacia los márgenes en la parte superior e inferior del eje Y, utilizando 0 y 1 como etiquetas. Luego, en función de estos valores, se pueden clasificar las variables independientes.

Así es como se ve la función sigmoide:

La función sigmoidea se basa en la siguiente ecuación:

y=1/(1+e^x)

Donde e^x= la constante exponencial con un valor de 2.718.

La ecuación de la función sigmoide anterior proporciona el valor predicho (y) como cero si x se considera negativo. Si x es un número positivo grande, el valor predicho es cercano a uno.

Construyendo un modelo de regresión logística en Python

Veamos el proceso de creación de un modelo de regresión logística en Python. Para eso, usemos el conjunto de datos de la red social para llevar a cabo el análisis de regresión e intentemos predecir si una persona comprará o no un automóvil en particular. Así es como se ven los pasos.

Paso 1: importar las bibliotecas y el conjunto de datos

Comienza importando las bibliotecas que se necesitan para construir el modelo. Esto incluye Pandas, Numpy y Matplotlib. También necesitamos importar el conjunto de datos con el que trabajaremos. Así es como se ve el código:

importar numpy como np

importar matplotlib.pyplot como pt

importar pandas como pd

conjunto de datos = pd.read_csv('Social_Network.csv')

Paso 2: dividir en variables dependientes e independientes

Ahora es el momento de dividir los datos alimentados en variables dependientes e independientes. Para este ejemplo, consideraremos el valor de compra como variable dependiente durante el salario estimado y la edad de los individuos como variables independientes.

x = conjunto de datos.iloc[:, [2,3]].valores

y = conjunto de datos.iloc[:, 4].valores

Paso 3: dividir el conjunto de datos en un conjunto de entrenamiento y un conjunto de prueba

Es esencial dividir el conjunto de datos en conjuntos específicos de entrenamiento y prueba. El conjunto de entrenamiento entrenará la ecuación de regresión logística, mientras que los datos de prueba se utilizarán para validar el entrenamiento del modelo y probarlo. Sklearn se utiliza para dividir el conjunto de datos dado en dos conjuntos. Usamos la función train_split_function especificando la cantidad de datos que deseamos reservar para entrenamiento y prueba.

de sklearn.model_selection import train_test_split

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.33, random_state = 0)

Como puede ver, hemos definido el tamaño de la prueba como el 33 % del conjunto de datos completo. Entonces, el 66% restante se usará como datos de entrenamiento.

Paso 4: Escalado

Para mejorar la precisión de su modelo de regresión logística, deberá volver a escalar los datos y traer valores que pueden ser de naturaleza muy variable.

de sklearn.preprocessing importar StandardScaler

sc_X = Escalador estándar()

tren_X = sc_X.fit_transform(tren_X)

X_prueba = sc_X.transform(X_prueba)

Paso 5: Construcción del modelo de Regresión Logística

Una vez hecho esto, debe crear el modelo de regresión logística y ajustarlo al conjunto de entrenamiento. Comience importando el algoritmo de regresión logística de Sklearn.

de sklearn.linear_model import LogisticRegression

Luego, cree un clasificador de instancias que se ajuste a los datos de entrenamiento.

clasificador = LogisticRegression(random_state=0)

clasificador.fit(x_tren, y_tren)

A continuación, cree predicciones en el conjunto de datos de prueba.

y_pred = clasificador.predecir(x_test)

Finalmente, verifique el desempeño de su modelo de Regresión Logística usando la matriz de Confusión.

de sklearn.metrics importar confusion_matrix

cm = matriz_confusión(y_test, y_pred)

acc = precision_score(y_test, y_pred)

imprimir (acc)

imprimir (cm)

Ahora, puede usar Matplotlib para visualizar todo el conjunto de datos, incluidos los conjuntos de entrenamiento y prueba.

En conclusión

La regresión logística es una de las herramientas que ayuda en el desarrollo de modelos y algoritmos de Machine Learning. Del mismo modo, también hay muchos otros algoritmos que se utilizan según el caso de uso en cuestión. Sin embargo, para saber qué algoritmo usar, debe conocer todas las opciones posibles. Solo entonces estará en condiciones de seleccionar el algoritmo más adecuado para su conjunto de datos.

Consulte nuestro programa Executive PG en Machine Learning diseñado de una manera que lo lleva desde cero y lo ayuda a desarrollar sus habilidades al máximo, para que esté en condiciones de resolver cualquier problema de Machine Learning del mundo real. Echa un vistazo a los diferentes cursos e inscríbete en el que te parezca adecuado. ¡Únase a upGrad y experimente un entorno de aprendizaje holístico y soporte de colocación!

¿Cuántos tipos de regresión logística para el aprendizaje automático son posibles?

La regresión logística es en términos generales de tres tipos:
1. binario
2. Multinomio
3. Ordinales.

¿Para qué se utiliza la regresión logística en Machine Learning?

La regresión logística es uno de los métodos de aprendizaje supervisado que se utiliza para encontrar y construir la mejor relación de ajuste entre las variables dependientes e independientes para hacer predicciones futuras adecuadas.

¿Cuál es la función que usa Logistic Regression for Machine Learning?

La regresión logística para el aprendizaje automático utiliza la función sigmoide para encontrar la curva de mejor ajuste.