Todo sobre la Regresión Lineal usando Scikit
Publicado: 2022-09-08En la práctica, hay dos algoritmos principales de aprendizaje automático supervisado: 1. Clasificación y 2. Regresión: la clasificación se usa para predecir salidas discretas, mientras que la regresión se usa para predecir la salida de valor continuo.
En álgebra, la linealidad denota una relación directa o lineal entre múltiples variables. Una representación literal de esta relación sería una línea recta.
Inscríbase en el curso de aprendizaje automático de las mejores universidades del mundo. Obtenga programas de maestría, PGP ejecutivo o certificado avanzado para acelerar su carrera.
La regresión lineal es un algoritmo de aprendizaje automático que se ejecuta bajo supervisión. Es un proceso de búsqueda y mapeo de una línea adecuada para todos los puntos de datos disponibles en dicho gráfico. Es un modelo de regresión que ayuda a estimar el valor entre una variable dependiente y una independiente, todo con la ayuda de una línea recta.
Los modelos de regresión lineal ayudan a construir una relación lineal entre estas variables independientes, que tienen los costos más bajos, según las variables dependientes dadas.
En matemáticas, tenemos tres formas que se utilizan para describir un modelo de regresión lineal. Son los siguientes (siendo y la variable dependiente):
- y = intersección + (pendiente x) + error
- y = constante + (coeficientex) + error
- y = a + bx + e
¿Por qué es esencial la regresión lineal?
Los modelos de regresión lineal son comparativamente más simples y fáciles de usar. Hacen que el proceso de interpretación de datos/fórmulas matemáticas capaces de generar predicciones sea relativamente más simple. La regresión lineal puede ser fundamental en varios campos (por ejemplo, estudios académicos o empresariales).
El modelo de regresión lineal es el único método científicamente probado para predecir con precisión el futuro. Se utiliza en diversas ciencias, desde ambientales, conductuales, sociales, etc.
Las propiedades de estos modelos se comprenden muy bien y, por lo tanto, se pueden entrenar fácilmente, ya que es un procedimiento estadístico establecido desde hace mucho tiempo. También facilita la transformación de copiosos conjuntos de datos sin procesar en información procesable.
Supuestos clave de la regresión lineal efectiva
- Para cada variable se debe considerar el número de casos válidos, la media y la desviación estándar.
- Para cada modelo : se deben considerar los coeficientes de regresión, la matriz de correlación, las correlaciones parciales y parciales, el error estándar de la estimación, la tabla de análisis de varianza, los valores pronosticados y los residuos.
- Gráficos : se consideran gráficos de dispersión, histogramas, gráficos parciales y gráficos de probabilidad normal.
- Datos : Se debe asegurar que las variables dependientes e independientes sean cuantitativas. No es necesario volver a codificar las variables categóricas en variables binarias o ficticias u otros tipos de variables de contraste.
- Otras suposiciones : para cada valor de una variable independiente dada, necesitamos una distribución normal de la variable dependiente. La varianza de la distribución dada de la variable dependiente también debe mantenerse constante para cada valor de la variable independiente. La relación entre cada variable independiente dependiente debe ser lineal. Además, todas las observaciones deben ser independientes.
Aquí hay un ejemplo existente de una regresión lineal simple :
El conjunto de datos del ejemplo contiene información sobre las situaciones meteorológicas globales de cada día durante un período determinado. Esta lista detallada de información incluye factores como precipitaciones, nevadas, temperaturas, velocidad del viento, tormentas eléctricas u otras posibles condiciones climáticas.
Este problema tiene como objetivo utilizar el modelo de regresión lineal simple para predecir la temperatura máxima tomando la temperatura mínima como entrada.
En primer lugar, todas las bibliotecas deben importarse.
importar pandas como pd
importar numpy como np
importar matplotlib.pyplot como plt
importar seaborn como seabornInstance
de sklearn.model_selection import train_test_split
de sklearn.linear_model importar LinearRegression
de las métricas de importación de sklearn
% matplotlib en línea
Para importar el siguiente conjunto de datos usando pandas, se debe aplicar el siguiente comando:
conjunto de datos = pd.read_csv('/Usuarios/nageshsinghchauhan/Documentos/proyectos/ML/ML_BLOG_LInearRegression/Weather.csv')
Para verificar la cantidad de filas y columnas presentes en el conjunto de datos para explorar los datos, se debe aplicar el siguiente comando:
dataset.shape
El resultado recibido debe ser (119040, 31), lo que significa que los datos contienen 119040 filas y 31 columnas.
Para ver los detalles estadísticos del conjunto de datos, se puede utilizar el siguiente comando:
describir():
conjunto de datos.describe()
Aquí hay otro ejemplo que tendrá como objetivo demostrar cómo se pueden recuperar y usar varias bibliotecas de Python que se usarán para aplicar la regresión lineal a conjuntos de datos dados:
1. Importación de todas las bibliotecas requeridas
importar numpy como np
importar pandas como pd
importar seaborn como sns
importar matplotlib.pyplot como plt
del preprocesamiento de importación de sklearn, svm
de sklearn.model_selection import train_test_split
de sklearn.linear_model importar LinearRegression
2. Lectura del conjunto de datos
cd C:\Users\Dev\Desktop\Kaggle\Salinity
# Cambiar la ubicación de lectura del archivo a la ubicación del conjunto de datos
df = pd.read_csv('botella.csv')
df_binary = df[['Salnty', 'T_degC']]
# Tomando solo los dos atributos seleccionados del conjunto de datos
df_binary.columns = ['Sal', 'Temporal']
# Cambiar el nombre de las columnas para facilitar la escritura del código
df_binary.head()
# Mostrar solo las primeras filas junto con los nombres de las columnas
2. Explorando la dispersión de datos
sns.lmplot(x =”Sal”, y =”Temp”, data = df_binary, orden = 2, ci = Ninguno)
# Trazado de la dispersión de datos
3. Limpieza de datos
# Eliminación de NaN o números de entrada faltantes
df_binary.fillna(método ='rellenar', en lugar = Verdadero)
4. Entrenando al modelo
X = np.array(df_binary['Sal']).reformar(-1, 1)
y = np.array(df_binary['Temp']).reshape(-1, 1)
# Separar los datos en variables independientes y dependientes
# Convirtiendo cada marco de datos en una matriz numpy
# ya que cada marco de datos contiene solo una columna
df_binary.dropna(inplace = True)
# Dejar caer cualquier fila con valores de Nan
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25)
# Dividir los datos en datos de entrenamiento y prueba
regr = Regresión Lineal()
regr.fit(tren_X, tren_y)
imprimir (regr.puntuación (X_test, y_test))
5. Explorando los resultados
y_pred = reg.predict(X_test)
plt.dispersión(X_test, y_test, color ='b')
plt.plot(X_test, y_pred, color ='k')
plt.mostrar()
# Dispersión de datos de valores predichos
6. Trabajar con un conjunto de datos más pequeño
df_binario500 = df_binario[:][:500]
# Seleccionando las primeras 500 filas de los datos
sns.lmplot(x =”Sal”, y =”Temp”, datos = df_binary500,
orden = 2, ci = Ninguno)
Blogs populares sobre aprendizaje automático e inteligencia artificial
IoT: Historia, Presente y Futuro | Tutorial de aprendizaje automático: Aprenda ML | ¿Qué es Algoritmo? Simplemente fácil |
Salario del ingeniero de robótica en la India: todos los roles | Un día en la vida de un ingeniero de aprendizaje automático: ¿qué hacen? | ¿Qué es IoT (Internet de las Cosas)? |
Permutación vs Combinación: Diferencia entre Permutación y Combinación | Las 7 principales tendencias en inteligencia artificial y aprendizaje automático | Aprendizaje automático con R: todo lo que necesita saber |
Si está interesado en aprender aprendizaje automático completo, le recomendamos unirse a la Maestría en Ciencias en Aprendizaje Automático e IA de upGrad . El programa de 20 meses se ofrece en asociación con IIIT Bangalore y la Universidad John Moores de Liverpool. Está diseñado para ayudarlo a desarrollar competencia en lenguajes de programación, herramientas y bibliotecas relevantes para la industria, como Python, Keras, Tensor Flow, MySql, Flask, Kubernetes, etc.
El programa puede ayudarlo a dominar los conceptos avanzados de ciencia de datos a través de la experiencia práctica y el desarrollo de habilidades. ¡Además, obtiene la ventaja de upGrad con acceso a asesoramiento profesional de 360°, un grupo de contactos de más de 40 000 estudiantes pagos y un montón de oportunidades de colaboración!
¡Reserva tu asiento hoy!
para que sirve la regresion lineal
Este tipo de análisis generalmente se usa para predecir el valor de una variable en función de otra variable conocida. Las variables que se utilizan para encontrar el valor de la otra se denominan variables dependientes e independientes, respectivamente.
¿Cómo instalar scikit aprender?
Al principio, se debe instalar la versión de regresión lineal de aprendizaje de Scikit proporcionada por el sistema operativo en cuestión o la distribución de Python. Este es el más rápido para las personas que tienen esta opción disponible. Luego, se debe instalar la última versión actualizada y lanzada oficialmente.
¿Cómo funciona scikit learn?
La regresión lineal de aprendizaje de Scikit ofrece una variedad de algoritmos supervisados y no supervisados a través de una interfaz de python, que siempre es consistente. Tiene licencia bajo una licencia BSD permitida. Se distribuye bajo varios operadores de Linux. El uso de estos algoritmos se recomienda ampliamente en los negocios y la educación.