Analytics Zoo 的深度學習對 MasterCard* 的推薦 AI 服務的優化

作者:Suqiang Song (Mastercard* ) , Yang, Yuhao (Intel), Jiao Wang (Intel)

本文介紹在構建通用推薦人工智能服務的用戶商品傾向模型方面MasterCard* 和Intel的合作項目。Analytics Zoo1是Intel開源的一個統一的Analytics + AI平臺,它無縫地將Spark*、TensorFlow*、Keras* 和BigDL2程序集成到一個整合的流水線中,可以透明地擴展到大型Apache Hadoop/Spark集群中,用于分布式訓練或預測,而無需額外的GPU基礎設施。

在金融行業中,用戶商品傾向模型可以用來計算消費者在特定行業內從商家或零售商處購買的概率。該模型可以用于展示市場研究前景,或為相關金融產品或商業交易提供個性化建議。利用建立在Spark基礎上的基于深度學習的神經推薦模型,推薦系統可以在改善消費者體驗、活動績效和目標營銷產品/計劃的準確性方面發揮重要作用,并提供相關信息以鼓勵忠誠度和獎勵。本文使用一個個性化的市場營銷業務用例作為示例,闡述從格式化的信用卡交易中預測用戶的購買商品的傾向:

1.    通過優惠匹配和鏈接不斷提高投資回報(ROI)是形成營銷活動設計和營銷管理的策略。

2.    對于每個目標商品(如商家、類別、地理位置),估算所有消費者在未來幾天/幾周內進行購買的傾向,并提供一份作為候選人的消費者排名表。同樣,該模型還可以為每個消費者推薦一個商品的排名列表。

3.    數據工程和深度學習流水線能夠在限定時間內運行在現有企業Apache Hadoop* 集群(帶有Spark服務)之上,以生成用戶商品傾向模型。

4.    模型服務作為人工智能的服務:一種通用推薦人工智能服務,可以在不同的服務環境(如實時、流式和批處理)下與現有應用程序/服務集成。

背景

MasterCard作為全球領先的支付解決方案提供商,正在將人工智能(AI)集成到其平臺中,以更好地為客戶服務。Analytics Zoo,通過支持在大型英特爾? 至強? 可擴展處理器集群上運行基于 Spark 的BigDL,是滿足企業深度學習需求的理想解決方案,因為它允許用戶直接在現有的大數據(Apache Hadoop/Spark)基礎設施上開發和運行深度學習應用程序。相比之下,在企業中部署基于GPU的解決方案存在許多挑戰(例如,錯誤的工具集成,昂貴的數據復制和移動,耗時和工程人員資源密集,監控較少,學習曲線陡峭等),因為它們與現有數據分析基礎設施不兼容。

深度學習可以通過營銷活動的有效性來推動更高的投資回報率。因此,著重于對消費者行為的敏銳洞察,根據客戶的興趣和喜好與客戶進行連接。例如,如果商家提供優惠給購買潛力最高的消費者,那么商家的優惠是最有效的。傳統的機器學習算法在以前的解決方案中起著至關重要的作用。然而,業界正在尋求一種更健壯的簡化流程的解決方案,用于處理模型的復雜性,勞動密集的特征工程過程,以及更高的精度。近年來,人們提出了許多基于深度學習的神經推薦模型,以進一步提高營銷活動的有效性。

推薦系統概述

推薦系統(RS)是一種信息過濾工具,用于引導用戶以個性化的方式從大量可能的選項中發現他們的偏好。它是為許多在線網站和移動應用程序推廣銷售和服務的關鍵工具。例如,80%在Netflix*上觀看的電影來自推薦3;60%的視頻點擊來自YouTube*4上的主頁推薦。基于深度學習的推薦系統在克服傳統模型的障礙和實現高質量推薦方面得到了廣泛的關注5

