ANOVA君/オメガ二乗の複雑な事情 - 井関龍太のページ

ホーム   編集 凍結 差分 バックアップ 添付 コピー 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

ANOVA君/オメガ二乗の複雑な事情

Last-modified: 2015年10月01日 (木) 11:07:49 (1146d)
Top > ANOVA君 > オメガ二乗の複雑な事情

被験者内計画におけるオメガ二乗

分散分析の効果量の指標として,ω2オメガ二乗を計算しようとすると,意外に難しい問題にぶつかります。
被験者間計画の場合は,以下の式を適用すれば,問題なく適切なω2の値を計算できます。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{error}} \\ \]

ここで,SSは平方和,dfは自由度,MSは平均平方を表しています。
Aは任意の要因効果を表すものとし,errorはこの効果の誤差項,Totalは誤差項を含むすべての効果の総計です。
被験者間計画であれば,何要因の計画であろうとこの同じ式が使えます。

ところが,被験者内計画のデータについてω2を計算するときには,この式を使うことはできないとされています。
一般に,被験者内計画のω2の計算式としては,以下のような式が挙げられることが多いのではないでしょうか。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{s}} \\ \]

ここで,小文字のsは被験者の項を表しています。
この式には,何か違和感をおぼえはしないでしょうか。
一見して,被験者間計画の式の分母のMSerrorがMSsに置き換わっているのに気づきます。
確かに,被験者内計画では,データの変動から被験者の個人差による効果を取り除いているから,これを何らかの形で反映させた方がいいかもしれません。
しかし,それでは被験者間計画の式にあったMSerrorは含めなくてよいのでしょうか。
この式だけをみると,何だか添え字を間違ってしまったようにも思えてしまいます。

被験者内計画のω2については,別の式が挙げられることがあります。
Field(2009)は,被験者内計画の式は難しすぎて読者を混乱させてしまうかもしれないと述べつつ,以下の式を提示しています。

\[ \frac{[\frac{j - 1}{nj}(MS_A - MS_{error})]}{MS_{error} + \frac{MS_{s} - MS_{error}}{j} + [\frac{j - 1}{nj}(MS_{A} - MS_{error})]} \\ \]

ここで,jは要因効果Aの水準数,nは各グループの参加者数です(釣り合い型計画が仮定されています;また,以下の式も同様ですが,記号は本記事のものに合わせて変更しています)。

確かに,こんな式をいきなり見せられたらくじけてしまいそうです。
これは本当に上の被験者内計画の式と同じものなのでしょうか。

実のところ,地道に式変形を重ねていけば,この2つの式は同じものであることがわかります。
まず,上の式は以下のような形に変形できます。
(以下の式変形は,分散分析における自由度と平均平方の算出法を前提にしています。)

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{s}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+SS_{s}+SS_{error}+MS_{s}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+(n - 1) \times MS_{s}+(n - 1)(j - 1) \times MS_{error}+MS_{s}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_{A} - df_{A} \times MS_{error})+n \times MS_{s}+n(j - 1) \times MS_{error}} \\ \]

一方で,Fieldの式も,分子と分母にnjをかけて,分子を整理すると以下のようになります。

\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+n \times (MS_{s} - MS_{error})+nj \times MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_{A} - df_{A} \times MS_{error})+n \times MS_{s}+n(j - 1) \times MS_{error}} \\ \]

変形すると,これは上の式と同じもので,そこまで難解なものではないことがわかります。

被験者間計画の式も,同じように変形してみましょう。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_A+SS_{error}+MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_A+(N - j) \times MS_{error}+MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_A - df_A \times MS_{error})+N \times MS_{error}} \]

すると,被験者間計画と被験者内計画では式の大枠は似ているものの,誤差の平均平方に対する扱いが違っていることがわかると思います。
被験者間計画ではMSerrorだけですが,被験者内計画にはMSerrorとMSsの2つがあります。
いずれもサンプルサイズ(と自由度)による補正を加えて分母に含められている点は共通です。
こうしてみると,被験者内計画でも分母にMSerrorがなくなったわけではなく,むしろ,MSsが加えられたのだということがわかるのではないでしょうか。

