ベイジアンネットワークについて色々調べた現時点でのまとめ

データサイエンス分野に数多くある技術の中でウェブの侵入検知に使えそうなものがいくつかあるが、その中で現在、個人的に最も注目しているのがベイジアンネットワークである。
原因と結果、それぞれの起こりそうな確率を記述したネットワークに、観察された事象を書き込み、計算を行うことで、観察された事象(結果側)から、原因の確率を求めることができるのが魅力。

単純な例であれば、「鼻水がたれている」という事象が観察されたときに、原因として考えられる「風邪をひいている」「花粉症である」などの確率を計算する。
それだけではまったく意味がないのだが、これに新たに「熱がある」という事象が追加で観察されたとする。「風邪をひいている」場合に「熱がある」確率と「花粉症である」場合に「熱がある」確率は違う(前者の確率が高い)という仮定を行った場合、追加で観察された「熱がある」という事象によって、原因の確率が変化し、「おそらく花粉症ではなく、風邪だろう」と判定できることになる。

ちなみにスパムフィルタの技術として有名なナイーブベイズは単純な形をしたベイジアンネットワークである。

ベイジアンネットワークについて色々調べてみた結果、下記がわかった。

  • ベイジアンネットワークは、ネットワーク構造をうまく使うことにより、すべての事象についての確率を横断する計算を避けことができる(計算量を減らすことができる)テクニックとしての側面もある
  • しかしそれでも計算量が多いため、数十、数百、数千というノードを持つ場合にはさらに計算量を減らすための数学的なテクニックが必要とされている
  • ジャンクションツリー(ジョインツリー)は1990年頃から知られているその代表格のアルゴリズムである
  • しかし、ジャンクションツリーでも現実的にベイジアンネットワークを活用するためにはまだまだ計算量は多いとされており、いかに高速に処理を行えるようにするか、は2013年において現在進行形の非常にアツイ研究分野である

 

書籍関連
 
 

ベイジアンネットワーク
植野 真臣
コロナ社
売り上げランキング: 109,714

が洋書を含めた中でも非常に高い完成度を誇っている書籍となっている。初心者向けではないが、少し理解した段階からは読むことが可能。非常に密度が濃い説明がなされており、薄い本なのに充実した内容となっている。2013年7月に出版されたばかり。

はより現場向けの良書で、この本を購入するとAgenaRiskというソフトウェアのLite版が使えるようになる。GUIでベイジアンネットワークを作成し計算することができる。Java製のソフトウェアなのでWindows・Mac・Linuxで利用可能。有名なスプリンクラーの例についてのネットワークを作成してみたのが以下の画像。

 

とりあえずこんな感じ。当初ベイジアンネットワークは四則演算ができれば計算はできるので、自分でゼロから実装しようかと思っていたのだが、上記のとおり色々問題がありそうなことはわかった。そのためオープンソースのJava実装を探してみることにする。


2013年に読んだデータサイエンス関連書籍 ベスト15冊

注:このブログを書いている人はデータサイエンス超初心者です。

はじめに

個人的に、2013年はデータサイエンスに興味を持ち、本格的に勉強を始めた年となった。何しろ初心者なので、基礎知識がゼロの状態からスタートしている。そのため、データサイエンスの全体像を把握するという目的で、そこそこの数の書籍を幅広く浅く読んでみるところから開始した。このエントリでは自分用メモの意味も含め、2013年に読んだ中でも特に良かったと思うデータサイエンス系の書籍をピックアップしておく。専門書と読み物が混在している。

「データサイエンス」という言葉について

当初自分がやろうとしているのは「機械学習」なのかと思っていたのだが、データマイニングや統計学、機械学習なども含め、いわゆる「豊富なコンピュータリソースを使ってデータを処理する」ことの全てを一言で言い表すとすると「データサイエンス」が適切だろうと考える。よく「金床さん最近機械学習やってますよね」と言われるが、機械学習はデータサイエンスの中の一部分でしかないと考えているので、なんと答えて良いか微妙な感じである。

オススメ度合いの高いものから順に掲載している。また、アフィリエイトはやっていないので、「dummy」という文字列でamazletを使わせて頂いている。
 
 

1位:アルゴリズムが世界を支配する (角川EPUB選書) [Kindle版]

アルゴリズムが世界を支配する (角川EPUB選書)
KADOKAWA / 角川書店 (2013-10-10)
売り上げランキング: 570

本書より引用:

他分野に興味を抱いた腕の良いプログラマーがその分野の専門知識を得て、みずからのコンピュータ技術やプログラミング技能を使って人間のやり方を模倣する。そのアルゴリズムが産業や企業を転覆させ、昔ながらのスタンダードを崩壊させる。人間を模倣し、徐々に人間に取って代わっていくようなアルゴリズムを作り出せる能力が、これからの百年を支配するためのスキルだ。

