データをスイカに当てはめる【統計解析講義応用】

データをスイカに当てはめる【統計解析講義応用】 | 統計解析 - ChatGPT・Python・エクセルを使った講義で最速マスター

セミナー詳細                    解析ご相談                    LINEでお友達

データをスイカに当てはめる|【統計学・統計解析講義応用】

データをスイカに当てはめる【統計解析講義応用】


目次  データをスイカに当てはめる【統計解析講義応用】

 

 

データをスイカに当てはめる

 

よくあるスイカの選び方の戦略として,たたいたときに特に鈍い音が出たスイカを選ぶというものがある。

 

この音はおそらく新鮮なスイカの好ましい特徴からもたらされたものだろう。

 

精確に測定する器具を使えば,どんなスイカでもその熟れ具合を音から予測することができるようなアルゴリズムを統計的に見つけられるはずだ。

 

私はこの問題に特に関心がある。

 

と言うのも,かつて,スイカをたたいたときの音を記録できるように,手のこんだ加速度計をコンピューターにつなげる回路を作って調べようとしたことがあるからだ。

 

だが,私はスイカ8個でしか試さなかった。

 

これでは,熟れ具合を予測する精確なシステムを作るにはデータがとても足りない。

 

だから,非常に精確にスイカの熟れ具合を予測すると主張した論文に出会ったとき,私は当然のように興奮した。

 

この論文では,音を測定することで熟れ具合の変動を99.9%予測できるとしていた。

 

だが,考えてみてほしい。

 

この研究では,回答者たちが43個のスイカを味見し,熟れ具合について5段階で評価した。

 

回帰は,音響に関して測定したさまざまなものから熟れ具合の評価を予測するのに使われた。

 

なぜ回帰方程式がここまで精確になりえたのだろうか。

 

回答者たちに同じスイカをもう一度評価させたとしたら,自分自身の評価に99.9%の精度で一致することはおそらくないだろう。

 

主観的な評価はそんなに一貫したものではない。

 

どれだけ精巧な手法だったとしても,これほどまでの精度で予測することはできないだろう。

 

何かがおかしい。

 

この論文の手法をさらに慎重に検討してみよう。

 

個々のスイカを1ヘルツから1000ヘルツの範囲の周波数で振動させ,周波数ごとに位相偏移(本質的に言えば,振動がスイカを通り抜けるのにどれだけかかるかということだ)を測定する。

 

試された周波数は1600通りで,回帰モデルには1600個の変数があることになる。

 

そして,それぞれの変数について,熟れ具合との関係を推定する必要がある。

 

ここでは,スイカの数よりも変数の方が多いので,ぴったりな回帰モデルで当てはめることができる。

 

直線がどの2つのデータ点にもぴったり当てはめられるのと同じように,43個の変数がある数式があれば,43個のスイカを測定したものにぴったり当てはめられるのだ。

 

これは深刻なほどの過剰さだ。

 

たとえ音響と熟れ具合の間に関係がまったくなくても,43個のスイカに対して100%の精度の回帰方程式を当てはめることができるのだ。

 

これでは,(もし存在するならば)音響と熟れ具合の間の関係だけでなく,個人の評価と測定における偶然変動までも説明することになってしまう。

 

モデルが完璧に当てはまると考えたとしても,新しいスイカで試したとしたら,そのスイカにはそれ自身の測定誤差と主観的な評価があるので,このモデルは役に立たないことになる。

 

この研究の執筆者たちは,この問題を段階的回帰(stepwise regression)を使って回避しようとした。

 

段階的回帰とは,回帰においてどの変数が最も重要かを選び出すためによく使われる手法で,最も単純なやり方では次のように行われる。

 

まず1600通りの周波数を測定したものがどれもモデルに使われない状況から始める。

 

1600通りの仮説検定を行い,どの周波数が結果に対して最も統計的に有意な関係があるかを調べる。

 

最も統計的に有意だった周波数をモデルに加えて,残った1599個の周波数について同じことを繰り返す。

 

この手続きを統計的に有意な周波数がなくなるまで続ける。

 

段階的回帰は多くの科学分野においてよく使われているが,この手法は一般に良くない考え方だ。

 

読者は,すでに多重比較という問題にお気づきかもしれない。

 

仮定の上では,統計的に有意な変数だけをモデルに加えることで過剰な当てはまりを防ぐことになるのだが,非常に多くの有意性検定を実施すれば偽陽性は免れえない。

 

だから,選ばれる変数のいくつかは偽のものになる。

 

段階的回帰の手法は,全体の偽陽性率について,何も保証してくれないし,「最良」の定義が何であれ,「最良」な変数の組み合わせを選び出すことを保証してくれるわけでもない(段階的回帰の他の手法では,統計的有意性を用いずに他の基準を用いるが、それでも多くの同様な問題に直面することになる)。

 

だから,統計的有意性という見せかけがあったとしても,段階的回帰はとんでもない過剰適合(overfitting)を導きやすい。

 

つまり,ほとんどぴったりデータに当てはまる数式でありながら,まったく別のデータセットで試せば役に立たないことが分かるようなものを生み出すのだ。

 

試しに,まったく熟れ具合と相関がないスイカの測定値をランダムに生み出すシミュレーションをしてみたところ,相関がないにもかかわらず,段階的回帰では99.9%の精度でデータが当てはまった。

 

選ばれる可能性がある変数が非常に多ければ,こうならない方がむしろ驚くべき結果になるだろう。

 

