
scikit-learn
文章平均质量分 78
机器学习库Sklearn
彬彬侠
基于 Python 的 AI 算法工程师
展开
-
【scikit-learn】sklearn.metrics.precision_recall_fscore_support() 函数:计算 精确率、召回率、F1 分数 以及 支持度 等评估指标
precision_recall_fscore_support() 是 sklearn.metrics 模块中的一个函数,用于计算 精确率(Precision)、召回率(Recall)、F1 分数(F1-Score)以及 支持度(Support)等评估指标,并返回这些指标的值。该函数可用于 分类问题的评估,适用于多分类和二分类任务。它能够提供 更全面的模型评估,尤其是在处理 不平衡数据集 时非常有用。原创 2025-04-15 00:20:04 · 918 阅读 · 0 评论 -
【scikit-learn】sklearn.pipeline 模块: 将多个机器学习步骤组织成一个工作流
sklearn.pipeline 模块提供了一种将多个机器学习步骤组织成一个工作流的方法,使得整个机器学习过程更加简洁、可复用、可维护。通过 Pipeline 和 FeatureUnion等类,用户可以将数据预处理、特征工程、模型训练等步骤结合在一起,避免了中间变量的管理和重复代码。sklearn.pipeline 提供了灵活的工作流管理,能够将多个机器学习步骤如数据预处理、特征提取、模型训练 等整合为一个统一的流程。使用 Pipeline 和 FeatureUnion,可以简化代码、减少错误,并便于模型的原创 2025-03-22 10:47:58 · 878 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.LatentDirichletAllocation 类:潜在狄利克雷分配(LDA)
LatentDirichletAllocation(LDA)是 sklearn.decomposition 提供的一种主题建模方法,用于发现文档集合中的潜在主题,特别适用于自然语言处理(NLP)中的文本挖掘和信息检索。LatentDirichletAllocation(LDA)是 主题建模中常用的技术,它能够从文档集合中提取潜在主题,并为每个文档分配主题分布。LDA 在自然语言处理、文本挖掘、推荐系统 等领域应用广泛,适合从大量无标签的文本数据中发现隐含的主题结构。原创 2025-03-22 10:47:44 · 335 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.FactorAnalysis 类:因子分析
FactorAnalysis 是 sklearn.decomposition 提供的一种降维和特征提取技术,它通过假设数据是由少数潜在因子驱动的,旨在从观测数据中提取出这些潜在因子。与 PCA 类似,FactorAnalysis 也用于降维,但它更侧重于数据的潜在因子建模,适用于潜在变量分析。FactorAnalysis 是一种强大的降维方法,通过潜在因子建模提取数据中的潜在结构,特别适用于心理学、市场研究、社会学等领域,帮助理解数据中的潜在因素。原创 2025-03-22 10:47:29 · 449 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.NMF 类:非负矩阵分解
NMF(Non-negative Matrix Factorization,非负矩阵分解)是一种降维和特征提取技术,常用于稀疏数据,如文本数据或图像数据。它通过将矩阵分解为两个非负矩阵,有效提取数据的潜在特征。NMF 是一种 非负矩阵分解方法,适用于稀疏数据,如文本分析、推荐系统、图像压缩 等应用。它能够将原始数据分解为两个非负矩阵,便于从中提取潜在的特征和模式。通过控制稀疏性和选择合适的 n_components,NMF 可以有效地提高特征选择的可解释性。原创 2025-03-22 10:47:15 · 738 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.FastICA 类:快速独立成分分析
FastICA 是 sklearn.decomposition 提供的一种盲信号分离方法,旨在通过独立成分分析(ICA) 从混合信号中提取出独立的信号成分。它主要用于音频分离、图像处理、信号恢复等应用,能够从多个混合信号中恢复出彼此独立的源信号。FastICA 是一种盲信号分离方法,适用于从混合信号中恢复独立源信号,广泛应用于 音频信号分离、图像恢复、脑电图分析等领域。与 PCA 相比,FastICA 能更好地提取数据中的独立成分,用于信号的分离和提取。原创 2025-03-22 10:46:58 · 264 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.TruncatedSVD 类:截断奇异值分解
TruncatedSVD 是 sklearn.decomposition 提供的一种降维技术,通常用于大规模稀疏矩阵,例如文本数据的降维。它通过奇异值分解(SVD) 来提取数据的主成分,并截断不重要的奇异值,以降低数据的维度。TruncatedSVD 是一种适用于稀疏矩阵的降维技术,广泛应用于文本处理、推荐系统和数据压缩。它能够保留数据的主要特征,同时减少维度,尤其适用于大规模稀疏数据。原创 2025-03-21 10:45:07 · 473 阅读 · 1 评论 -
【scikit-learn】sklearn.decomposition.SparsePCA 类:稀疏主成分分析
SparsePCA 是 sklearn.decomposition 提供的一种稀疏的主成分分析方法,它通过对主成分进 稀疏化约束,使得每个主成分仅依赖少量的原始特征。这对于高维稀疏数据(如 文本数据、基因数据)尤其有用。SparsePCA 是用于高维稀疏数据的降维技术,通过控制 alpha 参数进行稀疏化,使每个主成分仅依赖少数特征,从而提高特征选择性和可解释性。适用于文本分析、推荐系统、基因数据分析等任务。原创 2025-03-21 10:43:10 · 407 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.KernelPCA 类:核主成分分析
KernelPCA 是 sklearn.decomposition 提供的一种非线性降维技术,通过使用核技巧将数据映射到高维空间,从而捕捉数据的非线性结构,适用于非线性数据的降维和特征提取。KernelPCA 通过核函数进行非线性降维,适用于无法通过线性方法降维的非线性数据,它提供了 通过核技巧映射数据到高维空间的强大能力,适用于复杂的数据模式、图像处理、信号处理等任务。原创 2025-03-21 10:40:57 · 314 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.IncrementalPCA 类:增量主成分分析
IncrementalPCA 是 sklearn.decomposition 提供的一种增量主成分分析方法,它适用于大规模数据集,尤其是在内存受限的情况下,可以分批处理数据进行 PCA 降维,而无需将所有数据一次性加载到内存中。IncrementalPCA 适用于大规模数据集,特别是在内存受限的情况下,通过分批处理数据进行 PCA 降维,它能够有效地减少内存使用,并且在大规模数据的在线学习 或 实时数据处理 中非常有用。原创 2025-03-21 10:38:20 · 402 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition.PCA 类:主成分分析
PCA(Principal Component Analysis,主成分分析)是 sklearn.decomposition 提供的一种线性降维技术,常用于数据降维、特征选择、可视化和噪声去除,广泛应用于模式识别、图像处理、数据可视化等领域。PCA 是一种线性降维方法,适用于特征选择、数据压缩、可视化等任务,通过主成分分析可以 减少特征维度,同时尽量保留数据的方差。它特别适用于高维数据的可视化和降噪。原创 2025-03-21 10:36:08 · 346 阅读 · 0 评论 -
【scikit-learn】sklearn.decomposition 模块:降维与特征提取
sklearn.decomposition 提供了一系列降维和特征提取方法,主要用于 数据压缩、特征选择、噪声去除,适用于高维数据的可视化、加速模型训练、降噪等任务。sklearn.decomposition 提供了多种降维方法,如 PCA(线性降维)、KernelPCA(非线性降维)、FastICA(独立成分分析)等,适用于特征选择、降维可视化、信号处理、推荐系统等任务。原创 2025-03-21 10:15:26 · 325 阅读 · 0 评论 -
基于模糊 C 均值(Fuzzy C-Means, FCM)聚类
模糊 C 均值(Fuzzy C-Means, FCM) 是一种软聚类算法,与 KMeans 不同,它允许数据点部分地属于多个簇,适用于图像分割、医学诊断、推荐系统等任务。Fuzzy C-Means 适用于软聚类任务,每个数据点可以部分属于多个簇,适用于医学、推荐系统、图像分割,相比 KMeans 更灵活但计算复杂度更高。原创 2025-03-21 10:15:13 · 278 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.AffinityPropagation 类:亲和传播聚类
AffinityPropagation 是 sklearn.cluster 提供的基于消息传递的聚类方法,它不需要预设簇数 K,而是通过数据点之间的相似性自动选择聚类中心,适用于 图片聚类、基因表达分析、社会网络分析等任务。AffinityPropagation 适用于自动确定簇数的任务,基于数据点之间的亲和度进行聚类,计算复杂度较高,不适用于大规模数据,可以调整 preference 控制簇数。原创 2025-03-21 10:14:56 · 295 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.MeanShift 类:均值漂移聚类
MeanShift 是 sklearn.cluster 提供的基于密度的聚类方法,它不需要指定簇的数量 K,而是基于数据密度自动发现簇,适用于模式识别、目标跟踪、图像分割等任务。MeanShift 适用于数据密度不均匀的情况,可以自动发现簇数,但计算复杂度较高,适用于交通分析、图像分割、目标跟踪。原创 2025-03-21 10:14:42 · 311 阅读 · 0 评论 -
【scikit-learn】sklearn.mixture.GaussianMixture 类:高斯混合模型(GMM)
GaussianMixture(高斯混合模型,GMM)是 sklearn.mixture 提供的基于概率密度分布的聚类方法,适用于数据服从多个高斯分布的情况,可以用于数据建模、异常检测、密度估计 等任务。GaussianMixture 适用于密度估计、概率建模、软聚类任务,相比 KMeans 更灵活,但计算复杂度更高。适用于金融建模、异常检测、生物信息学。原创 2025-03-21 10:14:27 · 471 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.SpectralClustering 类:谱聚类
SpectralClustering 是 sklearn.cluster 提供的基于图的聚类算法,它适用于非球形簇、高维数据、社区发现等任务,在 图像分割、社交网络分析 等领域表现良好。SpectralClustering 适用于非球形簇、图数据、社区发现任务,适用于小规模数据,但不适用于大规模数据,可以调整 affinity 控制聚类效果。原创 2025-03-21 10:14:07 · 413 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.AgglomerativeClustering 类:层次聚类
AgglomerativeClustering 适用于层次结构数据,不需要预设簇数 K,但计算复杂度较高,适用于基因分析、文本聚类 等任务。AgglomerativeClustering 是 sklearn.cluster 提供的层次聚类算法,适用于层次结构数据,可用于数据聚类、基因分组、文本分析等任务。原创 2025-03-21 10:13:52 · 430 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.DBSCAN 类:基于密度的聚类
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是 sklearn.cluster 提供的基于密度的聚类方法,适用于任意形状的簇,并能识别噪声点,在处理高噪声数据、聚类数未知、数据簇形状不规则 时表现优越。DBSCAN 适用于非规则形状的簇,能够检测噪声点,适用于高噪声数据,不需要手动指定簇数 K。适用于异常检测、市场分析、图像分割。原创 2025-03-21 10:13:32 · 309 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.MiniBatchKMeans 类:小批量 K 均值聚类
MiniBatchKMeans 是 sklearn.cluster 提供的小批量 K 均值聚类(MiniBatch K-Means) 方法,它是 KMeans 的改进版本,适用于大规模数据集,通过小批量随机梯度更新来加速计算,减少内存使用。MiniBatchKMeans 适用于大规模数据集,计算速度快,效果接近 KMeans,但在小数据集上可能不如 KMeans 精确。适用于实时数据聚类、在线学习和图像处理。原创 2025-03-21 10:13:13 · 337 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster.KMeans 类:K 均值聚类
KMeans 是 sklearn.cluster 提供的基于质心的聚类算法,它将数据分成 K 个簇,每个簇由一个 中心点(质心) 代表,适用于大多数聚类任务,如图像分割、用户分群、市场分析。KMeans 适用于无监督聚类任务,计算速度快,但需要手动选择 K,适用于数据均匀分布的情况。如果数据有噪声或非球形簇,可以尝试 DBSCAN 或层次聚类。原创 2025-03-21 10:13:00 · 319 阅读 · 0 评论 -
【scikit-learn】sklearn.cluster 模块 :聚类算法
sklearn.cluster 提供了多种 无监督学习聚类算法,用于数据分组、模式发现、异常检测 等任务,适用于图像分割、市场分析、异常检测 等应用。sklearn.cluster 提供了多种聚类方法,KMeans 适用于大规模数据,DBSCAN 适用于噪声数据,AgglomerativeClustering 适用于层次结构数据。原创 2025-03-20 09:57:50 · 482 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.NearestNeighbors 类:最近邻搜索
NearestNeighbors 是 sklearn.neighbors 提供的最近邻(Nearest Neighbors)搜索算法,它用于无监督最近邻搜索,适用于高效地查找最近邻点,常用于推荐系统、异常检测、聚类等任务。NearestNeighbors 适用于无监督最近邻搜索任务,支持多种搜索算法和距离度量,可以调整 n_neighbors 和 metric 控制搜索精度。原创 2025-03-20 09:57:37 · 367 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.LocalOutlierFactor 类:局部异常因子(LOF)
LocalOutlierFactor (LOF) 是 sklearn.neighbors 提供的基于密度的异常检测方法,它通过计算样本在局部邻域中的密度,相对于邻居的密度变化程度来检测异常点。它适用于无监督异常检测和新样本的异常评分。LocalOutlierFactor 适用于异常检测任务,基于局部密度变化进行检测,适用于小规模数据,比 IsolationForest 更适用于密度异常检测。原创 2025-03-20 09:57:24 · 317 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.RadiusNeighborsRegressor 类:基于固定半径的 K 近邻回归器
RadiusNeighborsRegressor 是 sklearn.neighbors 提供的基于固定半径的 K 近邻回归(Radius-based Nearest Neighbors, RNN) 模型,它与 KNeighborsRegressor 类似,但不是基于最近 K 个邻居,而是基于固定半径范围内的所有邻居进行回归,适用于数据分布不均匀的情况。RadiusNeighborsRegressor 适用于回归任务,基于固定半径范围进行预测,适用于数据分布不均匀的情况,可以调整 radius 和 weig原创 2025-03-20 09:57:12 · 260 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.KNeighborsRegressor 类:K 近邻回归器
KNeighborsRegressor 是 sklearn.neighbors 提供的 K 近邻(KNN)回归模型,它基于 K 个最近邻的目标值的平均值或加权平均值进行回归,适用于非线性数据的回归任务,尤其是小规模数据集。KNeighborsRegressor 适用于回归任务,基于邻居目标值的平均值进行预测,适用于小规模数据,计算成本较高,可以调整 n_neighbors 和 weights 控制模型复杂度。原创 2025-03-20 09:56:58 · 353 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.RadiusNeighborsClassifier 类:基于固定半径的 K 近邻分类器
RadiusNeighborsClassifier 是 sklearn.neighbors 提供的基于固定半径的 K 近邻分类(Radius-based Nearest Neighbors, RNN) 模型,它与 KNeighborsClassifier 类似,但不是基于最近 K 个邻居,而是基于固定半径范围内的所有邻居进行分类,适用于数据分布不均匀的情况。RadiusNeighborsClassifier 适用于分类任务,基于固定半径范围进行分类,适用于数据分布不均匀的情况,可以调整 radius 和 w原创 2025-03-20 09:56:42 · 311 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors.KNeighborsClassifier 类:K 近邻分类器
KNeighborsClassifier 是 sklearn.neighbors 提供的 K 近邻(KNN)分类模型,它基于计算新样本与训练数据中 K 个最近邻样本的类别进行分类,适用于小规模数据集,特别是低维或中等维度数据。KNeighborsClassifier 适用于分类任务,基于邻居投票进行分类,适用于小规模数据,计算成本较高,可以调整 n_neighbors 和 weights 控制模型复杂度。原创 2025-03-20 09:56:29 · 474 阅读 · 0 评论 -
【scikit-learn】sklearn.neighbors 模块:K 近邻算法和基于邻域的方法
sklearn.neighbors 提供了 K 近邻(KNN)算法 和 基于邻域的方法,适用于 分类、回归、异常检测 任务。KNN 适用于小规模数据,LOF 适用于密度异常检测,NearestNeighbors 用于最近邻搜索。KNeighborsClassifier KNN 分类,适用于小数据集,RadiusNeighborsClassifier 基于固定半径的 KNN 分类,KNeighborsRegressor KNN 回归,适用于小数据集,RadiusNeighborsRegressor 基于固定半原创 2025-03-20 09:56:10 · 389 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.OneClassSVM 类:一类支持向量机,用于异常检测
OneClassSVM 是 sklearn.svm 提供的异常检测(Outlier Detection) 方法,适用于无监督学习,用于检测异常点、孤立点或异常行为,例如欺诈检测、入侵检测、工业设备故障检测。OneClassSVM 适用于异常检测任务,利用支持向量机超平面分割异常点,适用于高维数据,但比 IsolationForest 计算成本更高。原创 2025-03-20 09:55:48 · 385 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.NuSVR 类:支持向量机回归器(带 nu 参数)
NuSVR 是 sklearn.svm 提供的支持向量机(SVM)回归模型,它与 SVR 类似,但用 nu(控制误差上界和支持向量比例) 代替 epsilon 控制误差范围,适用于非线性回归任务。NuSVR 适用于回归任务,支持核方法进行非线性回归,与 SVR 类似,但 nu 直接控制误差和支持向量比例,可以调整 C 和 nu 控制模型复杂度。原创 2025-03-20 09:55:29 · 346 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.LinearSVR 类:线性支持向量机回归器
LinearSVR 是 sklearn.svm 提供的线性支持向量机(Linear SVM)回归模型,适用于高维数据(如文本数据),比 SVR(kernel="linear") 计算速度更快,但不支持核方法。LinearSVR 适用于线性回归任务,计算速度比 SVR(kernel="linear") 更快,适合高维数据(如文本回归),可以调整 C 和 epsilon 控制模型复杂度。原创 2025-03-20 09:55:13 · 370 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.SVR 类:支持向量机回归器
SVR(Support Vector Regression)是 sklearn.svm 提供的支持向量机(SVM)回归模型,适用于非线性回归任务,尤其在小数据集和高维数据中表现良好。SVR 适用于回归任务,支持核方法进行线性和非线性回归,适用于小规模数据,比 LinearSVR 更适合复杂数据,可以调整 C 和 epsilon 控制模型复杂度。原创 2025-03-20 09:54:55 · 319 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.LinearSVC 类:线性支持向量机分类器
LinearSVC 是 sklearn.svm 提供的线性支持向量机(Linear SVM)分类模型,它适用于高维数据(如文本分类),比 SVC(kernel="linear") 计算速度更快,但不支持核方法。LinearSVC 适用于线性分类任务,计算速度比 SVC(kernel="linear") 更快,适合高维数据(如文本分类),可以调整 C 控制模型复杂度。原创 2025-03-20 09:54:37 · 451 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.NuSV 类:支持向量机分类器(带 nu 参数)
NuSVC 是 sklearn.svm 提供的 支持向量机(SVM)分类模型,它与 SVC 类似,但使用 nu 参数 控制支持向量的比例,适用于 二分类和多分类任务。NuSVC 适用于分类任务,支持核方法进行线性和非线性分类,与 SVC 类似,但用 nu 控制支持向量比例,可能比 C 更易调整。原创 2025-03-20 09:54:22 · 268 阅读 · 0 评论 -
【scikit-learn】sklearn.svm.SVC 类:支持向量机分类器
SVC(Support Vecto rClassification)是sklearn.svm提供的支持向量机(SVM)分类模型,适用于二分类和多分类任务,尤其擅长小规模数据、非线性分类问题。SVC适用于分类任务,支持核方法进行线性和非线性分类,适用于小规模数据,比RandomForestClassifier更适合高维小数据,可以调整C和gamma控制模型复杂度。原创 2025-03-20 09:53:51 · 552 阅读 · 0 评论 -
【scikit-learn】sklearn.svm 模块:支持向量机(Support Vector Machine, SVM) 相关模型
sklearn.svm提供了支持向量机(Support Vector Machine,SVM)相关模型,适用于分类、回归和异常检测任务。sklearn.svm提供了SVM相关的分类、回归和异常检测模型,支持非线性映射(核函数)、高维数据处理、异常检测,适用于小规模数据集的复杂问题。原创 2025-03-19 10:24:01 · 398 阅读 · 0 评论 -
【scikit-learn】sklearn.ensemble.IsolationForest 类:孤立森林(异常检测)
IsolationForest是sklearn.ensemble提供的异常检测(Outlier Detection)方法,它通过构建多棵随机树,将异常点隔离,适用于异常检测、欺诈检测、入侵检测等任务。IsolationForest适用于异常检测任务,利用决策树隔离异常点,适用于高维数据和大规模数据,比基于距离的方法计算效率更高。原创 2025-03-19 10:23:50 · 440 阅读 · 0 评论 -
【scikit-learn】sklearn.ensemble.BaggingRegressor 类:装袋回归器
BaggingRegressor是sklearn.ensemble提供的装袋(Bagging)回归模型,它训练多个相同的弱回归模型,并通过平均预测结果降低方差,提高稳定性,适用于非线性回归任务。BaggingRegressor适用于回归任务,结合多个相同的弱回归器,提高回归稳定性,支持样本随机采样(Bagging),适用于减少过拟合,提高模型泛化能力。原创 2025-03-19 10:23:36 · 285 阅读 · 0 评论 -
【scikit-learn】sklearn.ensemble.AdaBoostRegressor 类:自适应提升回归器
AdaBoostRegressor是sklearn.ensemble提供的自适应提升(AdaBoost)回归模型,它结合多个弱回归模型(默认是DecisionTreeRegressor),逐步调整样本权重,提升回归效果,适用于非线性回归任务。AdaBoostRegressor适用于回归任务,结合多个弱回归器,逐步调整样本权重,提高回归预测能力,比单独的决策树更强大,但训练时间较长,可以调整learning_rate和n_estimators控制模型复杂度。原创 2025-03-19 10:23:17 · 358 阅读 · 0 评论