Schätzen Sie die Taylorreihenkoeffizienten aus Stichproben einer Funktion


10

Angenommen, ich habe Messungen einer Funktion , die bei x i mit etwas Rauschen abgetastet wurden und durch eine Taylorreihenerweiterung angenähert werden könnten. Gibt es eine akzeptierte Methode, um die Koeffizienten für diese Erweiterung aus meinen Messungen zu schätzen?y=y(x)xi

Ich könnte die Daten an ein Polynom anpassen, aber das ist nicht ganz richtig, denn für eine Taylor-Reihe sollte die Approximation besser werden, je näher Sie einem zentralen Punkt sind, sagen wir x = 0. Nur das Anpassen eines Polynoms behandelt jeden Punkt gleich.

Ich könnte auch die verschiedenen Ordnungen von Ableitungen an meinem Expansionspunkt schätzen, aber dann muss ich Entscheidungen darüber treffen, welche Differenzierungsfilter verwendet werden sollen und wie viele Filterkoeffizienten für jeden. Müssten die Filter für die verschiedenen Ableitungen irgendwie zusammenpassen?

Kennt jemand etablierte Methoden dafür? Erklärungen oder Verweise auf Beiträge sind willkommen.

KLÄRUNG

Als Antwort auf den folgenden Kommentar ist mein Sampling ein rechteckiges Fenster aus einer unendlichen Funktion, das nicht unbedingt bandbegrenzt ist, aber keine starken Hochfrequenzkomponenten aufweist. Um genauer zu sein, messe ich die Varianz eines Schätzers (Messung der Verschiebung in einem medizinischen Ultraschallsignal) als Funktion eines Parameters des Schätzers (Grad der Verformung oder Dehnung des darunter liegenden Gewebes). Ich habe eine theoretische Taylor-Reihe für die Varianz als Funktion der Verformung und möchte sie mit dem vergleichen, was ich aus der Simulation erhalte.

Ein ähnliches Spielzeugbeispiel könnte sein: Angenommen, Sie haben eine Funktion wie ln (x), die in Intervallen in x mit etwas Rauschen abgetastet wird. Sie wissen nicht, um welche Funktion es sich wirklich handelt, und Sie möchten die Taylor-Reihe um x = 5 schätzen. Die Funktion ist also flüssig und ändert sich langsam für eine Region um den Punkt, an dem Sie interessiert sind (z. B. 2 <x <8), ist aber außerhalb der Region nicht unbedingt gut.

Die Antworten waren hilfreich, und wahrscheinlich ist eine Art Polynomanpassung der kleinsten Quadrate der richtige Weg. Was eine geschätzte Taylor-Reihe von einer normalen Polynomanpassung unterscheiden würde, ist jedoch, dass Sie in der Lage sein sollten, Terme höherer Ordnung zu rasieren, und dass das Polynom immer noch die ursprüngliche Funktion annähert, nur innerhalb eines kleineren Bereichs um Ihren Anfangspunkt.

Vielleicht besteht der Ansatz darin, eine lineare Polynomanpassung nur mit Daten nahe dem Anfangspunkt durchzuführen, gefolgt von einer quadratischen Anpassung mit etwas mehr Daten, einer kubischen Anpassung mit etwas mehr Daten usw.


Einige Fragen (die möglicherweise relevant sind oder nicht): Meinen Sie mit Abtastung, dass die Funktion bandbegrenzt ist / war und unter einer bestimmten Fs / 2-Frequenz liegt? Sind Ihre Samples ein rechteckiges Fenster einer unendlichen Funktion, einer Wiederholungsfunktion oder der vollständigen Funktion?
hotpaw2

Wie Dilip in seiner Antwort hervorhob, setzt die Verwendung einer Taylor-Reihenerweiterung voraus, dass Sie an allen Stichprobenpunkten über Kenntnisse über die Ableitung der Funktion verfügen. Ich nehme an, Sie könnten Ihren theoretischen Ausdruck für die Ableitungen von , aber das verringert die Nützlichkeit der Verwendung einer unabhängigen Simulation zur Bestätigung Ihrer Theorie etwas. Um das Verhalten der Taylor-Reihe in Bezug auf Terme höherer Ordnung am besten zu emulieren, könnte ein Ansatz wie der von Ihnen vorgeschlagene unter Verwendung unterschiedlicher Ordnungen von Polynomanpassungen nützlich sein. y(x)
Jason R

Antworten:


8

Anstelle einer exakten Polynomanpassung können Sie auch eine Anpassung der kleinsten Quadrate verwenden , bei der das Polynom der angegebenen Reihenfolge ermittelt wird, das den gesamten quadratischen Fehler zwischen der Anpassung und den gemessenen Paaren minimiert . Dies kann dazu beitragen, die Auswirkungen von Geräuschen auf die Passform zu verringern.(xi,yi)

Wählen Sie bei gegebenen Messungen einer Funktion y = f ( x ) bei Domänenwerten x i ( i = 0 , 1 , , N ) eine Polynomordnung M N (wenn M = N , dann sind Sie genau Polynomanpassung, da die N Punkte eindeutig ein Polynom M- ter Ordnung bestimmen ). Stellen Sie dann ein Gleichungssystem auf, das in den gewünschten Polynomkoeffizienten p k linear ist :yiy=f(x)xii=0,1,,NMNM=NNMpk

yi=pMxiM+pM1xiM1++p1xi+p0,i=0,1,,N

Das Problem der kleinsten Quadrate kann gelöst werden, indem die Messungen in Matrixvektorform angeordnet werden:

A=[x0Mx0M1x01x1Mx1M1x11xNMxNM1xN1],y=[y0y1yN]

Die Lösung der kleinsten Quadrate erzeugt den Vektor der Polynomkoeffizienten [pM,pM1,,p0]

p~=(ATA)1ATy

(ATA)1ATAp~x


1
Bei Abszissen mit gleichem Abstand unterscheidet sich dies nicht von der Anwendung der Savitzky-Golay-Glättung auf Ihre Daten.

Plus 1 für eine schöne Antwort. LSE ist in der Tat sehr allgegenwärtig.
Tarin Ziyaee

6

Ignorieren Sie das Geräusch vorerst.

n+1(xi,yi)xif(x)ny=g(x)g(x)ex(x+a)/(x+b)g(x)g(x)x=0g(0) g(k)(x)=dkg(x)dxk,k=1,2,x=0g(x)n+1xixi=0ig(0) g(k)(0)k=1,2,

g(x)x=0g(xi)h(x)=khkxkg(k)(0)h(k)(0)=k!hk

n+1(xi,g(xi))g(x)g(x)nh(x)n+1

xi0xim<nx=0000

3(1,y1),(0,y0),(1,y1)

f(x)=y1x(x1)2y0(x21)+y1x(x+1)2=y0+y1y12x+y12y0+y12x2
xx2g(x)g(1)=y1,g(0)=y0,g(1)=y1
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.