【技術書レビュー】仕事ではじめる機械学習

プログラミング

書店で機械学習本を漁っていたらこんな本を見つけました。実用性重視の機械学習本は珍しいですし、とても良い内容でしたのでご紹介させて頂きます。

 

ターゲット層

「機械学習を実務に活かしたい!でもどうやって取り入れたら良いの?」という人が読むと為になる本です。内容のレベル的には、『ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装』や『TensorFlowで学ぶディープラーニング入門~畳み込みニューラルネットワーク徹底解説』などの機械学習の入門書を一冊読み終えた方が普通に読めるレベルだと思います。

 

良い点①「機械学習をしないで良い方法を考える」

この本では、機械学習プロジェクトの流れを以下のように説明しています[1]。

  1. 問題を定式化する
  2. 機械学習をしないで良い方法を考える
  3. システム設計を考える
  4. アルゴリズムを選定する
  5. 特徴量、教師データとログの設計をする
  6. 前処理をする
  7. 学習・パラメータチューニング
  8. システムに組み込む

 

機械学習プロジェクトの始め方に、「機械学習をしないで良い方法を考える」というステップが入っていることに感銘を受けました。

機械学習の中身は完全にブラックボックスなので、技術的負債になる可能性も当然高いです。そのリスクを承知の上で使わなければならない状況になって初めて、機械学習の恩恵を享受できます。

機械学習を使おうとしているプロジェクトでは、その導入コストが度外視されていることがあります。

機械学習は非常にコストの高い技術なので、使わず済むなら使わない方が良い、ということを明示しているのが素晴らしいです。

 

良い点②「機械学習を広く体系的に扱っていること」

一口に機械学習と言っても、分類・回帰・クラスタリング・強化学習など、その種類はたくさんあります。そして、それぞれの分野は奥深く、一分野だけで分厚い本が一冊書けてしまう程です。

しかし、実用上必要となるのはそういった研究レベルの機械学習ではない筈です。この本では、それぞれの分野についてはあえて掘り下げず、分野の違いに着目して説明がなされています。

「現実のどういうケースで、どのアルゴリズムを使うべきなのか?」という説明に加え、そのアルゴリズムについて少しだけ触れる、といった流れです。

 

良い点③「ケーススタディ」

この本では、以下のような3つのケーススタディが用意されています。

  • 映画の推薦システムをつくる
  • Kickstarterの分析、機械学習を使わないという選択肢
  • Uplift Modelingによるマーケティング資源の効率化

 
例えば映画の推薦システムでは、「そもそも推薦システムとは何か?」という議論からスタートし、「学習データをどうやって用意するのか?」「システムの性能をどうやって評価するのか?」といった、実務で大体直面する問題に対するアプローチ法が紹介されており、非常に参考になります。

 

総評 ★★★★☆

機械学習の勉強を終え、「さあこれから機械学習プロジェクトを始めるぞ!」という方には是非読んで頂きたい一冊です。

入門書と研究者向けの機械学習本はたくさん出ていますが、実用志向の機械学習本というのはまだまだ少なく、本書は機械学習プロジェクトをシステマチックに扱う強い味方になってくれるはずです。

ただでさえ難解な機械学習という分野&オライリーの書籍ですが、実用性重視かつ難易度は易しめで読みやすかったです。訳の日本語が怪しいところが若干ありますが、話のメインとなる部分は大丈夫でした。十分おすすめできる一冊です。

 


 
参考文献:
[1] 仕事ではじめる機械学習

コメント