参考書籍

マテリアルズインフォマティクスを進める上で必要な知識(データ解析, プログラミングスキル, 統計, 化学)を身につけるために読んだ本(一部は勉強中)をまとめました。

 

データ解析関連

データ分析のための数理モデル入門


おすすめ度:★★★★★
難易度:★☆☆☆☆
データ分析について(何ができるのか?、機械学習が必須?、分析手法の全体像は?)広く知ることができる。これからデータ分析を本格的に勉強するという時に、その全体像を知り何を勉強する必要があるのか把握するためにも読んでおくべき一冊。

Amazon評価:★★★★☆(4.1|2020/8/9時点)

データ分析入門書として最初に読むべき本(★★★★★)

これからデータ分析を本格的に勉強しようとしている者です。話題になっていたので購入してみました。

本文は非常に平易で読みやすいです。私が言うのもなんですが、これで読めなかったらデータサイエンスはあきらめたほうがいいです。逆に、数式の式変形による説明はほとんど書かれていないので、それぞれの内容をしっかりと理解したい場合は、別の参考書が必要になります。全体像をつかむにはちょうどいい難易度と感じました。恐らく、この広範な内容で、もう少し難易度を上げると初学者はついていけなくなるのではないでしょうか。

幅広いキーワードが網羅されているので、初学者には有難いです。普段データサイエンス界隈では色々な専門用語や概念を目にしますが、そもそもそれって何の分野の話?と感じることが良くあります。本書を読むことで、大体あの辺の話ね、ということが何となくわかるようになった気がします。

どちらかというと古典的で理解志向型のモデルが多いようです(★★★☆☆)

本の中身については、著者の方のバックグラウンドと自分の読書の範囲が結構違っていたようで、この本では「有名」となっていても自分は知らなかったモデルとか、参考文献にも知らない本が挙げられていたりしたので、それなりに楽しめました。また個別の項目の説明は初学者にも分かりやすいと思います。

とはいえ自分が知っている範囲でも、数理モデルを語る上で落とせないと思われる、イジング模型や隠れマルコフモデルも含む確率的グラフィカルモデルや現代制御に属すると思われるカルマンフィルタや粒子フィルタ等々が載っていないのは、その解説を期待して買った自分としてはかなりガッカリです。

ベイズ法も一応載ってはいますが隅の方に追いやられていることからしても、全体として古典的で定性的なモデルが主軸で、実際の応用に役立ちそうなベイズ法を基盤にした(機械学習と呼ばれるものも多くはベイズ法を基盤にしていることに漸く思い至りましたが)モデルはほとんど載っていません。
そうしたモデルは発展的内容ということで省いたのかも知れませんが、そうであっても予備知識が全くない初学者に誤解を与えないように、そうしたものも在ることの説明と参考文献の紹介も欲しかったところです。

それとこの本が紹介しているモデルの多くが定性的な、著者の方が言うところの理解志向型モデルと思われるのに、第四部の最後の方になるともっぱら応用型についての解説になっているので全体としてチグハグな印象も受けます。
折角、著者自ら理解志向型と応用志向型の区分を提起したわけですから、いっそ構成自体もそれぞれに分けてしまった方が話の流れもスッキリしたのではないかとも思います。「志向」と「指向」の表記が混雑しているところからしても全体の整理が不足しているようにも感じられます。

また、この本では参考文献は脚注に随時掲載する形になっていますが、分かりにくいので普通の本のように巻末にまとめてもらった方が良かった気がします。

様々な「数理モデル」を一気に概観できる良書!(★★★★★)

統計や機械学習を含む様々な分野における「数理モデル」が非常によく整理されまとまっている書籍です。
普通に最初から最後まで通読しても勉強になりますし、数理モデルの辞書として使うのも便利だと思います。

あまり数理モデルに馴染みのない方は、本書を一読することによって、どのような数理モデルが世の中にあり、どういったときに有効に活用できるか(逆にどういったときにあまり有効に活用できないか)ということが分かるのではないかと思います。
ある程度数理モデルに精通している方も「こんな数理モデルもあったんだ!」とか「そういえばこういうモデルもあったなあ」という感じで非常に楽しめると思います。

