統計モデルと誤差・残差 第2回講義:資料1 土居正明 注)今回の「統計モデル」とは基本的に fixed effect model を想定しています。ご注意ください。 1 大体のイメージの話 ある 5 人の人の血圧を測定したところ、データが以下のようであったとします。 160 155 150 145 140 5 10 15 20 25 30 図 1 5 人の血圧のデータ (点線は平均値。横軸の数値は無視してください。) このとき、データは結構大きくばらついていますが、この「ばらつき」の大きさは「仕方のないもの」なのでしょうか*1 ? 本当は「自然なばらつき」ではないものまで「ばらつき」に含めてしまっているので、過剰に大きくなっている、というこ とはないでしょうか? その点を確かめるために、このデータを見て「血圧は、年齢にも影響するのではないか」という風に考えたとしましょう。 そして今度は、横軸に年齢・縦軸はそのまま血圧でプロットしてみたところ、以下のようになったとします。 160 155 150 145 140 20 30 40 50 図 2 5 人の血圧のデータ(横軸は年齢) *1 データは必ずばらつきを持ちますので、ばらつきの「存在」自体は仕方ないのですが、この「大きさ」について本当に仕方がないのでしょうか、と いう意味です。 1 このとき、直線が当てはまりそうに思えたので、回帰直線を書いてみます。 160 155 150 145 140 135 10 20 30 40 50 図 3 5 人の血圧のデータ+回帰直線 そして、各点から、回帰直線に向けて縦軸に平行に線を下ろして、 「直線からのばらつき具合」を調べてみます。一見した ところ、「ばらつき」は先の図 1 よりも小さくなっていますね。これはすなわち、図 1 の段階では「ばらつき」と思われて いたもののうち、実は一部は「年齢の影響」として説明可能なものであった、ということです。逆に言うと、図 1 では年齢 の影響という構造を考えていないため、年齢の影響まで「ばらつき」に含んでしまっていました。結果として、年齢の影響 までを考えたばらつきよりも大きく見えてしまった、ということです。 2 統計モデルとは 2.1 モデルと誤差 では、これら「ばらつき」をきちんと記述するために、統計モデルについてご説明します。 統計モデルとは データに当てはめる、バラツキを含んだ関数 のことです。これから扱う、(線形)回帰分析・分散分析 (fixed effect model) においては、 「構造」と「誤差」の組み合わせ という風に考えていただいてもよいかと思います*2 。言 い直してみても難しいですので、少しずつご説明しましょう。 まず、「構造」や「誤差」とは何でしょうか*3 ? 「構造」とは「関数(もしくはグラフ)」の意味だと思ってください。そ して、その「構造」でとらえ切れないデータのばらつき のことを「誤差」と呼ぶのです。 例えば、図 1 の場合、構造とは「平均値のみ」 (定数関数)です。構造はこれだけですので、データの値がそれぞれ平均値 と違うのは全て「誤差」の影響ということになります。式で書きますと、i 番目の人の血圧を yi として、血圧の平均値を µ としたときに、 yi = µ + (1) i と書けます。µ の部分が「構造」であり、それでは説明し切れないばらつき i の部分を「誤差」と呼んでいます*4 。 一方で、図 3 の場合、構造とは「年齢の1次関数」です。今度は「誤差」とは、 「この1次関数からのずれ」を指すことに なります。つまり、式で書きますと、xi を i 番目の人の年齢、β0 , β1 を定数として、 yi = β0 + β1 xi + (2) i となります。ここで、1次関数「β0 + β1 xi 」の部分が「構造」であり、1次関数では説明し切れないばらつき i の部分を 「誤差」と呼びます。 *2 このあたり、統計モデルの種類を著者自身があまり知らないので、やや歯切れが悪い表現になっています。ご容赦ください。 本稿の「誤差」 「残差」は一般的な用語ですが、 「構造」については、一般的な用語ではありません。ご注意ください。 *4 後ほど、 i には正規分布を仮定しますが、 「誤差は必ず正規分布するようにしなければならない」わけではありません。正規分布を仮定すると、現 実に対して適応できる場合が多いのと、色々理論展開できるので仮定しているだけです。 *3 2 2.2 「誤差」と「残差」 さて、統計モデルを考える際、「誤差」と「残差」という大変似た言葉が出てきます。この点を正確に定義して区別しま しょう。発想自体は、統計学的に非常に自然なことです。 例えば式 (1) や (2) において、µ や、β0 , β1 というパラメータの真の値は未知です。これはどんなに頑張っても、正確な 値は決して知りえません。 その意味で、 「誤差」 とはデータの中で、 真のパラメータµ や β0 , β1 などの「真の構造」を用いて説明できないばらつきの部分 を指します。従いまして、真のパラメータを決して知ることのできない我々には「誤差」の値は、決して分かりません。 では、どうしましょう?自然な発想として、「真のパラメータは分からないので、そこを推定値で置き換えたものでよし としよう」という発想が出てきます*5 。 そのようにして求まる、データの中で、「真の構造の推定値」で説明できない部分 のことを、「残差」と呼ぶのです。 式で書きますと、例えば式 (2) において i 番目の人の「誤差」 i = yi − (β0 + β1 xi ) i は (yi , xi はデータから求まる。β0 , β1 は未知定数) であり、同じく i 番目の人の「残差」を ei とおくと ei = yi − (β0 + β1 xi ) (yi , xi はデータから求まる。β0 , β1 は推定値よりデータから計算可能) のように表せます。 「誤差」が 決して知りえない値 であり、「残差」が 現実に計算できる値 であることは押さえておいてください。 つまり、「残差」は「誤差」の推定値 である、と考えることができます。 3 モデルを比較する 3.1 よいモデルとは? さて、データに対してモデルを当てはめることを考えたいのですが、どのモデルを当てはめたらよいのか迷ってしまうこ とがよくあります。そのためよいモデルとはどのようなモデルであるかについて、一つの基準を持ってきましょう。 ここでは、「できるだけ簡単なモデルがよいモデル」であると考えます。つまり、 「複雑なモデルを導入するには、それ相 応のメリットがなければならない」という発想です。では「それ相応のメリット」とは何でしょうか? それが「十分な残差の減少」です。具体例を通して、この点をじっくり見てみましょう。 3.2 具体例 上の例では、同じデータについて図 1 と図 3 の2つのモデルを考えました。もう少しモデルの構造を整理して、どちらの モデルの方が妥当かについて考えましょう。 「モデル1」 まず「モデル1」は図 1 の考え方です。全体の平均値を µ として、さらにここでは、誤差に正規分布を仮定します。つ まり、 yi = µ + *5 i (µは定数。i ∼ N (0, σ 2 )) このあたり、 「真の値は分からないから推定値で」という流れは t 分布の導出の部分と同じですね。 3 とします。このとき、5人のデータ y1 , · · · , y5 は全て N (µ, σ 2 ) に従います。 「モデル2」 次に「モデル2」です。今度も同様に誤差に正規分布を仮定します。 yi = β0 + β1 xi + i (β0 , β1 は定数。i ∼ N (0, σ ˜ 2 )) となります(σ 2 と σ ˜ 2 は別々だと考えていただいて結構です)。今度は、各データが従う分布は y1 ∼N (β0 + β1 x1 , σ ˜2) y2 ∼N (β0 + β1 x2 , σ ˜2) y3 ∼N (β0 + β1 x3 , σ ˜2) y4 ∼N (β0 + β1 x4 , σ ˜2) y5 ∼N (β0 + β1 x5 , σ ˜2) となり、各人の年齢に応じた別々の正規分布に従う ことになります*6 。 さて、先にも見ましたとおり、図 1 と図 3 を見た感じから、図 3 の方が残差が小さくなっているように思えます。 これは、図 1 では、 「本当はただのばらつきではない年齢と血圧の関連」を「ばらつき」にカウントしてしまった結果、残 差が大きくなってしまった、という風に解釈できます*7 。つまり、的確な 構造を入れると、残差が減らせる(簡単なモデル では説明できない部分が、変数を追加することで説明可能になる。 )ということです*8 。さて、今のところ目で見て「モデル 2」の方がよい、と判断しましたが、もう少し客観性のある指標を考えましょう。 3.3 係数の検定による比較 3.3.1 考え方 では、 「モデル1」と「モデル2」を検定によって比較する 方法を考えましょう。ここで重要なのは、「モデル1」は「モ デル2」の特殊ケースだということです。つまり、「モデル2」において、年齢 xi の係数である β1 が 0 ならば、血圧に依 存しなくなり、 (文字が違うだけで)「モデル1」と同じモデルになってしまいます*9 。 そこで、基本は「モデル2」で考えてみて、β1 が 0 かどうか判断してみるという方法で考えてみましょう。つまり、「モ デル2」において H0:β1 = 0 H1:β1 = 0 を検定して、H0 が棄却されたら β1 を含め、棄却されなかったら β1 を含めない という判断をすることにしましょう。すな わち、H0 が棄却されると「モデル2」を採用、棄却されなければ「モデル1」を採用する ということです。 では、これを判断する検定を考えていきましょう。手法の詳細は後の資料でご説明するとしまして、概略だけ述べます。 β0 , β1 に対して最小2乗法を用いて推定値 β0 , β1 を考え、回帰直線を y = β0 + β1 x とおきます。このとき、現実的な小さな仮定を置けば、β0 , β1 はそれぞれ β0 , β1 の UMVU となっています。 *6 後にくわしく述べますが、β1 = 0 のとき、「モデル1」と「モデル2」は同じモデルになります。 「残差」を「誤差」の推定値と考えると、 「残差が小さい」≒「誤差が小さい」ということが成り立ちそうですね。 *8 補足で少し述べますが、実は「残差は小さければ小さいほどよい」というものではありません。しかし、 「そんなに不自然でない 2つのモデルがあ るとき、どちらがよいか?」という風に考えるなら、 「残差が小さい方がよい」という風に答えてもよいのではないかと思います *9 「 『モデル2』が『モデル1』を含むのならば、 『モデル2』の方が汎用性が高いのだから『モデル2』を使えばいいではないか」 、と思われる方がい らっしゃるかもしれません。しかし、現実的に必要のない変数を入れてしまうと、その分現実を反映していないモデルになりますし、今回は「でき るだけ簡単なモデルの方が、解釈がしやすくてよいモデルである」という立場でもありますので、 「モデル1」で十分ならそれで済ませたいのです。 *7 4 そして、年齢が x = xi の人の血圧を yi = β0 + β1 xi と推定してやることにすると、yi は yi の「モデル2」における推定値 となります。 さらに、y¯ = 1 5 ∑5 i=1 yi とおくと、これは「モデル1」の µ の UMVU となっています。つまり、µ = y¯ というわけです。 このとき y¯ は yi の「モデル1」における推定値 となります。 ここで、突然ですが 5 ∑ i=1 (yi − y¯)2 = 5 ∑ (yi − yi )2 + i=1 5 ∑ (yi − y¯)2 (3) i=1 という式が成り立ちます*10 。各項についてご説明しましょう。まず、 5 ∑ (yi − y¯)2 i=1 ですが、これは「各データから『モデル1』における(構造部分の)推定値を引いて2乗して足し算」しているわけで、「 『モ デル1』における残差平方和」*11 と考えることができます。一方右辺の、 5 ∑ (yi − yi )2 i=1 ですが、これは「各データから『モデル2』における(構造部分の)推定値を引いて2乗して足し算」しているわけで、「モ デル2における残差平方和」という風に考えることができます。 残りの 5 ∑ (yi − y¯)2 i=1 は、 「 『モデル1』 の推定値と『モデル2』の推定値の差の平方和」を表しています。今、 「モデル1」は「モデル2」の特殊ケース と考えることができますので、これは「『モデル2』では説明できるけれど、『モデル1』だけでは説明できない部分」とい うことになります。つまり、「『モデル2』を持ち込んだ甲斐」がここに表れるわけです。 これより、式 (3) を言葉でまとめると以下のようになります。 「モデル1における残差平方和」=「モデル2における残差平方和」+「 『モデル1』と『モデル2』の説明能力の違い」 従って、「『モデル1』と『モデル2』の説明能力の違い」の部分が大きくなればなるほど「『モデル1』だけでは不十分 で、 『モデル2』が必要である」という風に解釈することができます。 逆に、この部分が小さいということは「『モデル2』で考えたつもりが、結局『モデル1』と同じことになってしまった」 (モデル2の説明能力がモデル1の説明能力と同じになってしまった)ということです。このようなときには、「よりシンプ ルなモデルがよい」という発想で、 「じゃあ回帰直線なんて面倒なものはやめて、平均だけの『モデル1』にしましょう」と 判断するわけです。 3.3.2 具体的な手順 さて、では具体的に H0 を検定するには何を計算したらよいでしょうか。要は「 『モデル2』の説明能力が『モデル1』の 説明能力よりどれほど優れているか」ということに興味がありますので、簡単に思いつくのは ∑5 (yi − y¯)2 「『モデル1』と『モデル2』の説明能力の違い」 R = = ∑5i=1 「『モデル1』の残差平方和」 ¯)2 i=1 (yi − y 2 *10 *11 この式の導出は後の資料で詳細にやりますので、今はさっと流して意味だけ理解してください。 「平方和」というのは「2乗(平方)して足し算したもの(和) 」のことです。 5 が どの程度1に近いか を判断する、という方法です*12 。この値 R2 は決定係数と呼ばれています。 検定においては、これと同じ価値を持つ式、 ∑5 (yi − y¯)2 F = ∑5i=1 2 i=1 (yi − yi ) が大きいときに H0 を棄却する、という方法をとります。 厳密には、少し変形して ∑5 F = ∑i=1 5 1 3 (yi − y¯)2 i=1 (yi − yi )2 が H0 のもとで自由度 (1, 3) の F 分布に従うことから検定します。 例えば、有意水準 α = 0.05 の両側検定で判断するなら、 F > F (1, 3, 0.95) のときに H0 を棄却、ということになります*13 。 4 まとめ このように、 (i) できるだけ簡単なモデルがよい。 (ii) 残差(構造では説明できない部分)が十分に減らせるのなら、変数を追加(=複雑なモデルに)してもよい。 という方針で、どのようなモデルがよいか、ということを考えていくことができます。 実は、分散分析もこの方針に従った「モデル選択」という観点から捉えることができるのです。 5 補足:残差は小さければ小さいほどよいわけではない、というお話 今まで、 「残差が十分に減らせるなら、モデルに追加してよい」という風にご説明してきました。では、残差は小さくなれ ば小さくなるほどよいのでしょうか? 実はそうではありません。それは以下のグラフを見ていただくと明らかかと思いま す。極端な例です。回帰直線を引くと「残差が0」となるプロットです。 160 160 150 150 140 140 130 130 120 120 110 110 100 20 図4 30 40 10 50 20 30 40 50 図 5 回帰直線の当てはめ 回帰直線を当てはめると残差0となるデータ 何だか「きれいすぎ」て、不自然で人工的な気がしませんか*14 ?普通にデータをとったのなら、もう少しはばらついてい た方が自然な気がしますね。 今度は、別の見方をしましょう。先の図 3 の血圧の例で、5点が与えられたときに、直線ではなくて以下のような4次関 数を当てはめたとします。 *12 「これが1に近い」ということはつまり、 「 『モデル1』で残差と思っていたものが、実は『モデル2』ではほぼ説明可能だった」ということです。 両側検定の場合でも、F 検定なら片側棄却域のみ考えればよいことに注意してください。詳しくは「正規分布・t 分布・χ2 分布・F 分布とは何か」 をご覧ください。 *14 もちろん現実のデータがこのようにきれいになることもたまにありますが。 *13 6 190 180 170 160 150 140 10 20 30 40 50 図 6 5 人の血圧のデータ+4次曲線の当てはめ この4次関数は全ての点を通っていますので、こちらも「残差は0」です。ですが、直線を当てはめるのと、どちらがよ り正しい血圧と年齢の関係を推定しているでしょうか?明らかに、図 3 のような「直線あてはめの方がよさそう」という風 に見えませんか? このように、「残差はそこそこ小さい方がよいけれど、 (ある意味で)小さ過ぎるのも変」という困った性質を持っていま す。これをモデルの言葉でいい直すと、「データに対してそこそこ当てはまりのよいモデルがよいけれど、当てはまり過ぎ るモデルはよくない」という言い方になります。では、何を基準にして「丁度よいあてはまり」 「当てはまり過ぎ」を判断す ればよいのでしょうか? 1つの基準は「自然かどうか」です。先に「簡単なモデルが良い」という風に述べましたが、それは一般に複雑なモデル には、解釈が難しい不自然なモデルが排除できなかったりするからです。図 6 のような明らかに不自然なものは除外すると いう方針は重要です。回帰分析のところでは、「モデル1」も「モデル2」もどちらも「自然」だったので、「では、残差が (有意差が出るほど)小さくできるなら複雑な『モデル2』を採用しましょう」という発想が可能になりました。 では、たとえば、 y = aex + b (a, b は定数) 2 y = ax + bx + c (a, b, c は定数) のように、グラフの形がよく似ていて、 「どちらが自然かどうか判断がつかない2つのモデル」については、どのようにすれ ばよいのでしょうか? 5.1 情報量基準による比較 その答えの1つは「情報量基準」というもので、有名なものでは AIC*15 というものがあります。理論的な導出過程や正 確な定義はおいておきますが、大体のイメージで AIC はそこそこデータに当てはまって、パラメータの数が少ない方がよ いモデルであるという判断をします。直線は y = β1 x + β0 とおけるので、パラメータは β0 , β1 の2つですが、4次関数は y = β4 x4 + β3 x3 + β2 x2 + β1 x + β0 とおけるので、パラメータは β0 , β1 , β2 , β3 , β4 の5つもあります。そのため、4次関 数のほうが「あてはまりがよい」というメリットがありますが、「パラメータが多い」というデメリットを持ちます。 AIC は数値で与えられ、 「小さい方がよい」という風に解釈できます。そのため、 「直線を当てはめたときの AIC」と「4 次関数を当てはめたときの AIC」を比較して、 「AIC が小さい方のモデルを採用する」ということができるようになります。 AIC については、今回は本題でないのでこの程度にしておきます。 *15 Akaike Information Criteria:赤池情報量基準。 7
© Copyright 2024 ExpyDoc