文句なしの一位。一番面白かったのはこの本。本当に良く調べて書いてあるところが最大の魅力。冒頭のウォール街とコンピュータの関わりのエピソードの他にも、クラシック音楽やビートルズなどをコンピュータを使って解析するエピソードなど、多岐にわたる魅力的な事例が数多く載っている。アルゴリズム(本書では広い意味で使われている。データサイエンスに近い意味)が想像以上のことを実行可能であることがよくわかる内容となっている。
 
 

2位: 統計学が最強の学問である

統計学が最強の学問である
西内 啓
ダイヤモンド社
売り上げランキング: 401

日本語の書籍の中ではもっとも抽象度の高い位置からデータサイエンスを認識させてくれた本。個人的にいまいちわかっていなかった「データマイニングと統計の関係」などを記述している珍しい書籍である。データサイエンスに関する専門書の多くは、著者自身の専門の分野のこと「だけ」しか書いておらず、周りについてはわざと見えないフリをしているのでは?と言いたくなるほど周辺技術・周辺分野との関連が伝わってこないものが多いのだが、この本はそれらを繋ぐ役割を果たしてくれる。この本は良く売れているようで、いろんな書店で平積みになっているため、わざわざここで紹介するまでもないだろう。個人的に、この日本という国で「統計学」という文字を含む書籍が良く売れるというのは素晴らしいと思う(個々の国民のリテラシー向上意欲が高いことがあらわれているという意味で)。
 
 

3位: データマイニング手法

データマイニング手法―営業、マーケティング、CRMのための顧客分析
マイケル・J.A. ベリー ゴードン・S. リノフ
海文堂出版
売り上げランキング: 383,487

「データマイニング」の勉強ならこの一冊から入るのがおすすめ。非常にわかりやすく、説得力に満ちた説明。図も印象的で素晴らしい。遺伝的アルゴリズムについてはこの本の説明を読んだだけで理解できた。意外と初心者向けだと思う。僕はこの本の前にいくつかデータマイニング系の本を読んだのだが、どれも難解でまったく頭に入らず、半ば諦めかけていた。そこに現れた救世主である。
 
 

4位: 異端の統計学 ベイズ

異端の統計学 ベイズ
異端の統計学 ベイズ

posted with amazlet at 13.12.25
シャロン・バーチュ マグレイン
草思社
売り上げランキング: 3,042

この本はぶっちゃけ結構退屈で、それほど面白くない。著者は筋金入りのベイジアンであり、ベイズ理論びいきが激しい。過去の事例について、そこにほんの少しでもベイズっぽい手法が絡んでいれば「〜はベイズ理論を使って解明された!!」と言い出す。ベイズ理論が大活躍したのかと思うと、意外に沈没寸前のUボートから物理的にコードをかっぱらってきたり、漁師が爆弾が落ちるところを見ていたのが決定打だったり、なんだかスッキリしない。そこはマイナスだとしても、やはり過去(特に戦争関連)にさまざまな人々が目の前の問題を解決するためにベイズ理論をはじめとする数学を武器とした事例が豊富で非常に参考になる。個人的にはウェブの侵入検知にベイジアンネットワークを使ってみようと決意させてくれたのがこの本であり、そういう意味で僕にとっては忘れられない本。
 
 

5位: 集合知プログラミング

集合知プログラミング

集合知プログラミング

posted with amazlet at 13.12.24
Toby Segaran
オライリージャパン
売り上げランキング: 166,162

Pythonを使い、クラスタリングや遺伝的アルゴリズムなどを比較的気軽にコーディングしてしまう本。「あれ、外部ライブラリを使わなくても意外と簡単そうだな?」と思わせてくれたという意味で、個人的には非常に大きな役割を果たしてくれた本。いきなりライブラリを使うのではなく、できるところは自分でコードを書いてみようかな、という姿勢をとれるようになった。筆者はJavaプログラマだが、Pythonは読みやすい言語なので、特に問題は感じなかった。
 
 

6位: Hadoop: The Definitive Guide

Hadoop: The Definitive Guide

Hadoop: The Definitive Guide

posted with amazlet at 13.12.24
Yahoo Press (2012-05-10)

HadoopでのMap/Reduceのコードの書き方を覚えるためにHadoop関連の本も数冊読んだ。Dunkheadを作るのに一番役に立ったのはこの本。WordCountの次のレベルを覚えたいプログラマに必要な知識が載っていて良い感じ。
 
 

7位: Rによるやさしい統計学

Rによるやさしい統計学

Rによるやさしい統計学

posted with amazlet at 13.12.24
山田 剛史 杉澤 武俊 村井 潤一郎
オーム社
売り上げランキング: 11,281

