【2023最新】「強化学習」のおすすめ本!人気ランキング

この記事では、「強化学習」のおすすめ本をランキング形式で紹介していきます。インターネット上の口コミや評判をベースに集計し独自のスコアでランク付けしています。

Pythonによる深層強化学習入門 ChainerとOpenAI Gymではじめる強化学習

牧野 浩二
オーム社
おすすめ度
100
紹介文
ゲームAIやロボットアームの制御、自動運転などで注目の深層強化学習の基礎と、Pythonによる実装について解説した入門書。 深層強化学習の入門から実装まで、この一冊でわかる! アルファ碁などのゲームAIやロボットアームの制御、自動運転などで注目されている深層強化学習の基礎と、Pythonによる実装について解説した入門書です。 強化学習に適したライブラリであるChainer(ChainerRL)と、AIシミュレーション環境であるOpenAI gymを用いて解説しています。 ソフトウェアシミュレーションだけでなくRaspberryPiとArduinoを用いた実環境への応用も解説しているので、ソフト・ハード問わず自身の課題に深層強化学習を応用することできるようになっています。 1章 はじめに 2章 深層学習 3章 強化学習 4章 深層強化学習 5章 実環境への応用 付録 付録1 VirtualBoxのインストール 付録2 RaspberryPiの設定 付録3 Arduinoのインストール 付録4 Graphical Processing Unit(GPU)の利用 付録5 Intel Math Kernel Libraryを用いたNumPyのインストール

現場で使える!Python深層強化学習入門 強化学習と深層学習による探索と制御

伊藤 多一
翔泳社
おすすめ度
95
紹介文
注目の深層強化学習の理論と実践手法を徹底解説! 注目の最新AI技術!深層強化学習の開発手法がわかる! 第一線で活躍する著者陣の書下ろしによる待望の1冊! 【本書の目的】 AlphaGo(アルファ碁)でも利用されている深層強化学習。 AIサービスのみならずロボティクス分野でもその応用が期待されています。 本書は、AI開発に携わる第一線の著者陣が深層強化学習の開発手法について書き下ろした注目の1冊です。 【本書の特徴】 第1部では、まず、深層強化学習の概要について説明します。 次いで、強化学習の基礎(Q学習、方策勾配法、Actor-Critic法)と深層学習の基礎(CNN、RNN、LSTM)を解説します。 さらに、簡単な例題として倒立振子制御を取り上げ、DQNとActor-Critic法による実装例を紹介します。 第2部では、具体的な応用例として3つのアプローチを実装込みで解説します。 1つ目は、連続動作制御です。ヒューマノイドシミュレータの2足歩行制御を試みます。 2つ目は、パズル問題の解法です。巡回セールスマン問題(TSP)やルービックキューブの解探索について説明します。 3つ目は、系列データ生成です。文書生成(SeqGAN)やニューラルネットワークのアーキテクチャ探索(ENAS)を解説します。 全体を通して、行動の制御を担うエージェントのモデル化と、方策ベースの強化学習によるエージェントの学習法について学ぶことができます。 【読者が得られること】 深層強化学習による開発手法を学ぶことができます。 【対象読者】 深層強化学習を学びたい理工学生・エンジニア ■Part 1 基礎編 CHAPTER 1 強化学習の有用性  1.1 機械学習の分類  1.2 強化学習でできること  1.3 深層強化学習とは CHAPTER 2 強化学習のアルゴリズム  2.1 強化学習の基本概念  2.2 マルコフ決定過程とベルマン方程式  2.3 ベルマン方程式の解法  2.4 モデルフリーな制御 CHAPTER 3 深層学習による特徴抽出  3.1 深層学習  3.2 畳み込みニューラルネットワーク(CNN)  3.3 再帰型ニューラルネットワーク(RNN) CHAPTER 4 深層強化学習の実装  4.1 深層強化学習の発展  4.2 行動価値関数のネットワーク表現  4.3 方策関数のネットワーク表現 ■Part 2 応用編 CHAPTER 5 連続制御問題への応用  5.1 方策勾配法による連続制御  5.2 学習アルゴリズムと方策モデル  5.3 連続動作シミュレータ  5.4 アルゴリズムの実装  5.5 学習結果と予測制御 CHAPTER 6 組合せ最適化への応用  6.1 組合せ最適化への応用について  6.2 巡回セールスマン問題  6.3 ルービックキューブ問題  6.4 まとめ CHAPTER 7 系列データ生成への応用  7.1 SeqGANによる文章生成  7.2 ネットワークアーキテクチャの探索 APPENDIX 開発環境の構築  AP1 ColaboratoryによるGPUの環境構築  AP2 DockerによるWindowsでの環境構築

強化学習

Richard S.Sutton
森北出版
おすすめ度
91

機械学習スタートアップシリーズ Pythonで学ぶ強化学習 [改訂第2版] 入門から実践まで (KS情報科学専門書)

久保 隆宏
講談社
おすすめ度
85
紹介文
「Pythonで強化学習が実装できる!」と好評を得た入門書の改訂版。読者からの要望・指摘を反映させた。 「Pythonで強化学習が実装できる!」と好評を得た入門書の改訂版。読者からの要望・指摘を反映させた。主に、Policy GradientとA2Cの記述・実装を見直した。 ・Pythonプログラミングとともに、ゼロからていねいに解説。 ・コードが公開されているから、すぐ実践できる。 ・実用でのネックとなる強化学習の弱点と、その克服方法まで紹介。 【おもな内容】 Day1 強化学習の位置づけを知る  強化学習とさまざまなキーワードの関係  強化学習のメリット・デメリット  強化学習における問題設定:Markov Decision Process  Day2 強化学習の解法(1): 環境から計画を立てる  価値の定義と算出: Bellman Equation  動的計画法による状態評価の学習: Value Iteration  動的計画法による戦略の学習: Policy Iteration  モデルベースとモデルフリーとの違い Day3 強化学習の解法(2): 経験から計画を立てる  経験の蓄積と活用のバランス: Epsilon-Greedy法  計画の修正を実績から行うか、予測で行うか: Monte Carlo vs Temporal Difference  経験を価値評価、戦略どちらの更新に利用するか:Valueベース vs Policyベース Day4 強化学習に対するニューラルネットワークの適用  強化学習にニューラルネットワークを適用する  価値評価を、パラメーターを持った関数で実装する:Value Function Approximation  価値評価に深層学習を適用する:Deep Q-Network  戦略を、パラメーターを持った関数で実装する:Policy Gradient  戦略に深層学習を適用する:Advantage Actor Critic (A2C)  価値評価か、戦略か Day5 強化学習の弱点  サンプル効率が悪い  局所最適な行動に陥る、過学習をすることが多い  再現性が低い  弱点を前提とした対応策 Day6 強化学習の弱点を克服するための手法  サンプル効率の悪さへの対応: モデルベースとの併用/表現学習  再現性の低さへの対応: 進化戦略  局所最適な行動/過学習への対応: 模倣学習/逆強化学習 Day7 強化学習の活用領域  行動の最適化  学習の最適化 Day1 強化学習の位置づけを知る  強化学習とさまざまなキーワードの関係  強化学習のメリット・デメリット  強化学習における問題設定:Markov Decision Process  Day2 強化学習の解法(1): 環境から計画を立てる  価値の定義と算出: Bellman Equation  動的計画法による状態評価の学習: Value Iteration  動的計画法による戦略の学習: Policy Iteration  モデルベースとモデルフリーとの違い Day3 強化学習の解法(2): 経験から計画を立てる  経験の蓄積と活用のバランス: Epsilon-Greedy法  計画の修正を実績から行うか、予測で行うか: Monte Carlo vs Temporal Difference  経験を価値評価、戦略どちらの更新に利用するか:Valueベース vs Policyベース Day4 強化学習に対するニューラルネットワークの適用  強化学習にニューラルネットワークを適用する  価値評価を、パラメーターを持った関数で実装する:Value Function Approximation  価値評価に深層学習を適用する:Deep Q-Network  戦略を、パラメーターを持った関数で実装する:Policy Gradient  戦略に深層学習を適用する:Advantage Actor Critic (A2C)  価値評価か、戦略か Day5 強化学習の弱点  サンプル効率が悪い  局所最適な行動に陥る、過学習をすることが多い  再現性が低い  弱点を前提とした対応策 Day6 強化学習の弱点を克服するための手法  サンプル効率の悪さへの対応: モデルベースとの併用/表現学習  再現性の低さへの対応: 進化戦略  局所最適な行動/過学習への対応: 模倣学習/逆強化学習 Day7 強化学習の活用領域  行動の最適化  学習の最適化

OpenAI Gym / Baselines 深層学習・強化学習 人工知能プログラミング 実践入門

布留川 英一
ボーンデジタル
おすすめ度
78
紹介文
AIで「ソニック」「レトロゲーム」「Unityゲーム」「マインクラフト」「スタークラフト2」「FX・株トレード」を攻略 AIで「ソニック」「レトロゲーム」「Unityゲーム」「マインクラフト」「スタークラフト2」「ロボット制御」「FX・株トレード」を攻略 人工知能によるゲームの攻略は、ゲーム開発者のみならず、機械学習を学びたい学生や研究者にとっても、最もホットな話題となっており、日々新たな攻略アルゴリズムが発表されています。そのなかでも、2015年12月に設立された非営利団体「OpenAI」は、その中心的な存在となっています。 「OpenAI」は、誰でも自由に使える強化学習ツールキット「OpenAI Gym」を公開しており、このなかにはAtraiのゲーム環境やロボット制御の環境などの学習用の環境が多数含まれています。本書では、この「OpenAI Gym」を使って、ゲームを攻略するAIを作るための手法を手順を追って解説しています。 「OpenAI Gym」では、さまざまな強化学習アルゴリズムがまとめられた「Stable Baselines」を組み合わせて学習を行うため、本書でも「Stable Baselines」の概要から各アルゴリズムの詳細、学習状況の監視の方法などをサンプルを作りながら紹介しています。 Atraiのゲーム環境には、AIで攻略するための無償のゲームが数多く含まれていますが、「OpenAI Gym」の「Gym Retro」環境は、より高度な市販ゲームを攻略するためのもので、本書では実際に有償の「ソニック・ザ・ヘッジホッグ」(セガ/メガドライブ版)のゲームを入手して攻略していきます。 「OpenAI Gym」は、レトロゲーム以外にも「マインクラフト」「スタークラフトII」といった最新ゲームを攻略するための環境、Unityゲームを攻略するためのGymラッパー、ロボット制御の強化学習、FX・株の値動きを予測する環境など、多数の環境が接続でき、本書の最後ではさまざまなバリエーションの学習の概要も取り上げます。 1章 深層学習と開発環境の概要  1-1 人工知能と機械学習  1-2 教師あり学習と教師なし学習と強化学習  1-3 強化学習  1-4 開発環境と開発フレームワーク 2章 Pythonの開発環境の準備  2-1 Anacondaの準備  2-2 Google Colabの準備  2-3 Pythonの文法 3章 OpenAI Gymツールキットの概要と環境構築  3-1 OpenAI Gymの概要  3-2 OpenAI Gymのインストールと動作確認  3-3 Gymインタフェース  3-4 行動空間と状態空間 4章 強化学習アルゴリズムStable Baselinesの概要と環境構築  4-1 Stable Baselinesの概要とインストール  4-2 強化学習アルゴリズムの分類と特徴  4-3 平均報酬と平均エピソード長の出力とMonitorの利用  4-4 モデルの保存と読み込み  4-5 TensorBoardとコールバックによる学習状況の監視  4-6 マルチプロセッシングの概要と実装  4-7 Stable Baselines Zooによる学習済みモデル実行 5章 Atari環境の攻略  5-1 Atari環境の学習  5-2 前処理  5-3 ハイパーパラメータの調整  5-4 クラウド学習  5-5 模倣学習によるAtrai環境の学習 6章 Gym Retro環境の攻略  6-1 Gym Retro環境の構築  6-2 Gym Retroの学習  6-3 ゲームインテグレーションの作成 7章 ソニック環境の攻略  7-1 ソニック環境の準備  7-2 強化学習によるソニック環境の攻略  7-3 模倣学習によるソニック環境の攻略  7-4 ソニックのAIをさらに強化する試み 8章 さまざまな強化学習環境  8-1 OpenAIのMuJoCo環境とRobotics環境  8-2 PyBullet 環境:オープンソースな3D物理シミュレーション環境  8-3 AnyTrading:トレーディングの強化学習環境  8-4 Unity ML-Agents:Unityの強化学習環境  8-5 Gymラッパー:Unity ML-Agents環境をGym環境に変換  8-6 MarLÖ:マインクラフトの模倣学習環境  8-7 PySC2:StarCraft IIの強化学習環境  8-8 そのほかの強化学習環境

