

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 主成分分析 (PCA) 演算法
<a name="pca"></a>

PCA 為無監督機器學習演算法，嘗試降低資料集內的維數 (功能數量)，同時仍保留所需的資訊。透過找出一組稱為*元件*的新特徵來完成此目的，為與另一組特徵無關的複合原始特徵。它們也會受到限制，讓第一個元件說明資料中最有可能出現的變異、第二個元件中次有可能出現的變異，以此類推。

在 Amazon SageMaker AI 中，PCA 視情況而定以兩種模式操作：
+ **一般**：針對含有稀疏資料的資料集以及中等數量的觀察與特徵。
+ **隨機**：針對含有大量觀察與特徵的資料集。此模式使用近似值演算法。

PCA 使用表格式資料。

行代表您想要在較低的維度空間內嵌的觀察。欄則代表您想要在尋找降低近似值的功能。演算法計算共變異數矩陣 (或者在分散方法中的預算值)，接著在此摘要上執行單一值分解以生產主要元件。

**Topics**
+ [PCA 演算法的輸入/輸出介面](#pca-inputoutput)
+ [PCA 演算法的 EC2 執行個體建議事項](#pca-instances)
+ [PCA 範例筆記本](#PCA-sample-notebooks)
+ [PCA 的運作方式](how-pca-works.md)
+ [PCA 超參數](PCA-reference.md)
+ [PCA 回應格式](PCA-in-formats.md)

## PCA 演算法的輸入/輸出介面
<a name="pca-inputoutput"></a>

針對訓練，PCA 期望獲得訓練通道中提供的資料，並選擇性支援傳遞給測試資料集的資料集，由最終演算法評分。訓練支援 `recordIO-wrapped-protobuf` 和 `CSV` 兩種格式。您可以使用檔案模式或管道模式，以 `recordIO-wrapped-protobuf` 或 `CSV` 格式的資料來訓練模型。

對於推論，PCA 支援 `text/csv`、`application/json` 和 `application/x-recordio-protobuf`。結果將以含有向量 “投影” 的 `application/json` 或 `application/x-recordio-protobuf` 格式傳回。

如需輸入和輸出檔案格式的詳細資訊，請參閱適用於推論的[PCA 回應格式](PCA-in-formats.md)以及[PCA 範例筆記本](#PCA-sample-notebooks)。

## PCA 演算法的 EC2 執行個體建議事項
<a name="pca-instances"></a>

PCA 支援用於訓練和推論的 CPU 和 GPU 執行個體。哪些執行個體類型擁有最高效能大部分根據輸入資料的詳細規格而定。若為 GPU 執行個體，PCA 支援 P2、P3、G4dn 和 G5。

## PCA 範例筆記本
<a name="PCA-sample-notebooks"></a>

如需顯示如何使用 SageMaker AI 主成分分析演算法來分析 MNIST 資料集中手寫數字 (0 到 9) 影像的範例筆記本，請參閱[搭配 MNIST 的 PCA 簡介](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/pca_mnist/pca_mnist.html)。如需如何建立並存取 Jupyter 筆記本執行個體以用來執行 SageMaker AI 中範例的指示，請參閱[Amazon SageMaker 筆記本執行個體](nbi.md)。在建立並開啟筆記本執行個體後，請選取 **SageMaker AI 範例**索引標籤以查看所有 SageMaker AI 範例的清單。使用 NTM 演算法模組化範例筆記本的主題位於 **Amazon 演算法簡介**一節。若要開啟筆記本，請按一下其**使用**標籤，然後選取**建立複本**。