richtig Gewichten Biweight-Alg < Sonstiges < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) überfällig | Datum: | 20:12 Do 20.11.2014 | Autor: | Lueger |
Hallo,
ich habe Messwerte und möchte da eine Funktion bestmöglich "reinlegen". Da es Messwertausreiser gibt, möchte ich auf den Biweight Algorithmus zurückgreifen.
Ich habe ihn hier gefunden:
google books seite 89
Ich wollte das gerade mal ausprobieren und habe mir pseudomesswerte erzeugt, mir von dem Program eine Kurve fitten lassen (Matlab) und die Gewichte nach dem Algorithmus berechnet. Diese sind stets kleiner eins.
Wie kann ich jetzt richtig gewichten? Ich habe einfach nur die alten Messwerte mit dem Gewicht multipliziert, was aber falsch sein muss, denn bei jedem Iterationsschritt wird der Wert kleiner und ob es ein Ausreiser nach oben oder unten ist wird nicht berücksichtigt.
Kann mir da einer helfen?
Wenn das Gewicht auch größer eins sein könnte (wird per Def. ausgeschlossen) könnte die Multiplikation Sinn machen.
Vielen Dank.
Liebe Grüße
Lueger
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:11 Sa 22.11.2014 | Autor: | Lueger |
Hallo,
ich glaube ich habe es verstanden.
Ich habe verschiedene Messwerte, mit ausreißern.
Als nächstes wird versucht eine Funktion durch die Messwerte zu legen.
Der Algorithmus berechnet mir Gewichte, je nach dem wie gut die Messwerte auf die angenomme Funktion passen.
Diese Gewichte werden für die nächste Iteration verwendet um eine bessere Funktion zu finden (da Ausreißer z.B. eliminiert werden, Gewicht null).
Mir ist nicht klar wie die Gewichte verwendet werden.
Allerdings kann ich die in Matlab mit Polyfit (ich glaube least mean square) verwursten. Verstandne habe ich es nicht, liegt aber wohl daran, dass ich mich nicht mit den Optimierungsverfahren beschäftigt habe.
Vielen lieben Dank.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 18:58 Sa 22.11.2014 | Autor: | Marcel |
Hallo lueger,
ich hoffe, Du luegst nicht.
> Hallo,
>
> ich glaube ich habe es verstanden.
> Ich habe verschiedene Messwerte, mit ausreißern.
> Als nächstes wird versucht eine Funktion durch die
> Messwerte zu legen.
> Der Algorithmus berechnet mir Gewichte, je nach dem wie
> gut die Messwerte auf die angenomme Funktion passen.
> Diese Gewichte werden für die nächste Iteration
> verwendet um eine bessere Funktion zu finden (da Ausreißer
> z.B. eliminiert werden, Gewicht null).
>
> Mir ist nicht klar wie die Gewichte verwendet werden.
> Allerdings kann ich die in Matlab mit Polyfit (ich glaube
> least mean square) verwursten. Verstandne habe ich es
> nicht, liegt aber wohl daran, dass ich mich nicht mit den
> Optimierungsverfahren beschäftigt habe.
Ich kenne ja immer noch Deinen Algorithmus nicht. Aber ein Hinweis zum
fitten:
Matlab ist da doch - ohne extra Toolboxen - soweit ich weiß sehr begrenzt.
Du kannst aber einfach mal gucken, wie das in Octave aussieht, oder aber,
was ich für's "fitten" am Besten finde:
Einfach mal Gnuplot (freeware) benutzen!
(Oder Scilab!)
Gruß,
Marcel
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 20:20 Sa 22.11.2014 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|