Digamos que tenho medidas de uma função , amostradas em com algum ruído, que poderiam ser aproximadas por uma expansão da série Taylor. Existe uma maneira aceita de estimar os coeficientes para essa expansão a partir de minhas medições?
Eu poderia ajustar os dados a um polinômio, mas isso não está certo, porque, para uma série de Taylor, a aproximação deve ficar melhor quanto mais próximo você estiver de um ponto central, digamos x = 0. Apenas ajustar um polinômio trata todos os pontos igualmente.
Também pude estimar as várias ordens de derivativos no meu ponto de expansão, mas preciso tomar decisões sobre quais filtros diferenciadores usar e quantos coeficientes de filtro para cada um. Os filtros para os diferentes derivados precisariam se encaixar de alguma forma?
Então, alguém sabe de métodos estabelecidos para isso? Explicações ou referências a trabalhos seriam apreciadas.
ESCLARECIMENTO
Em resposta ao comentário abaixo, minha amostragem é uma janela retangular de uma função infinita, que não é necessariamente limitada por banda, mas não possui componentes fortes de alta frequência. Para ser mais específico, estou medindo a variação de um estimador (medindo o deslocamento em um sinal de ultra-som médico) como uma função de um parâmetro do estimador (o nível de deformação ou deformação do tecido subjacente). Eu tenho uma série teórica de Taylor para a variação em função da deformação e gostaria de compará-la com o que recebo da simulação.
Um exemplo semelhante de brinquedo pode ser: digamos que você tenha uma função como ln (x), amostrada em intervalos em x com algum ruído adicionado. Você não sabe qual é a função e deseja estimar sua série de Taylor em torno de x = 5. Portanto, a função é suave e varia lentamente para uma região em torno do ponto em que você está interessado (digamos 2 <x <8), mas não é necessariamente agradável fora da região.
As respostas foram úteis, e algum tipo de ajuste polinomial de mínimos quadrados é provavelmente o caminho a seguir. O que tornaria uma série estimada de Taylor diferente de um ajuste polinomial normal, no entanto, é que você poderá reduzir os termos de ordem superior e fazer com que o polinômio ainda se aproxime da função original, apenas dentro de um intervalo menor do seu ponto inicial.
Talvez a abordagem seja fazer um ajuste polinomial linear usando apenas dados próximos ao ponto inicial, seguido por um ajuste quadrático com um pouco mais de dados, cúbico usando um pouco mais do que isso, etc.
Respostas:
Em vez do ajuste polinomial exato, você pode usar um ajuste de mínimos quadrados , que encontrará o polinômio da ordem especificada que minimiza o erro quadrado total entre o ajuste e os pares medidos . Isso pode ajudar a atenuar os efeitos do ruído no encaixe.(xi,yi)
Dadas as medidas de uma função y = f ( x ) nos valores do domínio x i ( i = 0 , 1 , … , N ), escolha uma ordem polinomial M ≤ N (se M = N , então você deve saber exatamente ajuste polinomial, pois os pontos N determinam exclusivamente um polinômio de ordem M ). Em seguida, configure um sistema de equações lineares nos coeficientes polinomiais desejados p k :yi y=f(x) xi i=0,1,…,N M≤N M=N N M pk
O problema dos mínimos quadrados pode ser resolvido organizando as medidas na forma de vetor de matriz:
A solução dos mínimos quadrados gera o vetor de coeficientes polinomiais que minimiza o erro quadrado total no sistema linear acima. A solução pode ser calculada como:[pM,pM−1,…,p0]
Vale a pena notar que a matriz também é conhecida como a pseudo-inversa da matriz A . Você pode usar o vetor do coeficiente polinomial de mínimos quadrados ˜ p para avaliar o polinômio em qualquer outro valor x que desejar.(ATA)−1AT A p~ x
fonte
Ignore o ruído por enquanto.
Dado pontos ( x i , y i x + a ) / ( x + b ) etc.) e você gostaria de encontrar a série de Taylor para esta função g ( x ) . Bem, desenvolvendo a série Taylor para g (n+1 onde x i são números distintos, você pode, como você diz, ajustar um polinômio f ( x ) de grau no máximo n através desses pontos. A interpolação de Lagrange, por exemplo, é um método padrão para isso. Porém, acredita-se que os pontos estejam na curva y = g ( x ) em que g ( x ) não é necessariamente um polinômio (por exemplo, pode ser e x ou ((xi,yi) xi f(x) n y=g(x) g(x) ex (x+a)/(x+b) g(x) na vizinhança de x = 0 , por exemplo, requer conhecimento do valor de g ( 0 ) , bem como dos valores dasderivadas g ( k ) ( x ) = d k g ( x )g(x) x=0 g(0)
emx=0, enquanto tudo o que se sabe são os valores deg(x)emn+1pontosxi. Mesmo se
xi=0para algunsi,para queg(0)seja conhecido, ainda é necessárioestimarg(k)(0)parak=1g(k)(x)=dkg(x)dxk,k=1,2,… x=0 g(x) n+1 xi xi=0 i g(0)
g(k)(0) k=1,2,…
Estimando o valor das derivadas de uma função em x = 0 a partir de seus valores g ( x i ) em pontos selecionados é um problema bem estudado em análise numérica, e as fórmulas a serem usadas estão prontamente disponíveis. O quenãoédescrito em detalhes, ou mais comumente, não é mencionado nas proximidades dessas fórmulas, é que essas fórmulas são obtidasajustando um polinômio h ( x ) = ∑ k h k x k aos pontos conhecidos e estimando g (g(x) x=0 g(xi) h(x)=∑khkxk como h ( k ) (0)=k! h k . g(k)(0) h(k)(0)=k!hk Em outras palavras,
Exemplo: dados pontos ( -3 (−1,y−1),(0,y0),(1,y1)
fonte