このリポジトリは,データサイエンスの重要技術や理論を実践的に学習するための課題集です. この課題集では,
- 典型的なデータ分析課題であれば,ライブラリを使ってそれなりに解けるようになること
- データサイエンスで用いられる(超)基本的な手法やアルゴリズムについては,その原理をきちんと理解すること
- データの前処理・分析・学習・評価を実際に行う際に必要となる最低限の作法について習得すること
を目的としています.
課題レベルはデータサイエンス初心者を想定しているが,基本的なPythonのプログラミング技術を有していることを前提としています.特にnumpy
やpandas
の操作については,ある程度経験があることを想定しています.
Pythonコーディングに不安がある場合は,Data Science Bootcamp for BeginnersのQ30くらいまでは解けるようにしてください.
本課題集で取り扱うトピックは以下の通りです. 各トピック(の課題)はある程度独立していますので,どのトピックから取り組んでも問題ないです.
第7章「グラフ解析」以外は,分析対象は表データとしています.テキスト情報や画像情報に特化したデータマイニング・機械学習手法を学びたい方は,言語処理100本ノックや画像処理100本ノックなどにチャレンジしてください.
- SQL & 探索的データ解析(10問)
- 教師なし学習(クラスタリング & 次元圧縮)(10問)
- 回帰(15問)
- 分類(15問)
- 機械学習アラカルト(勾配法 & 次元の呪い & 特徴量選択)(10問)
- 効果検証と因果推論(10問)
- グラフ解析(10問)
本課題集では,Python 3.xを開発環境を使って課題に取り組みます. 環境がない場合は,Pythonが実行できる環境を構築してください
また,ライブラリとして下記を用いますので,別途インストールしておいてください.
- pandas
- matplotlib
- seaborn
- numpy
- scipy
- scikit-learn
- statsmodels
- networkx