強化学習 (機械学習プロフェッショナルシリーズ)

森村 哲郎
講談社
おすすめ度
76
紹介文
強化学習で必要になる数理を広くカバーした。一貫したていねいな解説なので、じっくり読める。参考文献・付録も充実! 理論は裏切らない ・強化学習で必要になる数理を広くカバーした。 ・一貫したていねいな解説なので、じっくり読める。付録・参考文献も充実! ・ベルマン方程式、TD学習、方策勾配、POMDP、深層強化学習をより深く! 【おもな内容】 第1章 準備 1.1 強化学習とは 1.2 マルコフ決定過程と逐次的意思決定問題 1.3 方策 1.4 逐次的意思決定問題の定式化 第2章 プランニング 2.1 準備 2.2 動的計画法 2.3 動的計画法による解法 2.4 線形計画法による解法 第3章 探索と活用のトレードオフ 3.1 概要 3.2 探索と活用のトレードオフ 3.3 方策モデル 第4章 モデルフリー型の強化学習 4.1 データにもとづく意思決定 4.2 価値関数の推定 4.3 方策と行動価値関数の学習 4.4 収束性 4.5 アクター・クリティック法 第5章 モデルベース型の強化学習 5.1 問題設定の整理 5.2 環境推定 5.3 ブラックボックス生成モデルに対するプランニング 5.4 オンラインのモデルベース型強化学習 第6章 関数近似を用いた強化学習 6.1 概要 6.2 価値関数の関数近似 6.3 方策の関数近似 第7章 部分観測マルコフ決定過程 7.1 部分観測マルコフ決定過程(POMDP)の基礎 7.2 POMDP のプランニング 7.3 POMDP の学習 第8章 最近の話題 8.1 分布強化学習 8.2 深層強化学習 付録A 補足 A.1 証明 A.2 ノルム A.3 線形計画法 A.4 自然勾配法の補足 準備 プランニング 探索と活用のトレードオフ モデルフリー型の強化学習 モデルベース型の強化学習 関数近似を用いた強化学習 部分観測マルコフ決定過程 最近の話題

機械学習スタートアップシリーズ Pythonで学ぶ強化学習 入門から実践まで (KS情報科学専門書)

久保 隆宏
講談社
おすすめ度
75
紹介文
強化学習が実装できる! エンジニアのために、Pythonのサンプルコードとともに、ゼロからていねいに解説。コードも公開! 強化学習が実装できる! エンジニアのために、Pythonのサンプルコードとともに、ゼロからていねいに解説。実用でのネックとなる強化学習の弱点とその克服方法、さらに活用領域まで紹介した。コードも公開! ・Pythonプログラミングとともに、ゼロからていねいに解説。 ・コードが公開されているから、すぐ実践できる。 ・実用でのネックとなる強化学習の弱点と、その克服方法まで紹介。 【おもな内容】 Day1 強化学習の位置づけを知る Day2 強化学習の解法(1): 環境から計画を立てる  価値の定義と算出: Bellman Equation  動的計画法による状態評価の学習: Value Iteration  動的計画法による戦略の学習: Policy Iteration  モデルベースとモデルフリーとの違い Day3 強化学習の解法(2): 経験から計画を立てる  経験の蓄積と活用のバランス: Epsilon-Greedy法  計画の修正を実績から行うか、予測で行うか: Monte Carlo vs Temporal Difference  経験を状態評価、戦略どちらの更新に利用するか Day4 強化学習に対するニューラルネットワークの適用  強化学習にニューラルネットワークを適用する  状態評価を、パラメーターを持った関数で実装する: Value Function Approximation  状態評価に深層学習を適用する: Deep Q-Network  戦略を、パラメーターを持った関数で実装する: Policy Gradient  戦略に深層学習を適用する: Advantage Actor Critic(A2C)  状態評価か、戦略か Day5 強化学習の弱点  サンプル効率が悪い  局所最適な行動に陥る、過学習をすることが多い  再現性が低い  弱点を前提とした対応策 Day6 強化学習の弱点を克服するための手法  サンプル効率の悪さへの対応:モデルベースとの併用/表現学習  再現性の低さへの対応:進化戦略  局所最適な行動/過学習への対応:模倣学習/逆強化学習 Day7 強化学習の活用領域  行動の最適化  学習の最適化 Day1 強化学習の位置づけを知る Day2 強化学習の解法(1): 環境から計画を立てる Day3 強化学習の解法(2): 経験から計画を立てる Day4 強化学習に対するニューラルネットワークの適用 Day5 強化学習の弱点 Day6 強化学習の弱点を克服するための手法 Day7 強化学習の活用領域

つくりながら学ぶ! 深層強化学習 ~PyTorchによる実践プログラミング~

株式会社電通国際情報サービス 小川雄太郎
マイナビ出版
おすすめ度
75
紹介文
Pythonで実装しながら学ぶ 強化学習・深層強化学習(DQN) 強化学習、さらにディープラーニングを組み合わせた深層強化学習DQN(Deep Q-Network)という用語を目にする機会が増えています。本書は関連の概念を分かりやすく解説しつつ、Python+PyTorchで「倒立振子課題」「迷路を解くプログラム」「ブロック崩しの攻略」を実装していきます。 第1章「強化学習の概要」では機械学習とその3分類(教師あり学習、教師なし学習、強化学習)について紹介します。 第2章「迷路課題に強化学習を実装しよう」では、簡単な強化学習(方策勾配法、Sarsa、Q学習)のコードをひとつずつ実装しながら、強化学習のアルゴリズムと実装方法を理解します。迷路を最短ルートでゴールするよう強化学習させます。 第3章「倒立振子課題に強化学習を実装しよう」では、2章で学んだ強化学習の基本をより複雑な課題への適用します。倒立振子とは、“ほうきを手のひらの上に立てる”遊びと同じ内容でその制御ルールを強化学習させます。Anacondaを用いたセットアップ方法も解説します。 第4章「Pytorchでディープラーニングを実装しよう」では、ディープラーニングの内容を理解し、PyTorchで実装します。ニューラルネットワークとディープラーニング発展の歴史、学習フェイズと推論フェイズについて解説。最後に手書き数字の画像を分類するMNIST課題を実装解説します。 第5章「深層強化学習DQNを実装しよう」では、強化学習にディープラーニングを組み合わせた“深層強化学習”を理解し、DQNを実装できるようにします。第3章の倒立振子課題に対してDQNを実装します。 第6章「深層強化学習の発展版を実装しよう」では、新しい深層強化学習の手法、Double-DQN、Dueling Network、Prioritized Experience Replay、そしてA3C、A2Cを理解し、実装できるようにします。 第7章「AWSのGPU環境でブロック崩しを実装しよう」では、ブロック崩しゲームを対象に深層強化学習のA2Cを実装します。実行環境としてAmazonのクラウドサービスAWSのGPU環境を使用する方法も解説します。 深層強化学習はまだまだ解決すべき課題の多い分野です。本書が深層強化学習に興味を持つ皆様の一助となれば幸いです。 各章の概要 第1章 強化学習の概要 - 1.1 機械学習の分類(教師あり学習、教師なし学習、強化学習) - 1.2 強化学習・深層強化学習の歴史 - 1.3 深層強化学習の応用事例 第2章 迷路課題に強化学習を実装しよう - 2.1 Try Jupyterの使い方 - 2.2 迷路とエージェントを実装 - 2.3 方策反復法の実装 - 2.4 価値反復法の専門用語を整理 - 2.5 Sarsa法の実装 - 2.6 Q学習の実装 第3章 倒立振子課題に強化学習を実装しよう - 3.1 ローカルPCに強化学習の実装・実行環境を整える方法 - 3.2 倒立振子課題「CartPole」の解説 - 3.3 多変数・連続値で示される状態の表形式表現 - 3.4 Q学習の実装 第4章 PyTorchでディープラーニングを実装しよう - 4.1 ニューラルネットワークとディープラーニングの歴史 - 4.2 ディープラーニングの計算手法を解説 - 4.3 PyTorchで手書き数字画像の分類課題MNISTを実装 第5章 深層強化学習DQNを実装しよう - 5.1 深層強化学習DQN(Deep Q-Network)の解説 - 5.2 DQNの実装に重要な4つの工夫 - 5.3 DQNの実装(前半) - 5.4 DQNの実装(後半) 第6章 深層強化学習の発展版を実装しよう - 6.1 深層強化学習のアルゴリズムマップ - 6.2 DDQN(Double-DQN)の実装 - 6.3 Dueling Networkの実装 - 6.4 Prioritized Experience Replayの実装 - 6.5 A2Cの実装 第7章 AWSのGPU環境でブロック崩しを実装しよう - 7.1 ブロック崩しゲーム「Breakout」の解説 - 7.2 AWSでGPUを使用したディープラーニング実行環境を整える方法 - 7.3 Breakoutの学習に重要な4つの工夫 - 7.4 A2Cの実装(前半) - 7.5 A2Cの実装(後半) あとがき 索引 謝辞

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

Antonio Gulli
オライリージャパン
おすすめ度
75
紹介文
機械学習ライブラリKerasの解説書。画像識別、画像生成、自然言語処理、感情識別、自動ゲームプレイなどの幅広いサンプルを例示 人気フレームワークKerasの解説書! 直感的かつ短いコードでアイデアを形にできるKerasはTensorFlowのラッパーとして大人気のライブラリです。本書でもTensorFlowをバックエンドとして使用し、自然言語処理、画像識別、画像生成、音声合成、テキスト生成、強化学習、AIゲームプレイなどさまざまなモデルをPythonとKerasで実装します。対象読者は、各種のディープラーニングを素早く実装したいプログラマー、データサイエンティスト。ディープラーニングを支える技術の速習にも好適です。数式はなるべく使わずにコードと図で説明します。ニューラルネットワークおよびPython 3の基本を理解している人であれば誰でも始めることができます。

AlphaZero 深層学習・強化学習・探索 人工知能プログラミング実践入門

布留川 英一
ボーンデジタル
おすすめ度
73
紹介文
サンプルを作りながら、最新・最強の機械学習フレームワーク「AlphaZero」が学べる! Google傘下の英国DeepMind社が開発した「AlphaGo」は、2015年に「囲碁」の一流棋士に圧勝したことで、世界中の大きな注目を集めました。それを発展させ、「囲碁」だけでなく「チェス」「将棋」でも最強のコンピュータソフトを目指して作られたのが、2017年末に発表された「AlphaZero」です。 本書では、この最新・最強の機械学習フレームワークである「AlphaZero」の仕組みを解き明かします。「AlphaZero」は、これまでも使われてきた「深層学習」「強化学習」「探索」のアルゴリズムを組み合わせて作られており、それぞれの構成要素を理解することで、全体像を把握できます。 「深層学習」「強化学習」「探索」のそれぞれの構成要素ごとにサンプルプログラムを用意しているので、動作を確認しながら、ステップバイステップで学んでいくことが可能です。機械学習の実行にはマシンリソースが必要ですが、本書では無償で利用できるクラウド上の「Google Colaboratory」を利用することで、Webブラウザだけで実行と確認を行うことができます。 「AlphaZero」の仕組みが理解できたところで、本書の最終章でそれを応用し「コネクトフォー」「リバーシ」「簡易将棋」の3つのサンプルを作成してみます。AIと人間で対戦して、「AlphaZero」でどのぐらい強いプログラムができるのかを実際に確認してみることが可能です。 1章 AlphaZeroと機械学習の概要  1-1 「AlphaGo」と「AlphaGo Zero」と「AlphaZero」  1-2 深層学習の概要  1-3 強化学習の概要  1-4 探索の概要 2章 Pythonの開発環境の準備  2-1 PythonとGoogleColabの概要  2-2 Google Colabの使い方  2-3 Pythonの文法 3章 深層学習  3-1 ニューラルネットワークで分類  3-2 ニューラルネットワークで回帰  3-3 畳み込みニューラルネットワークで画像分類  3-4 ResNet(Residual Network)で画像分類 4章 強化学習  4-1 多腕バンディット問題  4-2 方策勾配法で迷路ゲーム  4-3 SarsaとQ学習で迷路ゲーム  4-4 DQN(deep Q-network)でCartPole 5章 探索  5-1 ミニマックス法で三目並べ  5-2 アルファベータ法で三目並べ  5-3 原始モンテカルロ探索で三目並べ  5-4 モンテカルロ木探索で三目並べ 6章 AlphaZeroの仕組み  6-1 AlphaZeroで三目並べ  6-2 デュアルネットワークの作成  6-3 モンテカルロ木探索の作成  6-4 セルフプレイ部の作成  6-5 パラメータ更新部の作成  6-6 新パラメータ評価部の作成  6-7 ベストプレイヤーの評価  6-8 学習サイクルの実行 7章 人間とAIの対戦  7-1 ローカルのPython開発環境の準備  7-2 TkinterでGUI作成  7-3 人間とAIの対戦 8章 サンプルゲームの実装  8-1 コネクトフォー  8-2 リバーシ  8-3 簡易将棋

