自然言語処理自然言語処理の基礎(コロナ社 2010)なにか1冊で自然言語処理について学びたい人はこの本が最適。薄いのですぐ読める。 入門自然言語処理(オライリー 2010)Python で書かれた NLTK (Natural Language Toolkit) というツールキットを使って自然言語処理を学ぶ本。英語版は NLTK Book と言って無料で公開されているので、買う前に内容をチェックしたほうがよい。また、日本語版に追記されている書き下ろしの章は Python による日本語自然言語処理 として公開されている。こちらも、購入前に全文を読むことができる(内容はウェブで読める日本語処理の解説としてはトップクラスに詳しくかつ分かりやすい)ので、買う前に内容を見て、それでも買いたい場合は購入するとよい。 人工知能学事典(人工知能学会 2005)第7章「自然言語処理」が、1項目1-2ページで全25項目について自然言語処理について解説されており、過不足なく自然言語処理全体を概観することができる。 言語処理学事典(言語処理学会 2009)人工知能学事典で分からないことがあれば、こちらを参照するとよい。『人工知能学事典』同様、デジタル版がある。 機械学習言語処理のための機械学習入門(コロナ社 2010)機械学習を用いた自然言語処理を研究・開発する人の必読書。豊富な演習問題に、それぞれ解説もついているので、独習することもできる。自然言語処理を学習するに当たって必要な線形代数・微分積分の知識がどの程度か知りたい人も、同書を眺めてみるとよい。 日本語入力を支える技術(技術評論社 2012)Ruby 風の疑似コードを用いて日本語入力を題材に機械学習アルゴリズムを解説。実装力がそれなりにある人向け。「言語処理のための機械学習入門」のあと、もしくはそれとあわせて読むとよい。ただし、本格的な自然言語処理の知識を仮定しているので、すでに自然言語処理を学んだことのある人か、あるいは形態素解析レイヤー(単語分割、品詞推定)に興味がある人でないと、読むのは厳しいかもしれない。他の解説は、たとえば 社員数500人の会社としての大学 を参照。 集合知プログラミング(オライリー 2008)Python で機械学習のアルゴリズムについて解説した本。現実的な設定でコードが豊富に載っているのでお勧め。 入門ソーシャルデータ(オライリー 2011)Python でウェブマイニングに関するいろいろなトピックについて解説した本。翻訳はいまいちだが、コードが豊富に載っているのでお勧め(ただし、コードが読みやすいとは限らないので、Python の入門書を片手に読んだほうがよい)。たとえば 『入門ソーシャルデータ』で文書クラスタリングと文書要約を学ぶ を参照。入門機械学習(オライリー 2010)Rで機械学習をいろいろなタスクに応用するという内容。個々の機械学習アルゴリズムはほとんど説明されていないが、どのようにしたら機械学習を自分のデータに適用できるか、ということを知ることができる。Rを既に知っているのでRのほうが分かりやすい、というのでなければ先に『集合知プログラミング』および『入門ソーシャルデータ』を読んだほうがよい。 ウェブマイニング大規模サービス技術入門(技術評論社 2010)どのようにスケーラブルなウェブサービスを作るか、という内容で、検索エンジンを作る過程で文字列処理や記事の分類タスクなどが登場。大規模化するというのは単にデータを大きくすればいいというわけではなく、情報科学の基礎知識がちゃんと分かった上でないとできない、ということがよく分かる良書。 Google を支える技術(技術評論社 2008)Google の検索エンジンを支える技術を、公開されている論文の紹介をすることで解説するというコンセプトの本。単なる翻訳ではなく、理解しやすいように丁寧に書かれている。『大規模サービス技術入門』同様、大規模化するに当たっての課題を理解できる。 バッドデータハンドブック(オライリー 2013)アンソロジー形式の本で、いろいろな内容について書かれているが、現実のデータは人工データとは違い、例外と戦わなければいけないし、大規模化する必要もないのに無闇に大規模化してしまって失敗した、というような教訓が書かれた実例集。ウェブデータをどのようにスクレイピング(ほしい情報をウェブサイトから抽出)するか、といった内容も、体系的ではないがあちこちの章に分散して書かれている。他の解説はたとえば 現実はバッドデータが9割 を参照。 |