ISBN 9784839968373

やさしく学ぶ ディープラーニングがわかる数学のきほん : アヤノ&ミオと学ぶ ディープラーニングの理論と数学、実装

やさしく学ぶ ディープラーニングがわかる数学のきほん : アヤノ&ミオと学ぶ ディープラーニングの理論と数学、実装
出版社
マイナビ出版
刊行
2019-07

概要

ディープラーニングの数式を手で追い、NumPyだけで実装まで完結させる

想定読者

ライブラリを使って機械学習を動かせるが、内部の数式が腑に落ちていないプログラマ。大学数学の素養がなくても読み進めたい学習者。

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

  • すでに誤差逆伝播法や畳み込みの導出を理解しており、数学の復習は不要な実務経験者には内容が平易すぎる
  • PyTorchやTensorFlowによるモデル構築・チューニングを学びたい人には実装範囲がNumPy単体に限定されており物足りない
  • 線形代数・微分の基礎を全く触れたことがない読者には、本書の解説だけでは補足が必要になる箇所がある

読了後にできるようになること

  • 単層パーセプトロンの仕組みと、XOR問題に代表される線形分離不可能な問題への限界を説明できる
  • 順伝播(フォワードパス)を数式と具体数値の両面から追跡し、各層の出力を自力で計算できる
  • 誤差逆伝播法の連鎖律をステップごとに追い、パラメーター更新の導出プロセスを理解できる
  • 畳み込みニューラルネットワーク(CNN)がなぜ画像分類に有効かを、畳み込み演算とプーリングの数式から説明できる
  • NumPyだけを使い、学習した数式を1行ずつコードに対応させながらニューラルネットワークを実装できる

本書のキー概念(章解説)

  • 第 1 章 ニューラルネットワークを始めよう — パーセプトロンの直感的理解から始めるので、機械学習未経験でも入りやすい
  • 第 2 章 順伝播を学ぼう — 具体的な数値を代入しながら計算を追う構成で、抽象的になりがちな行列演算を体感できる
  • 第 3 章 逆伝播を学ぼう — 本書の核心。連鎖律の導出を丁寧に分解しており、他書で挫折した読者にも再挑戦しやすい
  • 第 4 章 畳み込みニューラルネットワークを学ぼう — 図解と数式を交互に使い、CNNが画像の特徴をどう捉えるかを視覚的に確認できる
  • 第 5 章 ニューラルネットワークを実装しよう — NumPyのみで実装することで、ライブラリが隠していた計算の全貌を確認できる最終章

ハイライト

  • ディープラーニング用のライブラリでは数行で書ける部分ですが、1行1行理解しながら動かしていくことで、理解を深めることができます。(本書がNumPyのみに絞った実装を選んだ理由が端的に述べられており、学習方針の核心を示す箇所)
  • 勉強中のプログラマ『アヤノ』と、友達の『ミオ』の会話を通じて、ディープラーニングでどんなふうに入力値から出力値までの計算がされているのか、楽しく学んでいきます。(対話形式という本書の学習スタイルを示す記述。図解・会話・数式の三位一体で進む構成を象徴している)

編集メモ

Qiita上でISBN直接言及の記事は確認できず、外部シグナルが取得できなかった。書籍の位置づけはディープラーニング数学入門の補完的選択肢として評価する

読む前に押さえておきたいこと

  • Pythonの基本文法(関数・クラス・リスト内包表記)
  • NumPyの配列操作(ndarray・行列積・スライシング)の基礎
  • 高校数学レベルの微分(連鎖律は本書内で解説されるが、導関数の概念は前提)

学習のコツ

  • 第3章(逆伝播)は本書の難所。数式の各記号が何を指すかをノートに書きながら読むと、通読後の定着が大きく変わる
  • 第5章の実装は、前章までの数式と1対1で対応しているため、コードを読む前に数式側に付箋を貼って照合しながら進めると理解が加速する
  • 前作『やさしく学ぶ 機械学習を理解するための数学のきほん』を未読でも読み進められると明記されているが、線形代数(行列積・転置)と微分(合成関数の偏微分)の基礎を事前に整理しておくと第2〜3章の理解速度が上がる
  • CNNを扱う第4章は、画像処理の実務経験がなくても図解で直感を養えるよう設計されているため、先に読んでモチベーションを確認してから第1〜3章に戻る読み方も有効
出版社による内容紹介

「ディープラーニングをライブラリで実装できるけれど、よく意味が分かっていない」 「ディープラーニングの背景にある数式を理解して、何が行われているか知っておきたい」 本書はそんな人のための本です。 勉強中のプログラマ「アヤノ」と、友達の「ミオ」の会話を通じて、ディープラーニングでどんなふうに入力値から出力値までの計算がされているのか、楽しく学んでいきます。 ※本書は『やさしく学ぶ 機械学習を理解するための数学のきほん』の続刊となりますが、前作を読んでいない人でも問題なく読むことができます。 本書では、 ・ニューラルネットワークでは何ができるのか ・単層のパーセプトロンではどのような計算が行われているのか ・パーセプトロンではどうやって問題を解いているのか ・パーセプトロンにはどんな欠点があるのか などの基本的な部分から解説を始めます。 パーセプトロンが理解できたら、続いて多層のニューラルネットワークについて学んでいきます。 ・ニューラルネットワークではどうやって問題を解いているのか ・問題を正しく解くためのパラメーターはどうやって学習しているのか といったことについて、1つずつ数式を理解して、時には具体的な数値を当てはめて実際に計算しながら理解していきます。 ニューラルネットワークが理解できたら、いよいよ画像の分類などに向いている「畳み込みニューラルネットワーク」について学習を進めます。 何をやっているのか、図解と数式で確認しつつ学習し、どのようにして「畳み込みニューラルネットワーク」が分類のタスクを行っているのか丁寧に解説します。 そして最後の章では、ここまでの章で学習した数式をもとに、Pythonでプログラムを書いていきます。ライブラリとしてはNumPyだけを使用し、学習した数式を振り返りながらプログラムを書いていきます。ディープラーニング用のライブラリでは数行で書ける部分ですが、1行1行理解しながら動かしていくことで、理解を深めることができます。 【各章の概要】 Chapter1 ニューラルネットワークを始めよう Chapter2 順伝播を学ぼう Chapter3 逆伝播を学ぼう Chapter4 畳み込みニューラルネットワークを学ぼう Chapter5 ニューラルネットワークを実装しよう Appendix

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

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

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