У мене є набір даних і я хочу знайти параметр m таким, щоб він мінімізував суму k ∑ i = 1 | m - x i | . тобто
У мене є набір даних і я хочу знайти параметр m таким, щоб він мінімізував суму k ∑ i = 1 | m - x i | . тобто
Відповіді:
Напевно, ви просите доказ того, що медіана вирішує проблему? Ну, це можна зробити так:
Ціль є кусочно лінійною і, отже, диференційованою, за винятком точок . Який нахил цілі є деякою точкою m ≠ x i ? Ну, нахил - це сума схилів відображень m ↦ | m - x j | і це або + 1 (для m > x j ), або - 1 (для m < x j ). Отже, нахил вказує, на скільки х i менших m (for and even number of 's). If there is an odd number of 's then the slope is left of the "middlest" one and right of it, hence the middlest one is the minimum.
Узагальнення цієї задачі на множинні виміри називається геометричною серединною задачею . Як вказує Девід, медіана - це рішення для одноденного випадку; там ви можете використовувати алгоритми вибору середнього пошуку , які є більш ефективними, ніж сортування. Сорти є тоді як алгоритми відбору є ; сортування є більш ефективними лише в тому випадку, якщо потрібно кілька виборів, і в цьому випадку ви можете сортувати (дорого) один раз, а потім повторно вибирати зі списку відсортованих.
Посилання на геометричну серединну задачу згадує рішення для багатовимірних випадків.
The explicit solution in terms of the median is correct, but in response to a comment by mayenew, here's another approach.
It is well-known that minimization problems generally, and the posted problem in particular, can be solved by linear programming.
The following LP formulation will do for the given exercise with unknowns :
Clearly must equal at the minimum, so this asks the sum of absolute values of errors to be minimized.
The over-powered convex analysis way to show this is just take subgradients. In fact this is equivalent to the reasoning used in some of the other answers involving slopes.
The optimization problem is convex (because the objective is convex and there are no constraints.) Also, the subgradient of is
-1 if
[-1,1] if
+1 if .
Since a convex function is minimized if and only if it's subgradient contains zero, and the subgradient of a sum of convex functions is the (set) sum of the subgradients, you get that 0 is in the subgradient if and only if is the median of .
We're basically after:
One should notice that (Being more rigorous would say it is a Sub Gradient of the non smooth Norm function).
Hence, deriving the sum above yields .
This equals to zero only when the number of positive items equals the number of negative which happens when .
One should notice that the median
of a discrete group is not uniquely defined.
Moreover, it is not necessarily an item within the group.