試験公開中

このエントリーをはてなブックマークに追加

Python機械学習プログラミング 達人データサイエンティストによる理論と実践

インプレス

4,000円 2,000円+税 《特価》

本書は、機械学習の理論とPython実践法を網羅的に解説した技術書です。機械学習とは、データから学習した結果をもとに判定や予測を行うことです。すでにさまざまな機械学習の方法が開発されています。本書では、それらの方法について背景にある理論や特徴を解説した上で、Pythonによる実装法を説明します。

関連サイト

本書の関連ページが用意されています。

内容紹介

機械学習の考え方とPython実装法がわかる! 分類/回帰問題や深層学習の導入を解説。

◎絶妙なバランスで「理論と実践」を展開

◎Pythonライブラリを使いこなす

◎数式・図・Pythonコードを理解する

本書は、機械学習の理論とPython実践法を網羅的に解説した技術書です。機械学習とは、データから学習した結果をもとに判定や予測を行うことです。すでにさまざまな機械学習の方法が開発されています。本書では、それらの方法について背景にある理論や特徴を解説した上で、Pythonによる実装法を説明します。初期の機械学習アルゴリズムから取り上げ、前処理や次元削減、Webへの展開のほか、終盤ではディープラーニングについても見ていきます。機械学習の理論と実践についてバランスよく解説してあり、AIプログラミングの第一歩を踏み出すための格好の一冊です。

※本書は『Python Machine Learning』の翻訳書です。

※付録では、本書を読み進めるにあたっての前提知識として、Python ライブラリや数学について補足説明をしています。必要に応じて、他の書籍などもご参照ください。

書誌情報

  • 著者: Sebastian Raschka(著), 株式会社クイープ(訳), 福島真太朗(監訳)
  • 発行日: (紙書籍版発行日: 2016-06-30)
  • 最終更新日: 2016-10-11
  • バージョン: 1.4.0
  • ページ数: 464ページ(PDF版換算)
  • 対応フォーマット: PDF, EPUB
  • 出版社: インプレス

対象読者

機械学習やデータサイエンスに興味のあるIT技術者や研究者/学生など。

著者について

Sebastian Raschka

ミシガン大学博士課程に在籍。計算生物学の分野で新しいコンピュータ手法の開発に取り組む。データ分析や機械学習の愛好家でもあり、データ分析の関連情報サイト「Analytics Vidhya」の記事では、GitHub上で影響力のあるデータサイエンティストの第1位にランクイン(2015年7月時点)。また、オープンソースソフトウェアの機械学習ライブラリ開発にも貢献している。

株式会社クイープ

1995年、米国サンフランシスコに設立。コンピュータシステムの開発、ローカライズ、コンサルティングを手がけている。2001年に日本法人を設立。主な訳書に、『Scala 関数型デザイン & プログラミング』『CUDA C プロフェッショナル プログラミング』などがある(インプレス発行)。

福島真太朗

1981年生まれ。株式会社トヨタIT開発センターのリサーチャー。2004年に東京大学理学部物理学科卒業。2006年東京大学大学院新領域創成科学研究科修士課程修了。専攻は物理学・応用数学。

目次

第1章 「データから学習する能力」をコンピュータに与える

  • 1.1 データを知識に変える「知能機械」
  • 1.2 3種類の機械学習
  • 1.3 「教師あり学習」による未来予測
  • 1.4 強化学習による対話問題の解決
  • 1.5 「教師なし学習」による隠れた構造の発見
  • 1.6 基本用語と表記法

第2章 分類問題―機械学習アルゴリズムのトレーニング

  • 2.1 人工ニューロン―機械学習の前史
  • 2.2 パーセプトロンの学習アルゴリズムをPythonで実装する
  • 2.3 Irisデータセットでのパーセプトロンモデルのトレーニング
  • 2.4 ADALINEと学習の収束
  • 2.5 勾配降下法によるコスト関数の最小化
  • 2.6 大規模な機械学習と確率的勾配降下法
  • まとめ

第3章 分類問題―機械学習ライブラリscikit-learnの活用

  • 3.1 分類アルゴリズムの選択
  • 3.2 scikit-learn活用へのファーストステップ
  • 3.3 ロジスティック回帰を使ったクラスの確率のモデリング
  • 3.4 サポートベクトルマシンによる最大マージン分類
  • 3.5 カーネルSVMを使った非線形問題の求解
  • 3.6 決定木学習
  • 3.7 k近傍法:怠惰学習アルゴリズム
  • まとめ

