機械学習のエッセンス(キカイガクシュウノエッセンス)
実装しながら学ぶ Python 、数学、アルゴリズム
プログラミング- 著者:
- 加藤 公一(カトウ キミカズ)
- 出版社:
- SBクリエイティブ
- 出版日:
- 2018年09月22日頃
- ISBN:
- 9784797393965
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
本書は具体的なデータ分析の手法を説明する意図で書かれたものではありません。
実用的な目的なら scikit-learn や Chainer などの既存のフレームワークを使うべきですが、本書では機械学習のいくつかの有名なアルゴリズムを、自分でゼロから実装することを目標としています。こうすることにより、とかくブラックボックスになりがちな機械学習の仕組みを理解し、さらなる応用力と問題解決力を身につけることができるようになります。
また、処理系にはデファクトスタンダードである Python を使い、機械学習に必要な数学の知識もわかりやすく解説しています。
これから機械学習を始める学生さんや、いきなりプロジェクトに放り込まれていまいち理解できないままデータ分析の仕事をしているエンジニアの方にも最適です。
●目次
はじめに
第 01 章 学習を始める前に
01 本書の目的
02 本書は何を含まないか
03 機械学習の初歩
04 実行環境の準備
第 02 章 Python の基本
01 プログラムの実行方法
02 基本的な文法
03 数値と文字列
04 複数行処理
05 制御構造
06 リスト、辞書、集合
07 関数定義
08 オブジェクト指向
09 モジュール
10 ファイル操作
11 例外処理
第 03 章 機械学習に必要な数学
01 基本事項の確認
02 線形代数
03 微積分
第 04 章 Python による数値計算
01 数値計算の基本
02 NumPy の基本
03 配列の基本計算
04 疎行列
05 NumPy/SciPy による線形代数
06 乱数
07 データの可視化
08 数理最適化
09 統計
第 05 章 機械学習アルゴリズム
01 準備
02 回帰
03 リッジ回帰
04 汎化と過学習
05 ラッソ回帰
06 ロジスティック回帰
07 サポートベクタマシン
08 k-Means 法
09 主成分分析 (PCA)
INDEX
はじめに
第 01 章 学習を始める前に
01 本書の目的
02 本書は何を含まないか
03 機械学習の初歩
04 実行環境の準備
第 02 章 Python の基本
01 プログラムの実行方法
02 基本的な文法
03 数値と文字列
04 複数行処理
05 制御構造
06 リスト、辞書、集合
07 関数定義
08 オブジェクト指向
09 モジュール
10 ファイル操作
11 例外処理
第 03 章 機械学習に必要な数学
01 基本事項の確認
02 線形代数
03 微積分
第 04 章 Python による数値計算
01 数値計算の基本
02 NumPy の基本
03 配列の基本計算
04 疎行列
05 NumPy/SciPy による線形代数
06 乱数
07 データの可視化
08 数理最適化
09 統計
第 05 章 機械学習アルゴリズム
01 準備
02 回帰
03 リッジ回帰
04 汎化と過学習
05 ラッソ回帰
06 ロジスティック回帰
07 サポートベクタマシン
08 k-Means 法
09 主成分分析 (PCA)
INDEX
技書の森解説
『機械学習のエッセンス』は、加藤公一氏による機械学習の数理と実装の解説書で、 SB クリエイティブから 2018 年 9 月に刊行されました。副題は「実装しながら学ぶ Python 、数学、アルゴリズム」。 scikit-learn のような既存ライブラリの使い方を教える本ではなく、回帰やサポートベクタマシンといった代表的なアルゴリズムを、必要な数学の確認から始めて素の Python と NumPy でゼロから実装することを目標に据えた一冊です。版元自身が「具体的なデータ分析の手法を説明する意図で書かれたものではない」と明言しており、機械学習の中身をブラックボックスにしないための本という立ち位置がはっきりしています。
全 5 章の構成、 Python の文法から数学、ゼロ実装へ
構成は全 5 章です。第 1 章「学習を始める前に」で本書の目的と実行環境を整え、第 2 章で Python の基本文法からオブジェクト指向、例外処理までを押さえます。第 3 章「機械学習に必要な数学」は線形代数と微積分が中心で、第 4 章「 Python による数値計算」では NumPy と SciPy による配列計算、疎行列、乱数、数理最適化、統計までを扱います。最終の第 5 章「機械学習アルゴリズム」で、線形回帰、リッジ回帰とラッソ回帰、汎化と過学習、ロジスティック回帰、サポートベクタマシン、 k-Means 法、主成分分析 (PCA) を順に実装していきます。前半 4 章で道具立てをそろえ、最後に一気に本丸へ進む積み上げ型の設計です。
ライブラリを呼ぶだけから抜け出す、ゼロ実装の技術背景
機械学習ライブラリが成熟した結果、モデルを「動かすだけ」なら数行のコードで済むようになりました。その一方で、学習がうまく進まないときの切り分けや手法選択の判断、論文や理論書の読解では、勾配降下法がなぜ収束するのか、正則化がなぜ過学習を抑えるのかといった数理の理解が地力の差になって表れます。本書はその地力を、数式とそれを写し取ったコードの両面から作る本です。数学の教科書は抽象的に、実装チュートリアルは式を省略しがちな中で、線形代数から数値計算の実際 (ベクトル化や疎行列の扱い) までを地続きに解説する構成に特徴があります。なお、扱うのは上記の古典的なアルゴリズムであり、ニューラルネットワークやディープラーニングの実装は目次に含まれません。版元紹介文には 2018 年当時のフレームワークとして Chainer の名前が見えますが、本文の主役は特定のフレームワークに依存しない数学と素の Python なので、ライブラリの世代交代で陳腐化しにくい種類の本です。
前提知識と、数学に挫折した人への効き目
版元が挙げる対象読者は、これから機械学習を始める学生と、理解が追いつかないままデータ分析の業務に携わっているエンジニアです。 Python は第 2 章で文法から確認できるためプログラミング経験が浅くても入れますが、読了の難易度を決めるのは数学との距離です。第 3 章は基本事項の確認から入るものの、線形代数と微積分を腰を据えて追う覚悟は必要で、数式を読むこと自体を避けたい人には向きません。逆に、数式の壁で一度挫折した人が土台から固め直す用途には設計がかみ合っており、 scikit-learn のパラメータや理論書の数式を「知っている計算」として読めるようになることが本書のペイオフです。数学の学び直しをどこまでやるかの見極めには機械学習に必要な数学の本ガイドも参考になります。
ゼロから作る Deep Learning との使い分け
同じ「ゼロから実装する」思想の本には『ゼロから作る Deep Learning 』 (斎藤康毅著、オライリー・ジャパン) がありますが、あちらがニューラルネットワークとその発展形に的を絞るのに対し、本書は線形モデルや SVM といった古典的アルゴリズムと、その土台になる数学・数値計算を受け持ちます。両者は競合というより補完関係で、本書で数理の足場を作ってからディープラーニング系に進むと接続が滑らかです。シリーズ側の全体像はゼロから作る Deep Learning シリーズの読む順番に整理があります。業務のデータ分析パイプラインを手早く組みたい人には遠回りに見えるかもしれませんが、モデルの中身を自分の言葉で説明できるようになりたいエンジニアや、数学から逃げずに機械学習をやり直したい独学者にとっては、 2018 年刊であることの古さをほとんど感じさせない、長く効く投資になる一冊です。
言及 Qiita 記事 (64 件)
【保存版・初心者向け】独学でAIエンジニアになりたい人向けのオススメのAI勉強方法 (2019年改定版)
♡ 1333Python, 機械学習, DeepLearning, AI, AIAcademyデータサイエンスにオススメの本80冊!
♡ 256Python, SQL, 機械学習, 統計学, データサイエンスk-means法を理解する
♡ 216Python, データ分析, K-means, クラスタリング機械学習の書籍多いけど、どれ買えば良いの?レベル別にオススメ!!<初心者向け>
♡ 175Python, 機械学習, 人工知能【最短で理解する】データ分析のためのPython基礎
♡ 162Python, 機械学習, データ分析, 初心者向けPython: 3次元配列のイメージ (numpy.array)
♡ 141Python, numpyPRMLの機械学習アルゴリズムを実装して理解する
♡ 134Python, PRML, 機械学習初心者から data scientist・AI engineer になるための勉強法&おすすめサイト・本を一つの記事にまとめたかった
♡ 101Python, DeepLearning, ポエム, AI, データサイエンスPythonで最小二乗法をしてみよう
♡ 65Pythonk-means++を理解する
♡ 60Python, データ分析, K-means, クラスタリング
この本に興味がある方におすすめ
この本に関連
加藤 公一 の他の書籍
関連記事
Python 本の選び方 - 独学の最初の 1 冊から実務品質まで
Python 本の選び方を「動機」から逆算して整理。プログラミング未経験の最初の 1 冊、業務自動化に直結する本、型ヒントとコード品質で実務水準へ進む本まで、2026 年 8 月時点の定番を独学ルートに沿って解説します。
本の選び方に正解はない
どの本を選べばいいか迷って決められない。同じテーマの入門書は扱う基礎が大きく重なるため、どれからでも学べます。確認すべき 1 点と、迷いを終わらせる決め方を解説します。
機械学習 / ディープラーニング本ガイド - エンジニアが読むべき AI 技術書の選び方
機械学習の基礎から実践まで学べる技術書の選び方を紹介。「Python ではじめる機械学習」などのハンズオン本を軸に、数学が苦手な人向けの学習ルート、ディープラーニング本への進み方、ML 本の賞味期限の見極め方を解説します。