数理モデルごとの強みや弱み、数理モデルを考える理由や目的についての記述が第一部を中心に多くあり、特定の数理モデルありきで分析を進めてしまっている場合には、なぜその数理モデルを使っているのか?と再考する非常によいきっかけになります。

本書は個々の数理モデルの詳細はあまり記述されていませんが、その都度参考文献が紹介されているので、興味を持ったモデルはすぐにより詳しく調べることができます。
また、脚注には非常に高度な内容も書かれており、数理モデルに詳しい人でも「そうだったんだ!」と思うことがあるのではないかと思います。

分析者のためのデータ解釈学入門


おすすめ度:★★★★★
難易度:★☆☆☆☆
「データ分析のための数理モデル入門」に続く第二弾。データの取得・分析・解釈・活用の各段階で知っておくべき技術が網羅的に解説されている。細かい技術よりもデータの取得や結果の解釈なども含めたデータ分析全体の流れや、それを進める上での心構えなども学べる。

Amazon評価:★★★★☆(4.3|2020/8/9時点)

データ収集からデータ解釈まで基礎的事項を網羅(★★★★★)

第一部は「データの性質に関する基礎知識」で約100ページ、第二部は「データの分析に関する基礎知識」で約110ページ、第三部は「データの解釈・活用に関する基礎知識」で約60ページという三部構成。

「データ解釈学入門」をタイトルに掲げる書だが、実際にデータ解釈の部分を扱ったのは第三部となる。このことをもってタイトルと内容が合っていないとなりそうだが、前の第一部と第二部では、データ解釈を行う前提として必須となる基礎知識が極めて分かりやすくまとめられており、全てを通してデータ解釈にまつわる基礎知識を解説した書として、その完成度は高い。

特に第一部と第二部では、類書では簡単に済まされてしまうような事柄について丁寧かつ分かりやすく解説してくれており、これからデータ分析を行おうというような初学者でも無理なく読み通せる。図表や事例の使い方も的確で、文章も分かりやすいことから、大学のデータ分析関係の講義で教科書として使うのにちょうど良いレベル感ではないだろうか。

既にデータ分析を行っておりデータ解釈について踏み込んだ内容を期待する人からすると迂遠かもしれない。ただ、基礎的な事項を扱った部分でも随所で専門家が見落としがちなポイントが詳述されており、初学者から専門家まで広い読者層が想定される入門書と言えそうだ。

「データ分析技術 "以前"」を最高にわかりやすく解説してくれる入門書(★★★★★)

データサイエンスを応用するには数学的知識と実装テクニックを多数知らなければなりませんが、それらの「ツール」をいくら持っていても、使いどころを理解していなければいい分析はできません。
本書はそうした考え方の方にフォーカスした書籍です。個人的には日本語の書籍でここまでわかりやすいものは見たことがありません。
データサイエンス入門書があふれている昨今ですが、下手にあれこれ手を出すよりまずこれを読んだ方がいいと思います。個人的にはデータサイエンティスト読本よりも適切かと思います。
(大学等でデータサイエンスを学んだ方は、当然ながらスキップで)

具体的にいいと思った点を挙げます。
・データ分析でサイエンティストがなにをするのかを把握するところから始まっている
→ 私の経験上では、どんなに親切なデータサイエンスの入門講座であっても、統計(の手法)から入ったり、機械学習の技術ジャンルを俯瞰するあたりがせいぜいでした。しかしデータサイエンスは人の判断に依拠する部分がとても大きい技術です。テクニックはわかっても、「なぜそれをする必要があるのか?」「どこまでやればいいのか?」など実際に取り組む際には判断に困ることが多々あります。

こちらの本は「要するにデータサイエンスとはデータをどうする行為なのか?」を最初に説明しています。
ビジネス上は意思決定のツールなので、介入し期待するように事象を操作できるのが究極目標。そのためにはデータからその背後の因果関係をあぶりだすことが必要。だが、現実には不可能なことが多い。そこでどうするか?
そもそも A/B テストのような行為(正確には RCT) が可能であれば、データからモデルを作るよりそちらの方が確実。しかしできないのであればモデル化することで、直感よりは因果関係に迫ることができる。
…というような"データ分析以前"から、理解/整理させてくれます。

