Regresión Lineal con Software Tracker.
Regresión Lineal
Autor:Angel Aedo Busto
Competencia: Aplica las Ciencias de la ingeniería (Nivel 1)
Competencia: Aplica las Ciencias de la ingeniería (Nivel 1)
Palabras Clave: Tracker, MySQL, Estadística, Regresión Lineal, Recta.
Descripción
En estadística la regresión lineal o ajuste lineal es un método matemático que modeliza la relación entre una variable dependiente, las variables independientes y un término aleatorio. Más allá de una definición formal, se nos explica que usaremos la regresión lineal para calcular una recta, la cual representa el movimiento de una esfera, en relación al tiempo y distancia. Para llevar a cabo esta actividad nos piden 2 objetivos claves, la creación de un video estudiado en un software llamado Tracker y además que se implemente el concepto en una base de datos en MySQL.
Modelo de Solución
La primera instancia en esta actividad es la filmación de un video en el cual se capture un movimiento rectilíneo uniforme de una esfera. Esto quiere decir que nos acerquemos lo mayor posible a un desplazamiento a velocidad constante.
Mediante esos 2 vídeos fue posible el uso del software tracker y que además permitiera el cálculo de puntos para el estudio posterior.
Haciendo uso de tracker, se generan coordenadas X e Y de un plano cartesiano, estos puntos permitirán el calculo de una ecuación de la recta, mediante la estimación obtenida a partir de la nube de puntos puestos en el plano X,Y.
Con estos puntos obtenidos pasamos a la creación de un script para el ingreso a la base de datos, con el objeto de usar VIEW o vistas para realizar el cálculo necesario para la obtención de la recta.
y=ax+b
La inserción de datos quedó así:
Luego creamos las vistas necesarias para obtener a y b en la ecuación de la recta:
CREATE VIEW Diferencia AS
SELECT C.x - P.PromX AS DiferenciaX, C.y - P.PromY AS DiferenciaY FROM Coordenadas as C CROSS JOIN Promedio as P;
CREATE VIEW Producto AS
SELECT DiferenciaX*DiferenciaY AS ProductoDiferencia FROM Diferencia;
CREATE VIEW Numerador AS
SELECT SUM(ProductoDiferencia) AS Sumatoria FROM Producto;
CREATE VIEW Denominador AS
SELECT SUM(DiferenciaX*DiferenciaX) AS Sumatoria from diferencia;
CREATE VIEW a AS
SELECT n.Sumatoria / d.Sumatoria AS a FROM numerador as n, denominador as d;
CREATE VIEW b AS
SELECT p.PromY-(a.a*p.promX) AS b FROM Promedio as p, a;
SELECT C.x - P.PromX AS DiferenciaX, C.y - P.PromY AS DiferenciaY FROM Coordenadas as C CROSS JOIN Promedio as P;
CREATE VIEW Producto AS
SELECT DiferenciaX*DiferenciaY AS ProductoDiferencia FROM Diferencia;
CREATE VIEW Numerador AS
SELECT SUM(ProductoDiferencia) AS Sumatoria FROM Producto;
CREATE VIEW Denominador AS
SELECT SUM(DiferenciaX*DiferenciaX) AS Sumatoria from diferencia;
CREATE VIEW a AS
SELECT n.Sumatoria / d.Sumatoria AS a FROM numerador as n, denominador as d;
CREATE VIEW b AS
SELECT p.PromY-(a.a*p.promX) AS b FROM Promedio as p, a;
Posteriormente, para validar la veracidad de esta recta se calcula R^2, esta ecuación permite validar la ecuación de recta obtenida, mientras más cercano a 1 sea el valor de R^2, más acertada será la recta.
Esto en SQL lo calculamos así:
CREATE VIEW R2Num AS
SELECT n.Sumatoria*n.Sumatoria AS numerador FROM Numerador as n;
CREATE VIEW R2Denom1 AS
SELECT d.Sumatoria AS DenomF1 FROM Denominador as d;
CREATE VIEW R2Denom2 AS
SELECT SUM(DiferenciaY*DiferenciaY) AS DenomF2 from diferencia;
CREATE VIEW R2Denom AS
SELECT d1.DenomF1*d2.DenomF2 as denominador FROM R2Denom1 as d1, R2Denom2 AS d2;
CREATE VIEW R2 AS
SELECT rn.numerador/rd.denominador as R2 FROM R2Num AS rn, R2Denom AS rd;
SELECT n.Sumatoria*n.Sumatoria AS numerador FROM Numerador as n;
CREATE VIEW R2Denom1 AS
SELECT d.Sumatoria AS DenomF1 FROM Denominador as d;
CREATE VIEW R2Denom2 AS
SELECT SUM(DiferenciaY*DiferenciaY) AS DenomF2 from diferencia;
CREATE VIEW R2Denom AS
SELECT d1.DenomF1*d2.DenomF2 as denominador FROM R2Denom1 as d1, R2Denom2 AS d2;
CREATE VIEW R2 AS
SELECT rn.numerador/rd.denominador as R2 FROM R2Num AS rn, R2Denom AS rd;
Finalmente para ingreso de datos realizamos la validación de cuan cercano a 1 estaba R^2 y en función de este valor dimos por satisfecha nuestra labor.
Reflexión
Tracker me parece un programa realmente util, sobre todo para el desarrollo como ingenieros, pues ofrece tareas imposibles de realizar por un humano y las digitaliza y entrega en un formato listo para implementar en una base de datos.
El mezclar el cálculo de una recta haciendo uso de MySQL, en un comienzo me pareció una labor complicada y confusa, pero finalmente se presenta como un asistente a Tracker y al cálculo de la recta.
No hay comentarios:
Publicar un comentario