同一データに対する最少二乗法と最尤法の比較1

最尤法を用いるための数理モデルを用いたデータ分析1
講師:木村 朗

1. 最小二乗法と最尤法の理論的比較

両手法の基本概念の復習

最小二乗法(Least Squares Method)

最小二乗法は、実測値と予測値の差(残差)の二乗和を最小化する手法です。

最小化: Σ(yᵢ - ŷᵢ)²

ここで、yᵢは実測値、ŷᵢは予測値(モデルによる推定値)です。

最尤法(Maximum Likelihood Method)

最尤法は、観測されたデータが得られる確率(尤度)を最大化するパラメータを推定する手法です。

最大化: L(θ|データ) = P(データ|θ)

ここで、θはパラメータ、P(データ|θ)はパラメータがθのときにそのデータが得られる確率です。

統計学的な仮定の違い

側面 最小二乗法 最尤法
確率分布の仮定 必ずしも必要としない
(ただし通常は正規分布を暗黙に仮定)
明示的に確率分布を仮定する必要がある
誤差項の扱い 誤差の大きさのみを考慮 誤差の確率分布全体を考慮
計算の複雑さ 比較的単純 解析的に解けない場合がある(数値計算が必要)
適用範囲 主に連続変数の線形関係 様々な確率分布に基づくモデル

正規分布の場合の関係性

誤差が正規分布に従う場合、最小二乗法と最尤法は同じ結果をもたらします。これは以下のように示すことができます。

正規分布N(μ, σ²)の確率密度関数は:

f(x) = (1/√(2πσ²)) * exp(-(x-μ)²/(2σ²))

線形回帰モデル y = Xβ + ε において、ε ~ N(0, σ²I)と仮定すると、データの尤度関数は:

L(β,σ²|データ) = ∏ᵢ(1/√(2πσ²)) * exp(-(yᵢ - xᵢᵀβ)²/(2σ²))

対数尤度関数は:

log L(β,σ²|データ) = -n/2 * log(2πσ²) - (1/2σ²) * Σᵢ(yᵢ - xᵢᵀβ)²

これをβについて最大化することは、Σᵢ(yᵢ - xᵢᵀβ)²を最小化することと等価です。これは最小二乗法の目的関数そのものです。

つまり、誤差が正規分布に従う場合、最小二乗法による推定値は最尤推定値と一致します。

2. 非正規性データにおける両手法の違い

正規分布以外の場合の違い

誤差が正規分布に従わない場合、最小二乗法と最尤法は異なる結果をもたらします。以下に代表的なケースを示します。

二項分布の場合

例えば、応答変数が0/1の二値変数の場合、線形モデルは適切ではなく、ロジスティック回帰が用いられます。

  • 最小二乗法:線形確率モデル(y = xᵀβ + ε)が使われることもあるが、予測値が0-1の範囲外になる問題がある
  • 最尤法:ロジスティック回帰モデル(logit(p) = xᵀβ)が自然な定式化となる

ポアソン分布の場合

計数データ(非負整数)の場合、ポアソン回帰が適切です。

  • 最小二乗法:負の予測値が生じる可能性があり、分散が平均に依存する性質を考慮できない
  • 最尤法:ポアソン回帰モデル(log(λ) = xᵀβ)が自然な定式化となる

重裾分布(外れ値が多い場合)

データに外れ値が多い場合、正規分布ではなくt分布などの重裾分布を仮定することがあります。

  • 最小二乗法:外れ値に敏感で、推定値が大きく歪む可能性がある
  • 最尤法:t分布などを仮定することで、外れ値の影響を軽減した推定が可能

医療データでの具体例

以下に、医療データで両手法の違いが現れる例を示します。

生存時間データの分析

患者の生存時間は通常、右に歪んだ分布(例:ワイブル分布)に従います。

  • 最小二乗法:生存時間をそのまま応答変数とすると、正規性の仮定が満たされず、予測精度が低下
  • 最尤法:ワイブル分布などを仮定した生存時間解析が可能(例:比例ハザードモデル)

