sklearn
中降维算法都被包括在模块
decomposition
中,这个模块本质是一个矩阵分解模块。
重要参数参数:
n_components
,
svd_solver
,
random_state
,
三个重要属性:
components_, explained_variance_
以及
explained_variance_ratio_
,
接口 fit,
transform
,
fit_transform
,
inverse_transform
。
重要参数:
n_components
1、通过高维数据的可视化操作,进行判断;
2、最大似然估计自选超参数;
3、按信息量占比选超参数。
svd_solver
有四种模式可选:
"auto", "full", "arpack", "randomized",默认
”auto"
。
"
auto
":基于
X.shape
和
n_components
的默认策略来选择分解器
"
full
"
:
适合数据量比较适中,计算时
间充足的情况.
"
arpack
":
可以加快运算速度,适合特征矩阵很大的时候,但一般用于
特征矩阵为稀疏矩阵的情况
" randomized": 适合特征矩阵巨大,计算量庞大的情况 。
" randomized": 适合特征矩阵巨大,计算量庞大的情况 。
random_state:
在参数
svd_solver
的值为
"arpack" or "randomized"
的时候生效,可以控制这两种
SVD
模式中的随机模式。
components_
V(k,n)是新特征空间,是我们要将原始数据进行映射的那些新特征向量组成的矩阵
inverse_transform
基于X_dr中的数据进行升维,将数据重新映射到原数据所在的特征空间中,而并非恢复所有原有的数据
相关知识:根据(菜菜的机器学习skleaen课堂)整理