scikit-learn(サイキットラーン)とは、Pythonのオープンソース機械学習ライブラリです。
scikit-learnは、Python実装の機械学習ライブラリです。
機械学習アルゴリズムを幅広くサポートしています。分類回帰クラスタ分析(ニューラルネットワーク、サポートベクターマシン、ランダムフォレスト、k近傍法など)を手軽に実装できます。
プロトタイピングとして開発しやすく、大量データを扱わない場合には、そのまま実用できる機能を提供します。
scikit-learnのライセンスは「New BSD License」です。
詳細について、こちらを参照ください。
→GitHub →scikit-learn/scikit-learn →COPYING
→scikit-learn →Installing scikit-learn
「Evernote」などへの導入実績があります。
→scikit-learn →Who is using scikit-learn?
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「Caffe」「Theano」「Chainer」など。
他のPython数値計算ライブラリ(NumPy、SciPy、Pandas、Matplotlibなど)と連携しやすいように設計されています。
「NumPyで作成した行列を機械学習の入力データとして利用する」などの連携を行えます。
scikit-learnは、次のライブラリに依存します。線形代数演算の事実上の標準技術です。
・BLAS(線形代数ライブラリの標準仕様)
・LAPACK(BLASを基礎として高度な線形代数計算)
ラベルとデータを学習し、対象データのラベル予測を行なう機能です。対象オブジェクトがどのカテゴリに属しているかを識別します。
「スパム検出」「画像認識」などの用途に向いています。
・SVM(サポートベクトルマシン、線形サポートベクトルマシン)
・K近傍法
・ランダムフォレスト
回帰データを学習して、実数値を予測する機能です。オブジェクトに関連付けられた連続値の属性を予測します。
「薬物応答予測」「株価予測」などの領域に向いています。
・回帰
・ラッソ回帰
・リッジ回帰
・SVR
似ているデータをまとめてデータ構造を発見する機能です。類似オブジェクトセットに対する自動的グループ化を行います。
「顧客セグメンテーション」「実験結果のグループ化」などの領域に向いています。
・クラスタ分析(Clustering)
・K平均法(KMeans)
・混合ガウス分布(GMM)
・平均変位法(MeanShift)
データの次元を削減して、「主成分分析」「要因発見」「考慮するランダム変数の数を減らす」などを行う機能です。次段階の分析手法の事前データ処理としても使われます。
・主成分分析(PCA)
・非負値行列因子分解(NMF)
パラメータとモデルの比較/検証/選択を行なう機能です。
「パラメータ調整による精度向上」などに利用します。
Python実装オープンソース機械学習ライブラリ「scikit-learn」の概要と、「scikit-learnで利用できる主な機械学習アルゴリズム」について紹介。 scikit-learnとは scikit-learnは、Pythonインターフェースを使用して、教師付き学習および教師なし学習などのアルゴリズム...
OSS×Cloud ACCESS RANKING