ISBN 9784798157184

現場で使える!PyTorch開発入門 深層学習モデルの作成とアプリケーションへの実装

現場で使える!PyTorch開発入門 深層学習モデルの作成とアプリケーションへの実装
著者
杜 世橋
出版社
翔泳社
刊行
2018-09

概要

PyTorchでニューラルネットを基礎から実装しWebアプリとしてデプロイする

想定読者

Pythonの基礎があり、PyTorchを使って深層学習モデルの構築からWebへのデプロイまで一気通貫で体験したい機械学習・深層学習入門者

こんな人には向いていない

  • PyTorch 1.x以降の現行APIで実務開発しているエンジニア(本書はv0.4ベース、2018年刊行であり現在のAPIとの乖離が大きく、そのままの適用は難しい)
  • CNNやRNNの理論を既に習得し、TransformerやDiffusion Modelなど発展手法を求める中〜上級者
  • WebAPIやアプリデプロイを主目的とする読者(その内容は本書では付録的な扱いにとどまる)

この本で身につくこと

  • PyTorchの動的計算グラフ(Define-by-Run)の概念と、静的グラフ方式との設計思想の違いを説明できる
  • 最尤推定・線形モデルから多層パーセプトロン(MLP)まで段階的に実装できる
  • 畳み込みニューラルネット(CNN)で画像分類モデルを構築できる
  • 再帰型ニューラルネット(RNN)を使った自然言語処理モデルを実装できる
  • 推薦システムをPyTorchで実装し、WebAPI経由で提供する手順を理解できる
  • Colaboratoryを使ってGPU環境なしでモデル学習を実行できる

ハイライト(外部からの言及)

PyTorchの基本から深層学習モデルの作成、そしてアプリケーション作成まで網羅した書籍です。具体的には、PyTorchの基本から始まり、最尤推定と線形モデル、多層パーセプトロンについて解説します — 出典

MLP→CNN→RNNと段階的にモデルを積み上げ最終的にWebアプリへつなげる構成であることが端的に示されている

章立て

PyTorchの基本

動的計算グラフの概念を掴む起点。設計思想の理解はここで済ませてから次章へ

最尤推定と線形モデル

理論的背景を扱う章。ざっと通読してMLP章へ進む読み方で問題ない

多層パーセプトロン

学習ループ・損失関数・バックプロパゲーションの実装を自分で追えるようになる核心章

画像処理と畳み込みニューラルネット

実務直結度が最も高い章のひとつ。CNNを自分で構築する感覚を掴む

自然言語処理と再帰型ニューラルネット

現在はTransformerが主流だが、RNNの動作原理を実装レベルで理解する基礎として有効

推薦システムとWebAPI・アプリのデプロイ

モデルをサービスとして提供する流れの概観。深度は浅めなので概念把握の章として位置づける

付録:TensorBoard / Colaboratory

GPU環境がない読者はここから先に読むことで学習環境を即座に整備できる

関連記事 / 参考情報

学習のヒント

  • 本書はPyTorch v0.4(2018年)を前提としているため、公式ドキュメント(pytorch.org/tutorials)と並行して読み、現行v2.x系との差分を都度確認しながら進めること
  • GPU環境がない場合は付録のColaboratory解説から先に読んで実行環境を整備してから本文に入ると、各章の手を動かす効率が大幅に上がる
  • CNN章とRNN章は実務・応用への直結度が高い。理論色の強い線形モデル章をざっと通読した後に前倒しで取り組む読み方が効率的
  • 補足記事(Qiita: 9f24fa39b0ddd7d949c0)を手元に置いておくと、本書の説明が不明瞭に感じた箇所を即座に照合できる

前提知識

  • PythonとNumPyの基本操作(配列生成・ブロードキャスト・スライスの理解)
  • 微分・行列演算の基礎(勾配降下法の仕組みを式で追うため。高校数学レベルで可)
  • 機械学習の基本概念(訓練/検証/テスト分割、過学習の概念など)

次に読む本

ゼロから作るDeep Learning

NumPyレベルからニューラルネットを自作することでPyTorchの内部動作の理解をより深められる。本書と補完関係にある

PyTorch公式チュートリアル (pytorch.org/tutorials)

本書がv0.4ベースのため、現行v2.x系のAPIと設計変更点を公式ソースで補完するのが最短経路

機械学習エンジニアのためのTransformers

RNN・CNNの次にAttention機構・Transformerへ進む際の定番書。本書の延長線上として自然につながる

出版社による内容紹介

【本書について】 本書は、 杜世橋氏がKindle Direct Publishingを利用してKindleストアで販売している 『PyTorchで学ぶニューラルネットワークと深層学習』(ASIN: B078WK5CPK)を書籍化したものです。 書籍化にあたり、最新(2018年7月時点)のPyTorch v0.4に対応するなど大幅に加筆しています。 また、付録に無料で利用できるGPU環境である「Colaboratory」の利用方法の追加などを行っており、 GPU環境が利用できない読者でも様々なニューラルネットワークのモデル学習が体験できるようになっています。 【PyTorch(パイトーチ)とは】 PyTorchは主にFacebook社のメンバーが開発しているOSSの深層学習フレームワークです。 特徴としては動的ネットワーク方式を採用していてPythonの関数と同じ感覚でニューラルネットワークを構築できる点が挙げられます。 【本書の概要】 本書はPyTorchの基本から深層学習モデルの作成、そしてアプリケーション作成まで網羅した書籍です。 具体的には、PyTorchの基本から始まり、最尤推定と線形モデル、多層パーセプトロンについて解説します。 その後、画像処理と畳み込みニューラルネット、自然言語処理と再帰型ニューラルネットを扱います。 また、推薦システムやWebAPIの作成、アプリケーションのデプロイについても解説します。 さらに付録では、TensorBoardによる可視化、Colaboratoryの利用方法などを解説しています。 【対象読者】 深層学習エンジニア、機械学習エンジニア 【著者】 杜世橋 東京工業大学で計算機を用いた分子生物学の研究をし、卒業後はIT企業でソフトウェア開発やデータ分析に従事する。 大学院時代に当時まだブレーク前だったPythonとNumPyに出会い、勉強会の立ち上げや執筆などを通じてPythonの布教活動を行う。 近年ではスタートアップ企業を中心にデータ分析や機械学習の開発支援も行っている。子煩悩で育児休業を取得してしまうパパエンジニア。

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。