What you'll learn:
- 機械学習の識別(分類・パターン認識)が何かが分かります
- Pythonとjupyter notebookが使えるようになります.
- Pythonの機械学習ライブラリscikit-learnを使えるようになります
- 学習データとテストデータを準備する
- データの前処理をする
- 学習データで識別器を学習する
- 交差確認(cross validation)やleave-one-outなどを使う
- 識別器でテストデータを識別する
- 識別結果を評価する
- 過学習とは何かを知る
- 2クラス分類と多クラス分類の違いを知る
- k最近傍識別器(k-NN)を使う
- サポートベクターマシン(SVM)を使う
- ロジスティック回帰を使う
- 多層ニューラルネットワーク(多層パーセプトロン)を使う
- パーセプトロンを使う
このコースでは,機械学習における識別(分類・認識)の基礎をPythonを用いて学びます.このコースの目標は,機械学習でデータを識別するための一連の流れ(データの準備・前処理・識別器・評価など)を理解することです.Pythonの機械学習ライブラリscikit-learnとインタラクティブなプログラミング環境jupyter notebook (ipython notebook)を使って,実際にpythonコードを実行しながら学びます.
レクチャーでは,notebook上で実行するpythonコードとその内容を説明します.pythonコードのnotebookはダウンロードできますので,レクチャーを見ながら・見た後で実際に実行することをおすすめします.自分なりに改変・修正すると,さらに理解が高まるでしょう.
機械学習を理解するためには数学が必要になるのですが,このレクチャーでは(ほとんど)数式を使わず,コードを実行して結果を議論することで,機械学習のコンセプトを伝えるようにしています.理論的なことを知りたい場合には,他の資料を参考にしてください.
プログラミングの注意:pythonやその他の言語でのプログラミング経験があることを前提にしていますので,python自体の説明は省略しています.
レクチャーで使用しているnotebookはダウンロードできます.「レクチャー用のnotebookのダウンロードはこちら(ソースコードはここにあります)」というレクチャーを参照してください.