自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

昆兰.沃斯 的博客

贵有恒,何必三更起五更眠;最无益,只怕一日暴十寒

  • 博客(124)
  • 论坛 (2)

原创 eval创建Python类以及setattr、getattr、hasattr方法

近来在 Python 开发这块接触的比较多,所以遇到了很多很实用但之前没有接触的方法,这里先简单记录一点。一:Python 中类的实例化是十分常见的,最普通的方法就是直接实例化类名。例如:class Life(): animal = 'cat' food = 'banana' sport = 'run' language = 'python' def __init__(self): passlife = Life()二:将结构化字符串转换为字典,是 python 处理数据的一

2020-07-27 23:22:04 47

原创 python时间戳转日期格式(保留毫秒级别)

时间戳是一种保存便捷,后续可用来在其它编程语言下快速转换为日期格式的一种时间形式。这里来说说如何通过 Python 将时间戳转换为日期格式。Python 拥有大量的库,其中不乏有对时间处理的库,这里介绍和使用到的是 Python 中最常见的两个时间库——time、datetime通过 time.time() 可以获得当下时刻的时间戳:1594907094.8940988时间戳在 time 下的返回值为 float 类型,如果后续你的时间戳为 str 类型,需要将其转换为数值类型再进行下一步的

2020-07-16 21:59:29 564

原创 2018岗位招聘信息、薪资待遇详细分析——数据分析

开头简单介绍下:本文章主要内容为利用网络爬虫与数据分析对2018年的所有招聘岗位信息进行了统一清洗、合并、分析、可视化,而本篇文章重点介绍分析和可视化。获取数据的爬虫文章在前面有介绍。大三快要完了,马上就要面临实习的问题了,所以这里完成这个项目也是为后面的工作方向有一个比较清晰的认知。写成文章也是旨在希望有同样需要的朋友能获取到有帮助的信息,对目前2018年的行业人才需求有一个大概的了解,选择...

2019-06-14 14:48:17 12586 39

转载 数据挖掘——无量纲化

在进行特征选择之前,一般会先进行数据无量纲化处理,这样,表征不同属性(单位不同)的各特征之间才有可比性,如1cm 与 0.1kg 你怎么比?无量纲处理方法很多,使用不同的方法,对最终的机器学习模型会产生不同的影响。本文将对常用的无量纲化技术进行总结,试图指出他们的适用场景,并给出在Python中的相应调用方式。正文中每列代表一个 属性/特征,每行表示一个/条 样本。1.min-max归一化...

2019-03-25 20:13:23 2625

转载 偏度(skewness)和峰度(kurtosis)

