API 参考

这是scikit-learn的类和函数参考。请参阅完整的用户指南以获取更多详细信息,因为类和函数的原始规范可能不足以提供有关其用法的完整指南。有关在API上重复的概念的参考,请参阅“通用术语表和API元素”

sklearn.base:基类和实用程序函数

所有估计量的基类。

用于投票分类器

基类

base.BaseEstimator scikit-learn中所有估计器的基类
base.BiclusterMixin scikit-learn中所有双簇估计器的Mixin类
base.ClassifierMixin scikit-learn中所有分类器的Mixin类。
base.ClusterMixin scikit-learn中所有聚类估计器的Mixin类。
base.DensityMixin scikit-learn中所有密度估计器的Mixin类。
base.RegressorMixin scikit-learn中所有回归估计器的Mixin类。
base.TransformerMixin scikit-learn中所有转换器的Mixin类。
feature_selection.SelectorMixin 给定支持掩码、可以执行特征选择的转换器的Mixin类。

函数

base.clone(estimator, *[, safe]) 构造一个具有相同参数的新估算器。
base.is_classifier(estimator) 如果给定的估计器(可能)是分类器,则返回True。
base.is_regressor(estimator) 如果给定的估计器(可能)是回归器,则返回True。
config_context(** new_config) 全局scikit-learn配置的上下文管理器
get_config() 检索set_config配置的当前值
set_config([assume_finite, working_memory, …]) 设置全局scikit-learn配置
show_versions() 打印有用的调试信息

sklearn.calibration:概率校准

校准预测概率。

用户指南:有关更多详细信息,请参见“概率校准”部分。

calibration.CalibratedClassifierCV([…]) 等渗回归或逻辑回归的概率校正。
More Actionscalibration.calibration_curve(y_true,y_prob,*) 计算校准曲线的真实和预测概率。

sklearn.cluster:聚类

sklearn.cluster模块收集了流行的无监督聚类算法。

用户指南:有关更多详细信息,请参见“ 聚类“和”双聚类“部分。

cluster.AffinityPropagation(*[, damping, …]) 执行数据的相似性传播聚类。
cluster.AgglomerativeClustering([…]) 聚集聚类
cluster.Birch(*[, threshold, …]) 实现Birch聚类算法。
cluster.DBSCAN([eps, min_samples, metric, …]) 从向量数组或距离矩阵执行DBSCAN聚类。
cluster.FeatureAgglomeration([n_clusters,...]) 聚集函数。
cluster.KMeans([n_clusters,init,n_init,...]) K-均值聚类。
cluster.MiniBatchKMeans([n_clusters,init,...]) 小批次K均值聚类。
cluster.MeanShift(*[, bandwidth, seeds, …]) 使用扁平内核的均值漂移聚类。
cluster.OPTICS(* [,min_samples,max_eps,…]) 从向量数组估计聚类结构。
cluster.SpectralClustering([n_clusters,...]) 将聚类应用于规范化拉普拉斯算子的投影。
cluster.SpectralBiclustering([n_clusters,...]) 频谱双聚类(Kluger,2003)。
cluster.SpectralCoclustering([n_clusters,...]) 频谱共聚算法(Dhillon,2001)。

函数

cluster.affinity_propagation(S,* [,...]) 执行数据的相似性传播聚类
cluster.cluster_optics_dbscan(*,…) 对任意epsilon执行DBSCAN提取。
cluster.cluster_optics_xi(*, reachability, …) 根据Xi-steep方法自动提取聚类。
cluster.compute_optics_graph(X, *, …) 计算OPTICS可达性图。
cluster.dbscan(X [,eps,min_samples,…]) 从向量数组或距离矩阵执行DBSCAN聚类。
cluster.estimate_bandwidth(X, *[, quantile, …]) 估计均值漂移算法要使用的带宽。
cluster.k_means(X,n_clusters,* [,…]) K-均值聚类算法。
cluster.mean_shift(X, *[, bandwidth, seeds, …]) 使用扁平内核执行数据的均值漂移聚类。
cluster.spectral_clustering(affinity, *[, …]) 将聚类应用于规范化拉普拉斯算子的投影。
cluster.ward_tree(X, *[, connectivity, …]) 基于特征矩阵的Ward聚类。

sklearn.compose:复合估计器

用于使用Transformer转换器构建复合模型的元估计器

除了当前的内容外,这个模块最终将成为Pipeline和FeatureUnion的翻新版本。

用户指南:有关更多详细信息,请参见“ 管道和复合估计器”部分。

compose.ColumnTransformer(transformers, *[, …]) 将转换器应用于数组或pandas DataFrame的列。
compose.TransformedTargetRegressor([…]) 元估算器,可对转换后的目标进行回归。
compose.make_column_transformer(...) 从给定的转换器构造一个列转换器。
compose.make_column_selector([pattern, …]) 创建可调用对象以选择要与ColumnTransformer一起使用的列。

sklearn.covariance:协方差估计器

sklearn.covariance模块包括可靠地估计给定一组点的特征的协方差的方法和算法。定义为协方差的逆的精度矩阵也被估计。协方差估计与高斯图形模型理论密切相关。

用户指南:有关更多详细信息,请参见“协方差估计”部分。

covariance.EmpiricalCovariance(* [,…]) 最大似然协方差估计器
covariance.EllipticEnvelope(* [,…]) 用于检测高斯分布数据集中异常值的对象
covariance.GraphicalLasso([alpha, mode, …]) 带有l1惩罚估计器的稀疏逆协方差估计
covariance.GraphicalLassoCV(* [,alphas,…]) 带有l1惩罚的交叉验证选择的稀疏逆协方差
covariance.LedoitWolf(* [,store_precision,…]) LedoitWolf估计器
covariance.MinCovDet(* [,store_precision,…]) 最小协方差决定因素(MCD):协方差的稳健估计器
covariance.OAS(* [,store_precision,…]) Oracle近似收缩估计
covariance.ShrunkCovariance(* [,…]) 收缩协方差估计
covariance.empirical_covariance(X, *[, …]) 计算最大似然协方差估计器
covariance.graphical_lasso(emp_cov,alpha,*) l1惩罚协方差估计器
covariance.ledoit_wolf(X, *[, …]) 估计收缩的Ledoit-Wolf协方差矩阵
covariance.oas(X, *[, assume_centered]) 使用Oracle近似收缩算法估算协方差
covariance.shrunk_covariance(emp_cov [,…]) 计算对角线上收缩的协方差矩阵

sklearn.cross_decomposition:交叉分解

用户指南:有关更多详细信息,请参见“ 交叉分解”部分。

cross_decomposition.CCA([n_components,...]) CCA典型相关分析。
cross_decomposition.PLSCanonical([…]) PLSCanonical实现了原始Wold算法的2块规范PLS [Tenenhaus 1998] p.204,在[Wegelin 2000]中称为PLS-C2A。
cross_decomposition.PLSRegression([…]) PLS回归
cross_decomposition.PLSSVD([n_components,...]) 偏最小二乘SVD

sklearn.datasets:数据集

sklearn.datasets模块包括用于加载数据集的实用程序,包括用于加载和获取流行的参考数据集的方法。它还具有一些人工数据生成器。

用户指南:有关更多详细信息,请参见“ 数据集加载实用程序”部分。

加载器