なるほど納得,これで解決したと思いたいところですが,それでは,混合要因計画の場合はどうなるのでしょうか。
あちこちのテキストをひっくり返してみても,混合要因計画のω2の計算式は載っていません。
先ほどのField先生はなかなかfunkyな方のようで,混合要因計画におけるω2の複雑さは回避させていただく,それはmadnessへの道だと述べておられます(Field, 2009)。
被験者内計画であれだけ複雑な式を載せていたField先生がいうのですから,よほど複雑な式なのでしょうか。
結局,混合要因計画の式については,テキストでは掲載しているものが見つからず,論文を参照する必要がありました。

混合要因計画のω2について最も詳しい計算式を載せている文献は,Dodd & Schultz(1973)ではないかと思います。
この論文では,3要因までの様々な計画に対応しているω2の式を具体的に挙げています。
また,一部の計画については,Susskind & Howland(1980)が前掲論文を参照しつつ,より詳しく展開してくれています。

加算モデルと非加算モデル

さて,これで混合要因計画の式がわかる……とその前に,これらの論文を読むと気づかざるを得ないことがあります。
それは,反復測定要因を含む計画の場合,ω2の計算式には少なくとも2種類のものがあるということです。
具体的には,分散分析のモデルとして加算モデルを仮定するか,非加算モデルを仮定するかによって計算式が違ってくるのです。

加算モデルとは,参加者と誤差の間に交互作用がないと仮定するモデルです。
一方,非加算モデルでは,これらの間に交互作用が存在することを仮定し,反復測定要因を含む計画では,反復測定要因と反復測定要因との交互作用の数だけ誤差項を計算します。
理論的には,加算モデルの方が非加算モデルよりも検出力が高く,大局的球面性が成り立つ場合には加算モデルを適用する方が妥当であるといわれています。
しかし,現在一般に用いられているソフトウェアでは,反復測定分散分析を用いると非加算モデルの解のみが出力されることがほとんどだと思います。

実は,上で参照した被験者内計画のω2の計算式は,加算モデルを仮定したものでした。
それでは,非加算モデルを仮定した場合はどのようになるのでしょうか,
以下は,非加算モデルの場合の一要因被験者内計画用の式です。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{s}+n \times MS_{error}} \\ \]

加算モデルの式の分母にさらにMSerrorを足したものになっています。
これまでと同じように式変形していくと,以下の式に落ち着きます。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{s}+n \times MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+SS_{s}+SS_{error}+MS_{s}+n \times MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+n \times MS_{s}+[(n - 1) \times (j - 1)+n)] \times MS_{error}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_{A} - df_{A} \times MS_{error})+n \times MS_{s}+nj \times MS_{error}} \\ \]

二要因の場合の非加算モデルの被験者内計画の式は以下のようになります。
一見,誤差項にかける数の法則性がつかめないように思えますが,これも式変形してみると納得がいくものになっています(ここで,A要因の水準数がj,B要因の水準数がk,以下同様)。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_{s}+n \times MS_{sxA}+n \times MS_{sxB}+n \times (j + k - 1) \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+SS_{B}+SS_{AxB}+SS_{sxA}+SS_{sxB}+SS_{sxAxB}+SS_{s}+MS_{s}+n \times MS_{sxA}+n \times MS_{sxB}+n \times (j + k - 1) \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_{A}+SS_{B}+SS_{AxB}+SS_{sxA}+SS_{sxB}+SS_{sxAxB}+(j - 1) \times (n - 1) \times MS_{sxA}+(k - 1) \times (n - 1) \times MS_{sxB}+(j - 1) \times (k - 1) \times (n - 1) \times MS_{sxAxB}+SS_{s}+MS_{s}+n \times MS_{sxA}+n \times MS_{sxB}+n \times (j + k - 1) \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_{A} - df_{A} \times MS_{sxA})+(SS_{B} - df_{B} \times MS_{sxB})+(SS_{AxB} - df_{AxB} \times MS_{sxAxB})+n \times MS+jn \times MS_{sxA}+kn \times MS_{sxB}+jkn \times MS_{sxAxB}} \\ \]

ていねいに見ていくにはなかなかの忍耐力を要求されますが,これで要因の数が増えたときにどのように一般化していけばよいのか,つかめてくると思います。

