Machine Morning

機械学習やWebについて学んだことを記録しています。

標本平均の分散はなぜサンプルサイズnで割るのか

標本平均の分散 \dfrac {\sigma ^{2}}{n} (ただし \sigma ^{2}は母分散、 nはサンプルサイズ)がなぜこのような形になっているのか。

結論から言うと、サンプルサイズ nが大きければ標本平均の分散 V\left[\overline {x}\right]は0に収束し、標本平均の期待値 E\left[ \overline {x}\right]が母平均 \muに収束するからである。これは大数の法則が主張したいことそのものである。

母集団から任意のサンプルサイズ n個の標本を無作為に抽出し、その標本平均 \overline {x}を求める。この復元抽出を繰り返し行い、毎回の標本平均 \overline {x}を求め、標本平均の分散 V\left[\overline {x}\right]を求める。 例えば、サンプルサイズ n 2個や 3個といった小さな数で抽出を繰り返せば、標本平均 \overline {x}は毎回大きく違った値を取ることが予想される。 反対に、サンプルサイズ nを増やし 10000 100000000などといったたくさんの標本を抽出することで、毎回似たような標本平均が得られることが予想できる。 抽出する数 nを増やせば増やすほど、標本平均の分散 V\left[\overline{x} \right] 0に収束し、標本平均 \overline {x}は母平均 \muに収束する。

したがって、標本平均の分散 \dfrac {\sigma ^{2}}{n}は分母にサンプルサイズ nがあることで、サンプルサイズが n\rightarrow \inftyのとき分散が 0に収束し、標本平均が母平均と一致することを表している。

参考

amzn.asia

p.183, 184

ベイズ推定とグラフィカルモデル

Udemyの「ベイズ推定とグラフィカルモデル:コンピュータビジョン基礎1」を受講しているので、受講した範囲のノートを随時追加していく。 無料でこんなに素晴らしい講義を公開してくださっている広島大学の玉木先生には大変感謝です。

02 Introduction to probability

03 Common probability distribution

04 Fitting Probability Models

05 The Normal Distribution

ガンマ関数とは

ベータ分布やディリクレ分布の確率密度関数にΓ関数(ガンマ関数)が出てくる。 いったいこのガンマ関数は何をしているのか。

まず、ガンマ関数の概要を説明する。 ガンマ関数とは階乗の概念を複素数に拡張し、一般化したものだ。 「正の整数以外の階乗とは何だ?!」と思ってしまうが、広義積分することで複素数(もちろん実数も含む)も階乗可能になる。 ただし、筆者の使用用途では、正の実数以外の階乗を求めることはないので、ここでは複素数には踏み込まない。

ガンマ関数の定義

 \Gamma \left( z\right) =\int ^{\infty }_{0}t^{z-1}e^{-t}dt

 \Gamma \left( z\right) =\left( z-1\right) !

上の式は zが正の整数以外の値を取る場合、下の式は zが正の整数の値を取る場合である。 これらの関数で 0 \dfrac {1}{2}などの実数の階乗を求めることができる。

ちなみに0の階乗は1である。

なぜガンマ関数は階乗になるのか

次の動画を見ればわかるので、省略。

youtu.be

ガウス積分とは

ガウス積分とはガウス関数 e^{-x^{2}}を実数全体で広義積分した、  \int ^{\infty }_{-\infty }e^{-x^{2}}dx=\sqrt {\pi } のことである。

 e^{-x^{2}}ガウス関数の原型 f\left( x\right) =ae^{-\dfrac {\left( x-b\right) ^{2}}{2c^{2}}} a = 1 b = 0 c = \dfrac{1}{\sqrt{2}}代入したものである。

ガウス関数 y = e^{-x^{2}}をグラフにしてみると正規分布ガウス分布)の形になる。ただし、厳密には形が似ているだけで、全体の面積(確率)は1になっていないので正規分布ではない。

 aは定数、 bは平均、 cは分散で、 a \dfrac {1}{\sqrt {2\pi \sigma ^{2}}}を与えて、全体の面積を1に規格化することでおなじみの正規分布となる。