datasets.clear_data_home([data_home]) 删除数据主目录缓存的所有内容。
datasets.dump_svmlight_file(X,y,f,* [,…]) 以svmlight / libsvm文件格式转储数据集。
datasets.fetch_20newsgroups(* [,data_home,…]) 从20个新闻组数据集中加载文件名和数据(分类)。
datasets.fetch_20newsgroups_vectorized(* [,…]) 加载20个新闻组数据集并将其向量化为令牌计数(分类)。
datasets.fetch_california_housing(* [,…]) 加载加利福尼亚住房数据集(回归)。
datasets.fetch_covtype(* [,data_home,…]) 加载covertype数据集(分类)。
datasets.fetch_kddcup99(*[, subset, …]) 加载kddcup99数据集(分类)。
datasets.fetch_lfw_pairs(*[, subset, …]) 加载标记过的人脸Wild (LFW) pairs数据集(分类)。
datasets.fetch_lfw_people(* [,data_home,…]) 加载标记过的人脸Wild (LFW) people数据集(分类)。
datasets.fetch_olivetti_faces(* [,…]) 从AT&T(分类)中加载Olivetti人脸数据集。
datasets.fetch_openml([name, version, …]) 通过名称或数据集ID从openml获取数据集。
datasets.fetch_rcv1(*[, data_home, subset, …]) 加载RCV1多标签数据集(分类)。
datasets.fetch_species_distributions(* [,…]) Phillips等人的物种分布数据集加载程序。
datasets.get_data_home([data_home]) 返回scikit-learn数据目录的路径。
datasets.load_boston(* [,return_X_y]) 加载并返回波士顿房价数据集(回归)。
datasets.load_breast_cancer(* [,return_X_y,…]) 加载并返回威斯康星州乳腺癌数据集(分类)。
datasets.load_diabetes(* [,return_X_y,as_frame]) 加载并返回糖尿病数据集(回归)。
datasets.load_digits(* [,n_class,…]) 加载并返回数字数据集(分类)。
datasets.load_files(container_path,* [,...]) 加载带有类别作为子文件夹名称的文本文件。
datasets.load_iris(* [,return_X_y,as_frame]) 加载并返回鸢尾花数据集(分类)。
datasets.load_linnerud(* [,return_X_y,as_frame]) 加载并返回linnerud物理锻炼数据集。
datasets.load_sample_image(image_name) 加载单个样本图像的numpy数组
datasets.load_sample_images() 加载样本图像以进行图像处理。
datasets.load_svmlight_file(F, *[, …]) 将svmlight / libsvm格式的数据集加载到稀疏CSR矩阵中
datasets.load_svmlight_files(files, *[, …]) 从SVMlight格式的多个文件加载数据集
datasets.load_wine(* [,return_X_y,as_frame]) 加载并返回葡萄酒数据集(分类)。

样本生成器

datasets.make_biclusters(shape, n_clusters, *) 生成具有恒定块对角线结构的数组以进行双聚类。
datasets.make_blobs([n_samples, n_features, …]) 生成各向同性的高斯团簇。
datasets.make_checkerboard(shape, n_clusters, *) 生成具有棋盘格结构的数组以进行二聚类。
datasets.make_circles([n_samples, shuffle, …]) 在2维中制作一个包含较小圆圈的大圆圈。
datasets.make_classification([n_samples,...]) 生成随机的n类分类问题。
datasets.make_friedman1([n_samples,...]) 生成“ Friedman#1”回归问题
datasets.make_friedman2([n_samples, noise, …]) 生成“ Friedman#2”回归问题
datasets.make_friedman3([n_samples, noise, …]) 生成“ Friedman#3”回归问题
datasets.make_gaussian_quantiles(*[, mean, …]) 生成各向同性高斯分布,用分位数标注样本
datasets.make_hastie_10_2([n_samples,...]) 生成Hastie等人使用的二进制分类数据。
datasets.make_low_rank_matrix([n_samples,...]) 生成具有钟形奇异值的低阶矩阵
datasets.make_moons([n_samples, shuffle, …]) 做两个交错的半圈
datasets.make_multilabel_classification([…]) 生成随机的多标签分类问题。
datasets.make_regression([n_samples,...]) 产生随机回归问题。
datasets.make_s_curve([n_samples, noise, …]) 生成S曲线数据集。
datasets.make_sparse_coded_signal(n_samples, …) 生成信号作为字典元素的稀疏组合。
datasets.make_sparse_spd_matrix([dim, …]) 生成稀疏对称正定矩阵。
datasets.make_sparse_uncorrelated([…]) 使用稀疏的不相关设计生成随机回归问题
datasets.make_spd_matrix(n_dim,* [,...]) 生成随机对称的正定矩阵。
datasets.make_swiss_roll([n_samples, noise, …]) 生成瑞士卷数据集。

sklearn.decomposition:矩阵分解

sklearn.decomposition模块包括矩阵分解算法,其中包括PCA,NMF或ICA。该模块的大多数算法都可以视为降维技术。

用户指南:有关更多详细信息,请参见"分解组件中的信号(矩阵分解问题)"部分。

decomposition.DictionaryLearning([…]) 字典学习
decomposition.FactorAnalysis([n_components,...]) 因子分析(FA)
decomposition.FastICA([n_components,...]) FastICA:一种用于独立成分分析的快速算法。
decomposition.IncrementalPCA([n_components,...]) 增量主成分分析(IPCA)。
decomposition.KernelPCA([n_components,...]) 内核主成分分析(KPCA)
decomposition.LatentDirichletAllocation([…]) 在线变分贝叶斯算法的潜在狄利克雷分配
decomposition.MiniBatchDictionaryLearning([…]) 小批量字典学习
decomposition.MiniBatchSparsePCA([…]) 小批量稀疏主成分分析
decomposition.NMF([n_components,init,...]) 非负矩阵分解(NMF)
decomposition.PCA([n_components, copy, …]) 主成分分析(PCA)。
decomposition.SparsePCA([n_components,...]) 稀疏主成分分析(SparsePCA)
decomposition.SparseCoder(dictionary, *[, …]) 稀疏编码
decomposition.TruncatedSVD([n_components,...]) 使用截断的SVD(aka LSA)进行降维。
decomposition.dict_learning(X,n_components,…) 解决字典学习矩阵分解问题。
decomposition.dict_learning_online(X[, …]) 在线解决字典学习矩阵分解问题。
decomposition.fastica(X [,n_components,…]) 执行快速独立成分分析。
decomposition.non_negative_factorization(X) 计算非负矩阵分解(NMF)
decomposition.sparse_encode(X, dictionary, *) 稀疏编码

sklearn.discriminant_analysis:判别分析

线性判别分析和二次判别分析

用户指南:有关更多详细信息,请参见“ 线性和二次判别分析”部分。

discriminant_analysis.LinearDiscriminantAnalysis(*) 线性判别分析
discriminant_analysis.QuadraticDiscriminantAnalysis(*) 二次判别分析

sklearn.dummy:虚拟估计器

用户指南:有关更多详细信息,请参阅指标和评分:量化预测的质量部分。

dummy.DummyClassifier(*[, strategy, …]) DummyClassifier是使用简单规则进行预测的分类器。
dummy.DummyRegressor(*[, strategy, …]) DummyRegressor是使用简单规则进行预测的回归器。

sklearn.ensemble:集成方法

sklearn.ensemble模块包括基于集成的分类,回归和异常检测方法。

用户指南:有关更多详细信息,请参见集成方法部分。