第4章 データ前処理―よりよいトレーニングセットの構築

  • 4.1 欠測データへの対処
  • 4.2 カテゴリデータの処理
  • 4.3 データセットをトレーニングデータセットとテストデータセットに分割する
  • 4.4 特徴量の尺度を揃える
  • 4.5 有益な特徴量の選択
  • 4.6 ランダムフォレストで特徴量の重要度にアクセスする
  • まとめ

第5章 次元削減でデータを圧縮する

  • 5.1 主成分分析による教師なし次元削減
  • 5.2 線形判別分析による教師ありデータ圧縮
  • 5.3 カーネル主成分分析を使った非線形写像
  • まとめ

第6章 モデルの評価とハイパーパラメータのチューニングのベストプラクティス

  • 6.1 パイプラインによるワークフローの効率化
  • 6.2 k分割交差検証を使ったモデルの性能の評価
  • 6.3 学習曲線と検証曲線によるアルゴリズムの診断
  • 6.4 グリッドサーチによる機械学習モデルのチューニング
  • 6.5 さまざまな性能評価指標
  • まとめ

第7章 アンサンブル学習―異なるモデルの組み合わせ

  • 7.1 アンサンブルによる学習
  • 7.2 単純な多数決分類器の実装
  • 7.3 アンサンブル分類器の評価とチューニング
  • 7.4 バギング:ブートストラップ標本を使った分類器アンサンブルの構築
  • 7.5 アダブーストによる弱学習器の活用
  • まとめ

第8章 機械学習の適用1―感情分析

  • 8.1 IMDbの映画レビューデータセットの取得
  • 8.2 BoWモデルの紹介
  • 8.3 さらに大規模なデータの処理:オンラインアルゴリズムとアウトオブコア学習
  • まとめ

第9章 機械学習の適用2―Webアプリケーション

  • 9.1 学習済みのscikit-learn推定器をシリアライズする
  • 9.2 データストレージとしてSQLiteデータベースをセットアップする
  • 9.3 Flaskを使ってWebアプリケーションを開発する
  • 9.4 映画レビュー分類器をWebアプリケーションとして実装する
  • 9.5 WebアプリケーションをパブリックWebサーバーにデプロイする
  • まとめ

第10章 回帰分析―連続値をとる目的変数の予測

  • 10.1 単純な線形回帰モデル
  • 10.2 Housingデータセットの探索
  • 10.3 最小二乗線形回帰モデルの実装
  • 10.4 RANSACを使ったロバスト回帰モデルの学習
  • 10.5 線形回帰モデルの性能評価
  • 10.6 回帰に正則化手法を使用する
  • 10.7 多項式回帰:線形回帰モデルから曲線を見い出す
  • まとめ

第11章 クラスタ分析―ラベルなしデータの分析

  • 11.1 k-means法を使った類似度によるオブジェクトのグループ化
  • 11.2 クラスタを階層木として構成する
  • 11.3 DBSCANを使って高密度の領域を特定する
  • まとめ

第12章 ニューラルネットワーク―画像認識トレーニング

  • 12.1 人工ニューラルネットワークによる複雑な関数のモデリング
  • 12.2 手書きの数字を分類する
  • 12.3 人工ニューラルネットワークをトレーニングする
  • 12.4 バックプロパゲーションに対する直観を養う
  • 12.5 勾配チェックを使ったニューラルネットワークのデバッグ
  • 12.6 ニューラルネットワークでの収束
  • 12.7 その他のニューラルネットワークアーキテクチャ
  • 12.8 ニューラルネットワークの実装についての補足
  • まとめ

第13章 ニューラルネットワーク―数値計算ライブラリTheanoによるトレーニングの並列化

  • 13.1 Theanoを使った式の構築、コンパイル、実行
  • 13.2 フィードフォワードニューラルネットワークでの活性化関数の選択
  • 13.3 Kerasを使ったニューラルネットワークの効率的なトレーニング
  • まとめ

付録A Jupyter Notebookの基本的な使用方法

付録B matplotlibによる可視化の基礎

付録C 行列の固有分解の基礎

索引

著者について

Home 書籍一覧 Python機械学習プログラミング 達人データサイエンティストによる理論と実践 ▲ ページトップへ戻る