はじめに
近年の機械学習ブームもあり、機械学習を始めたいと思っている方も多いのではないでしょうか。
そこで、scikit-learnで学ぶ機械学習
というタグで連載記事を書いていこうと思います。
この記事では
- なぜ、機械学習を学ぶためにscikit-learnを使うのか
- 今後、連載で扱う内容
について書いていきたいと思います。scikit-learnとは
なぜ、機械学習を学ぶためにscikit-learnを使うのか
機械学習はプログラミングしながら学んだ方が良いから
機械学習はその名の通り、機械に学習をさせます。
ここでいう、機械とはすなわちコンピュータプログラムのことです。
つまり、機械学習という技術のアウトプットでは、プログラムに落とし込むプロセスがあります。
(一部の理論研究などは除きます)
そのため、アルゴリズムの学習段階から、プログラムを動かして学ぶと非常に効率が良いです。
もちろん、仕事として使うためには数式の理解も必要ですが、実装しながら
あるいは実装して概略を理解した後
でも十分と言えるでしょう。
scikit-learnでは、主要なアルゴリズムが豊富だから
これはscikit-learn
のチートシートで、
質問に答えていくとどのようなアルゴリズムを選択すれば良いかがわかります。
(https://scikit-learn.org/stable/tutorial/machine_learning_map/index.html)
凄そうな図ですが、これでも実装されているアルゴリズムの極一部です。
scikit-learnはとにかくアルゴリズムが豊富で、主要なものはほぼ揃っていると考えて良いです。
そのため、教科書に出てくるような概念は、大体scikit-learnで実装されているので、
scikit-learnも絶好の教材というわけです。
scikit-learnは、現場でも使われるので実践的だから
scikit-learnは機械学習のライブラリとしては、(他の言語含めても)ほぼ一強です。
つまり、業務で機械学習を使うとなった場合、かなりのケースでscikit-learnを利用することになるでしょう。
そのため、scikit-learnのスキルを身につけておく事で、とても市場価値が上がると言えます。
ただし、scikit-learnの弱点は、Deep Learningをカバーしていない点です。
その点は、TensorFLowやPyTorchなどの深層学習ライブラリでカバーする必要があります。
今後、連載で扱う内容
本家のユーザガイドで整理されている構成に準拠して、8つのテーマを扱います。
- Supervised learning
- Unsupervised learning
- Model selection and evaluation
- Inspection
- Visualizations
- Dataset transformations
- Dataset loading utilities
- Computing with scikit-learn
Supervised learning
教師あり学習。ロジスティック回帰について学びます。
Unsupervised learning
教師なし学習。クラスタリングについて学びます。
Model selection and evaluation
モデル選択と評価。学習したモデルの評価について学びます。
Inspection
検査。どの特徴量が重要であるかを解釈する方法について学びます。
Visualizations
可視化。評価結果を素早く可視化する方法について学びます。
Dataset transformations
データセット変換。データの前処理について学びます。
Dataset loading utilities
データセット読み込みユーティリティ。アヤメデータのロードについて学びます。
Computing with scikit-learn
scikit-learnによる計算。増分学習について学びます。
終わりに
他にも様々なテーマでまとめ記事を書いているのでよろしければご覧ください。
まとめ記事の一覧
記事情報
- 投稿日:2020年2月29日
- 最終更新日:2020年5月23日