Software Design plus AIエンジニアを目指す人のための 機械学習入門 実装しながらアルゴリズムの流れを学ぶ
- 電通国際情報サービス 清水琢也,小川雄太郎 著
- 定価
- 3,058円(本体2,780円+税10%)
- 発売日
- 2020.4.13 2020.4.1
- 判型
- B5変形
- 頁数
- 256ページ
- ISBN
- 978-4-297-11209-7 978-4-297-11210-3
概要
機械学習はAI(人工知能)の基礎技術です。今後AIの利活用が進むにつれて、機械学習をコンピュータシステムに組み込んでビジネスに活用できる人材(本書ではAIエンジニアと呼称します)がますます求められます。
機械学習には目的に応じたいくつかの手法が存在します。それらの手法を正しく使えるようになるために、本書はAIエンジニアが理解しておきたいレベルの深さで、各手法のアルゴリズム(動作原理)を丁寧に解説します。とくにアルゴリズムの目的や意味を理解できることをめざします。(アルゴリズムの背景にある高度な数学・統計学の理論についての説明は必要最小限にとどめ、)まずはプログラムを書いて動かし、その結果を見ながらアルゴリズムの長所・短所や、性能をチューニングするためのコツを学びます。
機械学習プログラムの作成には、プログラミング言語「Python」と機械学習ライブラリ「scikit-learn」を使用します。作成したプログラムは、クラウドサービス「Google Colaboratory」や手元のパソコンに構築する「Jupyter Notebook」の環境で簡単に動かせます。
こんな方にオススメ
- 機械学習・AI(人工知能)技術を学ぶエンジニアや学生
- これから機械学習システムの開発に携わる人
目次
第1章 機械学習の概要と本書の進め方
- 1.1 本章の目的と概要
- 1.2 機械学習の概要と3つの分類
- 従来の人工知能型システムと機械学習システムの違い
- 機械学習の3つの分類(教師あり学習,教師なし学習,強化学習)
- 1.3 機械学習の各手法の動作原理(アルゴリズム)を学ぶ意義
- 1.4 機械学習の勉強方法
- 機械学習に必要な知識・スキル
- 機械学習の勉強を効率的に進めるコツ
- 1.5 本書で使用するライブラリと実行環境
- 機械学習を実装する環境を整える方法
第2章 実装しながら学ぶアルゴリズムのこころ・教師あり学習編
- 2.1 本章の目的と概要
- 2.2 最小二乗法による線形回帰
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(線形回帰モデルのこころ)
- 終わりに(線形回帰モデルの使用上の注意)
- 2.3 L1正則化,L2正則化による過学習の抑制
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(正則化モデルのこころ)
- 終わりに(L1正則化とL2正則化の使い分け)
- 2.4 ロジスティック回帰によるクラス分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(ロジスティック回帰のこころ)
- 終わりに
- 2.5 SVCによるクラス分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(LinearSVCのこころ)
- 終わりに
- 2.6 決定木によるクラス分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(決定木のこころ)
- 終わりに
- 2.7 ランダムフォレストによるクラス分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(ランダムフォレストのこころ)
- 終わりに(ランダムフォレストの使用上の注意)
- 2.8 Naive Bayesによるテキストデータの分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(Naive Bayesのこころ)
- 終わりに
第3章 実装しながら学ぶアルゴリズムのこころ・教師なし学習編
- 3.1 本章の目的と概要
- 3.2 主成分分析による次元圧縮
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(主成分分析のこころ)
- 終わりに
- 3.3 k-meansによるクラスタリングとデータ前処理
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(k-meansのこころ)
- 終わりに
- 3.4 ガウス混合モデル(GMM)によるクラスタリング
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(ガウス混合モデルのこころ)
- 終わりに
第4章 実装しながら学ぶアルゴリズムのこころ・発展編
- 4.1 本章の目的と概要
- 4.2 勾配ブースティング決定木によるクラス分類
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(勾配ブースティング決定木のこころ)
- 終わりに
- 4.3 エルボー法とシルエット分析によるクラスタ数の探索
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行(エルボー法)
- アルゴリズムの詳細な解説(エルボー法のこころ)
- プログラムの実装と実行(シルエット分析)
- アルゴリズムの詳細な解説(シルエット分析のこころ)
- 終わりに
- 4.4 t-SNEによる次元圧縮(多様体学習)
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行
- アルゴリズムの詳細な解説(t-SNEのこころ)
- 終わりに
- 4.5 異常検知(Novelty Detection,Outlier Detection)
- アルゴリズムの基本的な流れ,概要
- プログラムの実装と実行(Novelty Detection:特異点検知)
- プログラムの実装と実行(Outlier Detection:外れ値検知)
- 終わりに
第5章 機械学習システムの構築フローとモデルの性能評価
- 5.1 本章の目的と概要
- 5.2 ビジネス理解
- 目的の明確化
- 業務フローの作成
- データの検討
- 目標設定
- 5.3 データ加工
- データチェック
- データクリーニング
- データ前処理
- 5.4 モデリング
- アルゴリズム策定
- 特徴量エンジニアリング
- データ分割
- 学習と評価
- 5.5 デプロイと運用
- システムへの組み込み
- システム性能の検証
- ハンドオフ
- 運用・保守
- 終わりに
付録
- A.1 Google Colaboratoryの利用方法
- サンプルコード(既存のipynbファイル)の利用
- A.2 ローカルPCに機械学習の実装・実行環境を整える方法
- Python実行環境Anacondaのインストール
- 機械学習に必要なライブラリのインストール
- Jupyter Notebookのインストールと起動
- サンプルコード(既存のipynbファイル)の利用
- ノートブックの保存とシャットダウン
プロフィール
清水琢也
電通国際情報サービス X(クロスイノベーション)本部・オープンイノベーションラボ、AIテクノロジー部に所属。ディープラーニングをはじめとした機械学習関連技術の社会課題への応用、研究開発、およびデータ解析業務を担当。関西学院高等部、関西学院大学理工学部を経て、関西学院大学大学院、岡留研究室にて確率的生成モデルの研究に従事。2016年4月より現職。
GitHub:shimitaku
小川雄太郎
電通国際情報サービス X(クロスイノベーション)本部・AIテクノロジー部に所属。ディープラーニングをはじめとした機械学習関連技術の研究開発、コンサルティング、ソリューション開発、産学連携に従事。明石工業高等専門学校、東京大学工学部を経て、東京大学大学院、神保・小谷研究室にて脳機能計測および計算論的神経科学の研究に従事し、2016年に博士号(科学)を取得。東京大学特任研究員を経て、2017年4月より現職。本書のほかに、『つくりながら学ぶ!PyTorchによる発展ディープラーニング』(マイナビ出版、2019年7月)なども執筆。
GitHub:YutaroOgawa
Qiita:https://qiita.com/sugulu