・説明内容が平易
→ 上記のような概念レベルの話をする中でも、抽象的にならず、コインやサイコロなどの例を挙げながら解説しています。ほかの方のレビューにもありましたが、学部1年生、社会人になってからデータサイエンスに入門した人でもいきなり読める本です。

注意点を挙げます。
・実装方法は全く触れられていません
→ 背景知識のための本であり、実際に python, R などで実装するための手段については書かれていません。
そのあたりは既存の良書がたくさんあるので、そちらを当たるのがいいです。

・AI のための入門書ではありません
→ 機械学習技術が応用されるため混同されがちですが、AI とデータサイエンスは別物です。
AI は自動化自体が目的、データサイエンスは人の意思決定のためにデータの特徴(データから導かれる関係性も含む)を示すことが目的です。
前者であっても、機械学習手法の特徴(均一な分布でないデータからは誤ったモデルができやすいなど)は理解しておく必要がありますが、そこだけなら本書でなくてもいい本があると思います。

・重要な箇所にラインがあらかじめひかれています
→ 私はもともとラインを引く方ではないので全く気にならなかったのですが、自分で引く方は邪魔に思うこともあるかも…。

データを集める前の研究デザイン学、と思ったほうがいい(★★★★☆)

タイトルから「データを集めた後で読めばいいや」と思った人。
悔い改めよ、Rejectの日は近づいた。
データを集めた後に「まっとうな結果が出るようにデータを集める手法」を学んでも遅いです。
正直前著よりもこちらを先に読んだほうが、全体を理解するにはいいでしょう。
データ分析において求められる「データの裏側」の見方が一通りそろっている(詳細は参照文献へ)、という点で
便利な本だと思います。

機械学習のための特徴量エンジニアリング


おすすめ度:★★★★★
難易度:★★☆☆☆
機械学習モデルの性能を向上させるために、データから良い特徴量を作る特徴量エンジニアリングについて学べる。データ解析において必須の前処理も合わせて学べるのでおすすめ。

Amazon評価:★★★★☆(3.6|2020/8/9時点)

読者のレベルによって評価は分かれると思いますが(★★★★★)

# これは何?
機械学習モデルの精度を上げるための方法論が書かれた本です。
一般的にモデルの精度を上げるためには、背景を理解して使えそうな特徴量を可能な限り集めてくる → 集めてきた特徴量から最終的に使う特徴量を選択したり、特徴量を変換したり組み合わせる → モデルを選択する(分類か回帰か?ブラックボックスでいいのか?ホワイトボックスじゃなきゃいけないのか?などなど) → モデルのパラメータをチューニングする といった流れ(ざっくり)だと思うのですが、本書は「特徴量を変換したり組み合わせる」といったところにフォーカスして書かれています。

# どんな人のために書かれているの?
他の書評にもありますが、機械学習今までやってたけど別ジャンルのモデリングに手を出したり改めて基礎固めしたい人には打って付けの本だと思います。今までNLPしかやってなかったけど、画像やってみるか!とか、その逆とかですね。
モデル精度向上までの一連の流れをやった&はじパタやThe Elements of Statistical Learningなんかを読んだ人が読むとスーッと頭に入ってくる内容と思います。
一方でこれらが頭に入っていないと、例えば第2章の冒頭に有る「k-meansとかユークリッド距離使う系のモデルは正規化しなきゃいかんよね」と言われても「はて、k-meansってなんとなくいい感じにk個のクラスタに分けてくれるのになんで正規化なるもの必要なんだっけ?」ってなるかもしれないと思いました。

# 読んでみてどうだった?
例えば私の場合、今までテキストや画像、センサから得られる数値データを扱っていたため、これらに関しては目新しい手法はなかったのですが、膨大なカテゴリ数のあるカテゴリカル変数(広告とかマーケティングをやると出てくるんでしょう)を扱う方法は知らなかったため、勉強になりました。(今までOne-Hot-Encodingでエイやしかしていなかった)

サクッと読めます。(★★★☆☆)

出版前にネットで話題になっていたこともあったのでとりあえず購入。
私の率直な感想は、特に本書から新たに手に入った情報はなかったかなといったところ。
本書の想定読者がやや不明ですが、分量が少ないのでサクッと読めて、まあ、それなりに楽しめます。

データセットは自分でダウンロードしなければいけない(★★☆☆☆)