推薦模型可分為三類:協同過濾、基于內容和混合系統。協同過濾通過學習用戶商品歷史交互,通過顯式的(例如,用戶先前的評級)或隱式的反饋(例如,購買歷史)來提出建議。由于數據約束,在這個用例里面,協同過濾利用隱式數據。

傳統機器學習和深度學習的基準測試

基準概述

作為一個在Spark上本地運行的集成分析和人工智能平臺,Analytics Zoo滿足企業深度學習應用程序的標準要求。

·         分析存儲在同一大數據集群上的大量數據(Hadoop分布式文件系統(HDFS)、Apache HBase* 和Apache Hive*等),而不是移動或復制數據。

·         將深度學習功能添加到現有的分析應用程序和機器學習流水線中,而不是重建它們。

·         利用現有的大數據集群和基礎設施(資源分配,負載管理和企業級的監控)

·         減少特征工程工作量。在訓練階段進行交叉驗證時,深度學習算法會產生指數性增長的隱藏嵌入特征,并自動執行內部特征選擇和優化。在構建模型時,算法只關注一些預先定義的滑動特征和自定義重疊特征,刪除大部分loan-to-value(LTV)預計算工作,節省大量時間和資源。

·         自動模型優化。傳統的機器學習(ML)方法嚴重依賴于人機學習專家來優化模型。Analytics Zoo提供了更多選項來找到一個最佳的穩健的執行配置。

·         由于Analytics Zoo作為Intel Xeon處理器上的標準Spark程序運行,因此部署或操作成本為零。

·         高層流水線API支持,如DataFrames、ML管道、autograd、遷移學習、KERS/KERAS2等。

考慮到MasterCard已經為類似的模型運行了幾十年的傳統機器學習,并且在Spark ML生態系統(如Spark MLlib)上花費了資源,業務利益相關者希望對這兩種方法進行基準測試,并確定其差異。因此,在Spark機器學習和Analytics Zoo的BigDL模型進行了基準測試。

選擇數據集:

數據來自過去三年中從特定渠道收集的數據集。

·         不同的合格消費者:675,000

·         用于基準的目標商家(優惠或廣告系列):2000

·         已知交易:14億(原始數據53 GB)消費時間:12 - 24個月作為訓練和1 - 2個月作為驗證

生產環境Hadoop集群:

·         9個節點集群(3個主機主節點(HMN)節點,6個Hortonworks數據平臺(HDP)節點),每個節點放在一個物理盒中

·         24個超級內核,384 GB內存,21 TB磁盤

·         Hadoop發行版本:Cloudera Distributed Hadoop(CDH)5.12.1

·         Spark版本:2.2

·         Java *平臺,標準版開發工具包(JDK *)1.8

基準庫:

·         Analytics Zoo- bigdl_0.6.0-spark_2.2.0

·         Spark MLlib 2.2.0

對于傳統的機器學習方法,選擇Spark MLlib方法的交替最小二乘(ALS)模型6

對于深度學習方法,基于最新的研究和行業實踐,選擇了神經協同過濾(NCF)和寬深(WAD)模型作為推薦的兩個候選模型。來自Analytics Zoo的Keras風格API也被用于用python* 和scala* 構建深度學習模型。

圖1.將深度學習模型與ALS模型進行比較

深度學習模型闡述

神經協同過濾(NCF)模型

Xiangnan He7首先提出的簡單通用的NCF模型,旨在作為開發推薦服務深度學習方法的指導,以捕捉用戶和物品之間的非線性關系。由于存在大量未觀察到的實例,NCF采用負抽樣來減小訓練數據量,顯著提高了學習效率。傳統的矩陣分解可以看作是NCF的一個特例。使用Analytics Zoo,用戶可以輕松構建NCF模型,如下圖所示。

圖2.神經協同過濾(NCF)模型的示例

寬深(WAD)模型

2016年,Heng Tze Cheng8 為Google Play* 商店提出了一個應用推薦系統,該系統采用了寬深(wad)模式。寬分量是一個單層感知器,它是一個廣義線性模型。深部分量是類似于NCF的多層感知器。結合這兩種學習技術,推薦系統可以捕獲記憶和泛化。在這種情況下,Merchant ID和其他特性用于生成寬模型的交叉列。