ensemble.AdaBoostClassifier([…]) AdaBoost分类器。
ensemble.AdaBoostRegressor([base_estimator,...]) AdaBoost回归器。
ensemble.BaggingClassifier([base_estimator,...]) 装袋分类器。
ensemble.BaggingRegressor([base_estimator,...]) 装袋回归器。
ensemble.ExtraTreesClassifier([…]) 极端树分类器。
ensemble.ExtraTreesRegressor([n_estimators,…]) 极端树回归器。
ensemble.GradientBoostingClassifier(* [,…]) 用于分类的梯度提升。
ensemble.GradientBoostingRegressor(* [,…]) 用于回归的梯度提升。
ensemble.IsolationForest(* [,n_estimators,…]) 孤立森林算法。
ensemble.RandomForestClassifier([…]) 随机森林分类器。
ensemble.RandomForestRegressor([…]) 随机森林回归器。
ensemble.RandomTreesEmbedding([…]) 完全随机树的集合。
ensemble.StackingClassifier(estimators[, …]) 带有最终分类器的估计器堆栈。
ensemble.StackingRegressor(estimators[, …]) 带有最终回归器的估计器堆栈。
ensemble.VotingClassifier(estimators, *[, …]) 针对不拟合估计器的软投票或多数规则分类器。
ensemble.VotingRegressor(estimators, *[, …]) 对不拟合估计器的预测投票回归。
ensemble.HistGradientBoostingRegressor([…]) 基于直方图的梯度提升回归树。
ensemble.HistGradientBoostingClassifier([…]) 基于直方图的梯度提升分类树。

sklearn.exceptions:异常和警告

sklearn.exceptions模块包括scikit-learn中使用的所有自定义警告和错误类。

exceptions.ChangedBehaviorWarning 警告类,用于将行为的任何更改通知用户。
exceptions.ConvergenceWarning 自定义警告以捕获收敛问题
exceptions.DataConversionWarning 警告,用于通知代码中发生的隐式数据转换。
exceptions.DataDimensionalityWarning 自定义警告以通知潜在的数据维度问题。
exceptions.EfficiencyWarning 警告,用于通知用户计算效率低下。
exceptions.FitFailedWarning 如果在拟合估计器时发生错误,则使用警告类。
exceptions.NotFittedError 如果在拟合之前使用了估计量,则引发异常类。
exceptions.NonBLASDotWarning 点操作不使用BLAS时使用的警告。
exceptions.UndefinedMetricWarning 指标无效时使用的警告

sklearn.experimental:实验

sklearn.experimental模块提供了可导入的模块,这些模块允许使用实验性功能或估算器。

实验性的功能和估计器不受弃用周期的限制。使用它们需要您自担风险!

experimental.enable_hist_gradient_boosting 启用基于直方图的梯度增强估计器。
experimental.enable_iterative_imputer 使迭代的输入

sklearn.feature_extraction特征提取

sklearn.feature_extraction模块负责从原始数据中提取特征。当前,它包括从文本和图像中提取特征的方法。

用户指南:有关更多详细信息,请参见特征提取部分。

feature_extraction.DictVectorizer(* [,…]) 将特征值映射列表转换为矢量。
feature_extraction.FeatureHasher([…]) 实现特征哈希,又名哈希技巧。

从图片

sklearn.feature_extraction.image子模块收集实用程序以从图像中提取特征。

feature_extraction.image.extract_patches_2d(...) 将2D图像重塑为补丁集合
feature_extraction.image.grid_to_graph(n_x,n_y) 像素间连接图
feature_extraction.image.img_to_graph(img,*) 像素间梯度连接图
feature_extraction.image.reconstruct_from_patches_2d(...) 从所有修补程序重建图像。
feature_extraction.image.PatchExtractor(* [,…]) 从图像集合中提取补丁

从文字

sklearn.feature_extraction.text子模块收集实用程序以从文本文档构建特征向量。

feature_extraction.text.CountVectorizer(* [,…]) 将文本文档集合转换为令牌计数矩阵
feature_extraction.text.HashingVectorizer(*) 将文本文档的集合转换为令牌出现的矩阵
feature_extraction.text.TfidfTransformer(*) 将计数矩阵转换为标准化的tf或tf-idf表示形式
feature_extraction.text.TfidfVectorizer(* [,…]) 将原始文档集合转换为TF-IDF功能矩阵。

sklearn.feature_selection:特征选择

sklearn.feature_selection模块实现特征选择算法。目前,它包括单变量过滤器选择方法和递归特征消除算法。

用户指南:有关更多详细信息,请参见“特征选择”部分。

feature_selection.GenericUnivariateSelect([…]) 具有可配置策略的单变量特征选择器。
feature_selection.SelectPercentile([…]) 根据最高分数的百分位数选择特征。
feature_selection.SelectKBest([score_func,k]) 根据k个最高分数选择特征。
feature_selection.SelectFpr([score_func,alpha]) 过滤器:根据FPR测试,在alpha以下选择p值。
feature_selection.SelectFdr([score_func,alpha]) 过滤器:为估计的错误发现率选择p值
feature_selection.SelectFromModel(estimator, *) 元转换器,用于根据重要度选择特征。
feature_selection.SelectFwe([score_func,alpha]) 过滤器:选择与Family-wise错误率相对应的p值
feature_selection.RFE(estimator, *[, …]) 消除递归特征的特征排名。
feature_selection.RFECV(estimator, *[, …]) 通过消除递归特征和交叉验证最佳特征数选择来进行特征排名。
feature_selection.VarianceThreshold([threshold]) 删除所有低方差特征的特征选择器。
feature_selection.chi2(X,y) 计算每个非负特征与类之间的卡方统计量。
feature_selection.f_classif(X,y) 计算提供的样本的ANOVA F值。
feature_selection.f_regression(X,y,* [,中心]) 单变量线性回归测试。
feature_selection.mutual_info_classif(X,y,*) 估计离散目标变量的互信息。
feature_selection.mutual_info_regression(X,y,*) 估计一个连续目标变量的互信息。

sklearn.gaussian_process:高斯过程

sklearn.gaussian_process模块实现基于高斯过程的回归和分类。

用户指南:有关更多详细信息,请参见“ 高斯过程”部分。

gaussian_process.GaussianProcessClassifier([…]) 基于拉普拉斯近似的高斯过程分类(GPC)。
gaussian_process.GaussianProcessRegressor([…]) 高斯过程回归(GPR)。

内核:

gaussian_process.kernels.CompoundKernel(Kernel) 由一组其他内核组成的内核。
gaussian_process.kernels.ConstantKernel([…]) 恒定内核。
gaussian_process.kernels.DotProduct([…]) 点积内核。
gaussian_process.kernels.ExpSineSquared([…]) Exp-Sine-Squared核(也称为周期核)。
gaussian_process.kernels.Exponentiation(...) 幂运算内核采用一个基本内核和一个标量参数 p 并通过组合它们
gaussian_process.kernels.Hyperparameter 以命名元组形式表示的内核超参数规范。
gaussian_process.kernels.Kernel 所有内核的基类。
gaussian_process.kernels.Matern([…]) 主内核。
gaussian_process.kernels.PairwiseKernel([…]) sklearn.metrics.pairwise中的内核包装。
gaussian_process.kernels.Product(k1,k2) Product内核采用两个内核k1 和 k2 并通过组合它们
gaussian_process.kernels.RBF([length_scale,…]) 径向基函数内核(又名平方指数内核)。
gaussian_process.kernels.RationalQuadratic([…]) 有理二次方内核。
gaussian_process.kernels.Sum(k1,k2) Sum内核采用两个内核k1 和 k2 并通过组合它们
gaussian_process.kernels.WhiteKernel([…]) White kernel.

sklearn.impute:插补

缺失值估算的转换器

用户指南:有关更多详细信息,请参见缺失值的插补部分。

impute.SimpleImputer(* [,missing_values,…]) 插补转换器,用于填补缺失值。
impute.IterativeImputer([estimator, …]) 从所有其他特征中估计每个特征的多元插补器。
impute.MissingIndicator(* [,missing_values,…]) 缺失值的二进制指标。
impute.KNNImputer(* [,missing_values,…]) 用k近邻填充缺失值。

