scikit-learn

scikit-learn(サイキットラーン)はPythonのオープンソースの機械学習ライブラリです。 さまざまな機械学習のアルゴリズムが用意されており、さらに異なるモデルでも同じように扱えるので大変便利です。

機能には、大きく6つのカテゴリがあります。

  • 分類(Classification)
  • 回帰(Regression)
  • モデル選択(Model selection)
  • クラスタリング(Clustering)
  • 次元削減(Dimensionality reduction)
  • 前処理(Preprocessing)

データと正解となる数値やラベルで行う学習を、教師あり学習といい、正解なしのデータだけで行う学習を教師なし学習といいます。 先ほどのカテゴリの内の5つは、下記のように分類されます。前処理(Preprocessing)は、どちらのデータでも使えます。

主なカテゴリ
教師あり学習 教師なし学習
分類(Classification) クラスタリング(Clustering)
回帰(Regression) 次元削減(Dimensionality reduction)
モデル選択(Model selection)  

分類(Classification)

データから正解ラベルを予測する手法です。 決定木やSVM(サポートベクターマシン)などのアルゴリズムが使えます。

回帰(Regression)

データから正解となる数値を予測する手法です。 ロジスティック回帰などのアルゴリズムが使えます。

モデル選択(Model selection)

モデルやパラメータの比較や検証をサポートします。 交差検証やハイパーパラメータのチューニングなどのアルゴリズムが使えます。

クラスタリング(Clustering)

似たようなデータをグループ化する手法です。 k-Means法などが使えます。

次元削減(Dimensionality reduction)

データの次元の削減をサポートします。 主成分分析(PCA)などが使えます。

前処理(Preprocessing)

精度の低いデータの処理をサポートします。 欠損値の処理などが使えます。

PyQではscikit-learnをブラウザーから操作しながら機械学習の使い方を学べます。 詳しくはクエスト一覧を参照してください。