内容紹介
データサイエンスとPythonプログラミングをゼロから学んで身につける!
データサイエンスを学んでみたい、でもプログラミングはできないし、という初心者向けの、幅広いトピックをカバーしたデータサイエンス入門書です。Pythonプログラミングの基礎から線形代数、統計確率の基礎、回帰、ナイーブベイズ、決定木、ニューラルネット、自然言語処理、グラフ解析、レコメンデーションシステム、機械学習、SQL、MapReduceまで、盛りだくさんの内容を詰め込んでおり、短時間でデータサイエンスの基本知識とPythonプログラミングのスキルを効率良く身につけることが可能です。
このような方におすすめ
学生、データ処理に関わるすべての人
目次
詳細目次
訳者まえがき
はじめに
1章 イントロダクション
1.1 データに支配された世界
1.2 データサイエンスとは
1.3 仮想事例:データサイエンス・スター社にて
1.3.1 キーコネクタを探せ
1.3.2 知り合いかも?
1.3.3 給与と経験値
1.3.4 有料アカウント
1.3.5 興味に関するあれこれ
1.3.6 明日以降に向けて
2章 Python速習コース
2.1 Python基礎
2.1.1 Pythonの入手
2.1.2 禅 of Python
2.1.3 空白によるフォーマット
2.1.4 モジュール
2.1.5 算術演算
2.1.6 関数
2.1.7 文字列
2.1.8 例外
2.1.9 リスト
2.1.10 タプル
2.1.11 辞書
2.1.12 集合
2.1.13 実行順制御
2.1.14 真偽
2.2 上級 Python
2.2.1 ソート
2.2.2 リスト内包
2.2.3 ジェネレータとイテレータ
2.2.4 乱数
2.2.5 正規表現
2.2.6 オブジェクト指向プログラミング
2.2.7 関数型ツール
2.2.8 enumerate
2.2.9 zipと引数展開
2.2.10 argsとkwargs
2.2.11 データサイエンス・スター社へようこそ!
2.3 さらなる探求のために
3章 データの可視化
3.1 matplotlib
3.2 棒グラフ
3.3 折れ線グラフ
3.4 散布図
3.5 さらなる探求のために
4章 線形代数
4.1 ベクトル
4.2 行列
4.3 さらなる探求のために
5章 統計
5.1 データの特徴を表す
5.1.1 代表値
5.1.2 散らばり
5.2 相関
5.3 シンプソンのパラドクス
5.4 その他相関係数についての注意点
5.5 相関関係と因果関係
5.6 さらなる探求のために
6章 確率
6.1 従属と独立
6.2 条件付き確率
6.3 ベイズの定理
6.4 確率変数
6.5 連続確率分布
6.6 正規分布
6.7 中心極限定理
6.8 さらなる探求のために
7章 仮説と推定
7.1 統計的仮説検定
7.2 事例:コイン投げ
7.3 信頼区間
7.4 pハッキング
7.5 事例:A/Bテストの実施
7.6 ベイズ推定
7.7 さらなる探求のために
8章 勾配下降法
8.1 勾配下降法の考え方
8.2 勾配の評価
8.3 勾配を利用する
8.4 最善の移動量を選択する
8.5 1つにまとめる
8.6 確率的勾配下降法
8.7 さらなる探求のために
9章 データの取得
9.1 stdinとstdout
9.2 ファイルの読み込み
9.2.1 テキストファイルの基礎
9.2.2 区切り文字を使ったファイル
9.3 Webスクレイピング
9.3.1 HTMLとその解析
9.3.2 事例:データに関するオライリーの書籍
9.4 APIを使う
9.4.1 JSON(そしてXML)
9.4.2 認証の必要がないAPIを使う
9.4.3 必要なAPIの探索
9.5 事例:TwitterAPI
9.5.1 認証の取得
9.6 さらなる探求のために
10章 データの操作
10.1 データの調査
10.1.11 次元データの調査
10.1.22 次元データ
10.1.3 多次元データ
10.2 データの整理と変換
10.3 データの操作
10.4 スケールの変更
10.5 次元削減
10.6 さらなる探求のために
11章 機械学習
11.1 モデリング
11.2 機械学習とは?
11.3 過学習と未学習
11.4 正確さ
11.5 バイアス-バリアンストレードオフ
11.6 特徴抽出と特徴選択
11.7 さらなる探求のために
12章 k近傍法
12.1 モデル
12.2 事例:好みの言語
12.3 次元の呪い
12.4 さらなる探求のために
13章 ナイーブベイズ
13.1 非常に単純なスパムフィルタ
13.2 より高度なスパムフィルタ
13.3 実装
13.4 モデルの検証
13.5 さらなる探求のために
14章 単純な線形回帰
14.1 モデル
14.2 勾配下降法
14.3 最尤推定
14.4 さらなる探求のために
15章 重回帰分析
15.1 モデル
15.2 最小二乗モデルへの追加前提
15.3 モデルのあてはめ
15.4 モデルの解釈
15.5 あてはめの良さ
15.6 余談:ブートストラップ
15.7 回帰係数の標準誤差
15.8 正則化
15.9 さらなる探求のために
16章 ロジスティック回帰
16.1 問題
16.2 ロジスティック関数
16.3 モデルの適用
16.4 あてはめの良さ
16.5 サポートベクタマシン
16.6 さらなる探求のために
17章 決定木
17.1 決定木とは
17.2 平均情報量(エントロピー)
17.3 分割のエントロピー
17.4 決定木の生成
17.5 ひとつにまとめる
17.6 ランダムフォレスト
17.7 さらなる探求のために
18章 ニューラルネットワーク
18.1 パーセプトロン
18.2 フィードフォワードニューラルネットワーク
18.3 逆伝播誤差法(バックプロパゲーション)
18.4 事例:キャプチャ(CAPTCHA)を無効化する
18.5 さらなる探求のために
19章 クラスタリング
19.1 アイディア
19.2 モデル
19.3 事例:オフラインミーティング
19.4 kの選択
19.5 事例:色のクラスタリング
19.6 凝集型階層的クラスタリング
19.7 さらなる探求のために
20章 自然言語処理
20.1 ワードクラウド
20.2 n-gramモデル
20.3 文法
20.4 余談:ギブスサンプリング
20.5 トピックモデリング
20.6 さらなる探求のために
21章 ネットワーク分析
21.1 媒介中心性
21.2 固有ベクトル中心性
21.2.1 行列操作
21.2.2 中心性
21.3 有効グラフとページランク
21.4 さらなる探求のために
22章 リコメンドシステム
22.1 手作業によるキュレーション
22.2 人気の高いものをお勧めする
22.3 ユーザベース協調フィルタリング
22.4 アイテムベース協調フィルタリング
22.5 さらなる探求のために
23章 データベースとSQL
23.1 表の作成(CLEATETABLE)と行の追加(INSERT)
23.2 行の更新(UPDATE)
23.3 行の削除(DELETE)
23.4 行の問い合わせ(SELECT)
23.5 グループ化(GROUPBY)
23.6 並び替え(ORDERBY)
23.7 結合(JOIN)
23.8 サブクエリ
23.9 インデックス
23.10 クエリ最適化
23.11 NoSQL
23.12 さらなる探求のために
24章 MapReduce
24.1 事例:単語のカウント
24.2 MapReduceを使う理由
24.3 一般的なMapReduce
24.4 事例:近況更新の分析
24.5 事例:行列操作
24.6 余談:コンバイナ
24.7 さらなる探求のために
25章 前進しよう、データサイエンティストとして
25.1 IPython
25.2 数学
25.3 既存のライブラリを活用する
25.3.1 NumPy25.3.2 pandas
25.3.3 scikit-learn
25.3.4 可視化
25.3.5 R
25.4 データの供給源
25.5 データサイエンスを活用しよう
25.5.1 Hacker News記事分類器
25.5.2 消防車ランク
25.5.3 固有Tシャツ
25.5.4 データサイエンスを使って何をしますか?
付録A 日本語に関する補足
A.1 本書のコード例と日本語コードについて
A.2 和文対応のtokenize関数
索引
続きを見る