Online Learning場景下實時新聞熱點機器學習訓練實踐
(機器學習PAI Online Learning模組上線邀測,目前只支援華北2(北京)區域使用,本實驗會用到流式機器學習演算法)
PAI地址:https://data.aliyun.com/product/learn
邀測申請地址:https://data.aliyun.com/paionlinelearning
開啟新聞客戶端,往往會收到熱點新聞推送相關的內容。新聞客戶端作為一個承載新聞的平臺,實時會產生大量的
新聞,如何快速挖掘出哪些新產生的新聞會成為成為熱點新聞,決定著整個平臺的新聞推薦質量。
如何從平臺中海量的新聞素材中找到最有潛力成為熱點的新聞需要使用機器學習相關的演算法,傳統做法是將每天獲取的歷史諮詢下載並且離線訓練模型,再將生成的熱點發現模型推上線供第二日使用。但是這種離線訓練所生成的模型往往缺乏時效性的屬性,因為每天熱點新聞都是實時產生的,用過去的模型預測實時產生的資料顯然是缺乏對資料時效性的理解。
針對這種場景,PAI平臺開創性的提出來Online-Learning的解決方案,通過流式演算法和離線演算法的結合,既能夠發揮離線訓練對大規模資料的強大處理能力,又能夠發揮流式機器學習演算法對實時模型的更新能力,做到流批同跑,完美解決模型時效性的問題。今天就以實時熱點新聞挖掘案例為例,為大家介紹PAI OnlineLearning的解決方案。
實驗流程
1.切換新版
進入PAI後,點選“體驗新版”按鈕即可開啟試用(目前OnlineLearning只支援新版,且與舊版不相容)可在模板中一鍵建立類似於本文介紹的案例,資料和流程都已經內建,開箱即用
模板開啟,點選執行後效果(模板目前為簡化版本)
2.實驗流程介紹
(注:PAI中離線計算元件用藍色標識,流式計算元件由綠色標識,流式元件相連將形成計算組,因為流式元件需要多個元件的執行停止狀態一致)
步驟1:離線模型訓練
本文使用的資料是3萬條來自UCI開放資料集提供的新聞文字資料。
地址:https://archive.ics.uci.edu/ml/datasets/Online+News+Popularity
資料組成:包含新聞的URL以及產生時間,另外還包含了58個特徵以及1個目標值,目標值“share”是新聞的分享次數,建模過程中將share欄位利用sql元件處理成一個二分類問題,新聞share次數超過10000次為熱點新聞,小於10000次為非熱門新聞
特徵的組成如下圖所示:
利用邏輯迴歸模型訓練生成一個二分類模型,這個模型用來評估新聞是否會成為熱點新聞。
(注:目前PAI OnlineLearning只支援邏輯迴歸演算法)
步驟2:離線模型轉換成流式模型
通過“模型轉換”元件,可以將離線生成的邏輯迴歸模型轉換成流式演算法可讀取的流式模型。
步驟3:流式模型訓練
從步驟3開始就進入了流式演算法元件的步驟,PAI平臺提供多種流式資料來源,本案例以Datahub為例。
Datahub地址:https://datahub.console.aliyun.com/datahub
Datahub是一種流式資料對列,支援JAVA、PYTHON等多種語言採集方式,在具體使用過程中可以通過Datahub連結使用者實時產生的資料以及PAI的訓練服務。注意:Datahub輸入的資料流格式需要與離線訓練的資料流的欄位完全一致,這樣才可以對離線的模型進行實時更新。
-
Ftrl訓練元件:左側輸入的是轉化為流式的離線模型,右側輸入是流式資料表
FTRL演算法基本等同於流式的邏輯迴歸演算法,在使用過程中需要按照LR演算法配置引數,需要注意”模型儲存時間間隔引數“的配置,這個引數決定了實時計算產生模型的時間週期。
新版PAI已經內建了大量流式演算法元件:
-
PMML模型生成元件:將輸出的模型轉化成PMML格式
-
OSS檔案匯出:將模型匯出到使用者自己的OSS中,可以自己設定名稱的字首和字尾,生成模型可在OSS中檢視,如下圖
步驟4:流式模型評估
流式模型評估指的是利用評估資料對Ftrl訓練生成的模型進行評估,輸出的評估指標也可以寫入OSS,評估指標與模型一一對應。每個模型和評估指標都有一個ID,如果ID一致,說明模型和評估指標是對應關係,如下圖:
評估指標是一個json格式檔案,包含精確率、準確率、混淆矩陣等指標:
步驟5:流式預測結果實時匯出
可以利用實時生成的模型做實時資料預測,實時的預測結果可以寫出到datahub中,如下圖:
同時如果輸入的預測資料集包含label,還可以新增分類評估元件,可以開啟組關係中的最右邊按鈕:
開啟實時的流式預測結果評估頁面:
3.模型使用介紹
通過以上步驟已經產生了新聞熱點預測模型,生成的模型已經存入OSS,可以直接在PAI-EAS線上預測服務引擎進行部署也可以下載下來在本地預測引擎使用。新聞資料進來後先要做特徵工程(同”步驟1:離線模型訓練“中的特徵處理方式),然後將特徵工程處理結果輸入”熱點新聞挖掘服務“,將會返回新聞是否是熱點新聞。
總結
通過本文的案例,實現了將離線歷史資料生成LR模型推送到實時訓練環境,再利用實時生成的資料對模型進行更新, 這種實時訓練的架構可以完美解決實時熱點新聞對於新聞推薦模型的影響問題。歡迎大家試用並給出建議。
相關文章
- 機器學習PAI全新功效——實時新聞熱點OnlineLearning實踐機器學習AI
- 機器學習的訓練集機器學習
- ML-機器學習實踐機器學習
- 機器學習實踐:TensorFlow最後一個epoch訓練損失函式顯著增大機器學習函式
- 經驗教訓:Instacart 的實時機器學習之旅 - shu機器學習
- TensorFlow在美團外賣推薦場景的GPU訓練優化實踐GPU優化
- 《Python機器學習實踐》簡介Python機器學習
- 如何實現實時機器學習? - huyenchip機器學習
- 多庫多表場景下使用 Amazon EMR CDC 實時入湖最佳實踐
- 機器學習: Metric Learning (度量學習)機器學習
- 評書:《美團機器學習實踐》機器學習
- 基於 KubeVela 的機器學習實踐機器學習
- 從 ClickHouse 到 ByteHouse:實時資料分析場景下的最佳化實踐
- 機器學習(一):5分鐘理解機器學習並上手實踐機器學習
- TDengine的實踐場景
- Sermant熱插拔能力在故障注入場景的實踐
- 機器學習落地遊戲實踐簡析機器學習遊戲
- 機器學習之邏輯迴歸:模型訓練機器學習邏輯迴歸模型
- 機器學習之支援向量機原理和sklearn實踐機器學習
- 飛槳PaddlePaddle單機訓練速度優化最佳實踐優化
- RocketMQ 在多 IDC 場景以及多隔離區場景下的實踐MQ
- 瀏覽器中的機器學習:使用預訓練模型瀏覽器機器學習模型
- 快手基於 Flink 構建實時數倉場景化實踐
- Machine Learning(機器學習)之二Mac機器學習
- Machine Learning(機器學習)之一Mac機器學習
- Machine Learning 機器學習筆記Mac機器學習筆記
- 機器學習在高德起點抓路中的應用實踐機器學習
- 實時數倉混沌演練實踐
- TiDB 在咪咕雲原生場景下的實踐TiDB
- Sermant在異地多活場景下的實踐
- 高併發場景下JVM調優實踐之路JVM
- 觀遠AI實戰 | 機器學習系統的工程實踐AI機器學習
- 《美團機器學習實踐》—— 讀後總結機器學習
- 谷歌機器學習43條規則:機器學習工程的最佳實踐經驗谷歌機器學習
- 像訓練Dota2一樣訓練真實機器人?Gibson Environment環境瞭解一下機器人
- 兩類常見場景下的雲原生閘道器遷移實踐
- 機器學習之訓練神經網路:最佳做法機器學習神經網路
- 飛槳PaddlePaddle單機訓練速度最佳化最佳實踐