ほとんどの場合,段階的回帰は上記のような極端なものにはならない。

 

選ばれる可能性がある変数が1600個もあるような状況は非常にまれだ。

 

 

しかし,数ダースの変数がある100個の観察事例という控えめな状況だったとしても,段階的回帰は精度の推定と統計的有意性とで過剰な結果をもたらす。

 

事実の誇張はもっと油断のならない問題だ。

 

「統計的に有意でない」ことは「まったく影響がない」ことを意味しないのである。

 

もし,選ばれる可能性のある変数が多すぎ,データが少なすぎるという先ほどの例のように,研究の検定力が不足していれば,各々の変数の効果を確実にゼロと区別するための十分なデータがないということになるかもしれない。

 

そして,結果に及ぼす影響を過剰に高く見積もってしまうほど不運なときにのみ,変数をモデルに加えることになる。

 

そうしたモデルは非常に偏ったものになるだろう(たとえ正式な段階的回帰の手法を用いていなかったとしても,モデルを単純にするために「有意でない」変数を切り捨てることはしばしば行われている。

 

こうしたものについても,段階的回帰と同じ問題がもたらされる)。

 

段階的回帰には何種類かの方法がある。

 

先ほど説明したものは,何もないところに変数を加えていくことから始めることから前進選択(forward selection)と呼ばれる。

 

これとは別の方法として,後退消去(backward elimination)というものがある。

 

これは, 1600個の変数をすべて含んだモデルから始め,統計的に有意でないものを1つずつ外していくというものだ。

 

この手法は,スイカの例ではうまくいかない。

 

1600個の変数があるのに,スイカは43個しかないので,1600個の変数すべての効果を独自に決定するための十分なデータがないことになる。

 

最初の一歩でつまずくのだ。

 

新しい変数をモデルに加える基準は,別のものにすることも可能だ。

 

より現代的な手法では,統計的有意性のかわりに赤池情報量規準(Akaike information criterion; AIC)やベイズ情報量規準(Bayesian information criterion; BIC)のように多くの変数を含むモデルにペナルティーを与えることで過剰適合を減らす指標を用いる。

 

他の種類の段階的回帰では,さまざまな基準によって1段階ごとに変数の追加と除外が行われる。

 

ただし,方法が変わったときに同じ答えに帰着することは保証されないため,同じデータに対する2種類の分析がまったく違った結果になる可能性がある。

 

スイカの研究では,こうした要因が合わさって,ありえないほど精確な結果が生み出されたのだ。

 

さて,どうすればこうした問題を回避しつつ,回帰モデルを適切に評価できるのだろうか。

 

1つの方法として,交差検証がある。

 

これは,一部のスイカだけを使ってモデルを当てはめた上で,そのモデルを使って残ったスイカの熟れ具合を予測することで,モデルの有効性を試すものだ。

 

もしモデルが過剰適合となっているのであれば,交差検証でうまくいかなくなる。

 

広く使われている交差検証の手法として,1点抜き交差検証(leave-one-out cross-validation; LOOCV)がある。

 

この手法では,データ点を1個だけ除いたデータでモデルを当てはめた上で,そのモデルが残った1個のデータ点を予測する能力を評価する。

 

そして,残すデータ点を1つずつ変えて,この手続きを繰り返す。

 

スイカの研究では,1点抜き交差検証を実施したが,それでも同じように信じがたい結果が得られたと主張されている。

 

ただ,データを入手することなしに,この方法が本当にうまくいったかについて確信を持つことはできない。

 

こうした欠点があるにもかかわらず,段階的回帰は人気のある手法でありつづけている。

 

統計的に有意な効果がある変数を選ぶというのは,直感的には魅力的なアルゴリズムなのだ。

 

しかし,単一のモデルを選ぶことは,普通は馬鹿げたほど自信過剰なことなのだ。

 

選ばれる可能性がある変数が多数ある状況では,結果をほぼ同じぐらいうまく予測できる変数の組み合わせがたくさん存在することもしばしばある。

 

さらに43個のスイカを試したとしたら,熟れ具合を予測するための1600種類の音響から別の組み合わせを選んでいただろう。

 

段階的回帰は,誤解を招くような確実さを生み出す。

 

つまり,段階的回帰は,20個から30個の変数の組み合わせが熟れ具合を予測するための唯一の組み合わせだという主張を生み出すのだが,実は同じぐらいの予測ができる組み合わせは他にもたくさんあるのだ。

 

もちろん,ほんのわずかな数の変数だけが結果に影響していると信じることができる理由がある場合もあるだろう。

 

希少ガンの原因となる遺伝子を特定しようというときは,候補となる遺伝子が何千個とあっても,原因となるのはほんのわずかな数しかないと知っていることもあるだろう。

 

こうした場合は,最も良い予測を作り出すことに関心があるのではなく,単に原因となる遺伝子を知りたいだけなのだ。

 

段階的回帰はやはり最良の道具立てではない。

 

LASSO(最小絶対縮小選択演算子[least absolute shrinkage and selection operator]を短くしたもので,すばらしい略語だ)は数学的により優れた特性を有し,統計的有意性の主張で利用者をあざむくことがない。

 

しかし. LASSOは非の打ちどころのないものではない。

 

完璧な自動的解決法は存在しないのだ。

 

 

データをスイカに当てはめる【統計解析講義応用】


セミナー詳細                    解析ご相談                    LINEでお友達

データをスイカに当てはめる【統計解析講義応用】

データをスイカに当てはめる【統計解析講義応用】