C++で学ぶディープラーニング
マイナビ出版
ニューラルネットワークの基礎から実装まで、C++のサンプルコードで学ぶ
本書は、ディープラーニング(深層学習)の基礎を学ぶ初級者やソフトウェアエンジニアの方を対象に、ディープラーニングのベースとなっているニューラルネットワークからその派生技術や応用まで、実際に動くC++のソースコードを参照しながら学ぶ内容となっています。前半はニューラルネットワークに関する必須知識を扱い、後半ではニューラルネットワークの派生技術や応用に言及し、徐々に高度な内容となっていきます。
【本書の内容】
Chapter1「ディープラーニング概論」……ディープラーニングの概要と、ニューラルネットワーク構築時に最低限必要なC++プログラミングの知識をまとめます。
Chapter2「ニューラルネットワークのための行列演算と並列プログラミング」……並列プログラミングの重要性とその知識や行列演算を解説します。
Chapter3「ニューラルネットワーク」……パーセプトロンと呼ばれるニューラルネットワークの最小単位となるユニット、パーセプトロンを重ねたニューラルネットワークの基本形である層状パーセプトロン(MLP)を説明します。
Chapter4「誤差逆伝播」……ニューラルネットワークのパラメーター学習方法である、誤差逆伝播法を詳しく解説します。
Chapter5「C++によるニューラルネットワークの実装」……多層パーセプトロンを用いた手書き数字の画像認識を、実際にコーディングしながら動かすことで、ディープラーニングを体験します。本章では、ニューラルネットワークの基礎が詰まったベーシックな分類モデルを構築することで、処理全体の流れを把握することを目的とします。
Chapter6「学習の最適化と過学習」……機械学習全般で発生する過学習にフォーカスし、ニューラルネットワークでの過学習を抑えるテクニックを紹介します。本章以降から、単なるニューラルネットワークではなく、ディープラーニングの範疇となります。
Chapter7「事前学習」……ディープラーニングがブレイクするきっかけとなった技術の1つであるオートエンコーダーを解説します。
Chapter8「畳み込みニューラルネットワーク」……現在ディープラーニングの花形といわれる畳み込みニューラルネットワークを解説します。主に画像認識で利用され、近年はめざましい成果をあげている技術です。
Chapter9「再帰型ニューラルネットワーク」……再帰型ニューラルネットワークと呼ばれる、自己の出力を入力とする再帰構造となったニューラルネットワークを使い、自然言語処理への応用例を紹介します。統計的機械翻訳や自動応答、音声認識などの分野で、近年のAIの大きな進化の推進役となっている技術です。
本書では開発言語としてC++を採用しています。C++でほぼすべてをスクラッチから実装しており、最終的に完成するコードはディープラーニングのC++フレームワークとして機能します。サンプルコードはダウンロード可能。
発売日:2017-06-26
ページ数:264ページ
目次
Chapter1 ディープラーニング概論
1-1 ディープラーニング
1-1-1 ディープラーニングとは
1-1-2 ディープラーニングの背景
1-1-3 ディープラーニングができること
1-1-4 ディープラーニングの応用例
1-1-5 本書が対象とする読者
1-1-6 本書の構成
1-1-7 本書で提供するソースコードについて
1-2 本書で必要とするC++の機能
1-2-1 ポインター
1-2-2 シェアードポインター
1-2-3 vector
1-2-4 map
1-2-5 リスト構造
1-2-6 ツリー構造
Chapter2 ニューラルネットワークのための行列演算と並列プログラミング
2-1 GPUの活用
2-1-1 並列プログラミングの重要性
2-1-2 GPUと深層学習
2-1-3 GPUの利用
2-2 CUDAプログラミング
2-2-1 CUDAカーネル
2-2-2 スレッドの構成
2-2-3 CPUメモリーとGPUメモリー
2-3 行列演算
2-3-1 行列演算のフレームワーク化
2-3-2 cuBLAS
2-3-3 行列四則演算以外の例
2-3-4 演算子の定義
Chapter3 ニューラルネットワーク
3-1 単純パーセプトロン
3-1-1 単純パーセプトロンのモデル
3-1-2 単純パーセプトロンが可能なこと
3-1-3 単純パーセプトロンの学習過程
3-2 層状パーセプトロン
3-2-1 層状パーセプトロンのモデル
3-2-2 活性化関数
3-2-3 回帰問題における層状パーセプトロンの学習
3-2-4 分類問題における層状パーセプトロンの学習
3-3 ニューラルネットワークのパラメータ推定
3-3-1 確率的最急降下法 (Stochastic Gradient Descent, SGD)
3-3-2 ミニバッチ
3-3-3 重みの初期化
Chapter4 誤差逆伝播
4-1 順方向の計算
4-1-1 計算グラフ
4-1-2 ミニバッチの行列表現
4-2 微分の連鎖率
4-2-1 合成関数の微分
4-2-2 微分の連鎖率
4-2-3 多層ニューラルネットワークでの各パラメーターの微分
4-2-4 微分の連鎖率のグラフィカル表現
4-3 勾配消失問題
4-3-1 勾配消失問題とは?
4-3-2 勾配消失問題への対処
Chapter5 C++によるニューラルネットワークの実装
5-1 後退型自動微分の実装
5-1-1 変数
5-1-2 関数の基底クラス
5-1-3 活性化関数の定義例
5-1-4 線形関数の定義例
5-1-5 クロスエントロピー誤差関数
5-1-6 逆伝播
5-2 関数ラッパー
5-3 モデル
5-3-1 モデルの定義
5-3-2 モデルの保存と復元
5-4 オプティマイザー
5-4-1 オプティマイザーの基底クラス
5-4-2 オプティマイザーの例
5-5 MNISTを例にした学習と評価
5-5-1 MNISTデータセットの入手
5-5-2 MNISTのデータフォーマット
5-5-3 分類モデル
5-6 Irisを例にした学習と評価
5-6-1 Irisのデータフォーマット
5-6-2 分類モデル
Chapter6 学習の最適化と過学習
6-1 学習の最適化
6-1-1 モーメンタムSGD
6-1-2 NAG
6-1-3 AdaGrad
6-1-4 RMSprop
6-1-5 AdaDelta
6-1-6 Adam
6-1-7 Adamの実装
6-2 過学習への対応
6-2-1 正則化
6-2-2 ドロップアウト
6-2-3 ドロップアウトの実装
6-2-4 バッチ正規化
6-2-5 バッチ正規化の実装
Chapter7 事前学習
7-1 オートエンコーダーと事前学習
7-1-1 オートエンコーダー
7-1-2 スパースオートエンコーダー
7-1-3 隠れ層の重み
7-1-4 デノイジングオートエンコーダー
7-1-5 事前学習
7-2 オートエンコーダーの実装
7-2-1 隠れ層
7-2-2 隠れ層のラッパー
7-2-3 オートエンコーダーの構築と学習
Chapter8 畳み込みニューラルネットワーク
8-1 畳み込み
8-1-1 画像
8-1-2 画像フィルター
8-1-3 パディング
8-1-4 プーリング
8-2 畳み込み層
8-2-1 畳み込み層の計算
8-2-2 畳み込み層計算の工夫
8-2-3 フィルター係数の初期化
8-2-4 畳み込み層の実装
8-2-5 プーリング層の実装
8-2-6 全結合層
8-3 CIFAR-10 を使った画像認識
8-3-1 CIFAR-10のラベル
8-3-2 ファイルフォーマット
8-3-3 分類モデル
Chapter9 再帰型ニューラルネットワーク
9-1 広く応用できる再帰型ニューラルネットワーク
9-1-1 再帰型ニューラルネットワークのモデル
9-1-2 再帰型ニューラルネットワークの逆伝播
9-1-3 逆伝播の詳細
9-2 再帰型ニューラルネットワークの問題点と解決策
9-2-1 LSTM
9-2-2 LSTMの誤差逆伝播
9-2-3 LSTMの実装
9-2-4 GRU
9-2-5 GRUの実装
9-2-6 Truncated BPTT
9-2-7 数字の記憶
9-2-8 サイン波の再現
9-3 単語のベクトル表現
9-3-1 ベクトル表現
9-3-2 ベクトル表現の実装
9-4 翻訳モデル・アテンションモデル
9-4-1 エンコーダー・デコーダーのモデル
9-4-2 パディング
9-4-3 アテンションモデル
9-5 自動翻訳の実装
9-5-1 翻訳コーパス
9-5-2 エンコーダー・デコーダーモデルを使ったネットワーク訓練
9-5-3 エンコーダー・デコーダーモデルを使った翻訳(推定)
9-5-4 実行結果の考察
著者プロフィール
-
藤田毅(著者)
エキサイト株式会社テクノロジー戦略室室長ならびにExcite Media Service PH Inc.取締役。機械学習をベースとしたプロダクト開発に従事し、コンテンツレコメンデーションエンジンWisteriaなど、自社サービスの開発指揮を執っている。2000年エキサイト株式会社入社後、Web検索エンジンの開発運用に携わり、インフラ責任者やアプリケーション開発責任者として活躍。2008年にWebサイトの受託開発、モバイル向けアプリケーションやゲームを開発・運用会社を設立。2013年にはビッグデータ解析を核とするスタートアップ企業にジョインし、ソーシャルメディア上のデータ解析および株価分析などを担当。2015年以降はエキサイト株式会社に戻り現職に至る。
絶賛!発売中!
-
- シゴトがはかどる Power Automate Desktopの教科書[第2版]
- 予約 2893円
- その他言語
-
- 予約受付中
-
- Excelで学べるデータドリブン・マーケティング
- 予約 3509円
-
- 小川貴史(著者)、 (株)社会情報サービス(監修)
- Webクリエイティブ・マーケティング
-
- 予約受付中
- 運営会社
- FAQ
- お問い合わせ
- 利用規約
- オンライン販売について
- 特定商取引法に関する記載
- ゲームソフトの利用に関するガイドライン|
- 個人情報について
- PURCHASE GUIDE (ENGLISH)|
Copyright © Mynavi Publishing Corporation