これからの強化学習

牧野 貴樹
森北出版
おすすめ度
73
紹介文
強化学習の「いま」を知り,「これから」を切り拓くための1冊. ◆強化学習は「ポストビッグデータ」の技術である! 人工知能,金融工学,ロボット制御,言語処理,生産現場やサービスの最適化,あらゆる分野に応用が広がる強化学習.十分なデータが与えられることが前提とされる他の機械学習法と異なり,「足りないデータを集めながら最適化すること」に力点を置く強化学習は,ビッグデータの先を行くための重要な技術となることが期待されます. ◆強化学習の「いま」を知り,「これから」を切り拓くための1冊. 本書では,この分野を代表する執筆陣が集い,強化学習の基礎・発展・応用を多面的に解説します. ・基礎:強化学習の動作原理と基本アルゴリズムを,初学者でも分かるように導入. ・発展:より複雑な問題に対処し,高度な研究に進むための,さまざまな発展的手法を解説. ・応用:マルチロボットシステムの制御,対話処理,医療データ分析,囲碁の対局など広範な応用例・研究事例を通して,強化学習の活用法を紹介.人間の行動や脳の動作を説明するモデルとしての理論・実験も解説. ――強化学習の基礎を学びたい方,発展的手法に触れたい方,応用可能性を一望したい方に最適な1冊! 第1章 強化学習の基礎的理論 強化学習とは/強化学習の構成要素/価値関数に基づくアルゴリズム/改善に基づくアルゴリズム/部分観測マルコフ決定過程と強化学習 第2章 強化学習の発展的理論 統計学習の観点から見たTD学習/強化学習アルゴリズムの理論性能解析とベイズ統計による強化学習のモデル化/逆強化学習/試行錯誤回数の低減を指向した手法:経験強化型学習XoL/群強化学習法/リスク考慮型強化学習/複利型強化学習 第3章 強化学習の工学応用 高次元・実環境における強化学習/連続的な状態・行動空間への拡張:マルチロボットシステムへの適用/対話処理における強化学習/マルチエージェント系の報酬設計/自然言語処理における逆強化学習・模倣学習の適用/医療臨床データ分析への応用/深層学習を用いたQ関数の学習:Atariと囲碁への応用 第4章 知能のモデルとしての強化学習 脳の意思決定機構と強化学習/内発的動機付けによるエージェントの学習と発達

強化学習アルゴリズム入門: 「平均」からはじめる基礎と応用

東馬, 曽我部
オーム社
おすすめ度
73
紹介文
強化学習の諸要素を、中高生にもなじみ深い平均値の計算から説明し、初学者でも基本とコツを自然と身に着けられるよう解説。 「平均」の観点から強化学習の原理がわかる! AlphaGoがプロ棋士を破った2016年以降、さまざまな分野から注目されている深層強化学習ですが、専門書は非常に難解でわかりづらい傾向にあります。 そこで本書は、初歩的な数学を使って原理をわかりやすく解説します。価値・探索・マルコフ決定過程・動的計画法・モンテカルロ法・TD法といった強化学習の諸要素を、中高生にもなじみ深い平均値の計算から説明し、初学者でも基本とコツを自然と身につけられます。抽象的な強化学習の概念と煩雑な数学式を直感的に感じつつ、本質まで把握できることが本書の最大の特徴です。 また、すべての例題にPythonとMATLABのコードを示し、原理・数式・コードという一連の流れを紐付けて理解できるようになっています。初学者でも入りやすく、難しさを感じないまま、強化学習の基本と深層学習のコツを自然と身につけられる入門書です。 【本書の特徴】 ・難解な強化学習の原理を、中高生にもなじみ深い「平均値の計算」という観点からわかりやすく解説しています。 ・すべての例題にPythonとMATLABのコードを例示しています。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

斎藤 康毅
オライリージャパン
おすすめ度
72
紹介文
ディープラーニングの本格的な入門書。外部のライブラリに頼らずPython 3によってゼロからディープラーニングを作成できる。 実際にシステムを作りながらディープラーニングを学ぶ! ディープラーニングの本格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。

TensorFlow2 TensorFlow & Keras対応 プログラミング実装ハンドブック

チーム・カルポ
秀和システム
おすすめ度
72
紹介文
TensorFlowは、Google社が公開しているPython向け機械学習用ライブラリです。本書はPythonの基礎を学習した方に向けて、JupyterNotebookを使ったTensorFlowの活用法を解説する入門書です。シンプルな二値分類から画像認識、自然言語処理における時系列データの分析までを理論をまじえて体系的に解説します。 TensorFlowがバージョン2.0となったことにともない、Kerasがライブラリとして取り込まれ、計算グラフのコーディングが不要となるなど、大幅な改善がされています。 それに伴い、以前のバージョンで作成したソースコードが動作しなくなっています。そこで「TensorFlow&Kerasプログラミング実装ハンドブック」の内容を一新してバージョン2に完全対応しました。 第1章 機械学習ライブラリTensorFlow 第2章 開発環境の容易とPythonの基礎 第3章 TensorFlowの基本 第4章 例題で学ぶTensorFlowの基本 第5章 TensorFlowによるディープラーニング

機械学習のエッセンス -実装しながら学ぶPython,数学,アルゴリズム- (Machine Learning)

加藤 公一
SBクリエイティブ
おすすめ度
72
紹介文
機械学習の原理を知るための、初めての入門書 本書は具体的なデータ分析の手法を説明する意図で書かれたものではありません。 実用的な目的ならscikit-learnやChainerなどの既存のフレームワークを使うべきですが、本書では機械学習のいくつかの有名なアルゴリズムを、自分でゼロから実装することを目標としています。こうすることにより、とかくブラックボックスになりがちな機械学習の仕組みを理解し、さらなる応用力と問題解決力を身につけることができるようになります。 また、処理系にはデファクトスタンダードであるPythonを使い、機械学習に必要な数学の知識もわかりやすく解説しています。 これから機械学習を始める学生さんや、いきなりプロジェクトに放り込まれていまいち理解できないままデータ分析の仕事をしているエンジニアの方にも最適です。 ●目次 はじめに 第01章 学習を始める前に  01 本書の目的  02 本書は何を含まないか  03 機械学習の初歩  04 実行環境の準備 第02章 Pythonの基本  01 プログラムの実行方法  02 基本的な文法  03 数値と文字列  04 複数行処理  05 制御構造  06 リスト、辞書、集合  07 関数定義  08 オブジェクト指向  09 モジュール  10 ファイル操作  11 例外処理 第03章 機械学習に必要な数学  01 基本事項の確認  02 線形代数  03 微積分 第04章 Pythonによる数値計算  01 数値計算の基本  02 NumPyの基本  03 配列の基本計算  04 疎行列  05 NumPy/SciPyによる線形代数  06 乱数  07 データの可視化  08 数理最適化  09 統計 第05章 機械学習アルゴリズム  01 準備  02 回帰  03 リッジ回帰  04 汎化と過学習  05 ラッソ回帰  06 ロジスティック回帰  07 サポートベクタマシン  08 k-Means法  09 主成分分析(PCA) INDEX はじめに 第01章 学習を始める前に  01 本書の目的  02 本書は何を含まないか  03 機械学習の初歩  04 実行環境の準備 第02章 Pythonの基本  01 プログラムの実行方法  02 基本的な文法  03 数値と文字列  04 複数行処理  05 制御構造  06 リスト、辞書、集合  07 関数定義  08 オブジェクト指向  09 モジュール  10 ファイル操作  11 例外処理 第03章 機械学習に必要な数学  01 基本事項の確認  02 線形代数  03 微積分 第04章 Pythonによる数値計算  01 数値計算の基本  02 NumPyの基本  03 配列の基本計算  04 疎行列  05 NumPy/SciPyによる線形代数  06 乱数  07 データの可視化  08 数理最適化  09 統計 第05章 機械学習アルゴリズム  01 準備  02 回帰  03 リッジ回帰  04 汎化と過学習  05 ラッソ回帰  06 ロジスティック回帰  07 サポートベクタマシン  08 k-Means法  09 主成分分析(PCA) INDEX

「強化学習」を学びたい人が最初に読む本

伊藤 真
日経BP
おすすめ度
72
紹介文
本書は、基本のアルゴリズムからニューラルネットを使った応用まで、強化学習の理論と実装がわかる本です。 「強化学習」とは、簡単に言えば、「試行錯誤によって学習するAI」です。 機械学習の一種で、近年のディープラーニングの発展の恩恵を受け、注目されています。 本書は、基本のアルゴリズムからニューラルネットを使った応用まで、 強化学習の理論と実装がわかる本です。 強化学習がどんな仕組みのAIなのか、 これから学んでみたいという人や 興味はあるけれど難しそうだと思っている人におすすめです。 【本書の特徴】 ●強化学習の難解な理論をやさしく解説 難しい用語や数式は、高校数学の知識があれば理解できるように一歩一歩説明します。教師あり学習やニューラルネットワークなど、機械学習の前提知識も解説しています。 ●画面上のロボットを動かすことで直観的に理解 強化学習の問題や学習結果は、画面上のロボットが動くアニメーションで確認できます。プログラムを実行するための環境構築や操作方法の説明があるので、すぐに動かすことができます。 ●Pythonで強化学習のプログラムを改良 サンプルプログラムは軽量で、一般的なPC(GPUなどが装備されたPCは不要)で動かせます。強化学習のライブラリは使用せずに実装されており、ブラックボックス化されていないのでアルゴリズムがよくわかります。本書では、サンプルプログラムを自分で改良するためのポイントや、Pythonの基本、主要ライブラリ(NumPy、matplotlib、OpenCV、TensorFlow)の一部の使い方を紹介しています。 本書は、基本のアルゴリズムからニューラルネットを使った応用まで、強化学習の理論と実装がわかる本です。 1章 強化学習の位置づけ 2章 Pythonの環境構築 3章 教師あり学習 4章 強化学習の問題設定 5章 基本のQ学習:tableQ 6章 ニューラルネットQ学習: netQ 7章 経験再生を取り入れたQ学習: replayQ、targetQ 8章 改良と工夫 講座A Visual Studio Codeのインストールと使い方 講座B Pythonの基本

ゼロから作るDeep Learning ❷ ―自然言語処理編

斎藤 康毅
オライリージャパン
おすすめ度
66
紹介文
大ベストセラーの続編。さらに作る、さらに深くDeep Learningに迫る! 大ベストセラーの続編。さらに作る、さらに深くDeep Learningに迫る! コンピュータの専門書としては異例の大ヒットを記録した『ゼロから作るDeep Learning』の続編。第二弾の本書では、自然言語処理や時系列データ処理に焦点を当て、ディープラーニングを使ってさまざまな問題に挑みます。word2vecやRNN(リカレントニューラルネットワーク)、LSTMやGRU、seq2seqやAttention……ディープラーニングを支えるこれら最先端の技術を実装レベルでマスターできます。前作同様、平坦な言葉で分かりやすくをモットーに、高度に見える技術の裏側をじっくり説明し、実際に作ることで理解を深めます。最後までコンセプトは変わらない。ゼロから作る!

統計的機械学習の数理100問 with Python (機械学習の数理100問シリーズ)

