預測服務基於華爲分析服務(Analytics Kit)上報的用戶行爲數據和屬性,結合機器學習技術,實現特定目標人羣的精準預測。針對預測生成的細分受衆羣體,開展和優化相關運營舉措,如經過A/B測試評估運營活動效果、遠程配置特定受衆羣體的專屬套餐等,可有效幫助產品提升用戶留存,增長轉化。git
使用預測服務前,須要先集成華爲分析服務的SDK,這樣系統才能夠順利開展流失、付費、復購以及自定義預測任務。在詳情界面能夠查看相關預測人羣的高中低機率對應人羣數量,及其相應的屬性分佈(好比詳情頁的高几率流失人羣,表示該人羣在將來7日內有較高几率流失,您能夠經過相關卡片,觀察其行爲特色並制定針對性運營計劃)。github
預測任務和預測詳情界面以下所示:網絡
*數據爲模擬機器學習
預測模型構建流程
在構建預測模型的時候,首先是肯定咱們要預測什麼,即確立預測的統計口徑,而後根據統計口徑圍繞用戶特色尋找對應相關的特徵,經過清洗和採樣獲得數據集。咱們把數據集二八分獲得訓練集和驗證集,在線下進行不斷實驗找到最優特徵和參數,最後根據相關數據在線上調度訓練預測任務。ide
具體流程圖以下所示:學習
特徵、模型選擇和調優
特徵探索測試
項目初期,咱們分析數據,從屬性、行爲、需求三方面入手,尋找與業務有可能相關的變量,構建特徵表,好比用戶近7天的活躍天數、使用時長等行爲數據。優化
在肯定特徵以後,下一步就是在實驗中進行模型的選擇和調優了,業界經常使用的樹形模型有xgboost、隨機森林、GBDT等,把咱們的數據集用這幾種模型進行訓練,發如今隨機森林上效果較好,其採用bagging策略提升模型擬合能力和泛化能力。ui
除了模型參數,也要考慮採樣比,尤爲是對於付費預測這種正負樣本懸殊的狀況(大約1:100),綜合考慮Accuracy和Recall, 付費訓練時將正負樣本比例採樣至1.5:1, 以提升模型付費用戶召回率。url
超參與特徵確立
訓練出了合適的模型,但並不是全部特徵都是有用的,無用特徵除了可能會影響模型效果,也會減慢訓練速度。在初期版本中,經過實驗肯定合適的超參和特徵,特徵按照特徵重要性排序選擇權重較大的,在線上版本中配置對應的超參和特徵。
在版本上線以後還須要不斷觀察數據、分析數據、補充特徵,咱們在後續版本中主要新增了事件特徵與趨勢特徵,補充後總計400+特徵。
自動超參搜索
在挖掘出更多的特徵以後,若是都是全量特徵訓練可能效果未必會好,並且也會很是耗時。同時,可能每一個App訓練時可能最優的超參和特徵並不相同,最好是每一個App分開訓練且使用本身最優的超參和特徵。
爲了解決這些問題,咱們增長了自動的超參搜索,能夠在配置好的參數空間裏搜索,找到並保存合適的訓練參數。搜索完以後的最優超參保存在以下結構的hive表中。
當前的總體流程以及外部依賴以下所示:
將來方向
在將來提升模型效果上,咱們也有不少思考,預研的方向大體以下:
- 神經網絡
當前的特徵規模不斷擴大(400+),而用戶行爲的規律又十分複雜,除了使用原有的樹形模型,也在嘗試利用神經網絡強大的表達能力,結合行爲特徵訓練出更準確的預測模型。
- 聯邦學習
對於各App、各租戶數據不可互通的問題,能夠經過橫向聯邦學習聯合各個App、各個租戶間的模型,在數據不互通的前提下協同訓練。
- 時序特徵
不一樣App的用戶每週上報數百個事件(涵蓋1000+種類),訪問近百個頁面,經過這些時序數據能夠構造出不一樣用戶的長短時間行爲特徵,提升不一樣場景預測的準確率。用戶訪問頁面的行爲有較高的時序特色,能夠加工成時間序列特徵,有較高的研究價值。
- 特徵挖掘和加工
對目前的特徵集擴充、補充,一方面挖掘更多的相關特徵好比平均使用間隔、設備屬性、安裝渠道、國家省市等特徵。另外一方面基於現有特徵經過離散化、歸一化、開方、平方、笛卡爾積、多重笛卡爾積等等方法構造更多新特徵。
>>瞭解更多華爲預測服務詳情
>>訪問華爲開發者聯盟官網,瞭解更多相關內容
>>獲取開發指導文檔
>>華爲移動服務開源倉庫地址:GitHub、Gitee
點擊右上角頭像右方的關注,第一時間瞭解華爲移動服務最新技術