5章画像クラス分類

 これまでに、ディープラーニングとは何か、何の役に立つのか、どうやってモデルを作り、デプロイするのかを説明した。これからはさらに深い部分を見ていこう。世界が理想通りにできているならばディープラーニングの実践者は、舞台裏で起こっていることの詳細を知る必要はない。しかし、少なくともいまのところは、世界は理想通りにはできていない。モデルをうまく、信頼できる形で機能させるには、詳細な部分を正しく調整し、正しく動いているか確認しなければならない。そうするためには、訓練や予測をしている最中のニューラルネットワークの内部を覗き込んで、問題の可能性がある部分を見つけ、修正する方法を知っておかなければならない。

 そこで、以後本書ではディープラーニングのメカニズムについて深く掘り下げていく。コンピュータビジョンのモデル、NLPのモデル、テーブル型データのモデルなどはそれぞれどのようなアーキテクチャで構成されているのだろうか? 最良の結果を得るにはどう訓練したらいいのだろうか? 速くするにはどうしたらいいのだろうか? データセットが変わったら何を変えればいいのだろうか?

 まずは、1章で説明した基本的なアプリケーションから始めよう。ただし、2つの点を変更する。

  • 性能を改善する。
  • より多くの種類のデータに適用する。

 この2つのことをするには、ディープラーニングというパズルのすべてのピースを学習しなければならない。層の種類、正規化手法、最適化器、層を組み合わせてアーキテクチャにする方法、ラベル付けの技術などだ。ただし、これらを読者に対してただぶちまけるようなことはしない。実行中のプロジェクトに関連した実際の問題を解くために必要になったときに、1つずつ説明するようにする。

Get PyTorchとfastaiではじめるディープラーニング ―エンジニアのための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.