#統計 いやあ、これにはマジでびっくりした。😱

ベイズ版95%信用区間(確信区間)がゼロをまたがなくなるまでNを増やす行為は、P値が5%を切るまでNを増やすp-hacking行為と(小さな誤差を除けば)数学的に同等です。

P値が5%を切るまでNを増やすp-hacking行為の是非も規範の問題で済ませられる?
#統計 2020年3月に出版された豊田秀樹さんの本には、ベイズ統計では【データを取り増しても】よいし【事前登録~も必要ありません】と言っています。(他にも色々!)

これを「ベイズ統計を使えば研究不正扱いされていたことを堂々とできるようになる」と解釈する人達が出ることを危惧していました。
#統計 より正確に言えば、同様の言説を他で見た人達が、「ベイズ統計を使えば研究不正扱いされていたことを堂々とできるようになる」と既に信じている場合もあるのではないかと思いました。

これ、めちゃくちゃまずくないですか?
#統計 数学的に「P値が5%未満になる」とほぼ同値になることが前もって分かっている条件を、「ベイズ統計では規範(主義)が違うからデータ取得の終了条件として採用してよい」とするのは非常にまずい。現実の科学研究でそれをやる人達が出て来たらどうする?

Bayes hacking

errorstatistics.com/2017/04/01/er-…
#統計 どういう話であるかを解説

ここに偶数と奇数の目が同じ確率で出るイカサマでないサイコロXがあったとします。

そして、「サイコロXの出目の偶奇に偏りがない」という仮説を否定したい人が

「その仮説が有意水準5%で棄却されるまでサイコロを振り続けてやる」

と言った。続く
#統計 数学的に理想化された設定では、その人はサイコロを繰り返し振って、出目のデータを順序増やして行くことによって、確率1でいつかは「サイコロXの出目の偶奇に偏りがない」という仮説の二項検定におけるP値を5%未満にできます。

続く
#統計 実際に成功したその人は

「ほら、サイコロXの出目の偶奇は偏っているじゃないか!
もちろん、サイコロXの出目の偶奇が偏っていなくても、
5%の確率でその仮説は棄却されちゃうので、
完璧にサイコロXがイカサマなことを
証明できたわけではないんだけどね」

とデタラメを言った。続く
#統計 その人は、実際にはサイコロの出目の偶奇が偏っていなくても確率1で成功する作業をやっただけなのに、5%の低い確率でしかそうならないかのような印象操作をしようとしているわけです。

その人の名前はP.ハッキング。

続く
#統計 そこにベイズ統計に詳しい別の人(仮にB氏と呼ぶ)がやって来て、「P.ハッキング氏は頻度主義統計学のルールを違反している」と言いました。

さらにこう言った。「ベイズ統計ならば尤度原理を満たすので、サイコロの出目のデータをどのように止めたかに推論の結果は依存しませんよ」と。続く
#統計 そのB氏は、ベイズ統計の95%信用区間から「偶数が出る確率=0.5」が除外されるまで、サイコロを振り続けた。

そしてこう言った。「P.ハッキング氏は頻度主義統計学のルール違反をしていたが、結論だけは正しかった。ベイズ統計でも95%信用区間から『偶数が出る確率=0.5』は除外された」と。
#統計 これを見ていた聴衆の一人がB氏にこう聞いた。

「ベイズ統計ではnullをまたがないようになるまでNを増やし続けても、95%信用区間の95%の意味は変わらないのですか?」

B氏は「事後分布の意味合いはどうNに達したかによらない」

続く
#統計 実際、ベイズ統計での事後分布は、尤度函数が定数倍しか違わないと、同じになります。

そして、これが「規範の問題」であることをB氏は強調した。

この実演を見ていた聴衆達はベイズ統計ならば自分が否定したい仮説が否定されるまでデータを取り続ければ良いことを「理解」して満足した。続く
#統計 以上でこれがどういう話であるかの解説を終えます。

私は、実際に、聴衆達がベイズ統計ならば自分が否定したい仮説が否定されるまでデータを取り続ければ良いことを「理解」して満足してしまうことを心配しているわけです。

それは理解ではない。
#統計 自分でコンピュータシミュレーションで遊びたい人は

nbviewer.org/github/genkuro…

を参照。 #Julia言語

正規分布近似によるP値 < 5% とすることにP.ハッキング氏がn回までに成功する確率は緑の破線です。

ベイズ版95%信用区間から0.5を外すことにB氏がn回までに成功する確率は青線です。
#統計 B氏はこう言うかもしれない。

