机器学习 数据降维

数据降维

维度: 特征的数量
降维:减少特征数量

主要的方式:

1、特征选择

特征选择的原因:
冗余:部分特征的相关的高,容易消耗算性能
噪声:部分特征对预测结果有影响

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

主要方法(三大武器):
Filter(过滤式):Variance Threshole
Embedded(嵌入式):正则化、决策树
Wrapper(包裹式)

过滤式

API :Sklearn.feature_selection.VarianceThreshold

from sklearn.feature_selection import VarianceThreshold
def var():
    """
    特征选择-删除低方差的特征
    """
    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

if __name__=="__main__":
    var()

运行结果如下:
在这里插入图片描述

2、主成分分析

PCA
本质:PCA是一种分析、简化数据集的技术
目的:是数据维度压缩,尽可能降低原数据的维数(复杂度),损失多少信息。
作用:可以削弱回归分析或者聚类分析中特征的数量

当PCA特征数量达到上百的时候,考虑数据的简化
数据会改变,数量也会减少

pca流程

from sklearn.decomposition import PCA
def pca():
    """
    主成分分析,进行特征降维
    """
    pca=PCA(n_components=0.9)
    data=pca.fit_transform([[2,8,4,5],[6,3,0,8],[5,4,9,1]])
    print(data)
    return None
if __name__=="__main__":
    pca()

运行结果如下:
在这里插入图片描述

案例

instacart市场篮子分析

import pandas as pd
from sklearn.decomposition import PCA
#读取四张表的数据
prior=pd.read_csv(".anaconda/order_prodacts_prior.csv")
products=pd.read_csv(".anaconda/products.csv")
order=pd.read_csv(".anaconda/order.csv")
aisles=pd.read_csv(".anaconda/aisles.csv")
#合并四张表的数据
_mg=pd.merge(prior,products,on=['product_id','product_id'])
_mg=pd.merge(_mg,orderm,on=['order_id','order_id'])
mt =pd,merge(_mg,aisles,on=['aisle_id','aisle_id'])
mt.head(10)#产看前十行的数据

在这里插入图片描述

#交叉表(特殊的分组工具)
pd.crosstab(mt['user_id'],mt['aisle'])
cross.head(10)

在这里插入图片描述

#进行主成分分析(降维)
pca=PCA[n_conponents=0.9]
data=pca.fit_transfrom[cross]
data

在这里插入图片描述

data.shape

结果为(206209,27)

降维后远远小于上面没降维前的数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黎明之道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值