建置以內容為基礎的建議系統

Azure Databricks
Azure Machine Learning

解決方案構想

本文是解決方案概念。 如果您想要使用詳細資訊來擴充內容,例如潛在的使用案例、替代服務、實作考慮或定價指引,請提供 GitHub 意見反應 讓我們知道。

建議是許多企業的主要收入驅動因素,可用於不同類型的行業,包括零售、新聞和媒體。 透過客戶活動的大量資料可用性,您可以使用機器學習提供高度相關的建議。

架構

Architectural diagram that shows training, evaluation, and development of a machine learning model for content-based personalization that uses Azure Databricks.

下載此架構的 PowerPoint 檔案

資料流程

  1. 商店。 Azure Data Lake 儲存體會儲存使用者和取用者行為的大量資料。

  2. 讀取。 Azure Databricks 會連線至 Azure Data Lake 儲存體並從中讀取。 擷取至 Databricks 可讓前置處理和定型註冊模型。

  3. 預處理。 資料前置處理會清理、轉換和準備要送入建議系統模型的資料。

  4. 火車。 訓練有兩個步驟: 特徵工程 模型定 型。 在模型定型期間,Azure Databricks 會使用前置處理過的資料集來定型和說明最佳建議模型的行為。

  5. 後續處理。 後處理牽涉到模型評估與選取,根據模型的表現最佳。

  6. Deploy。 Azure Databricks 會維護模型。 Batch 受控端點會部署模型,以便暴露在前端顯示器上。 部署模型時,新的資料可透過新的端點存取。 支援 Batch 和近乎即時的建議。

  7. 撰寫。 使用者介面,例如 Web 應用程式,可以取用預存的模型結果。 結果會寫入 Azure Synapse 中並擷取。 模型會以批次推斷的形式執行,並將結果儲存在個別的資料存放區中。

元件

此架構會使用下列元件:

  • Azure Data Lake 儲存體 是一組專用於巨量資料分析的儲存體功能,並提供檔案系統語意、檔案層級安全性和調整。

  • Azure Databricks 是受控 Apache Spark 叢集,可用於模型定型和評估。

  • Azure Synapse Analytics 是快速、彈性且受信任的雲端資料倉儲,可讓您使用大規模平行處理架構,以彈性且獨立的方式調整、計算及儲存。

案例詳細資料

本文所述的方法著重于建置以內容為基礎的建議系統。 如需建置建議系統最佳做法的詳細資訊,請參閱 GitHub 上建議工具 的檔和範例

此範例案例示範如何使用機器學習,將客戶的內容型個人化自動化。 解決方案會使用 Azure Databricks 來定型模型,以預測使用者對專案感興趣的機率。 批次受控端點會將 該模型部署為預測服務。 您可以使用這項服務,根據使用者最有可能感興趣的內容來排名專案,以建立個人化建議。

潛在的使用案例

此解決方案適用于零售產業。 這與下列使用案例相關:

  • 網站和行動應用程式的內容建議
  • 電子商務網站的產品建議
  • 網站的顯示廣告建議

建議系統類型

建議系統有三種主要類型:

  • 共同作業篩選。 共同作業篩選可識別客戶行為中的類似模式,並建議與其他類似客戶互動的專案。 共同作業篩選的優點是輕鬆產生資料—使用者在與專案和產品清單互動時建立資料。 此外,客戶可以探索從其歷史互動中策劃的新專案和產品。 不過,共同作業篩選的缺點是 冷啟動 問題:因為使用者與新供應專案之間缺乏互動,因此完全依賴客戶互動的演算法不建議新增的專案。

  • 內容型。 以內容為基礎的建議會使用專案的相關資訊來瞭解客戶喜好設定,並建議與客戶先前互動之專案共用屬性的專案。 以內容為基礎的建議系統不會受到冷啟動問題所阻礙,而且可以適應新專案的引進。 不過,建議僅限於客戶與其互動的原始專案功能。

  • 混合式方法。 建置建議系統的另一種方法是混合內容型和共同作業篩選。 此系統會根據使用者評等和專案的相關資訊來建議專案。 混合式方法具有共同作業篩選和內容型建議的優點。

參與者

本文由 Microsoft 維護。 原始投稿人如下。

主體作者:

其他參與者:

  • 安德魯·阿賈盧瓦 |Program Manager
  • Gary Moore |程式設計人員/寫入器

若要查看非公用LinkedIn設定檔,請登入 LinkedIn。

下一步