| scikit-learn | |
|---|---|
| 原作者 | デビッド・クルナポー |
| 開発者 | Google Summer of Codeプロジェクト |
| 初回リリース | 2007年6月 (2007-06) |
| 安定版リリース | 1.8.0 [ 1 ] / 2025年12月10日 (2025年12月10日) |
| リポジトリ | |
| 書かれた | Python、Cython、C、C++ [ 2 ] |
| オペレーティング·システム | Linux、macOS、Windows |
| タイプ | 機械学習用ライブラリ |
| ライセンス | 新しいBSDライセンス |
| Webサイト | scikit-learn.org |
| この記事はシリーズの一部です |
| パイソン |
|---|
scikit-learn(旧称scikits.learn、sklearn )は、Pythonプログラミング言語用の無料かつオープンソースの機械学習ライブラリです。[ 3 ]サポートベクターマシン、ランダムフォレスト、勾配ブースティング、k平均法、DBSCANなど、様々な分類、回帰、クラスタリングアルゴリズム を備えており、 Pythonの数値・科学計算ライブラリであるNumPyおよびSciPyと相互運用できるように設計されています。scikit-learnはNumFOCUSの財政支援を受けたプロジェクトです。[ 4 ]
scikit-learnプロジェクトは、フランスのデータサイエンティストDavid CournapeauによるGoogle Summer of Codeプロジェクトのscikits.learnとして始まりました。プロジェクト名は、「機械学習のための科学的ツールキット」としての役割に由来し、もともとSciPyのサードパーティ拡張機能として開発および配布されていました。[ 5 ]オリジナルのコードベースは後に他の開発者によって書き直されました。2010年に、フランスのサクレーにあるフランス情報科学自動化研究所のFabian Pedregosa、Gaël Varoquaux、Alexandre Gramfort、Vincent Michelの貢献者がプロジェクトのリーダーシップを取り、2010年2月1日にライブラリの最初のパブリックバージョンをリリースしました。[ 6 ] 2012年11月、scikit-learnとscikit-imageは「よく管理され、人気のある」2つのscikitsライブラリとして説明されました。[ 7 ] 2019年には、scikit-learnがGitHubで最も人気のある機械学習ライブラリの1つであることが注目されました。[ 8 ]当時、このプロジェクトには1,400人以上の貢献者がおり、2018年にはドキュメントへの訪問数が4,200万回に達しました。[ 9 ] 2022年に173か国から約24,000人の回答者を対象としたKaggleの調査によると、scikit-learnは最も広く使用されている機械学習フレームワークとして特定されました。[ 10 ]
estimator.fit()estimator.predict()Pipelineデータの前処理やモデルのフィッティングを含むデータサイエンスプロセス()を構造化する宣言的な方法ランダムフォレスト分類器 のフィッティング:
>>> sklearn.ensembleからRandomForestClassifierをインポートします>>>分類子= RandomForestClassifier (ランダム状態= 0 )>>> X = [[ 1 , 2 , 3 ], # サンプル数 2、特徴数 3... [ 11 、12 、13 ]]>>> y = [ 0 , 1 ] # 各サンプルのクラス>>>分類器.fit ( X , y )ランダムフォレスト分類器( random_state = 0 )scikit-learn は主に Python で記述されており、高性能な線形代数と配列演算のためにNumPy を多用しています。さらに、パフォーマンス向上のため、一部のコアアルゴリズムはCythonで記述されています。サポートベクターマシンはLIBSVM をCythonでラッパー化することで実装されており、ロジスティック回帰と線形サポートベクターマシンはLIBLINEAR をCythonでラッパー化することで実装されています。このような場合、これらのメソッドを Python で拡張することはできない可能性があります。
scikit-learn は、プロット用のMatplotlibやplotly、配列のベクトル化用のNumPy、Pandasデータフレーム、SciPyなど、 他の多くの Python ライブラリと適切に統合されます。
scikit-learnは、2007年にDavid Cournapeau氏によってGoogle Summer of Codeプロジェクトとして開発されました。同年後半、Matthieu Brucher氏がプロジェクトに参加し、学位論文の一部として使用し始めました。2010年には、フランスのコンピュータサイエンスおよびオートメーション研究所(INRIA)がプロジェクトに加わり、最初のパブリックリリース(v0.1ベータ版)が2010年1月下旬に公開されました。
このプロジェクトは、2021年9月24日に最初の安定バージョンである1.0.0をリリースしました。[ 11 ]このリリースは、2,100件以上のプルリクエストのマージの結果であり、そのうち約800件はドキュメントの改善に専念していました。[ 12 ]開発は引き続きバグ修正、効率化、機能拡張に重点を置いています。
最新バージョン1.8は2025年12月10日にリリースされました。[ 11 ]このアップデートでは、ネイティブArray APIサポートが導入され、ライブラリはPyTorchおよびCuPy配列を直接使用してGPU計算を実行できるようになりました。このバージョンには、バグ修正、改良、そして線形モデルの適合時間の効率化などの新機能も含まれています。[ 13 ]
Scikit-learnは、分類、回帰、クラスタリング、モデル選択など、様々な機械学習タスクにおいて、幅広い業界で広く利用されています。このライブラリの実際の応用例を以下に示します。