讓, 鈴木
共立出版
おすすめ度
66
紹介文
統計的機械学習の数理100問のPython版!数式を導き,ソースプログラムを追い,具体的に手を動かしてスキルを身につける!  機械学習の書籍としておびただしい数の書籍が出版されているが,ななめ読みで終わる,もしくは難しすぎて読めないものが多く,「身につける」という視点で書かれたものは非常に少ないと言ってよい。本書は,100の問題を解くという演習のスタイルをとりながら,数式を導き,Pythonのソースプログラムを追い,具体的に手を動かしてみて,読者が自分のスキルにしていくことを目的としている。  本書は各章で解説のあとに問題を掲載している。解説を読んでから問題を解くこともできるが,まず問題から取り組む読み方もできる。その場合,数学の問題において導出の細部がわからなくても,解説に戻ればわかるようになっている。  「機械学習の数理100問」は,2018年後期と2019年後期の大阪大学基礎工学部情報科学科数理科学コース3年の講義でも使われ,また公開講座「機械学習・データ科学スプリングキャンプ」2018, 2019でも多くの参加者に解かれ,高い評価を得ている。また,その間に改良を重ねている。問題をすべて独力で解くのは,大学院生か学部の上位10%程度,もしくはその分野の研究開発に携わっていないと難しいかもしれないが,解説を読むだけでも十分な意味がある。  なお,本書は"Elements of Statistical Learning"(邦訳は共立出版『統計的学習の基礎』)や"Introduction to Statistical Learning with R"(邦訳は朝倉書店『Rによる統計的学習入門』)といった,統計的機械学習の世界的ベストセラーに準拠していて,レベル的にそれらの中間的なものになっている。前者は事典に近く,読者が何かを身につけるために書かれた書籍ではない。後者は初心者を対象として,感覚的な理解を促してパッケージを使わせることに終始し,本質に近づく視点が欠如していると言わざるを得ない。  本書を読むことで,機械学習に関する知識が得られることはもちろんだが,脳裏に数学的ロジックを構築し,プログラムを構成して具体的に検証していくという,データサイエンス業界で活躍するための資質が得られる。本書は「数理」「情報」「データ」といった人工知能時代を勝ち抜くために必須のスキルを身につけるための,うってつけの書籍である。 第0章 線形代数 0.1 逆行列 0.2 行列式 0.3 一次独立性 0.4 ベクトル空間とその次元 0.5 固有値と固有ベクトル 0.6 正規直交基底と直交行列 0.7 対称行列の対角化 付録 命題の証明 第1章 線形回帰 1.1 最小二乗法 1.2 重回帰 1.3 $\hat{\beta}$の分布 1.4 RSSの分布 1.5 $\hat{\beta}_j \not= 0$の仮説検定 1.6 決定係数と共線形性の検出 1.7 信頼区間と予測区間 付録 命題の証明 問題1~18 第2章 分類 2.1 ロジスティック回帰 2.2 Newton-Raphson法の適用 2.3 線形判別と二次判別 2.4 K近似法 2.5 ROC曲線 問題19~31 第3章 リサンプリング 3.1 クロスバリデーション 3.2 線形回帰の場合の公式 3.3 ブートストラップ 付録 命題の証明 問題32~39 第4章 情報量基準 4.1 情報量基準 4.2 有効推定量とFisher情報量行列 4.3 Kullback-Leibler情報量 4.4 赤池の情報量基準(AIC)の導出 付録 命題の証明 問題40~48 第5章 正則化 5.1 Ridge 5.2 劣微分 5.3 Lasso 5.4 RidgeとLassoを比較して 5.5 λの値の設定 問題49~56 第6章 非線形回帰 6.1 多項式回帰 6.2 スプライン回帰 6.3 自然なスプライン関数への回帰 6.4 平滑化スプライン 6.5 局所回帰 6.6 一般化加法モデル 付録 命題の証明 問題57~68 第7章 決定木 7.1 回帰の決定木 7.2 分類の決定木 7.3 バギング 7.4 ランダムフォレスト 7.5 ブースティング 問題69~74 第8章 サポートベクトルマシン 8.1 最適な境界 8.2 最適化の理論 8.3 サポートベクトルマシンの解 8.4 カーネルを用いたサポートベクトルマシンの拡張 付録 命題の証明 問題75~87 第9章 教師なし学習 9.1 K-meansクラスタリング 9.2 階層的クラスタリング 9.3 主成分分析 付録 プログラム 問題88~100

人工知能はどのようにして 「名人」を超えたのか?―――最強の将棋AIポナンザの開発者が教える機械学習・深層学習・強化学習の本質

山本 一成
ダイヤモンド社
おすすめ度
66

本質を捉えたデータ分析のための分析モデル入門 統計モデル、深層学習、強化学習等 用途・特徴から原理まで一気通貫!

杉山聡
ソシム
おすすめ度
64

ゼロから作るDeep Learning ❸ ―フレームワーク編

斎藤 康毅
オライリージャパン
おすすめ度
64
紹介文
ディープラーニングの本書オリジナルフレームワークをゼロから作り、最小限のコードでモダンな機能を実現。知識を深める。 超人気シリーズの第3弾―令和の時代の新ドラゴンブック! 大ヒットを続ける超人気シリーズの第3弾。今回は「DeZero」というディープラーニングのフレームワークをゼロから作ります。DeZeroは本書オリジナルのフレームワークです。最小限のコードで、フレームワークのモダンな機能を実現します。本書では、この小さな―それでいて十分にパワフルな―フレームワークを、全部で60★のステップで完成させます。それによって、PyTorch、TensorFlow、Chainerなどの現代のフレームワークに通じる知識を深めます。キャッチフレーズは―作るからこそ、見えるモノ。

Kaggleで勝つデータ分析の技術

門脇 大輔
技術評論社
おすすめ度
64
紹介文
データサイエンスの認知の高まりとともに、データ分析に関するコンペティションが多数開催されるようになってきました。最も有名なコンペティションプラットフォームであるKaggleにおけるプレイヤー数は10万人を超え、多くのエンジニアが自分の腕を試すためにコンペティションに参加しています。分析コンペでは、実際のデータを扱うため、機械学習の解説書にはあまり載っていないような手法やテクニックが数多く活用されています。これらを理解し自身で使えるようにしておくことはコンペだけでなく、実務でのモデル構築において非常に役に立ちます。 そこでこれらのテクニックや事例を多くの人に知っていただくために、現時点で最新のものを整理して本書にまとめました。特徴量の作り方、バリデーション、パラメータチューニングなどについて、一般的な書籍ではあまり言及されない暗黙知やポイントについて記述しています。分析コンペにこれから参加してみたい方、あるいはもっと上を目指したい方だけでなく、実務で予測モデルの精度を上げたいという方にも参考になる情報が多いでしょう。 第1章 分析コンペとは? 1.1 分析コンペって何? 1.1.1 何をするものか 1.1.2 予測結果の提出と順位表(Leaderboard) 1.1.3 チームでの参加 1.1.4 入賞賞金・特典 1.2 分析コンペのプラットフォーム 1.2.1 Kaggle 1.2.2 Rankings(ランキング・称号制度) 1.2.3 Kernel 1.2.4 Discussion 1.2.5 Datasets 1.2.6 API 1.2.7 Newsfeed 1.2.8 開催された分析コンペの種類と具体例 1.2.9 分析コンペのフォーマット 1.3 分析コンペに参加してから終わるまで 1.3.1 分析コンペに参加 1.3.2 規約に同意 1.3.3 データをダウンロード 1.3.4 予測値の作成 1.3.5 予測値の提出 1.3.6 Public Leaderboardをチェック 1.3.7 最終予測値を選ぶ 1.3.8 Private Leaderboardをチェック 1.4 分析コンペに参加する意義 1.4.1 賞金を得る 1.4.2 称号やランキングを得る 1.4.3 実データを用いた分析の経験・技術を得る 1.4.4 データサイエンティストとのつながりを得る 1.4.5 就業機会を得る 1.5 上位を目指すためのポイント 1.5.1 タスクと評価指標 1.5.2 特徴量の作成 1.5.3 モデルの作成 1.5.4 モデルの評価 1.5.5 モデルのチューニング 1.5.6 アンサンブル 1.5.7 分析コンペの流れ Column  計算リソース 第2章 タスクと評価指標 2.1 分析コンペにおけるタスクの種類 2.1.1 回帰タスク 2.1.2 分類タスク 2.1.3 レコメンデーション 2.1.4 その他のタスク 2.2 分析コンペのデータセット 2.2.1 テーブルデータ 2.2.2 外部データ 2.2.3 時系列データ 2.2.4 画像や自然言語などのデータ 2.3 評価指標 2.3.1 評価指標(evaluation metrics)とは 2.3.2 回帰における評価指標 2.3.3 二値分類における評価指標?正例か負例かを予測値とする場合 2.3.4 二値分類における評価指標?正例である確率を予測値とする場合 2.3.5 多クラス分類における評価指標 2.3.6 レコメンデーションにおける評価指標 2.4 評価指標と目的関数 2.4.1 評価指標と目的関数の違い 2.4.2 カスタム評価指標とカスタム目的関数 2.5 評価指標の最適化 2.5.1 評価指標の最適化のアプローチ 2.5.2 閾値の最適化 2.5.3 閾値の最適化をout-of-foldで行うべきか? Column out-of-foldとは? 2.5.4 予測確率とその調整 2.6 評価指標の最適化の例 2.6.1 balanced accuracyの最適化 2.6.2 mean-F1における閾値の最適化 2.6.3 quadratic weighted kappaにおける閾値の最適化 2.6.4 カスタム目的関数での評価指標の近似によるMAEの最適化 2.6.5 MCCのPR-AUCによる近似とモデル選択 2.7 リーク(data leakage) 107 2.7.1 予測に有用な情報が想定外に漏れている意味でのリーク 2.7.2 バリデーションの枠組みの誤りという意味でのリーク 第3章 特徴量の作成 3.1 本章の構成 3.2 モデルと特徴量 3.2.1 モデルと特徴量 3.2.2 ベースラインとなる特徴量 3.2.3 決定木の気持ちになって考える 3.3 欠損値の扱い 3.3.1 欠損値のまま取り扱う 3.3.2 欠損値を代表値で埋める 3.3.3 欠損値を他の変数から予測する 3.3.4 欠損値から新たな特徴量を作成する 3.3.5 データ上の欠損の認識 3.4 数値変数の変換 3.4.1 標準化(standardization) Column データ全体の数値を利用して変換を行うときに、学習データのみを使うか、テストデータも使うか 3.4.2 Min-Maxスケーリング 3.4.3 非線形変換 3.4.4 clipping 3.4.5 binning 3.4.6 順位への変換 3.4.7 RankGauss 3.5 カテゴリ変数の変換 3.5.1 one-hot encoding 3.5.2 label encoding 3.5.3 feature hashing 3.5.4 frequency encoding 3.5.5 target encoding 3.5.6 embedding 3.5.7 順序変数の扱い 3.5.8 カテゴリ変数の値の意味を抽出する 3.6 日付・時刻を表す変数の変換 3.6.1 日付・時刻を表す変数の変換のポイント 3.6.2 日付・時刻を表す変数の変換による特徴量 3.7 変数の組み合わせ 3.8 他のテーブルの結合 3.9 集約して統計量をとる 3.9.1 単純な統計量をとる 3.9.2 時間的な統計量をとる 3.9.3 条件を絞る 3.9.4 集計する単位を変える 3.9.5 ユーザ側でなく、アイテム側に注目する 3.10 時系列データの扱い 3.10.1 時系列データとは? 3.10.2 予測する時点より過去の情報のみを使う 3.10.3 ワイドフォーマットとロングフォーマット 3.10.4 ラグ特徴量 3.10.5 時点と紐付いた特徴量を作る 3.10.6 予測に使えるデータの期間 3.11 次元削減・教師なし学習による特徴量 3.11.1 主成分分析(PCA) 3.11.2 非負値行列因子分解(NMF) 3.11.3 Latent Dirichlet Allocation(LDA) 3.11.4 線形判別分析(LDA) 3.11.5 t-SNE、UMAP 3.11.6 オートエンコーダ 3.11.7 クラスタリング 3.12 その他のテクニック 3.12.1 背景にあるメカニズムから考える 3.12.2 レコード間の関係性に注目する 3.12.3 相対値に注目する 3.12.4 位置情報に注目する 3.12.5 自然言語処理の手法 3.12.6 自然言語処理の手法の応用 3.12.7 トピックモデルの応用によるカテゴリ変数の変換 3.12.8 画像特徴量を扱う手法 3.12.9 decision tree feature transformation 3.12.10 匿名化されたデータの変換前の値を推測する 3.12.11 データの誤りを修正する 3.13 分析コンペにおける特徴量の作成の例 3.13.1 Kaggleの「Recruit Restaurant Visitor Forecasting」 3.13.2 Kaggleの「Santander Product Recommendation」 3.13.3 Kaggleの「Instacart Market Basket Analysis」 3.13.4 KDD Cup 2015 3.13.5 分析コンペにおけるその他のテクニックの例 第4章 モデルの作成 4.1 モデルとは何か? 4.1.1 モデルとは何か? 4.1.2 モデル作成の流れ 4.1.3 モデルに関連する用語とポイント 4.2 分析コンペで使われるモデル 4.3 GBDT(勾配ブースティング木) 4.3.1 GBDTの概要 4.3.2 GBDTの特徴 4.3.3 GBDTの主なライブラリ 4.3.4 GBDTの実装 4.3.5 xgboostの使い方のポイント 4.3.6 lightgbm 4.3.7 catboost Column xgboostのアルゴリズムの解説 4.4 ニューラルネット 4.4.1 ニューラルネットの概要 4.4.2 ニューラルネットの特徴 4.4.3 ニューラルネットの主なライブラリ 4.4.4 ニューラルネットの実装 4.4.5 kerasの使い方のポイント 4.4.6 参考になるソリューション - 多層パーセプトロン 4.4.7 参考になるソリューション - 最近のニューラルネットの発展 4.5 線形モデル 4.5.1 線形モデルの概要 4.5.2 線形モデルの特徴 4.5.3 線形モデルの主なライブラリ 4.5.4 線形モデルの実装 4.5.5 線形モデルの使い方のポイント 4.6 その他のモデル 4.6.1 k近傍法(k-nearest neighbor algorithm、kNN) 4.6.2 ランダムフォレスト(Random Forest、RF) 4.6.3 Extremely Randomized Trees(ERT) 4.6.4 Regularized Greedy Forest(RGF) 4.6.5 Field-aware Factorization Machines(FFM) 4.7 モデルのその他のポイントとテクニック 4.7.1 欠損値がある場合 4.7.2 特徴量の数が多い場合 4.7.3 目的変数に1対1で対応するテーブルでない場合 4.7.4 pseudo labeling Column 分析コンペ用のクラスやフォルダの構成 第5章 モデルの評価 5.1 モデルの評価とは? 5.2 バリデーションの手法 5.2.1 hold-out法 5.2.2 クロスバリデーション 5.2.3 stratified k-fold 5.2.4 group k-fold 5.2.5 leave-one-out 5.3 時系列データのバリデーション手法 5.3.1 時系列データのhold-out法 5.3.2 時系列データのクロスバリデーション(時系列に沿って行う方法) 5.3.3 時系列データのクロスバリデーション(単純に時間で分割する方法) 5.3.4 時系列データのバリデーションの注意点 5.3.5 Kaggleの「Recruit Restaurant Visitor Forecasting」 5.3.6 Kaggleの「Santander Product Recommendation」 5.4 バリデーションのポイントとテクニック 5.4.1 バリデーションを行う目的 5.4.2 学習データとテストデータの分割をまねる 5.4.3 学習データとテストデータの分布が違う場合 5.4.4 Leaderboardの情報を利用する 5.4.5 バリデーションデータやPublic Leaderboardへの過剰な適合 5.4.6 クロスバリデーションのfoldごとに特徴量を作り直す 5.4.7 使える学習データを増やす 第6章 モデルのチューニング 6.1 パラメータチューニング 6.1.1 ハイパーパラメータの探索手法 6.1.2 パラメータチューニングで設定すること 6.1.3 パラメータチューニングのポイント 6.1.4 ベイズ最適化でのパラメータ探索 6.1.5 GBDTのパラメータおよびそのチューニング Column xgboostの具体的なパラメータチューニングの方法 6.1.6 ニューラルネットのパラメータおよびそのチューニング Column 多層パーセプトロンの具体的なパラメータチューニングの方法 6.1.7 線形モデルのパラメータおよびそのチューニング 6.2 特徴選択および特徴量の重要度 6.2.1 単変量統計を用いる方法 6.2.2 特徴量の重要度を用いる方法 6.2.3 反復して探索する方法 6.3 クラスの分布が偏っている場合 Column ベイズ最適化およびTPEのアルゴリズム 第7章 アンサンブル 7.1 アンサンブルとは? 7.2 シンプルなアンサンブル手法 7.2.1 平均、加重平均 7.2.2 多数決、重みづけ多数決 7.2.3 注意点とその他のテクニック 7.3 スタッキング 7.3.1 スタッキングの概要 7.3.2 特徴量作成の方法としてのスタッキング 7.3.3 スタッキングの実装 7.3.4 スタッキングのポイント 7.3.5 hold-outデータへの予測値を用いたアンサンブル 7.4 どんなモデルをアンサンブルすると良いか? 7.4.1 多様なモデルを使う 7.4.2 ハイパーパラメータを変える 7.4.3 特徴量を変える 7.4.4 問題のとらえ方を変える 7.4.5 スタッキングに含めるモデルの選択 7.5 分析コンペにおけるアンサンブルの例 7.5.1 Kaggleの「Otto Group Product Classification Challenge」 7.5.2 Kaggleの「Home Depot Product Search Relevance」 7.5.3 Kaggleの「Home Credit Default Risk」 付 録 A.1 分析コンペの参考資料 A.2 参考文献 A.3 本書で参照した分析コンペ 索引 著者プロフィール

