数据降维

本文深入探讨数据降维的重要性和方法,包括特征选择和主成分分析(PCA)。阐述了特征选择的原因,如去除冗余和噪声特征,以及PCA如何通过降低数据复杂度来保留关键信息。介绍了VarianceThreshold和PCA的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据降维

  • 降维:维度:特征的数量

特征选择

  • 特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择后可以改变值、也不改变值,但是选择后的特征维数肯定比选择前小,毕竟我们只选择了其中的一部分特征。

  • 特征选择的原因

    • 冗余:部分特征的相关度高,容易消耗计算性能
    • 噪声:部分特征对预测结果有影响
  • 主要方法(三大武器):Filter(过滤式):VarianceThreshold;Embedded(嵌入式):正则化、决策树;Wrapper(包裹式)

    • 1,Filter
      • sklearn特征选择API:sklearn.feature_selection.VarianceThreshold
    • VarianceThreshold语法
      • VarianceThreshold(threshold=0.0)
        • 删除所有低方差特征
        • Variance.fit_transform(X)
          • X:numpy array格式的数据[n_samples,n_features]
          • 返回值:训练集差异低于threshold的特征将被删除。
          • 默认值是保留所有非零方差特征,即删除所有样本中具有相同值的特征。
        • VarianceThreshold流程
          • 1,初始化VarianceThreshold,指定阀值方差
          • 2,调用fit_transform
    • 2,主成分分析
      • sklearn主成分分析API:sklearn.decomposition
      • PCA是什么?
        • 本质:PCA是一种分析、简化数据集的技术
        • 目的:是数据维数压缩,尽可能降低原数据的维数(复杂度),损失少量信息。
        • 作用:可以削减回归分析或者聚类分析中特征的数量(数据也会改变,特征数量也会减少)
        • 应用场景:特征数量达到上百的时候,考虑数据的简化问题
        • PCA语法
          • PCA(n_components=None)
            • 将数据分解为较低维度空间
            • PCA.fit_transform(X)
              • X:numpy array格式的数据[n_samples,n_features]
              • 返回值:转换后指定维度的array
            • n_components的形式:
              • 1,小数 0~1 90%~95%
              • 2,整数 减少到的特征数量

数据降维

from sklearn.feature_selection import VarianceThreshold
from sklearn.decomposition import PCA


def var():
    """
    特征选择-删除低方差的特征
    :return: None
    """
    var = VarianceThreshold(threshold=0.0)

    data = var.fit_transform([[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]])

    print(data)
    return None

def pca():
    """
    主成分分析进行特征降维
    :return: None
    """
    pca = PCA(n_components=0.95)

    data = pca.fit_transform([[2,8,4,5],[6,3,0,8],[5,4,9,1]])

    print(data)

    return None


if __name__ == '__main__':
    var()
    pca()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值