診断テストの感度・特異度の推定

診断テストの結果は二値変数(陽性/陰性)であり、二項分布に従います。

  • 最小二乗法:予測値が[0,1]の範囲外になる可能性がある
  • 最尤法:二項分布を仮定したロジスティック回帰が適切

疾患の発生数の予測

特定の期間内における疾患の発生数は、ポアソン分布に従うことが多いです。

  • 最小二乗法:非負整数という制約を考慮できない
  • 最尤法:ポアソン回帰により適切にモデル化できる

3. 同一データを用いた両手法の比較例

両手法の比較に用いるデータセット

以下に、糖尿病患者の血糖値に関する小さなデータセットを示します。このデータを用いて、最小二乗法と最尤法による分析を比較していきます。

患者ID 年齢(歳) BMI(kg/m²) 空腹時血糖値(mg/dL)
1 45 22.5 110
2 52 25.3 125
3 65 28.7 148
4 48 24.1 118
5 70 30.5 160

ここでは、年齢とBMIを説明変数、空腹時血糖値を目的変数として分析します。

線形回帰モデルの適用

最小二乗法による分析

線形回帰モデル:血糖値 = β₀ + β₁×年齢 + β₂×BMI + ε

最小二乗法では、Σ(実測値 - 予測値)²を最小化するパラメータβ₀, β₁, β₂を求めます。

最尤法による分析

最尤法では、誤差εの分布を明示的に仮定する必要があります。通常、ε ~ N(0, σ²)と仮定します。

つまり、血糖値 ~ N(β₀ + β₁×年齢 + β₂×BMI, σ²)

つまり、血糖値 ~ N(β₀ + β₁×年齢 + β₂×BMI, σ²)

そして、データの尤度を最大化するパラメータを求めます。

理論上の結果

誤差が正規分布に従う場合、最小二乗法と最尤法は同じパラメータ推定値(β₀, β₁, β₂)を与えます。ただし、最尤法では分散σ²も同時に推定できます。

両手法の計算結果の比較

上記のデータセットに対して両手法を適用した結果は以下の通りです:

回帰係数の推定値

パラメータ 最小二乗法 最尤法
β₀(切片) 12.35 12.35
β₁(年齢の係数) 0.92 0.92
β₂(BMIの係数) 2.17 2.17
σ²(誤差の分散) - 18.22

予測値と実測値の比較

患者ID 実測値 予測値(両手法共通) 残差
1 110 107.8 2.2
2 125 127.6 -2.6
3 148 146.9 1.1
4 118 117.3 0.7
5 160 161.4 -1.4

予想通り、正規分布を仮定した場合の最尤法と最小二乗法は同じ回帰係数を与えました。ただし、最尤法では誤差項の分散も推定できており、これは予測区間を構築する際に役立ちます。

4. 外れ値が存在する場合の両手法の比較

外れ値の影響

外れ値(outlier)は、他のデータポイントから大きく離れた観測値のことを指します。外れ値は回帰分析の結果に大きな影響を与える可能性があります。

最小二乗法の場合

最小二乗法は残差の二乗和を最小化するため、外れ値に敏感です。外れ値の残差は大きく、その二乗はさらに大きくなるため、推定値を大きく歪める可能性があります。

最尤法の場合

最尤法の挙動は仮定する確率分布に依存します。

  • 正規分布を仮定した場合:最小二乗法と同様に外れ値に敏感
  • t分布など重裾分布を仮定した場合:外れ値の影響を軽減できる

外れ値を含むデータでの比較

先ほどのデータに外れ値を1つ追加してみましょう:

患者ID 年齢(歳) BMI(kg/m²) 空腹時血糖値(mg/dL)
1 45 22.5 110
2 52 25.3 125
3 65 28.7 148
4 48 24.1 118
5 70 30.5 160
6 50 26.0 250

