ISBN 9784873119113

ゼロからはじめるデータサイエンス 第2版 : Pythonで学ぶ基本と実践

ゼロからはじめるデータサイエンス 第2版 : Pythonで学ぶ基本と実践
刊行
2020-05

概要

Python とゼロ実装でデータサイエンスの全領域を体系的に習得する

想定読者

Pythonの基礎を学びながらデータサイエンスの全体像を把握したい入門者・学習中の社会人

こんな人には向いていない

  • scikit-learnやpandasを既に使いこなしており、実務レベルの応用手法を求めるエンジニア
  • 統計や機械学習の理論書として数式中心の厳密な解説を期待する読者
  • NumPy・pandas を前提とした効率的な分析ワークフロー習得を優先したい人(ライブラリ活用は最終章のみ)

読了後にできるようになること

  • 線形代数・統計・確率の基礎概念をPythonコードとして実装しながら理解する
  • 回帰・分類・クラスタリング・ニューラルネットワークをスクラッチで実装できる
  • 自然言語処理(n-gram・word2vec相当の手法)とネットワーク分析の基本を実装レベルで把握する
  • SQLとMapReduceの基礎をデータサイエンスの文脈で理解する
  • データ倫理(公平性・解釈可能性・バイアス)の基本的論点を認識できる
  • 外部APIやWebスクレイピングを使ったデータ収集の実装パターンを身につける

本書のキー概念(章解説)

  • 第 1 章 イントロダクション — 架空のSNS企業を舞台にしたシナリオで「データサイエンティストの仕事」のイメージをつかむ導入章
  • 第 2 章 Python速習コース — リスト・辞書・内包表記・OOP・ジェネレータ等、本書全体で使うPython基礎を一気に抑える
  • 第 3 章 データの可視化
  • 第 4 章 線形代数 — ベクトル・行列演算をNumPyなしで実装。後続の機械学習章の計算基盤
  • 第 5 章 統計 — 記述統計・相関・シンプソンのパラドクス。データ解釈の落とし穴を学ぶ
  • 第 6 章 確率
  • 第 7 章 仮説と推定 — p値・信頼区間・A/Bテストの考え方。実務で頻出する検定の基礎
  • 第 8 章 勾配降下法 — 機械学習の最適化アルゴリズムをゼロから実装する転換章
  • 第 9 章 データの取得 — ファイルI/O・スクレイピング・API連携を実例付きで扱う
  • 第 11 章 機械学習 — 過学習・精度評価・バイアス・バリアンストレードオフを概念整理
  • 第 12 章 k近傍法
  • 第 13 章 ナイーブベイズ — スパムフィルタの実装を通じてテキスト分類の基礎を体験
  • 第 18 章 ニューラルネットワーク — パーセプトロンから誤差逆伝播までを実装。Fizz Buzzで動作確認
  • 第 19 章 ディープラーニング — テンソル・ドロップアウト・MNISTを扱う。第2版での大幅加筆章
  • 第 21 章 自然言語処理 — n-gram・トピックモデル・単語ベクトル・RNNを網羅
  • 第 22 章 ネットワーク分析
  • 第 23 章 リコメンドシステム — 協調フィルタリング・行列分解の実装
  • 第 24 章 データベースとSQL — SQLの基本操作とNoSQL概要をデータサイエンスの文脈で位置づけ
  • 第 25 章 MapReduce
  • 第 26 章 データ倫理 — 公平性・解釈可能性・偏り・データ保護を論じる。第2版で新設
  • 第 27 章 前進しよう、データサイエンティストとして — NumPy・pandas・scikit-learnへの橋渡し。本書習得後の実務ツールへの移行ガイド

ハイライト

  • データサイエンスやPythonの初心者に向けたデータサイエンス入門書であり、Pythonの基礎から線形代数、統計確率の基礎、回帰、ナイーブベイズ、決定木、ニューラルネット、自然言語処理、グラフ解析、リコメンドシステム、機械学習、SQL、MapReduceまで、データサイエンスの基礎知識を短時間で効率良く身につけられます。(本書のカバー範囲の広さを端的に示す書誌説明の核心部分)
  • 初心者でもなるほど!と思うことができる一冊です(入門者が読了後に感じた理解の到達感を示すレビューの一節)

外部からの言及

  • データサイエンティスト・機械学習エンジニアを目指す独学者向けの参考書リストで繰り返し取り上げられており、「完全初心者でもPythonを知らなくても始められる」という位置づけで紹介されることが多い(qiita)
  • 実際に読んだ読者からは「辞書代わりに使えるほど網羅性が高い」という評価がある一方で、NumPy・pandasなど実務で使うライブラリの扱いは最終章のみで薄いという指摘もある(qiita)

編集メモ

Qiita での直接言及記事は確認できた範囲で4件・累計 likes 約603(うち著名な書籍リスト記事での引用が中心)。qiita_article_count が5未満のため supplementary に分類。英語原書(Data Science from Scratch)の知名度に対し、邦訳の Qiita 上の直接言及は限定的

読む前に押さえておきたいこと

  • プログラミング経験は問わないが、変数・関数・ループの概念があると2章の読み進めが速い
  • 高校数学レベルの代数(方程式・関数)の感覚があると4〜6章の線形代数・統計章で躓きにくい

学習のコツ

  • 2章(Python速習)はPythonに慣れている読者は飛ばし読みでよい。3章以降の数学・統計章から本論に入れる
  • 8章(勾配降下法)が機械学習アルゴリズム群への転換点。ここの実装を手を動かして理解すると以降の章の収率が上がる
  • ライブラリ(NumPy・pandas・scikit-learn)は27章で初めて登場するため、本書と並行してライブラリのチュートリアルを進めることで実務への移行が早まる
  • 各章のサンプルコードはGitHubで公開されており、PYTHONPATHの設定が必要。動作確認環境を先に整えてから読み進めると詰まりにくい
  • 26章(データ倫理)は技術章ではないが、データを扱う際の判断軸として読んでおく価値がある独自章
出版社による内容紹介

データサイエンスとPythonをゼロから学べる。Python 3対応! データサイエンスやPythonの初心者に向けたデータサイエンス入門書『ゼロからはじめるデータサイエンス』の改訂版であり、Python 3.6に対応しています。Pythonの基礎から線形代数、統計確率の基礎、回帰、ナイーブベイズ、決定木、ニューラルネット、自然言語処理、グラフ解析、リコメンドシステム、機械学習、SQL、MapReduceまで、データサイエンスの基礎知識を短時間で効率良く身につけられます。

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。