はじめてのDocker & SageMaker 実運用のための一歩先の機械学習
- 物販商品(倉庫から発送)物理+電子版¥ 2,000
- ダウンロード商品電子版¥ 2,000
- ダウンロード商品無料試し読み¥ 0
本書は、機械学習・ディープラーニングにおける環境構築の難しさを問題点として、DockerでGPU訓練環境を自在に構築し、S3/ECRを中心としたAWSの基本的な使い方を理解することを目的としています。最終的な訓練環境はAWSの「SageMaker」を想定し、SageMaker Traininig Jobを自在に使いこなすことを最終目標にします。DockerからAWSまでの統一的に理解できる本です。 機械学習ユーザーだけでなく、機械学習以外のユーザーにとっても、機械学習特有の問題意識から、普段のDockerの使い方と対比させてみても面白いでしょう。本章の最後には簡単な演習問題を配置し、読者が理解を深められるようにしています。 本書はAWS環境でGPU訓練をしていますが、著者が本書の執筆に執筆した金額は約2000円です。個人利用でも十分に遊べる程度の内容に調整しています。 本書の最後には、今大流行の「Stable Diffusion」をケーススタディとして、SageMaker Traininig Jobで実行します。多数のプロンプトを同時並列に生成することが可能になります。おそらく日本で最初に近いStable Diffusionの本だと思います。 DockerはWindows11で導入された「WSL2」にDocker-CEを使い、機械学習はPyTorch+PyTorch lightningとしています。Google Colaboratoryの使い勝手がどんどん悪くなっているので、この機会に「脱Colabを目指した、一歩先の機械学習」をぜひ体験してみましょう。
対象読者
この本の対象読者は以下の通りです。 ・機械学習についてある程度知っている人 ・Dockerに興味がある人 ・AWSについて知りたい人
この本が向いていない人
逆にこの本を読まないほうが良い人は以下の通りです(機械学習の解説がほぼないためです)。 ・機械学習そのものを知りたい人
この本が特に向いている人
この本が特に向いている方は以下の通りです。 ・Dockerは聞いたことあるが、実際使ったことなく避けていた人 ・CUDAのバージョンなど、普段から環境構築に悩まされている人 ・普段からSageMakerを使っている、または使う予定の人 ・普段はGoogle Colaboratoryを使っているが、別の環境を視野に入れている人 ・本番運用を見据えた、Colabの「一歩先の」機械学習を知りたい人
本書のゴール
本書のゴールは以下の3点です。本書を通じてこの3点ができるようになります。 1. Dockerイメージを自在にビルドできること 2. AWSの基本的なサービス、特にS3を使えるようになり、AWS CLIやBoto3のコードを自分で書けるようになること 3. 自分で作ったDockerイメージで、SageMaker Training Jobを自由に構築できるようになること
コード
https://github.com/koshian2/docker-sagemaker-book
構成
A4 全180ページ、紙の本はオフセット印刷 ※紙の本は10月初旬の入荷以降になります ※検品が完了するまでは、Boothの仕様上、宅配便発送になり、送料が730円かかってしまう旨をご了承ください。検品後はゆうパケットで400円の送料になります。
目次
・第1章 Docker入門 なぜDockerなのか? / CUDAのバージョン問題 / 論文の公式実装の環境依存問題 / Colabが本番運用に向かない問題/ WSL2導入 / WSL2上でのDocker-CEのインストール / Dockerイメージとコンテナの概念の理解 / Dockerは複数の環境を切り替えられる / インスタンスとしてのコンテナ / 演習問題(1) / Dockerイメージのビルド(docker build) / WSL2におけるWindowsのファイルの扱い / Dockerイメージを削除する(docker rmi) / 事例:Pythonのイメージを作る / コンテナへのファイルコピー(docker cp) / 独自Dockerfileの作り方・考え方 / 演習問題(2) ・第2章 AWS S3/ECR AWSアカウントの登録 / MFAの設定 / 独自のアカウント名をつける / IAMユーザー / Amazon S3 / ブラウザ上からのS3操作 / AWS CLIインストール / aws configure / AWS CLIによるS3のオブジェクト操作 / ファイル移動や名前変更(s3 mv) / ファイルの削除(s3 rm) / ディレクトリ同期でコピー削除を同時にこなす(s3 sync) / 演習問題(1) / Boto3の導入と認証 / Boto3によるS3オブジェクトの操作 / バケットのバージョニング / バージョニング環境下でのファイル操作 / バケットのライフサイクルルール / Amazon ECR / 演習問題(2) ・第3章 SageMaker Notebook SageMaker ノートブックとは / SageMakerノートブックとColabの違い / SageMakerノートブックの料金計算 / ノートブックインスタンスの初期化 / ノートブックインスタンスの動作確認 / ノートブックインスタンスとS3の連携 / ノートブックインスタンスとECRの連携 / まとめ ・第4章 SageMaker Traininig Job SageMaker Training Job / ケース1:MNIST / ケース2:シェルファイルの実行 / ケース3:独自DockerイメージでTraining Jobを動作させる / ケース4:実行ファイルが複数ある場合 / ケース5:ハイパーパラメータと環境変数 / ケース6:Training Jobの並列実行 / ケース7:訓練データをS3から入力する / ケース8:スポットインスタンスによる訓練 / ケース9:Training Jobのローカルモード / ケース10:Training Jobを使用したOpenH264による動画 / ケース11:Stable Diffusion / 演習問題 ・模範解答
Buyee経由の注文に注意
ブラウザの言語環境が「日本語以外」で「物理本を含む」場合、「Buyee」経由の注文となることがあります。 これは海外発送代行サービスであり、日本在住の方は使う必要はありません。日本在住の方は「日本語のページ」から、ゆうパケットなどで発送するようにしてください。 Buyee経由ではBoothの注文履歴に反映されないため、おまけの電子版がダウンロードできません。