こうして非加算モデルでは要因数によって計算式が違うことを見てしまうと,加算モデルの方では一要因の場合と同じ式を使っていいのか不安になるかもしれません。
実際のところ,これがうまくできていて,上の加算モデルの式を二要因被験者内計画に当てはめてみると実にうまくこれまでの式と連続性のある式が得られるのです(加算モデルなので,MSsxAとMSsxAxBの区別がなく,MSerrorに一元化されています)。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}+MS_s} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_A+SS_B+SS_{AxB}+SS_s+SS_{error}+MS_s} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{SS_A+SS_B+SS_{AxB}+(n - 1) \times MS_s+(jk - 1) \times (n - 1) \times MS_{error}+MS_s} \\ \]
\[ = \frac{SS_A - df_A \times MS_{error}}{(SS_{A} - df_{A} \times MS_{error})+(SS_{B} - df_{B} \times MS_{error})+(SS_{AxB} - df_{AxB} \times MS_{error})+n \times MS_s+n \times (jk - 1) \times MS_{error}} \\ \]

混合要因計画におけるオメガ二乗

以上のような加算モデル,非加算モデルの選択の問題は,混合要因計画の場合にも当てはまります。
まずは,より簡単な加算モデルの場合のAsBデザインの式を示しましょう。

\[ \frac{SS_A - df_A \times MS_{sxA}}{SS_{Total}+MS_{sxA}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{sxA}}{SS_A+SS_B+SS_{AxB}+SS_{sxA}+MS_{sxA}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{sxA}}{(SS_A - df_A \times MS_{sxA})+(SS_B - df_B \times MS_{sxA})+(SS_{AxB} - df_{AxB} \times MS_{sxA})+n \times (jk - 1) \times MS_{sxA}} \\ \]

基本的には,加算モデルの被験者内計画の場合と同じような具合です。
ただし,SSsはありません。

非加算モデルの場合のAsBデザインの式は以下のようになります。

\[ \frac{SS_A - df_A \times MS_{sxA}}{SS_{Total}+MS_{sxA}+nj \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{sxA}}{SS_A+SS_B+SS_{AxB}+SS_{sxAxB}+MS_{sxA}+nj \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{sxA}}{SS_A+SS_B+SS_{AxB}+SS_{sxAxB}+MS_{sxA}+nj \times MS_{sxAxB}} \\ \]
\[ = \frac{SS_A - df_A \times MS_{sxA}}{(SS_A - df_A \times MS_{sxA})+(SS_B - df_B \times MS_{sxA})+(SS_{AxB} - df_{AxB} \times MS_{sxA})+nj \times MS_{sxA}+ njk \times MS_{sxAxB}} \\ \]

誤差項が複数あり,水準数から1を引かない点が加算モデルとは違っています。

ここまででどんな形の計画にも対応できそうに思えるかもしれませんが,一般的なプログラムを作るためには,さらにABsCデザインとAsBCデザインについても確認する必要がありました。
それぞれ,被験者間要因と被験者内要因が2つ以上に増えた場合にどのような式になるのかを確認するためです。
これらのデザインについては,式も本当に長くなるのでここでは割愛しましょう(Susskind & Howland, 1980に詳しく紹介されています)。

加算モデルか非加算モデルか

一通り計算式が出そろったところで,加算モデルと非加算モデルのどちらの式を使ったらいいのかについて考えてみましょう。
先に述べたように,一般的なソフトウェアが使っている分散分析のモデルは非加算モデルです。
そこで,すなおに考えると非加算モデルの式を使うのがよさそうに思えます。

しかし,式を見て気づくように,非加算モデルの式によるω2の方が加算モデルに基づくよりも値が一般に小さくなります。
そこで,非加算モデルの式には過少推定の傾向があるといえます。
そもそもω2そのものが分散分析の効果量の指標として過少推定の傾向があるのに,その中でもさらに過少推定になるわけです。

Susskind & Howland(1980)は,加算性が仮定できるか疑わしい場合でも加算モデルを使った方がよいのではないかと提案しています。
本当は非加算モデルの方が妥当なデータについて,加算モデルに基づくω2を計算したとしてもその影響はごくわずかであるというのが理由です。
そして,実際にこの加算性の仮定による影響がどの程度であるか知りたいなら,加算モデルに基づく値と非加算モデルに基づく値の両方を計算してその差を比べてみればよい,と論じています。

そこで,ANOVA君(version 4.3.0以降)では,これら両方のモデルに基づくω2を計算できるようにしています。
omegaを指定した場合は加算モデル,omeganaを指定した場合は非加算モデルに基づくω2を出力します(両方同時に指定することもできます)。

非加算モデルを使っているのに加算モデルに基づくω2を計算するのは何となくおかしな気もしますが,テキストを参照してみてもわかるように,ω2の計算法として紹介されるのはたいていは加算モデルの方だけなのです(Olejnik & Algina, 2000のような啓蒙論文でも同じです)。
また,検定と効果量はある程度別物であると考えるのなら,あえてそれぞれ違った仮定に基づく統計量を計算することにも意味はあるかもしれません。

ここで,一点,補足しておきます。
この記事では一括して“加算モデル”と呼んできましたが,実は加算モデルは各デザインについて一意に決まるとは限りません。
3要因以上のデザインの場合,どの効果の誤差と参加者の間に交互作用が存在しないと仮定するかによって,加算モデルにいくつかのバリエーションを想定することができます(詳しくは,Dodd & Schultz, 1973を参照)。
ですから,ここで提示した加算モデルによるω2の式が唯一の正しいω2の式であると主張するなら,それは間違いになります。
他にも,それなりの正当性を持った適切な加算モデルによるω2の別の式といったものがありえます。
ここでは,もっとも単純な,どの効果の誤差項とも等しく交互作用がないと仮定した場合の加算モデルのみを扱いました(ANOVA君も同様です)。

このように概観してくると,ω2の計算には実にいろいろな問題がからんでくるということがわかるかと思います。
被験者間計画か,被験者内計画か,混合要因計画か。
それぞれ,何要因の計画なのか。
加算モデルか非加算モデルか,加算モデルであったとしてもどのような仮定のモデルなのか。
さらに,今回は議論しませんでしたが,ω2の計算式を論じる場合もっともよく問題になるのは,固定効果モデルか,変量効果モデルかということです。
もちろん,固定効果と変量効果の両方を含むモデルもありえます。
このように,ω2は様々な条件によって計算式が少しずつ変わってしまうのです。
効果量の母集団推定値としてη2よりも推奨されているにもかかわらず,ω2を出力するソフトウェアがほとんどない理由がわかったような気がします。

偏オメガ二乗の計算法は?

さて,ここまでがんばれば,偏オメガ二乗も計算できそうに思えます。
むしろ,偏オメガの場合は分母として,関係のある効果の誤差項しか使わないのでより簡単にすむように思えます。
しかし,そうは問屋が卸さないのです。
被験者間計画や被験者内計画の場合であれば問題ないのですが,混合要因計画の場合にはオプションが存在するのです。

一般に,ωp2の式は以下のように定義されていると思います。

\[ \frac{SS_A - df_A \times MS_{sxA}}{SS_A+(N - df_A) \times MS_{sxA}} \\ \]

分母の誤差項は,効果量を算出しようとしている効果の誤差項だけを使っています。
ところが,混合要因計画の場合には,この分母の誤差項の扱い方について3通りの方法が提示されているのです。

まず,Kirk(2013)が紹介している方法があります。
これは最も単純な方法で,上で紹介している式をそのまま使うというものです(pp. 546-549)。
それぞれの効果ごとの誤差項を考慮するという意味では,最もストレートかもしれません。

次に,Olejnik & Algina(2000)の方法があります。
この方法では,混合要因計画における被験者間要因の効果量を計算する場合には,分母から交互作用の誤差項を引いています(pp. 278-279)。

\[ \frac{SS_A - df_A \times MS_{sxA}}{SS_A+(n - df_A) \times MS_{sxA} - N \times MS_{sxAxB}} \\ \]

また,被験者内要因及び交互作用の場合には,nに水準数をかけています(他の式との対応関係でいうと,kn=Nです)。

\[ \frac{SS_B - df_B \times MS_{sxAxB}}{SS_B+(kn - df_B) \times MS_{sxAxB}} \\ \]
\[ \frac{SS_{AxB} - df_{AxB} \times MS_{sxAxB}}{SS_{AxB}+(kn - df_{AxB}) \times MS_{sxAxB}} \\ \]

被験者間要因の場合に交互作用の誤差項を引くのは,何か理論的な根拠があるようです。

一方,Maxwell & Delaney(2004)では,分母から自由度をかけたMSeを引くのではなく,逆に足す式を使っています(Gaebelein & Soderquist, 1978に基づく方法のようです)。

