関連サイト
本書の関連ページが用意されています。
内容紹介
PythonベースのディープラーニングフレームワークKerasの開発者である筆者が、1人でも多くの人々がディープラーニングを利用できるよう実践解説します。
本書はディープラーニングを一から学習したいと考えている人のために書かれています。数学的な表記を避け、代わりにコードを使って定量的な概念を説明することで、機械学習とディープラーニングの基本的な考えについて実践的な知識を養っていきます。
サンプルコードはPythonベースのディープラーニングフレームワークであるKerasに基づいており、バックエンドエンジンとしてTensorFlowを使用しています。
Part 1では、ディープラーニングを大まかに紹介。機械学習とニューラルネットワークを囲む状況といくつかの定義を示し、取り組みを開始するために必要な概念を説明します。
第1章:人工知能(AI)、機械学習、ディープラーニングの基本的なコンテキストと予備知識を提供。
第2章:ディープラーニングに取り組むために必要な基本概念(テンソル、テンソル演算、勾配降下法、バックプロパゲーション)を紹介。
第3章:ディープラーニングフレームワークであるKerasの紹介。分類タスクと回帰タスクを処理する単純なニューラルネットワークの訓練と内部で何が起きているのかが理解できる。
第4章:機械学習の一般的なワークフローとよくある落とし穴・解決法を詳解。
Part 2では、ディープラーニングの実践的な応用例としてコンピュータビジョンと自然言語処理を詳しく見ていきます。サンプルの多くは、ディープラーニングを実務で使用するときに遭遇する問題を解決するためのテンプレートとして利用できます。
第5章:画像分類に焦点を合わせ、コンピュータビジョンの実践的な例を幅広く取り上げる。
第6章:テキストや時系列といったシーケンスデータを処理するための手法を実際に試してみる。
第7章:最先端のディープラーニングモデルを構築するための高度な手法を紹介。
第8章:画像やテキストを作成する能力を持つディープラーニングモデルであり、驚くほど芸術的な結果をもたらすことがあるジェネレーティブモデルの紹介。
第9章:本書の総括。ディープラーニングの限界とその未来を予測。
本書を最後まで読めば、ディープラーニングとは何か、適用できるのはどのような状況か、その制限についてしっかり理解できるはずです。コンピュータビジョンから自然言語処理、画像分類、時系列予測、感情分析、画像/ テキスト生成に至るまで、現実の幅広い問題にKerasを使用できるようになり、最高の短期集中コースとして活用できます。
書誌情報
- 著者: Francois Chollet(著), 巣籠 悠輔(監訳), 株式会社クイープ(訳)
- ページ数: 392ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
Francois Chollet
Googleでディープラーニングに取り組んでいる。Kerasディープラーニングライブラリの作成者であると同時に、TensorFlow機械学習フレームワークのコントリビュータでもある。また、形式推論に対する機械学習の応用とコンピュータビジョンに焦点を合わせたディープラーニングの研究も行っている。ショレの論文は、CVPR(Computer Vision and Pattern Recognition)、NIPS(Neural Information Processing Systems)のカンファレンスとワークショップ、ICLR(International Conference on Learning Representations)を含め、主要なカンファレンスで発表されている。
巣籠 悠輔
電通・Google NY 支社勤務を経て、株式会社情報医療のCTO として創業に参画。医療分野での人工知能活用を目指す。2018年にForbes 30 Under 30 Asia 2018に選出。著書に『詳解ディープラーニング』『ビジネスパーソンのための人工知能入門』(マイナビ出版刊)等がある。
株式会社クイープ
1995年、米国サンフランシスコに設立。コンピュータシステムの開発、ローカライズ、コンサルティングを手がけている。2001年に日本法人を設立。主な訳書に『サイバーセキュリティテスト完全ガイド』(マイナビ出版)、『Machine Learning 実践の極意』、『Python 機械学習プログラミング 第2版』(インプレス)などがある。
目次
まえがき
- 謝辞
- 監訳者より
- 本書について
- カバーについて
Part 1 ディープラーニングの基礎
1章 ディープラーニングとは何か
- 1.1 AI、機械学習、ディープラーニング
- 1.2 ディープラーニングの前史:機械学習
- 1.3 なぜディープラーニングなのか、なぜ今なのか
2章 予習:ニューラルネットワークの数学的要素
- 2.1 初めてのニューラルネットワーク
- 2.2 ニューラルネットワークでのデータ表現
- 2.3 ニューラルネットワークの歯車:テンソル演算
- 2.4 ニューラルネットワークのエンジン:勾配ベースの最適化
- 2.5 最初の例を振り返る
3章 入門:ニューラルネットワーク
- 3.1 ニューラルネットワークの構造
- 3.2 Kerasの紹介
- 3.3 ディープラーニングマシンのセットアップ
- 3.4 二値分類の例:映画レビューの分類
- 3.5 多クラス分類の例:ニュース配信の分類
- 3.6 回帰の例:住宅価格の予測
4章 機械学習の基礎
- 4.1 機械学習の4 つの手法
- 4.2 機械学習モデルの評価
- 4.3 データ前処理、特徴エンジニアリング、表現学習
- 4.4 過学習と学習不足
- 4.5 機械学習の一般的なワークフロー
Part 2 ディープラーニングの実践
5章 コンピュータビジョンのためのディープラーニング
- 5.1 畳み込みニューラルネットワークの紹介
- 5.2 小さなデータセットでCNNを一から訓練する
- 5.3 学習済みのCNNを使用する
- 5.4 CNNが学習した内容を可視化する
6章 テキストとシーケンスのためのディープラーニング
- 6.1 テキストデータの操作
- 6.2 リカレントニューラルネットワークを理解する
- 6.3 リカレントニューラルネットワークの高度な使い方
- 6.4 畳み込みニューラルネットワークでのシーケンス処理
7章 高度なディープラーニングのベストプラクティス
- 7.1 Sequential モデルを超えて:Keras Functional API
- 7.2 Keras のコールバックとTensorBoardを使ったディープラーニングモデルの調査
- 7.3 モデルを最大限に活用するために
8章 ジェネレーティブディープラーニング
- 8.1 LSTM によるテキスト生成
- 8.2 DeepDream
- 8.3 ニューラルネットワークによるスタイル変換
- 8.4 変分オートエンコーダによる画像の生成
- 8.5 速習:敵対的生成ネットワーク
9章 本書のまとめ
- 9.1 主な概念の復習
- 9.2 ディープラーニングの限界
- 9.3 ディープラーニングの未来
- 9.4 目まぐるしく変化する分野に後れずについていくには
- 9.5 最後に
付録A Kerasとその依存ファイルをUbuntu にインストールする
- A.1 Pythonの科学ライブラリをインストールする
- A.2 GPUのサポートをセットアップする
- A.3 Theanoをインストールする(オプション)
- A.4 Kerasをインストールする
付録B AWSのGPUインスタンスでJupyter Notebookを実行する
- B.1 Jupyter NotebookをAWSで実行する理由
- B.2 Jupyter NotebookをAWSで実行しない理由
- B.3 AWS GPUインスタンスのセットアップ
- B.4 Kerasをインストールする
- B.5 ローカルポートフォワーディングを設定する
- B.6 ローカルブラウザからJupyter Notebookを使用する