機器學習模型在雲音樂指標異動預測的應用實踐
一、專案背景
當前雲音樂核心指標,絕大多數由資料倉儲團隊提供資料支撐。資料質量體系標準的評估,依託網易數帆資料開發治理平臺的資料質量中心(簡稱:dqc)功能。在指標異動的監控應用方面,主要透過事前規則設定、事中任務監控、事後異常觸達等過程,實現資料質量的全鏈路監控。其準確性,強依賴於人工閾值設定的合理性,而在業務發展的不同階段或時間週期下,指標的波動趨勢形態、特點往往是不同的,人工閾值缺乏普適性。綜合來看,現有監控方式存在以下不足:
缺乏靈活性:閾值設定太寬,容易漏報;設定太緊,誤報嚴重。
無法感知業務的動態變化:如:緩慢持續變化趨勢、節假日效應等。
二、專案思路和方案
dau作為雲音樂核心KPI指標,本文方案的選型、可行性評估,以雲音樂dau指標作為試點應用案例。在dau指標變化方面,dqc存在無法及時、準確感知指標異常。如:在21年某月設定的波動閾值,在22年上半年誤報率非常高,被動調整閾值以適應變化;在2022年X月底,某端dau呈現持續緩慢下降的趨勢,現有dqc無法感知。
2.1 目標
更準確:提升指標異動發現的準確性
更科學:提高指標異動監測的科學性
易複用:可快速複用到其他業務和指標
2.1 行業案例
在指標異常發現方面,業內有較多的應用產品,具體如下:
2.2 技術選型
2.2.1 可選方案
(1)3-sigma
原理
3σ原則又稱為拉依達準則, 3σ原理可以簡單描述為:若資料服從正態分佈,則異常值被定義為一組結果值中與平均值的偏差超過三倍標準差的值。即在正態分佈的假設下,距離平均值三倍 σ之外的值出現的機率很小,因此可認為是異常值。
侷限
3σ原則侷限於正態或近似正態分佈的樣本資料,以測量次數充分大為前提(樣本>10),當測量次數少的情形用準則剔除粗大誤差是不夠可靠的。
(2)Holt Winters
原理
常見時間序列資料處理演算法有全期平均法、移動平均法、指數平滑法。簡單的全期平均法是對時間數列的過去資料全部加以同等利用;移動平均法則不考慮較遠期的資料,並在加權移動平均法中給予近期資料更大的權重;而指數平滑法則相容了全期平均和移動平均所長,不捨棄過去的資料,但是僅給予逐漸減弱的影響程度,即隨著資料的遠離,賦予逐漸收斂為零的權數。
據平滑次數不同,指數平滑法分為:一次指數平滑法、二次指數平滑法和三次指數平滑法等。一次指數平滑法針對沒有趨勢和季節性的序列,二次指數平滑法針對有趨勢但沒有季節性的序列,三次指數平滑法針對有趨勢也有季節性的序列。
侷限
指數平滑法是一種時間序列預測方法,其預測依據來源於歷史資料,對營銷活動引起需求變化無法感知。
不管是否自適應,指數平滑法都較難找到合適的指數平滑係數引數,對需求變化的調整存在滯後性,無法對一定時間內需求突變進行預測。
(3)XGBoost
原理
XGBoost是Boost系列演算法中的一員,Boost根本思想在於透過多個簡單的弱分類器,構建出準確率很高的強分類器。簡單地來說,XGBoost每一步都產生一棵訓練好的CART子樹,一棵子樹處理一個資料特徵維度,最後將所有子樹的結果加權計算得到最後的預測。
侷限
XGBoost作為監督演算法,訓練資料集必須存在標籤列。
演算法引數多,調參複雜,需要對XGBoost進行眾多除錯才能發揮XGBoost優勢。
2.2.2 評估指標
召回率(Recall):表示原始樣本資料的異常點有多少被演算法預測正確。
準確率(Precision):表示演算法預測為異常的點中有多少是真正的異常點。
正確率(Acc):表示演算法預測當前資料點是否異常的正確率。
F1-score:召回率和準確率的綜合指標,越高表示演算法表現越好。
2.2.3 資料集
200個原始資料,其中異常點個數為19個。指標趨勢如下,其中標註圓點為異常點。
2.2.4 評估策略
使用dqc的計算邏輯進行預測,其中7日環比變化率超過5%認為是異常點
使用3 sigma的計算邏輯進行預測
使用holt winters演算法進行預測,其中輸入資料為20210401到當日全量的dau
使用XGBoost演算法進行預測,其中XGBoost演算法的輸入資料為單個特徵(dau時間序列資料)
使用XGBoost演算法進行預測,其中XGBoost演算法的輸入資料為7個特徵(7個連續dau資料一組)
2.2.5 評估結論
資料結果
視覺化結果
XGBoost演算法的表現明顯優於dqc、Holt Winters等演算法,能找出最多的異常點並且錯報最少。
dqc雖然能找出部分異常點,但是在固定閾值時錯報率太高;實際使用時如果選擇較為小的閾值將會經常錯報,如果設定較大閾值將會漏報。
3sigma找不到異常點,也不進行報錯,可能需要用其他閾值(非3sigma)。
Holt Winters演算法雖然找出了大部分異常點(Recall高),但是錯報率也稍高(Precision低),而且需要一定的資料才能預測準確,上限低。
XGBoost演算法找出了大部分異常點,錯報率低。其中兩個XGBoost演算法使用了不同數量的特徵,使用多特徵的xg演算法表現優於單特徵XGBoost演算法,表明XGBoost演算法上限高,可以使用更多的相關特徵來提升XGBoost演算法。
融合演算法找到了所有異常點,但是錯報率相對提升。
後續可以選擇更好的多個演算法的融合策略,提高魯棒性。
以上演算法使用的資料存在手動標註,可能存在不合理的異常點。
2.2 技術框架
2.2.1 技術架構
基於當前杭研猛獁大資料平臺質量中心,融合機器學習演算法功能等,技術架構設計如下:
2.2.2 處理流程
處理流程
結合2.2.5評估結果,綜合評價指標的優劣。對於指標異動發現,採取dqc+模型預測結合方式。具體流程如下:
融合策略
考慮到dqc異動發現閾值設定嚴格時的誤報,以及dqc閾值設定寬鬆時漏報,透過整合演算法預測異常在多個指標的表現優勢,制定策略集,進而判定指標異常與否,示意圖如下:
三、專案影響力與產出價值
3.1 技術價值
更準確:指標異動發現召回率提升74%,準確率提升40%,正確率提升20%等
更科學:整合模型預測優勢,透過模型學習能力,可感知業務的動態變化,同時解決了dqc閾值缺乏靈活性的問題
易複用:容器化部署,配置化接入,快速複用
3.2 產品價值
聯合杭研平臺技術能力,在產品化方面做了探索。
擴充“資料質量中心”功能,在DQC監控功能的基礎上,接入機器學習平臺。功能流程如下:
3.2.1 功能框架
3.2.2 產品配置
功能配置:在原有上下限、波動閾值、異常值監控的基礎上,提供機器學習演算法預測異常的功能,並對於週期性、週期波動等提供可配置化功能。
結果反饋:結果反饋,主要針對有監督學習演算法,對於異動預測的結果,人工確認後,反饋給平臺,進一步提升模型的可靠性。
四、專案未來規劃和展望
4.1 模型迭代
功能最佳化:當前方案在資料指標上,雖然有極高的召回率和良好的準確率,但還存在一定量的誤報,雖很好的滿足了指標異動發現的業務要求,但還需最佳化。
普適性:演算法的應用有其適用的場景,在覆蓋更多業務和指標方面,是否依然有良好的表現,或需要擴充更多模型演算法的接入,還有待挖掘。
4.2 產品化迭代
基於當前智慧演算法特點,推進產品化最終落地需要解決兩個問題:
(1)如何引導使用者選擇相應的指標,從而讓智慧演算法產生正向而不是負向收益。
解決方案:明確當前演算法適用的指標,並透過產品引導的方式,幫助使用者選擇適當的指標,比如週期性要求。另外結合一些技術手段,獲取到原始資料樣本,並結合資料樣本特點自動匹配對應的演算法模型。
(2)如何解決初始樣本資料不足導致演算法預測效果不理想問題。
解決方案:可以將指標資料分為三個階段,更高階段對於智慧演算法依賴更強,也更智慧,預測效果也更好。
①新指標,還未投產或者資料樣本不足
②已有指標,已經投產並且資料樣本充足
③已有指標,資料樣本充足並且可以人工標註
對於第①階段的新指標,智慧演算法很難獲得較好的推薦,需要引導使用者配置閾值,作為指標冷啟動階段的有效監控手段,同時結合結果反饋機制,不斷收集使用者反饋,完善資料樣本及標註,並在資料樣本足夠並演算法效果評估後切換成第二種或者第三種.。
對於第②階段的指標,可以透過一些統計學或者無監督的演算法預測閾值,同時結合結果反饋機制,不斷收集使用者反饋,完善資料樣本及標註,並在資料樣本足夠並演算法效果評估後切換成第三種.。
對於第③階段的指標,資料已經比較成熟,可以很好的利用 Xgboost 等較成熟的預測演算法或者機器學習訓練模型,以獲取更好的預測結果,同時結合結果反饋機制,不斷收集使用者反饋,完善資料樣本及標註,並完善演算法的準確率和召回率等指標。
後記
從“數字化”到“數智化”的演進,資料建設的技術體系,趨於生態化和多元化。技術的融合創新,賦予資料以智慧的魔力。筆者的實踐經驗,始於開源技術,感謝開源的力量。如網易價值觀所倡導:從0到1是創新,從1到1.1也是。我們會繼續保持極客精神,為資料智慧,奉獻熱愛!
來自 “ 網易雲音樂技術團隊 ”, 原文作者:格魯、楚喬;原文連結:http://server.it168.com/a2022/1121/6776/000006776173.shtml,如有侵權,請聯絡管理員刪除。
相關文章
- 網易雲音樂機器學習平臺實踐機器學習
- RocketMQ 在網易雲音樂的實踐MQ
- 雲音樂預案平臺實踐
- 雲音樂服務端應用啟動時間下降40%實踐分享服務端
- Curve 替換 Ceph 在網易雲音樂的實踐
- 雲音樂預估系統建設與實踐
- Disruptor在雲音樂特徵服務中的應用特徵
- 車輛動力學模型在模擬測試中的應用實踐模型
- MRCP在美團語音互動中的實踐和應用
- 大模型在程式碼缺陷檢測領域的應用實踐大模型
- 機器學習在啟動耗時測試中的應用及模型調優(一)機器學習模型
- 從探索到突破:網易雲音樂Android自動化效能測試實踐Android
- 基於網易雲音樂的 SPA 應用
- 自研磁碟型特徵儲存引擎RDB在雲音樂的實踐特徵儲存引擎
- Python爬蟲實踐-網易雲音樂Python爬蟲
- 雲音樂FeatureStore建設與實踐REST
- 雲音樂 Swift 混編 Module 化實踐Swift
- 實時增量學習在雲音樂直播推薦系統中的實踐
- 基於 GraphQL 的雲音樂 BFF 建設實踐
- 機器學習在高德起點抓路中的應用實踐機器學習
- 實時增量學習在雲音樂直播推薦系統中的工程實踐
- 雲音樂隱性關係鏈的探索與實踐
- 直播預告 | 雲原生在CloudQuery的應用與實踐Cloud
- vivo前端智慧化實踐:機器學習在自動網頁佈局中的應用前端機器學習網頁
- 指標圈選在資料應用平臺的實現指標
- 雲音樂中 In-App Purchase 實踐總結篇APP
- Python爬蟲實踐--爬取網易雲音樂Python爬蟲
- 音樂ChatGPT時刻來臨!「天工SkyMusic」音樂大模型今日啟動邀測ChatGPT大模型
- 語音識別 (ASR) 模型測試 之 評估指標探索模型指標
- QQ音樂的動效歌詞是如何實踐的?
- 雲音樂資料資產化建設的思考與實踐
- 機器學習在交通標誌檢測與精細分類中的應用機器學習
- 用機器學習對座席應答延遲的預測機器學習
- [轉載] java避免空指標異常_第1部分:在現代Java應用程式中避免空指標異常Java指標
- 網易雲音樂基於Flink實時數倉實踐
- 大模型在新能源汽車行業的應用與實踐大模型行業
- 遊戲音樂與影視音樂的異同遊戲
- AI音樂,騰訊音樂、網易雲音樂的新版圖?AI