PythonによるAIプログラミング入門-ディープラーニングを始める前に身につけておくべき15の基礎技術


PythonによるAIプログラミング入門 ―ディープラーニングを始める前に身につけておくべき15の基礎技術


オライリー・ジャパン


著者:Prateek Joshi
訳者:相川愛三


訳者まえがき
まえがき

1章 人工知能の概要
1.1 人工知能とは?
1.2 なぜAIを学ぶ必要があるのか?
1.3 AIの応用例
1.4 AIの分派
1.5 チューリングテストによる知性の定義
1.6 人間のように考える機械
1.7 合理的なエージェント
1.8 一般問題解決器
1.8.1 GPSによる問題の解法
1.9 知的エージェント
1.9.1 モデルの種類
1.10 Python 3のインストール方法
1.10.1 Ubuntu
1.10.2 macOS
1.10.3 Windows
1.11 パッケージのインストール
1.12 データの読み込み

2章 教師あり学習を用いた分類と回帰
2.1 教師あり学習と教師なし学習
2.2 分類とは?
2.3 データの前処理
2.3.1 二値化
2.3.2 平均値を引く
2.3.3 スケーリング
2.3.4 正規化
2.4 ラベルのエンコーディング
2.5 ロジスティック回帰による分類器
2.6 単純ベイズ分類器
2.7 混同行列
2.8 サポートベクターマシン
2.9 SVMを使った所得データの分類
2.10 回帰とは?
2.11 1変数の回帰モデル
2.12 多変数の回帰モデル
2.13 多項式回帰モデル
2.14 サポートベクター回帰を用いた住宅費の推定

3章 アンサンブル学習を用いた予測分析
3.1 アンサンブル学習とは?
3.1.1 アンサンブル学習
3.2 決定木とは?
3.3 決定木を用いる分類器
3.4 ランダムフォレストとERTとは?
3.4.1 ランダムフォレストとERTによる分類器
3.4.2 予測の確信度の推定
3.5 クラスの不均衡への対処
3.6 グリッドサーチを用いたパラメータ最適化
3.7 特徴量の相対重要度
3.8 ERT回帰モデルを使った交通量予測

4章 教師なし学習を用いたパターン検出
4.1 教師なし学習とは?
4.2 k-平均法を用いたクラスタリング
4.3 Mean Shiftアルゴリズムを用いたクラスタ数推定
4.4 シルエットスコアを用いたクラスタリングの品質推定
4.5 混合ガウスモデルとは?
4.6 混合ガウスモデルに基づくクラスタリング
4.7 Affinity Propagationモデルを使った株式市場のサブグループ検出
4.8 購買パターンに基づくマーケットのセグメント分け

5章 推薦エンジンを作る
5.1 訓練パイプライン
5.2 最近傍点の抽出
5.3 k-近傍分類器
5.4 類似度の計算
5.5 協調フィルタを用いた類似ユーザーの検索
5.6 映画推薦システム

6章 論理プログラミング
6.1 論理プログラミングとは?
6.2 論理プログラミングの構成要素
6.3 論理プログラミングを用いた問題解法
6.4 Pythonパッケージのインストール
6.5 数式の照合
6.6 素数の判定
6.7 家系図の解析
6.8 地理の解析
6.9 パズルの解法

7章 ヒューリスティック探索
7.1 ヒューリスティック探索とは?
7.1.1 情報あり探索と情報なし探索
7.2 制約充足問題
7.3 局所探索手法
7.3.1 焼きなまし法
7.4 貪欲法を用いた文字列の構築
7.5 制約を用いた問題解法
7.6 4色問題の解法
7.7 8パズルの解法
7.8 迷路の解法

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 easyAIライブラリのインストール
9.7 コイン取りゲーム
9.8 三目並べ
9.9 『Connect Four』
9.10 『Hexapawn』

10章 自然言語処理
10.1 自然言語処理の概説とパッケージのインストール
10.2 テキストデータのトークン化
10.3 ステミングによる単語の基本形変換
10.4 レンマ化による単語の基本形変換
10.5 テキストデータのチャンク分割
10.6 BoWモデルを用いた文書の単語行列抽出
10.7 カテゴリ推定器
10.8 名前からの性別判定
10.9 感情分析器
10.10 LDAを使ったトピックモデル

11章 連続データの確率的推論
11.1 連続データとは?
11.2 Pandasによる時系列データ処理
11.3 時系列データのスライス
11.4 時系列データの演算
11.5 時系列データからの統計量抽出
11.6 隠れマルコフモデルを用いたデータ生成
11.7 CRFを用いたアルファベット列の識別
11.8 株式市場分析

12章 音声認識
12.1 音声信号の扱い方
12.2 音声信号の可視化
12.3 音声信号の周波数領域変換
12.4 音声信号の生成
12.5 音楽生成のための音階合成
12.6 音声特徴量の抽出
12.7 発話語の認識

13章 物体検出と追跡
13.1 OpenCVのインストール
13.2 Jupyter Notebookでの画像表示
13.3 フレーム差分
13.4 色空間を用いた物体検出
13.5 背景差分による動物体検出
13.6 CAMShift法によるインタラクティブな物体追跡
13.6.1 追跡領域の指定
13.6.2 物体追跡
13.7 オプティカルフローに基づく物体追跡
13.8 顔検出
13.8.1 Haarカスケードを用いた物体検出
13.8.2 積分画像を用いた特徴量抽出
13.9 目の検出

14章 人工ニューラルネットワーク
14.1 ニューラルネット入門
14.1.1 ニューラルネットの構築
14.1.2 ニューラルネットの訓練
14.2 パーセプトロンに基づく分類器
14.3 単層ニューラルネット
14.4 多層ニューラルネット
14.5 ベクトル量子化
14.6 RNNを用いた連続データ解析
14.7 OCRデータの可視化
14.8 OCRエンジン

15章 強化学習
15.1 強化学習の前提条件
15.2 強化学習と教師あり学習の違い
15.3 強化学習の実例
15.4 強化学習の構成要素
15.5 環境の構築
15.6 学習エージェントの構築
15.7 エージェントの例①
15.8 エージェントの例②

16章 畳み込みニューラルネットを用いたディープラーニング
16.1 畳み込みニューラルネット
16.2 CNNの構造
16.3 CNNの層の種類
16.4 パーセプトロンに基づく線形回帰
16.5 単層ニューラルネットによる画像分類
16.6 CNNを用いた画像分類器

付録A 退屈なことはPythonにやらせよう ―4色問題篇
A.1 領域の番号付け
A.2 隣接領域の探索
A.3 4色問題の解決
A.4 地図の塗り分け

索引

書籍目次

Posted by shi-n