大数の法則(弱法則)の証明
[mathjax] 統計の基本中の基本らしい もう、統計の基本中の基本らしい大数の法則。 ランダムサンプリングした標本から母集団を推測できる話の根幹。 ビッグデータを全量検査しなくても同じかもしれない。 不明な母集団から観測値(x)を記録していくと、 観測値(x)の平均(標本平均)は母集団の平均(母平均)に収束する 母集団がよくわかってなくても、 母集団が十分に混ざり合っていれば、 いくつか標本を取るだけで母集団の平均がだいたいわかる。 コイン投げで出る表の数の母平均は0.5だろうけども、 10回投げて4回出た -> 0.4、 100回投げて53回出た -> 0.53。 1000回投げて490回出た -> 0.49、 ... のようにしていくと0.5に近づいていく。 単に収束する、というのと別に、統計の分野では「確率収束」という言葉がある。 範囲をもった確率値が振れながら一定の確率に近づいていくことを言うんだろう。(ざっくり) 大数の法則の弱法則の証明を見てなるほどと思ったので複写してみる。 無理やりだが結構すぐに証明できる とってつけたようにマルコフの不等式とチェビシェフの不等式があれば、 無理やりだけども簡単に証明できる。 マルコフの不等式、チェビシェフの不等式の証明と意味はこちら。 https://ikuty.com/2018/07/06/rare_observation/ 大数の法則の弱法則は以下の通り定式化される。 平均(mu)、標準偏差(sigma)という分布があるとする。 互いに独立な事象が起こる確率の確率変数(X_1,X_2,cdots,)と任意の(epsilon ge 0)について、 begin{eqnarray} lim_{ntoinfty}Pleft(left|frac{X_1+X_2+cdots+X_n}{n}-muright|ge epsilonright)=0 end{eqnarray} 標本平均と母平均の差が(epsilon)より大きくなる確率が0に収束する。 これを証明する。 まず(Y_n)を以下とする。 begin{eqnarray} Y_n = frac{X_1+X_2+cdots+X_n}{n} end{eqnarray} 期待値の定義から、 begin{eqnarray} E(Y_n) &=& frac{nmu}{n} \\ &=& mu end{eqnarray} 分散の定義から、 begin{eqnarray} V(Y_n) &=& frac{nsigma^2}{n^2} \\ &=& frac{sigma^2}{n} end{eqnarray} チェブシェフの不等式として以下が成りたつ。 begin{eqnarray} P(|Y_n-mu|ge a) le frac{E(|Y_n-mu|^2)}{a^2} end{eqnarray} 右辺の分子を分散で書き換えると、 begin{eqnarray} P(|Y_n-mu|ge a) le frac{sigma^2}{na^2} end{eqnarray} 両辺のnの極限をとると、 begin{eqnarray} lim_{n to infty} P(|Y_n-mu|ge a) &le& lim_{n to infty } frac{sigma^2}{na^2} \\ lim_{n to infty} P(|Y_n-mu|ge a) &le& 0 end{eqnarray} なので示された。 都合よくチェビシェフの不等式がある感じだけど、あれば簡単。 さて、ではどういうことか 式をこねくり回しても意味がないので、 少し考えてみる。
レアな観測がレアであることの定式化
[mathjax] レアな観測がレアであることの定式化 マルコフの不等式。 任意の確率変数(X)と(agt 0)に対して以下が成りなってしまう。 begin{eqnarray} P(|X|ge a) le frac{E[|X|]}{a} end{eqnarray} ( k=a/E(X) )とおくと以下となり、 平均の(k)倍を超える確率が(frac{1}{k})以下であることを意味する。 begin{eqnarray} P(|X| ge k E[|X|]) le frac{1}{k} end{eqnarray} 証明は以下の通りにする模様。 結構簡単に導かれる。 begin{eqnarray} E(|X|) &=& sum_{x}|x|P(X=a) \\ &ge& sum_{x:|x|ge a}|x|P(x=a) \\ &ge& sum_{x:|x|ge a}aP(x=a) = a P(|x|ge a) \\ end{eqnarray} 大数の法則の弱法則の証明のためにマルコフの不等式をいじる。 (a = a^2)、(X = (X-mu)^2)とおく。 マルコフの不等式は以下のようになる。 begin{eqnarray} P(|x-mu|ge a) le frac{E(|X-mu|^2)}{a^2} end{eqnarray} チェビシェフの不等式という名前が付いているらしい。 ちなみに、 チェビシェフの不等式について、 begin{eqnarray} P(|X-mu|ge a) &le& frac{sigma^2}{na^2} \\ end{eqnarray} (a)を(ksigma)とする。 begin{eqnarray} P(|X-mu|ge ksigma) &le& frac{sigma^2}{nk^2sigma^2} \\ &=& frac{1}{nk^2} \\ &le& frac{1}{k^2} end{eqnarray} これはどういうことか。 平均から(ksigma)離れたデータはたかだか全体の(frac{1}{k^2})しか存在しない。 凄まじい。 母集団が平均(mu)、標準偏差(sigma)をもつ正規分布である場合、 全体の97.5%が(2sigma)の区間に存在することを利用して、仮説検定、信頼区間を決めたりしてたが、 正規分布でない一般の分布においても(k)を上手く決めることで、同様に仮説検定、信頼区間を決めたりできる。 なんで持ち出したのか それは、この2つの不等式を使うことで大事な大数の法則を証明できるから。
95%信頼区間
[mathjax] 95%信頼区間に関する本を読んだのでまとめてみる。 仮説検定振り返り まず、仮説検定について振り返る。 母集団が正規分布(平均(mu)、標準偏差(sigma))に従うとき、母集団の数をNと仮定した場合、 観測された標本値がxであったとすると、 Nとする仮定は棄却できるかどうかを確かめることを仮説検定としていた。 棄却可否の根拠は以下の式で考えた。 (z = frac{x-mu}{sigma})と変換すると、zは標準正規分布をなす。 標準正規分布の95%予言的中区間は(-1.96 leq z leq 1.96)であるから、 begin{eqnarray} -1.96 leq frac{x-mu}{sigma} leq 1.96 end{eqnarray} つまり、標本値が仮定する正規分布の95%予言的中区間に含まれているか否かを根拠とした。 zが範囲からはずれる場合、Nという仮定を棄却する。 95%信頼区間 今、母集団のN数から平均、標準偏差を求められるものとする。 例えば、コインをN回振ったときに表が出る回数の平均(mu )は( frac{N}{2} )、標準偏差(sigma)は(frac{sqrt{N}}{2})。 このとき、未知の変数(x)について、仮定Nを棄却できない範囲は以下の通りである。 begin{eqnarray} -1.96 leq frac{x-mu}{sigma} leq 1.96 \\ -1.96 leq frac{x-frac{N}{2}}{frac{sqrt{N}}{2}} leq 1.96 end{eqnarray} Nを小さい方から大きい方に動かしていくと、上記の不等式が成立する/しないの境界がわかる。 N=12のときは成立しないが、N=13のときは成立する。 N=30のときは成立するが、N=31のときは成立しない。 つまり、(13 leq N leq 30)のときに不等式は成立する。 これがNの95%信頼区間。 95%信頼区間の意味 95%信頼区間とはNが95%の確率でその区間に入るという意味ではない。 統計あるあるの一つ。 Nは実在する真の値であるがわからない値。 (x)はNという仮定の上で確率的に発生する値なことに注意。 Nの区間推定は以下の不等式を満たす範囲。 begin{eqnarray} -1.96 leq frac{x-frac{N}{2}}{frac{sqrt{N}}{2}} leq 1.96 end{eqnarray} (13 leq N leq 30)のときに、( x )は平均(mu=frac{N}{2})、標準偏差(sigma=frac{sqrt{N}}{2})の正規分布の 95%予言的中区間に含まれる、ということを言っている。 それぞれのNに対してそれぞれの(x)の分布が存在していて、 その(x)においてNを棄却できない、というそんな区間。 平均(mu)、標準偏差(sigma)ともに母集団の数Nから自動的に定る正規分布なんで、 フェイクといえばフェイクだけども、 母集団の数Nを決めるだけで、そこから発生する値を95%の確率で予言できるなんてすごいな。
母集団の推測と仮説検定
[mathjax] 母集団の推定 背後に正規分布に従う母集団があるとして、そこからあるデータ(x)が観測されたとする。 観測されたデータ(x)から、母集団を推測しようとする試みについてまとめてみる。 仮説検定 標本が平均(mu)、標準偏差(sigma)の正規分布に従うとき、 標本から観測されたデータ(x)が母集団(母数=N)の95%予言的中区間の範囲外であるならば、 母数=Nであるという仮説を棄却する。 このとき、以下の2つの考え方があるが、 1) 観測されたデータxが、仮定した母集団の95%予言的中区間の外である 2) 仮定した母集団が誤っている 1)の肯定的言及は言うことができず、2)の消極的言及のみ言うことができる。 今は母集団を推測しようとしているのだから、2)をもって母集団を予測していく。 コインの裏表から考える仮説検定 今、コインをN回投げたとする。 表が出る回数の平均は(mu=frac{N}{2})、標準偏差は(sigma=frac{sqrt{N}}{2})である。 N=16と仮定すると(mu=frac{16}{2}=8)、(sigma=frac{sqrt{16}}{2}=2)である。 95%予言的中区間の不等式を変形していく。 begin{eqnarray} -1.96 leq frac{x-mu}{sigma} leq 1.96 \\ -1.96 leq frac{x-8}{2} leq 1.96 \\ 4.08 leq x leq 11.92 end{eqnarray} もし仮定したN=16の半分である8回表が出た場合、上記の不等式は満たされる。 従って、N=16であるという仮説は棄却できない。 またN=16としたとき、表が2回した出なかったのであれば、上記の不等式は満たされない。 従って、N=16であるという仮説は棄却できる。
予言的中区間
[mathjax] 正規分布の特性から、逆に95%の確率で出現を言い当てられる区間を決められることを読んだ。 標準正規分布、一般正規分布の95%予言的中区間についてまとめてみる。 標準正規分布の95%予言的中区間 平均(mu=0)、標準偏差(sigma=1)の標準正規分布において、 1(sigma)区間の相対度数の和は約0.68、2(sigma)区間の相対度数の和は約0.95。 逆にいうと、 標準正規分布から出現する値を\"-1から+1の範囲の値\"とすると約68%の確率で予言することになる。 また、\"-2から+2の範囲の値\"とすると、約95%の確率で予言することになる。 (確率を可能性の意味で使っていない) 確率の方を95%ぴったりとすると、範囲は\"-1.96から+1.96\"となる。 これを95%予言的中区間と言う。 次回に観測する値が95%の確率で-1.96から+1.96の範囲に入ることを予測している。 もともと定義域が無い((-inftyから+infty))中で、いきなり-1.96から+1.96という範囲を 持ち出して、そこに入る確率が95%であるというのは強烈。 一般正規分布の95%予言的中区間 標準正規分布(x)に対して、以下の変換により一般正規分布を得る。 begin{eqnarray} z = sigma x + mu end{eqnarray} 対象線が(x=0)から(x=mu)にシフトし、(sigma)区間が1から(sigma)に遷移する。 95%予言的中区間は(-(1.96sigma+mu)) から(+(1.96sigma+mu))となる。 平均(mu)、標準偏差(sigma)を満たす正規分布であれば、 次回観測するデータは95%の確率で(-(1.96sigma+mu)) から(+(1.96sigma+mu))の範囲である、 という強烈さ。 95%予言的中区間の不等式表現 標準偏差を軸にすると正規分布がかなりわかりやすくなる。 「標準偏差何個分のずれの範囲」を不等式にすると、さらに直接的になる。 xが平均(mu)、標準偏差(sigma)を満たす正規分布である場合、 以下のように変換することで標準正規分布(z)を得られる。 ((z)の変換の意味は、データが平均値(mu)から標準偏差(sigma)いくつ分ずれているか、を表す) begin{eqnarray} z = frac{(x-mu)}{sigma} end{eqnarray} xが平均(mu)、標準偏差(sigma)を満たす正規分布である場合、 95%予言的中区間は以下の不等式で得られる範囲である。 begin{eqnarray} -1.96 leq frac{(x-mu)}{sigma} leq +1.96 end{eqnarray}
標準正規分布と一般正規分布の\(\sigma\)区間
[mathjax] 確率密度関数を扱わないで正規分布をうまく説明する本を読んだので、 理解のためにまとめてみる。 標準正規分布 平均が0、標準偏差が1である分布をもつデータセットについて度数分布表を書くとする。 データセット内のデータは(-infty)から(+infty)まで出現するが、 その出現頻度の相対度数は0を挟んで正負対象であり、 バラツキの縮約値は標準偏差=1で決まる。 出現頻度の相対度数は平均=0のときが一番大きく、 絶対値が大きくなるに従って小さくなっていく。 -1から+1までの出現頻度の相対度数の和は約0.68となる。 つまり、全体の68%が-1から+1までの値である。 -2から+2までの出現頻度の相対度数の和は約0.95となる。 つまり、全体の95%が-2から+2までの値である。 そんな分布を標準正規分布といっている。 一般正規分布 標準正規分布を満たすデータセットの全てのデータに対して、 (sigma)倍して、(mu)を足したデータセットを考える。 begin{eqnarray} z = sigma x + mu end{eqnarray} ここで、平均(mu)、標準偏差(sigma)を満たすデータセットについて一律(+a)という操作を行う場合、 その結果のデータセットの平均は(mu+a)となるが、分散は(sigma^2)、標準偏差は(sigma)のまま変わらない。 また、平均(mu)、標準偏差(sigma)を満たすデータセットについて一律(b)を掛ける操作を行う場合、 その結果のデータセットの平均は(bmu)、分散は((sigma b)^2)、標準偏差は(sigma b)。 このことから、 zの平均はxの平均(=0)+(mu) = (mu)。 zの標準偏差はzの標準偏差(=1)*(sigma) = (sigma)。 平均(mu)、標準偏差(sigma)を持つデータセットについても、 (mu-sigma)から(mu+sigma)の相対出現頻度の和は全体の約68%を満たす。 また、(mu-2sigma)から(mu+2sigma)の相対出現頻度の和は全体の95%を満たす。 zを一般正規分布と呼んでいる。 (sigma)区間 (-sigma)から(+sigma)までの区間で全体の約68%を占める。この区間を(1sigma)区間と呼んだりする。 また(-2sigma)から(+2sigma)までの区間で全体の約95%を占める。この区間を(2sigma)区間と呼ぶ。 無限の範囲を取りうるデータセットが正規分布であるとわかっているのであれば、 (2sigma)区間を予言することで、95%の確率で正解となる。 偏差値 一般正規分布において平均値(mu)の得点を偏差値50、 (mu-sigma)を偏差値40、(mu+sigma)を偏差値60と割りあてる。 偏差値60というのは(+1sigma)区間だから、上位32%でしかないんだな。 偏差値50から60というのが、いかに普通なのかがよくわかる。 対して、偏差値70というのは(+2sigma)区間だから、上位5%ということ。 標準偏差(sigma)が大きい場合、(1sigma)区間が広いので、 平均から大分良さげな点をとっても偏差値が高くない、ということになる。
S.D.(Standard Deviation)の定義の導出
[mathjax] データセットのバラツキを縮約する統計量である分散と標準偏差について、 単なる概念ではなくて、直感的な理解の助けになる読み物を読んだのでまとめてみる。 偏差( sigma^2 ) とは平均 ( bar{x} ) との距離 ( x_i - bar{x} )のことを言う。 以下のように偏差の平均を式変形するとゼロになる。 $$ begin{eqnarray} frac{1}{N} sum_{i}^{N} sigma^2 &=& frac{1}{N}sum_{i}^{N}( x_i - bar{x} ) \\ &=& frac{1}{N} left( sum_{i}^{N}x_i - N bar{x} right) \\ &=& frac{1}{N} sum_{i}^{N}x_i - frac{N}{N} bar{x} \\ &=& bar{x} - bar{x} \\ &=& 0 end{eqnarray} $$ 距離 ( x_i - bar{x} ) の平均がゼロになるところに平均( bar{x} ) があるイメージ。 データセットのバラツキを調べるために偏差の平均を使うと、 平均を挟んでプラスとマイナスが打ち消しあってしまうから、 プラスとマイナスを打ち消し合わないように2乗の平均を使おう というのが基本的なアイデア。 $$ begin{eqnarray} v &=& sigma^2 \\ &=& frac{1}{N} sum_{i}^{N}(x_i-bar{x})^2 end{eqnarray} $$ 2乗の平均だとデータセットのデータの単位が2乗されていて大きすぎるから、 データセットのデータの単位に合わせるためにルートをとる。それが標準偏差。 $$ begin{eqnarray} sigma &=& sqrt{ frac{1}{N} sum_{i}^{N}(x_i-bar{x})^2} end{eqnarray} $$ 標準偏差によりデータセットのバラツキをデータの同じ次数で表現できる。 文部科学省 用語解説より引用 データの値の離れ具合(散らばりの度合い)を表す数値。分散(「データの平均と個々のデータの差」の2乗の平均)の平方根で求められ,標準偏差が0とは,ばらつきがない(データの値がすべて同じ)ことを意味する。
FileMakerServer16/17に非公式SSL/TLS証明書をインストールする
はじめに オンプレミスでFileMakerServerを配置するのではなく、AWS,Azure,さくらクラウドなどに配置することが増えているためか、FileMakerServerにSSL/TLS証明書をインストールしたいという要望が増えていそうです。 FileMaker社はFMS15,16用に利用可能なSSL/TLS証明書を公開していますが[1]、どれもアメリカ本国の業者であるだけでなく、いわゆる格安証明書がリストされておらず、たかだかイントラ用のアプリのために高額なお布施を積まないといけない状況にあります。 FileMaker社はFMS17用に利用可能なSSL/TLS証明書に関する記述を改めましたが[2]、いずれにせよ、適合するか否かは実験してみる必要があります。 適合しない証明書をインストールすると、「通信は暗号化されているか証明書を検証できない」というおかしな状況が出来上がります[3]。もともとClosedな傾向が強いFileMakerですが、この状況がどういう理由で発生しているのか確認する術がなく、発生してしまった場合に解決が非常に困難です。 日本の格安SSL/TLS証明書をFMS15,16,17にインストールすることができましたので、 本記事ではその事実を紹介します。 まず結論 以下の証明書をFMS15,16,17にインストールできました。 「鍵マーク」は緑色となります。 さくらインターネットのRapidSSL(DV証明書) 1,620円/年 中間CA証明書必須 クロスルート証明書必須 AWS EC2上 WindowsServer2012 R2 (JPN) または Azure上のWindowsServer2012 R2(JPN) IISでファイル認証 OS、プラットフォーム、Webサーバはオプションです。他でもOKなはずです。 格安証明書で有名なSSLストアはRapidSSLのファイル認証をやめてしまったので、 RapidSSLをファイル認証で取得できるのはここだけかもしれません。 SSLストアのFujiSSL、ComodoSSL(PositiveSSL)はいずれも入りませんでした。 中間CA証明書、クロスルート証明書がないと、証明書自体のインストールは出来ますが、鍵が「オレンジ色」になります。FMSは中間CA証明書、クロスルート証明書を見ています。 なお、FMSには中間証明書を指定するUIが一つしかありませんので、FileMaker社が指定する方法で中間CA証明書、クロスルート証明書を結合する必要があります。 以下の通り結合し1つのファイルとしておきます。 -----BEGIN CERTIFICATE----- Root certificate -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Intermediate certificate 2 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Intermediate certificate 1 -----END CERTIFICATE-----
統計検定
前からだったかもしれないけども、気づいたら統計検定がCBTになっていた。 正確には2級までがCBT。 2級の出題範囲表を眺めてみる。出題範囲は以下の通り。 出題範囲 大学1年か2年でやる一般教養の「統計」1年分+αくらいと言われているけども、 さっぱり覚えてないな。情報理論であったりアルゴリズム論だと、割と基礎的な概念を言えたりするのもあるんだが、 「覚えてない」という認識なので、たぶん単位とるために丸暗記したんだろう。。 ただ、ここ数年人工知能バブルに片足突っ込んだことで断片的にわかるものがある。 2級は一般教養ということで、これを知って何かが出来るか、ということはなくて、 その先、自力でデータを活用するための「基礎」でしかない。 過去何百年もの間体系化されてきた学問の上に世間の関心が広がっているという事実は、 ある意味幸運なことなんだろうと思う。 ということで2級取得を目指してみようと思う。
非マルチサイトでユーザ情報を共有する
概要 ネットワーク機能経由のマルチサイトでなく、サブディレクトリ型マルチサイトでもなく、 単純にサブディレクトリに複数のWordPressインスタンスを並列するケースで、 複数のWordPressインスタンスから一つのユーザ情報を共有する方法について書く。 wp_users,wp_usermetaの共有 このあたりを参照すると書いてある。要は、インスタンスの数だけ作られるwp_users、wp_usermetaを使わず、一つを共有すれば良い。そのためにはwp-config.phpを修正すれば良い。ただしWordPressの互換性的な都合を理解しておく必要がある。 カスタム User テーブルとカスタム Usermeta テーブル CUSTOM_USER_TABLE および CUSTOM_USER_META_TABLE を使用すると、通常 WordPress が利用する user および usermeta テーブルを使用せず、代わりに指定されたテーブル名を使用してユーザー情報を格納します。 define( \'CUSTOM_USER_TABLE\', $table_prefix.\'my_users\' ); define( \'CUSTOM_USER_META_TABLE\', $table_prefix.\'my_usermeta\' ); WordPressは互換性確保のためwp_usersの拡張を推奨しておらず、wp_usermetaに拡張情報を持たせることになっている。拡張情報をwp_usersのカラムとして持たないことで、拡張が必要になったときに初めてwp_usermetaにレコードが作られる。つまり、wp_usermetaはインスタンス毎の拡張情報であるということ。 そのため、CUSTOM_USER_TABLE、CUSTOM_USER_META_TABLEを指定したとしても、共有しようとしたwp_users、wp_usermetaとは別にインスタンス毎にwp_users,wp_usermetaテーブルが作られる。 インスタンスのインストール時にID=1番のレコードが作られる。インスタンスの最初の管理者はこのレコードである。wp_usersのID=1はSuperAdmin的な特別なアカウントで、各インスタンスのwp_users,wp_usermetaが使われる。 共有しようとするwp_usersには、インストールしたインスタンス用のwp_usermetaが無いので「権限なし」となる。そこで、まず、各インスタンスに作られてしまったID=1でログインし、次に共有するwp_usersテーブルのアカウントにインスタンス毎の権限を付与することで解決する。 面倒だけど、確かにアカウントの互換性は保たれるな。
