Scikit-learn基礎
公開日:2025/05/30

Python用の包括的機械学習ライブラリ。分類、回帰、クラスタリング、前処理、モデル評価などの機能を統一されたインターフェースで提供し、機械学習プロジェクトの全工程をサポートする。
主要機能モジュール:
・教師あり学習:分類・回帰アルゴリズム
・教師なし学習:クラスタリング・次元削減
・前処理:データ変換・特徴量エンジニアリング
・モデル選択:交差検証・ハイパーパラメータ調整
・評価指標:性能評価・可視化
データ分割の基本:
・train_test_split():訓練・テストデータの分割
・StratifiedShuffleSplit:層化抽出による分割
・TimeSeriesSplit:時系列データ専用分割
・GroupKFold:グループを考慮した交差検証
交差検証手法:
・KFold:基本的なk分割交差検証
・StratifiedKFold:クラス比率を保持した交差検証
・RepeatedKFold:複数回実行による安定化
・LeaveOneOut:各サンプルを1つずつテストに使用
主要評価指標:
・mean_absolute_error:平均絶対誤差(回帰)
・mean_squared_error:平均二乗誤差(回帰)
・accuracy_score:正答率(分類)
・classification_report:詳細な分類性能レポート
統一インターフェース:
・fit():モデルの学習
・predict():予測の実行
・transform():データ変換
・fit_transform():学習と変換を同時実行
実務でのワークフロー:
1. データの読み込みと前処理
2. 訓練・テストデータの分割
3. モデルの選択と学習
4. 交差検証による性能評価
5. ハイパーパラメータ調整
6. 最終モデルの構築と評価