特征选择与特征降维

# coding = utf-8
from sklearn.feature_selection import VarianceThreshold
from sklearn.decomposition import PCA
‘‘‘
数据降维:特征的数量减少(即columns减少)
    1、特征选择原因:
        1、数据冗余:部分特征的相关度高,容易消耗计算机性能
        2、噪声:部分特征对预测结果有影响
    2、特征选择
        方式1:
            Filter(过滤式 VarianceThreshold): 从方差大小考虑样本的数据情况
               Api:VarianceThreshold.fit_transform()
            Embedded(嵌入式):正则化、决策树
            Wrapper(包裹式)
            其他方式:神经网络
        方式2:
            主成分分析(PCA):使得数据会改变,同时特征维度也减少
                公式:Y =PX,其中Y为降维后数据,P为映射矩阵,X为原始矩阵
                作用:可以削减回归分析或者聚类分析中特征的数量
                API: PCA(n_components=None) ,n_components取值范围为(90%-95%) 将数据分解为较低维数空间
                    PCA.fit_transform(X)
                        X:numpy array格式的数据[n_samples,n_features]
                        返回值:转换后指定维度的array
            其他降维方法:线性判别法

     Pandas合并表,一般使用merge()
     交叉表:特殊的分组工具
        pd.crosstab(mt["user_id"],mt["aisle"]),其中mt["user_id"]作为index ,mt["aisle"]作为columns
‘‘‘

def var():
    """
    特征选择--删除低方差的特征,低方差表明数据相近,没有意义不大
    :return:
    """
    var = VarianceThreshold(threshold=0.0) #一般在(0-10)之间范围取值
    data = var.fit_transform([[0,2,0,3],[0,1,4,3],[0,1,1,3]])
    print(data)
    return None

def pca():
    """
    主成分分析进行特征降维
    :return:
    """
    p = PCA(n_components=0.9)
    data = p.fit_transform([[0,2,0,3],[0,1,4,3],[0,1,1,3]])
    print(data)
    return None
if __name__ == ‘__main__‘:
    var()
    pca()

原文地址:https://www.cnblogs.com/ywjfx/p/10847154.html

时间: 2024-10-08 13:12:01

特征选择与特征降维的相关文章

【特征工程】特征选择与特征学习

http://www.jianshu.com/p/ab697790090f 特征选择与特征学习 在机器学习的具体实践任务中,选择一组具有代表性的特征用于构建模型是非常重要的问题.特征选择通常选择与类别相关性强.且特征彼此间相关性弱的特征子集,具体特征选择算法通过定义合适的子集评价函数来体现.在现实世界中,数据通常是复杂冗余,富有变化的,有必要从原始数据发现有用的特性.人工选取出来的特征依赖人力和专业知识,不利于推广.于是我们需要通过机器来学习和抽取特征,促进特征工程的工作更加快速.有效. 特征选

特征选择之数据降维

一.特征选择之数据降维 1.降维: 维度:特征的数量(不是数据的维度),减少特征数据的字段数 方法一: 特征选择:选出部分特征 原因:特征数量冗长,太消耗内存 原文地址:https://www.cnblogs.com/tjp40922/p/11184985.html

奇异值分解(SVD)的之低秩近似和特征降维

我们在这一篇<模式识别.推荐系统中常用的两种矩阵分解-----奇异值分解和非负矩阵分解 >中详细介绍了矩阵奇异值分解的数学证明,我们沿用这一篇的博文的符号,继续讨论这一章的内容. 矩阵的奇异值分解定理: 设矩阵,秩为,,则该矩阵可以分解为: 也可以表示为: . 其中:为矩阵(或者)的非零向量,为的对应特征向量,为的对应特征向量,. SVD的第一个作用之低秩近似(Low Rank Approximation): ,, 即用矩阵近似. SVD的第二个作用之特征降维(Dimensionality R

ng机器学习视频笔记(十二) ——PCA实现样本特征降维

ng机器学习视频笔记(十二) --PCA实现样本特征降维 (转载请附上本文链接--linhxx) 一.概述 所谓降维(dimensionality reduction),即降低样本的特征的数量,例如样本有10个特征值,要降维成5个特征值,即通过一些方法,把样本的10个特征值映射换算成5个特征值. 因此,降维是对输入的样本数据进行处理的,并没有对预测.分类的结果进行处理. 降维的最常用的方法叫做主成分分析(PCA,principal component analysis).最常用的业务场景是数据压

特征降维(2):特征选择中特征评估函数详解

t:代表特征,|C|:代表类别总数,ci 代表第i个类别 CF[i][j]:代表term class frequency,即表示在第j个类别的文档中出现了第i个term的文档数 DF[i]:代表term document frequency,即表示样本集中出现了该term的文档数 docsPerClass[i]:代表属于第i个类别的文档数 docs:代表训练文档总数 注意以上CF[i][j].DF[i].docsPersClass[i]的值都是文档数 信息增益 P(ci)为文档集中出现类别ci的

特征选择和特征理解 (转)

作者:Edwin Jarvis 特征选择(排序)对于数据科学家.机器学习从业者来说非常重要.好的特征选择能够提升模型的性能,更能帮助我们理解数据的特点.底层结构,这对进一步改善模型.算法都有着重要作用. 特征选择主要有两个功能: 减少特征数量.降维,使模型泛化能力更强,减少过拟合 增强对特征和特征值之间的理解 拿到数据集,一个特征选择方法,往往很难同时完成这两个目的.通常情况下,我们经常不管三七二十一,选择一种自己最熟悉或者最方便的特征选择方法(往往目的是降维,而忽略了对特征和数据理解的目的).

特征降维

一.特征规约/降维:去掉可分性不强和冗余的特征 特征选择:去掉可分性不强的特征 特征抽取/变换:去掉多余的特征,即抽取出来的特征不存在线性or非线性关系 ============================================================================= 二.特征选择:根据在特征选择过程有无使用学习算法,特征选择可以分为: Filter:criterion为根据subset evolution or term evolution 的好坏 So

文本分类入门(番外篇)特征选择与特征权重计算的区别

http://www.blogjava.net/zhenandaci/archive/2009/04/19/266388.html 在文本分类的过程中,特征(也可以简单的理解为“词”)从人类能够理解的形式转换为计算机能够理解的形式时,实际上经过了两步骤的量化——特征选择阶段的重要程度量化和将具体文本转化为向量时的特征权重量化.初次接触文本分类的人很容易混淆这两个步骤使用的方法和各自的目的,因而我经常听到读者有类似“如何使用TFIDF做特征选择”或者“卡方检验量化权重后每篇文章都一样”等等困惑.

机器学习之路:python 特征降维 主成分分析 PCA

python3 学习api使用 主成分分析方法实现降低维度 使用了网络上的数据集,我已经下载到了本地,可以去我的git上参考 git:https://github.com/linyi0604/MachineLearning 代码: 1 from sklearn.svm import LinearSVC 2 from sklearn.metrics import classification_report 3 from sklearn.decomposition import PCA 4 impo