sklearn.inspection:检查

sklearn.inspection模块包括用于模型检查的工具。

inspection.partial_dependence(estimator, X, …) features的部分依赖。
inspection.permutation_importance(estimator, …) 特征评价中的置换重要性[Rd9e56ef97513-BRE]

绘图

inspection.PartialDependenceDisplay(...) 部分依赖图(PDP)可视化。
inspection.plot_partial_dependence(…[,…]) 部分依赖图。

sklearn.isotonic:等渗回归

用户指南:有关更多详细信息,请参见“等渗回归”部分。

isotonic.IsotonicRegression(* [,y_min,…]) 等渗回归模型。
isotonic.check_increasing(x,y) 确定y是否与x单调相关。
isotonic.isotonic_regression(y,* [,…]) 求解等渗回归模型。

sklearn.kernel_approximation内核近似

sklearn.kernel_approximation模块基于傅立叶变换实现了几个近似的内核特征图。

用户指南:有关更多详细信息,请参见“内核近似”部分。

kernel_approximation.AdditiveChi2Sampler(*) chi2内核的近似特征图。
kernel_approximation.Nystroem([kernel, …]) 使用训练数据的子集近似核图。
kernel_approximation.RBFSampler(* [,gamma,…]) 通过傅立叶变换的蒙特卡洛近似来近似RBF内核的特征图。
kernel_approximation.SkewedChi2Sampler(* [,…]) 通过傅立叶变换的蒙特卡洛近似来近似“倾斜的卡方”核的特征图。

sklearn.kernel_ridge内核岭回归

模块sklearn.kernel_ridge实现内核岭回归。

用户指南:有关更多详细信息,请参见“ 内核岭回归”部分。

| kernel_ridge.KernelRidge([alpha,kernel,...]) |内核岭回归。 |

sklearn.linear_model:线性模型

sklearn.linear_model模块实现了各种线性模型。

用户指南:有关更多详细信息,请参见“ 线性模型”部分。

以下小节仅是粗略的指导原则:相同的估算器可以根据其参数分为多个类别。

线性分类

linear_model.LogisticRegression([penalty, …]) Logistic回归(又名logit,MaxEnt)分类器。
linear_model.LogisticRegressionCV(* [,Cs,…]) Logistic回归CV(又名logit,MaxEnt)分类器。
linear_model.PassiveAggressiveClassifier(*) 被动感知分类器
linear_model.Perceptron(*[, penalty, alpha, …]) 在《用户指南》中阅读更多内容。
linear_model.RidgeClassifier([α, …]) 使用Ridge回归的分类器。
linear_model.RidgeClassifierCV([alphas,...]) 带有内置交叉验证的Ridge分类器。
linear_model.SGDClassifier([loss, penalty, …]) 具有SGD训练的线性分类器(SVM,逻辑回归等)。

经典线性回归器

linear_model.LinearRegression(* [,…]) 普通最小二乘线性回归。
linear_model.Ridge([alpha,fit_intercept,…]) 具有l2正则化的线性最小二乘法。
linear_model.RidgeCV([alphas,...]) 带有内置交叉验证的Ridge回归。
linear_model.SGDRegressor([loss, penalty, …]) 通过使用SGD最小化正则经验损失来拟合线性模型

具有特征选择的回归器

以下估计器具有内置的特征选择拟合程序,但是任何使用L1或弹性网惩罚的估计器也将执行特征选择:通常SGDRegressorSGDClassifier具有适当的罚分。

linear_model.ElasticNet([alpha,l1_ratio,…]) 将L1和L2先验组合作为正则化器的线性回归。
linear_model.ElasticNetCV(* [,l1_ratio,…]) 沿着正则化路径具有迭代拟合的弹性网模型。
linear_model.Lars(* [,fit_intercept,…]) 最小角度回归模型。
linear_model.LarsCV(* [,fit_intercept,…]) 交叉验证的最小角度回归模型。
linear_model.Lasso([alpha,fit_intercept,…]) 以L1先验作为正则化器训练的线性模型(又名套索)
linear_model.LassoCV(* [,eps,n_alphas,…]) 沿正则化路径迭代拟合的套索线性模型。
linear_model.LassoLars([α, …]) 套索模型与最小角度回归拟合
linear_model.LassoLarsCV(* [,fit_intercept,…]) 使用LARS算法进行交叉验证的套索。
linear_model.LassoLarsIC([criterion, …]) 使用BIC或AIC选择模型的套索模型与Lars拟合
linear_model.OrthogonalMatchingPursuit(* [,…]) 正交匹配追踪模型(OMP)
linear_model.OrthogonalMatchingPursuitCV(*) 交叉验证的正交匹配追踪模型(OMP)。

贝叶斯回归器

linear_model.ARDRegression(* [,n_iter,tol,…]) 贝叶斯ARD回归。
linear_model.BayesianRidge(* [,n_iter,tol,…]) 贝叶斯岭回归。

具有特征选择的多任务线性回归器

这些估计器共同拟合多个回归问题(或任务),同时得出稀疏系数。尽管推断的系数在任务之间可能有所不同,但它们被约束为在选定的特征(非零系数)上达成一致。

linear_model.MultiTaskElasticNet([α, …]) 以L1 / L2混合范数为正则训练的多任务弹性网模型
linear_model.MultiTaskElasticNetCV(* [,…]) 具有内置交叉验证的多任务L1 / L2 弹性网。
linear_model.MultiTaskLasso([α, …]) 以L1 / L2混合范数为正则训练的多任务套索模型。
linear_model.MultiTaskLassoCV(* [,eps,…]) 以L1 / L2混合范数为正则训练的带有交叉验证的多任务套索模型。

异常值稳健回归器

使用Huber损失的任何估计量也将对异常值具有鲁棒性,例如 SGDRegressor使用loss='huber'

linear_model.HuberRegressor(* [,epsilon,…]) 对异常值具有鲁棒性的线性回归模型。
linear_model.RANSACRegressor([…]) RANSAC(随机抽样共识)算法。
linear_model.TheilSenRegressor(* [,…]) Theil-Sen估算器:稳健的多元回归模型。

广义线性回归模型(GLM)

这些模型允许响应变量具有除正态分布之外的其他误差分布:

linear_model.PoissonRegressor(*[, α, …]) 具有泊松分布的广义线性模型。
linear_model.TweedieRegressor(*[, power, …]) 具有Tweedie分布的广义线性模型。
linear_model.GammaRegressor(*[, α, …]) 具有Gamma分布的广义线性模型。

杂项

linear_model.PassiveAggressiveRegressor(* [,…]) 被动感知回归
linear_model.enet_path(X,y,* [,l1_ratio,…]) 用坐标下降计算弹性网路径。
linear_model.lars_path(X,y [,Xy,Gram,…]) 使用LARS算法计算最小角度回归或套索路径[1]
linear_model.lars_path_gram(Xy,Gram,*,…) 统计模式下的lars_path [1]
linear_model.lasso_path(X,y,* [,eps,…]) 计算具有坐标下降的套索路径
linear_model.orthogonal_mp(X,y,* [,…]) 正交匹配追踪(OMP)
linear_model.orthogonal_mp_gram(Gram,Xy,*) 伽马正交匹配追踪(OMP)
linear_model.ridge_regression(X,y,alpha,*) 用正规方程法求解岭方程。

sklearn.manifold:流形学习

sklearn.manifold模块实现数据嵌入技术。

用户指南:有关更多详细信息,请参见“流形学习”部分。