「その青線で示された確率は,頻度主義統計学の標本分布で測った確率であり、ベイズ主義では標本分布は使用しない。このように、頻度主義とベイズ主義の規範は違うのだから、そのような比較は無意味である」と。

まあ本当に言ったら、あきれてしまうのですが。
注意・警告:P.ハッキング氏もB氏も実在の人物ではありません(特にB氏)。その二人は私が話を分かりやすくするために作った仮想的な人物です。類似の発言をしている人を発見しても勘違いしないよう、お願いいたします。😝
#統計 #Julia言語

件のノートブックを更新

nbviewer.org/github/genkuro…

添付画像①②の青線は③のように定義されたベイズ版でのP値の類似物です。事後分布だけを使って定義されています。

緑のdashdot線が二項分布の正規分布近似によるP値で、ベイズ版のP値によく一致しています。
#統計 #Julia言語

nbviewer.org/github/genkuro…

添付画像を見ればわかるように、「n回中k回成功」のデータのn=100, k=30の場合では、ベイズ版のP値と正規分布近似による二項検定のP値はほとんどぴったり一致しています。
#統計 ベイズ版のP値は

パラメータがベイズ版95%信用区間に含まれない
⇔ ベイズ版P値 < 5%

が成立するように定義してあるので、ベイズ版P値と通常の検定のP値の一致は、「パラメータがベイズ版95%信用区間に含まれないこと」と「通常のP値 < 5%」がほぼ同値であることを意味しています。
#統計 純粋に数学的な理由から(ゆえに誰も否定できない)、件のノートブックで扱ったケースでは「パラメータ値がベイズ版の95%信用区間から外れる」という条件と「通常のP値が5%未満になる」という条件は実践的には同じだと思ってよいです。nが十分大きいならほとんどぴったり一致している。
#統計 だから、「『偶数が出るの確率=0.5』という仮説のP値が5%未満になるまでデータを取得し続ける」と「偶数が出る確率のベイズ版95%信用区間に0.5が含まれなくまでデータを取得し続ける」は実践的にはほぼ同じことをやっているとみなせます。純粋に数学的に言えることなので誰も否定できない。
#統計 「『偶数確率=0.5』という仮説のP値が5%未満になるまでデータを取得し続ける」のはルール違反だが、「偶数確率のベイズ版95%信用区間に0.5が含まれなくまでデータを取得し続ける」のは構わないとしてしまうことは、同じ行為がルール違反になったりならなかったりするという主張とほぼ同じ。続く
#統計 もしかしたら、私が知らないベイズ統計の規範の中では、「偶数確率のベイズ版95%信用区間に0.5が含まれなくまでデータを取得し続ける」のが構わないことから、「『偶数確率=0.5』という仮説のP値が5%未満になるまでデータを取得し続ける」のも構わないということになっているかもしれません。😊
#統計 仮にそうなら、論理的な一貫性はあるのかもしれませんね。😝
#統計 訂正

❌「偶数確率のベイズ版95%信用区間に0.5が含まれなくまでデータを取得し続ける」

⭕️「偶数確率のベイズ版95%信用区間に0.5が含まれなくなるまでデータを取得し続ける」

「なる」が欠けていた。

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with 黒木玄 Gen Kuroki

黒木玄 Gen Kuroki Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @genkuroki

13 Dec
#統計 添付画像下段はよくあるベイズ版95%信用区間(確信区間)の最高事後密度(HPD)版です。95%の部分は0から1の間の任意の実数に一般化できる。

添付画像上段のベイズ版P値は「信頼区間と検定が表裏一体」という原理を適用して定義されています。

nbviewer.org/github/genkuro…
#統計 ベイズ版95%信用区間もベイズ版のP値も事後分布の情報だけを使って定義されており、通常の信頼区間やP値の作り方とは異なります。

しかし、数学には定義が全然違う量がある条件のもとでほぼ同じ値になることを証明できる場合が多数あって、解析学の基本的な考え方になっています。
#統計 実践的には無視できる違いしかない2つの数学的量を使った分析や推論は平等な扱いをする必要があります。

❌定義の違いは規範の違いから来ている。違いを無視できるほど同じ値になるとしても、それらは異なる使い方をされなければいけない。

などと言うと、単なるトンデモさんになってしまう。
Read 9 tweets
12 Dec
#Julia言語 いきなり、struct ~ end の中で(内部)コンストラクタをnewを使って定義するのは避けた方が無難。new無しにはできないことをやりたくなったら、初めてそうするのがよいです。