データセットは自分で一つ一つ提供元のサイトからダウンロードしなくてはいけない。権利が取れなかった?模様。自分で本に載っているURLからダウンロードしてくれとのこと

ただデータ量が重い。スペックに依存するが、私のローカルPCだと扱いづらかった。なんで他の扱いやすいオープンソースのデータで説明しなかったのか疑問。そのため、githubで公開されているサンプルプログラムを実行しながら内容を理解する方法は一旦断念した。勿体無いので、時間があるときにデータをダウンロードしておいて、確認する。

内容は正直courseraの機械学習の授業(How to Win a Data Science Competition: Learn from Top Kagglers)や他の書籍で学んだ内容だったので、私が期待していた内容とは違った印象。再チャレしたらまたレビュー更新するが、プログラムが実行しにくい点で今の所は2点。

Kaggleで勝つデータ分析の技術


おすすめ度:★★★★★
難易度:★★★☆☆
特徴量の作り方、バリデーション、パラメータチューニングなどについて、一般的な書籍ではあまり言及されない暗黙知やポイントについて知ることができる。どちらかというとビッグデータの解析よりだが、「機械学習のための特徴量エンジニアリング」と同様にデータ解析に必須のスキルを幅広く学べる。

Amazon評価:★★★★★(4.5|2020/8/9時点)

GBDT!!!(★★★★★)

この本を買ったのは、もちろんKaggleがどんなものなのか知りたかったからですが、テーブルデータには、まずGBDTの適用を考えろ、という偉大な教え、というか実際にGBDTがKaggleで成果を上げていることがイヤでも分かります。

GBDTは、(理屈は良く分かりませんが)この本が解説しているとおり、実務上は欠測値をそのまま扱えること、実用上は相互作用や非線形の関係性を反映できることが大きいのではないかと思います。

というわけでGBDTの話だけで、この本は分かった気になって、しばらく放ってあったのですが、改めて読むとKaggleの説明というよりは機械学習を使った分析手順についての非常に良くまとまった素晴らしい教科書なので、機械学習の勉強を志す方には必携の一冊としてお薦めします。

非常にわかり易い 詳しい(★★★★★)

Kaggleの日本語の本はおそらく初めてだと思います。
詳しくもあり、大変わかりやすいです。

体系的にまとまってて読みやすい

書いてある内容は、kaggle基礎~初級くらいの内容だと思います。すでに本格的にkaggleに取り組んでいるかたにとっては少し物足りないかなという気がします。少しkaggleに触れたくらいで、これから本格的にやっていきたいという人にとっては、体系的にまとまってて読みやすいと思います。ただ、結局はkernelとdiscussionにより多く触れる方が勝てるようになると思います。

統計関連

pythonによるベイズ統計モデリング


おすすめ度:★★★★☆
難易度:★★★★☆
確率プログラミングのライブラリPyMC3を使ったベイズ統計モデリングの基本をシンプルなデータを使って、実際に手を動かしながら(コードを描きながら)学ぶことができる。

Amazon評価:★★★★☆(3.5|2020/8/9時点)

タイトル通りの1冊(★★★★★)

MCMCサンプラーとしてはStan/JAGS等がよく使われますが、PythonユーザーとしてはPythonicな記法、単一のファイルでモデリングから可視化まで済ませられるpymcを使いたいもの。特に最新のpymc3の和書はありませんでした。ベイズ統計の基本からpymc3の使い方、階層ベイズや回帰まで解説してくれる本はPythonを統計に使うユーザー待望の1冊です。高度なベイズ推定をコードを書くことで身につけることが出来ます。

一方でそれ以外のユーザー、今からベイズ統計を学びたい方やRからPythonへの移行を考えている方には読みにくい本だと思います。Pythonコードの解説は無く、一つの事柄についての文章量が多く、しかも事前知識の要る専門語が多いので読むのに時間がかかります。
また本の内容とあまり関係ないですが、pymc3の根幹を成すtheanoの開発が止まったので読んで身につくコーディングスキルの先行きがちょっと不安です…。

選択肢がないので(★★☆☆☆)

PyMC3の参考書は少ないので、使いたければとりあえず買えばいいと思います。

ベイズ統計の理論はなんとなく理解しているレベルで、はじめてサンプリングツールを使ってみましたが、コードも言われた通りに書けば、なんか使えてる気にはなります。