\[ \frac{SS_A - df_A \times MS_{sxA}}{SS_A+N \times MS_{sxA} + df_A \times MS_{sxA}} \\ \]
\[ \frac{SS_B - df_B \times MS_{sxAxB}}{SS_B+kn \times MS_{sxAxB}+N \times MS_{sxA} + df_A \times MS_{sxA}} \\ \]
\[ \frac{SS_{AxB} - df_{AxB} \times MS_{sxAxB}}{SS_{AxB}+kn \times MS_{sxAxB}+N \times MS_{sxA} + df_A \times MS_{sxA}} \\ \]

こうなってくると,もう何が本当に正しい計算法なのかわからなくなってしまいます。
とりあえず,ANOVA君では,最も単純なKirkの方式を採用しています(anovakun 4.3.0)。
このような状況ですので,もしかしたらωp2については,今後,仕様を見直す必要が出てくるかもしれません。

イプシロン二乗という選択

ω2の算出法について様々な問題があることについて紹介してきました。
ここまで来ると,本当にω2を使って効果量を報告することは妥当なのかというところにまで疑問が及ぶかもしれません。
ω2に疑問を感じる方には,ひとつの代案として,ε2(イプシロン二乗)を使うことをお勧めできると思います。

ε2もまた分散分析の効果量の母集団推定値であり,これを改良したものがω2だと言われています。
ただし,ε2とω2との違いは数値的にもごくわずかです。
さらに,シミュレーションをしてみると,少なくとも一要因被験者間計画では,ω2よりもε2のほうがむしろバイアスが少ないという結果が得られています(Okada, 2013)。

ε2の計算式は以下のようなものであり,分子はω2,分母はη2と同じになっています。

\[ \frac{SS_A - df_A \times MS_{error}}{SS_{Total}} \\ \]

ここで,ω2の計算法についてどこが複雑だったかを思い出してみると,それは分母の平均平方に何を使うかというところに集中していました。
これに対して,ε2の場合は分母に平均平方を足さず,η2と同じものを使っています。
ということは,上でみたω2のような複雑なバリエーションを作り出さずにすむわけです。
同じ母集団推定値を得たいなら,算出法の選択において議論の余地の少ないε2を使うのもひとつの手ではないでしょうか。
(あるいは,真の効果量を推定するための指標としてω2と併記するのもいいかもしれません。)

また,ε2についても,η2やω2と同様に,εp2(偏イプシロン二乗)が定義されており,ηp2やωp2と同じような形で使うことができます(Olejnik & Algina, 2000)。
ANOVA君では,さらに,εG2(一般化イプシロン二乗)も出力できるようにしています(version 4.3.0以降)。
この指標は,ηG2とωG2の計算法を組み合わせて作ったもので,η2やω2に対するηG2とωG2の関係と同じような位置づけになるはずです。
ただし,εG2は,統計学の専門家によって定式化され妥当な指標であることが明らかにされた指標ではないということをお断りしておきます。
以上の点を了承の上でご利用ください。


Dodd, D. H., & Schultz, R. F., Jr. (1973). Computational procedures for estimating magnitude of effect for some analysis of variance designs. Psychological Bulletin, 79, 391-395.
Field, A. (2009). Discovering statistics using SPSS (3rd edition). SAGE publication.
Gaebelein, J. W., & Soderquist, D. R. (1978). The utility of within-subjects variables: Estimates of strength. Educational and Psychological Measurement, 38, 351-360.
Kirk, R. E. (2013). Experimental design: Procedures for the behavioral sciences (4th edition). Los Angeles: SAGE Publications.
Maxwell, S. E., & Delaney, H. D. (2004). Designing experiments and analyzing data (2nd edition). Mahwah, NJ: Lawrence Erlbaum Associates.
Okada, K. (2013). Is omega squared less biased? A comparison of three major effect size indices in one-way ANOVA. Behaviormetrika, 40, 1-19. [Link to J-STAGE]
Olejnik, S., & Algina, J. (2000). Measures of effect size for comparative studies: Applications, interpretations, and limitations. Contemporary Educational Psychology, 25, 241-286.
Olejnik, S., & Algina, J. (2003). Generalized eta and omega squared statistics: measures of effect size for some common research designs. Psychological Methods, 8, 434-447.
Susskind, E. C., & Howland, E. W. (1980). Measuring effect magnitude in repeated measures ANOVA designs: Implications for gerontological research. Journal of Gerontology, 35, 867-876.

TrackBack(0) | 外部リンク元 | このエントリーをはてなブックマークに追加