Leanpub Header

Skip to main content

深層学習原理の構造

深層学習ライブラリをゼロから作成する

市場に出回っている深層学習の本は、あいまいで理解しにくいもの、またはプラットフォームの説明書であり、実装がなく理論だけが説明されているか、原理の説明がなくプログラミングだけが説明されているものであり、人々が深層学習の基本原理を理解することは困難です.この本では、理論的な説明とコードの実装を使用しています。この方法では、深層学習の技術原理と実装の詳細を簡単な方法で分析し、深層学習ライブラリをゼロから作成する方法を読者に教えています。コンテンツには、勾配降下法、回帰学習、フィードフォワード ニューラル ネットワーク、畳み込みニューラル ネットワーク、再帰型ニューラル ネットワーク、生成ネットワークが含まれます。
Free With Membership

With Membership

Free!

$29.00

You pay

$29.00

Author earns

$23.20
$

...Or Buy With Credits!

You can get credits with a paid monthly or annual Reader Membership, or you can buy them here.

Buying multiple copies for your team? See below for a discount!

PDF
About

About

About the Book

本書は深層学習の基本原理と実装プロセスを分かりやすく紹介し、既存の深層学習ライブラリを利用するのではなく、pythonのnumpyライブラリを使って独自の深層学習ライブラリをゼロから構築しています。 Pythonプログラミング、微積分、確率統計の基礎知識の紹介を基に、回帰モデル、ニューラルネットワーク、畳み込みニューラルネットワーク、リカレントニューラルネットワーク、ジェネレーティブネットワークなど、深層学習の核となる基礎知識を講義に従って順次紹介します。ディープラーニングの開発原理をシンプルに分析しながら、詳細なコード実装プロセスを提供します。武器や携帯電話の使い方を教えるのではなく、自分で武器や携帯電話を作る方法を教えるようなものです. この本は、既存の深層学習ライブラリの使用に関するチュートリアルではなく、深層学習の開発方法の分析です。ライブラリをゼロから学習します。ゼロからの原則とコードの実装を組み合わせるこの方法により、読者は深層学習の基本原理と一般的な深層学習ライブラリの設計思想をよりよく理解できるようになります。

Team Discounts

Team Discounts

Get a team discount on this book!

  • Up to 3 members

    Minimum price
    $24.00
    Suggested price
    $72.00
  • Up to 5 members

    Minimum price
    $39.00
    Suggested price
    $116.00
  • Up to 10 members

    Minimum price
    $69.00
    Suggested price
    $203.00
  • Up to 15 members

    Minimum price
    $99.00
    Suggested price
    $290.00
  • Up to 25 members

    Minimum price
    $148.00
    Suggested price
    $435.00

Author

About the Author

hwdong

C9本科,高考数学物理1小时交卷、超出清华分数线20多分. Texas A&M、休斯顿大学访问学者. 曾从事计算机图形学、视觉等科研,目前主要从事计算机编程等网络课程的工作,写了3本书:C++17从入门到精通、Python3从入门到实战、解剖深度学习原理-从0实现深度学习库。在YouTube频道hwdong上发布免费计算机相关的教学课程。

Contents

Table of Contents