scikit-learn、Keras、TensorFlowによる実践機械学習 第2版

Aurélien Géron
オライリージャパン
おすすめ度
64
紹介文
『scikit-learnとTensorFlowによる実践機械学習』の改訂。教師なし学習、言語、強化学習などを追加。 『scikit-learnとTensorFlowによる実践機械学習』待望の改訂版! 初版でカバーできなかった教師なし学習、ディープラーニングに関する画像、言語、強化学習などについて詳述。またTensorFlow上で動くニューラルネットワークライブラリのKerasの解説が加わり、各章でKerasを使った解説がなされています。TensorFlowのコンポーネントに関する記述が追加されています。Githubにjupyter notebookで試せるコードを掲載しており、試しながら学べます。

現場で活用するための機械学習エンジニアリング (KS情報科学専門書)

藤井 亮宏
講談社
おすすめ度
63
紹介文
機械学習プロジェクトの上手な進め方、機械学習を活用するときに気をつけることなど。役に立つ機械学習モデルのつくり方がわかる! ★★管理職も技術者も必読!「機械学習」のやさしい活用法★★ 機械学習プロジェクトの上手な進め方、機械学習を活用するときに気をつけること、活用事例などをていねいに解説。 「機械学習を作る側」と「機械学習活用する側」との橋渡しとなる一冊! [本書で学べること] ・そもそも機械学習で何ができるのか? ・現場への適切な組み込み方法は? ・どうやって精度を保証するのか? ・実運用を見すえたときに確認すべき部分は? [主な内容]  第1章 本書の使い方 第1部 機械学習の基礎  第2章 機械学習とは何か  第3章 機械学習手法の種類と基礎  第4章 機械学習のタスク 第2部 機械学習の利活用  第5章 機械学習は一般企業でも活用できる  第6章 機械学習を現場で活用するには  第7章 機械学習の適用事例  第8章 実運用に耐えうる機械学習モデルの構築  第9章 機械学習モデルの説明性 第1章 本書の使い方 第1部 機械学習の基礎 第2章 機械学習とは何か 2.1 AI、機械学習、深層学習の違いと機械学習の概念 2.2 機械学習は近似関数を推定する作業である 2.3 データについて 第3章 機械学習手法の種類と基礎 3.1 機械学習の種類 3.2 深層学習以外の機械学習手法の種類とその基礎 3.3 深層学習の主な種類とその基礎 3.4 過学習と正則化 3.5 転移学習 第4章 機械学習のタスク 4.1 動画像系のタスク 4.2 自然言語処理・音系のタスク 4.3 異常検知のタスク 4.4 テーブルデータ系のタスク 4.5 数値計算手法の近似 第2部 機械学習の利活用 第5章 機械学習は一般企業でも活用できる 第6章 機械学習を現場で活用するには 6.1 機械学習活用プロジェクトの流れ 6.2 機械学習活用プロジェクトでうまく問題設定する 6.3 ドメイン知識をモデルに組み込む 6.4 ウェブから利用可能な資源を活用する 6.5 機械学習手法の選択やデータの質・量 6.6 機械学習情報の収集方法 6.7 論文の効率的な読み方 6.8 機械学習が抱える問題点 6.9 機械学習を活用する前に「機械学習を活用しない解」を検討する 第7章 機械学習の適用事例 7.1 商品の外観検査 7.2 建設現場の進捗確認 7.3 街路樹の密度をチェックし、植林支援をする 7.4 秘密保持契約のチェック 7.5 数値シミュレーションの近似 7.6 銃声を検知して野生動物を保護する 7.7 長期間気球を滞空させて、過疎地の通信を助ける 第8章 実運用に耐えうる機械学習モデルの構築 8.1 評価データの情報漏洩を防いで実運用時と近い評価をする 8.2 データ拡張による実運用時のばらつきを加味した学習方法 8.3 機械学習モデルが出す想定外の予測結果(短絡学習)を防ぐ対策 8.4 少ないデータで学習し、少ないデータで精度を担保する 8.5 ラベル間違いへの対応 8.6 その他利活用時に問題になりそうな事項とその対策 第9章 機械学習モデルの説明性 9.1 説明性のある機械学習モデルとは 9.2 判断根拠の説明性 9.3 偏見の可視化 9.4 不確実性の算出 9.5 説明性は役に立つのか 9.6 因果関係と相関関係

改訂TensorFlow対応版 算数&ラズパイから始めるディープ・ラーニング (データサイエンス)

