Minimierung der Summe der absoluten Abweichung (


15

Ich habe einen Datensatz x1,x2,,xk und möchte den Parameter m so finden, dass er die Summe minimiert m - x i | .

i=1k|mxi|.
das ist

minmi=1k|mxi|.

2
Könnten Sie etwas näher darauf eingehen?
Geoff Oxberry

Wäre die Lösung dann nicht der Mittelpunkt zwischen Maximal- und Minimalwert?
Paul

@Paul der Median kann die Summe minimieren, möchte aber wissen, wie dies analytisch erfolgen kann, insbesondere die l1-Minimierung
möglicherweise am

@kadu das stimmt, der Median ist die Lösung. Das analytische Berechnen des Medians ist trivial; Einfach sortieren und dann den mittleren Wert nehmen.
David Ketcheson

Antworten:


22

Möglicherweise fragen Sie nach einem Beweis, dass der Median das Problem löst? Nun, das kann so gemacht werden:

Das Objektiv ist stückweise linear und daher mit Ausnahme der Punkte differenzierbar . Was ist die Steigung des Objektivs ist ein Punkt m x i ? Nun, die Steigung ist die Summe der Steigungen der Abbildungen m | m - x j | und dies ist entweder + 1 (für m > x j ) oder - 1 (für m < x j ). Daher gibt die Steigung an, wie viele x i kleiner als m sindm=ximxim|mxj|+1m>xj1m<xjxim. Sie sehen, dass die Steigung Null ist, wenn es gleich viele kleinere und größere als m gibt (für und gerade Anzahl von x i ). Wenn es eine ungerade Anzahl von x i gibt, ist die Steigung - 1 links von der "mittelsten" und + 1 rechts davon, daher ist die mittelste die minimale.ximxixi1+1


16

Eine Verallgemeinerung dieses Problems auf mehrere Dimensionen wird als geometrisches Medianproblem bezeichnet . Wie David betont, ist der Median die Lösung für den 1-D-Fall; Dort könnten Sie Median-Finding- Auswahlalgorithmen verwenden , die effizienter sind als das Sortieren. Sortierungen sind während Auswahlalgorithmen O ( n ) sind ; Sortierungen sind nur dann effizienter, wenn mehrere Auswahlen erforderlich sind. In diesem Fall können Sie einmal (teuer) sortieren und dann wiederholt aus der sortierten Liste auswählen.O(nlogn)O(n)

Der Link zum geometrischen Medianproblem nennt Lösungen für mehrdimensionale Fälle.


6

Die explizite Lösung in Bezug auf den Median ist korrekt, aber als Reaktion auf einen Kommentar von mayenew ist hier ein anderer Ansatz.

Es ist bekannt , dass Minimierungsprobleme im Allgemeinen und das entsandte Problem kann insbesondere durch lineare Programmierung gelöst werden.1

Die folgende LP-Formulierung reicht für die gegebene Übung mit Unbekannten :zi,m

so dass: z im - x i z ix i - m

minzi
zimxi
zixim

Klar muss ich gleich sein | x i - m | im Minimum, so dass dies die Summe der absoluten Werte von Fehlern zu minimieren fordert.zi|xim|


2

Die überlastete konvexe Analyse, mit der dies gezeigt werden kann, erfordert lediglich Subgradienten. Tatsächlich entspricht dies der Argumentation, die in einigen anderen Antworten verwendet wurde, die Steigungen betrafen.

Das Optimierungsproblem ist konvex (da das Ziel konvex ist und keine Einschränkungen bestehen). Außerdem ist der Subgradient von ist|mxi|

-1 wenn m<xi

[-1,1] wenn m=xi

+1 wenn .m>xi

mx1,xk


0

argminmi=1N|mxi|

d|x|dx=sign(x)L1
i=1Nsign(mxi)
m=median{x1,x2,,xN}

Man sollte beachten, dass die medianeiner diskreten Gruppe nicht eindeutig definiert ist.
Darüber hinaus ist es nicht unbedingt ein Element innerhalb der Gruppe.

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.