Skip to content

About

『ゼロから作る Deep Learning ❸』(O'Reilly Japan, 2020)

Resources

Stars

1 star

Watchers

0 watching

Forks

 
 

Repository files navigation

このリポジトリは『ゼロから作るDeep Learning ❸』のサンプルコードに、各ステップを学習・実行できる Jupyter Notebook を追加したものです。

本書概要

本書では「DeZero」というディープラーニングのフレームワークを作ります。DeZeroは本書オリジナルのフレームワークです。最小限のコードで、フレームワークのモダンな機能を実現します。本書では、この小さな——それでいて十分にパワフルな——フレームワークを、全部で60のステップで完成させます。それによって、PyTorch、TensorFlow、Chainerなどの現代のフレームワークに通じる深い知識を養います。

pypi MIT License Build Status

ニュース

【試し読み】本書の一部をオンラインで公開しています。 https://koki0702.github.io/dezero-book/

ファイル構成

フォルダ名 説明
dezero DeZeroのソースコード
examples DeZeroを使った実装例
steps 各stepファイル(step01.py ~ step60.py)
notebooks 各ステップを学習・実行するJupyter Notebook
tests DeZeroのユニットテスト

必要な外部ライブラリ

本書で使用するPytnonのバージョンと外部ライブラリは下記の通りです。

またオプションとして、NVIDIAのGPUで実行できる機能も提供します。その場合は下記のライブラリが必要です。

  • CuPy (オプション)

実行方法

本書で説明するPythonファイルは、主にstepsファルダにあります。 最初にリポジトリのルートで、uv を使って環境を作成します。

uv sync

各ファイルは、リポジトリのルートから uv run python3 で実行できます。

uv run python3 steps/step01.py
uv run python3 steps/step02.py

Notebook を利用する場合は、次のコマンドで JupyterLab を起動してください。

uv run jupyter lab

CuPy 13 系(cupy-cuda12x)と必要な CUDA 12.9 ライブラリも uv sync で インストールされます。GPU 機能を利用するには、対応する NVIDIA GPU と ドライバーが必要です。システムへの CUDA Toolkit の別途インストールは不要です。 CuPy は、既存の NumPy 1.26 と互換性のある 13 系に固定しています。

notebooks/stage5_step52-56.ipynb は、GPU の確認セルで uv 環境内の CUDA 共有ライブラリを直接読み込むため、次の検索パス設定なしで実行できます。 libnvrtc.so.12 の読み込みエラーが出た後は、修正済みの Notebook を開き、 カーネルを再起動して上から実行してください。

Linux / WSL でほかの Notebook やスクリプトを実行する場合は、CuPy 13 系が CUDA 共有ライブラリを見つけられるよう、リポジトリ直下で次の設定を行ってから JupyterLab を起動してください。 起動済みの場合は、JupyterLab 自体を終了してこのコマンドで起動し直してください。

CUDA_LIBRARY_PATH="$(uv run python3 -c 'import site; from pathlib import Path; print(":".join(str(p) for base in site.getsitepackages() for p in sorted((Path(base) / "nvidia").glob("*/lib"))))')"
export LD_LIBRARY_PATH="$CUDA_LIBRARY_PATH${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
uv run jupyter lab

同じターミナルから uv run python3 steps/step52.py などのスクリプトも実行できます。

デモ

DeZeroの他の実装例はexamplesにあります。

正誤表

本書の正誤情報は、🔎 正誤表ページに掲載しています。

正誤表ページに掲載されていない誤植や間違いなどを見つけた方は、📧 japan@oreilly.co.jpまでお知らせください。

About

『ゼロから作る Deep Learning ❸』(O'Reilly Japan, 2020)

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages