當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch pca_lowrank用法及代碼示例


本文簡要介紹python語言中 torch.pca_lowrank 的用法。

用法:

torch.pca_lowrank(A, q=None, center=True, niter=2)

參數

  • A(Tensor) -大小為 的輸入張量

  • q(int,可選的) - 的排名略高。默認情況下,q = min(6, m, n)

  • center(bool,可選的) -如果為真,則將輸入張量居中,否則,假設輸入居中。

  • niter(int,可選的) -要進行的子空間迭代次數; niter 必須是非負整數,默認為 2。

對低秩矩陣、此類矩陣的批次或稀疏矩陣執行線性主成分分析 (PCA)。

此函數返回一個命名元組 (U, S, V),它是中心矩陣 的奇異值分解的近似最優近似,使得

注意

(U, S, V)與PCA的關係如下:

  • 是具有 m 樣本和 n 特征的數據矩陣

  • 列代表主要方向

  • 包含 的特征值,這是在提供center=TrueA 的協方差。

  • matmul(A, V[:, :k]) 將數據投影到前 k 個主成分

注意

與標準 SVD 不同,返回矩陣的大小取決於指定的 rank 和 q 值,如下所示:

  • 是 m x q 矩陣

  • 是 q-vector

  • 是 n x q 矩陣

注意

要獲得可重複的結果,請重置偽隨機數生成器的種子

參考:

- Nathan Halko, Per-Gunnar Martinsson, and Joel Tropp, Finding
  structure with randomness: probabilistic algorithms for
  constructing approximate matrix decompositions,
  arXiv:0909.4061 [math.NA; math.PR], 2009 (available at
  `arXiv <http://arxiv.org/abs/0909.4061>`_).

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.pca_lowrank。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。