Sklearn
文章平均质量分 83
茫茫人海一粒沙
这个作者很懒,什么都没留下…
展开
-
机器学习之不平衡数据集的处理方法
机器学习之不平衡数据集的处理方法1,不平衡数据集1.1 定义1.2 举例1.3 实例1.4 导致的问题2. 不平衡数据集常用的处理方法2.1 扩充数据集2.2 对数据集进行重采样1,不平衡数据集1.1 定义不平衡数据集指的是数据集各个类别的样本数目相差巨大。以二分类问题为例,假设正类的样本数量远大于负类的样本数量,这种情况下的数据称为不平衡数据1.2 举例在二分类问题中,训练集中class 1的样本数比上class 2的样本数的比值为60:1。使用逻辑回归进行分类,最后结果是其忽略了class 2原创 2022-05-07 16:48:02 · 2157 阅读 · 0 评论 -
混淆矩阵及confusion_matrix函数的使用
1.混淆矩阵混淆矩阵是机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型作出的分类判断两个标准进行汇总。这个名字来源于它可以非常容易的表明多个类别是否有混淆(也就是一个class被预测成另一个class)下图是混淆矩阵的一个例子其中灰色部分是真实分类和预测分类结果相一致的,绿色部分是真实分类和预测分类不一致的,即分类错误的。2.confusion_matrix函数的使用官方文档中给出的用法是sklearn.metrics.confusion_matr原创 2020-12-25 17:48:45 · 1416 阅读 · 0 评论 -
数据预处理之归一化/标准化/正则化/零均值化
sklearn.preprocessing数据预处理 归一化/标准化/正则化一、标准化(Z-Score),或者去除均值和方差缩放二、将属性缩放到一个指定范围三、正则化(Normalization)一、标准化(Z-Score),或者去除均值和方差缩放公式为:(X-mean)/std 计算时对每个属性/每列分别进行。将数据按期属性(按列进行)减去其均值,并处以其方差。得到的结果是,对于每个属性/每列来说所有数据都聚集在0附近,方差为1。实现时,有两种不同的方式:使用sklearn.preproce原创 2020-10-25 23:27:12 · 10404 阅读 · 0 评论 -
[机器学习]TF-IDF是什么
0 前言在信息检索与文本挖掘中经常遇见单词的 tf-idf (term frequency - inverse document frequency),这个值的大小能够体现它在文本集合中的某一个文档里的重要性。1 什么是TF-IDF举个例子来说,有一篇100字的短文,其中「猫」这个词出现了3 次。那么这篇短文中「猫」的词频如果这里有 10000000 篇文章,其中有「猫」这个词的却文章只有 1000个,那么「猫」对应所有文本,也就是整个语料库的逆向文件频率这里 logloglog取 10为底。原创 2020-08-06 16:47:03 · 3748 阅读 · 0 评论 -
[机器学习-实战篇]Imdb数据集情感分析之贝叶斯
一, 前言1.Imdb影评的数据集介绍与下载2.贝叶斯原理介绍二,代码分析preprocess_data() 方法包含以下步骤:加载Imdb影评数据。用数据训练CountVectorizer或者TfidfVectorizer。保持CountVectorizer与TfidfVectorizer模型,因为预测的时候要用这两个模型把要预测的词转化为词向量。保持转换为词向量的数据集。def preprocess_data(): X_orig, Y_orig = get_data(acl原创 2020-08-01 00:12:08 · 2428 阅读 · 0 评论 -
Imdb影评的数据集介绍与下载
1. Imdb影评的数据集介绍这是用于二进制情感分类的数据集,其包含的数据比以前的基准数据集要多得多。 我们提供了25,000套极地电影评论供培训,而25,000套则用于测试。 也有其他未标记的数据可供使用。 提供原始文本和已处理的单词格式袋。 有关更多详细信息,请参见发行版中的自述文件。Imdb 影评的数据集包含有25000 训练数据集25000 测试数据集2. 数据下载数据集地址:http://ai.stanford.edu/~amaas/data/sentiment/下载后解压,会看原创 2020-07-31 23:33:35 · 20674 阅读 · 6 评论 -
[机器学习-实践篇]贝叶斯算法
朴素贝叶斯算法有两个重要假设1. 文本中每个词(即特征)之间相互独立,即一个特征或者单词出现的可能性与它和其他单词相邻没有关系2. 文本中每个特征同等重要,通俗地讲就是每个特征或者单词出现的概率是相等的正是由于有这两个重要假设,所以我们才能安然理得的使用贝叶斯算法。因为说实话如何合理的将文本转换为文本向量是要考虑很多信息的,当你接触到RNN(循环神经网络)或者是NLP(自然语言处理)这方面的知识时,你会发现一段文本所能携带的信息有太多了。就比如说“明天是星期一,我要去学校”这句话,如果是按照朴素贝原创 2020-07-29 16:58:44 · 1708 阅读 · 0 评论 -
[机器学习]京东机器学习类图书畅销原因分析-决策树或随机森林
一. 问题描述机器学习图书畅销原因分析二. 分析问题的过程与步骤1.在京东网站上爬取3000条关于机器学习类书籍的数据。爬虫代码可以看这里爬完结果如下2. 数据预处理去掉特殊字符一些看起来没有用的列删掉一些由空值的字段删掉。通过title这列,衍生出两个全新列traditional_deep_category: 机器学习,深度学习practice_theory_category:实战类书,理论类书,综合类通过author这列,衍生出is_author_foreigner- 国外原创 2020-07-23 20:14:28 · 22042 阅读 · 3 评论 -
[机器学习-实践]支持向量机(SVM)从例子代码中学习
1.用SVM的linear做鸢尾花分类利用sklearn中自带的dataset,鸢尾花数据库为例,进行二分类。#载入鸢尾花数据集,datasets自带数据库,房价的、鸢尾花等,#导入:datasets_load_name(),直接np数组形式from sklearn import svm,datasetsiris = datasets.load_iris()#X是特征集,150*4,这里只取其中两列作为特征X = iris.data[:,(1,2)]#y是标签集,共012三个类别,这里将1替原创 2020-07-07 17:36:01 · 503 阅读 · 0 评论 -
[机器学习-概念] 什么是欧式距离、标准化欧式距离、马氏距离、余弦距离
1.欧式距离(Euclidean Distance)欧式距离源自N维欧氏空间中两点x1,x2x_1,x_2x1,x2间的距离公式:2.标准化欧式距离(Standardized Euclidean distance)引入标准化欧式距离的原因是一个数据xix_ixi 的各个维度之间的尺度不一样。【对于尺度无关的解释】如果向量中第一维元素的数量级是100,第二维的数量级是10,比如v1=(100,10),v2 = (500,40),则计算欧式距离可见欧式距离会给与第一维度100权重,这会压制原创 2020-07-03 23:57:56 · 44285 阅读 · 2 评论 -
[机器学习-原理与实践]逻辑回归(LogisticRegression)多分类(OvR, OvO, MvM)
这里写目录标题前言One-VS-RestOne-Vs-One实践案例总结前言逻辑回归分类器(Logistic Regression Classifier)是机器学习领域著名的分类模型。其常用于解决二分类(Binary Classification)问题。One-VS-Rest假设我们要解决一个分类问题,该分类问题有三个类别,分别用△,□和×表示,每个实例(Entity)有两个属性(Attribute),如果把属性 1 作为 X 轴,属性 2 作为 Y 轴,训练集(Training Dataset)的原创 2020-07-02 19:14:12 · 8925 阅读 · 0 评论 -
[机器学习-原理及实现篇]线性回归-最小二乘法
线性回归到底要干什么,顾名思义很简单,即在已有数据集上通过构建一个线性的模型来拟合该数据集特征向量的各个分量之间的关系,对于需要预测结果的新数据,我们利用已经拟合好的线性模型来预测其结果。关于线性回归的方法,现在使用得比较广泛的就是梯度下降和最小二乘法;我打算把最小二乘法和梯度下降分两篇博客来写,这篇就来说一说我对线性回归及最小二乘法的理解以及原理实现。线性模型在二维空间中就是一条直线,在三维空间是一个平面,高维空间的线性模型不好去描述长什么样子;如果这个数据集能够用一个线性模型来拟合它的数据关系,不管原创 2020-06-19 17:41:55 · 1696 阅读 · 1 评论 -
[机器学习-实践篇]学习之线性回归、岭回归、Lasso回归,tensorflow实现的线性回归
线性回归、岭回归、Lasso回归前言1.线性回归2. 岭回归3. Lasso回归4. tensorflow实现的线性回归前言本章主要介绍线性回归、岭回归、Lasso回归,tensorflow实现的线性回归的简单例子代码。原理篇看这里[机器学习-原理篇]学习之线性回归、岭回归、Lasso回归1.线性回归from sklearn import linear_modeldef test_linearRegression(X, y): clf = linear_model.LinearRegr原创 2020-06-18 23:17:18 · 413 阅读 · 0 评论 -
[机器学习-原理篇]学习之线性回归、岭回归、Lasso回归
线性回归、岭回归、Lasso回归前言一,线性回归——最小二乘二,Lasso回归三,岭回归四, Lasso回归和岭回归的同和异五, 为什么 lasso 更容易使部分权重变为 0 而 ridge 不行?参考资料前言如果对L1和L2正则化,最小二乘法不了解的,可以先看我写的下面两篇正则化项L1和L2的总结一元线性回归用最小二乘法的推导过程线性回归很简单,用线性函数拟合数据,用 mean square error (mse) 计算损失(cost),然后用梯度下降法找到一组使 mse 最小的权重。la原创 2020-06-10 00:14:18 · 1509 阅读 · 0 评论 -
[机器学习]正则化项L1和L2的学习与理解
正则化项L1和L2的学习与理解正则化(Regularization)稀疏模型与特征选择的关系L1和L2正则化的直观理解正则化和特征选择的关系正则化(Regularization)机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作 ℓ1\ell_1ℓ1-norm和 ell2ell_2ell2-norm,中文称作 L1正则化 和 L2正则化,或者 L1范数 和 L2范数。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些参数做一原创 2020-06-08 21:00:24 · 1116 阅读 · 0 评论 -
[机器学习-数学]什么是ESS/RSS/TSS
回归平方和 ESS,残差平方和 RSS,总体平方和 TSS总变差(TSS):被解释变量Y的观测zhi值与其平均值dao的离差平方和(总平方和)(说明 Y 的总变动程度)解释了的变差(ESS):被解释变量Y的估计值与其平均值的离差平方和(回归平方和)剩余平方和 (RSS):被解释变量观测值与估计值之差的平方和(未解释的平方和)他们的关系是TSS=RSS+ESSTSS: Total Sum of Squares 总离差平方和/总平方和ESS: Explained Sum of Squares原创 2020-06-08 18:02:41 · 21076 阅读 · 0 评论 -
[机器学习-回归算法]Sklearn之线性回归实战
Sklearn之线性回归实战一,前言二,热身例子三,一个贸易公司的简单例子四, Sklearn 官网里的一个例子参考资料一,前言一元线性回归的理论片请看我这个链接二,热身例子预测直线 y=1x1+2x2+3y = 1x_1 + 2x_2 +3y=1x1+2x2+3导入LinearRegression 从Sklearn.liear_model 包里from sklearn.linear_model import LinearRegression拟合数据也可以说是训练reg = Linea原创 2020-06-03 19:00:41 · 3790 阅读 · 0 评论 -
[机器学习-回归算法]一元线性回归用最小二乘法的推导过程
一元线性回归算法在数据的统计分析中,数据之间即变量x与Y之间的相关性研究非常重要,通过在直角坐标系中做散点图的方式我们会发现很多统计数据近似一条直线,它们之间或者正相关或者负相关。虽然这些数据是离散的,不是连续的,我们无法得到一个确定的描述这种相关性的函数方程,但既然在直角坐标系中数据分布接近一条直线,那么我们就可以通过画直线的方式得到一个近似的描述这种关系的直线方程。当然,从前面的描述中不难看出,所有数据都分布在一条直线附近,因此这样的直线可以画出很多条,而我们希望找出其中的一条,能够最好地反映变量之间原创 2020-06-01 00:14:29 · 7200 阅读 · 3 评论 -
[机器学习-Sklearn]K-means(K均值)学习与总结
K-means总结前言一,k-means算法二,k的选择(仅供参考)1.肘部法则2. 根据实际应用的目的选择K三,代码讲解相同数据下用K-means分成3个簇和4个簇对比前言kmeans是最简单的聚类算法之一,但是运用十分广泛。最近在工作中也经常遇到这个算法。kmeans一般在数据分析前期使用,选取适当的k,将数据分类后,然后分类研究不同聚类下数据的特点。一,k-means算法在介绍k-means算法之前,先看一个课程中使用k-means对二维数据进行聚类的小例子。下图中(a)是原始样本点,在(b)原创 2020-05-26 22:57:18 · 1686 阅读 · 0 评论 -
[机器学习-sklearn]K-means之make_blobs聚类数据生成器
make_blobs介绍scikit中的make_blobs方法常被用来生成聚类算法的测试数据,直观地说,make_blobs会根据用户指定的特征数量、中心点数量、范围等来生成几类数据,这些数据可用于测试聚类算法的效果。make_blobs方法:sklearn.datasets.make_blobs(n_samples=100, n_features=2,centers=3, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random原创 2020-05-26 20:05:52 · 2613 阅读 · 0 评论 -
[机器学习-sklearn]数据预处理要点总结
数据预处理要点总结1. 为什么要数据预处理2. 数据中存在缺失值2.1 查看数据的完整性(missingno)2.2 KNN填补法1. 为什么要数据预处理在现实背景中,我们的数据集往往存在各种各样的问题,如果不对数据进行预处理,模型的训练就无法开始。而且机器学习中大约70%的时间都要花在数据预处理上。2. 数据中存在缺失值2.1 查看数据的完整性(missingno)missingno 安装 :pip install missingnomissingno提供了一个灵活且易于使用的缺失数据原创 2020-05-26 17:12:46 · 637 阅读 · 0 评论 -
[机器学习-坑] error: Microsoft Visual C++ 14.0 is required
安装 cvxpy 和 fancyimpute 时pip install cvxpy错误信息SetuptoolsDeprecationWarning)error: Microsoft Visual C++ 14.0 is required. Get it with “Build Tools for Visual Studio”: https://visualstudio.microsoft.com/downloads/ERROR: Failed building wheel for cvxpyFa原创 2020-05-26 17:00:31 · 450 阅读 · 0 评论 -
[机器学习-sklearn] KNN(k近邻法)学习与总结
KNN 学习与总结引言一,KNN 原理二,KNN算法介绍三, KNN 算法三要素1 距离度量2. K 值的选择四, KNN特点KNN算法的优势和劣势KNN算法优点KNN算法缺点五, KNN 算法实现1. 线性扫描2. kd 树实现3. 球树实现六, sklearn实现KNN算法七, 实战代码引言KNN可以说是最简单的分类算法之一,同时,它也是最常用的分类算法之一,注意KNN算法是有监督学习中的分类算法,它看起来和另一个机器学习算法Kmeans有点像(Kmeans是无监督学习算法),但却是有本质区别的。那原创 2020-05-26 15:51:21 · 2262 阅读 · 0 评论 -
[机器学习-sklearn]鸢尾花Iris数据集
鸢尾花数据集1. 鸢尾花Iris数据集介绍2. Sklearn代码获取Iris2. 描述性统计3. 数据分布情况1. 鸢尾花Iris数据集介绍Iris flower数据集是1936年由Sir Ronald Fisher引入的经典多维数据集,可以作为判别分析(discriminant analysis)的样本。该数据集包含Iris花的三个品种(Iris setosa, Iris virginica and Iris versicolor)各50个样本,每个样本还有4个特征参数(分别是萼片的长宽和花瓣的长宽原创 2020-05-24 17:25:26 · 8714 阅读 · 0 评论 -
[机器学习-原理篇]支持向量机(SVM)深入理解
支持向量机SVM1. SVM概念2. SVM 解决的问题3. 模型基本思想4. 支持向量机原理1. SVM概念支持向量机(Support Vector Machine,SVM)属于有监督学习模型,主要于解决数据分类问题。通常SVM用于二元分类问题,对于多元分类可将其分解为多个二元分类问题,再进行分类,主要应用场景有图像分类、文本分类、面部识别和垃圾邮件检测等领域。2. SVM 解决的问题3. 模型基本思想以一个二元分类问题为例讲解模型原理。首先假设有两类数据,如图需要找出一条边界来将两类数据原创 2020-05-22 23:11:49 · 982 阅读 · 0 评论 -
[机器学习-数学]什么是协方差/协方差矩阵/矩阵特征
这里写目录标题1. 均值:2. 标准差:3. 方差:4. 协方差5. 协方差矩阵6. 参考资料1. 均值:均值描述的是样本集合的中间点,它告诉我们的信息是有限的,2. 标准差:标准差给我们描述的是样本集合的各个样本点到均值的距离之平均。以这两个集合为例,[0, 8, 12, 20]和[8, 9, 11, 12],两个集合的均值都是10,但显然两个集合的差别是很大的,计算两者的标准差,前者是8.3后者是1.8,显然后者较为集中,故其标准差小一些,标准差描述的就是这种“散布度”。之所以除以n-1而不原创 2020-05-22 19:29:13 · 2831 阅读 · 0 评论 -
[机器学习-总结] 什么是准确率, 精确率,召回率和(精确率和召回率的调和平均)
准确率, 精确率与召回率区别与联系1. 背景介绍2. 准确率(????????????????????????????????)3. 精确率(precision)4. 召回率(recall,也称为查全率)1. 背景介绍对于一般分类问题,有训练误差、泛化误差、准确率、错误率等指标对于常见的二分类问题,样本只有两种分类结果,将其定义为正例与反例。那么在进行分类时,对于一个样本,可能出现的分类情况共有四种– 样本为正例,被分类为正例,称为真正类(TP)– 样本为正例,被分类为反例,称为假反类(FN)原创 2020-05-22 11:03:34 · 3836 阅读 · 3 评论 -
[机器学习-Sklearn]决策树学习与总结 (ID3, C4.5, C5.0, CART)
决策树DecisionTreeClassifier学习例子11. 准备数据及读取2. 决策树的特征向量化3. 决策树训练4. 决策树可视化例子11. 准备数据及读取季节时间已过 8 点风力情况要不要赖床springnobreezeyeswinternono windyesautumnyesbreezeyeswinternono windyessummernobreezeyeswinteryesbreezeyes原创 2020-05-20 17:49:24 · 6698 阅读 · 1 评论 -
[机器学习-Sklearn]函数sklearn.feature_extraction.DictVectorizer理解与总结
机器学习-Sklearn之DictVectorizer函数学习函数介绍例子1例子2 - 文件中读数据函数介绍sklearn.featture_extraction.DictVectorizer: 将特征与值的映射字典组成的列表转换成向量。 DictVectorizer通过使用scikit-learn的estimators,将特征名称与特征值组成的映射字典构成的列表转换成Numpy数组或者Scipy.sparse矩阵。 当特征的值是字符串时,这个转换器将进行一个二进制One-hot编码。One原创 2020-05-20 15:56:33 · 2220 阅读 · 1 评论