31.6 重み変数

重み付き回帰 (weighted regressions) の実行に使用する変数のことを、重み変数 (weight variables) と言います。いずれの重み変数も、それ以外の変数と共に Variables セクションで定義する必要があります。

  1. 使用する重み変数を指定する
  2. オプションの重み変数を定義する
  3. 重み付けの使用が必要な場合
  4. 重み付けのプロセス:ノルムと残差の変更

 

1. 使用する重み変数を指定する

重み付けを使用するには、Variables セクションで定義された重み変数を呼び出すためのコードを Equation セクションに指定します。重み変数の選択は、以下の構文を使って fit 文で指定します。

ここで、w は Variables セクションで定義した重み変数です。重み変数は、多くの場合ワークシートの列を用いて定義します。その列は、各行が重み計算に使用する値であり、同じ行の従属変数の列にある観測値に割り当てます。具体的には、観測される従属変数の値、または、その二乗の逆数を重み変数に定義するのが一般的です。例えば、観測される従属変数が y=col(2) である場合、重み付け変数は 1/col(2) または 1/col(2)^2 と定義します。

多くのアプリケーションでは、回帰処理中は重みの値が固定され変化することはありません。しかし、重み変数をパラメータの関数になるよう定義することができます。すなわち、予測値や回帰残差を用いて重み変数を定義することができます。この種の重み付けは、観測誤差があらかじめ分かっていないときにしばしば利用されます。

例えば、「予測値による重み付け ("weighting by predicteds")」では、重み変数を w = 1/f と定義できます。ここで、f は当てはめモデルの予測値を定義します。この種の重み付けは、誤差がポアソン (Poisson) 分布に従う場合に役立ちます。ポアソン分布の場合、母平均は、推定を行う予測値になるのですが、重み変数を予測値の逆数に定義しているので、母分散と等しくなります。

重み変数を定義するもうひとつの方法は、回帰残差を用いることです。例えば、w = 1/(1 +4*(y-f)^2 は、残差 y-f で重みを定義します。ここで、y は観測される従属変数の値、f はこの回帰モデルで計算される予測値です。このような重み変数が利用されるのは、ロバスト回帰 (“robust regression”) です。大きな残差をもつ観測値に小さな重みを割り当てることで、回帰結果における外れ値の影響を軽減します。

 

2. オプションの重み変数を定義する

候補となる重み変数を複数定義しておき、Equation Options ダイアログボックスからその中のいずれかを選択して使用できるようにすることができます。重み変数を複数作成し、異なる重み変数を選択する代替 fit 文のエントリを Equations セクションに作成するだけです。

 

3. 重み付けの使用が必要な場合

最小二乗回帰問題では、通常、全てのデータポイントにおける誤差は等しいものと仮定されます。重み付けを使用するのは、誤差分散が一様でない場合です。従属変数の値の大きさに伴ってそのばらつきが増加するとすれば、従属変数の値が大きいほど残差も大きくなります。残差が大きいと、従属変数における大きな値の残差を二乗することで、小さい残差が圧倒されることになります。この平方和の合計は、従属変数の値が大きいものしか感度がなくなり、重み付けを使用しない限り回帰分析は誤ったものになります。

回帰の重み付けは、曲線がある点を通過するよう要請される場合に行うこともあります。例えば、データポイント (0, 0) にそれ以外のデータポイントよりも相対的に大きな重みを付けることで、曲線が原点を通るようにする場合です。

Note: 重み変数の使用では、計算されるパラメータが有効でも、標準誤差の計算にどのオプションを使用したかによって統計量の解釈は変わります。

 

4. 重み付けのプロセス:ノルムと残差の変更

重みの値は、従属変数の分散の逆数に比例します。重み付けでは、対応する平方和の二乗項を乗じ、絶対誤差の値をその標準誤差で割ります。これにより、平方和の全ての項が同様の寄与となり、結果として回帰が改善することになります。

重み付き最小二乗法では、最小化する平方和に重み w を含めます。

重み付けを使用する場合はノルムが計算され、Progress ダイアログボックスに表示されますが、それは で、重み付けの効果が含まれます。計算されたこの残差は、重み付き残差になります。