Risk:林岳彦の研究メモ自らの研究に関連するエトセトラについてのメモ的ブログです。リスク学と統計学を扱っています。リスクお久しぶりです。『愛なき世界』の日、いわゆる(マイブラッディ)バレンタインデーですね。何かと雑音が多いこの世界ですが、いつでも自分の足元を見つめて行きましょう。廿TTのあたりの皆様の良記事に触発されて「仮説検定」について何か書いてみようと思いました。書こうと思えば色々な側面から書ける気もするのですが、今回はちょっと斜めからのアプローチとして、「リスク分析の人の頭のなかで仮説検定はこんな感じに見えている」というところを書いていきたいと思います。見るに載っているような「確率論的リスク分析手法」を用いるアプローチ一般を指して「リスク分析」という言葉を使っていきます*1。書いていきたいと思います。(今回もとても長いです。あと、今回とくに一部内容に余り自信がないので*2、もし間違ってたら適宜ツッコミおねがいいたします)前置き:リスク分析では仮説検定は殆ど使わなかったりしますさて。したら意外に思う方もいるのかもしれませんが、「リスク分析」においては仮説検定を使うことは殆どありません。私も一応リスク分析に類する論文を何報か書いていますが(論文へのリンク)、それらの論文の中で仮説検定を用いたことは一度もありません*3。Vose著の『入門リスク分析』の中でも仮説検定の話はほんの僅かしか出てきません*4。これは、そもそも「リスク分析」のツールボックスの中に「仮説検定」が基本的に含まれていないことを意味しています。リスク分析においては仮説検定が殆ど使われないのでしょうか?なぜリスク分析においては仮説検定は使われないのか:本来的な理由と技術的な理由リスク分析において仮説検定が殆ど使われない理由としては、本来的なものと技術的なものの2通りの理由があります。本来的な理由の方から説明してみましょう。本来的に、「リスク分析」とは、リスク(=影響と不確実性の在りよう)を推定し、意思決定者の参考となる情報を提供することが基本的な目的です。リスク分析の本懐であるわけです。ここで、「仮説検定」がリスク分析と本来的に相性が悪いところは、仮説検定が「意思決定の自動代行機能」の側面を持っているところです。リスク分析の目的が「意思決定支援」であるにもかかわらず、仮説検定は仮説の採択に関して論点を先取りして肝心の「意思決定」をオートマティックに代行してしまう*5側面があり、この性質は「リスク分析のツール」としてはとても悪質なものであると言えます(→参考:具体的な弊害についての過去記事)。一つの、技術的な理由の方は、リスク分析では推定の不確実性を見るときに基本的に「不確実性の分布全体を見る」ので、仮説検定がそもそも不要であることです。本記事では以下、この「不確実性の分布全体を見る」ということについて、例を交えつつ説明していきたいと思います。「不確実性の分布全体を見る」とはどういうことか:ブリの新エサを仮想例としてでは、「不確実性の分布全体を見る」とはどういうことなのかを見て行きます。説明のための仮想例として、「ブリの養殖業」における、ブリをより大きく育てるための「新エサの開発」についてのケースを考えてみましょう。その他この商品を含むブログを見るあなたはブリの養殖業を営んでおり、ブリを大きく育てるための新エサを開発しているとします。実際に、その新エサの効果を調べるために、新エサを用いて1群のブリを育てているとします。この図は、サンプルした30匹のブリの体長のヒストグラムを表しています。この図から、体長には70cm〜130cmほどのバラツキがあり、平均は100cm〜110cm程度であることが見て取れます。ここで話を単純化するため、「従来のエサ」で育てた場合の平均体長が「100cm」であることが既に知られていると仮定します。(また、エサの違いは体長の分散に影響を与えないと仮定します)このとき、「従来の餌と比べた場合」の新エサの体長への影響の指標は、「新エサで育てたブリの体長」から、従来の餌による平均体長である「100cm」を差し引くことにより得ることができるでしょう。体長変化の平均値を算出mean(weight_diff.v)となります。図を見ると、分布の全体はゼロよりも若干右側に重心があるようにも見えます。「ゼロより右側が多い」ということは、従来のエサに比べて、「新エサは体長をプラス方向に変化させる傾向がある」ということになります。ここで、上の30匹の体長の変化分の平均を計算すると「+4.23cm」という値が得られました。ここでもういっそのこと「新エサの方が従来の餌よりも体長を大きくする」ということでOK・・・と結論してしまいたいところですが、これはあくまでも30匹のサンプルから得られた「サンプルの平均値」であるため、この程度の差はたまたまの偶然により生じている可能性も否定できません。ここで、本当に新エサが「どのていど体長を増加させると期待できるのか」を判断する際には、限られたサンプルから「サンプル元の集団における平均値」を推定する際に生じる「不確実性」を考慮する必要があります。(以下、煩雑さを避けるために「サンプル元の集団における平均値の推定」のことを単に「平均値の推定」と略記していきますが、推定している対象はあくまでもサンプル元の集団における平均値であることにご留意ください)さて。このような、限られたサンプルからサンプル元の集団における値を推定する際の「不確実性」を取り扱うためのよく知られた方法の一つは仮説検定です。今回はいわゆる「リスク分析」っぽいアプローチを用いてこの「不確実性」を取り扱ってみたいと思います。ブートストラップ法により「平均値の推定における不確実性」を分布として描いてみようはい。言っても、そんなに特別なことをするわけでもありません。確率論的リスク分析においては、「推定に伴う不確実性」を可能なかぎり常に「分布の形」で取り扱っていきます。実務的には、そのための手法には大きく分けて「ブートストラップ法」と「ベイズ法」の2つのやり方があります。今回は、比較的とっつきやすい手法として「ブートストラップ法」の方を使っていきます*6。(1)の計算をものすごくたくさん繰り返すことにより、ものすごくたくさんの数の統計量の推定値を算出し、その推定値の分布全体を得るという方法です。(なんのこっちゃかよく分からない方は、基礎統計学講座@ウィキやフリーソフトによるデータ解析・マイニングや奥村晴彦さんの記事のあたりの良記事をオススメいたします)まあ案ずるより産むが易しということで、とりあえずやってみます*7。このブートストラップの計算では、「ブリの体長データそのもの」ではなく「従来のエサと比べた場合の変化量(つまり「体長データ」から100cmを差し引いたもの)」を用いています。ブートストラップの結果として、以下のような「従来のエサと比べた場合の変化量」の推定された平均値の分布(ヒストグラム)が得られます:はい。この分布が、「新エサが体長に与える変化の平均値の推定に伴う不確実性」を「分布の形」で表したものになります。確率論的リスク分析においては、推定に伴う不確実性をこのような分布の形で扱うことが一般的です。(一般論として、このような分布が何を意味しているのかというと、例えば、この分布の「幅」は推定の「精度」を表していることになります。30匹よりも少ないサンプルに基づきこのような分布を描けば「より幅の広い分布」が得られますし、30匹よりもずっと多数のサンプルに基づけば「より幅の狭い分布」が得られることになります)さてさて。リスク分析においてこのようなやり方で不確実性を扱うことのメリットとは一体何でしょうか。その主なメリットは、「推定の不確実性」の二次利用のしやすさにあります。不確実性を「分布の形」で保持しておくことの利点を見てみるはい。推定における不確実性を上記のような「分布の形」で保持しておくと、その分布データを意思決定支援のための新たな解析に簡単に供することができるというメリットが生じます。・・・と言われてもにわかには何のことか分からないとは思いますので、上記の解析を用いて、意思決定において非常に重要な項目であると思われる「ブリの売価」がどう変化するかについての新たな解析例を展開してみましょう。(3/2))で表せることが知られているとします*10。1,000,000円(100匹当り)になると計算できます。^(3/2))と計算することができるでしょう。ここで、「新エサによる体長変化の平均値」の推定の不確実性を前述のような「分布の形」で保持している場合には、その分布を表す数値データ群を「新エサによる体長変化」の値としてそのまま代入してやることにより、体長変化に関する推定の不確実性の影響込みでの「新エサで育てた場合の売値」の予測分布をすぐに算出することができます。計算の結果として、上図のような「新エサで育てた場合の売値」の予想分布が得られます。この予想分布がどのように「意思決定を支援」しうるかを見てみましょう。上図の予想売価の平均値を算出すると「1,064,406円」となり、従来の売価が「1,000,000円」なので、新しいエサによる100匹当りの追加コストが「+64,406円」のところが(新エサの効果推定に伴う不確実性の下での)新エサ導入の"損益分岐点"になると計算できます。売価が従来のエサと同じ「1,000,000円」となるのは分布の4.8パーセンタイルのところであるため、新エサの効果推定に伴う「不確実性」を考慮に入れた場合には、売価が従来のエサのものを下回ってしまうリスクも依然5%程度はあることがわかります。こんなかんじで統計的推定に伴う不確実性の分布を「二次利用」していくのがいわゆる「リスク分析」っぽい解析アプローチとなります。このように、もともとの「データ(今回の場合は新エサによる体長データ)」のコンテクストを、より意思決定に直接的に関連するコンテクスト(今回の場合は「売値」の予測分布)へとできるだけ定量的に繋ぐための解析を行うことがリスク分析の基本的なミッションになります*11。言っても、場合によってはリスク分析においても(主に説明のための便宜として)、「仮説検定」や「信頼区間」のような計算が求められることもあります。次は、不確実性の「分布」がそれらの古典的な統計的概念とどういう関係にあるのかを見ていきます。関連性は、図で見ると分かりやすいので図に描いてみます:この図は上述のブートストラップ法で算出した「新エサによる体調変化の平均値」の推定値の分布に、「仮説検定」や「信頼区間」との関係の説明を書き込んだものです。この図を使って説明をしていきます。上図(B)の場合である「信頼区間」を見ていきます。推定値の分布と信頼区間との関連性はシンプルで、いわゆる95%信頼区間というのは推定値の分布の2.5パーセンタイル*12と97.5パーセンタイルの値に挟まれる範囲を意味します。]を簡単に計算することができます。hoxo_mさんの記事)また、上図(A)の仮説検定との関連に関しては、上記の95%信頼区間が「ゼロをまたぐ」ことから、「新エサによる変化の平均値はゼロと異ならない」という仮説を棄却することができない、という5%有意水準を念頭においた仮説検定的な判断を行うことも可能です。(*補足:ここでなぜ仮説検定”的”という言い方をわざわざしているかと言うと、いわゆる「仮説検定」は帰無仮説が正しいという仮定のもとで生成された統計量の分布のもとで、実際に得られているサンプルからの統計量を評価するというロジックで行うので、上記の例のように(帰無仮説ではなく)実際に得られているサンプルの統計量の分布をもとにした判断を「仮説検定」と呼ぶのは適切ではないと思われるからです*13。kamedo2さんの記事)同様に、もし「新エサによる変化の平均値がゼロより大きいと言えるかどうか」の判断を5%有意水準を念頭においた(片側)仮説検定的に行う場合には、5%信頼下限値(=分布の5パーセンタイル値)より上の区間がゼロを含むかどうかにより判断を行うことも可能です。(今回の例では推定値の分布の5パーセンタイル値は「0.039」というゼロより大きい数値になり、5%信頼下限値より上の区間にはゼロを含まないことになるので「新エサによる変化の平均値はゼロよりも大きい」と判断することができます)はい。このように、解析を通じて不確実性を「分布の形」で保持してさえいれば、信頼区間や仮説検定的な解析もニーズに応じて簡単に行うことができます。このため、リスク分析では不確実性を「分布の形」で取り扱うやり方がデフォルトとして好まれる一方で、仮説検定に関するエトセトラには余り本来的に興味が持たれない、ということになります。(喩えて言うと、不確実性を「分布の形」で取り扱うことを志向することは、魚を「一本まるごと」取り扱うことを志向することに似ていると言えます。よる解析の上位互換とも言えるそのためリスク分析のプロは仮説検定に本来的に興味がないはい。こんなかんじになるかと思います。補足しておきますと、この記事を通して私が言いたいのは「何がなんでも不確実性を扱うときは分布で扱え」ということではありません。どちらかと言うと、「不確実性をどのように扱ってもいいけれど、アタマの中のイメージとしては常にどっかで「分布の形」を想像しておくべし」ということが伝えたいことです。なんというか、不確実性について「分布のイメージ」を持っている人がそれを「仮説検定」や「信頼区間」の言葉に変換するのは容易ですが、仮説検定のp値しか気にしてない人がそれを分布のイメージに翻訳するのは難しいので、実際の解析法として何を使うかはともかくとしても、「分布のイメージ」を常にアタマの中にもっておくことが大事かと思います。実務的にも、例えば、リスク分析においては「分布のかなり端っこの部分が特に重要」だったり「推定分布が多峰型」だったりすることもありますので、そんなときに「分布の形」を無視して信頼区間だけで解析しようとすると痛い目にあうので注意が必要です。このような場合も不確実性についての「分布のイメージ」がアタマに入っていると地雷を避けることができるかと思います。本懐であるのは何もリスク分析だけではなく、ビジネス畑の「データサイエンティスト」の方々の中にもそのような方々が多くおられるのでないかと推測しております。見るという良書を拝読させていただき大変勉強になったのですが、この中に今回示したような「リスク分析」、つまり「データ解析」の結果を二次利用してさらなる解析を行い、意思決定により密接に関連するコンテクストにおける指標への影響を提示しうるような、そんな解析アプローチも載っていても良いのではなかろうか、という感想を抱きました。スーパーで出来合いの「切り身」を買ってくるようなデータサイエンティストではなく、クライアントのニーズに沿って魚を一本まるごといかようにでも捌ける「寿司屋の大将」のようなデータサイエンティストを目指すのならば、そんな「リスク分析という包丁」も一つ持ってると身を助くこともあるのかも、とか思ったりする今日このごろです(←無責任)。本記事がそのような「寿司屋の大将」への入り口となりうればとても嬉しいと思っております。tjoさんの記事*7:まあ30匹程度でブートストラップやるのは精度が低いかもですが今回はその辺はあまり気にせずにやっていきます*8:実装のコードはいろいろ方法はありますが、今回はsample関数を使いました。分布の形状が綺麗になるように多めに50000回の反復をさせています*9:すみません。フィッシャー対ネイマンの論争にも...2010-07-01変動性と不確実性について説明してみた変動性と不確実性の説明に関する自作メモです。変動性と不確実...2010-06-02「統計的推測」の目的による分類のポンチ絵を描いてみただいたいこんな感じでしょうか。Loading...はてなブログをはじめよう!takehiko-i-hayashiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。