回帰分析

単回帰、重回帰、ロジスティック回帰、一般化線形モデルなど統計検定準1級レベルの回帰分析手法を学習します。

ロバスト回帰の実装詳細 レベル1

反復重み付き最小二乗法(IRLS)を用いたロバスト回帰において、Tukey二重指数関数を使用する。あるデータ点の残差が $r = 3.0$、調整パラメータが $c = 4.685$ のとき、この点の重み $w$ を小数第3位まで求めよ。

解説
解答と解説を表示

反復重み付き最小二乗法(IRLS)とTukey二重指数関数

反復重み付き最小二乗法(Iteratively Reweighted Least Squares, IRLS)は、ロバスト回帰において外れ値の影響を抑制する重要な手法です。

IRLSの基本原理

IRLSは以下の手順で重みを更新しながら推定:

  1. 初期推定:通常の最小二乗法で初期値を設定
  2. 残差計算:現在の推定値による残差を計算
  3. 重み更新:残差に基づいて各観測値の重みを更新
  4. 重み付き回帰:重みを用いて係数を再推定
  5. 収束判定:収束するまで2-4を反復

Step 1: Tukey二重指数関数の定義

Tukey二重指数関数(Tukey's biweight function)は:

$$\\rho(u) = \\begin{cases}\\frac{c^2}{6}\\left[1 - \\left(1 - \\left(\\frac{u}{c}\\right)^2\\right)^3\\right] & \\text{if } |u| \\leq c \\\\\\frac{c^2}{6} & \\text{if } |u| > c\\end{cases}$$

対応する$\\psi$関数($\\rho$の微分):

$$\\psi(u) = \\begin{cases}u\\left(1 - \\left(\\frac{u}{c}\\right)^2\\right)^2 & \\text{if } |u| \\leq c \\\\0 & \\text{if } |u| > c\\end{cases}$$

Step 2: 重み関数の導出

IRLSでは重み$w(u) = \\frac{\\psi(u)}{u}$を使用:

$$w(u) = \\begin{cases}\\left(1 - \\left(\\frac{u}{c}\\right)^2\\right)^2 & \\text{if } |u| \\leq c \\\\0 & \\text{if } |u| > c\\end{cases}$$

Tukey二重指数の特徴

  • 完全拒絶:$|u| > c$で重みが0になる
  • 滑らかな減衰:閾値までは連続的に重みが減少
  • 効率性:正規分布で約95%の効率性
  • 破壊点:約50%の外れ値まで頑健

Step 3: 与えられた値での計算

与えられた条件:

  • 残差:$r = 3.0$
  • 調整パラメータ:$c = 4.685$

$|r| = 3.0 < c = 4.685$なので、重み関数を適用:

$$w(3.0) = \\left(1 - \\left(\\frac{3.0}{4.685}\\right)^2\\right)^2$$

Step 4: 段階的計算

1. 比率の計算:

$$\\frac{r}{c} = \\frac{3.0}{4.685} = 0.6405$$

2. 比率の2乗:

$$\\left(\\frac{r}{c}\\right)^2 = (0.6405)^2 = 0.4102$$

3. カッコ内の計算:

$$1 - \\left(\\frac{r}{c}\\right)^2 = 1 - 0.4102 = 0.5898$$

4. 重みの計算:

$$w = (0.5898)^2 = 0.3479$$

調整パラメータcの選択

一般的なパラメータ値:

関数効率性95%のc値効率性85%のc値
Huber1.3451.28
Tukey二重指数4.6853.44
Hampel複数パラメータ複数パラメータ

Step 5: IRLSアルゴリズムの詳細

Algorithm: IRLS for Robust Regression

  1. 初期化:$\\hat{\\boldsymbol{\\beta}}^{(0)}$ を最小二乗推定量で設定
  2. 反復処理($t = 1, 2, \\ldots$まで):
    • 残差計算:$r_i^{(t-1)} = y_i - \\mathbf{x}_i^T \\hat{\\boldsymbol{\\beta}}^{(t-1)}$
    • スケール推定:$\\hat{\\sigma}^{(t-1)} = \\text{MAD}(r_i^{(t-1)}) / 0.6745$
    • 標準化残差:$u_i^{(t-1)} = r_i^{(t-1)} / \\hat{\\sigma}^{(t-1)}$
    • 重み計算:$w_i^{(t-1)} = w(u_i^{(t-1)})$
    • 重み付き最小二乗:$\\hat{\\boldsymbol{\\beta}}^{(t)} = (\\mathbf{X}^T \\mathbf{W}^{(t-1)} \\mathbf{X})^{-1} \\mathbf{X}^T \\mathbf{W}^{(t-1)} \\mathbf{y}$
  3. 収束判定:$\\|\\hat{\\boldsymbol{\\beta}}^{(t)} - \\hat{\\boldsymbol{\\beta}}^{(t-1)}\\| < \\epsilon$

Step 6: 他のロバスト関数との比較

ロバスト関数の比較

関数ρ関数重み関数w(u)特徴
Huber二次-線形$\\min(1, c/|u|)$バランス重視
Tukey滑らかな再降下$(1-(u/c)^2)^2$高ロバスト性
Hampel3分割線形複雑調整可能

Step 7: 収束と安定性

収束条件:

  • 係数収束:$\\|\\hat{\\boldsymbol{\\beta}}^{(t)} - \\hat{\\boldsymbol{\\beta}}^{(t-1)}\\|_2 < 10^{-6}$
  • 目的関数収束:$|\\sum \\rho(r_i^{(t)}) - \\sum \\rho(r_i^{(t-1)})| < 10^{-8}$
  • 最大反復数:通常50-100回

数値安定性:

  • スケール推定:MAD(中央絶対偏差)による頑健な分散推定
  • 初期値選択:高破壊点推定量(LMS、LTS等)の使用
  • 特異値対策:共線性検出と除去
問題 1/10
カテゴリ一覧に戻る