• 主成分分析--PCA类


    sklearn.decomposition.PCA(n_components=None, *, copy=True,\
    	whiten=False, svd_solver='auto', tol=0.0, iterated_power='auto',\
    	n_oversamples=10, power_iteration_normalizer='auto', random_state=None)
    
    • 1
    • 2
    • 3

    参数

    n_components

    int, float or ‘mle’, default=None
    要保留的主成分数量,当不设置该参数时所有组分都将被保留n_components = min(n_samples, n_features)

    关于该参数和svd_solver参数的关系如下:

    该参数svd_solver参数其他
    n_components=‘mle’svd_solver = ‘full’使用Minka’s MLE 预测维度
    0 < n_components < 1svd_solver = ‘full’选择需要解释的方差大于n个分量所指定的百分比的分量数量
    n_components=Nonen_components=min(n_samples, n_features) - 1
    svd_solver = ‘arpack’components 的数量必须严格小于min(n_features,n_samples)

    copy

    bool, default=True
    如果该参数为False,拟合时数据将会被覆写;而且使用fit(X)+transform(X)将得不到期望的结果,此时应该使用 fit_transform(X)替代

    whiten

    bool, default=False

    向量将会被乘以n_samples的平方根,然后再除以奇异值,确保不相关的输出与单位组成部分的差异

    白化将从转换后的信号中删除一些信息,但有时会通过使下游估计器的数据遵守一些固有的规则等方法来提高预测的精度

    svd_solver

    {‘auto’, ‘full’, ‘arpack’, ‘randomized’}, default=’auto’
    afterwards.

    取值描述
    auto由默认的策略根据数据X选取求解器
    full通过scipy.linalg.svd 调用标准的LAPACK求解器,直接进行完整的奇异值分解过程
    arpack通过scipy.sparse.linalg.svds调用ARPACK求解器,将奇异值分解(SVD)分为多个部分逐个求解
    randomized采用Halko等方法进行随机SVD。

    tol

    float, default=0.0
    svd_solver = ‘arpack’时计算得到的奇异值容忍度,取值范围 :[0.0, infinity).

    iterated_power

    int or ‘auto’, default=’auto’
    svd_solver = ‘randomized’时幂方法的迭代次数,取值范围 :[0.0, infinity).

    n_oversamples

    int, default=10
    仅仅当svd_solver="randomized时有效,对应于额外的随机向量个数来对X的范围进行采样,以确保适当的条件

    power_iteration_normalizer

    {‘auto’, ‘QR’, ‘LU’, ‘none’}, default=’auto’
    随机SVD求解器的幂迭代归一化器

    类属性

    components_

    ndarray of shape (n_components, n_features)
    特征空间的主轴,表示数据中方差最大的方向。

    等价地,中心输入数据的右奇异向量,平行于它的特征向量

    explained_variance_

    ndarray of shape (n_components,)
    由每个选定的成分解释的方差的数量、特征值
    数值上等于等于n个分量X的协方差矩阵的最大特征值

    explained_variance_ratio_

    ndarray of shape (n_components,)
    由每个所选组件解释的方差百分比、各主成分的贡献率
    当n_components参数没有设置时,所有的特征都将被被保留而且比率之和为1

    singular_values_

    ndarray of shape (n_components,)
    与每个选中部分相关的奇异值

    mean_

    ndarray of shape (n_features,)
    每个特征的经验平均值,从训练集估计。数值上等于 X.mean(axis=0).

    n_components_

    int
    主成分的估计数量

    n_features_

    int
    训练数据中的特征数量

    n_samples_

    int
    训练数据中的样本数量

    noise_variance_

    float
    噪声协方差矩阵,等于X的协方差矩阵(min(n个特征,n个样本)- n个分量)最小特征值的平均值。

    n_features_in_

    int
    拟合期间看到的特征数量

    feature_names_in_

    ndarray of shape (n_features_in_,)
    拟合期间看到的特征名称,仅当X拥有字符串数据类型的特征名称时才定义

    类方法

    方法名描述
    fit(X[, y])使用训练数据X拟合模型
    fit_transform(X[, y])拟合模型并对数据X进行降维
    get_covariance()根据得到的模型计算数据的协方差
    get_feature_names_out([input_features])返回输出特征的名称
    get_params([deep])返回模型参数
    get_precision()根据得到的模型计算数据的精度矩阵
    inverse_transform(X)将数据恢复为初始状态
    score(X[, y])返回模型得分
    score_samples(X)返回每个数据样本的似然对数
    set_params(**params)设置模型参数
    transform(X)对数据X进行降维
  • 相关阅读:
    net自动排课系统完整源码(适合智慧校园)
    Easyexcel·读取excel
    HTML小游戏4 —— 简易版英雄联盟(附完整源码)
    python脚本根据linux内存/CPU情况生成csv文件可描绘数据散点图
    [MQ] SpringBoot使用扇型(广播)交换机/主题交换机
    网络安全(黑客技术)—2024自学手册
    yolov7训练危险品识别 pytorch
    基于深度学习的农作物叶片病害检测系统(UI界面+YOLOv5+训练数据集)
    「元宇宙」成为发展新坐标,文化产业如何「沉浸式」升维?
    C++ 之 perf+火焰图分析与Debug
  • 原文地址:https://blog.csdn.net/m0_54510474/article/details/127490967