Mínimos Quadrados: mudanças entre as edições
Linha 181: | Linha 181: | ||
</pre> | </pre> | ||
=Ajuste ponderado= | =Ajuste ponderado= | ||
Dependendo da situação, convém fazer um ajuste levando em conta o erro associado a cada ponto, i.e., atribuindo maior peso para pontos com um erro baixo e menor peso para os pontos onde o erro é sabidamente maior. Ou seja, se definirmos <math>w_i</math> como o peso associado ao ponto <math>( | Dependendo da situação, convém fazer um ajuste levando em conta o erro associado a cada ponto, i.e., atribuindo maior peso para pontos com um erro baixo e menor peso para os pontos onde o erro é sabidamente maior. Ou seja, se definirmos <math>w_i</math> como o peso associado ao ponto <math>(x_i,y_i)</math>, gostaríamos que ele seja maior quanto menor for o erro associado a este ponto. | ||
Se <math>S_{y_i}</math> é o erro associado a este ponto, e considerando que o ajuste proposto é tal que minimiza a distância quadrática, podemos definir então <math>w_i</math> como: | Se <math>S_{y_i}</math> é o erro associado a este ponto, e considerando que o ajuste proposto é tal que minimiza a distância quadrática, podemos definir então <math>w_i</math> como: | ||
Edição das 11h52min de 4 de julho de 2018
Este o nome que se da ao ajuste ou fitting de uma função (polinômio) a um conjunto de dados.
Se com representam o conjunto de dados (N) obtidos de um experimento (instrumento) ou
de uma observação (por exemplo, em pesquisa de opinião ou censo) ou de uma simulação numérica.
E se suspeitamos que existe uma correlação entre os X (variável independente ou de entrada, controlada pelo experimento)
e os Y (cuja dependência com X queremos testar), primeiro colocamos os pontos num gráfico para ver se o conjunto forma
uma nuvem dispersa (quando não existe correlação aparente, isto é X e Y não conformam uma função), ou se existe
correlação (os pontos parecem estar sobre alguma curva).
Equação linear
Sendo que um experimento foi realizado e temos pontos, como descrito acima, e consideramos que um ajuste linear é coerente, uma reta deve ser construída para melhor representar estes pontos. Como mostrado na figura a baixo, para cada ponto, teremos um erro , que é definido como a distância entre o ponto experimental e a curva (reta neste caso) teórica que desejamos ajustar, ou seja,
- ,
onde
é a função que representa a curva de melhor ajuste.
Para encontrar a reta que melhor se ajusta aos dados experimentais, desejamos minimizar o erro . Como o erro pode ter tanto valores negativos quanto positivos, o que importa é minimizar o valor absoluto de . Isto poderia ser feito minimizando módulo de , mas como a função módulo tem uma descontinuidade, é mais fácil minimizar o quadrado do erro. Para isto, definimos:
- ,
assim
- .
Para obter a melhor reta que se ajusta aos dados experimentais, temos que minimizar em relação às constantes da função :
- .
Como a reta possui apenas dois coeficientes, para o ajuste linear temos duas equações:
e
- .
Derivando as equações acima, temos que
e
- .
Assim,
e
- .
Lembre-se de que os valores e são conhecidos (são dados do problema). Desse modo, terminamos com um sistema linear para resolver, que na notação matricial fica
- .
Cuidado com o fato que e . Após construir a matriz, resolva com o método que mais lhe agrade (ha diversos métodos de solução de sistemas lineares, tais como a Regra de Cramer ou a eliminação Gaussiana).
Equação quadrática
Utilizando o mesmo método descrito para um ajuste linear, considerando que o melhor ajuste para um conjunto de pontos seja uma curva proveniente de função quadrática, temos que a função é dada por
- .
Desse modo, a soma do quadrado do erro fica
- .
Após algumas contas, como feito na seção anterior, temos o sistema linear de 3 equações e 3 incógnitas para resolver:
- .
Fique atento ao fato de que
- .
Polinômio de grau n
Generalizando o procedimento acima, apresentado para polinômios de grau 1 e 2, podemos ajustar um conjunto de pontos com um polinômio de um grau específico . Assim, a função será descrita por
e a soma dos quadrados do erro é dada por
- .
Ao final do procedimento, teremos um sistema linear de equações e incógnitas para resolver. O resultado deste sistema são os coeficientes : que compõem o polinômio que melhor se ajusta aos dados experimentais.
Outros tipos de funções
Dependendo do tipo de experimento, podem haver outras relações entre os pontos, como funções exponenciais.
Exponencial 1
Se os dados de um experimento se ajustarem bem a uma função exponencial do tipo:
- ,
definimos uma nova função :
- .
Assim, recaímos no problema do ajuste linear recém visto:
- , com e .
Exponencial 2
Se a função exponencial for do tipo:
- ,
supondo , definimos:
- .
Assim, como no caso anterior, voltamos para o problema de ajuste linear:
- ,
com e .
Algébrica
Se a função for do tipo:
- ,
com e , definimos:
- .
e assim
- ,
onde e . Note também que os valores de x devem ser transformados em para ajustar os pontos.
Código FORTRAN
A seguir vemos uma possível implementação do método em linguagem F90.
Observem a simplicidade do mesmo:
! programa fortran para ajuste linear de conjunto de dados Implicit none Real :: xi,yi, x,y,xy,x2 Real :: det,a,b n = 0; x = 0; y = 0; xy = 0; x2 = 0 Do Read(*,*,end=100) xi,yi n = n + 1 ! soma do numero de pontosd x = x + xi; y = y + yi ! somatorio dos x e y x2 = x2 + xi**2; xy = xy + xi*y ! somatorio dos x**2 e x*y <- cuidado ha um erro aqui (compila mas ... End Do 100 det = n*x2 - x**2 a = y*x2 - xy*x / det ! <- outro erro aqui b = ... / det ! fica como exercicio print*, 'a=', a, 'b=', b end
Ajuste ponderado
Dependendo da situação, convém fazer um ajuste levando em conta o erro associado a cada ponto, i.e., atribuindo maior peso para pontos com um erro baixo e menor peso para os pontos onde o erro é sabidamente maior. Ou seja, se definirmos como o peso associado ao ponto , gostaríamos que ele seja maior quanto menor for o erro associado a este ponto. Se é o erro associado a este ponto, e considerando que o ajuste proposto é tal que minimiza a distância quadrática, podemos definir então como:
E o resíduo , para o cálculo do ajuste ponderado, será dada por:
Aplicando o mesmo procedimento anterior para minimizar , obtemos as equações
E, portanto, os valores de e são:
com :
Erro dos coeficientes
Vimos como obter os coeficientes (a e b para uma reta) do ajuste de um conjunto de dados.
Também como fazer esse ajuste quando os erros na variável dependente y não são todos iguais.
Mas como saber se esses coeficientes são "bons". Ou seja, que margem de erro eles tem.
Intuitivamente sabemos que quanto maior seja a dispersão dos em volta
da curva do ajuste, maior será nossa incerteza sobre os coeficientes.
Vamos ver como traduzir isso de forma quantitativa. Voltando as expressões dos coeficientes a e b, eles são funções de e , onde só os segundos são considerados como fonte de erro. Assim para ver como o erro neles propaga-se para os coeficientes, escrevemos:
Só os termos com y contribuem para a derivada. Como os aparecem somados, ao derivar respeito do i-esimo sobra apenas o que multiplica ele
Para incluir o efeito do erro de cada deveriamos somar i de 1 a N, mas como o erro pode ser para mais o menos fazemos uma media quadrática deles:
onde:
o somatório fica:
e com mais algumas simplificações chegamos a simples relação:
Analogamente para o b (que resulta ser mais fácil), se chega a:
Podemos interpretar essa expressões no caso sem ponderar, ou seja quando todos os erros são iguais:
onde
resultando:
Por tanto, três fatores determinam a qualidade do ajuste:
- E erro das medidas () que deve ser minimizado, porem está geralmente limitado pelo instrumento utililizado
- O número de medidas , quanto maior, melhor, porem vemos que o erro dos coeficientes diminui com a raiz dele
- Por último, a dispersão da viariável dependente x () também, quanto maior, melhor
Por último, consideremos o caso mais simples, ajuste sem ponderar e sem informação sobre , apenas pares de dados {}. Nesse caso podemos estimar o valor de pelo assim:
Pois o resíduo pode ser interpretado como o somatório dos erros de cada ponto, tomados como a distancia entre a medida e o ajuste. O em lugar de , é pelo fato de que o ajuste já contem dois parâmetros ( e obtidos dos dados, então os erros individuais não são todos independentes.