圖3.寬深模型圖

WAD模型使用了SparseTensor,以及為稀疏數據計算明確設計的一些的層,例如SparseLinear, SparseJoinTable等。Analytics Zoo支持DataFrame和彈性分布式數據集(RDD)兩種接口,用于數據準備和訓練,為不同場景提供靈活性,允許Spark 1.5兼容到最新版本。

模型評估

利用Spark MLlib ALS的評價工具,NCF和WAD實現的推薦器用下列指標進行測量。

·         ROC曲線下面積(ROC AUG)

·         精確度與召回率曲線下面積(PR AUC)

·         精準度與召回率

·         每位客戶排名前20位的精準度

為了與傳統的矩陣分解算法相比,在SARS2.2.0上的ALS訓練采用了相同的數據和優化參數。相比之下,深度學習模型比ALS模型有顯著的改進,如下表所示。

 

NCF 模型

WAD模型

對比ALS召回率改進

↑  29%

↑  26%

對比ALS精準度提升

↑  18%

↑  21%

對比ALS前20個精準度增長

↑  14%

↑  16%


模型服務

服務模式

通過使用Plain Old Java Object(POJO),本地Java API或Scala / Python模型加載API,Analytics Zoo模型可以無縫集成到Web服務(如Spark Streaming,Kafka* 等)中。

MasterCard使用數據流水線框架Apache NiFi9構建企業數據流水線平臺。它開發了相關的定制處理器,通過利用Analytics Zoo的服務API,將深度學習和模型服務流程嵌入到現有的企業數據流水線中。

·         通過將模型導出到評分/預測/推薦服務和集成點來構建模型服務功能。

·         在業務數據流水線中集成服務模型。例如,將它們嵌入到離線的Spark作業,流式處理的Spark Streaming作業,或與通過Kafka消息系統的實時 “對話” 等等。

人工智能開發

英特爾? 技術可以針對您的AI開發需求進行定制,幫助您為每項工作找到最佳技術解決方案。英特爾還為開發人員、數據科學家提供AI理論和精選案例,為用戶提供前沿的AI資訊和豐富的線上線下活動。

了解更多

人工智能應用

深度學習、機器學習以及預測性分析對數據中心、工作站和設備提出了獨特的要求。英特爾? 技術可以幫助您實現從醫學發現到自動駕駛汽車智能的重大突破。

了解更多

產品和性能信息

3Carlos A Gomez-Uribe and Neil Hunt. 2016. Netflix推薦系統:算法、商業價值和創新。管理信息系統的ACM事務(TMIS) 6, 4 (2016), 13.
4James Davidson, Benjamin Liebald, Junning Liu, Palash Nandy, Taylor Van Vleet, Ullas Gargi, Sujoy Gupta, Yu He, Mike Lambert, Blake Livingston, and Dasarathi Sampath. 2010. The YouTube Video Recommendation System. 第四屆ACM推薦系統會議錄第29頁至第29頁(RecSys ‘10).
5Shuai Zhang, Lina Yao, and Aixin Sun. Deep learning-based Recommender System: A Survey and New Perspectives. arXiv preprint arXiv:1707.07435, 2017.
7Xiangnan He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, and Tat-Seng Chua. 2017. Neural Collaborative Filtering. In Proceedings of the 26th International Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 173–182.
81.    Heng-Tze Cheng, Levent Koc, Jeremiah Harmsen, Tal Shaked, Tushar Chandra, Hrishi Aradhye, Glen Anderson, Greg Corrado, Wei Chai, Mustafa Ispir, et al. 2016. Wide and Deep Learning for Recommender Systems. In Proceedings of the 1st Workshop on Deep Learning for Recommender Systems. ACM, 7–10.
国产女人-国产V女人-女人自拍国产-国产女人ed2k-国产女人bt