機械学種のエッセンス 実装しながら学ぶPython、数学、アルゴリズム


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


ソフトバンククリエイティブ


著者:加藤公一


はじめに
謝辞
目次

第01章 学習を始める前に
01 本書の目的
02 本書は何を含まないのか
 適切な機械学習アルゴリズムの選び方
 最適な実装
 ディープラーニング(深層学習)
03 機械学習の初歩
04 実行環境の準備
 何をどうインストールするか
 Anacondaのインストール
  Windowsの場合
  macOSの場合
  Linuxの場合
 その他の選択肢
 サンプルのダウンロード
 Column Pythonのバージョンについて

第02章 Pythonの基本
01 プログラムの実行方法
 REPL
  ファイルの実行
 Jupyter Notebook
  プログラムの実行
  ファイルの実行
  グラフの表示
  Jupyter Notebookの終了
02 基本的な文法
 コメント
03 数値と文字列
04 複数行処理
05 制御構造
06 リスト、辞書、集合
 リスト
 タプル
 シーケンス型
 辞書
 集合(Set)
07 関数定義
08 オブジェクト指向
 標準ライブラリの利用
 クラス定義
09 モジュール
 モジュールの作成
10 ファイル操作
 pickleモジュールの利用
 その他のファイル形式
11 例外処理
Column Pythonで何ができるのか

第03章 機械学習に必要な数学
01 基本事項の確認
 集合
 数列
 写像と関数
02 線形代数
 ベクトルの基本
 ベクトルの内積
 ベクトルの幾何的イメージ
 行列の基本
 行列の演算
 ブロック化による演算の効率化
 逆行列と連立方程式
 逆行列と線形独立性
 一次変換
 固有値
 直行行列
 対象行列
03 微積分
 極限
 指数関数
 対数関数
  式03-13の照明
  式03-14の照明
  式03-15の照明
 微分
 多項式の微分
 積・商の微分と高階導関数
 合成関数の微分と逆関数の微分
 指数関数と対数関数の微分
 べき乗の微分
 関数の増減と極大・極小
 不定積分
 定積分
 偏微分と勾配

第04章 Pythonによる数値計算
01 数値計算の基本
 浮動小数点の演算
 演算による桁落ち
 数値範囲の考慮
02 NumPyの基本
 NumPyの配列
 2次元配列
 配列のデータ属性
 reshapeメソッドと形状の変更
 その他の配列の操作
 行列の連結
03 配列の基本計算
 ブロードキャスト
 配列の演算
04 疎行列
05 NumPy/SciPyによる線形代数
06 乱数
 再現性と乱数の種
07 データの可視化
 折れ線グラフ
 散布図
 曲線のグラフ
 複数の線を表示する
 ヒストグラム
 複数のグラフを並べて表示する
 等高線の描画
08 数理最適化
 線形計画問題
 2次計画法
 勾配降下法
 ニュートン法
  数値微分に関する補足
 ラグランジュ未定乗数法
09 統計
 統計基本量
 正規分布と確立密度関数

第05章 機械学習アルゴリズム
01 準備
 入力データについて
 用語
 インターフェース
02 回帰
 原点を通る直線による近似
 一般の直線による近似
 特徴量ベクトルが多次元の場合
 実践的な例
 機械学習アルゴリズムの評価について
03 リッジ回帰
 ハイパーパラメータとチューニング
04 汎化と過学習
 モデルの汎化性能
 交差検証
05 ラッソ回帰
 文献に関するメモ
06 ロジスティック回帰
07 サポートベクタマシン
 分離不可能な場合
 カーネル法
 文献に関するメモ
08 k-Means法
09 主成分分析(PCA)
 多次元への射影と特異値分解
 PCAのアルゴリズム
  参考文献と読書案内

INDEX

書籍目次

Posted by shi-n