研究所で働くエンジニアのブログ【Python】緑本こと『データ解析のための統計モデリング入門』を実装していく【第2章その2】Python2019.05.12間隔が空いてしまいましたが、緑本の第2章の続きです。ちなみに、手元では最終章以外は既に実装まで終わっています(最後の最後に出てくる条件付き自己回帰の話が理解できずに詰んでます...)。植物の種子数の統計モデリングということで、前回は手元にあるデータを分析し、データはカウントデータ(非負の整数)種子数の標本平均は3.56、分散2.99個体ごとの種子数のヒストグラムはひと山の分布で表せそうということが分かったのでした。今回はそれを踏まえてモデリングしていきます。写経しても意味がないので、実装中に自分の頭の中で考えていることも書き下していきます(間違いもあるかと思うので、是非ご指摘お願い致します...)。余談:λの値を変化させていったポアソン分布と観測データ今回の要点(まとめ)データがどのような確率分布から発生したか考える種子数データが従う真の確率分布(母集団分布)がどうなっているかを考える(真の分布を実際に見ることはできない)。確率分布を使うことで、任意の個体の種子数がN(N=0,1...)個となる確率の一覧が表せる。今回はデータについて、以下のことが分かっている。上記の特徴からポアソン分布が使えそうかな?と考える(ここは知識と経験が必要そう)。(未知)の同一のポアソン分布に従っていると仮定。尤度の実態は、パラメータがある値のとき(パラメータの真の値は不明だから、とりあえず任意の値を仮定する)、それぞれの標本について確率関数の値の総積をとったもの。尤度は「手元にある観測データへの当てはまりのよさ」だと解釈できる。片っ端から実数を当てはめていたら日が暮れてしまう。求める(これを最尤推定と呼ぶ)。考えて以下のようにしても解を求められる。array([3.55999988])→3.56で尤度が最大化(負の尤度最小化)されると分かる。ax1.twinx()ax2.plot(prod)plt.show()上図を見る限り、うまく当てはまってそう。ポアソン分布に従っていると言えそう。ポアソン分布が観測データに一番フィットしてそう。観測データをよく見て、そのデータを生み出した真の確率分布(パラメータ未知)を仮定する。すると真の分布のパラメータを変数とする尤度関数が求まるので、それを最大化するようなパラメータを何かしらの手段で求める。求められたパラメータの値(最尤推定値)を1.で仮定した確率分布に代入すると、その観測データを生み出した真の分布がどういう形になっているか推定できる。以上で、第2章はおしまいです。一般化線形モデル・階層ベイズモデル・MCMC現象を数理モデルで表現・説明するのに慣れていない人のために、章ごとに異なる例題を解決していく過程を通して、統計モデルの基本となる考えかたを説明する。前半では、応用範囲のひろい統計モデルのひとつである一般化線形モデルの基礎を、後半では、実際のデータ解析に使えるように、それらをベイズ統計モデル化する方法を説明する。今日も元気にみどり本を進めていきましょう。前回の第2章の内容を一言でまとめると、「観測データをよく見て対応する真の確率分布を仮定し、そのパラメータを推定する」というお話でした。その流れは第3章も基本的に同じです。今回は『Kaggleで勝つデータ分析の技術』の第4章、モデルの作成についてです。著者の方の分析コンペ用のクラスやフォルダの構成の紹介など、至れり尽せりの内容になっています。以下...Python【Python】複数のリストに含まれる要素の全通りの組み合わせを取得する、という2つのリストがあり、'a'と'd'、'a'と'e'、'b'と'd'...(以下略)のような、それぞれのリストに含まれる要素の全通りの組み合わせが欲しいときの話です。以下のようなPandasのデータフレームがあったとします。今回は『Kaggleで勝つデータ分析の技術』の第7章、アンサンブルについてです。最終章、なんとか冬休み中に辿り着くことが出来ました・・・。以下、第7章の備忘録(メモ、引用)と実装になります。今回は『Kaggleで勝つデータ分析の技術』の第6章、モデルのチューニングについてです。パラメータのチューニングなどでモデルの精度を高めるテクニックを学びます。以下、第6章の備忘録(メモ、引用)と実装になります。プログラミング3年目までに身につけたい一生役立つ101の原理原則』という本を読みました。本文中にコードこそありませんが、プログラミングをする時の判断に役立つ原理原則と考え方がいくつも紹介されています。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。メーカーの研究所に入所。研究や開発に従事しており、普段はプログラミングをしたり論文を読んだりしています。ブログは趣味の学びのアウトプットです。本ブログが何かのお役に立ちましたら幸いです。研究所で働くエンジニアのブログ.。