全体の面積を1に規格化したガウス関数は平均と分散の値によらず、実数全体の範囲で積分すると1になる。

参考

https://lecture.ecc.u-tokyo.ac.jp/~nkiyono/2006/miya-gamma.pdf

確率・統計 (5) 正規分布

Pythonで欠損値を扱う。

Pythonで欠損値を扱う際、主にNone (Null), NaN(Not a Number)を扱うことになる。今回はこれらの違いについて説明する。

None (Null)

NonePythonに標準で備わっているシングルトンオブジェクトである。PythonではNullをNoneとして扱い、NoneのみがNoneである。Falseのように0や空のリストがNoneになることはない。

ついでなのでどういったものがFalseと判定されるのかリストアップしておく。 以下はNoneではなくFalseと判定されるものなので注意すること。

  • False (boolean)
  • None (null)
  • 0 (int)
  • 0.0 (float)
  • "" (空のstring)
  • [] (空のlist)
  • () (空のtuple)
  • {} (空のdictionary)
  • set() (空のset)
  • NaNを比較演算する

NaN (Not a Number)

PandasでDataFrameを作ると、ある要素が空の場合その要素は自動的にNaNになる。 したがって、実際の分析ではpd.read_csv()pd.read_sql()でデータを読み込んで、欠損値があった場合NaNを扱うことになる。 DataFrameでNaNになる場合、その列の型がfloat64のときはもちろんNaNfloat64、文字列などのデータが入ったobject型の列ではfloat型となる。 ちなみにpandasで欠損値NaNの判定をするためにはisnull()を使う。numpyにはisnan()があるが、一般的にpandasではisnull()を使う。 Noneobject型の列でしか使えないため、結論としては欠損値としてはNaNを使うとよい。というよりも自動的にNaNになるか、そうでない場合は、replace("None", np.nan)NaNに統一してしまった方が扱いが簡単である。

>>> np.nan == np.nan
False

>>> bool(np.nan)
True

>>> np.nan == True
False

>>> np.isnan(np.nan)
True

参考

Handling Missing Data | Python Data Science Handbook

大学数学を始めた。

久しぶりの投稿です。最近大学数学を始めました。 微分幾何関数解析を勉強したいと思ったのがきっかけです。

一応数学科のカリキュラムを参考に勉強していけばゆくゆくはこれらの分野に足をつっこめると思い調べてみると、学部1年時は微積線型代数ということで一通り勉強済みなのでスキップ。次に2年時あたりは1年間かけて集合と位相をしっかり勉強しているらしいので、ここから始めました。

松坂和夫先生の『集合・位相入門』から読み始めてみたが、zorn補題あたりから理解できず。選択公理はcontroversyな部分をいくつか記事を読んでみたが面白いですね。ただ公理から定義する数学に慣れていないので、やはりzorn補題等は理解できない部分が多々あるのでもう一度勉強する必要があります。

位相も勉強を始めて日は浅いが慣れかなーという感じ。結局集合にどういった構造を与えて空間を定義するといった問題なので、開集合と連続写像をもう少し論理ではなく直感的に理解したいところ。

今月末からは因果推論等をまた勉強するので、一旦その前に位相の理解を深めたいです。

Pythonのsuper()の引数!?

読んでいたPythonのコード内に

class SubClass:
    def __init__(self):
        super(SubClass, self).__init__()

というコードが出てきた。super()に引数を取っているのは何?と思って調べてみると、Python2.x系ではこの書き方だったらしい。 3系から書き始めたので知らなかった。

pickle

Pythonpickleはプログラム実行中にできたオブジェクトをバイト列にしてファイルとして保存する。このオブジェクトをバイト列にする作業を直列化(serialize)、バイト型列のファイルを元のデータ型でオブジェクトに戻す作業を非直列化(deserialiize)という。通常プログラムの実行が終了するとオブジェクトはメモリから消えるが、pickleすることによって後からオブジェクトを取り出すことができる。