ただ、良書とは言えない。
入門書としてはそこがいいのかもしれないが、それでも内容に物足りなさを感じた。
そして何より訳が中々にひどい。Google翻訳に投げたような直訳が多くて読んでてストレスになる。

MCMCを学びたい人にはありがたい良書です(★★★★★)

MCMCを扱った本は他にもあるが,確実に動作するサンプルコードがあるのはこれしかない。ただし,原著の2nd editionのサンプルコードをWebからダウンロードしてきたのですが。
1st editionのサンプルコードは少し手を加えると動作するので,pythonが判る人なら問題ない。また,翻訳者も別にサンプルコードをつくっているので,こちらは動作するかも(私はDLのみ)。
本の内容は,通り一遍の解説ではなく,ミスを犯しやすいところを丁寧に説明しているので,プロを目指している人にはありがたいです。
フレームワークには,PyMC3を使っているが,Theanoがなくても問題なく動作します。MCMCはPyMC3数行で書けてしまうのでPyStanに変換するのも難しくないと思いますのでRから転向してきた人も安心できるのでは。

データ解析のための統計モデリング入門


おすすめ度:★★★★☆
難易度:★★★★☆
現代の統計学、データ解析の概要を、広い視点からわかりやすく学ぶことができる。

Amazon評価:★★★★☆(4.3|2020/8/9時点)

検定決戦主義(★★★★★)

少し高い本ですが、他の方のレビューを見ると既に定評があるようなので買って間違いはないと思います。

筆者の先生は統計を専門にしていたのでは無く、植物生態学が専門のようで、統計のユーザーとして業界でのやり方の反省に基づいて書かれた本なので非常にタメになります。

ユーザーの立場からの本なので、この本を読むために必要な前提知識は大して要らない感じですが、1.2項に列記された統計にまつわる良からぬ行いの数々が理解出来るユーザーとしての経験が必要な気もします(自分のレベルだと何をどうしたのかがよく分からない例が多いです)。

ちなみに、この本では「説明変数」を使っていて、しばらく前までは「独立変数」と呼ばれていたという話が出て来ますが、一方で「特徴量」は影も形もないので、業界の反省に基づいて書かれているとはいえ本の中身自体は従来からの統計学の範疇のようです。

入門書として最初に読んだ方が良い一冊(★★★★★)

現代の統計学、データ解析の概要を、広い視点からわかりやすく書いてある素晴らしい本でした。
もちろんあくまで入門書なので、この一冊ですぐにさまざまな技法が使えるようになる本ではありません。
しかしこの本を読めば
「これから何を掘り下げて勉強すれば良いのか」
ということがよくわかります。そういう意味で最初に読んだ方が良い一冊だと思います。

今まで読んだ本の中で一番有能かも(★★★★★)

タイトルの通り。レビュー内でデータにアクセス出来ないと言っている方がおられますが、Githubに行けば上がってます。ダウンロードの仕方が分からなくてもエクセルにコピペしてcsv形式で保存すれば普通に使えます。

実践Data Scienceシリーズ RとStanではじめる ベイズ統計モデリングによるデータ分析入門


おすすめ度:★★★★★
難易度:★★★☆☆
ベイズ統計モデリングについて一般化線形モデル、一般化線形混合モデル、階層ベイズモデルについて学べる。細かい点には踏み込まず、図が多く解説も丁寧なため「データ解析のための統計モデリング入門」よりも理解しやすい。「データ解析のための統計モデリング入門」の前に読むのがおすすめ。

Amazon評価:★★★★☆(4.4|2020/8/9時点)

ベイズモデルの最初の1歩に最適(★★★★☆)

2019年7月現在、ベイズを「なんも知らんからやってみて覚える」人にはお勧めします。
美点:
・サンプルコードとサンプルデータがダウンロードでき、すごく簡単に始められる
・平均値の推定から階層ベイズと時系列モデルまで体系的に展開されており、理解が進めやすい。コメントもちゃんとついている
・サンプルならではとはいえ、収束が速い
欠点:入門書なので
・実務データで同じようなモデルを組むとモデリングは遅いしWarningの嵐になるのは覚悟しよう
・複雑なベイズモデルの収束には各種チューニングテクニックが要るけど、本書の範囲ではない
・理論の細かいところが好きな人には参考文献がちょっと少ないかも
です。
なお緑本はモデリングの考え方を学ぶにはいい本なので、BUGSでやる必要はなくとも読んで損はありません。

