3章犬か、猫か: Kerasのコード30行で行う転移学習

 読者が鍵盤ハーモニカの練習中だとします。音楽についての知識がなく、鍵盤ハーモニカが初めて触れる楽器だったとしたら、上手に演奏できるようになるには数ヶ月必要かもしれません。しかし、すでにピアノなどの演奏が得意なら、習得には数日もあれば十分でしょう。これらの楽器が似ているからです。このように、ある作業で得られた知識をファインチューニングして別の作業に適用するということはよくあります(図3-1)。両者の類似度が高ければ、その分だけ知識の適用が容易になります。

図3-1 実世界での転移学習

図3-1 実世界での転移学習

 この現象はディープラーニングにも当てはまります。訓練済みのモデルがあれば、ディープラーニングのプロジェクトは比較的容易に進められます。訓練の際に得られた知識を再利用して、必要な作業へと適応させることができます。このプロセスは転移学習と呼ばれます。

 この章では、転移学習を行い既存のモデルを我々の分類器向けに修正します。必要な時間は数分です。今回も引き続きKerasを利用します。この章をすべて読めば、どんな処理向けにも高精度な画像分類器を作成できるようになるでしょう。

3.1 訓練済みモデルの転用

 転移学習のプロセスについて議論する前に、ディープラーニングが流行している理由についてもう一度考えてみましょう。

  • ImageNetのような大規模で高品質なデータセットの出現
  • 計算機環境の向上(高速で安価なGPUなど)
  • モデルのアーキテクチャー、オプティマイザー、訓練手法などでのアルゴリズムの改良 ...

Get ディープラーニング実践ガイド ―クラウド、モバイル、ブラウザ、エッジデバイス向けAIアプリ開発入門 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.