當只有匯總統計數據可用時,如何進行估計?
這部分是由以下問題和隨後的討論引起的。
假設觀察到 iid 樣本,. 目標是估計. 但原始樣品不可用。我們所擁有的是樣本的一些統計數據. 認為是固定的。我們如何估算? 在這種情況下,最大似然估計量是多少?
在這種情況下,您可以在以下假設/限制下考慮可能性的ABC近似值(以及MLE的近似值):
**假設。**原始樣本量 $ n $ 是已知的。
這不是一個瘋狂的假設,因為頻率估計量的收斂性取決於樣本量,因此在不知道原始樣本量的情況下無法獲得任意好的估計量。
這個想法是從後驗分佈生成樣本 $ \theta $ 並且,為了產生 MLE 的近似值,您可以使用[1]中的重要性採樣技術或考慮統一先驗 $ \theta $ 在[2]中的合適集合上提供支持。
我將在 [2] 中描述該方法。首先,讓我描述一下 ABC 採樣器。
ABC 採樣器
讓 $ f(\cdot\vert\theta) $ 是生成樣本的模型,其中 $ \theta \in \Theta $ 是一個參數(待估計), $ T $ 是一個統計量(樣本的函數)和 $ T_0 $ 是觀察到的統計量,在 ABC 行話中,這稱為匯總統計量, $ \rho $ 成為一個指標, $ \pi(\theta) $ 先驗分佈 $ \theta $ 和 $ \epsilon>0 $ 一個容忍度。然後,ABC拒絕採樣器可以如下實現。
- 樣本 $ \theta^* $ 從 $ \pi(\cdot) $ .
- 生成樣本 $ \bf{x} $ 大小的 $ n $ 從模型 $ f(\cdot\vert\theta^*) $ .
- 計算 $ T^*=T({\bf x}) $ .
- 如果 $ \rho(T^,T_0)<\epsilon $ , 接受 $ \theta^ $ 作為後面的模擬 $ \theta $ .
該算法從後驗分佈生成一個近似樣本 $ \theta $ 給定 $ T({\bf x})=T_0 $ . 因此,最好的情況是當統計 $ T $ 是足夠的,但可以使用其他統計數據。有關這方面的更詳細說明,請參閱本文。
現在,在一般框架中,如果使用包含 MLE 支持的統一先驗,則最大後驗(MAP) 與最大似然估計 (MLE) 一致。因此,如果您在 ABC 採樣器中考慮適當的均勻先驗,那麼您可以生成其 MAP 與 MLE 一致的後驗分佈的近似樣本。剩下的步驟包括估計這個模式。這個問題已經在 CV 中討論過,例如在“Computationally Effective estimation of multivariate mode”中。
一個玩具例子
讓 $ (x_1,…,x_n) $ 成為一個樣本 $ N(\mu,1) $ 並假設此樣本中唯一可用的信息是 $ \bar{x}=\dfrac{1}{n}\sum_{j=1}^n x_j $ . 讓 $ \rho $ 是歐幾里得度量 $ {\mathbb R} $ 和 $ \epsilon=0.001 $ . 以下 R 代碼顯示瞭如何使用上述方法使用模擬樣本獲得近似 MLE $ n=100 $ 和 $ \mu=0 $ ,樣本大小的後驗分佈 $ 1000 $ ,一個統一的先驗 $ \mu $ 在 $ (-0.3,0.3) $ , 和一個核密度估計器,用於估計後驗樣本的模式 (MAP=MLE)。
# rm(list=ls()) # Simulated data set.seed(1) x = rnorm(100) # Observed statistic T0 = mean(x) # ABC Sampler using a uniform prior N=1000 eps = 0.001 ABCsamp = rep(0,N) i=1 while(i < N+1){ u = runif(1,-0.3,0.3) t.samp = rnorm(100,u,1) Ts = mean(t.samp) if(abs(Ts-T0)<eps){ ABCsamp[i]=u i=i+1 print(i) } } # Approximation of the MLE kd = density(ABCsamp) kd$x[which(kd$y==max(kd$y))]
正如你所看到的,使用一個小的容差,我們得到了一個非常好的 MLE 近似值(在這個簡單的例子中,它可以從統計數據中計算出來,因為它是足夠的)。重要的是要注意匯總統計量的選擇至關重要。分位數通常是匯總統計量的不錯選擇,但並非所有選擇都能產生良好的近似值。可能是匯總統計信息不是很豐富,然後近似的質量可能很差,這在 ABC 社區中是眾所周知的。