偏度偏度(skewness),是统计数据分布偏斜方向和程度的度量,是统计数据分布非对称程度的数字特征。定义上偏度是样本的三阶标准化矩。偏度定义中包括正态分布(偏度=0),右偏分布(也叫正偏分布,其偏度>0),左偏分布(也叫负偏分布,其偏度<0)。Python代码实现方法:pandas的Series 数据结构可以直接调用skew()方法来查看df.iloc[...

2019-03-19 20:32:55 37533

原创 自然语言处理库TfidfVectorizer(CountVectorizer与TfidfTransformer的结合)

这里简单介绍下scikit-learn自然语言文本处理的一个开源方法——TfidfVectorizer,该方法分别是由两种方法 CountVectorizer 与 TfidfTransformer 的结合,下面进行说明,说明之前给出三个文档链接(本文基本翻译自官方文档):(文档在手天下我有,有问题看文档)方法一:TfidfVectorizer方法二:CountVectorizer、T...

2018-12-13 14:32:43 3818 2

原创 json以及它的方法load、dump、loads、dumps

稍微详细点介绍下json及四个函数作用「load、dump、loads、dumps」如下:JSON:JSON是一种轻量级的数据交换语言,易于阅读,用来传输由属性值或者序列的值组成的数据对象。JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。很多时候我们见到的是形如字典(键值对)一样的数据格式,如下:{ "a": "hello wo...

2018-12-01 23:57:48 1329

原创 Windows下Python3.6安装 fbprophet库

近来,Facebook开源了基于 Python 和 R 语言的 时间序列数据预测工具——“Prophet”。官方号称“让普通人也能像数据分析师一样得出专业的结论”。我觉得可能有点悬,因为很多人都被卡在了第一步——安装借用一句话:Windows用户们请相信我,只要你按照官方的步骤来:你会发现啥都装不上!有点夸张,但通常官方的安装方式确实都很麻烦又解决不了问题。这里我也遇到了一...

2018-11-13 22:53:36 3673 8

原创 利用mlxtend进行数据关联分析

今天本该是个剁手的日子,只可惜余额不足高攀不起那台i7-8565,只有再写一篇文章聊以慰籍~~前言:之前很少做关于数据关联分析的题,而当初学关联分析时也是自己写代码来实现底层转换与运算,粗略一点的整体代码量也达到150行左右,所以没有高级的开源工具使用是很费时间的,由此阻碍了一颗想学习的心。后来遇到相关问题便Google了一些解决办法,其中有一个集成很优秀,使用也很方便的GitHub开源项目,...

2018-11-11 21:57:02 7673 4

原创 模型评估方法(混淆矩阵)

在数据挖掘或机器学习建模后往往会面临一个问题,就是该模型是否可靠?可靠性如何?也就是说模型的性能如何我们暂时不得而知。如果模型不加验证就使用,那后续出现的问题将会是不可估计的。所以通常建模后我们都会使用模型评估方法进行验证,当验证结果处于我们的可控范围之内或者效果更佳,那该模型便可以进行后续的进一步操作。这里又将面临一个新的问题——如何选择评估方法,其实通常很多人都会使用比较简单的错误率来...

2018-11-11 12:38:00 3871

转载 pandas中的stack与unstack简单描述

  在用pandas进行数据重排时,经常用到stack和unstack两个函数。stack简单理解可以是堆叠,堆积,unstack即“不要堆叠”。下面为较为浅显的讲述该方法,并未涉及到多标签的问题。  常见的数据的层次化结构有两种,一种是表格,一种是“花括号”,即下面这样的l两种形式:   表格在行列方向上均有索引(类似于DataFrame),花括号结构只有“列方向”上的索引(类似于层...

2018-11-07 22:39:16 1019

原创 逻辑回归中如何应用梯度下降算法与损失函数

前面一篇博客介绍了关于梯度下降算法来由以及说明了为什么梯度的负方向就是梯度下降最快方向,本文将会在上文的知识下简述在逻辑回归(Logistic Regression)中为什么可以使用以及如何使用梯度下降算法。梯度下降算法是个比较简单容易理解的算法,就像吴老师或很多资料上记载的一样:每次从新起点寻找一个到达目的地最快的方向并移动一定距离,以此重复直到终点。对于目标函数是凸函数,则可以到达全局最优...

2018-11-01 22:54:05 4827 2

原创 如何理解图片RGB通道在python(numpy)中的数据构成

今天是个特殊的日子1024,出于本能强行写下一篇文章。伟大而又平凡的程序猿祝你节日快乐。该文将尽可能简短的描述基于numpy,在python中使用skimage的io或PIL或其他方法读取图片后GRB数据的结构与呈现方式。我们肉眼看到的图片无非两种(灰色和彩色),而通过编程语言转换为电脑能认识的模样也就是数字了。这些数字决定了在电脑中它是彩色还是灰色,对于彩色图片决定的方式就是——颜色...

2018-10-24 22:37:02 7382 3

原创 梯度下降算法简明教程

最早接触梯度下降算法是在学习逻辑回归(Logistic Regression),对于权重的迭代更新。当然运用梯度算法的地方远不止逻辑回归,该方法思路简单但适用范围很广,简单的线性回归(Linear Regression),以及最近在看的神经网络(Neural Network)都有涉及梯度算法,所以掌握该方法还是很有必要的,下面来看看吧。梯度算法适用于求极值的问题,极值包括两种(极大值、极小值)...

2018-10-21 20:03:52 1722

原创 岭回归、LASSO回归(包括公式推导)

前面的两篇文章比较清楚浅显的介绍了线性回归、多项式回归,并了解到其实多项式回归也可以看作是一种特殊的线性回归形式,也就是说回归的核心就是线性回归。其原理都是最小二乘法,这是一种很简单、很方便的算法,但也有它的局限性,所以本文讲述另外的回归方式岭回归、LASSO回归,作为一个补充,解决最小二乘法的一些缺点。最小二乘法的局限性:                                 ...

2018-10-03 16:09:32 7245 4

原创 多项式回归

多项式回归多项式回归,回归函数是回归变量多项式的回归。多项式回归模型是线性回归模型的一种,此时回归函数关于回归系数是线性的。由于任一函数都可以用多项式逼近,因此多项式回归有着广泛应用。直线回归研究的是一个因变量与一个自变量之间的回归问题,但在实际情况中,影响因变量的自变量往往不止一个,例如:羊毛的产量受到绵羊体重、体长、胸围等影响,因此需要进行一个因变量与多个自变量间的回归分析,即多元回归...

2018-10-02 23:08:37 13383 1

原创 线性回归

线性回归:简单描述就是通过线性方程(1次函数)去拟合数据点:但是如何使用该线性方程去拟合数据点呢?我们能得到拟合的整体误差,即图中蓝色线段的长度总和。如果某一条直线对应的误差值最小,就代表这条直线最能反映数据点的分布趋势:误差如何表示?在线性回归中,使用残差的平方和来表示所有样本点的误差(专业名称:平方损失函数):如何求解上面的平方损失函数?使用最小二乘法即代数求解,最小二...

2018-10-02 11:10:29 340

原创 标准化、归一化、中心化

标准化、归一化、中心化数据分析及挖掘中常提到的几个概念(数据的 标准化、归一化、中心化),虽然经常在用,但可能还是有一些比较生僻的知识容易搞混淆,所以在十月国庆大家都出门上高速堵车的时候抽了点时间对这些概念以我的能力和理解做一个相对系统和浅显的总结。本篇文章通过个人以前对这些知识的一个先验理解,然后主要查阅和参考了数篇相关知识文档的介绍后,做了如下的总结。(注:尤其是标准化、归一化极容易混...

2018-10-01 23:22:52 5067

原创 TF-IDF及相关知识(余弦相似性)

自然语言的处理是一个神奇的领域,它涉及到数据挖掘、文本处理、信息检索等很多计算机前沿领域,由于复习相关知识,所以这里对该方向的部分知识做一个简单的介绍和记录。该文主要记录的是一个很简单却很经典有效的算法——TF-IDF。从它的概念到运算可能花不了10分钟就能了解,并且用到的运算知识都不涉及高等数学,但往往能返回我们一个满意的答案。当我们输入一段检索信息时,可以利用TF-IDF算法,给我们返...

2018-09-15 15:42:15 1189 2

转载 PCA(explained_variance_ratio_与explained_variance_)

之前有写过关于PCA的原理和代码实现,但是对于sklearn中的PCA没有做过多的描述,所以这里转载一篇文章作为补充:这里提一点:pca的方法explained_variance_ratio_计算了每个特征方差贡献率,所有总和为1,explained_variance_为方差值,通过合理使用这两个参数可以画出方差贡献率图或者方差值图,便于观察PCA降维最佳值。再提醒一点:pca中的参数选项...

2018-09-09 15:21:12 9860 11

原创 绘制学习曲线——plot_learning_curve

学习曲线:一种用来判断训练模型的一种方法,通过观察绘制出来的学习曲线图,我们可以比较直观的了解到我们的模型处于一个什么样的状态,如:过拟合(overfitting)或欠拟合(underfitting)先来看看如何解析学习曲线图:要看深刻了解上面的图形意义,你需要了解偏差(bias)、方差(variance)对于训练模型的意义,可以参考这里,当你了解后,我们来看看上面的图形代表的意义:(...

2018-09-09 12:50:35 21345 6

转载 Pandas的qcut()与cut()

>>> factors = np.random.randn(9)[ 2.12046097 0.24486218 1.64494175 -0.27307614 -2.11238291 2.15422205 -0.46832859 0.16444572 1.52536248]pd.qcut()qcut是根据这些值的频率来选择箱子的均匀间隔,即每个箱子中含有的数的数...

2018-09-07 13:39:32 2679

原创 Bagging和Boosting(偏差与方差)

机器学习中的集成学习有两个重要的策略,即Bagging与Boosting。Bagging:    算法构建多个分类器,每个分类器都随机从原样本中做有放回的抽样,利用这些采样后的样本训练该分类器,然后将这些分类器组合起来构成一个更强效果更好的组合分类器,结果一般使用多数投票效果就很好了。其代表算法为随机森林。Boosting:    算法通过迭代构建一系列的分类器,每次分类都将上一次...

2018-09-07 09:29:39 5069

原创 数据平滑处理——log1p()和exmp1()

今天在做题的时候学到了一点有用的东西,所以这里做个记录分享一下,有关数据预处理的两个函数问题——log1p、expm1优点:在数据预处理时首先可以对偏度比较大的数据用log1p函数进行转化,使其更加服从高斯分布,此步处理可能会使我们后续的分类结果得到一个更好的结果; 平滑处理很容易被忽略掉,导致模型的结果总是达不到一定的标准,同样使用逼格更高的log1p能避免复值得问题——复值指一个自变...

2018-09-05 14:58:53 21151 2

原创 数据挖掘十大经典算法(包括各自优缺点 / 适用数据场景)

本文主要分析皆来自其他资料,借用较为权威的总结来对我已经学习的这些经典算法做一个极为精简的概述(根据自身经验有一定修改),另外同时附上机器学习实战中作者对各种算法的评价。另外机器学习实战这本书是本人看了这么多书籍或者资料中唯一一本坚持从头看到尾,看完了的书籍,包括其中的代码皆实践运行过,收获颇多,个人认为虽然这本书时间上已经算是老资料了,但其中作者的各种总结和代码的演练都由浅入深(前提还是要有一点...

2018-09-04 15:18:03 86467 3

原创 机器学习实战——SVD(奇异值分解)

与PCA一样的学习过程,在学习SVD时同样补习了很多的基础知识,现在已经大致知道了PCA的应用原理,SVD个人感觉相对要难一点,但主要步骤还是能勉强理解,所以这里将书本上的知识和个人的理解做一个记录。主要关于(SVD原理、降维公式、重构原矩阵、SVD的两个实际应用),当然矩阵的分解和相对的公式我会给出写的更好的文章对于说明(个人基础有限)。(最后给出两条SVD最重要的公式)SVD(奇异值分...

2018-09-03 16:19:52 60500 30

原创 numpy的nonzero()和logical_and/or/not()

由于最近学习的资料频繁出现numpy中的两个方法:nonzero()和logical_and/or/not()两个用于判断的函数。由于觉得确实很方便(如果不使用pandas处理数据),所以这里对两个方法做一个记录,以便后面的使用参考。np.nonzero(参数):    no.nonzero()函数是numpy中用于得到数组array中非零元素的位置(数组索引)的函数,很适合用来对数据下标...

2018-09-02 20:44:05 1353

原创 机器学习实战——PCA(主成分分析)

本章关于PCA的代码虽少,但涉及到的知识却很多,由于数学知识比较浅薄,所以在看这章时提前查找资料复习了很多的概率论和统计学知识和python基础知识,这里记录的很多都是关于PCA的相关知识或理论(例如:特征向量、协方差矩阵等),由于部分知识涉及较多,讲的有点详细所以文章篇幅较长尽量缩减了,下面进入正文。通常我们可以很清楚的看到一维数据,或直观的二维图形,但实际中很多的数据远不止1、2、3维,这...

2018-09-01 17:37:02 5164 1

转载 方差、标准差、协方差

由于作者禁止转载,所以这里只记录定义,相关的代码解释请看原地址,文章最后有附。 方差、标准差和协方差三者之间的定义与计算理解三者之间的区别与联系,要从定义入手,一步步来计算,同时也要互相比较理解,这样才够深刻。 方差方差是各个数据与平均数之差的平方的平均数。在概率论和数理统计中,方差(英文Variance)用来度量随机变量和其数学期望(即均值)之间的偏离程度。在许多实际问题...

2018-08-31 17:33:02 392

原创 数据挖掘经典算法:FP-Growth算法(高效发现频繁项集)

本篇文章介绍一中与上一章Apriori算法功能类似的一种算法——FP-Growth,该算法速度更快、大多情况下效果更好,但是不能用于发现关联规则。以下都是通过机器学习实战与本人的实践过后的总结。FP-Growth算法,基于Apriori构建,但在完成相同任务时采用了不同的技术,其只需要对数据集进行两次扫描,而Apriori算法对于每个潜在的频繁项集都会扫描数据集判定给定模式是否频繁,因此其比A...

2018-08-31 11:41:13 3404 1

原创 数据挖掘十大算法(四):Apriori(关联分析算法)

终于到了机器学习实战的第十一章了,这也是继K-均值后的第二个无监督学习算法了。同样的该算法也是在一堆数据集中寻找数据之间的某种关联,这里主要介绍的是叫做Apriori的‘一个先验’算法,通过该算法我们可以对数据集做关联分析——在大规模的数据中寻找有趣关系的任务,本文主要介绍使用Apriori算法发现数据的(频繁项集、关联规则)。这些关系可以有两种形式:频繁项集、关联规则。        频...

2018-08-29 21:38:50 86784 27

原创 数据挖掘十大算法(二):K-Means、二分K-均值 python和sklearn实现

早在刚接触数据挖掘算法时就已经看过,以及使用过简单的K-均值算法来做聚类,现在为了进一步的掌握该知识,通过机器学习实战又看了一遍,由于相对于其它算法较简单,所以看的也比较快,同时也学习了一下更为强大的二分K-均值算法,该算法建立在K-Means算法上,但难度不大,理论知识也很好理解,所以这里对两者的思路都记录一下。本篇文章主要内容(K-Means原理、二分K-Means原理、基础代码实现、skle...

2018-08-27 20:53:08 11888 4

原创 数据挖掘十大算法(十):CART(分类回归树)

本文记录一下关于CART的相关知识其中包括(回归树、树的后剪枝、模型树、树回归模型的预测(树回归模型的评估))。在之前学习完ID3算法有记录一篇相关的学习笔记,所以后面学习CART算法能有一个比较和熟悉的理解。    贪心算法的决策树,构建算法是ID3,即通过香农熵计算数据的混乱程度,然后求出信息增益,每次选择最大信息增益的划分方式,作为当前的划分方式,直到数据集完成划分,被划分过的特征在之后...

2018-08-26 13:45:35 3613 1

原创 数据挖掘经典算法:线性回归、局部加权回归、岭回归、逐步线性回归 sklearn实现

这里记录一下关于回归方面的知识包括(线性回归、局部加权回归、岭回归、逐步线性回归)等基础思想和代码实现。以及sklearn的实现方法。(数据来自机器学习实战第八章)回归:    分类的目标变量是标称型数据,而回归可以对连续型数据做预测,同样也是寻找一条最佳的拟合线。    回归的目的是预测数值型的目标值,最直接的办法是根据输入数据写出一个目标值的计算公式,即一个线性方程:y=kx+bz...

2018-08-25 12:13:09 6413 1

转载 (详细)数据挖掘面试笔试题及答案

一、单选题(共80题)( D )的目的缩小数据的取值范围,使其更适合于数据挖掘算法的需要,并且能够得到和原始数据相同的分析结果。A.数据清洗       B.数据集成C.数据变换       D.数据归约某超市研究销售纪录数据后发现,买啤酒的人很大概率也会购买尿布,这种属于数据挖掘的哪类问题?(A)   A. 关联规则发现       B. 聚类   C. 分类        ...

2018-08-22 21:48:11 3526

原创 简述——python使用sklearn画ROC曲线

使用sklearn的一系列方法后可以很方便的绘制处ROC曲线,这里简单实现以下。主要是利用混淆矩阵中的知识作为绘制的数据(如果不是很懂可以先看看这里的基础):    tpr(Ture Positive Rate):真阳率                                   图像的纵坐标    fpr(False Positive Rate):阳率(伪阳率)       ...

2018-08-21 22:53:25 15919 4

转载 分类性能度量指标:ROC曲线、AUC值、正确率、召回率、敏感度、特异度

在分类任务中,人们总是喜欢基于错误率来衡量分类器任务的成功程度。错误率指的是在所有测试样例中错分的样例比例。实际上,这样的度量错误掩盖了样例如何被分错的事实。在机器学习中,有一个普遍适用的称为混淆矩阵(confusion matrix)的工具,它可以帮助人们更好地了解分类中的错误。比如有这样一个在房子周围可能发现的动物类型的预测,这个预测的三类问题的混淆矩阵如下表所示:利用混淆矩阵可以...

2018-08-21 14:09:31 3829

原创 数据挖掘十大算法(七):AdaBoost python和sklearn实现

这里主要记录AdaBoost的(原理、一个代码示例、ROC曲线、sklearn实现)等四个方面。原理:AdaBoost算法属于一种迭代算法,它的核心思想是针对同一训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强大的最终分类器(强分类器)。其算法本身是通过改变数据分布来实现的,它根据每次训练集中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权...

2018-08-21 13:43:40 11190

原创 数据挖掘十大算法(三):支持向量机SVM sklearn实现

今天进入了支持向量机(SVM)的学习,如果只是对支持向量机的表面理论了解,那么还算不是太难。但是对于里面的数学推导真的不是一两天能看懂的(尤其是我这种数学功底不是很强的),使用编码实现数学推导的一系列过程也不是那么好理解的。由于时间关系,直接学习sklearn中SVM的使用,以后有时间再更新对支持向量机深入的了解。主要关于SVC和LinearSVC的翻译,有疑惑的地方可以查看最下面官方文档,自...

2018-08-15 17:53:17 1102

原创 数据挖掘经典算法:Logistic(逻辑回归) python和sklearn实现

Logistic虽然不是十大经典算法之一,但却是数据挖掘中常用的有力算法,所以这里也专门进行了学习,以下内容皆为亲自实践后的感悟和总结(Logistic原理、代码实现和优化、真实样例数据、sklearn实现)。为了记录的比较清楚,所以内容可能有点多,但都比较浅显,下面进入正文。(运算数据来自机器学习第5章)Logistic原理:大体的思路:为了实现Logistic回归分类器,我们可以在每个...

2018-08-12 17:24:08 17644 2

空空如也

不论如何未来很美好的留言板

发表于 2020-01-02 最后回复 2020-01-02

hadoop集群中datanode节点无法连接到namenode节点的9000端口

发表于 2018-01-07 最后回复 2019-03-18

空空如也
提示
确定要删除当前文章?
取消 删除