数据预处理系列
风雪夜归子
风雪夜归子(Allen),机器学习算法攻城狮,喜爱钻研Meachine Learning的黑科技,对Deep Learning和Artificial Intelligence充满兴趣,经常关注Kaggle数据挖掘竞赛平台,对数据、Machine Learning和Artificial Intelligence有兴趣的童鞋可以一起探讨哦,个人CSDN博客:http://blog.csdn.net/u013719780?viewmode=contents
展开
-
数据预处理系列:(十七)用随机梯度下降处理回归
声明:版权所有,转载请联系作者并注明出处 http://blog.csdn.net/u013719780?viewmode=contents用随机梯度下降处理回归本主题将介绍随机梯度下降法(Stochastic Gradient Descent,SGD),我们将用它解决回归问题,后面我们还用它处理分类问题。原创 2016-06-27 12:03:11 · 6661 阅读 · 0 评论 -
数据预处理系列:(十一)用核PCA实现非线性降维
用核PCA实现非线性降维由于大多数统计方法最开始都是线性的,所以,想解决非线性问题,就需要做一些调整。PCA也是一种线性变换。本主题将首先介绍它的非线性形式,然后介绍如何降维。Getting ready如果数据都是线性的,生活得多容易啊,可惜现实并非如此。核主成分分析(Kernel PCA)可以处理非线性问题。原创 2016-06-27 11:26:16 · 9746 阅读 · 0 评论 -
数据预处理系列:(十)用因子分析降维
用因子分析降维因子分析(factor analysis)是另一种降维方法。与PCA不同的是,因子分析有假设而PCA没有假设。因子分析的基本假设是有一些隐藏特征与数据集的特征相关。这个主题将浓缩(boil down)样本数据集的显性特征,尝试像理解因变量一样地理解自变量之间的隐藏特征。Getting ready原创 2016-06-27 11:16:11 · 23956 阅读 · 0 评论 -
数据预处理系列:(一)从外部源获取样本数据
从外部源获取样本数据如果条件允许,学本系列内容时尽量用你熟悉的数据集;方便起见,我们用scikit-learn的内置数据库。这些内置数据库可用于测试不同的建模技术,如回归和分类。而且这些内置数据库都是非常著名的数据库。这对不同领域的学术论文的作者们来说是很用的,他们可以用这些内置数据库将他们的模型与其他模型进行比较。推荐使用IPython来运行文中的指令原创 2016-06-25 22:44:48 · 10884 阅读 · 0 评论 -
数据预处理系列:(二)创建试验样本数据
创建试验样本数据希望你在学习本系列时用自己的数据来试验,如果实在没有数据,下面就介绍如何用scikit-learn创建一些试验用的样本数据(toy data)。Getting ready与前面获取内置数据集,获取新数据集的过程类似,创建样本数据集,用make_数据集名称函数。这些数据集都原创 2016-06-25 22:49:19 · 9410 阅读 · 0 评论 -
数据预处理系列:(三)把数据调整为标准正态分布
把数据调整为标准正态分布经常需要将数据标准化调整(scaling)为标准正态分布(standard normal)。标准正态分布算得上是统计学中最重要的分布了。如果你学过统计,Z值表(z-scores)应该不陌生。实际上,Z值表的作用就是把服从某种分布的特征转换成标准正态分布的Z值。Getting ready原创 2016-06-25 22:53:09 · 44548 阅读 · 9 评论 -
数据预处理系列:(四)用阈值创建二元特征
用阈值创建二元特征在前一个主题,我们介绍了数据转换成标准正态分布的方法。现在,我们看看另一种完全不同的转换方法。当不需要呈标准化分布的数据时,我们可以不处理它们直接使用;但是,如果有足够理由,直接使用也许是聪明的做法。通常,尤其是处理连续数据时,可以通过建立二元特征来分割数据。Getting ready原创 2016-06-25 22:55:56 · 6745 阅读 · 0 评论 -
数据预处理系列:(五)分类变量处理
分类变量处理分类变量是经常遇到的问题。一方面它们提供了信息;另一方面,它们可能是文本形式——纯文字或者与文字相关的整数——就像表格的索引一样。因此,我们在建模的时候往往需要将这些变量量化,但是仅仅用简单的id或者原来的形式是不行的。因为我们也需要避免在上一节里通过阈值创建二元特征遇到的问题。如果我们把数据看成是连续的,那么也必须解释成连续的。原创 2016-06-25 22:56:53 · 25169 阅读 · 0 评论 -
数据预处理系列:(六)标签特征二元化
标签特征二元化在这个主题中,我们将用另一种方式来演示分类变量。有些时候只有一两个分类特征是重要的,这时就要避免多余的维度,如果有多个分类变量就有可能会出现这些多余的维度。Getting ready处理分类变量还有另一种方法,不需要通过OneHotEncoder,我们可以用LabelBin原创 2016-06-25 22:59:42 · 13082 阅读 · 0 评论 -
数据预处理系列:(七)处理缺失值
处理缺失值实践中数值计算不可或缺,好在有很多方法可用,这个主题将介绍其中一些。不过,这些方法未必能解决你的问题。scikit-learn有一些常见的计算方法,它可以对现有数据进行变换填补NA值。但是,如果数据集中的缺失值是有意而为之的——例如,服务器响应时间超过100ms——那么更合适的方法是用其他包解决,像处理贝叶斯问题的PyMC,处理风险模型的lifelines原创 2016-06-27 10:27:56 · 14873 阅读 · 0 评论 -
数据预处理系列:(八)用管线命令处理多个步骤
用管线命令处理多个步骤管线命令不经常用,但是很有用。它们可以把多个步骤组合成一个对象执行。这样可以更方便灵活地调节和控制整个模型的配置,而不只是一个一个步骤调节。Getting ready这是我们把多个数据处理步骤组合成一个对象的第一部分。在scikit-learn里称为pipeline。这里我们首先通过计算处原创 2016-06-27 10:30:22 · 7048 阅读 · 0 评论 -
数据预处理系列:(九)用主成分分析(PCA)降维
用主成分分析降维现在是时候升一级了!主成分分析(Principal component analysis,PCA)是本书介绍的第一个高级技术。到目前为止都是些简单的统计学知识,而PCA将统计学和线性代数组合起来实现降维,堪称简单模型的杀手锏。Getting readyPCA是scikit-learn的一个分解模原创 2016-06-27 11:13:21 · 13559 阅读 · 0 评论 -
数据预处理系列:(十二)用截断奇异值分解降维
用截断奇异值分解降维截断奇异值分解(Truncated singular value decomposition,TSVD)是一种矩阵因式分解(factorization)技术,将矩阵M分解成U,ΣΣ和V。它与PCA很像,只是SVD分解是在数据矩阵上进行,而PCA是在数据的协方差矩阵上进行。通常,SVD用于发现矩阵的主成份。Getting原创 2016-06-27 11:29:38 · 20472 阅读 · 0 评论 -
数据预处理系列:(十三)用字典学习分解法分类
声明:版权所有,转载请联系作者并注明出处 http://blog.csdn.net/u013719780?viewmode=contents用字典学习分解法分类在这个主题中,我们将介绍一种可以用于分类的分解方法——字典学习(Dictionary Learning),将数据集转换成一个稀疏的形式。Getti原创 2016-06-27 11:54:40 · 7389 阅读 · 0 评论 -
数据预处理系列:(十四)用管线命令连接多个转换方法
声明:版权所有,转载请联系作者并注明出处 http://blog.csdn.net/u013719780?viewmode=contents用管线命令连接多个转换方法下面,让我们用管线命令连接多个转换方法,来演示一个复杂点儿的例子。Getting ready本主题将再度释放管线命令的光芒。之前原创 2016-06-27 11:57:11 · 6157 阅读 · 0 评论 -
数据预处理系列:(十六)直接定义一个正态随机过程对象
声明:版权所有,转载请联系作者并注明出处 http://blog.csdn.net/u013719780?viewmode=contents直接定义一个正态随机过程对象前面我们只触及了正态随机过程的表面。在本主题中,我们将介绍直接创建一个具有指定相关函数的正态随机过程。Getting ready原创 2016-06-27 12:01:52 · 6024 阅读 · 0 评论 -
数据预处理系列:(十五)用正态随机过程处理回归
声明:版权所有,转载请联系作者并注明出处 http://blog.csdn.net/u013719780?viewmode=contents用正态随机过程处理回归这个主题将介绍如何用正态随机过程(Gaussian process,GP)处理回归问题。在线性模型部分,我们曾经见过在变量间可能存在相关性时,如何用贝叶斯岭回归(Bay原创 2016-06-27 11:59:14 · 6681 阅读 · 0 评论