manifold.Isomap(* [,n_neighbors,…]) 等值图嵌入
manifold.LocallyLinearEmbedding(* [,…]) 局部线性嵌入
manifold.MDS([n_components, metric, n_init, …]) 多维缩放
manifold.SpectralEmbedding([n_components,...]) 频谱嵌入用于非线性降维。
manifold.TSNE([n_components, perplexity, …]) t分布随机邻接嵌入。
manifold.locally_linear_embedding(X, *, …) 对数据执行局部线性嵌入分析。
manifold.smacof(dissimilarities, *[, …]) 使用SMACOF算法计算多维缩放。
manifold.spectral_embedding(adjacency, *[, …]) 将样本投影到图拉普拉斯算子的第一个特征向量上。
manifold.trustworthiness(X,X_embedded,* [,…]) 表示保留本地结构的程度。

sklearn.metrics:指标

有关更多详细信息,请参阅用户指南的“指标和评分:量化预测的质量”部分和“成对度量,近似关系和内核”部分。

sklearn.metrics模块包括评分功能,性能指标以及成对指标和距离计算。

选型界面

有关更多详细信息,请参见用户指南的“评分参数:定义模型评估规则”部分。

metrics.check_scoring(estimator[, scoring, …]) 从用户选项确定计分器。
metrics.get_scorer(得分) 从字符串中获取一个得分手。
metrics.make_scorer(score_func,* [,…]) 根据绩效指标或损失函数确定得分手。

分类指标

有关更多详细信息,请参见用户指南的“ 分类指标”部分。

metrics.accuracy_score(y_true,y_pred,* [,…]) 精度分类得分。
metrics.auc(x,y) 使用梯形法则计算曲线下面积(AUC)
metrics.average_precision_score(y_true,...) 根据预测分数计算平均精度(AP)
metrics.balanced_accuracy_score(y_true,...) 计算平衡精度
metrics.brier_score_loss(y_true,y_prob,*) 计算Brier分数。
metrics.classification_report(y_true,y_pred,*) 建立一个显示主要分类指标的文本报告。
metrics.cohen_kappa_score(y1,y2,* [,...]) 科恩的kappa:一种用于度量注释者之间协议的统计数据。
metrics.confusion_matrix(y_true,y_pred,*) 计算混淆矩阵以评估分类的准确性。
metrics.dcg_score(y_true,y_score,* [,k,...]) 计算折现累积收益。
metrics.f1_score(y_true,y_pred,* [,…]) 计算F1分数,也称为平衡F分数或F测量
metrics.fbeta_score(y_true,y_pred,*,beta) 计算F-beta分数
metrics.hamming_loss(y_true,y_pred,* [,…]) 计算平均汉明损失。
metrics.hinge_loss(y_true,pred_decision,*) 平均铰链损耗(非常规)
metrics.jaccard_score(y_true,y_pred,* [,…]) 雅卡德相似系数得分
metrics.log_loss(y_true,y_pred,* [,eps,…]) 对数损失,aka逻辑损失或交叉熵损失。
metrics.matthews_corrcoef(y_true,y_pred,*) 计算马修斯相关系数(MCC)
metrics.multilabel_confusion_matrix(y_true,...) 为每个类别或样本计算混淆矩阵
metrics.ndcg_score(y_true,y_score,* [,k,...]) 计算归一化折现累积增益。
metrics.precision_recall_curve(y_true,...) 计算不同概率阈值的精确召回对
metrics.precision_recall_fscore_support(...) 计算每个班级的精度,召回率,F量度和支持
metrics.precision_score(y_true,y_pred,* [,…]) 计算精度
metrics.recall_score(y_true,y_pred,* [,…]) 计算召回率
metrics.roc_auc_score(y_true,y_score,* [,…]) 根据预测分数计算接收器工作特性曲线(ROC AUC)下的面积。
metrics.roc_curve(y_true,y_score,* [,…]) 计算接收器工作特性(ROC)
metrics.zero_one_loss(y_true,y_pred,* [,…]) 零一分类损失。

回归指标

有关更多详细信息,请参见用户指南的"回归指标"部分。

metrics.explained_variance_score(y_true,...) 解释方差回归得分函数
metrics.max_error(y_true,y_pred) max_error指标计算最大残差。
metrics.mean_absolute_error(y_true,y_pred,*) 平均绝对误差回归损失
metrics.mean_squared_error(y_true,y_pred,*) 均方误差回归损失
metrics.mean_squared_log_error(y_true,y_pred,*) 均方对数误差回归损失
metrics.median_absolute_error(y_true,y_pred,*) 中值绝对误差回归损失
metrics.r2_score(y_true,y_pred,* [,…]) R ^ 2(确定系数)回归得分函数。
metrics.mean_poisson_deviance(y_true,y_pred,*) 平均泊松偏差回归损失。
metrics.mean_gamma_deviance(y_true,y_pred,*) 平均伽玛偏差回归损失。
metrics.mean_tweedie_deviance(y_true,y_pred,*) 平均Tweedie偏差回归损失。

多标签排名指标

有关更多详细信息,请参见用户指南的“ 多标签排名指标”部分。

metrics.coverage_error(y_true,y_score,* [,…]) 覆盖误差测量
metrics.label_ranking_average_precision_score(...) 计算基于排名的平均精度
metrics.label_ranking_loss(y_true,y_score,*) 计算排名损失度量

聚类指标

有关更多详细信息,请参见用户指南的“ 聚类性能评估”部分。

sklearn.metrics.cluster子模块包含用于聚类分析结果的评估指标。评估有两种形式:

  • 监督,它为每个样本使用基本事实类别值。
  • 无监督的,它不会并且无法衡量模型本身的“质量”。
metrics.adjusted_mutual_info_score(…[,…]) 调整两个簇之间的相互信息。
metrics.adjusted_rand_score(labels_true,...) 经过调整的兰德指数。
metrics.calinski_harabasz_score(X, labels) 计算Calinski和Harabasz得分。
metrics.davies_bouldin_score(X, labels) 计算Davies-Bouldin分数。
metrics.completeness_score(labels_true,...) 给定真值的聚类标记的完备性度量。
metrics.cluster.contingency_matrix(…[,…]) 建立一个列联矩阵来描述标签之间的关系。
metrics.fowlkes_mallows_score(labels_true,...) 度量一组点的两个簇的相似性。
metrics.homogeneity_completeness_v_measure(...) 一次计算同质性和完整性以及V-Measure分数。
metrics.homogeneity_score(labels_true,...) 给定真值的聚类标记的同质性度量。
metrics.mutual_info_score(labels_true,...) 两个簇之间的相互信息。
metrics.normalized_mutual_info_score(…[,…]) 两个簇之间的标准化互信息。
metrics.silhouette_score(X, labels, *[, …]) 计算所有样本的平均轮廓系数。
metrics.silhouette_samples(X, labels, *[, …]) 计算每个样本的轮廓系数。
metrics.v_measure_score(labels_true,…[,beta]) 给定一个真值的V-度量聚类标记。

分类指标

有关更多详细信息,请参见用户指南的"分类评估"部分。

| metrics.consensus_score(a, b, *[, similarity]) | 两个簇的相似性。 |

成对指标

有关更多详细信息,请参见用户指南的"成对度量,近似关系和内核"部分。

