更新时间:2023-05-05 GMT+08:00
分享

奇异值分解

概述

奇异值分解(Singular Value Decomposition,SVD)一般用于数据挖掘、建模等领域的特征工程过程,是线性代数中一种重要的矩阵分解方法,奇异值分解算子可将1个矩阵分解为3个矩阵。

比如对于m×n 的矩阵A,可根据以下SVD计算公式得到左奇异向量组成的m×k 矩阵U、奇异值组成的k×k 矩阵Σ(对角线上元素被称为奇异值)和右奇异向量组成的n×k 矩阵VA=UΣVT

输入

参数

子参数

参数说明

inputs

dataframe

inputs为字典类型,dataframe为pyspark中的DataFrame类型对象

输出

3个数据集,分别对应矩阵U、矩阵Σ的对角线元素(k个奇异值)和矩阵V

参数说明

参数

子参数

参数说明

k

-

奇异值的个数

computeU

-

是否计算U,默认为False

rCond

-

条件值,默认为1e-9

样例

inputs = {
    "dataframe": None  # @input {"label":"dataframe","type":"DataFrame"}
}
params = {
    "inputs": inputs,
    "k": "",  # @param {"label":"k","type":"integer","required":"true","range":"(0,2147483647]","helpTip":""}
    "computeU": False,  # @param {"label":"computeU","type":"boolean","required":"false","helpTip":""}
    "rCond": 1e-9  # @param {"label":"rCond","type":"integer","required":"false","range":"(0,2147483647]","helpTip":""}
}
svd____id___ = MLSSVD(**params)
svd____id___.run()
# @output {"label":"dataframe","name":"svd____id___.get_outputs()['output_port_1']","type":"DataFrame"}
# @output {"label":"dataframe","name":"svd____id___.get_outputs()['output_port_2']","type":"DataFrame"}
# @output {"label":"dataframe","name":"svd____id___.get_outputs()['output_port_3']","type":"DataFrame"}
分享:

    相关文档

    相关产品