4章舞台裏:数字のクラス分類器

 「2章 モデルから実運用へ」では、さまざまなモデルを訓練する様子を紹介した。本章では、舞台裏で起こっていることを見ていこう。まず、コンピュータビジョンを例に取って、ディープラーニングの基本的なツールと概念を紹介する。

 具体的には、配列やテンソルの役割と、それらを十分に活用するための強力で重要な機構であるブロードキャスト計算について説明する。また、重みを自動的に更新することで学習を実現する確率的勾配降下法(SGD)についても説明する。クラス分類タスクにおけるロス関数の選び方と、ミニバッチの役割についても説明する。さらに、ニューラルネットワークが行う計算の背後にある数学についても説明する。最後にこれらをすべて組み合わせた全体像を説明する。

 以降の章で、アプリケーション内部に踏み込んで、ここで紹介する概念やツールが一般的に使えることを示していくことになるが、本章でまず、それらすべての礎石を築く。これらの礎石は互いに依存しているので、率直に言って本章は本書でも最も難しい章の1つとなっている。橋などのアーチ構造と同じように、構造を安定させるにはすべての石が置かれるべき場所に置かれていなければならない。そして、やはりアーチと同じように、それが一度できてしまえば、その上にさまざまなものを構築できる。しかし組み上げるには忍耐力が必要だ。

 さて、始めよう。最初のステップとして、画像がコンピュータでどう表現されているのか考えてみよう。

4.1 ピクセル:コンピュータビジョンの基礎

 コンピュータビジョンモデルの動作を理解するためには、まずコンピュータが画像を扱う方法を理解する必要がある。ここでは、コンピュータビジョンの世界で最も有名なデータセットであるMNIST( ...

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.