最高のテキスト(★★★★★)

67才にしてベイズとStanに出会いました。この1年間、様々な関連図書を購入し、実務に役立てようと勉強してきましたが、馬場先生のこの本に出会って具体的な統計モデリングの手法が理解できました。初学者には最高のテキストになると思います。

わかりやすい(★★★★★)

「データ解析のための統計モデリング入門」のベイズ 部分を中心にして、今風(stan)にした本。つまり、同じくらいわかりやすい。

また、「StanとRで統計モデリング」と比べて初級向けなので、あちらほど細かくはなくわかりやすいが一方で本書は細かい部分の記載は少ない。そのため、こちらで学んで、「Stanと〜」に進むのが良さそう

ベイズ推論による機械学習入門


おすすめ度:?
難易度:★★★★★

Amazon評価:★★★★☆(4.0|2020/8/9時点)

PRMLより良なところあり(★★★★☆)

ベイズで使われる確率分布の紹介、解析的に事後分布と予測分布が計算できるケース、解析的にできない場合の数値的な実現方法についてコンパクトにまとまっている。ベイズ機械学習と言えばPRMLという時代が長かったが、和書でもあるこの本は多くの日本人を救うだろう。PRMLに比べれば親切である(後で述べるように、PRMLと比べての話ではあるが、それでもずっと界隈は健全化すると考えられる!)。ベイズ推論の何らかの計算ができるようになるという段階までを入門とするのであれば、悪くない内容である。モデルの評価について、サンプルサイズによって選ばれるモデルが異なる(複雑になっていく)ということを明記しているのは、特に高評価。

(追記:自分の他の本への書評に対して辛口に点数をつけすぎたと反省、☆4が妥当と思う。)

しかし、気になる点は決して少なくない。長いので概要を先に述べると、内容の偏りと読者に致命的な誤解を与えかねない記述がみられるというところ。また、対象読者の範囲が中途半端であるということもある。この本の結果を使って簡単な数値実験を行いながらベイズ推論を勉強した後、この本の理論部分・アルゴリズムの導出部分を理解する、という流れであれば入門になるかもしれないが、理論部分は入門者にとっては計算が激しいところも少なくない。

以下、気になる理由。

第一は真の分布や汎化損失についての記述がないことである。統計的学習においてモデルの評価は重要である、というよりむしろデータの発生源が不明であってもモデルの評価ができることが統計学のすごいところである。この本はタイトルの通りベイズ推論による機械学習を入門するための本である。機械学習そのものではない。それはタイトル通りであり何も問題はないのだが、機械学習でよくモデルの評価指標に使われる汎化損失--実際は直接計算できないためにそれを計算するために交差検証や情報量規準が使われるが--について一切記述がなく、評価指標については「ベイズではエビデンスの大小で評価することが多い」としか書いていないのは些か以上に不適当であると思う。エビデンスは一般には直接計算することが困難なはずだが、変分推論以外に近似手法を載せていない。2017年の本ならレプリカモンテカルロの詳細やsBICとは言わないが、BICやWBICくらいは載せてもらいたいものである。著者は真の分布が嫌いらしいが(Twitterレベルの確度)、そんなことで入門者にバイアスをかけないでほしい。

第二は、行間の量である。やるだけの計算、というにはややテクニカルな操作が必要な個所は少なくないため、この本では行間が広すぎるのではないだろうか。紙面の都合かもしれないが、その場合は変分推論の概略だけを書いてやめてしまっている5章をすべてカットして、3章と4章をより丁寧に書いて欲しいところである。これでもPRMLよりは日本語ネイティブの専門家による書籍ということもあって読みやすいので、出版の意義は十分あるのだが、この行間を追える人はこの本の内容では不満足だろうし、結果だけ使う人にとっては仮にもMLPシリーズなだけあって学術書すぎるきらいがあると考えられる。未定義語についても行間という言葉に含めるのであれば、マルコフ連鎖の説明もなくMCMCという単語を出されても、困惑するか説明不足を感じるのではないだろうか。いっそギブスサンプリングという単語だけを出してしまえば応用上は問題ないだろうに。数式の難解さについても言えることだが、入門書としての立ち位置・読者の敷居が中途半端に感じる。

