Regresión logística para aprendizaje automático: una guía completa
Publicado: 2021-10-04Los 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!
La regresión logística es en términos generales de tres tipos: 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. La regresión logística para el aprendizaje automático utiliza la función sigmoide para encontrar la curva de mejor ajuste.¿Cuántos tipos de regresión logística para el aprendizaje automático son posibles?
1. binario
2. Multinomio
3. Ordinales. ¿Para qué se utiliza la regresión logística en Machine Learning?
¿Cuál es la función que usa Logistic Regression for Machine Learning?