Aproximação de função com análise de regressão

Esta calculadora online utiliza diversos modelos de regressão para aproximação de função desconhecida dada por conjunto de pontos de dados.

O problema da aproximação de função é selecionar a função entre uma classe bem definida que corresponde proximamente ("aproxima") uma função desconhecida alvo.

Esta calculadora use dados de tabela de função alvo em forma de pontos {x, f(x)} para montar diversos modelos de regressão, sendo eles regressão linear, regressão quadrática, regressão cúbica, regressão potencial, regressão logarítmica, regressão hiperbólica, regressão ab-exponencial e regressão exponencial.
Os resultados podem ser comparados utilizando o coeficiente de correlação, coeficiente de determinação, erro relativo médio (erro padrão da regressão) e visualmente, no gráfico. A teoria e as fórmulas são dadas abaixo da calculadora, como de costume.

PLANETCALC, Aproximação de função com análise de regressão

Aproximação de função com análise de regressão

Dígitos após o ponto decimal: 4
Regressão linear
 
Coeficiente de correlação linear
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão quadrática
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão cúbica
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão potencial
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão ab-exponencial
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão logaritmica
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão hiperbólica
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Regressão exponencial
 
Coeficiente de correlação
 
Coeficiente de determinação
 
Erro relativo médio, %
 
Resultados
O arquivo é muito grande; pode ocorrer lentidão do navegador durante o carregamento e a criação.

Regressão linear

Equação:
\widehat{y}=ax+b

coeficiente a
a&=\frac{\sum x_i \sum y_i- n\sum x_iy_i}{\left(\sum x_i\right)^2-n\sum x_i^2}

coeficiente b
b&=\frac{\sum x_i \sum x_iy_i-\sum x_i^2\sum y_i}{\left(\sum x_i\right)^2-n\sum x_i^2}

Coeficiente de correlação linear
r_{xy}&=\frac{n\sum x_iy_i-\sum x_i\sum y_i}{\sqrt{\left(n\sum x_i^2-\left(\sum x_i\right)^2\right)\!\!\left(n\sum y_i^2-\left(\sum y_i\right)^2 \right)}}

Coeficiente de determinação
R^2=r_{xy}^2

Erro padrão da regressão
\overline{A}=\dfrac{1}{n}\sum\left|\dfrac{y_i-\widehat{y}_i}{y_i}\right|\cdot100\%

Regressão quadrática

Equação:
\widehat{y}=ax^2+bx+c

Sistema de equações para encontrar a, b e c
\begin{cases}a\sum x_i^2+b\sum x_i+nc=\sum y_i\,,\\[2pt] a\sum x_i^3+b\sum x_i^2+c\sum x_i=\sum x_iy_i\,,\\[2pt] a\sum x_i^4+b\sum x_i^3+c\sum x_i^2=\sum x_i^2y_i\,;\end{cases}

Coeficiente de correlação
R= \sqrt{1-\frac{\sum(y_i-\widehat{y}_i)^2}{\sum(y_i-\overline{y})^2}},
onde
\overline{y}= \dfrac{1}{n}\sum y_i

Coeficiente de determinação
R^2

Erro padrão da regressão
\overline{A}=\dfrac{1}{n}\sum\left|\dfrac{y_i-\widehat{y}_i}{y_i}\right|\cdot100\%

Regressão cúbica

Equação:
\widehat{y}=ax^3+bx^2+cx+d

Sistema de equações para encontrar a, b, c e d
\begin{cases}a\sum x_i^3+b\sum x_i^2+c\sum x_i+nd=\sum y_i\,,\\[2pt] a\sum x_i^4+b\sum x_i^3+c\sum x_i^2+d\sum x_i=\sum x_iy_i\,,\\[2pt] a\sum x_i^5+b\sum x_i^4+c\sum x_i^3+d\sum x_i^2=\sum x_i^2y_i\,,\\[2pt] a\sum x_i^6+b\sum x_i^5+c\sum x_i^4+d\sum x_i^3=\sum x_i^3y_i\,;\end{cases}

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - as mesmas fórmulas que as da regressão quadrática.

Regressão potencial

Equação:
\widehat{y}=a\cdot x^b

coeficiente b
b=\dfrac{n\sum(\ln x_i\cdot\ln y_i)-\sum\ln x_i\cdot\sum\ln y_i }{n\sum\ln^2x_i-\left(\sum\ln x_i\right)^2 }

coeficiente a
a=\exp\!\left(\dfrac{1}{n}\sum\ln y_i-\dfrac{b}{n}\sum\ln x_i\right)

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - as mesmas fórmulas acima.

Regressão ab-exponencial

