19章fastai Learnerを1から作る

 結論とオンラインの章を除くと、この章が最後の章となる。この章は、これまでの章と少し違って、これまでよりもはるかに多くのコードを、あまり説明せずに掲載する。新しいPythonキーワードやライブラリを説明せずに使用する。本章は、これから大きな研究プロジェクトを始めるためのスタート地点となるものだ。fastaiとPyTorch APIの重要な部分の多くを、「17章 基礎からのニューラルネットワーク」で作り上げた部品だけを使って、1から実装する。本章の主な目的は、これまで学んできた重要な技術を使ってImagenetteに対して学習できるような独自のLearnerクラスとコールバックを最終的に作り上げることだ。Learnerを作る過程で、独自バージョンのModuleParameter、並列動作するDataLoaderなども作る。PyTorchのこれらのクラスが何をしているのか理解できるようになるはずだ。

 章末の問題は本章では特に重要で、本章をスタート地点として進むべきさまざまな興味深い方向を示している。本章を読む際にはコンピュータに向かい、実験やWebでの検索など、何をしているのか理解するために必要なことを何でも試してみてほしい。そうするためのスキルや知識は、本書をここまで読み進めているうちに、すでに身に付いているはずだ。読者が十分できることを確信している。

 まずは、手動でデータを取得するところから始めよう。

19.1 データ

 untar_dataのソースコードを見て、何をしているのか見てみるといい。本章ではImagenetteの160ピクセル版を用いるためにこの関数を用いる。

path = untar_data(URLs.IMAGENETTE_160) ...

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.