ISBN 9784798166575
Python3年生 機械学習のしくみ 体験してわかる!会話でまなべる!
概要
Python入門者が機械学習の基礎アルゴリズムを手を動かして学ぶ
想定読者
Python1年生・2年生シリーズを読み終えた初学者、または機械学習をゼロから体験したいプログラミング入門者
こんな人には向いていない
- すでにscikit-learnで複数アルゴリズムを実装した経験がある人には基礎の比重が大きい
- 数学的な理論(確率・線形代数)を中心に学びたい人には説明が浅い
- ディープラーニング・ニューラルネットワークを主目的とする人はシリーズの別巻が適切
読了後にできるようになること
- scikit-learnの基本的なAPIパターン(fit/predict/score)を使って分類・回帰モデルを構築できる
- 線形回帰・ロジスティック回帰・SVM・決定木・ランダムフォレスト・k-NNの各アルゴリズムの特徴と使い分けを説明できる
- データを学習用とテスト用に分割し、モデルの汎化性能を評価する手順を実施できる
- k-meansによる教師なしクラスタリングの概念と実装を理解できる
- 手書き数字認識など実用的なタスクへ機械学習パイプラインを適用できる
- 分類境界を可視化し、モデルの学習状態を直感的に把握できる
本書のキー概念(章解説)
- 第 1 章 機械学習の準備 — 機械学習の概念整理とscikit-learn環境構築。シリーズ未読者も本章から入れる
- 第 2 章 サンプルデータを見てみよう — scikit-learnの組み込みデータセットと人工データ生成を体験し、データ感覚を養う
- 第 3 章 機械学習の手順を理解しよう — データ分割→学習→テスト→予測→可視化の一連フローを繰り返し体験する中核章
- 第 4 章 機械学習のいろいろなアルゴリズム — 7アルゴリズムを横断比較できる。まず決定木とランダムフォレストを押さえると実務感覚がつかみやすい
- 第 5 章 チノふたたび! 画像から数字を予測しよう — 手書き数字認識という具体的な実用タスクで締めくくる。教師なし学習との組み合わせも体験できる
ハイライト
- サンプルを動かしながら、機械学習のしくみについて楽しく学ぶことができます。ヤギ博士とフタバちゃんの会話形式で、いちからやさしく解説します。(本書の学習スタイルを端的に示す一節。対話形式と実動サンプルの組み合わせが本書の独自性)
外部からの言及
- 複数のQiita記事でPythonXX年生シリーズのうちの一冊としてリストアップされており、入門から機械学習へ進む際の読書ルート例として並列紹介されることが多い(qiita)
編集メモ
Qiita言及3件 / 累計likes 2 / いずれも書籍リスト掲載のみで実務引用なし。Python入門シリーズの補完的な一冊として位置づけられる
読む前に押さえておきたいこと
- Python基本文法(変数・リスト・関数・クラス)の操作経験
- NumPyとMatplotlibの基礎的な使い方(Python2年生データ分析編相当)
- 機械学習の予備知識は不要だが、数値データを扱ったことがある程度の経験があると読み進めやすい
学習のコツ
- 第3章の『機械学習の手順』を繰り返し参照しながら第4章の各アルゴリズムを試すと、手順の共通パターンが定着しやすい
- 第4章は全7アルゴリズムを網羅するが、初読では決定木とランダムフォレスト(15・16節)を優先するとその後の選択眼が育つ
- 第5章の手書き数字認識は単独プロジェクトとして実行し、自分のデータに差し替える実験をすると応用力が身につく
- 翔泳社公式サイトに正誤表とサンプルコードが公開されているため、環境差異によるエラーはまず正誤表を確認する
出版社による内容紹介
ヤギ博士・フタバちゃんと一緒に 機械学習のしくみを学ぼう! 【機械学習をいちから学んでみよう!】 「最近よく耳にする人工知能と機械学習について知りたい」 「機械学習ってどのようなことをするの?」 と思っている方は多いと思います。 本書はそうした方に向けて「機械学習」について いちからやさしく解説します。 【Python3年生について】 「Python1年生」「Python2年生」を読み終えた方を対象とした入門書です。 (※「Python3年生」から初めて学ぶ方でもわかるように工夫しています) 【読者対象】 機械学習の初心者 【本書のポイント】 ヤギ博士&フタバちゃんと一緒に、 機械学習のしくみについて、 サンプルを動かしながら、 楽しく学ぶことができます。 【著者プロフィール】 森 巧尚(もり・よしなお) アプリの開発や、技術書や電子工作マガジンなどでの執筆活動。 関西学院大学非常勤講師、関西学院高等部非常勤講師、 成安造形大学非常勤講師、大阪芸術大学非常勤講師、プログラミングスクールコプリ講師など、 プログラミングに関する幅広い活動を行っている。 近著に『Python1年生』、『Python2年生 スクレイピングのしくみ』、『Python2年生 データ分析のしくみ』、 『Java1年生』、『動かして学ぶ! Vue.js開発入門』(いずれも翔泳社)、 『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版)などがある。 第1章 機械学習の準備 01 機械学習ってなんだろう? 02 分けることは、わかること 03 機械学習の準備をしよう 第2章 サンプルデータを見てみよう 04 scikit-learn のサンプルデータセット 05 サンプルデータセットを自動生成しよう 第3章 機械学習の手順を理解しよう 06 データを用意する 07 データを学習用とテスト用に分ける 08 モデルを選んで、学習する 09 モデルをテストする 10 新しい値を渡して、予測する 11 分類の状態を可視化しよう 第4章 機械学習のいろいろなアルゴリズム 12 回帰:線形回帰 13 分類:ロジスティック回帰 14 分類:SVM(サポートベクターマシン) 15 分類:決定木 16 分類:ランダムフォレスト 17 分類:k-NN(k 近傍法) 18 クラスタリング:k-means(k 平均法) 第5章 チノふたたび! 画像から数字を予測しよう 19 データを準備する 20 学習データを準備する 21 学習させる 22 予測させる 23 教師なし学習を利用して、データをイメージしよう 24 さらに先へ進もう
この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。