Equação:
\widehat{y}=a\cdot b^x

coeficiente b
b=\exp\dfrac{n\sum x_i\ln y_i-\sum x_i\cdot\sum\ln y_i }{n\sum x_i^2-\left(\sum x_i\right)^2 }

coeficiente a
a=\exp\!\left(\dfrac{1}{n}\sum\ln y_i-\dfrac{\ln b}{n}\sum x_i\right)

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - os mesmos.

Regressão hiperbólica

Equação:
\widehat{y}=a + \frac{b}{x}

coeficiente b
b=\dfrac{n\sum\dfrac{y_i}{x_i}-\sum\dfrac{1}{x_i}\sum y_i }{n\sum\dfrac{1}{x_i^2}-\left(\sum\dfrac{1}{x_i}\right)^2 }

coeficiente a
a=\dfrac{1}{n}\sum y_i-\dfrac{b}{n}\sum\dfrac{1}{x_i}

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - os mesmos que acima.

Regressão logarítmica

Equação:
\widehat{y}=a + b\ln x

coeficiente b
b=\dfrac{n\sum(y_i\ln x_i)-\sum\ln x_i\cdot \sum y_i }{n\sum\ln^2x_i-\left(\sum\ln x_i\right)^2 }

coeficiente a
a=\dfrac{1}{n}\sum y_i-\dfrac{b}{n}\sum\ln x_i

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - os mesmos que acima.

Regressão exponencial

Equação:
\widehat{y}=e^{a+bx}

coeficiente b
b=\dfrac{n\sum x_i\ln y_i-\sum x_i\cdot\sum\ln y_i }{n\sum x_i^2-\left(\sum x_i\right)^2 }

coeficiente a
a=\dfrac{1}{n}\sum\ln y_i-\dfrac{b}{n}\sum x_i

Coeficiente de correlação, coeficiente de determinação, erro padrão da regressão - os mesmos que acima.

Derivação das fórmulas

Vamos começar a partir do problema:
Temos uma função desconhecida y=f(x), dada em forma de tabela de dados (por exemplo, aquelas obtidas a partir de experimentos).
Precisamos achar a função com tipo conhecido (linear, quadrática, etc.) y=F(x), esses valores devem as tão próximos quanto possível dos valores da tabela nos mesmos pontos. Na prática, o tipo de função é determinado por comparar visualmente os pontos da tabela a gráficos de funções conhecidas.

Como resultado, devemos ter a fórmula y=F(x), chamada fórmula empírica (equação de regressão, aproximação de função), a qual permite calcular y para os x's não presentes na tabela. Por isso, a fórmula espírica "suaviza" os valores de y.

Utilizamos Método dos Mínimos Quadrados para obter os parâmetros de F que melhor se encaixem. A melhor correspondência no sentido do método dos mínimos quadrados minimiza a soma de residuais quadrados, um residual sendo a diferença entre o valor observado e o valor de encaixe fornecido por um modelo.

Portanto, precisamos encontrar a função F, já que a soma dos residuais quadrados S será mínima
S=\sum\limits_i(y_i-F(x_i))^2\rightarrow min

Vamos descrever a solução para este problema usando a regressão linear F=ax+b como exemplo.
Precisamos encontrar o melhor encaixe pra os coeficientes a e b, então
S é a função de a e b. Para encontrar o mínimo, precisamos encontrar os pontos extremos, onde as derivadas parciais são iguais a zero.

Utilizando a fórmula de derivadas de função complexa, nós chegamos às seguintes equações
\begin{cases} \sum [y_i - F(x_i, a, b)]\cdot F^\prime_a(x_i, a, b)=0 \\ \sum [y_i - F(x_i, a, b)]\cdot F^\prime_b(x_i, a, b)=0 \end{cases}

Para a função F(x,a,b)=ax+b, as derivadas parciais são
F^\prime_a=x,
F^\prime_b=1

Expandindo as primeiras fórmulas com as derivadas parciais, nós teremos as seguintes equações
\begin{cases} \sum (y_i - ax_i-b)\cdot x_i=0 \\ \sum (y_i - ax_i-b)=0 \end{cases}

Após remover os colchetes, teremos o seguinte
\begin{cases} \sum y_ix_i - a \sum x_i^2-b\sum x_i=0 \\ \sum y_i - a\sum x_i - nb=0 \end{cases}

A partir dessas equações, nós teremos fórmulas para a e b, que serão iguais às fórmulas listadas acima.

Usando a mesma técnica, nós podemos ter fórmulas para todas as regressões restantes

URL copiado para a área de transferência
PLANETCALC, Aproximação de função com análise de regressão

Comentários