metrics.pairwise.additive_chi2_kernel(X [,Y]) 计算X和Y观测值之间的加性方卡方核
metrics.pairwise.chi2_kernel(X [,Y,γ) 计算指数卡方内核X和Y。
metrics.pairwise.cosine_similarity(X [,Y,…]) 计算X和Y中样本之间的余弦相似度。
metrics.pairwise.cosine_distances(X [,Y]) 计算X和Y中样本之间的余弦距离。
metrics.pairwise.distance_metrics() pairwise_distances的有效指标。
metrics.pairwise.euclidean_distances(X [,Y,…]) 将X(和Y = X)的行视为向量,计算每对向量之间的距离矩阵。
metrics.pairwise.haversine_distances(X [,Y]) 计算X和Y中样本之间的Haversine距离
metrics.pairwise.kernel_metrics() pairwise_kernels的有效指标
metrics.pairwise.laplacian_kernel(X [,Y,γ) 计算X和Y之间的拉普拉斯核。
metrics.pairwise.linear_kernel(X [,Y,…]) 计算X和Y之间的线性核。
metrics.pairwise.manhattan_distances(X [,Y,…]) 计算X和Y中向量之间的L1距离。
metrics.pairwise.nan_euclidean_distances(X) 在缺少值的情况下计算欧几里得距离。
metrics.pairwise.pairwise_kernels(X [,Y,…]) 计算数组X和可选数组Y之间的内核。
metrics.pairwise.polynomial_kernel(X [,Y,…]) 计算X和Y之间的多项式核。
metrics.pairwise.rbf_kernel(X [,Y,γ) 计算X和Y之间的rbf(高斯)内核。
metrics.pairwise.sigmoid_kernel(X [,Y,…]) 计算X和Y之间的S形核。
metrics.pairwise.paired_euclidean_distances(X,Y) 计算X和Y之间的成对的欧式距离
metrics.pairwise.paired_manhattan_distances(X,Y) 计算X和Y中向量之间的L1距离。
metrics.pairwise.paired_cosine_distances(X,Y) 计算X和Y之间的配对余弦距离
metrics.pairwise.paired_distances(X,Y,* [,…]) 计算X和Y之间的配对距离。
metrics.pairwise_distances(X [,Y,metric,…]) 根据向量数组X和可选的Y计算距离矩阵。
metrics.pairwise_distances_argmin(X,Y,* [,…]) 计算一个点与一组点之间的最小距离。
metrics.pairwise_distances_argmin_min(X,Y,*) 计算一个点与一组点之间的最小距离。
metrics.pairwise_distances_chunked(X [,Y,…]) 通过可选缩减逐块生成距离矩阵

绘图

有关更多详细信息,请参见用户指南的“ 可视化”部分。

metrics.plot_confusion_matrix(estimator, X, …) 绘制混淆矩阵。
metrics.plot_precision_recall_curve(…[,…]) 绘制二元分类器的精确召回曲线。
metrics.plot_roc_curve(estimator, X, y, *[, …]) 绘制接收器工作特性(ROC)曲线。
metrics.ConfusionMatrixDisplay(…[,…]) 混淆矩阵可视化。
metrics.PrecisionRecallDisplay(precision, …) 精确调用可视化。
metrics.RocCurveDisplay(*,fpr,tpr [,…]) ROC曲线可视化。

sklearn.mixture:高斯混合模型

sklearn.mixture模块实现了混合建模算法。

用户指南:有关更多详细信息,请参见“ 高斯混合模型”部分。

mixture.BayesianGaussianMixture(* [,…]) 高斯混合的变分贝叶斯估计。
mixture.GaussianMixture([n_components,...]) 高斯混合。

sklearn.model_selection:模型选择

用户指南:请参阅交叉验证:评估模型表现调整估计器的超参数学习曲线部分,以了解更多详细信息。

拆分器类

model_selection.GroupKFold([n_splits]) 具有非重叠组的K折叠迭代器变体。
model_selection.GroupShuffleSplit([…]) 随机分组交叉验证迭代器
model_selection.KFold([n_splits, shuffle, …]) K折交叉验证器
model_selection.LeaveOneGroupOut 离开一个小组的交叉验证者
model_selection.LeavePGroupsOut(n_groups) 保留P组交叉验证器
model_selection.LeaveOneOut 留一法交叉验证器
model_selection.LeavePOut(p) Leave-P-Out交叉验证器
model_selection.PredefinedSplit(test_fold) 预定义的拆分交叉验证器
model_selection.RepeatedKFold(* [,n_splits,…]) 重复的K折交叉验证器。
model_selection.RepeatedStratifiedKFold(* [,…]) 重复分层K折交叉验证器。
model_selection.ShuffleSplit([n_splits,...]) 随机置换交叉验证器
model_selection.StratifiedKFold([n_splits,...]) 分层K折交叉验证器
model_selection.StratifiedShuffleSplit([…]) 分层ShuffleSplit交叉验证器
model_selection.TimeSeriesSplit([n_splits,...]) 时间序列交叉验证器

拆分器函数

model_selection.check_cv([cv, y, classifier]) 输入检查器实用程序,用于构建交叉验证器
model_selection.train_test_split(*arrays, …) 将数组或矩阵拆分为随机训练和测试子集

超参数优化器

model_selection.GridSearchCV(estimator, …) 详尽搜索估计器的指定参数值。
model_selection.ParameterGrid(param_grid) 参数的网格,每个网格都有离散数量的值。
model_selection.ParameterSampler(…[,…]) 根据给定分布采样的参数生成器。
model_selection.RandomizedSearchCV(…[,…]) 随机搜索超参数。

模型验证

model_selection.cross_validate(estimator, X) 通过交叉验证评估指标,并记录拟合/得分时间。
model_selection.cross_val_predict(estimator, X) 为每个输入数据点生成交叉验证的估计
model_selection.cross_val_score(estimator, X) 通过交叉验证评估分数
model_selection.learning_curve(estimator, X, …) 学习曲线。
model_selection.permutation_test_score(...) 通过排列评估交叉验证分数的重要性
model_selection.validation_curve(estimator, …) 验证曲线。

sklearn.multiclass:多类和多标签分类

多类和多标签分类策略

该模块实现了多类学习算法:

  • 一对剩余/一对全部
  • 一对一
  • 纠错输出代码

此模块中提供的估计器是元估计器:它们需要在其构造函数中提供基本估计器。例如,可以使用这些估计器将二进制分类器或回归器转换为多类分类器。也可以将这些估计器与多类估计器一起使用,以期提高其准确性或运行时性能。

scikit-learn中的所有分类器均实现多类分类;仅当您要尝试使用自定义多类别策略时,才需要使用此模块。

相对于其余的元分类器也实现了一种predict_proba方法,只要该方法由基本分类器实现即可。该方法在单标签和多标签情况下都返回类成员资格的概率。请注意,在多标签情况下,概率是给定样本属于给定类别的边际概率。这样,在多标签情况下,给定样本的所有可能标签上的这些概率之和不会像在单标签情况下那样合计为一。

用户指南:有关更多详细信息,请参见“多类和多标签算法”部分。

multiclass.OneVsRestClassifier(estimator, *) 一对剩余(OvR)多类别/多标签策略
multiclass.OneVsOneClassifier(estimator, *) 一对一多策略
multiclass.OutputCodeClassifier(estimator, *) (错误纠正)输出代码多类策略

sklearn.multioutput:多输出回归和分类

该模块实现多输出回归和分类。

此模块中提供的估计器是元估计器:它们需要在其构造函数中提供基本估计器。元估计器将单输出估计器扩展到多输出估计器。

用户指南:有关更多详细信息,请参见“ 多类和多标签算法”部分。

multioutput.ClassifierChain(base_estimator,*) 将二元分类器排列到一个链中的多标签模型。
multioutput.MultiOutputRegressor(estimator, *) 多目标回归
multioutput.MultiOutputClassifier(estimator, *) 多目标分类
multioutput.RegressorChain(base_estimator,*) 一种多标签模型,可将回归安排到一个链中。

sklearn.naive_bayes:朴素贝叶斯

sklearn.naive_bayes模块实现了朴素贝叶斯算法。这些是基于贝叶斯定理和强(朴素)特征独立性假设的监督学习方法。

用户指南:有关更多详细信息,请参见“ 朴素贝叶斯”部分。

naive_bayes.BernoulliNB(*[, α, …]) 朴素贝叶斯分类器用于多元伯努利模型。
naive_bayes.CategoricalNB(*[, α, …]) 朴素贝叶斯分类器的分类特征
naive_bayes.ComplementNB(*[, α, …]) 在Rennie等人中描述的补体朴素贝叶斯分类器。
naive_bayes.GaussianNB(*[, priors, …]) 高斯朴素贝叶斯(GaussianNB)
naive_bayes.MultinomialNB(*[, α, …]) 朴素贝叶斯分类器用于多项模型

sklearn.neighbors:最近邻

sklearn.neighbors模块实现k近邻算法。

用户指南:有关更多详细信息,请参见“ 最近邻”部分。

neighbors.BallTree(X [,leaf_size,metric]) BallTree用于快速广义N点问题
neighbors.DistanceMetric DistanceMetric类
neighbors.KDTree(X [,leaf_size,metric]) KDTree用于快速广义N点问题
neighbors.KernelDensity(*[, bandwidth, …]) 内核密度估计。
neighbors.KNeighborsClassifier([…]) 分类器执行k最近邻居投票。
neighbors.KNeighborsRegressor([n_neighbors,...]) 基于k最近邻的回归。
neighbors.KNeighborsTransformer(*[, mode, …]) 将X转换为k个最近邻居的(加权)图
neighbors.LocalOutlierFactor([n_neighbors,...]) 使用局部离群因子(LOF)的无监督离群检测
neighbors.RadiusNeighborsClassifier([…]) 分类器在给定半径内实现邻居之间的投票
neighbors.RadiusNeighborsRegressor([radius, …]) 基于固定半径内的邻居的回归。
neighbors.RadiusNeighborsTransformer(* [,…]) 将X转换为比半径更近的邻居的(加权)图
neighbors.NearestCentroid([metric, …]) 最近的质心分类器。
neighbors.NearestNeighbors(* [,n_neighbors,…]) 用于实施邻居搜索的无监督学习者。
neighbors.NeighborhoodComponentsAnalysis([…]) 邻域成分分析
neighbors.kneighbors_graph(X,n_neighbors,*) 计算X中点的k邻居的(加权)图
neighbors.radius_neighbors_graph(X, radius, *) 计算X中点的邻居(加权)图

sklearn.neural_network:神经网络模型

sklearn.neural_network模块包括基于神经网络的模型。

用户指南:有关更多详细信息,请参见神经网络模型(受监管)神经网络模型(无监管)部分。

neural_network.BernoulliRBM([n_components,...]) 伯努利限制玻尔兹曼机(RBM)。
neural_network.MLPClassifier([…]) 多层感知器分类器。
neural_network.MLPRegressor([…]) 多层感知器回归器。

sklearn.pipeline:管道

sklearn.pipeline模块实现实用程序以构建复合估计器,作为转换和估计器链。

用户指南:有关更多详细信息,请参见“ 管道和复合估计器”部分。

pipeline.FeatureUnion(transformer_list,* [,…]) 连接多个转换器对象的结果。
pipeline.Pipeline(steps, *[, memory, verbose]) 带有最终估算器的变换管线。
pipeline.make_pipeline(*steps, * *kwargs)
pipeline.make_union(*transformers, **kwargs) 从给定的转换器构造一个FeatureUnion。

sklearn.preprocessing:预处理和规范化

sklearn.preprocessing模块包括缩放,居中,归一化,二值化方法。

用户指南:有关更多详细信息,请参见“ 预处理数据”部分。

preprocessing.Binarizer(*[, threshold, copy]) 根据阈值对数据进行二值化(将要素值设置为0或1)
preprocessing.FunctionTransformer([func,...]) 从任意可调用对象构造一个转换器。
preprocessing.KBinsDiscretizer([n_bins,...]) 将连续数据分成间隔。
preprocessing.KernelCenterer() 将内核矩阵居中
preprocessing.LabelBinarizer(* [,neg_label,…]) 以一对一的方式对标签进行二值化
preprocessing.LabelEncoder 使用0到n_classes-1之间的值对目标标签进行编码。
preprocessing.MultiLabelBinarizer(* [,…]) 在可迭代的可迭代对象和多标签格式之间进行转换
preprocessing.MaxAbsScaler(*[, copy]) 通过其最大绝对值缩放每个特征。
preprocessing.MinMaxScaler([feature_range, copy]) 通过将每个要素缩放到给定范围来变换要素。
preprocessing.Normalizer([norm, copy]) 将样本分别归一化为单位范数。
preprocessing.OneHotEncoder(*[, categories, …]) 将分类要素编码为一键式数字数组。
preprocessing.OrdinalEncoder(* [,…]) 将分类特征编码为整数数组。
preprocessing.PolynomialFeatures([degree, …]) 生成多项式和交互特征。
preprocessing.PowerTransformer([method, …]) 逐个应用幂变换以使数据更像高斯型。
preprocessing.QuantileTransformer(* [,…]) 使用分位数信息变换特征。
preprocessing.RobustScaler(* [,…]) 使用对异常值具有鲁棒性的统计量来缩放要素。
preprocessing.StandardScaler(*[, copy, …]) 通过去除均值并缩放到单位方差来标准化特征
preprocessing.add_dummy_feature(X[, value]) 具有附加虚拟功能的增强数据集。
preprocessing.binarize(X, *[, threshold, copy]) 类数组或稀疏矩阵的布尔阈值
preprocessing.label_binarize(y, *, classes) 以一对一的方式对标签进行二值化
preprocessing.maxabs_scale(X, *[, axis, copy]) 将每个要素缩放到[-1,1]范围而不会破坏稀疏性。
preprocessing.minmax_scale(X[, …]) 通过将每个要素缩放到给定范围来变换要素。
preprocessing.normalize(X[, norm, axis, …]) 分别将输入向量缩放为单位范数(向量长度)。
preprocessing.quantile_transform(X, *[, …]) 使用分位数信息变换特征。
preprocessing.robust_scale(X, *[, axis, …]) 沿任何轴标准化数据集
preprocessing.scale(X, *[, axis, with_mean, …]) 沿任何轴标准化数据集
preprocessing.power_transform(X[, method, …]) 幂变换是一组参数化,单调变换,可用于使数据更像高斯型。

sklearn.random_projection:随机投影

随机投影转换器

随机投影是一种简单且计算有效的方法,可通过以可控制的精度(以附加方差)为代价来减少数据的维数,以缩短处理时间并缩小模型尺寸。

控制随机投影矩阵的尺寸和分布,以保留数据集的任何两个样本之间的成对距离。

随机投影效率背后的主要理论结果是 Johnson-Lindenstrauss引理(引用Wikipedia)

在数学中,Johnson-Lindenstrauss引理是关于从高维点到低维欧几里德空间的点的低失真嵌入的结果。引理指出,高维空间中的一小部分点可以以几乎保留点之间的距离的方式嵌入到低维空间中。用于嵌入的地图至少为Lipschitz,甚至可以视为正交投影。

用户指南:有关更多详细信息,请参见“ 随机投影”部分。

random_projection.GaussianRandomProjection([…]) 通过高斯随机投影降低维数
random_projection.SparseRandomProjection([…]) 通过稀疏随机投影降低尺寸
random_projection.johnson_lindenstrauss_min_dim(...) 查找“安全”数量的组件以随机投影

sklearn.semi_supervised半监督学习

sklearn.semi_supervised模块实现了半监督学习算法。这些算法将少量标记的数据和大量未标记的数据用于分类任务。该模块包括标签传播。

用户指南:有关更多详细信息,请参见“ 半监督学习”部分。

semi_supervised.LabelPropagation([kernel, …]) 标签传播分类器
semi_supervised.LabelSpreading([kernel, …]) 用于半监督学习的LabelSpreading模型

sklearn.svm:支持向量机

sklearn.svm模块包括支持向量机算法。

用户指南:有关更多详细信息,请参见“支持向量机”部分。

估计器

svm.LinearSVC([penalty, loss, dual, tol, C, …]) 线性支持向量分类。
svm.LinearSVR(*[, epsilon, tol, C, loss, …]) 线性支持向量回归。
svm.NuSVC(*[, nu, kernel, degree, gamma, …]) Nu支持向量分类。
svm.NuSVR(*[, nu, C, kernel, degree, gamma, …]) Nu支持向量回归。
svm.OneClassSVM(*[, kernel, degree, gamma, …]) 无监督异常值检测。
svm.SVC(*[, C, kernel, degree, gamma, …]) C支持向量分类。
svm.SVR(*[, kernel, degree, gamma, coef0, …]) Epsilon支持向量回归。
svm.l1_min_c(X, y, *[, loss, fit_intercept, …]) 返回C的最低界限,以确保对于(l1_min_C,infinity)中的C,该模型不能为空。

sklearn.tree:决策树

sklearn.tree模块包括用于分类和回归的基于决策树的模型。

用户指南:有关更多详细信息,请参见“ 决策树”部分。

tree.DecisionTreeClassifier(*[, criterion, …]) 决策树分类器。
tree.DecisionTreeRegressor(*[, criterion, …]) 决策树回归器。
tree.ExtraTreeClassifier(*[, criterion, …]) 极为随机的树分类器。
tree.ExtraTreeRegressor(*[, criterion, …]) 极随机的树回归器。
tree.export_graphviz(decision_tree[, …]) 以DOT格式导出决策树。
tree.export_text(decision_tree, *[, …]) 建立一个文本报告,显示决策树的规则。

绘图

| tree.plot_tree(决策树, *[, …]) | 绘制决策树。 |

sklearn.utils:实用工具

sklearn.utils模块包括各种实用程序。

utils.arrayfuncs.min_pos 在正值上找到数组的最小值
utils.as_float_array(X, *[, copy, …]) 将类似数组的数组转换为浮点数组。
utils.assert_all_finite(X,* [,allow_nan]) 如果X包含NaN或无穷大,则引发ValueError。
utils.Bunch(** kwargs) 容器对象将键公开为属性
utils.check_X_y(X,y [,accept_sparse,…]) 标准估算器的输入验证。
utils.check_array(array[, accept_sparse, …]) 对数组,列表,稀疏矩阵或类似内容进行输入验证。
utils.check_scalar(x, name, target_type, *) 验证标量参数的类型和值。
utils.check_consistent_length(*arrays) 检查所有数组的第一维度是否一致。
utils.check_random_state(seed) 将种子转换为np.random.RandomState实例
utils.class_weight.compute_class_weight(...) 估计不平衡数据集的类权重。
utils.class_weight.compute_sample_weight(...) 对于不平衡的数据集,按类别估算样本权重。
utils.deprecated([extra]) 装饰器,用于将功能或类标记为不推荐使用。
utils.estimator_checks.check_estimator(Estimator) 检查估计器是否遵守scikit-learn约定。
utils.estimator_checks.parametrize_with_checks(...) Pytest特定的装饰器,用于参数估计器检查。
utils.estimator_html_repr(estimator) 构建估算器的HTML表示形式。
utils.extmath.safe_sparse_dot(a,b,* [,…]) 正确处理稀疏矩阵案例的点积
utils.extmath.randomized_range_finder(A, *, …) 计算一个正交矩阵,其范围近似于A的范围。
utils.extmath.randomized_svd(M,n_components,*) 计算截断的随机SVD
utils.extmath.fast_logdet(A) 计算一个对称的log(det(A))
utils.extmath.density(w,** kwargs) 计算稀疏向量的密度
utils.extmath.weighted_mode(a, w, *[, axis]) 返回数组中加权模态(最常见)值的数组
utils.gen_even_slices(n,n_packs,* [,n_samples]) 生成器创建n_packs片,最多可达n。
utils.graph.single_source_shortest_path_length(...) 返回从源到所有可达节点的最短路径长度。
utils.graph_shortest_path.graph_shortest_path 对正有向图或无向图执行最短路径图搜索。
utils.indexable(*iterables) 使数组可索引以进行交叉验证。
utils.metaestimators.if_delegate_has_method(...) 为委托给子估计器的方法创建一个装饰器
utils.multiclass.type_of_target(y) 确定目标指示的数据类型。
utils.multiclass.is_multilabel(y) 检查是否y为多标签格式。
utils.multiclass.unique_labels(*ys) 提取唯一标签的有序数组
utils.murmurhash3_32 计算种子的密钥的32位murmurhash3。
utils.resample(*arrays, **options) 以一致的方式对数组或稀疏矩阵重新采样
utils._safe_indexing(X, indices, *[, axis]) 使用索引返回X的行,项目或列。
utils.safe_mask(X, mask) 返回可在X上安全使用的口罩。
utils.safe_sqr(X, *[, copy]) 类数组和稀疏矩阵的元素明智平方。
utils.shuffle(*arrays, **options) 以一致的方式随机排列数组或稀疏矩阵
utils.sparsefuncs.incr_mean_variance_axis(X, …) 计算CSR或CSC矩阵上沿轴的增量平均值和方差。
utils.sparsefuncs.inplace_column_scale(X, scale) CSC / CSR矩阵的就地列缩放。
utils.sparsefuncs.inplace_row_scale(X, scale) CSR或CSC矩阵的就地行缩放。
utils.sparsefuncs.inplace_swap_row(X,m,n) 就地交换两行CSC / CSR矩阵。
utils.sparsefuncs.inplace_swap_column(X,m,n) 就地交换两列CSC / CSR矩阵。
utils.sparsefuncs.mean_variance_axis(X, axis) 计算CSR或CSC矩阵上沿轴的均值和方差
utils.sparsefuncs.inplace_csr_column_scale(X, …) CSR矩阵的就地列缩放。
utils.sparsefuncs_fast.inplace_csr_row_normalize_l1 使用l1范数进行就地行归一化
utils.sparsefuncs_fast.inplace_csr_row_normalize_l2 使用l2范数进行就地行归一化
utils.random.sample_without_replacement 采样整数而不进行替换。
utils.validation.check_is_fitted(estimator) 对估算器执行is_fitted验证。
utils.validation.check_memory(memory) 检查memory是否类似于joblib.Memory。
utils.validation.check_symmetric(array, *[, …]) 确保该数组是2D,正方形和对称的。
utils.validation.column_or_1d(y, *[, warn]) Ravel列或一维numpy数组,否则引发错误
utils.validation.has_fit_parameter(...) 检查估计器的fit方法是否支持给定参数。
utils.all_estimators([type_filter]) 从sklearn获取所有估计量的列表。

来自joblib的实用程序:

utils.parallel_backend(backend[, n_jobs, …]) 在with块中更改Parallel使用的默认后端。
utils.register_parallel_backend(name, factory) 注册一个新的并行后端工厂。

最近不推荐使用的

在0.24中删除

model_selection.fit_grid_point(X,y,…[,…]) 不推荐使用:fit_grid_point在0.23版中已弃用,并将在0.25版中删除
utils.safe_indexing(X, indices, *[, axis]) 不推荐使用:safe_indexing在0.22版中已弃用,并将在0.24版中删除。