公式ドキュメントにも可能な限り内部コンストラクタは避けよと書いてあります。

docs.julialang.org/en/v1/manual/c…
#Julia言語 内部コンストラクタを定義せずに、例えば、

struct Foo{A, B}
a::A
b::B
end

と書けば、Foo型オブジェクトのコンストラクタたち

Foo(a::A, b::B) where {A, B}
Foo{A, B}(a, b) where {A, B}

が自動的に定義されます。

ひとまずはコンストラクタとしてこれらを使えば大丈夫。
#Julia言語 クラスがあるプログラミング言語から来た人は、struct ~ end の内側でコンストラクタを定義した方が良いと誤解しがちだと思う。

Juliaでは、クラスベースのOOPを廃して、パラメータ付きの型による多重ディスパッチでエコシステム全体を構築した方が効率的だという話になっている感じ。
Read 8 tweets
12 Dec
に訂正があるので注意!

「ある閾値以上大きくなる」の「ある閾値以上」が文字数のプレッシャに負けて抜け落ちてしまった。

具体的な計算例の方を見れば誤解は起こらないはず。
#統計 誤解しないために見て欲しい計算はこれ↓

nbviewer.org/github/genkuro… Image
Read 5 tweets
12 Dec
対数尤度を「浮動小数点数で尤度を計算してからlogをとる」で計算するとマイナス無限大になりがち。

尤度を浮動小数点数で計算するとぴったり0.0になりがち。

他にもマイナス無限大が得られるパターンが結構あると思う。
確率がらみの数値計算では、対数尤度は「尤度の対数」で計算しちゃだめで、対数尤度を直接計算するコードを書く必要がある。

例えばgamma(x)やbeta(a, b)の類は使っちゃダメで、loggamma(x)やlogbeta(a, b)を使う。

混合正規分布を使っている場合にはlogsumexp的な工夫が必要になる。
確率密度の値は浮動小数点数では容易に0.0やInfになるので、確率密度を扱うパッケージには、確率密度の値の対数を直接扱う機能が必ず付いているはず。

私はほんの一部の狭い分野を除くあらゆる分野のど素人なので、この手のことも知らずに、結構酷いコードを書いていたことがある。
Read 6 tweets
12 Dec
#数楽 統計学の勉強と無関係に、弧度法による角度の定義とtanの定義まで戻れば、直線 y = ax とx軸で挟まれた部分の角度が

θ = arc tan a = ∫₀ᵃ dt/(1 + t²)

になることが直接的に導けることを確認すると、高校で習ったことの再構成ができてうれしいかも。続く

genkuroki.github.io/documents/High… ImageImageImage
#数楽 x²+y²=1の右半分とy=txの交点は

(x(t), y(t)) = (1/√(1+t²), t/√(1+t²))

になります。これの軌跡のt=0からt=aまでの長さが弧度法の意味での角度θの定義なので、

θ = arc tan a = ∫₀ᵃ √(x'(t)²+y'(t)²) dt

です。ここでarc tanは角度θをaに対応させる函数tanの逆函数。続く
#数楽 ここまで、高校の数学の教科書に書いてあることしか使っていないことに注意。図を自分で描けば分かり易い。

上の場合にちょっと計算すると

√(x'(t)²+y'(t)²) = 1/(1+t²).

これが arc tan t の導函数であることは、角度とtanの高校数学の教科書における定義からほぼ直接的に導かれる。
Read 7 tweets
12 Dec
かけ算順序固定強制指導を擁護する人達は「算数が苦手な子は理解していないので出て来た数を機械的にかけて済ます。ゆえにかけ算順序の指導はそのような子のために役に立つ」のように言います。

個人的には、これもまた浅はかなウソをついているように感じています。続く
ググって各種の調査結果で児童がどのように問題を解いたり解くことに失敗しているのを見ると、本当に算数が苦手な子が算数を苦手になる理由は出て来た数を機械的にかけているからでは無さそうなことは明らかだと思います。

算数が本当に苦手な子はそういう類の子ではない。続く
例えば、伊藤宏先生の調査結果(添付画像)を見てください。

かけ算順序が問題文に出て来た順序と同じで出題者的に誤りの子は問題文で示された場面を絵で描くことには成功しています。

本当に算数が苦手な子は、そもそもかけ算を使える問題であることが分かっていない。続く

mnavidata.edu-c.pref.miyagi.jp/manage/wp-cont… Image
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(