第三は、変分推論偏重であること。MCMCの方が一般的に使われると思われる。繰り返し法による変分推論アルゴリズムやギブスサンプリングを導出できるクラスは決して広くないため、応用上はメトロポリスヘイスティング法やハミルトニアンモンテカルロ法(こちらはこの本でも軽く触れられている確率的計算機言語Stanで簡単にやってくれる)も重要である。

第四は、致命的な間違いである。文中、簡単な例を用いて、サンプルサイズが大きくなるときはベイズと最尤の推論は一致し、事後分布はハイパーパラメータに依存せず同じ形に近づいていくということを主張している箇所があるが、これは間違っている。一般に、サンプルサイズが大きくなるとき、ベイズと最尤は一致しないし、事後分布はハイパーパラメータに依存することがある。もちろん適切な条件を課せば、本書の主張が通ることはある。本書の3章で述べられているような簡単な場合では--悪くない近似推論を使った場合でも--そういった現象は観測できる。しかし4章や5章といった応用上重要な複雑なモデル(隠れ変数や階層構造を持つ)では、そのようなことは成立しない。混合指数型分布(混合ポアソンや混合ガウスなど)は、まさしくベイズと最尤が一致しない上にディリクレ分布のハイパーパラメータに事後分布が強く依存する例である。にもかかわらず、ベイズと最尤の漸近一致を混合分布の章で述べているのは大きな誤解を招くだろう。

総じて、突っ込みどころは少なくない。しかしそれでも、PRMLよりは易しいという点において存在意義はある(PRMLと本書どちらでも正確な記述については、本書は優秀な和書である!)。適切な突っ込みが入る環境下で最初にベイズを学ぶ際に読むには向いているが、この本だけで入門すると主に複雑なモデルを使いたくなる実世界で痛い目にあうだろう(過学習)。75点くらいにはなるだろうということから星4に

ベイズ推論や共役事前分布と親しくなれる(★★★★☆)

PRML上巻を読んでいて難解だったので、理解の助けになることを願い、本書を購入しました。

私自身の前提知識は、
文系学部出身のエンジニアで、大学教養レベルの微積分・線形代数は独学といった状態です。
機械学習・ベイズ統計学関連では、
・はじめてのパターン認識
・完全独習 ベイズ統計学入門 小島 寛之
の2冊は読破しています。

PRMLと比べれば式展開は細かく、丹念に追っていけば理解はつらくないです。
実用的なティップスについても言及されており、応用を意識している印象を受けます。

専門的な人からすると足りない箇所もあるのかもしれませんが、とりあえず1冊で概要を掴むのにはうってつけかと。
少なくともベイズ推論に関しては、より身近に感じられるようになりました。

MCMCについては、岩波から出ている「計算統計II――マルコフ連鎖モンテカルロ法とその周辺」を当たればよいと思います。

参入障壁(★★★★☆)

監修者の先生が書かれた巻頭の監修にあたっての中に「参入障壁」とありますが、自分のような素人に取って最大の参入障壁は、この学術関係者向けのシリーズの常で「入門」と題しているこの本でもソースコードのサンプルが全くないことだと思います。

と書いてしまいましたが、GitHubのURLがまえがきの一番最後にありました。著者の先生お許し下さい。ただ本体部分はJuliaで書かれているそうで、PyTorchでさえ、何ですかそれ、な自分には理解は困難そうです。

ところで、この本はベイズ法自体がどういうものなのか分からなかったので買ったわけですが、他の本で多少は専門用語も分かって来たレベル(今日の自分)ならば、復習用に読むのには良くまとまっていて良いと思いますが(なので星は4つに増やしました)、ベイズという言葉しか知らない初学者の方にはやはり薦められません。

ガウス過程と機械学習


おすすめ度:?
難易度:★★★★★

Amazon評価:★★★★☆(4.2|2020/8/9時点)

おそらく日本語での初めてのガウス過程入門書(★★★★★)