牧野浩二
CQ出版
おすすめ度
63
紹介文
ディープ・ラーニングの基礎知識と具体的なプログラミング方法,ラズベリー・パイで動かす方法について解説します. 本書では,ディープ・ラーニング技術の基礎知識と,それをどのように「動くプログラム」に落とし込むのかについて,ステップ・バイ・ステップで解説しています.また,ラズベリー・パイなる小型コンピュータ・ボードで動かす方法についても解説しています. 2018年発刊の同タイトル(ボード・コンピュータ・シリーズ)ではフレームワークにChainer を使っていました.今回はTensorFlowに対応しました.内容は同一です. ☆目次 ◎プログラミングができなくても大丈夫! ●はじめに 自宅で1人で試して合点 ◎全プログラム付きですぐに ●本書の歩き方 ☆第1部 ディープ・ラーニングの世界へようこそ ◎個人でもスゴいことがアイディア次第! ●第1章 できるようになること ◎画像/データ分析/音声…得意分野丸見え! ●第2章 必修の3大アルゴリズム ◎ディープ・ラーニングの長所 ●第3章 音声や画像処理の知識がなくても大丈夫 ☆第2部 ラズパイ&PC試すための準備 ◎Googleが作っているフレームワーク ●第1章 開発環境にTensorFlowを選んだ理由 ◎ディープ・ラーニングのフレームワーク ●第2章 TensorFlowのインストール ◎お手軽Python環境 ●第3章 Anacondaのインストール ◎サンプル・プログラムを使った ●第4章 TensorFlowの動作確認 ◎OS,TensorFlow,TS-Agentsのインストール ●第5章 ラズベリー・パイの準備 なくても動くけど学習はどうしても時間がかかるから… ●第6章 GPUボードの設定WindowsOS編 ●Appendix 番外編…LinuxOSのPCを作る ☆第3部 持ってる人はココから…ラズパイで体験 ◎エンジン音で車種判定やMyロボの異常検知などに ●第1章 体験①…音でお菓子認識 ◎画像処理を知らなくてもOK! きのことたけのこを判別してみる ●第2章 体験②…画像認識1(お菓子の種類 ◎ペットの判定や果物の出荷検査に ●第3章 体験③…画像認識2(本物/偽物) ◎第6部で解説する自動運転や対戦AIのもとをまずは ●第4章 体験④…迷路脱出 ◎スマート・スピーカや自動操縦に ●第5章 体験⑤…話者認識 ☆第4部 算数&プログラミング練習ステップ・バイ・ステップ ◎人間の脳に近い?! ニューラル・ネットワークをAND回路から ●第1章 イメージでつかむ!ディープ・ラーニング ◎基本原理を理解する! ●第2章 算数で解きほぐすニューラル・ネットワーク ◎TensorFlowの使い方も覚えてしまおう ●第3章 プログラミング・ステップ1…最小構成ニューラル・ネットワーク ◎いろいろなパターンを試して腕みがき ●第4章 プログラミング・ステップ2…層数や入出力を増やす ◎ここまで来るといろいろできそう ●第5章 プログラミング・ステップ3…突入!ディープ・ラーニング・ワールド ◎3大ディープ・ラーニングのさわりを体感してみる ●第6章 プログラミング・ステップ4…初めての畳み込みニューラル・ネットワーク ☆第5部 画像/データ解析/音声…3大アルゴリズム体感 ◎定番データセットの文字認識で体験 ●第1章 画像向きCNN①…手書き認識 ◎画像の収集や学習を体験 ●第2章 画像向きCNN②…感情認識 ◎「予測が得意」なアルゴリズムを体験 ●第3章 データ分析向きRNN①…値の未来予測 ◎人間のアシスタントとして一大分野に発展するかも ●第4章 データ分析向きRNN②…文章の自動生成 ◎学習データが不要の便利なアルゴリズムを体験 ●第5章 音声/画像生成向きオートエンコーダ①…ノイズ・フィルタ ◎単純作業を劇的に減らせる可能性がある「変分オートエンコーダ」 ●第6章 音声/画像生成向きオートエンコーダ②…筆跡生成 ☆第6部 自動運転や対戦AIのもと深層強化学習 ●プロローグ 深層強化学習をマスタした方がよい理由 ◎未来への1歩 ●第1章 ステップ1…基となるQラーニングの仕組み ◎シンプルな迷路を例に ●第2章 ステップ2…数式でひも解くQラーニング ◎「なんとなくわかってきた」からのステップアップ ●第3章 ステップ3…プログラミングで理解するQラーニング ◎Qラーニングを理解したらいよいよ ●第4章 ステップ4…プログラミングで理解する深層強化学習 ◎ついに人間と対決! ●第5章 深層強化学習総仕上げ…成長して強くなるAIづくり

最強囲碁AI アルファ碁 解体新書 増補改訂版 アルファ碁ゼロ対応 深層学習、モンテカルロ木探索、強化学習から見たその仕組み

大槻 知史
翔泳社
おすすめ度
63
紹介文
アルファ碁ゼロで利用されている深層学習・強化学習の仕組みがわかる! 【本書の概要】 本書は学術論文(NatureやGoogleのサイト)などで提供されている難解なアルファ碁およびアルファ碁ゼロの仕組みについて、 著者がとりまとめ、実際の囲碁の画面を見ながら、 アルファ碁およびアルファ碁ゼロで利用されている深層学習や強化学習の仕組みについてわかりやすく解説した書籍です。特にデュアルネットワークはまったく新しい深層学習の手法で国内外の技術者の関心を集めています。 本書を読むことで、最新AIの深層学習、強化学習の仕組みを知ることができ、 自身の研究開発の参考にできます。また著者の開発したDeltaGoを元に実際に囲碁AIを体験できます。 【増補改訂のポイント】 Chapter1から5の部分は、よりわかりやすく内容を加筆修正しています。 またChapter6はアルファ碁ゼロに対応しています。 改訂にあたり、色数も2Cに変更。よりわかりやすいビジュアルになっています。 【対象読者】 人工知能関連の開発者、研究者 【著者プロフィール】 大槻知史(おおつき・ともし) 2001年東京大学工学部計数工学科卒業。2003年同大学院新領域創成科学研究科複雑理工学専攻修士課程修了。 以降、機械学習・最適化などの研究開発に取り組む。ゲームAIプログラマとしては、2001年より、囲碁・将棋プログラムの開発に従事。 著者の開発した将棋プログラム「大槻将棋」は、2009年世界コンピュータ将棋選手権にて第2位。博士(情報理工学)。 【監修者プロフィール】 三宅陽一郎(みやけ・よういちろう) デジタルゲームの人工知能の開発者。京都大学で数学を専攻、大阪大学大学院物理学修士課程、 東京大学大学院工学系研究科博士課程を経て、人工知能研究の道へ。 ゲームAI開発者としてデジタルゲームにおける人工知能技術の発展に従事。 国際ゲーム開発者協会日本ゲームAI専門部会設立(チェア)、日本デジタルゲーム学会理事、芸術科学会理事、人工知能学会編集委員。 共著『デジタルゲームの教科書』『デジタルゲームの技術』『絵でわかる人工知能』(SBクリエイティブ)、 著書『人工知能のための哲学塾』(BNN新社)、『人工知能の作り方』(技術評論社)、 『ゲーム、人工知能、環世界』(現代思想、青土社、2015年12月)、 最新の論文は『デジタルゲームにおける人工知能技術の応用の現在』(人工知能学会誌 2015年、学会Webにて公開)。 【目次】はじめに 監修者のことば 本書の対象読者とダウンロードファイルについて 囲碁AIの歴史 対局レポート:アルファ碁と世界ナンバーワン棋士・柯傑九段の最終決戦 Chapter1 アルファ碁の登場 01 ゲームAIの歴史と進歩 02 天才デミス・ハサビスの登場 03 アルファ碁の活躍 04 囲碁AIの基礎 05 まとめ Chapter2 ディープラーニング~囲碁AIは瞬時にひらめく~ 本章で説明する技術トピックと、全体の中の位置づけ 01 ディープラーニングとは 02 手書き数字認識の例 03 アルファ碁における畳み込みニューラルネットワーク 04 ChainerでCNNを学習させてみる05 まとめ Chapter3 強化学習~囲碁AIは経験に学ぶ~ 本章で説明する技術トピックと、全体の中の位置づけ 01 強化学習とは 02 強化学習の歴史 03 多腕バンディット問題 04 迷路を解くための強化学習 05 テレビゲームの操作獲得のための強化学習 06 アルファ碁における強化学習 07 まとめと課題 Chapter4 探索~囲碁AIはいかにして先読みするか~ 本章で説明する技術トピックと全体の中の位置づけ 01 2人ゼロ和有限確定完全情報ゲーム 02 ゲームにおける探索 03 従来のゲーム木探索(ミニマックス木探索) 04 囲碁におけるモンテカルロ木探索 05 モンテカルロ木探索の成功要因と課題 06 まとめ Chapter5 アルファ碁の完成 01 アルファ碁の設計図 02 非同期方策価値更新モンテカルロ木探索(APV-MCTS) 03 大量のCPU・GPUの利用 04 アルファ碁の強さ Chapter6 アルファ碁からアルファ碁ゼロへ 01 はじめに 02 アルファ碁ゼロにおけるディープラーニング 03 アルファ碁ゼロにおけるモンテカルロ木探索 04 アルファ碁ゼロにおける強化学習 05 アルファ碁ゼロの強さ 06 アルファ碁ゼロは知識ゼロから作られたのか? 07 アルファ碁やアルファ碁ゼロに弱点はあるのか? 08 アルファ碁ゼロの先の未来 Appendix1 数式について 01 畳み込みニューラルネットワークの学習則の導出 02 強化学習の学習則の導出 Appendix2 囲碁プログラム用のUIソフト「GoGui」およびGoGui用プログラム「DeltaGo」の利用方法 01 DeltaGoとは 02 GoGuiのインストールとGoGui用プログラム「DeltaGo」の利用方法 おわりに INDEX

ITエンジニアのための強化学習理論入門

中井 悦司
技術評論社
おすすめ度
63
紹介文
前作の『ITエンジニアのための機械学習理論入門』から、5年経過しましたが、AI(人工知能)や機械学習に対しての期待と関心はまったく衰えません。むしろ機械学習の利用はIT業界で当然のものとなり、さらなる活用がさまざまな場所で行われています。前作では一般的な機械学習について解説しましたが、試行錯誤しながら1つの解をもとめていく「強化学習理論」についてくわしく・やさしく解説します。理論を表現するいろいろな数式とそれらをプログラミングするためのPythonコードを並列しながらその理論の神髄にせまり、強化学習の基礎となるさまざまなアルゴリズムを体系的に学びます。 第1章 強化学習のゴールと課題 1.1 強化学習の考え方 1.2 実行環境のセットアップ 1.3 バンディットアルゴリズム(基本編) 1.4 バンディットアルゴリズム(応用編) 第2章 環境モデルを用いた強化学習の枠組み 2.1 マルコフ決定過程による環境のモデル化 2.2 エージェントの行動ポリシーと状態価値関数 2.3 動的計画法による状態価値関数の決定 第3章 行動ポリシーの改善アルゴリズム 3.1 ポリシー反復法 3.2 価値反復法 3.3 より実践的な実装例 第4章 サンプリングデータを用いた学習法 4.1 モンテカルロ法 4.2 TD(Temporal-Difference)法 第5章 ニューラルネットワークによる関数近似 5.1 ニューラルネットワークによる状態価値関数の計算 5.2 ニューラルネットワークを用いたQ-Learning

最短コースでわかる ディープラーニングの数学

赤石 雅典
日経BP
おすすめ度
63
紹介文
AIのブラックボックスを開けよう! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 AIのブラックボックスを開けよう! ディープラーニングの本質を理解するために必要な「数学」を 「最短コース」で学べます! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 本書では、ディープラーニングの理解には欠かせない数学を 高校1年生レベルから、やさしく解説します。 (微分、ベクトル、行列、確率など) 最短コースで理解できるように、 解説する数学の分野は必要最低限のものだけに絞り、 その相関関係を★特製の綴込マップ★にまとめました。 また、数学を使ってイチから記述したコードを Jupyter Notebook形式で提供しますので 実際に動かしながら学ぶことができます。 「ディープラーニング」の動作原理を「本当に」理解できる本です。 AIのブラックボックスを開けよう! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 【導入編】 1章 機械学習入門 【理論編】 2章 微分・積分 3章 ベクトル・行列 4章 多変数関数の微分 5章 指数関数・対数関数 6章 確率・統計 【実践編】 7章 線形回帰モデル(回帰) 8章 ロジスティック回帰モデル(2値分類) 9章 ロジスティック回帰モデル(多値分類) 10章 ディープラーニングモデル 【発展編】 11章 実用的なディープラーニングを目指して ★巻頭綴じ込み★最短コースマップ

TensorFlowではじめるDeepLearning実装入門 (impress top gear)

新村 拓也
インプレス
おすすめ度
63
紹介文
TensorFlowの機能を組み合わせて実践的な深層学習モデルを構築しよう!ニューラルネットワークの基礎、CNNやRNNはもちろん、転移学習を用いたキャプション生成までを1冊に凝縮。データ整形からモデル構築までをステップ・バイ・ステップで解説。 第1章 ニューラルネットワークと深層学習(機械学習 教師あり学習・教師なし学習 ほか) 第2章 TensorFlow入門-計算グラフと手書き数字認識(TensorFlowとは? 計算グラフとDefine and Run ほか) 第3章 TensorFlowをもう少し入門-TensorBoard、CNN、モデルの保存(可視化ツールTensorBoard TensorBoardの見方 ほか) 第4章 TensorFlowでRNN-時系列情報および自然言語の扱い(Recurrent Neural Network TensorFlowにおけるRNN実装 ほか) 第5章 TensorFlowでニューラルイメージキャプショニング(画像キャプショニング 画像キャプショニングのためのデータセット ほか)

ニューラルネットワーク自作入門

Tariq Rashid
マイナビ出版
おすすめ度
62
紹介文
はじめてニューラルネットワークに取り組む方にやさしく解説! ニューラルネットワークで使われる数学の最もやさしい入門書 ― さらにコンピュータ言語Pythonを使って自分自身で作ってみよう! 本書はニューラルネットワークで必要となる数学について、一歩一歩、旅する気分で触れていきながら、コンピュータ言語:Pythonを使いニューラルネットワークを自作します。今日ニューラルネットワークは深層学習と人工知能の重要な鍵であり、大きな実績をあげています。しかし、実際にニューラルネットワークがどのように機能するかを本当に理解している方は極少数でしょう。 本書では極カンタンなところからスタートし、ニューラルネットワークがどのように機能するかを理解していく―ゆっくりと楽しい旅のお手伝いします。 読者の方には中学・高校で学んだ以上の数学の知識を必要としません、本書を通して微積分へ入門することも可能です。 本書の目的はできるだけ多くの読者に・できるだけ理解しやすくニューラルネットワーク自作をお手伝いすることです(さらに発展した課題が欲しい読者には、既にたくさんの教科書があると思います)。 Pythonでコードを作成し、独自の畳み込みニューラルネットワークを作成。「手書きによる数字」を認識してみます。 Part 1は数学的考え方に関するものです。我々は、ニューラルネットワークの基礎となる数学的考え方を、多くのイラストや例を使って丁寧に紹介していきます。 Part 2は実践編です。人気があり習得しやすいプログラミング言語:Pythonを紹介しつつ、人間が手書きした「数字」を認識し、容易に実行できるニューラルネットワークを構築していきます。 Part 3では、これらのアイデアをさらに拡張。シンプルなアイデアやコードを使用し、認識率98%のニューラルネットワークへと改良を進めます。自分で書いた手書き文字でニューラルネットワークをテストし、さらに"制作者の特権"を活かしミステリアスなニューラルネットワークの心の中を覗き見してみよう。 最後に制作物をRaspberry Piで動かしてみます。 本書で紹介するすべてのコードは、Raspberry Piで動くことを確認しています。 イントロダクション:本書の対象者 / この本で何ができるが / どのようにして行うのか Part 1:どうやって動くのか Part 2:Pythonでやってみよう Part 3:さらに楽しもう 付録 A:とってもやさしい微積分入門 付録 B:Raspberry Piでやってみよう

詳細! Python 3 入門ノート

大重 美幸
ソーテック社
おすすめ度
62
紹介文
Pythonプログラミングを全力で学ぶならこの1冊!Pythonをこれから学ぶビギナーから、基礎力を得て現場で実践したい方まで、確実なスキルアップをはかれます。 1 準備:Python3をはじめよう(Python3の準備 プログラムを試してみよう) 2 基礎:Pythonの基本構文を学ぶ(値と変数 標準ライブラリ 条件分岐、繰り返し、例外処理 リスト タプル セット(集合) 辞書 ユーザ定義関数 関数の高度な利用 クラス定義) 3 応用:科学から機械学習まで(テキストファイルの読み込みと書き出し グラフを描く NumPyの配列 機械学習を試そう)

深層強化学習入門

Vincent Francois-Lavet
共立出版
おすすめ度
62
紹介文
強化学習の基礎から,深層強化学習の主要アルゴリズム,最先端の話題までを網羅。実験結果の一貫性や再現性といった実践面も詳説。 深層強化学習は,強化学習と深層学習の組み合わせである。この研究分野の発展により,従来機械で扱う範疇ではなかった広範囲の複雑な意思決定問題を解けるようになってきた。深層強化学習はヘルスケア,ロボティクス,スマートグリッド,金融工学,その他さまざまな領域において,新たな応用の可能性を切り拓きつつある。本書は,そのような深層強化学習に関し,強化学習の基礎から始まり,深層強化学習の主要なアルゴリズムや最先端の話題まで,豊富な参考文献も含めて幅広く網羅している。特に本書は,汎化性を向上させるノウハウや深層強化学習が実応用でどのように使われるかという観点に着目して執筆されている。 機械学習の基礎知識を有する大学生・大学院生や企業の研究者・技術者が,深層強化学習の概要を効率的に勉強したいと思ったときの最初の一冊として推薦できる構成となっている。 原著:An Introduction to Deep Reinforcement Learning, 2019 第1章 はじめに 1.1 なぜ強化学習? 1.2 本書の概要 第2章 機械学習と深層学習 2.1 教師あり学習,および偏りと過適合の概念 2.2 教師なし学習 2.3 深層学習の手法 第3章 強化学習の基礎 3.1 形式的な枠組み 3.2 方策を学習するためのさまざまな要素 3.3 データから方策を学習するためのさまざまな設定 第4章 価値ベース手法による深層強化学習 4.1 Q学習 4.2 当てはめQ学習 4.3 深層Qネットワーク 4.4 2重深層Q学習 4.5 決闘型ネットワーク構造 4.6 分布型深層Qネットワーク 4.7 多段階学習 4.8 DQNの改良版と派生手法の組み合わせ 第5章 方策勾配法による深層強化学習 5.1 確率的方策勾配 5.2 確定的方策勾配 5.3 アクター・クリティック法 5.4 自然方策勾配 5.5 信頼領域最適化 5.6 方策勾配とQ学習の組み合わせ 第6章 モデルベース手法による深層強化学習 6.1 純粋モデルベース法 6.2 モデルフリー手法とモデルベース手法の組み合わせ 第7章 汎化性 7.1 特徴選択 7.2 学習アルゴリズムと関数近似器の選択 7.3 目的関数の修正 7.4 階層的学習 7.5 最良の偏り・過適合のトレードオフの獲得 第8章 オンライン問題に特有の課題 8.1 探索・活用のジレンマ 8.2 経験再生の管理 第9章 深層強化学習のベンチマーク 9.1 ベンチマークの環境 9.2 深層強化学習ベンチマークにおけるベストプラクティス 9.3 深層強化学習のオープンソースソフトウェア 第10章 MDPを超える深層強化学習 10.1 部分観測性と関連する複数環境のMDPの分布 10.2 転移学習 10.3 明示的な報酬関数を持たない学習 10.4 マルチエージェントシステム 第11章 深層強化学習の展望 11.1 深層強化学習の成功 11.2 深層強化学習を実世界問題に適用する際の課題 11.3 深層強化学習と神経科学の関係 第12章 結論 12.1 深層強化学習の将来の発展 12.2 深層強化学習や人工知能の応用と社会への影響 付録:深層強化学習のフレームワーク 参考文献 欧文索引 和文索引

Unity ML-Agents 実践ゲームプログラミング v1.1対応版 (Unityではじめる機械学習・強化学習)

布留川 英一
ボーンデジタル
おすすめ度
62
紹介文
ついに正式版が登場へ! ゲーム開発にAIを活用しよう 「Unity ML-Agents」は、2017年秋にv0.1として登場以降、順調にバージョンアップを重ね、2020年5月についに正式版となりました。今後は、Unityの中核機能の1つになると予想されています。 本書は、2018年7月に刊行した前書(v0.4に対応)を、正式版に合わせて全面的に改訂したものです。 Unity ML-Agentsは、多くのAIプログラミングで必須となる「Python」のコーディングを必要とせず、Unity ML-Agentsの仕組みに沿って、通常のゲーム開発同様にC#によるコーディングで完結できることが大きな特徴です。 本書では、これからゲームAIについて学びたい方から読んでいただけるように、機械学習の基礎から学習環境の構築、付属サンプルによるさまざまな学習方法の解説などを、ステップ・バイ・ステップで実践的に習得できるように構成しています。 また、実際の開発現場でゲームAIを活用するためのサンプルとして、Unityが無償で公開しているゲームを使って、「テストの自動化」「ゲームバランスの調整」「より自然な振る舞いを行うNPC」「人間の代わりとなる対戦相手」をAIとして実装したサンプル事例も紹介しています。 本書は、基礎から実践まで網羅しており、これからゲームAIにチャレンジしたい方にお勧めしたい1冊です。 1章 機械学習とUnity ML-Agentsの概要  1-1 人工知能と機械学習  1-2 教師あり学習と教師なし学習と強化学習  1-3 強化学習  1-4 強化学習の学習アルゴリズム  1-5 Unity ML-Agentsの概要  1-6 Unity ML-Agentsの学習シナリオ 2章 はじめての学習環境の作成  2-1 開発環境の準備  2-2 プロジェクトの準備  2-3 はじめての学習環境の作成  2-4 学習と推論  2-5 学習の高速化 3章 Unity ML-Agentsの基礎  3-1 状態と観察  3-2 行動  3-3 報酬とエピソード完了  3-4 決定  3-5 訓練設定ファイル  3-6 mlagents-learn  3-7 TensorBoard 4章 さまざまな学習方法  4-1 SAC  4-2 Discrete  4-3 Visual Observation  4-4 Raycast Observation  4-5 セルフプレイ  4-6 Curiosity  4-7 模倣学習  4-8 LSTM(Long Short-Term Memory)  4-9 カリキュラム学習  4-10 環境パラメータのランダム化  4-11 Observable属性 5章 サンプルの学習環境  5-1 サンプル学習環境の準備  5-2 FoodCollector(Observation)  5-3 GridWorld(Visual Observation)  5-4 PushBlock(Raycast Observation)  5-5 Tennis(セルフプレイ①)  5-6 Soccer(セルフプレイ②)  5-7 Pyramids(Curiosity・模倣学習)  5-8 Hallway(LSTM)  5-9 WallJump(カリキュラム学習)  5-10 3DBall(環境パラメータのランダム化)  5-11 Bouncer(RequestDecision)  5-12 Reacher(多関節の学習①)  5-13 Worm(多関節の学習②)  5-14 Crawler(多関節の学習③)  5-15 Walker(多関節の学習④)  5-16 Basic(カスタムセンサーコンポーネント) 6章 ゲーム開発における強化学習の活用  6-1 ゲーム開発での強化学習エージェントの活用  6-2 Flappy Bird Style-テストの自動化  6-3 3D Game Kit Lite-コンテンツのバランス調整のサポート  6-4 Puppo, The Corgi-より自然な振る舞いを行うNPC  6-5 Karting Microgame-人間の代わりとなる対戦相手  6-6 Unity Analyticsによるエージェントの行動解析 7章 Python APIを使った学習環境の構築  7-1 Python APIを使った学習  7-2 Gymラッパー  7-3 Python Low Level API  7-4 サイドチャネル  7-5 カスタムサイドチャネル

強化学習と深層学習 C言語によるシミュレーション

小高 知宏
オーム社
おすすめ度
61
紹介文
強化学習と深層学習の基礎を紹介した上で、深層強化学習のしくみを具体的に説明。実際にC言語のプログラムとして実装できる。 人工知能研究における諸分野を、C 言語による具体的な処理手続きやプログラム例によりやさしく解説する!!  強化学習は、一連の行動の結果だけから行動知識を学習する手法です。 本書では、この強化学習と深層学習の基礎を紹介した上で、深層強化学習のしくみを具体的に説明します。単に概念を説明するだけでなく、アルゴリズムを実際にC言語のプログラムとして実装することで、実際にプログラムを動かすことで具体的な処理方法の理解を深めます。 第1章 強化学習と深層学習 第2章 強化学習の実装 第3章 深層学習の技術 第4章 深層強化学習

実装 強化学習: Cによるロボットプログラミング

一之, 伊藤
オーム社
おすすめ度
61
紹介文
強化学習の基礎からロボットへの実装までを解説した実務書。プログラミングはC言語で、ロボットへの実装までを解説。 強化学習の基礎からロボットへの実装までがわかる!!  本書は、強化学習の基礎からロボットへの実装までを解説した実務書です。プログラミングは、C言語でロボットへの実装までが解説された、実践的な内容となっております。ロボットへの実装は、誰でも購入できるライントレースロボットを使った例と、ソフトロボット(柔らかい素材を使ったロボット)を使った例で、具体的な方法を解説しています。 1章 人工知能とロボット 2章 強化学習 3章 C言語による強化学習のプログラミング 4章 ロボットへの実装 付録 Excelによる学習結果の可視化

ロボットインテリジェンス―進化計算と強化学習 (図解ロボット技術入門シリーズ)

一之, 伊藤
オーム社
おすすめ度
61
紹介文
1章 人工知能とロボット(知能とは何か 知能ロボット) 2章 進化計算(進化計算とロボット 遺伝的アルゴリズムとは ほか) 3章 強化学習(強化学習とロボット Q学習とは ほか) 4章 GAのプログラム(キリン型ロボット 各関数の統合とキリン型ロボットへの適用) 5章 Q学習のプログラム(基本例題 異なる例題への適用)

強くなるロボティック・ゲームプレイヤーの作り方 プレミアムブックス版 ~実践で学ぶ強化学習~

八谷 大岳
マイナビ出版
おすすめ度
61

Autoware :自動運転ソフトウェア入門

安積 卓也
リックテレコム
おすすめ度
61
紹介文
Autowareは、一般道での自動運転を可能とするソフトウェアプラットフォームです。 名古屋大学を中心に開発され、2015年、世界に先がけてオープンソースとして公開され ました。 本書は、自動運転システムの入門エンジニア向けに、Autowareを利用するにあたって必須 の機能とその使い方を解説しました。専用の自動運転車両を用いなくても、rosbag(実証実 験などのデータを蓄える仕組み)を利用することで、PC上で実データを用いたシミュレーション ができる内容となっています。 (シミュレーションには、一定の性能を備えたPCが必要となります。) レベル4、5段階での実用化が見えて来た来た現在、自動運転システムに興味のあるエンジニアに お奨めの一冊です。 ◆目次◆ 第1章 はじめに 第2章 Autowareの概要 第3章 環境構築 第4章 ROS 第5章 Autoware の立ち上げ 第6章 自己位置推定 第7章 環境認識 第8章 経路生成と経路計画 第9章 経路追従 第10章 事例紹介

Reinforcement Learning: An Introduction (Adaptive Computation and Machine Learning series)

Sutton, Richard S.
A Bradford Book
おすすめ度
61
紹介文
Reinforcement learning, one of the most active research areas in artificial intelligence, is a computational approach to learning whereby an agent tries to maximize the total amount of reward it receives when interacting with a complex, uncertain environment. In Reinforcement Learning, Richard Sutton and Andrew Barto provide a clear and simple account of the key ideas and algorithms of reinforcement learning. Their discussion ranges from the history of the field's intellectual foundations to the most recent developments and applications. The only necessary mathematical background is familiarity with elementary concepts of probability. The book is divided into three parts. Part I defines the reinforcement learning problem in terms of Markov decision processes. Part II provides basic solution methods: dynamic programming, Monte Carlo methods, and temporal-difference learning. Part III presents a unified view of the solution methods and incorporates artificial neural networks, eligibility traces, and planning; the two final chapters present case studies and consider the future of reinforcement learning.

Reinforcement Learning, second edition: An Introduction (Adaptive Computation and Machine Learning series)

Sutton, Richard S.
Bradford Books
おすすめ度
61

速習 強化学習 ―基礎理論とアルゴリズム―

Csaba Szepesvari
共立出版
おすすめ度
61
紹介文
 GoogleのAlphaGoによるプロ棋士打破は,人工知能がヒトを超えた学習を行った歴史的出来事として認識された。強化学習はここで重要な役割を果たしてているだけでなく,自動運転やロボット制御などの重要な分野への応用も知られ,いま世間の強い関心を集めている。その一方,日本語で強化学習を体系的に学べる教科書は多くはなく,代表的な教科書であるSutton and Barto (1998)とその訳書も出版から20年が経とうとしている。  本書はトップ会議のチュートリアルで利用されたり,2010年の出版以降わずか数年で500弱の引用がされたりという事実からも窺えるように,入門書として広く読まれている良書である。本書の内容は動的計画法などの基本的かつ重要なアルゴリズムに始まり,比較的新しい手法も体系的に網羅しつつもコンパクトに自己完結している。原著の出版から7年あまり経つが,近年の発展は本書で掲載されたアルゴリズム・アイデアをその基礎においている。特に本書では,深層学習を利用した深層強化学習を含む最近の発展に,本書で紹介されたアルゴリズムがどのように使われているかを解説した訳者補遺を追加することで,本書と最先端の研究との橋渡しをしている。 第1章 マルコフ決定過程 1.1 本書の表記と前提とする知識 1.2 マルコフ決定過程 1.3 価値関数 1.4 MDPを解くための動的計画法 第2章 価値推定問題 2.1 有限な状態空間でのTD学習  2.1.1 テーブルTD(0)法  2.1.2 逐一訪問モンテカルロ法  2.1.3 TD(λ)法: モンテカルロ法とTD(0)法の統一 2.2 大規模状態空間でのアルゴリズム  2.2.1 関数近似を用いたTD(λ)法  2.2.2 勾配TD学習 (gradient temporal difference learning)  2.2.3 最小二乗法  2.2.4 関数空間の選択 第3章 制御 3.1 学習問題一覧 3.2 閉ループでの対話型学習  3.2.1 バンディット問題における探索活用並行学習  3.2.2 バンディット問題における純粋探索学習  3.2.3 マルコフ決定過程における純粋探索学習  3.2.4 マルコフ決定過程における探索活用並行学習 3.3 直接法  3.3.1 有限MDPにおけるQ学習  3.3.2 関数近似器を用いたQ学習 3.4 Actor-critic法  3.4.1 Criticの実装  3.4.2 Actorの実装 第4章 さらなる勉強のために 4.1 参考文献 4.2 応用 4.3 ソフトウェア 4.4 謝辞 付録A 割引マルコフ決定過程の理論 A.1 縮小写像とバナッハの不動点定理 A.2 MDPへの適用 付録B TD(λ)法の前方観測的な見方と後方観測的な見方について 付録C 深層強化学習を含む最近の発展 C.1 深層強化学習のための深層学習  C.1.1 ニューラルネットワークを用いた関数近似  C.1.2 CNN (convolutional neural network) C.2 価値反復に基づく強化学習アルゴリズムにおける発展  C.2.1 DQN (deep Q-network)  C.2.2 Double DQN  C.2.3 デュエリングネットワーク (dueling network)  C.2.4 優先順位付き経験再生 (prioritized experience replay) C.3 方策反復に基づく強化学習アルゴリズムにおける発展  C.3.1 A3C (asynchronous advantage actor-critic)  C.3.2 TRPO (trust region policy optimization)  C.3.3 GAE (generalized advantage estimator) C.4 深層強化学習の囲碁AIへの応用: AlphaGo  C.4.1 強化学習問題としての囲碁  C.4.2 深層ニューラルネットワークの学習  C.4.3 深層ニューラルネットワークを使ったモンテカルロ木探索法による着手の選択 C.5 おわりに 参考文献 索 引

倒立振子の作り方ゼロから学ぶ強化学習―物理シミュレーション×機械学習

遠藤 理平
カットシステム
おすすめ度
61

学習とそのアルゴリズム POD版―ニューラルネットワーク・遺伝アルゴリズム・強化学習

電気学会GAニューロを用いた学習とその応用調査専門委員会
森北出版
おすすめ度
61
紹介文
(初版2002年8月刊行) 「ニューラルネットワーク」「遺伝アルゴリズム」「強化学習」「ファジィニューロ」「学習オートマトン」をキーワードに,応用面につながるように,また一部には応用例を示し,専門書数冊分に及ぶ横断的な最新の成果や知見をまとめた書.

岩波講座 ロボット学〈4〉ロボットインテリジェンス

浅田 稔
岩波書店
おすすめ度
61
紹介文
ロボット学の核心は、人間的知能の創造と理解にある。環境との相互作用を通して学習、発達、進化し、行動する知能ロボット。その実現には、いったい何が必要なのか?本書は、「ロボットの知能」の新しい考え方を初めて体系化したテキストである。認知発達ロボティクスの旗手が書き下ろす、待望の一冊。 1 ロボット知能は何を目指すか? 2 反応行動のための知能 3 計画行動のための知能 4 適応行動のための知能 5 協調行動のための知能 6 行為理解のための知能 7 人間的知能の構成に向けて

PyTorchニューラルネットワーク実装ハンドブック (Pythonライブラリ定番セレクション)

圭一郎, 宮本
秀和システム
おすすめ度
61
紹介文
本書は実例を交えて、畳み込み/リカレント/敵対的生成ネットワーク(GAN/LSGAN/CGAN)、物体検出など解説します。 PyTorchはニューラルネットワークを構築できる深層学習フレームワークで、データの流れを動的に定義することができる「Define by Run」を採用しています。本書は、画像や文書の分類処理について学べるように、畳み込みネットワークからリカレントネットワーク、敵対的生成ネットワーク(GAN/LSGAN/CGAN)、物体検出までを実例を交えて体系的に解説します。 第1章 PyTorchと開発環境 第2章 PyTorchの基礎 第3章 PyTorchを使ったニューラルネット基礎 第4章 畳み込みネットワーク 第5章 リカレントニューラルネットワーク 第6章 敵対的生成ネットワーク 第7章 物体検出 第8章~第11章 各種パッケージ(torchパッケージ、torch.nnパッケージ、torch.optimパッケージ、torchvisionパッケージ)

現場で使える! TensorFlow開発入門 Kerasによる深層学習モデル構築手法

太田 満久
翔泳社
おすすめ度
61
紹介文
TensorFlow(テンソルフロー)の基本から開発手法まで徹底解説! 【本書の特徴】 2015年11月にGoogleがオープンソース化したソフトウェアライブラリ「TensorFlow(テンソルフロー)」は、 多くの開発者に支持され、多企業で採用されています。 本書は、TensorFlowの導入から、高レベルAPIであるKerasを利用した実践的な深層学習モデルまで解説した、 エンジニア向けの入門書です。第1部の基本編では、深層学習とTensorFlow、Kerasの基礎について解説し、 第2部の応用編では画像処理における応用的なモデルのKerasを使った実装方法を解説します。 特に、第2部では、「ノイズ除去」「自動着色」「超解像」「画風変換」「画像生成」を取り上げています。 TensorFlowやKerasの機能面を押さえつつ、現場で使用できるような実践的な深層学習モデルまでフォローしています。 【対象読者】 深層学習に入門したいエンジニア 【目次】 第1部 基本編 第1章 機械学習ライブラリTensorFlowとKeras 第2章 開発環境を構築する 第3章 簡単なサンプルで学ぶTensorFlowの基本 第4章 ニューラルネットワークとKeras 第5章 KerasによるCNNの実装 第6章 学習済みモデルの活用 第7章 よく使うKerasの機能 第2部 応用編 第8章 CAEを使ったノイズ除去 第9章 自動着色 第10章 超解像 第11章 画風変換 第12章 画像生成 第1部 基本編 第1章 機械学習ライブラリTensorFlowとKeras 第2章 開発環境を構築する 第3章 簡単なサンプルで学ぶTensorFlowの基本 第4章 ニューラルネットワークとKeras 第5章 KerasによるCNNの実装 第6章 学習済みモデルの活用 第7章 よく使うKerasの機能 第2部 応用編 第8章 CAEを使ったノイズ除去 第9章 自動着色 第10章 超解像 第11章 画風変換 第12章 画像生成

PythonとKerasによるディープラーニング

Francois Chollet
マイナビ出版
おすすめ度
61
紹介文
AIの大衆化―多くの人々がディープラーニングを利用できるよう実践解説! AIの大衆化―多くの人々がディープラーニングを利用できるよう実践解説! PythonベースのディープラーニングフレームワークKerasの開発者である筆者が、1人でも多くの人々がディープラーニングを利用できるよう実践解説します。 本書はディープラーニングを一から学習したいと考えている人のために書かれています。数学的な表記を避け、代わりにコードを使って定量的な概念を説明することで、機械学習とディープラーニングの基本的な考えについて実践的な知識を養っていきます。 サンプルコードはPythonベースのディープラーニングフレームワークであるKerasに基づいており、バックエンドエンジンとしてTensorFlowを使用しています。 Part 1では、ディープラーニングを大まかに紹介。機械学習とニューラルネットワークを囲む状況といくつかの定義を示し、取り組みを開始するために必要な概念を説明します。 第1章:人工知能(AI)、機械学習、ディープラーニングの基本的なコンテキストと予備知識を提供。 第2章:ディープラーニングに取り組むために必要な基本概念(テンソル、テンソル演算、勾配降下法、バックプロパゲーション)を紹介。 第3章:ディープラーニングフレームワークであるKerasの紹介。分類タスクと回帰タスクを処理する単純なニューラルネットワークの訓練と内部で何が起きているのかが理解できる。 第4章:機械学習の一般的なワークフローとよくある落とし穴・解決法を詳解。 Part 2では、ディープラーニングの実践的な応用例としてコンピュータビジョンと自然言語処理を詳しく見ていきます。サンプルの多くは、ディープラーニングを実務で使用するときに遭遇する問題を解決するためのテンプレートとして利用できます。 第5章:画像分類に焦点を合わせ、コンピュータビジョンの実践的な例を幅広く取り上げる。 第6章:テキストや時系列といったシーケンスデータを処理するための手法を実際に試してみる。 第7章:最先端のディープラーニングモデルを構築するための高度な手法を紹介。 第8章:画像やテキストを作成する能力を持つディープラーニングモデルであり、驚くほど芸術的な結果をもたらすことがあるジェネレーティブモデルの紹介。 第9章:本書の総括。ディープラーニングの限界とその未来を予測。 本書を最後まで読めば、ディープラーニングとは何か、適用できるのはどのような状況か、その制限についてしっかり理解できるはずです。コンピュータビジョンから自然言語処理、画像分類、時系列予測、感情分析、画像/ テキスト生成に至るまで、現実の幅広い問題にKerasを使用できるようになり、最高の短期集中コースとして活用できます。 まえがき 謝辞 監訳者より 本書について カバーについて 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を使用する

詳解 ディープラーニング ~TensorFlow・Kerasによる時系列データ処理~

巣籠 悠輔
マイナビ出版
おすすめ度
61
紹介文
本書はディープラーニング、ニューラルネットワークについての予備知識がなくても学習を進められるようゼロから丁寧に、理論とその実装について解説します。 実装にはPythonのディープラーニング向けのライブラリ、TensorFlow (1.0) およびKeras (2.0) を用います。 「ディープラーニングについて何となくわかってはいるけれど、もう少し理解を深めたい」「画像認識だけでなく、時系列データを分析するためのモデルについても学びたい」という方にとって、学びの役に立つのではないかと思います。 単純パーセプトロンにはじまり、多層パーセプトロン、ディープニューラルネットワーク、リカレントニューラルネットワークなど多くの手法について学びます。扱うデータの種類ごとに考えるべき課題も異なり、それに合わせてネットワークも様々な形に変化させ学習を進めます。 ディープラーニングは1つひとつのテクニックの積み重ねであり、その根底にあるのは「人間の脳をどう数式やアルゴリズムで表現できるか」です。本書で学んできた土台となる理論さえきちんと理解していれば、今後どのようなディープラーニングの手法が出てこようとも、すぐに理解し使いこなせるようになるでしょう。そして、自身で新たなモデルを考え出すこともできるはずです。 [本書の構成] 1章では、ニューラルネットワークの理論を学習するうえで必要となる数学の知識について簡単におさらいし、続く2章では、実装に向けてのPython開発環境のセットアップ、およびPythonライブラリの簡単な使い方を扱います。 3章からは、いよいよニューラルネットワークの学習に入っていきます。3章ではその基本形について学び、4章ではディープニューラルネットワーク、いわゆるディープラーニングについて学びます。通常のニューラルネットワークと何が違うのか、どのようなテクニックが用いられているのかを実装を交えて理解します。 5、6章では、時系列データを扱うためのモデルであるリカレントニューラルネットワークについて詳しく学んでいきます。5章では、リカレントニューラルネットワークの基本形を簡単なデータ例を用いて理論・実装について学び、6章ではその応用例について扱います。

Practical Reinforcement Learning

Akhtar, Dr. Engr. S.M. Farrukh
Packt Publishing
おすすめ度
61

Hands-On Reinforcement Learning with Python: Master reinforcement and deep reinforcement learning using OpenAI Gym and TensorFlow

Ravichandiran, Sudharsan
Packt Publishing
おすすめ度
61

Pro Deep Learning with TensorFlow: A Mathematical Approach to Advanced Artificial Intelligence in Python

Pattanayak, Santanu
Apress
おすすめ度
61
search