本文是我根据Scikit-learn官方API翻译理解所写,如果有什么地方翻译的不对,欢迎指正!!!
1、sklearn.base: Base classes and utility functions(基类和效用函数)
基础类:
base.BaseEstimator: scikit学习中所有估计的基础类
base.ClassifierMixin: 所有分类器的混合类在scikit学习
base.ClusterMixin: 所有聚类估计器的混合类在scikit学习中
base.RegressorMixin: 所有回归估计器的混合类在scikit学习
base.TransformerMixin: 所有变压器的混合类在scikit学习
2、sklearn.cluster: Clustering(聚类)–模块收集流行的无监督聚类算法
聚类:
cluster.AffinityPropagation([damping, ...]) 执行亲和度传播数据聚类
cluster.AgglomerativeClustering([...]) 集聚聚类
cluster.Birch([threshold, branching_factor, ...]) 实现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.SpectralClustering([n_clusters, ...]) 将聚类应用于对规范化拉普拉斯算子的投影
函数:
cluster.estimate_bandwidth(X[, quantile, ...]) 估计与平均移位算法一起使用的带宽
cluster.k_means(X, n_clusters[, init, ...]) K均值聚类算法
cluster.ward_tree(X[, connectivity, ...]) 基于特征矩阵的区域聚类
cluster.affinity_propagation(S[, ...]) 执行亲和度传播数据聚类
cluster.dbscan(X[, eps, min_samples, ...]) 从矢量阵列或距离矩阵执行DBSCAN聚类
cluster.mean_shift(X[, bandwidth, seeds, ...]) 使用平坦的内核执行数据的平均移位聚类
cluster.spectral_clustering(affinity[, ...]) 将聚类应用于对规范化拉普拉斯算子的投影
3.光谱双聚类算法:
sklearn.cluster.bicluster: Biclustering(双聚类)
类:
SpectralBiclustering([n_clusters, method, ...]) 光谱双聚类(Kluger,2003)
SpectralCoclustering([n_clusters, ...]) 光谱共聚焦算法(Dhillon,2001)
4.协方差估计模块:
sklearn.covariance: 协方差估计模块
定义:该sklearn.covariance模块包括方法和算法:
covariance.EmpiricalCovariance([...]) 最大似然协方差估计
covariance.EllipticEnvelope([...]) 用于检测高斯分布数据集中异常值的对象
covariance.GraphLasso([alpha, mode, tol, ...]) 具有l1惩罚估计量的稀疏逆协方差估计
covariance.GraphLassoCV([alphas, ...]) 稀疏逆协方差与交叉验证的l1罚款的选择
covariance.LedoitWolf([store_precision, ...]) LedoitWolf估计
covariance.MinCovDet([store_precision, ...]) 最小协方差决定因素(MCD):协方差的robust估计
covariance.OAS([store_precision, ...]) Oracle近似收缩估计
covariance.ShrunkCovariance([...]) 协变量估计与收缩
covariance.empirical_covariance(X[, ...]) 计算最大似然协方差估计
covariance.ledoit_wolf(X[, assume_centered, .]) 估计缩小的Ledoit-Wolf协方差矩阵
covariance.shrunk_covariance(emp_cov[, ...]) 计算对角线上收缩的协方差矩阵
covariance.oas(X[, assume_centered]) 使用Oracle近似收缩算法估计协方差
covariance.graph_lasso(emp_cov, alpha[, ...]) l1惩罚协方差估计
5.数据集:
sklearn.datasets: Datasets(数据集)
定义:该模块包括用于加载数据集的实用程序,包括加载和获取流行参考数据集的方法。它还具有一些人工数据生成器。
datasets.clear_data_home([data_home]) 删除数据家庭缓存的所有内容
datasets.get_data_home([data_home]) 返回scikit-learn数据目录的路径
datasets.fetch_20newsgroups([data_home, ...]) 加载20个新闻组数据集中的文件名和数据
datasets.fetch_20newsgroups_vectorized([...]) 加载20个新闻组数据集并将其转换为tf-idf向量
datasets.load_boston([return_X_y]) 加载并返回波士顿房价数据集(回归)
datasets.load_breast_cancer([return_X_y]) 加载并返回乳腺癌威斯康星数据集(分类)
datasets.load_diabetes([return_X_y]) 加载并返回糖尿病数据集(回归)
datasets.load_digits([n_class, return_X_y]) 加载并返回数字数据集(分类)
datasets.load_files(container_path[, ...]) 加载具有子文件夹名称类别的文本文件
datasets.load_iris([return_X_y]) 加载并返回虹膜数据集(分类)
datasets.fetch_lfw_pairs([subset, ...]) 在野外(LFW)对数据集中的标记面的装载程序
datasets.fetch_lfw_people([data_home, ...]) 野外(LFW)人物数据集中的标记面的装载程序
datasets.load_linnerud([return_X_y]) 加载并返回linnerud数据集(多元回归)
datasets.mldata_filename(dataname) 转换mldata.org文件名中的数据集的原始名称
datasets.fetch_mldata(dataname[, ...]) 获取mldata.org数据集
datasets.fetch_olivetti_faces([data_home, ...]) Olivetti的装载机面向AT&T的数据集
datasets.fetch_california_housing([...]) 来自StatLib的加州住房数据集的装载机
datasets.fetch_covtype([data_home, ...]) 加载封面类型数据集,必要时下载
datasets.fetch_kddcup99([subset, shuffle, ...]) 加载并返回kddcup 99数据集(分类)
datasets.fetch_rcv1([data_home, subset, ...]) 加载RCV1 multilabel数据集,必要时下载
datasets.load_mlcomp(name_or_id[, set_, ...]) 加载从http://mlcomp.org下载的数据集
datasets.load_sample_image(image_name) 加载单个样本图像的numpy数组
datasets.load_sample_images() 加载样品图像进行图像处理
datasets.fetch_species_distributions([...]) 来自Phillips等的物种分布数据集的装载机
datasets.load_svmlight_file(f[, n_features, .]) 将svmlight / libsvm格式的数据集加载到稀疏的CSR矩阵中
datasets.load_svmlight_files(files[, ...]) 从SVMlight格式的多个文件加载数据集
datasets.dump_svmlight_file(X, y, f[, ...]) 以svmlight / libsvm文件格式转储数据集
样本生成器:
datasets.make_blobs([n_samples, n_features, ...]) 生成用于聚类的各向同性高斯斑点
datasets.make_classification([n_samples, ...]) 生成随机n类分类问题
datasets.make_circles([n_samples, shuffle, ...]) 在2d中制作一个包含较小圆的大圆
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[, random_state]) 产生一个随机对称,正定矩阵
datasets.make_swiss_roll([n_samples, noise, ...]) 生成瑞士卷数据集
datasets.make_biclusters(shape, n_clusters) 生成一个具有恒定块对角线结构的阵列,用于二聚体
datasets.make_checkerboard(shape, n_clusters) 生成具有块棋盘结构的数组,用于双向聚集
六、集成方法
定义:sklearn.ensemble模块包括用于分类,回归和异常检测的基于集成的方法。
集成方法模块:
ensemble.AdaBoostClassifier([...]) 一个AdaBoost分类器
ensemble.AdaBoostRegressor([base_estimator, ...]) AdaBoost回归器
ensemble.BaggingClassifier([base_estimator, ...]) Bagging分类器
ensemble.BaggingRegressor([base_estimator, ...]) Bagging回归器
ensemble.ExtraTreesClassifier([...]) 一个额外的树分类器
ensemble.ExtraTreesRegressor([n_estimators, ...]) 一个额外的树回归器
ensemble.GradientBoostingClassifier([loss, ...]) 梯度提升分类
ensemble.GradientBoostingRegressor([loss, ...]) 渐变提升回归
ensemble.IsolationForest([n_estimators, ...]) 隔离森林算法
ensemble.RandomForestClassifier([...]) 随机森林分类器
ensemble.RandomTreesEmbedding([...]) 一个完全随机的树的集成
ensemble.RandomForestRegressor([...]) 随机森林回归器
ensemble.VotingClassifier(estimators[, ...]) 软投票/多数规则分类器
七、异常和警告模块
定义:sklearn.exceptions模块包括在scikit学习中使用的所有自定义警告和错误类。
异常和警告类:
exceptions.NotFittedError 如果在拟合前使用估计器,则提升异常类
exceptions.ChangedBehaviorWarning 用于通知用户任何行为变化的警告类
exceptions.ConvergenceWarning 捕捉收敛问题的自定义警告
exceptions.DataConversionWarning 警告用于通知代码中发生的隐式数据转换
exceptions.DataDimensionalityWarning 自定义警告,以通知数据维度的潜在问题
exceptions.EfficiencyWarning 用于通知用户效率低下的警告
exceptions.FitFailedWarning 如果在拟合估计器时出现错误,则使用警告类
exceptions.NonBLASDotWarning 点操作不使用BLAS时使用的警告
exceptions.UndefinedMetricWarning 度量无效时使用的警告
八、特征提取模块
定义:sklearn.feature_extraction模块处理原始数据的特征提取。它目前包括从文本和图像中提取特征的方法。
feature_extraction.DictVectorizer([dtype, ...]) 将特征值映射列表转换为向量
feature_extraction.FeatureHasher([...]) 实现哈希功能,又称哈希技巧
从图像提取特征方法:
定义:该sklearn.feature_extraction.image子模块收集实用程序从图像中提取特征。
feature_extraction.image.img_to_graph(img[, ...]) 像素到像素梯度连接的图形
feature_extraction.image.grid_to_graph(n_x, n_y) 像素到像素连接的图形
feature_extraction.image.extract_patches_2d(...) 将2D图像重新整理成一组补丁
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模块实现特征选择算法。它目前包括单变量筛选方法和递归特征消除算法。
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]) 过滤器:选择对应于同系误差率的p值
feature_selection.RFE(estimator[, ...]) 功能排序与递归功能消除
feature_selection.RFECV(estimator[, step, ...]) 功能排序与递归功能消除和交叉验证选择最佳数量的功能
feature_selection.VarianceThreshold([threshold]) 功能选择器可删除所有低方差特征
feature_selection.chi2(X, y) 计算每个非负特征和类之间的平方统计
feature_selection.f_classif(X, y) 计算提供的样本的方差分析F值
feature_selection.f_regression(X, y[, center]) 单变量线性回归测试
feature_selection.mutual_info_classif(X, y) 估计离散目标变量的互信息
feature_selection.mutual_info_regression(X, y) 估计连续目标变量的互信息
十、广义线性模型
定义:sklearn.linear_model模块实现广义线性模型。它包括利用最小角度回归和坐标下降计算的岭回归,贝叶斯回归,套索和弹性网估计。它还实现随机梯度下降相关算法。
linear_model.ARDRegression([n_iter, tol, ...]) 贝叶斯ARD回归
linear_model.BayesianRidge([n_iter, tol, ...]) 贝叶斯脊回归
linear_model.ElasticNet([alpha, l1_ratio, ...]) 线性回归与组合L1和L2先验作为正则化器
linear_model.ElasticNetCV([l1_ratio, eps, ...]) 弹性网模型沿正则化路径迭代拟合
linear_model.HuberRegressor([epsilon, ...]) 线性回归模型,对离群值是robust
linear_model.Lars([fit_intercept, verbose, ...])最小角度回归模型
linear_model.LarsCV([fit_intercept, ...]) 交叉验证的最小二乘回归模型
linear_model.Lasso([alpha, fit_intercept, ...]) 线性模型训练用L1作为矫正器(又名拉索)
linear_model.LassoCV([eps, n_alphas, ...]) 拉索线性模型,沿正则化路径迭代拟合
linear_model.LassoLars([alpha, ...]) Lasso模型也适合最小角度回归
linear_model.LassoLarsCV([fit_intercept, ...]) 使用LARS算法进行交叉验证的Lasso
linear_model.LassoLarsIC([criterion, ...]) Lasso模型适合Lars使用BIC或AIC进行型号选择
linear_model.LinearRegression([...]) 普通最小二乘线性回归
linear_model.LogisticRegression([penalty, ...]) Logistic回归(又名logit,MaxEnt)分类器
linear_model.LogisticRegressionCV([Cs, ...]) Logistic回归CV(又名logit,MaxEnt)分类器
linear_model.MultiTaskLasso([alpha, ...]) 用L1 / L2混合规范训练的多任务Lasso模型作为正则化器
linear_model.MultiTaskElasticNet([alpha, ...]) 用L1 / L2混合规范训练的多任务ElasticNet模型作为正则化程序
linear_model.MultiTaskLassoCV([eps, ...]) 多任务L1 / L2 Lasso内置交叉验证
linear_model.MultiTaskElasticNetCV([...]) 多任务L1 / L2 ElasticNet内置交叉验证
linear_model.OrthogonalMatchingPursuit([...]) 正交匹配追踪模型(OMP)
linear_model.OrthogonalMatchingPursuitCV([...]) 交叉验证的正交匹配追踪模型(OMP)
linear_model.PassiveAggressiveClassifier([...]) 被动侵略分类器
linear_model.PassiveAggressiveRegressor([C, ...]) 被动侵略者
linear_model.Perceptron([penalty, alpha, ...]) 在“ 用户指南”中阅读更多内容。
linear_model.RandomizedLasso([alpha, ...]) 随机拉索
linear_model.RandomizedLogisticRegression([...]) 随机逻辑回归
linear_model.RANSACRegressor([...]) RANSAC(RANdom SAmple Consensus)算法
linear_model.Ridge([alpha, fit_intercept, ...]) 具有l2正则化的线性最小二乘法
linear_model.RidgeClassifier([alpha, ...]) 分类器使用Ridge回归
linear_model.RidgeClassifierCV([alphas, ...]) 里奇分类器内置交叉验证
linear_model.RidgeCV([alphas, ...]) 里奇回归与内置交叉验证
linear_model.SGDClassifier([loss, penalty, ...]) 线性分类器(SVM,逻辑回归,ao)与SGD训练
linear_model.SGDRegressor([loss, penalty, ...]) 通过使用SGD最小化正则化经验损失拟合的线性模型
linear_model.TheilSenRegressor([...]) Theil-Sen估计:强大的多变量回归模型
linear_model.lars_path(X, y[, Xy, Gram, ...]) 使用LARS算法计算最小角度回归或套索路径[1]
linear_model.lasso_path(X, y[, eps, ...]) 计算具有坐标下降的Lasso路径
linear_model.lasso_stability_path(X, y[, ...]) 基于随机拉索估计的稳定性路径
linear_model.logistic_regression_path(X, y) 为正则化参数列表计算逻辑回归模型
linear_model.orthogonal_mp(X, y[, ...]) 正交匹配追踪(OMP)
linear_model.orthogonal_mp_gram(Gram, Xy[, ...])革命正交匹配追踪(OMP)
十一、高斯混合模型
定义:sklearn.mixture模块实现混合建模算法。
mixture.GaussianMixture([n_components, ...]) 高斯混合
mixture.BayesianGaussianMixture([...]) 高斯混合变分贝叶斯估计
十二、多输出回归和分类
sklearn.naive_bayes模块实现朴素贝叶斯算法。这些是基于应用贝叶斯定理与强(天真)特征独立假设的监督学习方法。
multioutput.MultiOutputRegressor(estimator) 多目标回归
multioutput.MultiOutputClassifier(estimator) 多目标分类
十三、神经网络模型
定义:sklearn.neural_network模块包括基于神经网络的模型。
neural_network.BernoulliRBM([n_components, ...]) 伯努利限制玻尔兹曼机(RBM)
neural_network.MLPClassifier([...]) 多层感知器分类器
neural_network.MLPRegressor([...]) 多层感知器回归
十四、概率校准(sklearn.calibration模块)
calibration.CalibratedClassifierCV([...]) 等渗回归或乙状结构的概率校准
calibration.calibration_curve(y_true, y_prob) 计算校准曲线的真实和预测概率
十五、交叉分解(sklearn.cross_decomposition模块)
cross_decomposition.PLSRegression([...]) PLS回归
cross_decomposition.PLSCanonical([...]) PLSCanonical实现了原始Wold算法的2块规范PLS [Tenenhaus 1998] p.204,在[Wegelin 2000]中被称为PLS-C2A
cross_decomposition.CCA([n_components, ...]) CCA规范相关分析
cross_decomposition.PLSSVD([n_components, ...]) 部分最小二乘SVD
十六、管道(sklearn.pipeline模块)
定义:sklearn.pipeline模块实现实用程序来构建复合估计器,作为变换链和估计器链。
pipeline.Pipeline(steps) 最终估计量的变换管道
pipeline.FeatureUnion(transformer_list[, ...]) 连接多个变压器对象的结果
pipeline.make_pipeline(\*steps) 从给定的估计量构建管道
pipeline.make_union(\*transformers) 从给定的变压器构造一个FeatureUnion
十七、预处理和规范化
定义:sklearn.preprocessing模块包括缩放,定心,归一化,二值化和插补方法。
preprocessing.Binarizer([threshold, copy]) 根据阈值对数据进行二值化(将特征值设置为0或1)
preprocessing.FunctionTransformer([func, ...]) 从任意可调用的构造一个变压器
preprocessing.Imputer([missing_values, ...]) 用于完成缺失值的插补变压器
preprocessing.KernelCenterer 中心一个内核矩阵
preprocessing.LabelBinarizer([neg_label, ...]) 以一对一的方式对标签进行二值化
preprocessing.LabelEncoder 在0和n_classes-1之间编码标签
preprocessing.MultiLabelBinarizer([classes, .]) 在迭代迭代和多标签格式之间进行转换
preprocessing.MaxAbsScaler([copy]) 按每个特征的最大绝对值进行缩放
preprocessing.MinMaxScaler([feature_range, copy]) 通过将每个功能缩放到给定范围来转换功能
preprocessing.Normalizer([norm, copy]) 将样品归一化为单位范数
preprocessing.OneHotEncoder([n_values, ...]) 使用一个单一的一个K方案来编码分类整数特征
preprocessing.PolynomialFeatures([degree, ...]) 生成多项式和交互特征
preprocessing.RobustScaler([with_centering, .]) 使用对异常值可靠的统计信息来缩放特征
preprocessing.StandardScaler([copy, ...]) 通过删除平均值和缩放到单位方差来标准化特征
preprocessing.add_dummy_feature(X[, value]) 增强数据集,带有额外的虚拟功能
preprocessing.binarize(X[, threshold, copy]) 数组式或scipy.sparse矩阵的布尔阈值
preprocessing.label_binarize(y, classes[, ...]) 以 one-vs-all 的方式对标签进行二值化
preprocessing.maxabs_scale(X[, axis, copy]) 将每个特征缩放到[-1,1]范围,而不破坏稀疏度
preprocessing.minmax_scale(X[, ...]) 通过将每个功能缩放到给定范围来转换功能
preprocessing.normalize(X[, norm, axis, ...]) 将输入向量分别缩放到单位范数(向量长度)
preprocessing.robust_scale(X[, axis, ...]) 沿着任何轴标准化数据集
preprocessing.scale(X[, axis, with_mean, ...]) 沿着任何轴标准化数据集
十八、预测器的选择
Scikit-learn提供了三种稳健回归的预测器(estimator): RANSAC , Theil Sen 和 HuberRegressor
1.HuberRegressor 一般快于 RANSAC 和 Theil Sen ,除非样本数很大,即 n_samples >> n_features 。 这是因为 RANSAC 和 Theil Sen 都是基于数据的较小子集进行拟合。但使用默认参数时, Theil Sen 和 RANSAC 可能不如 HuberRegressor 鲁棒。
2.RANSAC 比 Theil Sen 更快,在样本数量上的伸缩性(适应性)更好。
RANSAC 能更好地处理y方向的大值离群点(通常情况下)。
3.Theil Sen 能更好地处理x方向中等大小的离群点,但在高维情况下无法保证这一特点。