おそらく、この書籍に興味を持つほとんどのかたは、自分のように機械学習関連でガウス過程という単語を耳にして気になって色々調べてはいるが、結局よく分からない、というひとだと思います。そういうひとにとっては、この書籍はまさに福音と言えるほどの出来であり、4章まで一気に読めました。構成も見事で、まさに自分のために書かれた本かと思うほどでした。読み進めるうえで、ベイズ推論とカーネル法の基礎知識はあったほうが良いと思います。文句なしの星5つです。

深層学習疲れした方に(★★★★★)

機械学習系の研究室に所属する修士1年の者です。
今流行りのニューラルネット系とは別の切り口から機械学習を見ることができるので、『深層学習から機械学習に入ったけれど、他の手法も見てみたい』という人に特にオススメです。
MLPの機械学習シリーズは難解なものが多く、途中まで読んで置いておくということが多いのですが、この本は初見でも研究の間に読むことができました。構成が素晴らしく、第0章で全体の流れを説明した後、1章と2章で下準備を整え,第3章で自然にガウス過程に繋がる構成となっています。また、コラムも素晴らしく、ニューラルネットとガウス過程の繋がりもわかりやすく解説してあります。
機械学習の勉強を始めたばかりの方でも読むことはできると思いますが、確率分布・線形回帰・カーネル法など機械学習の基礎的なことは知っておいた方がスムーズに読み進められると思います。

帯の通り第0章だけでも(★★★☆☆)

後半に行くに連れて難易度が上がりますが第0章だけでも読む価値があり、例えばリッジ回帰の挙動の説明も丁寧です。他の本で狐につままれたように思っていたことが丁寧に説明されています。

機械学習関連

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装


おすすめ度:★★★☆☆
難易度:★★★☆☆
外部のライブラリを使わずに、一つ一つコードを書きながらディープラーニングを作りその原理について学べる。

ゼロから作るDeep Learning②―自然言語処理編


おすすめ度:★★☆☆☆
難易度:★★★☆☆
外部のライブラリを使わずに、一つ一つコードを書きながらディープラーニングを作りその原理について学べる。word2vecやRNN(リカレントニューラルネットワーク)、に関する内容なので、マテリアルズインフォマティクス とは少し関連が薄くなる。

ケモ(マテリアルズ)インフォマティクス関連

化学のための Pythonによるデータ解析・機械学習入門


おすすめ度:★★★★★
難易度:★★★☆☆
化学・化学工学分野でPythonを使って機械学習を行うための入門書。データ分析, 機械学習が化学の現場でどの様に使われているか実際にコードを描きながら学ぶことができる。金子研究室のオンラインサロン(無料)に入れば、著者である金子先生に直接質問することも可能。

実践 マテリアルズインフォマティクス


おすすめ度:★★★★★
難易度:★★★☆☆
ケモインフォマティクス界の権威、船津公人教授の著書。本書ではマテリアルズインフォマティクスを実践するための機械学習法、実験計画法、記述子計算などについて学べる。

マテリアルズ・インフォマティクス-材料開発のための機械学習超入門


おすすめ度:★★☆☆☆
難易度:★☆☆☆☆
世の中のマテリアルズインフォマティクス を活用した材料開発事例について浅く広く紹介されている。深い内容には踏み入る必要がなく、世の中の活用事例をざっくり知りたい人にはおすすめ。

プログラミング関連

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック


おすすめ度:★★★★☆
難易度:★★☆☆☆
その名の通り、理解しやすいコードの書き方を学べる本。名前の付け方、コメントの書き方など表面上の改善から、コードを動かすための制御フロー、論理式、変数などのループやロジック、またコードを再構成するための方法など、非常に広い範囲がカバーされている。

化学関連

新版 すぐできる 量子化学計算ビギナーズマニュアル (KS化学専門書)


おすすめ度:★★★★☆
難易度:★★★★☆
量子化学の内容や量子化学計算を(Gaussianで)どの様に実施するのか、その方法についてもざっくり学べる。

 

単位が取れる量子化学ノート


おすすめ度:★★★★☆
難易度:★★☆☆☆
量子化学の内容について、図も交えながら分かりやすく解説されている本。量子化学の入門書として最適な一冊。

 

量子化学―基礎からのアプローチ


おすすめ度:★★★☆☆
難易度:★★★★☆

 

岩波講座 現代化学への入門〈17〉分子理論の展開


おすすめ度:★★☆☆☆
難易度:★★★★★