![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sklearn
文章平均质量分 88
iostreamzl
Python,机器学习,数据分析领域小萌新
展开
-
机器学习sklearn----支持向量机SVC模型评估指标
文章目录前言混淆矩阵指标1准确率指标2精确度指标3召回率指标4F1-measure指标5假负率指标6特异度指标7假正率sklearn中的混淆矩阵前言前面一篇博文介绍了SVC处理二分类问题是怎么样来解决样本不均衡。这里我们要来将用什么指标来衡量模型的好坏SVC提供的接口score是计算模型的准确率的,这个指标在样本均衡的情况下是完全适用的, 但是在遇到样本不均衡问题的时候就失去了意义,而我们日常面对的数据会有较多的不均衡, 面对这样的问题,我们需要采用新的模型评估指标,而我们的评估指标需要能够反映模型捕原创 2021-12-15 08:30:00 · 5029 阅读 · 0 评论 -
机器学习sklearn----支持向量机SVC中的样本不均衡问题
前言在分类问题中永远存在一个问题:样本不均衡比如我们的一个二分类数据集,其中1占比3%,0占比97%。这就是一个典型的样本不均衡数据集。但是我们的需求往往都是捕捉到这少数的样本,也就是将少数类尽量多的判断正确。但是我们的模型默认时样本均衡的,这样就会带来一些问题首先,模型分类时会更加的倾向于多数类,让多数类更加容易被判对,会牺牲掉少数类来保证多数类的判别效果。 但是这样的模型显然不是我们需要的其次,模型的评估指标会失去意义,因为即使我们什么都不做,只是将所有的样本都判别为0,那样的准确率也是达到了原创 2021-12-13 16:04:31 · 2279 阅读 · 2 评论 -
机器学习sklearn----支持向量机SVC核函数性质探索
文章目录前言原始数据集探索核函数性质探究对核函数rbf的表现不佳的思考对rbf进一步的调参前言前面我们了解了在不同的数据分布下,不同核函数的表现效果,但是实际应用中我们的数据往往有很多的特征,导致我们很难知道具体的数据分布情况,让我们比较难选择较好的核函数。当然了选择“rbf”一直是一个不错的选择。但是每个核函数都有自己的优势和弊端,这篇文章我们会试着对这些核函数进行探索,使用的数据集是sklearn中的乳腺癌数据集。本文中使用到的所有依赖库from sklearn.datasets import原创 2021-12-08 16:17:20 · 1967 阅读 · 2 评论 -
机器学习sklearn----KMeans评估指标
引言前面介绍了KMeans的基础知识。了解了KMeans的基础用法。但是具体需要怎么来评估我们的模型还是一个未知数。今天这节我们会介绍再不考虑实际需求的情况下来评估我们的KMeans模型。实际的应用中是按照我们的需求来评估模型聚类效果的。数据准备from sklearn.datasets import make_blobsfrom sklearn.cluster import KMeansimport warningsimport numpy as npimport pandas as pd原创 2021-11-24 20:17:07 · 8838 阅读 · 0 评论 -
机器学习sklearn----支持向量机SVC重要参数核函数kernel如何选择
文章目录前言不同核函数对比分析创建原始数据不同核函数表现可视化总结前言前面的SVC求解可视化一文中已经知道了SVC对于线性和非线性的数据有不同的核函数,线性只有一个,而非线性有三个,实际生活中我们遇到的数据大多数是非线性的,那么这些核函数具体应该怎么选择呢?SVM的核函数:linear:线性核函数,只能解决线性问题ploy:多项式核函数,解决非线性问题和线性问题,但是偏线性sigmoid:双曲正切核函数,解决线性和非线性问题rbf:高斯径向基核函数,解决线性和非线性问题,偏非线性核函数可原创 2021-12-07 17:12:04 · 4591 阅读 · 3 评论 -
机器学习sklearn----支持向量机分类器SVC求解过程可视化
文章目录需求及思路线性可分数据的SVC求解可视化非线性数据的SVC求解可视化利用matplotlib画出三维空间数据分布需求及思路需求:画出啊决策边界和两个超平面实现思路:从坐标轴上去出大量的点,将点的坐标值当作两个特征放入SVC模型中,预测每个点对应的类别。利用matplotlib中contour函数画出等高线(到决策边界距离相同的点具有相同的高度),保留[-1, 0, 1]三条。0对应决策边界,其他的两条就是两个超平面本文代码使用到的第三方库如下from sklearn.datasets原创 2021-12-06 19:38:20 · 4458 阅读 · 1 评论 -
机器学习sklearn----KMeans实例(图片数据矢量量化的应用)
文章目录矢量量化理解KMeans聚类法导入数据采用KMeans矢量化随机质心法矢量量化理解矢量量化可以理解为数据的压缩,可以看作是一种降维的过程,只是和我们之前知道的降维算法的理论完全不一样。举例来说,我们有一张600 x 600 个像素点的图片,每个像素点有一个颜色,那么这个图片上存在的信息就有360000个。图片上有很多的像素点之间的颜色差异微乎其微,那么我们就可以将这些像素点看作是同一个像素点(相当于KMeans的质心),将这些像素点的颜色替换为同一个颜色。图片的矢量量化就是将每个像素点的颜色用原创 2021-12-04 17:20:38 · 2772 阅读 · 1 评论 -
机器学习sklearn----通过轮廓系数确定适合的n_clusters
文章目录创建数据集n_clusters=4详细画图代码解析完整代码前面的文章我们知道了KMeans的常用评估指标轮廓系数。这篇文章我们介绍怎样通过轮廓系数来确定最佳的n_cluster创建数据集创建一个有5个分类的数据集,用于聚类,这里创建数据集我们是知道分类情况的,但是实际中我们是基本不会知道分类情况的。也就没有了最佳的聚类效果参考。所以需要使用到轮廓系数来选择最佳的聚类数量。from sklearn.datasets import make_blobsfrom sklearn.cluster原创 2021-12-03 16:06:43 · 2613 阅读 · 0 评论 -
机器学习sklearn----初识KMeans
文章目录概述KMeans中几个概念KMeans工作过程KMeans使用示例导入相关模块生成原始数据通过KMeans分类KMeans常用属性分类结果展示KMeans中的predict方法总结概述KMeans是一种无监督学习的方法。他是一种分类算法。用于探索原始数据,将原始数据中相同属性的样本归为一类。这篇文章只讲KMeans的简单使用,关于评估结果好坏的内容,看我下一篇文章。KMeans中几个概念簇: 即分组,KMeans将数据分为K个簇,簇间差异大,簇内差异小质心: 簇中所有数据的均值就是该簇的原创 2021-10-16 14:28:00 · 800 阅读 · 2 评论 -
机器学习sklearn----逻辑回归(LogisticRegression)使用详解
文章目录为什么需要逻辑回归重要参数penalty参数示例L1,L2的效果对比处理多多分类问题总结为什么需要逻辑回归逻辑回归是由线性回归演变而来的一个分类算法,所以说逻辑回归对数据的要求比较高。对于分类器来说,我们前面已经学习了几个强大的分类器(决策树, 随机森林等),这些分类器对数据的要求没有那么高,那我们为什么还需要逻辑回归呢?主要在于逻辑回归有以下几个优势:对线性关系的拟合效果好到丧心病狂:特征与标签之间的线性关系极强的数据,比如金融领域中的信用卡欺诈,评分卡制作,电商中的营销预测等等相关的数据原创 2021-09-21 22:54:49 · 33387 阅读 · 1 评论 -
PCA降维算法应用实例----kaggle手写数字识别
文章目录序言正题编程环境数据准备导包导入数据PCA参数的选择画降维后特征的信息量累计和曲线结合模型,进一步选择n_components的值结合模型,寻得最佳参数KNN模型表现PCA用于训练集测试集可能的两种思路两种思路的对比训练集测试集的划分思路一结果思路二结果总结序言在前面的博文中我们了解了降维算法PCA,以及PCA的参数。这篇文章建立在对PCA有了一定的基础的前提上。本篇文章主要将PCA算法在实际中的应用。包含PCA参数的选择,训练集,测试集上PCA的使用,解决PCA实际应用中的困惑。本文使用的是k原创 2021-07-11 20:14:42 · 1909 阅读 · 14 评论 -
sklearn之datasets模块常用功能详细介绍
文章目录序言datasets简单概述loader模块数据集总览示例(boston房价数据集)maker模块分类型数据的生成make_blobs()make_circles()make_moons()回归型数据的生成make_regression()序言datasets模块对我们初入机器学习的小萌新来说,真的是帮助很大,但是去官网阅读又都是英文,阅读起来有点困难。基于这点,特意写了这篇文章来简单介绍datasets的2个主要模块。每个模块会有一个简单的示例,告诉我们怎样获得数据,这篇文章主要将获得数据,原创 2021-06-18 17:17:08 · 7327 阅读 · 9 评论 -
特征工程之特征选择(7)----降维算法PCA重要参数
文章目录序言关于参数n_components的简单概述准备工作n_components参数使用示例整数型n_components可解释性方差曲线n_components=mle百分比型n_componentssvd_solver参数简述random_state参数总结序言前面一篇博文,我们已经了解了PCA的基本使用方法,但是对其中的参数,属性,我们还没有深入了解,这篇文章,我们将深入了解PCA的参数关于参数n_components的简单概述n_components参数决定了我们降维后需要保留的参数的原创 2021-06-09 21:00:48 · 2805 阅读 · 19 评论 -
特征工程之特征选择(6)----降维算法PCA初探
文章目录维度的概念降维的目的:PCA 的信息衡量指标----可解释性方差降维过程简述降维算法与前面的特征选择算法的区别sklaern中的降维算法示例导入相关库提取特征和标签降维探索降维后的数据总结维度的概念对于ndarray对象和series对象,shape返回的数据中有几个数据就是几维对于dataframe对象,列数就是维度数,即维度=shape[1]降维算法的降维指的是,降低特征矩阵中的特征的数量降维的目的:让算法运算更快,效果更好高维数据可视化PCA 的信息衡量指标----可解释性原创 2021-06-07 23:21:11 · 797 阅读 · 11 评论 -
降维算法PCA的应用----高维数据的可视化
文章目录序言废话不多说看代码导入相关模块数据提取降维降维后数据信息展示新的特征矩阵可视化关于X_dim2[y==i, 0]的解释总结序言当我们拿到一堆数据的时候,几乎不可能通过我们的肉眼分辨出数据的分布情况,这时候就想要通过图展示数据的分布,但是现实中数据往往维度很高,而我们人类能看到的最高维度就三维,这时我们就可以通过降维算法PCA将维度降低到三位之下,便于我们观察数据的分布。注意点这里讲的方式只适用于分类型标签数据的可视化废话不多说看代码本次使用的数据是sklearn自带的鸢尾花数据集导入相关原创 2021-06-05 23:42:48 · 2295 阅读 · 21 评论 -
特征工程之特征选择(5)----包装法
文章目录原创 2021-06-02 19:45:11 · 4184 阅读 · 16 评论 -
特征工程之特征选择(4)----嵌入法(Embed)
文章目录原创 2021-05-31 19:31:57 · 8509 阅读 · 26 评论 -
特征工程之特征选择(3)----F检验和互信息法
文章目录前言F检验法F检验概述示例互信息法互信息法概述示例前言前面已经讲了方差过滤和卡方过滤,如果这两种方法过滤后的数据还是不能令人满意,就可考虑这篇文章要将的F检验法,和互信息法。F检验法F检验概述F检验又称为ANOVA,方差齐性检验,是用来捕捉标签与每个特征之间线性关系的过滤方法。F检验即可做分类也可以做回归分类:feature_selection.f_classif(标签离散)回归:feature_selection.f_regression(标签连续)与卡方检验一样,这两个方法都要原创 2021-05-30 21:03:20 · 3523 阅读 · 10 评论 -
特征工程之特征选择(2)----卡方过滤
文章目录问题的引入卡方检验卡方检验概述对负数特征的处理示例1导入相关模块数据处理过滤前随机森林分类器表现卡方过滤1---保留300个特征参数k的学习曲线对方法1中k值设定的思考示例2概述获得p值k值计算总结问题的引入方差过滤掉的是哪些特征方差不高于阈值的特征,留下了的是方差比较大的特征,这只能反应该特征变化比较多,并不能反映于标签之间的直接相关性。我们希望选出的是与标签相关且有意义的特征,因为这样的特征能为我们提供大量的信息。如果特征与标签相关性很差,只会白白浪费我们的计算内存与时间。并且可能给我们的原创 2021-05-29 22:29:25 · 2845 阅读 · 11 评论 -
特征工程之特征选择(1)----方差过滤
文章目录特征工程概述特征工程的三个步骤特征选择之前的注意事项方差过滤法示例数据下载导入相关模块加载数据特征标签分离删除方差为0的特征get_support()方法查看特征的删除情况设置阈值,删除特征方差过滤对模型的影响对随机森林的影响原始数据的运行时间与表现过滤后的运行时间与表现对KNN模型的影响原始数据的运行时间与表现过滤后的运行时间与表现选取超参数threshold方差过滤的影响总结特征工程概述特征工程(feature engineering)是将原始数据转换为更能代表预测模型的潜在问题的特征的过程原创 2021-05-29 09:36:38 · 4089 阅读 · 22 评论 -
机器学习中连续型特征的二值化与分段,一文读懂
文章目录原创 2021-05-27 16:56:46 · 868 阅读 · 1 评论 -
机器学习数据预处理----分类型文字数据的处理
文章目录原创 2021-05-26 15:44:16 · 2084 阅读 · 17 评论 -
数据预处理----缺失值的填充
文章目录概述缺失值的常用处理方式sklearn中缺失值填充模块缺失值填充示例准备工作0填充均值填充众数填充中位数填充随机森林填充总结概述机器学习和数据挖掘中所使用的数据,永远不可能是完美的。很多特征,对于分析和建模来说意义非凡,但对于实际收集数据的人却不是如此,因此数据挖掘之中,常常会有重要的字段缺失值很多,但又不能舍弃字段的情况。因此,数据预处理中非常重要的一项就是处理缺失值。缺失值的常用处理方式删除:数据缺失量比较少,删除后对模型的结果几乎不会造成影响;与模型准确性几乎无关的属性填充均值原创 2021-05-23 00:04:14 · 5703 阅读 · 0 评论 -
机器学习sklearn----用随机森林来填充缺失值
文章目录概述导入需要的库概述我们在现实中收集的数据,几乎不可能是完美无缺的,往往会有一些缺失值,面对缺失值,很多人先择的方法是直接将包含缺失值的样本删除,,这是一种有效的方法,但是有时候填补缺失值比之际丢弃样本有更好的效果。即使我们其实并不知道缺失值的真实样貌。在sklearn中,我们可以使用sklearn.impute.SimpleImputer来轻松的将均值、中值或者其他常用的数值填补到缺失值中。在这个案例中我们将用均值,0,和随机森林来填补缺失值,并验证四种情况下的拟合情况,找出对使用数据集来说最原创 2021-05-23 00:02:30 · 5698 阅读 · 6 评论 -
数据预处理----数据无量纲化(归一化和标准化)
文章目录概述数据挖掘的五大步骤skleran中的数据处理和特征工程数据预处理Preprocessing&Impute数据无量纲化数据归一化---MinMaxScaler示例概述数据挖掘的五大步骤数据获取数据预处理数据预处理是从数据中检测,纠正或删除损坏,不准确或不适用于模型的记录的过程可能面对的问题有:数据类型不同,比如有的是文字,有的是数字,有的含时间序列,有的连续,有的间断。也可能,数据的质量不行,有噪声,有异常,有缺失,数据出错,量纲不一,有重复,数据是偏态,数据量太大或太小数原创 2021-05-21 19:40:11 · 4067 阅读 · 0 评论 -
机器学习中调参、调优思想以随机森林乳腺癌数据集为例子
文章目录正确的调参思路泛化误差随机森林各个参数对模型在未知数据上评估性能的影响示例---随机森林在sklearn乳腺癌数据集上的调参从sklearn中导入相关的包导入数据,不经过调参直接看模型准确度初步画学习曲线进一步画出学习曲线调影响第二大的参数---max_depth通过分析可以知道要增加复杂度,有针对性的调参---max_features不死心的调参(说不定效果很好呢)----criterion最终结果总结通过画学习曲线,网格搜索,我们可以探索到调参边缘(代价可能是训练一次模型可能要跑很久很久)。现原创 2021-05-19 00:14:17 · 628 阅读 · 0 评论 -
sklearn库学习----随机森林(RandomForestClassifier,RandomForestRegressor)
概述集成算法集成学习(ensemble learning)是时下非常流行的机器学习算法,它本身不是一个单独的机器学习算法,而是通过在数据上构建多个横型,集成所有模型的建模结果,基本上所有的机器学习领域都可以看到集成学习的身影,在现实中集成学习也有相当大的作用,它可以用来做市场营销模拟的建模,统计客户来源,保留和流失,也可用来预测疾病的风险和病患者的易感性。在现在的各种算法竞赛中,随机森林(入门级别容易上手),梯度提升树(GBDT) , Xgboost等集成算法的身影也随处可见,可见其效果之好,应用之广.原创 2021-05-17 00:26:38 · 21702 阅读 · 1 评论 -
sklearn库学习------决策树(回归树DecisionTreeRegressor)
重要参数、属性及接口回归树几乎所有参数、属性、接口都和分类树一样。需要注意的是在回归树中没有标签分布是否均衡的问题,因此回归树没有class_weight参数criterion:回归树衡量分支质量的指标,有三种标准输入"mse"使用均方误差mean squared error(MSE),父节点和叶子节点之间的均方误差的差额将被用来作为特征选择的标准,这种方法通过使用叶子节点的均值来最小化L2损失输入"friedman_mse”使用费尔德曼均方误差,这种指标使用弗里德曼针对潜在分枝中的问题改进后的原创 2021-05-15 22:37:54 · 6880 阅读 · 1 评论 -
sklearn库学习----决策树(分类树DecisionTreeClassifier)
概述决策树是一种非参数的有监督学习方法,他能够从一系列有特征和标签的数据中总结出决策规则,并用树状图的结构呈现出这些规则,以解决分类和回归问题。决策树算法的核心是解决两个问题如何从数据表中找出最佳节点和最佳分支如何让决策树停止生长,防止过拟合sklearn中的决策树sklearn中的决策树都在sklearn.tree模块下类名作用tree.DecisionTreeClassifier分类树tree.DecisionTreeRegressor回归树tree原创 2021-05-12 00:01:11 · 3600 阅读 · 0 评论