

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

# K 平均數演算法
<a name="k-means"></a>

K 平均數是無監督學習演算法。其會試圖找出資料內分散的群組，盡可能讓群組成員彼此相似，而進能可和其他群組內的成員有所差異。您需定義演算法要用來判定相似度的屬性。

Amazon SageMaker AI 使用的是 Web 規模的 K 平均數叢集演算法的修改版本。與此演算法的原始版本相較之下，Amazon SageMaker AI 所用的版本更加準確。與原始演算法相同，其可擴充配合大量的資料集，在訓練時間上獲得改善。為了辦到這點，Amazon SageMaker AI 所用的版本會以微批次串流訓練資料 (小型隨機的子集)。如需微批次 k 平均值的詳細資訊，請參閱 [Web 規模的 k 平均值叢集](https://dl.acm.org/doi/10.1145/1772690.1772862)。

K 平均數演算法預期的是表格化的資料，資料列代表的是您想要建立叢集的觀察，而資料行是觀察的屬性。各資料列的 *n* 屬性代表的是 *n* 維空間內的一點。點與點之間的歐幾里德距離代表了相對應的觀察之間的相似度。此演算法會以類似的屬性值將觀察分組 (對應至這些觀察的點彼此間距離較近)。如需 k 平均值如何在 Amazon SageMaker AI 中運作的詳細資訊，請參閱[K 平均數叢集的運作方式](algo-kmeans-tech-notes.md)。

**Topics**
+ [K 平均值演算法的輸入/輸出介面](#km-inputoutput)
+ [適用於 K 平均值演算法的 EC2 執行個體建議](#km-instances)
+ [K 平均值範例筆記本](#kmeans-sample-notebooks)
+ [K 平均數叢集的運作方式](algo-kmeans-tech-notes.md)
+ [K 平均數超參數](k-means-api-config.md)
+ [調校 K 平均值模型](k-means-tuning.md)
+ [K 平均值回應格式](km-in-formats.md)

## K 平均值演算法的輸入/輸出介面
<a name="km-inputoutput"></a>

針對訓練，k 平均值演算法預期以*訓練*通道提供資料 (建議使用 `S3DataDistributionType=ShardedByS3Key`)，以選用的*測試*通道 (建議使用 `S3DataDistributionType=FullyReplicated`) 評分資料。訓練支援 `recordIO-wrapped-protobuf` 和 `CSV` 兩種格式。您可以使用檔案模式或管道模式，以 `recordIO-wrapped-protobuf` 或 `CSV` 格式的資料來訓練模型。

針對推論，支援 `text/csv`、`application/json` 和 `application/x-recordio-protobuf`。k 平均值會針對每個觀察項傳回一個 `closest_cluster` 標籤和 `distance_to_cluster`。

如需輸入和輸出檔案格式的詳細資訊，請參閱適用於推論的[K 平均值回應格式](km-in-formats.md)以及[K 平均值範例筆記本](#kmeans-sample-notebooks)。K 平均值演算法不支援多執行個體學習，其中訓練集由標籤為 “包” 組成，每個包都是未標籤執行個體的集合。

## 適用於 K 平均值演算法的 EC2 執行個體建議
<a name="km-instances"></a>

建議在 CPU 執行個體上訓練 K 平均數。您可以在 GPU 執行個體上進行訓練，但應將 GPU 訓練限制於單一 GPU 執行個體 (例如 ml.g4dn.xlarge)，因為每個執行個體只會使用一個 GPU。K 平均數演算法可支援 P2、P3、G4dn 和 G5 執行個體，進行訓練和推論。

## K 平均值範例筆記本
<a name="kmeans-sample-notebooks"></a>

如需依使用原則元件分析找到的屬性，使用 SageMaker AI K 平均數演算法區隔美國各郡人口的範例筆記本，請參閱[使用 Amazon SageMaker AI 分析美國人口普查資料以進行人口細分](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_applying_machine_learning/US-census_population_segmentation_PCA_Kmeans/sagemaker-countycensusclustering.html)。如需如何建立並存取 Jupyter 筆記本執行個體以用來執行 SageMaker AI 中範例的指示，請參閱[Amazon SageMaker 筆記本執行個體](nbi.md)。在建立並開啟筆記本執行個體後，請選取 **SageMaker AI 範例**索引標籤以查看所有 SageMaker AI 範例的清單。若要開啟筆記本，請按一下其**使用**標籤，然後選取**建立複本**。