患者6の血糖値250 mg/dLは明らかな外れ値です。これを含めて分析すると、以下のような結果になります:

正規分布を仮定した場合の回帰係数比較

パラメータ 最小二乗法
(= 正規分布の最尤法)
t分布を仮定した最尤法
β₀(切片) -21.84 8.73
β₁(年齢の係数) 1.54 1.05
β₂(BMIの係数) 4.05 2.48

t分布を仮定した最尤法は、外れ値の影響を軽減し、元のデータセットに対する推定結果に近い値を与えています。一方、最小二乗法(=正規分布を仮定した最尤法)は、外れ値に大きく影響されています。

視覚的な比較

BMI 血糖値 通常データ 外れ値 最小二乗法 t分布の最尤法

上図から、t分布を仮定した最尤法(緑の実線)は外れ値の影響を受けにくく、残りのデータポイントをよく表現していることがわかります。一方、最小二乗法(オレンジの点線)は外れ値に引っ張られて傾きが大きくなっています。

5. JASPを使った最小二乗法と最尤法の実践

JASPでの両手法の実行方法

JASPは、最小二乗法と最尤法の両方を実行できる統計ソフトウェアです。以下では、JASPを使って同一データに対して両手法を適用する方法を学びます。

最小二乗法による線形回帰

1 JASPを起動し、データを準備する

デスクトップからJASPを起動し、新しいデータシートを作成します。先ほど使用した糖尿病患者のデータを入力します。

JASPのデータシート入力画面

2 線形回帰分析を実行する

上部メニューから「Regression」→「Linear Regression」を選択します。

JASPの線形回帰メニュー

以下のパラメータを設定します:

  • Dependent Variable(従属変数):「空腹時血糖値」
  • Covariates(説明変数):「年齢」と「BMI」
JASPの線形回帰設定画面

3 追加オプションを設定する

「Statistics」タブで以下のオプションを選択します:

  • Estimates:回帰係数の推定値を表示
  • Confidence intervals:信頼区間を表示
  • Descriptives:記述統計量を表示
JASPの線形回帰オプション設定

t分布を仮定した最尤法によるロバスト回帰

4 ロバスト回帰分析を実行する

JASPでt分布を仮定したロバスト回帰を行うには、「Regression」→「Robust Linear Regression」を選択します。

JASPのロバスト回帰メニュー

以下のパラメータを設定します:

  • Dependent Variable(従属変数):「空腹時血糖値」
  • Covariates(説明変数):「年齢」と「BMI」
  • Method:「M-estimation」
  • Weight function:「Tukey's bisquare」(t分布に類似した重み付け関数)
JASPのロバスト回帰設定画面

5 結果を比較する

両手法の結果を比較します。外れ値を含むデータセットでは、ロバスト回帰(t分布を仮定した最尤法)の方が外れ値の影響を受けにくいことが確認できるでしょう。

JASPの分析結果比較

JASPによる分析結果の例

以下は、JASPで分析した場合の結果のイメージです:

通常の線形回帰(最小二乗法)の結果

パラメータ 推定値 標準誤差 t値 p値
切片 -21.84 40.12 -0.54 0.613
年齢 1.54 0.65 2.37 0.077
BMI 4.05 1.84 2.20 0.092

R² = 0.78, 調整済みR² = 0.64

ロバスト回帰(t分布を仮定した最尤法)の結果

パラメータ 推定値 標準誤差 t値 p値
切片 8.73 12.45 0.70 0.522
年齢 1.05 0.20 5.25 0.006
BMI 2.48 0.57 4.35 0.012

ロバスト R² = 0.97

ロバスト回帰は外れ値の影響を受けにくく、より安定した推定値を与えていることがわかります。特に、t値とp値が大きく改善し、統計的有意性が高まっています。

6. JASPを使った両手法の比較演習

