SuperAPI AI 工具集

scikit-learn

数据与分析

查看项目

更新于 10-15 21:40

技能介绍

用途:scikit-learn 是 Python 的经典机器学习库,适用于分类、回归、聚类、降维、预处理与特征工程、模型评估与交叉验证、超参数调优以及构建 ML 流水线。

主要能力:提供多种算法。分类包括逻辑回归(基线、可解释)、随机森林(通用、可处理非线性并给出特征重要性)、梯度提升(表格数据精度高)、SVM(适合高维小样本)、KNN(简单、基于实例)。回归包括线性回归、Ridge/Lasso 正则化、随机森林、梯度提升。聚类包括 KMeans(需指定 n_clusters)、DBSCAN(按 eps 密度)、层次聚类、高斯混合(n_components)。降维包括 PCA、t-SNE、UMAP。

使用方式:用 Pipeline 串联变换与模型,防止数据泄漏;用 ColumnTransformer 对不同列应用不同变换,FeatureUnion 组合多种特征提取。常见预处理流程为缺失值填充(SimpleImputer)、数值缩放(StandardScaler、MinMaxScaler)、类别编码(OneHotEncoder、OrdinalEncoder),可选特征选择或多项式特征。评估可用 KFold、StratifiedKFold、TimeSeriesSplit、LeaveOneOut;分类指标有准确率、F1、ROC-AUC、精确率/召回率,回归指标有 RMSE、MAE、R²。调参可用 GridSearchCV、RandomizedSearchCV、HalvingGridSearchCV(需 sklearn 0.24+)。

适用场景与限制:适合表格数据与经典机器学习任务。最佳实践包括先划分数据、使用流水线、对距离类算法(KNN、SVM、PCA)做缩放、对不平衡数据分层、交叉验证、查看学习曲线。常见陷阱是缩放器在全量数据上拟合、对不平衡数据用准确率、超参数过多、忽略特征重要性。文档见 https://scikit-learn.org/ ,用户指南见 https://scikit-learn.org/stable/user_guide.html ,算法速查见 https://scikit-learn.org/stable/tutorial/machine_learning_map/ 。