機器學習概述 - Amazon Redshift

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

機器學習概述

透過 Amazon Redshift,您可以利用機器學習功能,從資料中取得寶貴的洞見。此Machine Learning(ML) 概觀會示範如何探索、視覺化和準備資料,以進行 ML 模型訓練和部署。下列各節將引導您完成使用 Amazon Redshift ML 透過機器學習釋放資料潛力的程序。

透過使用 Amazon Redshift ML,您可以使用SQL陳述式訓練機器學習模型,並在SQL查詢中叫用它們以進行預測。

若要協助您學習如何使用 Amazon Redshift ML,您可以觀看下列影片。

如需設定 Redshift 叢集或無伺服器工作群組的先決條件、使用 Amazon Redshift ML 的許可和擁有權的相關資訊,請參閱下列各節。這些章節也會說明簡單訓練和預測在 Amazon Redshift ML 中的運作方式。

機器學習如何解決問題

機器學習模型會在訓練資料中尋找模式,然後將這些模式套用至新資料,以產生預測。在機器學習中,您可以透過學習最能解釋您資料的模式來訓練這些模型。然後,您可以使用模型對新資料進行預測 (也稱為推論)。機器學習通常是一個反覆的過程,您可以透過變更參數和改進訓練資料來繼續提高預測的準確性。如果資料變更,則會使用新資料集重新訓練新模型。

為了解決各種業務目標,有不同的基本機器學習方法可用。

在 Amazon Redshift ML 中進行監督式學習

Amazon Redshift 支援受監督式學習,這是進階企業分析最常用的方法。當您擁有一組已建立的資料並了解特定輸入資料如何預測各種業務成果時,監督式學習是首選的機器學習方法。這些結果有時稱為標籤。特別是,如果您的資料集是一個包含特徵 (輸入) 和目標 (輸出) 的屬性資料表。例如,假設您有一個提供過去和現在客戶的年齡和郵遞區號的資料表。假設您還有一個「作用中」欄位,而此欄位對於現在的客戶而言是 true,對於已暫停其會員資格的客戶來說是 false。監督式機器學習的目標是發現導致客戶流失的年齡和郵遞區號模式,以其目標為 “False” 的客戶表示。您可以使用此模型來預測可能流失的客戶,例如暫停其會員資格,並可能提供保留獎勵。

Amazon Redshift 支援監督式學習,其中包括迴歸、二進制分類和多類別分類。迴歸是指預測連續值的問題,例如客戶的總支出。二進制分類指的是預測兩個結果之一的問題,例如預測客戶是否會流失。多類別分類是指預測許多結果之一的問題,例如預測客戶可能感興趣的項目。資料分析師和資料科學家可以使用它來執行監督式學習,以解決諸如預測、個性化或客戶流失預測等問題。您還可以在諸如預測哪些銷售會結束、收入預測、詐騙偵測和客戶終身價值預測等問題中使用監督式學習。

在 Amazon Redshift ML 中進行非監督式學習

非監督式學習會使用機器學習演算法來分析和分組未標籤的訓練資料。演算法會發現隱藏的模式或分組。目標是為資料中的基礎結構或分佈建立模型,以進一步了解資料。

Amazon Redshift 支援 K 平均值叢集演算法,以解決非監督式學習問題。此演算法可解決您想在資料中探索分組的叢集問題。K 平均值演算法會嘗試尋找資料中的離散群組。未分類的資料會根據其相似性和差異進行分組和分割。透過分組,K 平均值演算法會反覆決定最佳質心,並將每個成員指派給最接近的質心。最接近屬於同一群組的相同質心的成員。群組的成員會盡可能地與相同群組中的其他成員相似,並盡可能地和其他群組的成員不同。例如,K 平均值叢集演算法可用於對受到流行病影響的城市進行分類,或根據消費品產品的受歡迎程度對城市進行分類。

使用 K 平均值演算法時,您可以指定輸入 k,指定要在資料中尋找的叢集數目。該演算法的輸出是 k 個質心的集合。每個資料點都屬於 k 個叢集中最接近它的其中一個叢集。每個叢集都會由其質心描述。質心可以被認為是叢集的多維平均值。K 平均值演算法會比較距離,以了解叢集彼此之間有多不同。較大的距離通常表示叢集之間的差異較大。