統計学もRも同時に勉強してしまえ!と欲張りになって買ってみた本。正直タイトルとは真逆な難しい印象。70ページ辺りまでで一度積ん読状態にしてある。しかし少なくともこの本のおかげで手元のR環境を触るクセが付いたし、平均や分散、標準偏差などの概念に馴染むことができた。統計学は多くの書籍が出ているので、ある概念がわかりにくいなと思ったら別の書籍で同じ概念を説明している部分を片っ端から当たり、自分にとってわかりやすい説明を探すのが吉。正直、R+統計なら他にもよい本がたくさんありそうだが、個人的に入り口となった本であり印象深いものなので載せておく。
 
 

8位: ビッグデータの正体 情報の産業革命が世界のすべてを変える

ビッグデータの正体 情報の産業革命が世界のすべてを変える
講談社 (2013-07-05)
売り上げランキング: 2,537

読書メモ「ビッグデータの正体を参照のこと
 
 

9位: 道具としてのベイズ統計

道具としてのベイズ統計

道具としてのベイズ統計

posted with amazlet at 13.12.24
涌井 良幸
日本実業出版社
売り上げランキング: 172,561

国内で出版されている数少ないベイズ統計関連書籍のうちのひとつ。説明や例題が絶妙な難易度と順番で登場してくれる素晴らしい書籍。個人的には3章までの内容がとりあえずわかれば、という感じなので、まだ4章以降は簡単にしか読んでいない(難しいので後回し…)。
 
 

10位: 数学で犯罪を解決する

数学で犯罪を解決する

数学で犯罪を解決する

posted with amazlet at 13.12.24
キース・デブリン ゲーリー・ローデン
ダイヤモンド社
売り上げランキング: 110,951

人気テレビドラマ「NUMB3RS」に関連する書籍だが、ドラマを見ていなくてもまったく問題なく楽しむことができる。数学を使って犯罪を調査することができるのかどうか、具体的に何を使うのかなどが平易に書かれている。122ページの「チャーリーは殺人犯をどう追跡したか?」で登場するベイズ理論の使われ方が個人的に非常に興奮した。
 
 

11位: その数学が戦略を決める

その数学が戦略を決める (文春文庫)
イアン エアーズ
文藝春秋
売り上げランキング: 5,090

読書メモ「その数学が戦略を決める」参照のこと。
 
 

12位: 集合知イン・アクション

集合知イン・アクション

集合知イン・アクション

posted with amazlet at 13.12.24
Satnam Alag
ソフトバンククリエイティブ
売り上げランキング: 339,076

Javaで機械学習や集合知プログラミングやるならこれでしょ!という感じの位置づけの本。著名な機械学習ライブラリであるWekaの使い方が紹介されている。ライブラリを使うことを前提にした本なので、理論そのものについては別の書籍で勉強するのが良さそうな位置づけの本である。
 
 

13位: 基本統計学

基本統計学

基本統計学

posted with amazlet at 13.12.24
宮川 公男
有斐閣
売り上げランキング: 148,425

いわゆる「統計学」を真正面から勉強するための本。見た目はもろに教科書なので取っつきにくそうだが、平易な説明なので読み進められる。20年ぶりに「数学やってるなぁ」と感じさせてくれた本。
 
 

14位: 44の例題で学ぶ統計的検定と推定の解き方

44の例題で学ぶ統計的検定と推定の解き方
上田 拓治
オーム社
売り上げランキング: 47,554

統計学における検定では「どのケースでどれを使えばいいんだ!?」となりがちな問題があるが、それに正面から答えてくれる問題集。実践的で非常によい。上記「基本統計学」のような教科書的な本とセットでどうぞ。
 
 

15位: ウォール街の物理学者

ウォール街の物理学者

ウォール街の物理学者

posted with amazlet at 13.12.24
ジェイムズ・オーウェン・ウェザーオール
早川書房
売り上げランキング: 3,661

金融危機はウォール街に数学を持ち込んだ「クオンツ」のせいでは!?という疑念を払いのけたい、物理畑出身の著者によって書かれた本。申し訳ないが、あとがきを読むと「頭がいいけどバカ(ナイーブ)だなぁ…」思ってしまう。あとがきを最後に読んでよかった。よく調査されて書かれているので内容は文句なしに素晴らしい。ただ、著者は物理や数学への愛で盲目になってしまっているな、という印象。金融(オプション取引)において「必ず勝てる方法」を数学的に編み出し、それに合わせて商品を作っちゃったという、ウォール街のほぼ詐欺みたいな超最悪な流れを確認できてゲンナリした(ちなみに金融危機が起こったことで証明されたことだが、別に必勝法ではなかった)。我々の生活において価値を保存する方法として広く使われている「お金」が、こういう連中によってむちゃくちゃにされているという現状を、日本人も広く認識するべきだと思う。