La regresión lineal es posiblemente uno de los temas más famosos tanto en estadísticas como en el aprendizaje automático. Es muy esencial hasta el punto en que retiene una parte importante en casi cualquier curso de aprendizaje automático. Sin embargo, podría ser un poco difícil envolver la cabeza, especialmente si uno no tiene antecedentes de estadísticas.
La regresión lineal puede considerarse un algoritmo de aprendizaje automático que nos permite asignar entradas numéricas a salidas numéricas, ajustando una línea en los puntos de datos.
En otras palabras, la regresión lineal es una forma de modelar la relación entre una o más variables. Desde la perspectiva del aprendizaje automático, esto se hace para garantizar la generalización, dando al modelo la capacidad de predecir salidas para las entradas que nunca antes había visto.
Si lee alguna de mis otras publicaciones aquí en Medium, notará que trato de enfatizar la idea de la generalización tanto como sea posible. La generalización es la esencia del aprendizaje automático. Toda la idea de tener esta forma artificial de inteligencia se basa en el proceso de enseñar un modelo tan bien hasta el punto de que puede «actuar» por sí solo. En otras palabras, desea que el modelo no se limite a lo que haya aprendido. Piense en ello como un niño. Si su hijo solo ha visto a los gatos toda su vida, por una razón inquietante que le impuso, y si en algún momento decide mostrarle una foto de un perro, esperaría que sepa que el perro no es un gato. No es algo que haya aprendido.
Entonces, un grupo de entusiastas de la tecnología creativa comenzó una empresa en Silicon Valley. Esta nueva empresa, llamada Banana, es tan innovadora que han estado creciendo constantemente desde 2016. Usted, el rico inversor, le gustaría saber si poner su dinero en el éxito de Banana en el próximo año o no. Supongamos que no desea arriesgar mucho dinero, especialmente porque las apuestas están altas en Silicon Valley. Por lo tanto, decide comprar algunas acciones, en lugar de invertir en una gran parte de la compañía.
¿Cuál es el proceso de regresión lineal?
El análisis de regresión lineal se utiliza para predecir el valor de una variable basada en el valor de otra variable. La variable que desea predecir se llama variable dependiente. La variable que está utilizando para predecir el valor de la otra variable se llama variable independiente.
Esta forma de análisis estima los coeficientes de la ecuación lineal, que involucra una o más variables independientes que mejor predicen el valor de la variable dependiente. La regresión lineal se adapta a una línea recta o superficie que minimiza las discrepancias entre los valores de salida predichos y reales. Existen calculadoras de regresión lineal simples que utilizan un método de «mínimos cuadrados» para descubrir la mejor línea de ajuste para un conjunto de datos emparejados. Luego estimula el valor de x (variable dependiente) de y (variable independiente).
Puede realizar una regresión lineal en Microsoft Excel o utilizar paquetes de software estadístico, como las estadísticas de IBM SPSS® que simplifican en gran medida el proceso de uso de ecuaciones de regresión lineal, modelos de regresión lineal y fórmula de regresión lineal. Las estadísticas de SPSS se pueden aprovechar en técnicas como regresión lineal simple y regresión lineal múltiple.
Puede realizar el método de regresión lineal en una variedad de programas y entornos, que incluyen:
- R regresión lineal
- Regresión lineal de Matlab
- Regresión lineal de Sklearn
- Pitón de regresión lineal
- Regresión lineal de Excel
Los modelos de regresión lineal son relativamente simples y proporcionan una fórmula matemática fácil de interpretar que puede generar predicciones. La regresión lineal se puede aplicar a varias áreas en el estudio comercial y académico.
¿Cómo aplicar el metodo de regresión lineal?
El objetivo de este TP es poner en práctica el lenguaje de Python para lograr una regresión lineal. La idea es, al principio, abordar los elementos básicos del lenguaje (condición, rizos, etc.) para crear una herramienta que calcule los parámetros por el método de mínimo cuadrado. En una segunda parte, se utilizarán módulos específicos como Numpy o Matplotlib para llevar a cabo la misma operación con los métodos existentes.
Nota: Este cuaderno es compatible con Python2 y Python3. Se recomienda usar Python3.
El programa que vamos a escribir tendrá que llevar a cabo las siguientes operaciones:
- Lea los valores de los valores (x ) y (y ) en el archivo data.dat.
- Calcule los parámetros (a ) y (b ) de la regresión lineal por el método de mínimo cuadrado y muestrelos.
- (bonificación) Representen los puntos ((x, y) ) y rastree la línea de regresión.
Puede descargar archivos de datos.dat y reglindata.dat utilizado en este TP.
El cuaderno Jupyter asociado con este artículo está disponible aquí en la versión completa o solo con el texto para hacer el TP.
La regresión lineal consiste en buscar los parámetros (a ) y (b ) que definen la derecha (y = ax+b ) que va lo más cerca posible a un conjunto de puntos ((x_k, y_k) ). Los parámetros (a ) y (b ) están determinados por los métodos de los cuadrados más pequeños que consiste, en el caso de una regresión lineal, para minimizar la cantidad:
El mínimo de (q (a, b) ) se obtiene cuando sus derivados en relación con (a ) y (b ) son cero. Por lo tanto, es necesario resolver el sistema con dos ecuaciones dos incógnitas siguiendo:
Ahora registraremos los valores XI y YI en las listas. Además, podemos notar que los valores se leen como cadenas de caracteres. Deben convertirse en un número flotante con la función flotante ().
¿Cómo se hace un modelo de regresión lineal?
La regresión lineal es una forma de modelar la relación entre una variable de respuesta y una o más variables explicativas. En la regresión lineal, los datos se modelan por una función lineal.
Las regresiones lineales se pueden usar en los negocios para evaluar las tendencias y hacer estimaciones o pronósticos. Por ejemplo, si las ventas de una empresa han aumentado constantemente cada mes durante los últimos años, realizando un análisis lineal de los datos de ventas con ventas mensuales, la compañía podría pronosticar ventas en los próximos meses. Considere el ejemplo a continuación.
Publicidad e ingresos: las empresas usan regresión lineal para comprender mejor las relaciones entre el gasto publicitario y los ingresos.
Por ejemplo, podrían ajustarse a un modelo de regresión lineal simple utilizando el gasto publicitario como la variable predictor y los ingresos como la variable de respuesta. El modelo de regresión tomaría la siguiente forma: ingresos = β0 + β1 (gasto AD).
El coeficiente β0 representaría los ingresos totales esperados cuando el gasto AD es cero. El coeficiente β1 representaría el cambio promedio en los ingresos totales cuando el gasto AD aumenta en una unidad, un dólar.
Si β1 es negativo, significaría que más gasto AD se asocia con menos ingresos. Si β1 está cerca de cero, significaría que el gasto en AD tiene poco efecto en los ingresos. Y si β1 es positivo, significaría que más gasto publicitario se asocia con más ingresos.
Los modelos de regresión lineal son una forma importante y probada de predecir de manera confiable los resultados futuros. Debido a que la regresión lineal es un procedimiento estadístico de larga data, las propiedades de los modelos de regresión lineal se entienden bien y pueden ser entrenadas muy rápidamente.
¿Cómo hacer una regresión lineal a mano?
Supongamos que tomo los mismos datos del ejemplo de Pylab e imagino tratar de agregar una función lineal para representar esos datos. Aquí hay dos opciones.
¿Cual es mejor? La línea roja o la azul? ¿Cómo decides? Bueno, tienes que inventar algunos criterios para elegir la mejor línea. Comúnmente, se elige elegir la línea de tal manera que se minimice el valor de la suma de D2. Mostré estos valores D en el gráfico para usted. Observe que son la distancia vertical desde los puntos de datos reales hasta la función lineal de ajuste. ¿Por qué de esta manera? Bueno, típicamente, la variable horizontal es su variable independiente, por lo que estos podrían ser algunos valores establecidos. Los datos verticales son típicamente los que tienen más error (pero no siempre). En su lugar, puede mirar la distancia horizontal desde los datos o incluso la perpendicular.
No quiero agregar estas distancias verticales porque algunas serán positivas y otras negativas. En cambio, sumaré esta distancia vertical al cuadrado de tal manera que:
Bueno, eso es genial. ¿Ahora que? Si dejo que sea la suma del cuadrado de las distancias, entonces quiero elegir una línea de tal manera que S sea la más pequeña. Sugerencia: de aquí es de donde proviene el término ‘mínimo cuadrados’. ¿Cómo se minimiza una función? La respuesta simple es cambiar los parámetros M y B.
Permítanme fingir que cambié el parámetro M y cada vez calculé la suma de las distancias verticales al (s). Supongamos que hice una parcela de S para los diferentes valores de M y se ve así:
En este gráfico, ¿qué punto etiquetado (a – d) es s como mínimo? Avanzar. Puedes decirlo. ¿Cuántos de ustedes dijeron ‘C’? Bueno, tendrías razón. Pero, ¿cómo encuentras ese punto más bajo sin hacer un gráfico? Hay una cosa importante sobre el punto más bajo. Justo antes de ese punto más bajo, la función está disminuyendo. Justo después de ese punto más bajo, la función está aumentando. Y así, en el punto más bajo, la función no aumenta o disminuye (con respecto al cambio de M). Por supuesto, estoy hablando de la pendiente de esta función. Puedo encontrar este punto más bajo al encontrar dónde la pendiente (la derivada con respecto a m) es cero.
¿Qué es la regresión lineal y ejemplos?
El peso de la persona está linealmente relacionado con su altura. Entonces, esto muestra una relación lineal entre la altura y el peso de la persona. Según esto, a medida que aumentamos la altura, el peso de la persona también aumentará. No es necesario que una variable dependa de otras, o una cause la otra, pero existe una relación crítica entre las dos variables. En tales casos, utilizamos una gráfica de dispersión para simplificar la fuerza de la relación entre las variables. Si no hay relación o vinculación entre las variables, la gráfica de dispersión no indica ningún patrón creciente o decreciente. En tales casos, el diseño de regresión lineal no es beneficioso para los datos dados.
El coeficiente de correlación muestra la medida de la relación entre dos variables. El rango del coeficiente se encuentra entre -1 a +1. Este coeficiente muestra la fuerza de la asociación de los datos observados entre dos variables.
donde x es la variable independiente y se traza a lo largo del eje x
Y es la variable dependiente y se traza a lo largo del eje Y
Aquí, la pendiente de la línea es B, y A es la intersección (el valor de y cuando x = 0).
Como sabemos, la regresión lineal muestra la relación lineal entre dos variables. La ecuación de regresión lineal es similar a la de la fórmula de pendiente. Hemos aprendido esta fórmula antes en clases anteriores, como una ecuación lineal en dos variables. La fórmula de regresión lineal viene dada por la ecuación
¿Qué es un modelo de regresión de un ejemplo?
La última parte del tutorial de regresión contiene ejemplos de análisis de regresión. Algunos de los ejemplos se incluyen en secciones tutoriales anteriores. ¡La mayoría de estos ejemplos de regresión incluyen los conjuntos de datos para que pueda probarlo usted mismo! Además, ¡intente usar Excel para realizar el análisis de regresión con un ejemplo paso a paso!
Querido Dr., ¿cómo estás?
Muchas gracias por su contribución.
Tengo una pregunta, que podría no estar relacionada con esta publicación.
En mi tabulación cruzada entre dos variables categóricas, la célula de una de las variables tiene solo 8 observaciones para el «NO», y 33 observaciones para el «sí» de la segunda variable. ¿Puedo continuar con las estadísticas descriptivas o colapsar las categorías para aumentar el tamaño de la muestra? ¿Utilizo la nueva variable con una menos categorías en mi análisis de regresión?
su ayuda es muy apreciada
Gracias por su valioso consejo. El cambio está en la forma en que estoy poniendo datos en el software. Cuando pongo datos promedio, la salida GLM muestra que la ingestión no tiene un efecto significativo en la mortalidad. Cuando ingreso datos con replicaciones, GLM Out muestra un efecto significativo de la ingestión en la mortalidad. Mis desviaciones estándar son grandes, pero los datos muestran homogscedacidad y distribución normal.
Tengo una pregunta sobre el modelo lineal generaližed. Estoy obteniendo diferentes salidas de la misma variable de respuesta cuando aplico GLM usando 1) datos con replicaciones 2) utilizando datos promedio. La mortalidad es mi variable de respuesta y no. De las partículas ingeridas es mi variable predictor, otros dos predictores son categóricos.
¿Cómo se hace la regresión lineal?
Comencemos por recuperar un conjunto de datos para entrenar nuestro modelo lineal hecho con Deeplearning4J.
El conjunto de datos se puede encontrar en la siguiente URL: resistencia a la compresión de concreto. En él tenemos 1,030 instancias, 8 valores de entrada que se refieren a los ingredientes concretos y un único valor de salida que indica la resistencia
de concreto a compresión.
Nuestro objetivo es tratar de identificar un modelo lineal que pueda predecir esta resistencia con buena aproximación, dados los valores de entrada. No usamos directamente el archivo de Excel descargado del Sitio, pero lo convertimos en un archivo CSV con la coma como separador.
Todas las características deben llevarse a la misma escala. La mayoría de los algoritmos de aprendizaje automático se comportan mucho mejor si realizamos este tipo de operación. La importancia de este aspecto se puede ilustrar con un ejemplo.
Imagine que tenemos dos características, una con valores de 0 a 10 y el otro con valores de 0 a 100,000. Cuando consideramos que la función del error se minimiza, el algoritmo estará ocupado mucho más para optimizar los pesos cuyo error se refiere a la característica con valores más grandes en lugar de eso con valores más pequeños, lo que lleva a un desequilibrio en el aprendizaje.
Para escalar adecuadamente los valores de los datos de entrada, tenemos dos metodologías disponibles: normalización y estandarización. La normalización consiste en una reducción de la escala en un intervalo [0.1], un caso particular de Scalact Min-Make.
Artículos Relacionados:
- Aprende a aplicar modelos de regresión lineal con estos ejemplos prácticos
- Regresión lineal: una introducción a los tipos de regresión lineal
- Aprende a realizar una regresión lineal simple con estos pasos
- Modelo de regresión no lineal: ¿cuál es el mejor para tu negocio?
- Prueba de hipótesis en la regresión lineal simple: cómo optimizar su análisis
- Aprende a realizar un análisis de regresión lineal en SPSS paso a paso
