手元に置いておくと安心できる、情報系の人向けな日本語の本のリスト

最近、人に本を薦める事が多くなった。とりあえずこの辺を読むといいですよ的なリストを作っておくと便利だと思ったので作ることにした。
以下、「事前知識のいらない入門本」「事前知識はいらないけど本格的な本」「事前知識がないと何言ってるかわからないけど有益な情報が満載な本」の3つにわけて列挙する。


事前知識のいらない入門本
数式少なめ、脳負荷の小さめな本をいくつか。何をやるにしてもデータ構造、アルゴリズム、数学はやっておくと幸せになれるよ。


情報検索と言語処理
データマイニングとか自然言語処理とかやりたい人にはとりあえずこれ。さすがに古い話が多くなってきたのでそろそろ新しい入門用情報検索本がでないかなあと思っている。


図解・ベイズ統計「超」入門
伝説のベイジアン先生がベイズの基礎を教えてくれる本。ベイズやりたい人はこれ。


珠玉のプログラミング
データ構造とかアルゴリズムとかの考え方の基礎を教えてくれる本。可能なかぎりシンプルに最大限の効果を出しましょう、っていう考えかたが身につく。


キーポイント線形代数
行列苦手な人が読むと幸せになれる本。特に固有値の意味がわからない人向け。


最短経路の本
天才少女レナが華麗にグラフの問題を解きまくる本。データ構造とアルゴリズムの面白さがわかるとても良い本です。あとドイツではエンジニアの待遇が良いらしいこともわかる本。



事前知識はいらないけど本格的な本
腰を据えて読む系の本。実用性が高いものばかり。基本的に一冊で完結しているので安心して読める。これだけ良い本が世の中にあふれているなんて幸せな時代ですね。本当に良い本はタイトルで釣ってないのでタイトル的にはピンとこなそうなのが多い。


バイオインフォマティクスのためのアルゴリズム入門
文字列を扱うデータ構造とアルゴリズムの本。情報検索をやるひとは絶対読んでおいたほうがいい。


プログラミングコンテストチャレンジブック
データ構造とアルゴリズムの実力がやばいくらい伸びる本。読まざるをえない。


サポートベクターマシン入門
最近の機械学習はAROWとかSCWとかオンライン識別関数が主流なので識別関数の基礎はやっておきたい。翻訳に難があるものの識別関数ならこの本がいい。


パターン認識機械学習
知らない人はいない有名な本。読んだほうがいいのは事実なんだけど、初心者にこれを読ませるケースが散見されるのでそれはどうかと思う。
 


情報理論
情報量に関心がある人が幸せになれる本。エントロピーとか圧縮とかが好きな人向け。


はじめての数論
Project Eulerをやるために買ったんだけど何気にその後も色々役に立った本。数論楽しいです。


基礎線形代数固有値問題
SVD(固有値分解)が何をやっているのかがわかるようになる本。キーポイントじゃものたりない人向け。




事前知識がないと何言ってるかわからないけど有益な情報が満載な本
ゆるふわではない応用系の本。ここに列挙した本はその分野の事前知識があることが前提なのでいきなり読むと辛いものが多い。そのかわり先端の技術についても充分に書かれているので「あれ、これってどの論文で読んだんだっけ」というような情報がまとまって書かれているので頭が整理できて非常に助かる。「ゆるふわではない応用」には多くの事前知識が必要。


日本語入力を支える技術
日本語入力に興味がなくても読んでおいたほうが良い本。形態素解析器をつくる上で必要な技術が機械学習から簡潔データ構造まで多く書かれている。


機械翻訳
機械翻訳自体に興味がなくても読んでおいたほうが良い本。言語モデル本としても、生成モデル本としても優良。機械翻訳自然言語処理の初期からあるテーマなので色々な技術が集まっていて非常に面白い。


イラストで学ぶ 機械学習
識別関数の本。AROWなどの新しめな手法もカバーしているし、損失関数や正則化についてもやたらと詳しい。


言語処理のための機械学習入門
機械学習の学習器を「実装したい」人向け。論文を読んで学習器が実装できるようになりたい人が知っておくべきテクニック満載のすごい本。


高速文字列解析の世界
日本語で読める簡潔データ構造の本。最高。