深層学習の原理の構造 - ゼロから深層学習ライブラリを作成する
  • 第 1 章 プログラミングと数学の基礎

    • 1.1 Python クイック スタート

      • [1.1.1 Python インストール] (#111-python インストール)

        • [Python インタープリターのインストール] (#python インタープリターのインストール)
        • jupyter Notebook プログラミング環境
        • [Anaconda インストール ツール] (#anaconda インストール ツール)
      • [1.1.2 オブジェクト、print()関数、型変換、コメント、変数、input()関数] (#112 -- オブジェクト print 関数型変換コメント変数入力関数)

        • [1. オブジェクト] (#1--オブジェクト)

        • 2.印刷関数 print()

        • 3.型変換

        • [4. コメント] (#4-コメント)

        • [5.変数] (#5--変数)

        • 6.input()関数

          • 1.1.3 操作
        • [添字演算子[]](#添字演算子)

        • [文字列整形] (#文字列整形)

      • [1.1.4 制御ステートメント] (#114-制御ステートメント)

        • 1.if文
        • 2.while文
        • 3. for ステートメント
      • [1.1.5 Python でよく使用されるコンテナ タイプ] (#115 -- Python でよく使用されるコンテナ タイプ)

        • [1.リスト (リスト)] (#1--リスト リスト)
        • インデックス
        • スライス
        • [for to traverse all elements] (#for-to traverse all elements)
        • [2.tuple(タプル)] (#2タプルタプル)
        • [3.set (コレクション)] (#3-setset)
        • 4.dict(辞書)
      • [1.1.6 関数] (#116--関数)

  • [数学数学パッケージ] (#数学数学パッケージ) - [グローバル変数とローカル変数] (#グローバル変数とローカル変数) - 匿名/Lambda 関数 (匿名/ラムダ関数) - ネストされた関数、クロージャ - [yield and generator] (#yield and generator)

    • [1.1.7 クラスとオブジェクト] (#117--クラスとオブジェクト)

    • [1.1.8 Matplotlib 入門] (#118-matplotlib 入門)

      • サブプロット()
      • 軸オブジェクト
      • [mplot3d] (#mplot3d)
      • 表示画像
    • 1.2 テンソル ライブラリ numpy

      • 1.2.1 テンソルとは?

        • [1 ベクトル] (#1--ベクトル)
        • ベクトルのノルム
        • 2-マトリックス
        • 3 3D テンソル
      • 1.2.2 ndarray オブジェクトの作成

        • 1.array()
        • 2.多次元配列型ndarray
        • 3.asarray()
        • 4.ndarrayのtolist()メソッド
        • 5. astype()とreshape()
        • 6.arange()とlinspace()
        • 7. full(), empty(), zeros(), ones(), eye()
        • 8. 乱数値のテンソルを作成するための共通関数
  • [9. 追加、リピート & レイ、マージ & スプリット、エッジ フィル、軸の追加 & 軸の交換] (#9 - リピートの追加 & レイ マージ & エッジ フィルの追加 軸の追加 & 軸の交換) - repeat repeat() - lay tile() - merge concatenate() - オーバーレイ スタック() - column_stack(), hstack(), vstack() - スプリット() - [エッジパディング] (#エッジパディング) - 軸を追加 - 交換軸

    • 1.2.3 ndarry 配列のインデックス付けとスライス

    • 1.2.4 テンソルの計算

      • [1. 要素別計算] (#1-要素別計算)
      • [アダマール積] (#アダマール積)
      • [2.累積計算] (#2-累積計算)
      • [3. 内積] (#3--内積)
      • 4放送放送
    • [1.3 微積分] (#13-微積分)

      • [1.3.1 関数] (#131-関数)

      • 1.3.2 四則演算と合成演算

        • 四則演算
        • 複合
      • 1.3.3 リミット、デリバティブ

        • 1. シーケンスの制限
        • 2. 機能の限界と継続
        • 3. 関数の導関数
      • 1.3.4 導関数の四則演算と連鎖導出規則

      • 1.3.5 計算グラフ、フォワード計算、バックプロパゲーション導出

  • 1.3.6 多変量関数の偏微分と勾配

    • 1.3.7 ベクトル値関数と Jacobian 行列の導関数

    • [1.3.8 ポイント] (#138-ポイント)

    • [1.4 確率の基本] (#14-確率の基本)

      • [1.4.1 確率] (#141-確率)

      • 1.4.2 条件付確率、同時確率、全確率式、ベイズ式

      • [1.4.3 確率変数] (#143-確率変数)

      • 1.4.4 離散確率変数の確率分布欄

      • 1.4.5 連続確率変数の確率密度

      • 1.4.6 確率変数の分布関数

      • [1.4.7 期待、分散、共分散、共分散行列] (#147-期待分散共分散共分散行列)

        • [1.平均と期待] (#1-平均と期待)
        • [2.分散、標準偏差] (#2-分散標準偏差)
        • 3.共分散、共分散行列
  • 第2章 勾配降下法

    • 2.1 関数極値の必要条件 ・【2.2 勾配降下法(gradient descent)】(#22-勾配降下法gradient-descent)

    • 2.3 勾配降下法のパラメータ最適化戦略

      • 2.3.1 運動量運動量法
      • [2.3.2 アダグラード法] (#232-アダグラード法)
      • 2.3.3 アダデルタ法 ・【2.3.4 RMSprop法】(#234-rmsprop法)
      • 2.3.5 アダム法
    • [2.4 勾配検証] (#24--勾配検証)

      • [2.4.1 数値勾配と解析勾配の比較] (#241 - 数値勾配と解析勾配の比較)
  • [2.4.2 一般的な数値勾配] (#242--一般的な数値勾配)

    • 2.5 分離勾配降下アルゴリズムとパラメータ最適化戦略
    • [2.5.1 パラメータ最適化] (#251-パラメータ最適化)
    • [2.5.2 パラメータオプティマイザを受け入れる勾配降下法] (#252-パラメータオプティマイザを受け入れる勾配降下法)
  • Chapter 3 Linear Regression, Logistic Regression and Softmax Regression

    • [3.1 線形回帰] (#31--線形回帰)

      • [3.1.1 食堂車の採算問題] (#311-食堂車の採算問題)
    • 3.1.2 機械学習と人工知能

      • [1.機械学習] (#1-機械学習)
      • [2. 機械学習と人工知能の関係] (#2-機械学習と人工知能の関係)
      • 3. 機械学習の分類
    • 3.1.3 線形回帰とは?

      • 3.1.4 線形回帰問題を解く正規方程式
    • 3.1.5 線形回帰問題を解く勾配降下法

    • [3.1.6 デバッグ学習率] (#316-デバッグ学習率)

    • [3.1.7 勾配検証] (#317-gradient-validation)

    • [3.1.8 予測] (#318-予測)

    • 3.1.9 複数の特徴を持つ線形回帰

      • 1. 多機能線形回帰
      • [2. はめ込み面] (#2-はめ込み面)
      • 3. 温度と圧力の問題
    • [3.1.10 データの正規化] (#3110-データの正規化)

    • [3.2 モデルの評価] (#32-モデルの評価)

      • 3.2.1 Underfitting と Overfitting
      • [3.2.2 検証セット、テスト セット] (#322-検証セット テスト セット)
      • [3.2.3 学習曲線] (#323--学習曲線)
      • 3.2.4 予測ダム水量
  • 3.2.5 偏り-分散

    • 3.3 正則化 - [定期期間を増加させる損失関数は次のようになります] (#定期期間を増加させる損失関数は次のようになります)

    • [3.5 ロジスティック回帰] (#35-ロジスティック回帰)

      • [3.5.1 ロジスティック回帰] (#351-ロジスティック回帰)

      • [3.5.2 ロジスティック回帰のnumpy実装] (#352-ロジスティック回帰のnumpy実装)

        • 1. データの生成
        • 2. 勾配降下法のコード実装
        • [3.損失関数値の計算] (#3-損失関数値の計算)
        • 4.決定曲線
        • [5. 予測の精度] (#5-予測の精度)
        • 6. Scikit-Learn ライブラリのロジスティック回帰
      • [3.5.3 実際の戦闘: アイリス分類の派手な実装] (#353--実際のアイリス分類の派手な実装)

    • [3.6 ソフトマックス回帰] (#36-ソフトマックス回帰)

      • 3.6.1 らせんデータセット

      • [3.6.2 ソフトマックス関数] (#362-ソフトマックス関数)

      • [3.6.3 ソフトマックス回帰] (#363-ソフトマックス回帰)

        • マルチサンプルフォーム
      • [3.6.4 Multi-classification cross-entropy loss] (#364-Multi-classification cross-entropy loss)

      • [3.6.5 加重和によるクロスエントロピー損失の計算] (#365 - 加重和によるクロスエントロピー損失の計算)

      • 3.6.6 ソフトマックス回帰の勾配計算

        • [1.加重和に対する交差エントロピー損失の勾配] (#1-加重和に対する交差エントロピー損失の勾配)
        • 2. 重みパラメータに対する交差エントロピー損失の勾配
      • [3.6.7 Softmax 回帰のための勾配降下法の実装] (#367-Softmax 回帰のための勾配降下法の実装)

  • 2.6.8 スパイラル データセットのソフトマックス回帰

    • [3.7 バッチ勾配降下法と確率的勾配降下法] (#37-バッチ勾配降下法と確率的勾配降下法)

      • [3.7.1 MNIST 手書き数字セット] (#371--mnist-手書き数字セット)

      • [3.7.2 部分的なトレーニング サンプルでロジスティック回帰をトレーニングする] (#372 - 部分的なトレーニング サンプルでロジスティック回帰をトレーニングする)

      • 3.7.3 バッチ勾配降下法と実装

        • [Fasion MNIST トレーニング セットのソフトマックス回帰] (#fasion-mnist トレーニング セットのソフトマックス回帰)
      • [3.7.4 確率的勾配降下法] (#374-確率的勾配降下法)

        • 概要
  • [第 4 章 ニューラル ネットワーク] (#第 4 章 - ニューラル ネットワーク)

    • 4.1 ニューラル ネットワーク

      • [4.1.1 パーセプトロンとニューロン] (#411- パーセプトロンとニューロン)

        • [1. パーセプトロン] (#1--パーセプトロン)
        • 2.ニューロン
      • [4.1.2 活性化関数] (#412-活性化関数)

        • 1. ステップ関数 sign(x)
        • 2.tanh関数
        • [4. ReLU 関数] (#4-relu 関数)
      • 4.1.3 ニューラル ネットワークとディープ ラーニング

      • [4.1.4 複数サンプルの順方向計算] (#414-複数サンプルの順方向計算)

      • [4.1.5 出力] (#415-出力)

      • [4.1.6 損失関数] (#416-損失関数)

        • [1. 平均二乗誤差損失] (#1-平均二乗誤差損失)
        • 2. 二分分類クロスエントロピーロス
        • [3. 多分類クロスエントロピーロス] (#3-多分類クロスエントロピーロス)
      • [4.1.7 数値勾配ベースのニューラル ネットワークのトレーニング] (#417-数値勾配ベースのニューラル ネットワークのトレーニング)

      • [4.1.8 深層学習] (#418--深層学習)

    • 4.2 逆導出 ・【4.2.1 順計算と逆導出】(#421 順計算と逆導出)

      • [4.2.2 計算グラフ] (#422-計算グラフ)

      • [4.2.3 出力に対する損失関数の勾配] (#423-出力に対する損失関数の勾配)

        • 1. 出力に対するバイナリ クロス エントロピー損失関数の勾配
        • [2. 出力に対する平均二乗誤差損失関数の勾配] (#2-出力に対する平均二乗誤差損失関数の勾配)
        • [3.出力に対する多分類の交差エントロピー損失関数の勾配] (#3-出力に対する多分類の交差エントロピー損失関数の勾配)
      • [4.2.4 2 層ニューラル ネットワークのバックプロパゲーションの導出] (#424--2 層ニューラル ネットワークのバックプロパゲーションの導出)

        • 1. 単一サンプルの逆導出
        • 2. 逆導出のマルチサンプルのベクトル化表現
        • 3. 列ベクトル形式の勾配計算式
      • [4.2.5 2 層ニューラル ネットワークの Python 実装] (#425--2 層ニューラル ネットワークの Python 実装)

      • [4.2.6 ニューラル ネットワークの任意の層のバックプロパゲーションの導出] (#426-ニューラル ネットワークの任意のレイヤのバックプロパゲーションの導出)

    • 4.3 シンプルなディープ ラーニング フレームワークの実装

      • 4.3.1 ニューラルネットワークの学習過程

      • 4.3.2 ネットワーク層のコード実装

      • [4.3.3 ネットワーク層の勾配テスト] (#433-ネットワーク層の勾配テスト)

      • [4.3.4 ニューラル ネットワーク クラス] (#434-ニューラル ネットワーク クラス)

      • [4.3.5 ニューラル ネットワークの勾配テスト] (#435-ニューラル ネットワークの勾配テスト) ・【4.3.6 深層学習フレームワークに基づくMNISTデータ手書き数字認識】(#436-深層学習フレームワークに基づくMNISTデータ手書き数字認識)

      • [4.3.7 一般的なニューラル ネットワーク フレームワークの改良: 加重和と活性化関数の分離] (#437 - 一般的なニューラル ネットワーク フレームワークの改良された加重和と活性化関数の分離)

        • [勾配検証] (#勾配検証)
      • [4.3.8 独立パラメータ オプティマイザ] (#438-独立パラメータ オプティマイザ) ・【4.3.9 fashion-mnist分類研修】(#439-fashion-mnist分類研修) ・【4.3.9 モデルパラメータの読み書き】(#43-9-モデルパラメータの読み書き)

  • 第 5 章 ニューラル ネットワークのパフォーマンスを改善するための基本的なヒント

    • [5.1 データ処理] (#51-データ処理)

      • [5.1.1 データ拡張] (#511-データ拡張)

      • [5.1.2 正規化] (#512-正規化)

      • [5.1.3 機能エンジニアリング] (#513-機能エンジニアリング)

        • 1. データの次元削減と主成分分析
      • 2 ホワイトニング

    • 5.2 パラメータのデバッグ

      • [5.2.1 ウエイトの初期化] (#521-ウエイトの初期化)
      • [5.2.2 最適化パラメータ] (#522-最適化パラメータ)
    • [5.3 バッチ正規化] (#53--バッチ正規化)

      • 5.3.1 バッチ正規化とは?
      • [5.3.2 バッチ正規化逆導出] (#532-バッチ正規化逆導出)
      • 5.3.3 バッチ正規化のコード実装
    • 5.4 正則化

      • [5.4.1 重みの正則化] (#541-重みの正則化)
      • [5.4.2 ドロップアウト] (#542-ドロップアウト)
      • [5.4.3 早期停止] (#543-早期停止)
  • 第 6 章 畳み込みニューラル ネットワーク CNN

    • [6.1畳み込み] (#61-畳み込み)

      • 6.1.1 畳み込みとは?

        • スパン
      • 6.1.2 一次元信号の畳み込み

      • [6.1.3 2D 畳み込み] (#613-2D 畳み込み)

      • スパン

      • 6.1.4 複数の入力チャネルと複数の出力チャネル

      • [6.1.5 プーリング] (#615-プーリング)

  • [6.2 畳み込みニューラル ネットワーク] (#62-畳み込みニューラル ネットワーク)

    • 6.2.1 全結合ニューロンと畳み込みニューロン

    • [6.2.2 畳み込み層と畳み込みニューラル ネットワーク] (#622-畳み込み層と畳み込みニューラル ネットワーク)

    • 6.2.3 畳み込み層とプーリング層の逆導出とコード実装

    • 畳み込み層の逆導出

      • プーリング層の逆導出
    • [6.2.4 畳み込みニューラル ネットワークの実装] (#624-畳み込みニューラル ネットワークの実装)

    • [6.3 畳み込みの行列乗算] (#63-畳み込みの行列乗算)

      • [6.3.1 1D サンプル畳み込みの行列乗算] (#631--1D サンプル畳み込みの行列乗算)
      • [6.3.2 2D サンプル畳み込みの行列乗算] (#632--2D サンプル畳み込みの行列乗算)
      • 6.3.3 1D畳み込みの逆導出の行列乗算
      • 6.3.4 2D畳み込みの逆導出の行列乗算
    • 6.4 座標インデックスに基づく高速畳み込み

      • [勾配テスト] (#勾配テスト)
      • 非加速コンボリューションとの時間比較
    • 6.5 典型的な畳み込みニューラル ネットワークの構造

      • [6.5.1 LeNet-5] (#651-lenet-5)
      • [6.5.2 AlexNet] (#652-alexnet)
      • 6.5.3 VGG
      • 6.5.4 ディープ ニューラル ネットワークの勾配爆発と消失問題
      • 6.5.5 Residual Networks (ResNets)
      • [6.5.6 Google インセプション ネットワーク] (#656-google-inception-network)
      • 6.5.7 Network in Network (NiN)
  • Chapter 7 Recurrent Neural Network RNN

    • 7.1 シーケンスの問題とモデル

      • 7.1.1 株価予測問題

      • 7.1.2 確率的シーケンス モデル、言語モデル

        • 1. 確率的シーケンス モデル
        • [2. 言語モデル] (#2-言語モデル)
      • [7.1.3 自己回帰モデル] (#713-自己回帰モデル)

      • [7.1.4 自己回帰データの生成] (#714--自己回帰データの生成)

      • [7.1.5 タイムウィンドウ法] (#715--タイムウィンドウ法)

      • 7.1.6 タイム ウィンドウ サンプリング

      • 7.1.7 タイム ウィンドウ メソッドのモデリングとトレーニング

      • [7.1.8 長期予測と短期予測] (#718---長期予測と短期予測)

      • 7.1.9 株価予測

      • [7.1.10 k-gram 言語モデル] (#7110--k-gram-language-model)

    • [7.2 リカレント ニューラル ネットワーク] (#72-リカレント ニューラル ネットワーク)

      • [7.2.1 記憶機能を持たない非巡回ニューラル ネットワーク] (#721-記憶機能を持たない非巡回ニューラル ネットワーク)
      • [7.2.2 メモリを備えたリカレント ニューラル ネットワーク] (#722--メモリを備えたリカレント ニューラル ネットワーク)
    • 7.3 時間による逆伝播

    • [7.4 単層リカレント ニューラル ネットワークの実装] (#74-単層リカレント ニューラル ネットワークの実装)

      • [7.4.1 モデル パラメータの初期化] (#741-モデル パラメータの初期化) ・【7.4.2 フォワード計算】(#742-フォワード計算)
      • [7.4.3 損失関数] (#743-loss-functions)
      • [7.4.4 逆導出] (#744-逆導出)
      • [7.4.5 勾配検証] (#745--gradient-validation)
      • [7.4.6 勾配降下トレーニング] (#746-勾配降下トレーニング)
  • 7.4.7 配列データのサンプリング

    • 7.4.8 RNN トレーニングとシーケンス データの予測

      • 配列データトレーニング
      • 予測
      • [在庫データの学習と予測] (#在庫データの学習と予測)
    • [7.5 RNN 言語モデルとテキスト生成] (#75-rnn 言語モデルとテキスト生成)

      • [7.5.1 キャラクターテーブル] (#751-キャラクターテーブル)

      • 7.5.2 文字列サンプルのサンプリング

      • [7.5.3 RNN モデルのトレーニングと予測] (#753-rnn モデルのトレーニングと予測)

        • 予測
    • 7.6 RNN ネットワークの勾配爆発と勾配消失

    • 7.7 長短期記憶ネットワーク (LSTM)

      • [7.7.1 LSTM ニューロン: セル] (#771--lstm ニューロン セル)

      • [7.7.2 LSTM の逆導出] (#772 -- lstm の逆導出)

      • [7.7.3 LSTM コードの実装] (#773--lstm コードの実装)

        • [勾配テスト] (#gradient test-1)
        • テキスト生成
        • 予測
      • [7.7.4 LSTM のバリアント] (#774--lstm のバリアント)

    • 7.8 Gated Recurrent Unit (GRU)

      • [7.8.1 GRU の仕組み] (#781-GRU の仕組み)
      • [7.8.2 GRU コードの実装] (#782-gru コードの実装)
    • 7.9 クラス表現とリカレント ニューラル ネットワークの実装

      • [7.9.1 クラスを使用した再帰型ニューラル ネットワークの実装] (#791--クラスを使用した再帰型ニューラル ネットワーク)
      • [7.9.2 RNN ユニットのクラス実装] (#792 - RNN ユニットのクラス実装)
      • [7.10 多層双方向リカレント ニューラル ネットワーク] (#710-多層双方向リカレント ニューラル ネットワーク)
  • [7.10.1 多層再帰型ニューラル ネットワーク] (#7101-多層再帰型ニューラル ネットワーク)

    • [7.10.2 多層再帰型ニューラル ネットワークのトレーニングと予測] (#7102-多層再帰型ニューラル ネットワークのトレーニングと予測)

    • [7.10.3 双方向 RNN] (#7103-双方向 RNN)

    • [7.11 Sequence-to-sequence (seq2seq) モデル] (#711-Sequence-to-sequence seq2seq モデル)

      • [機械翻訳] (#機械翻訳)

      • [7.11.1 Seq2Seq モデルの実装] (#7111-seq2seq モデルの実装)

      • [7.11.2 文字レベル機械翻訳用 Seq2Seq] (文字レベル機械翻訳用 #7112-seq2seq)

        • 1.文字単語リスト
        • 2. トレーニング サンプルを読み込んで文字単語リストを作成する
        • 3. 文字レベルの Seq2Seq モデルのトレーニング
      • [7.11.3 Word2VecベースのSeq2Seq機械翻訳] (#7113 - word2vecベースのseq2seq機械翻訳)

        • 1.単語ベクトル化Word2Vecのスキップグラム法
      • 7.11.4 単語埋め込み層に基づく Seq2Seq モデル

        • [1.単語埋め込み層] (#1単語埋め込み層)
        • 2. 単語埋め込み層を使用した Seq2Seq モデル
      • [7.11.5 注意メカニズム] (#7115---注意メカニズム)

  • [第 8 章 モデルの生成] (#第 8 章 モデルの生成)

    • [8.1 モデルの生成] (#81-モデルの生成)

    • [8.2 オートエンコーダー] (#82-オートエンコーダー)

      • [8.2.1 オートエンコーダー] (#821-オートエンコーダー)
      • [8.2.2 スパースエンコーダー] (#822-sparse-encoder)
      • [8.2.3 オートエンコーダーの実装] (#823-オートエンコーダーの実装)
    • [8.3 変分オートエンコーダ] (#83-変分オートエンコーダ)

      • 8.3.1 変分オートエンコーダーとは?
  • [8.3.2 損失関数] (#832-損失関数)

    • [8.3.3 パラメータのリサンプリング] (#833-パラメータのリサンプリング)

    • [8.3.4 後方導出] (#834-後方導出)

    • [8.3.5 変分オートエンコーダの実装] (#835--変分オートエンコーダの実装)

    • [8.4 敵対的生成ネットワーク] (#84-敵対的生成ネットワーク)

      • [8.4.1 GAN原則] (#841-gan原則)

        • [1. Discriminator and Generator] (#1- Discriminator and Generator)
        • 2.損失関数
        • [3. トレーニング プロセス] (#3-トレーニング プロセス)
      • [8.4.2 GAN トレーニング プロセスのコード実装] (#842--ガン-コード トレーニング プロセスの実装)

    • [8.5 GAN モデリング例] (#85--gan モデリング例)

      • 8.5.1 実数集合の GAN モデリング

        • [1.実数データ: 実数の集合] (#1-実数実数の集合)
        • [2. ディスクリミネーターとジェネレーター関数の定義] (#2-ディスクリミネーターとジェネレーター関数の定義)
        • 3. Real Data Iterator, Noise Data Iterator ・4.中間結果描画機能
        • 5.トレインガン
      • [8.5.2 二次元座標点の GAN モデリング] (#852-二次元座標点のガンモデリング)

        • [1. 実データ: 楕円曲線上でサンプリングされた座標点] (#1-実データ楕円曲線上でサンプリングされた座標点)
        • [2. Real Data Iterator, Noise Iterator] (#2 - Real Data Iterator Noise Iterator)
        • 3. GAN モデルのジェネレータとディスクリミネータを定義する
        • 4.GANモデルのトレーニング
      • 8.5.3 MNIST データセットの GAN モデリング

        • 1.トレーニング データの読み取り
        • [2. データ反復子の定義] (#2-データ反復子の定義)
        • 3. ジェネレーターとディスクリミネーターとそのオプティマイザーを定義する
  • 4.トレーニングモデル

    • [8.5.4 GAN トレーニングのヒント] (#854-gan トレーニングのヒント)

    • [8.6 GAN 損失関数とその確率の説明] (#86-gan 損失関数とその確率の説明)

      • 8.6.1 GANの損失関数の大域最適解
      • [8.6.2 カルバック・ライブラー発散とジェンセン・シャノン発散] (#862-カルバックライブラー発散とジェンセンシャノン発散)
      • [8.6.3 GAN の最尤解釈] (#863-GAN の最尤解釈)
    • [8.7 改善された損失関数: Wasserstein GAN (WGAN)] (#87--改善された損失関数 wasserstein-ganwgan)

      • [8.7.1 Wasserstein GAN の原理] (#871-Wasserstein ガンの原理)
      • [8.7.2 WGAN のコード実装] (#872-wgan コード実装)
    • 8.8 Deep Convolutional Adversarial Network DCGAN

      • [8.8.1 1D ベクトルの転置畳み込み] (#881-1D ベクトルの転置畳み込み)
      • [8.8.2 2D 転置畳み込み] (#882--2D 転置畳み込み)
      • 8.8.3 畳み込みアンチネットワーク DCGAN の実装
      • 参照

 

Get the free sample chapters

Click the buttons to get the free sample in PDF or EPUB, or read the sample online here

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub