Software Design plusシリーズAIエンジニアを目指す人のための 機械学習入門 実装しながらアルゴリズムの流れを学ぶ
2020年4月13日紙版発売
2020年4月1日電子版発売
電通国際情報サービス 清水琢也,小川雄太郎 著
B5変形判/256ページ
定価3,058円(本体2,780円+税10%)
ISBN 978-4-297-11209-7
書籍の概要
この本の概要
機械学習は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ファイル)の利用
- ノートブックの保存とシャットダウン
この本に関連する書籍
-
[改訂新版]ITエンジニアのための機械学習理論入門
機械学習を基礎から理論的に学びたい,そんなITエンジニアに向けて執筆された本です。初版から約5年が経過し,全面カラー化して「改訂新版」としました。Pythonのコーデ...
-
Pythonによる問題解決のためのアルゴリズム設計技法
本書(原題:Python Algorithms: Mastering Basic Algorithms in the Python Language)はアルゴリズムの分析と設計方法について,Pythonを使って説明します。古典的な...
-
ITエンジニアのための強化学習理論入門
前作の『ITエンジニアのための機械学習理論入門』から,5年経過しましたが,AI(人工知能)や機械学習に対しての期待と関心はまったく衰えません。むしろ機械学習の利用...
-
楽しいAI体験から始める機械学習 ~算数・数学をやらせてみたら~
AIを使えばこれからの世界での生き方・働き方が大きく変わるはずです。AIは,Excelを使うことさえできれば,数学もプログラミングもなしで無料で作ることができるのです...
-
わけがわかる機械学習 ─現実の問題を解くために、しくみを理解する
機械学習が話題に上ることも増えてきましたが,実際には手っ取り早くできるものではなく,ライブラリを使うだけではやりたいことをうまく実現できません。もとになる考...
-
Pythonによるはじめての機械学習プログラミング[現場で必要な基礎知識がわかる]
人工知能(AI)・機械学習と言ったバズワードを見ることは多くなりましたが,まだまだデータ解析のハードルは高いと考えられています。特に機械学習の入門書には高度な理...
-
ITエンジニアのための機械学習理論入門
現在話題となっている機械学習(Machine Learning)のツールやライブラリは内部でどのような計算をしているのか? 計算で得られた結果にはどのような意味があり,どの...