为什么最大似然估计量对异常值是可疑的?

机器算法验证 最大似然 异常值 强大的
2022-03-18 06:21:57

我是统计新手,目前正在学习 abot MLE。

我读过的一些论文:Robust Graph Embedding with Noisy Link Weights提到 MLE 可能会污染数据,但没有进一步提及。

因此,我想通过清晰详细的解释来了解其原因。

2个回答

测量并不总是显示理想的行为,并且用于最大似然估计 (MLE) 的假定基础分布通常不是测量的分布。

测量不理想

例如,在上图中,测量值的分布是两个高斯分布 25%的混合σ=10和 75%σ=1.

(因此无论出于何种原因分布不理想,要么是因为总体不理想,要么是因为测量不完美)

这个变化很大的分量会大大增加估计器的抽样方差(和不准确/误差)。

除了使用 MLE(在简单的情况下,如估计总体的平均值,归结为样本的平均值/平均值),人们可以使用从样本中过滤一些极值的统计量。这将大大减少统计量的变化。然后,这种替代统计对异常值更稳健,对分布中具有极值的小部分更稳健,如果它们没有得到“照顾”,则会增加方差。

具有上述分布的示例。让我们考虑一个大小为 10 的样本,我们将 MLE 计算为样本的平均值,而备选方案仅考虑中间 6 个值的平均值。让我们看看它们在分布/错误方面有何不同:

差异证明

### function to compute estimate in two different ways
get_sample = function() {
  ### geneare data
  n = 10
  sigma = 10^rbinom(n,1,0.25) ### mixture distribution 0.25 
          ### part sigma = 10 and 0.75 part sigma = 1 
  x = rnorm(n,0,sigma)
  
  ### compute estimates
  est1 = mean(x)
  est2 = mean(x[order(x)][3:8]) ### use only values 3 to 8 
                                ### (deleting outer 20%)
  return(c(est1,est2))
}

### compute the estimates
set.seed(1)
x <- replicate(10^4,get_sample()) 

### plot the histograms
layout(matrix(1:2,2))
hist(x[1,], breaks = seq(-10,10,0.1), xlim = c(-6,6), 
            freq = 0, xlab = "estimator value", main =  
            "distribution of estimated based on sample mean")
hist(x[2,], breaks = seq(-10,10,0.1), xlim = c(-6,6), 
        freq = 0, xlab = "estimator value", 
        main = "distribution of estimator based on mean of 6 
                 middle values ")

如果理想条件为真,MLE 通常是具有最低方差或充分执行的估计量。但是,当假设的分布(这种低方差陈述所基于的)仅受到轻微扰动(但具有较大的值)时,这可能已经导致 MLE 的方差很大。

注意 1:这还取决于您拥有的 MLE 类型。例如,当我们估计一个分布的均值并且该分布是高斯分布时,MLE 就是样本的均值,正如您在上面的示例中看到的,均值对于小扰动不是很稳健。但是当分布是拉普拉斯分布时,MLE 是样本的中值,这将对小扰动更加稳健。

注 2:在上面的示例中,我们只是从样本中排除了底部和顶部 20%。但稳健的估计器并不是那么简单。这是一个复杂而庞大的领域。例如,如果我们只有正异常值,那么我们丢弃底部会导致估计有偏差怎么办?我们应该丢弃多少?构建一个健壮的估计器有很多考虑因素(有时它有点艺术而不是科学,但这个例子展示了它为什么通常有效的想法)。

让我们考虑一个从小样本数据集中计算均值 MLE 的简单示例:X={1,2,5,10,4,8}.

假设数据是使用具有速率的泊松分布生成的λ我们的目标是找到λ.

现在,可能性L(λ|x1,x2,,xn)=i=1nP(X=xi)=i=1neλλxixi!

st,对数似然l(λ)=i=1n(λ)+xiln(λ)ln(xi!)=nλ+ln(λ)i=1nxii=1nln(xi!)

lλ=n+i=1nxiλ=0最多

λ^MLE=i=1nxin

这里,n=6,λ^MLE=5,即样本均值。

现在,让我们考虑一个异常点1000被添加到数据集中。现在,MLE 更改为147.1429,这显然过拟合数据中的噪声。