演習の目的

この演習では、JASPを使って実際に最小二乗法と最尤法を比較し、特に外れ値が存在する場合や非正規性が強いデータに対する両手法の違いを理解します。

演習データ:高血圧患者の降圧薬効果

以下のデータは、高血圧患者10名に対する降圧薬の効果と関連要因を示しています。

患者ID 年齢(歳) 体重(kg) 投与量(mg) 血圧低下(mmHg)
1 55 65 10 15
2 62 70 15 18
3 58 75 20 22
4 70 80 25 25
5 65 85 30 30
6 60 68 12 16
7 72 72 18 20
8 67 78 22 24
9 63 82 28 28
10 68 90 5 5

患者10のデータは外れ値と考えられます(投与量が少ないにもかかわらず、血圧低下も小さい)。

JASPを使った演習の手順

1 JASPでデータを準備する

新しいJASPセッションを開始し、上記のデータを入力します。各変数の型は「Continuous」(連続変数)に設定します。

JASPのデータ入力画面

2 データの探索的分析

  1. 「Descriptives」→「Descriptive Statistics」を選択します。
  2. すべての変数を「Variables」欄に移動します。
  3. 「Statistics」タブで「Quartiles」にチェックを入れます。
  4. 「Plots」タブで「Boxplots」と「Q-Q plots」にチェックを入れます。
JASPの記述統計設定画面

箱ひげ図とQ-Qプロットを確認し、外れ値と非正規性を視覚的に評価します。

3 最小二乗法による線形回帰

  1. 「Regression」→「Linear Regression」を選択します。
  2. Dependent Variable:「血圧低下」
  3. Covariates:「年齢」「体重」「投与量」
  4. 「Statistics」タブで「Estimates」「Confidence intervals」「Descriptives」にチェックを入れます。
  5. 「Plots」タブで「Residuals vs. fitted」「Q-Q plot of residuals」にチェックを入れます。
JASPの線形回帰設定画面

4 ロバスト回帰(t分布を仮定した最尤法)

  1. 「Regression」→「Robust Linear Regression」を選択します。
  2. Dependent Variable:「血圧低下」
  3. Covariates:「年齢」「体重」「投与量」
  4. Method:「M-estimation」
  5. Weight function:「Tukey's bisquare」
  6. 「Plots」タブで「Residual Q-Q plot」にチェックを入れます。
JASPのロバスト回帰設定画面

5 両手法の結果を比較・解釈する

以下の点に注目して結果を比較します:

  • 回帰係数の違い
  • 標準誤差と信頼区間の違い
  • 統計的有意性(p値)の違い
  • 残差プロットの違い
  • 予測精度の違い
両手法の結果比較

追加課題:非正規分布データでの両手法の比較

降圧薬の効果データの対数変換を行い、両手法を再度適用して結果を比較しましょう。

  1. JASPで新しい変数を作成します(「Compute Column」機能を使用)。
  2. 「log(血圧低下)」変数を作成します(対数変換)。
  3. この対数変換した変数を目的変数として、最小二乗法とロバスト回帰の両方を実行します。
  4. 元のデータに対する結果と比較し、非正規性の影響と対数変換の効果を考察します。

ヒント: 対数変換は右に歪んだ分布を正規分布に近づける効果があります。変換後のデータでは、最小二乗法とロバスト回帰の結果がより近くなることが予想されます。

演習の結果例

以下は、この演習で得られる結果の例です:

外れ値を含むデータに対する両手法の比較

  • 最小二乗法:投与量の係数 = 0.85、p値 = 0.024、R² = 0.72
  • ロバスト回帰:投与量の係数 = 1.02、p値 = 0.003、ロバストR² = 0.89

ロバスト回帰の方が外れ値の影響を受けにくく、投与量と血圧低下の関係をより正確に推定しています。また、説明力が高くなります

第5回:同一データに対する 最少二乗法と最尤法の比較1