預處理資料對 K 平均值來說很重要,因為可確保模型的特徵保持相同的比例並產生可靠的結果。Amazon Redshift 支援CREATEMODEL陳述式的某些 K 平均值前置處理器,例如 StandardScaler、 MinMax和 NumericPassthrough。如果您不想套用任何 K 平均值的預處理,請 NumericPassthrough 明確選擇 作為轉換器。如需 K 平均值的相關資訊,請參閱 CREATE MODEL 使用 K 參數MEANS

若要協助您了解如何使用 K 平均值叢集執行非監督式訓練,您可以觀看以下影片。

Amazon Redshift ML 的術語和概念

下列術語用來描述 Amazon Redshift ML 的一些概念。

  • Amazon Redshift 中的機器學習會使用單一SQL命令訓練模型。Amazon Redshift ML 和 Amazon 會 SageMaker 管理所有資料轉換、許可、資源使用和探索適當的模型。

  • 訓練是 Amazon Redshift 透過在模型中執行指定的資料子集來建立機器學習模型的階段。Amazon Redshift 會自動在 Amazon 中啟動訓練任務, SageMaker 並產生模型。

  • 預測 (也稱為推論 ) 是在 Amazon Redshift SQL查詢中使用模型來預測結果。在推論時,Amazon Redshift 會使用以模型為基礎的預測函數做為較大查詢的一部分來產生預測。預測是在 Redshift 叢集本機上計算的,因此可提供高輸送量、低延遲和零額外成本。

  • 透過自帶模型 (BYOM),您可以使用在 Amazon Redshift 之外與 Amazon 一起訓練的模型 SageMaker ,在 Amazon Redshift 本機進行資料庫內推論。Amazon Redshift ML 支援在本機推論BYOM中使用 。

  • 當模型在 Amazon 中預先訓練 SageMaker、由 Amazon SageMaker Neo 編譯,以及在 Amazon Redshift ML 中本地化時,會使用本機推論。若要將支援本機推論的模型匯入 Amazon Redshift,請使用 CREATEMODEL命令。Amazon Redshift 會呼叫 Amazon SageMaker Neo 匯入預先訓練的 SageMaker 模型。您可以在那裡編譯模型,然後將編譯後的模型匯入 Amazon Redshift。使用本機推論以加快速度並降低成本。

  • 當 Amazon Redshift 調用部署在 中的模型端點時,會使用遠端推論 SageMaker。遠端推論可讓您靈活地叫用所有類型的自訂模型和深度學習模型,例如您在 Amazon 中建置和部署的 TensorFlow 模型 SageMaker。

同樣重要的是以下各項:

  • Amazon SageMaker 是完全受管的機器學習服務。透過 Amazon SageMaker,資料科學家和開發人員可以輕鬆建置、訓練模型,並直接將模型部署到生產就緒的託管環境中。如需 Amazon 的相關資訊 SageMaker,請參閱 Amazon 開發人員指南 中的什麼是 SageMaker Amazon SageMaker

  • Amazon SageMaker Autopilot 是功能集,可根據您的資料自動訓練和調整分類或迴歸的最佳機器學習模型。您可以保持完整的控制權和可見性。Amazon SageMaker Autopilot 支援表格格式的輸入資料。Amazon SageMaker Autopilot 為線性迴歸、二進位分類和多類別分類提供自動資料清理和預處理、自動演算法選擇。它也支援自動超參數最佳化 (HPO)、分散式訓練、自動執行個體和叢集大小選擇。如需 Amazon SageMaker Autopilot 的相關資訊,請參閱 Amazon SageMaker 開發人員指南 中的使用 Amazon SageMaker Autopilot 自動化模型開發

  • Amazon Bedrock 是一項完全受管的服務,提供從 AI21 Labs、Anthropic、Cohere、Meta、Mistral AI、Stability AI 和 Amazon 等頂尖 AI 公司透過單一 提供的高效能基礎模型 (FMs)API,以及建置生成性 AI 應用程式所需的廣泛功能。