最小绝对偏差之和(


15

我有一个数据集并且想要找到参数m,以使其最小化和k i = 1 | m x i | 那是x1,x2,,xkm

i=1k|mxi|.

minmi=1k|mxi|.

2
您能详细说明一下吗?
Geoff Oxberry 2012年

在那种情况下,解决方案难道不是最大值和最小值之间的中点吗?
保罗

@Paul中位数可能会使总和最小化,但想知道如何通过分析来完成,尤其是l1最小化
mayenew 2012年

@kadu是正确的,中位数是解决方案。分析计算中位数是微不足道的。排序然后取中间值。
David Ketcheson,2012年

Answers:


22

可能您要求证明中位数可以解决问题?好吧,可以这样做:

物镜是分段线性的,因此除点。某点m x i时物镜的斜率是多少?那么,斜率是映射的斜坡和中号| m x j | 这是+ 1(对于m > x j)或1(对于m < x j)。因此,斜率表示有多少个x i小于mm=ximxim|mxj|+1m>xj1m<xjxim。你看到的斜率是零,如果有一样多的更小和大于(对于和偶数X 的)。如果有奇数个X 的则斜率是- 1留下了‘middlest’之一和+ 1个的是正确的,因此middlest一个是最小。ximxixi1+1


16

将该问题推广到多个维度,称为几何中值问题。正如David指出的那样,中位数是一维情况的解决方案。在那里,您可以使用中位数查找选择算法,该算法比排序更有效。排序为而选择算法为O n ; 仅当需要多个选择时,排序才更有效率,在这种情况下,您可以(昂贵)排序一次,然后从排序列表中重复选择。O(nlogn)O(n)

几何中位数问题的链接提到了多维案例的解决方案。


6

就中位数而言,显式解决方案是正确的,但是响应mayenew的评论,这是另一种方法。

1

以下LP公式适用于未知的给定运动zi,m

一世ñž一世
ž一世-X一世
ž一世X一世-

明显地 ž一世 必须相等 |X一世-| 因此,这要求将误差的绝对值之和最小化。


2

证明这一点的过分凸分析方法只是取次梯度。实际上,这等效于其他一些涉及斜率的答案中使用的推理。

优化问题是凸的(因为目标是凸的并且没有约束。)而且, |-X一世|

-1如果 <X一世

[-1,1]如果 =X一世

+1,如果 >X一世

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 m is the median of x1,xk.


0

We're basically after:

argminmi=1N|mxi|

One should notice that d|x|dx=sign(x) (Being more rigorous would say it is a Sub Gradient of the non smooth L1 Norm function).
Hence, deriving the sum above yields i=1Nsign(mxi).
This equals to zero only when the number of positive items equals the number of negative which happens when m=median{x1,x2,,xN}.

One should notice that the median of a discrete group is not uniquely defined.
Moreover, it is not necessarily an item within the group.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.