推薦系統基礎 --ShusenWang

學習b站up主的ShusenWang的推薦系統筆記

指標

任何系統/算法/模型都需要評估,對于推薦系統的指標有消費指標和北極星指標,消費指標是衡量用戶對產品的使用情況,使用頻率廣度和深度,用于了解用戶的使用習慣,北極星指標是企業用于評估業務增長和成功的指標

消費指標

點擊率,收藏率,轉發率,點贊率,閱讀完成率,諸如此類不同的場景對應的消費指標不同

北極星指標

用戶規模,日活(DAU)月活(MAU)

實驗流程

離線測試 小流量A/B測試 全流量上線
離線測試與用戶沒有交互,僅使用歷史數據進行訓練
小流量A/B測試與小范圍的用戶進行交互
全流量上線就是推全給所有人使用該推薦算法

推薦流程

在這里插入圖片描述
推薦往往要求時間比較短,因此用這樣類似篩選的模式減少在線計算量。

召回

在這里插入圖片描述

召回通道

召回通道就是召回的方式,如圖召回有很多方式,后續會一一講解
在這里插入圖片描述

粗排,精排

在這里插入圖片描述
兩種架構幾乎相同,但是精排往往架構更加復雜,輸入特征,提取特征都大于粗排

小結

召回就是通過各種召回通道取出幾千條文章,粗排就是通過小型神經網絡選出幾百份,精排就是從幾百份中通過深度神經網絡再選出幾十份,重排就是做多樣性抽取,結構打散,插入廣告等(因為用戶不希望得到同質化嚴重的內容)。

A/B測試

A/B測試的作用,在離線測試上的算法不一定在在線測試取得好的效果,而不好的效果會對用戶造成惡劣的體驗,因此在小范圍的測試是有必要的,另一方面也可以調整推薦算法的參數。
假設該團隊實現了GNN召回通道,在離線測試中取得了正向的效果,下一步就是在小范圍用戶進行A/B測試考察新的召回通道對在線指標的影響。
GNN的深度為{1,2,3}

隨機分桶

假設所有用戶為b個,將所有用戶隨機分成n個筒,用戶量足夠大的情況下,這n個桶中各項指標應該是一樣的。
假設n=10
在這里插入圖片描述
使用4個桶,1,2,3作為實驗組,GNN深度分別為1,2,3,如果2號桶各項指標相對對照組有顯著提升,證明深度為2的GNN召回通道對在線指標有積極作用,值得推全。

流量使用

對于一個公司來說,有很多團隊都需要做實驗,對于每個桶做什么實驗就有一定要求,不能隨便給哪個桶安排哪種召回,粗排等。

分層實驗

分層實驗是將一個推薦流程分為多層,召回層,粗排層,精排層…

同層互斥

相同層中同一個同不能進行多個實驗,因為多個實驗并行造成的效果有可能是抵消導致1+1<2,也可能是互促導致1+1>2,這樣的結果導致不能評估某種召回或實驗是有效果還是沒有效果,因此同層互斥

不同層正交

不同層正交,意味著不同層的各個實驗的效果都是互不影響的,所以每一層都可以使用100%用戶

對照 --HoldOut機制

在這里插入圖片描述
取10%的用戶作為對照組,計算每一層的各項指標與對照組的差距(diff),用于評估各層的成效,一段考核結束后,將推薦系統推全,再隨機選擇10%的用戶作為holdout,剛開始時holdout與其他90%差距不大。
在一個項目中,有的指標是推薦系統剛上線就可以看到變化的,例如點擊率,點贊率,有的是長期以往才能看到效果的,比如頁面留存率等,但是考核期往往時間較短,為解決這個問題就需要反轉實驗。

反轉實驗

反轉實驗就是在新開的桶里保存一個舊策略來觀察他的長期指標變化
在這里插入圖片描述

小結

  • 分層實驗:同層互斥,不同層正交
  • Holdout:保留10%的用戶作為對照組,不受任何實驗影響,考察整個部門對項目的貢獻
  • 實驗推全:將實驗作用于100%的用戶,推全層與其他層正交
  • 反轉實驗:在推全層保留一部分使用舊策略,以此觀察長期指標的變化,長期觀察新舊策略diff

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913619.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913619.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913619.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux wsl2 docker 鏡像復用快速方法

GitHub項目中的devcontainer.json、Dockerfile構建了一個A項目的鏡像環境&#xff0c;現在我有一個文件夾&#xff0c;文件夾中只有一個b.py文件&#xff0c;此時我希望使用A項目的環境&#xff0c;如何實現&#xff1f;注意&#xff1a; 建議使用下面的方法2 解決方案&#xf…

(生活比喻-圖文并茂)http2.0和http3.0的隊頭阻塞,http2.0應用層解決,TCP層存在,3.0就是徹底解決,到底怎么理解區別???

說明一下&#xff1a; http屬于應用層協議&#xff0c;TCP和udp屬于傳輸層協議 文章目錄階段一&#xff1a;HTTP/1.1 的情況&#xff08;單車道收費站&#xff0c;一次過一輛&#xff09;階段二&#xff1a;HTTP/2 的情況&#xff08;多車道收費站&#xff0c;但出口只有一條路…

ARM環境openEuler2203sp4上部署19c單機問題-持續更新

問題01、報錯如下orcl:/home/oracledb15> export CV_ASSUME_DISTIDRHEL8 orcl:/home/oracledb15> $ORACLE_HOME/runInstaller -applyPSU /soft/37642901 Exception in thread "main" java.lang.UnsatisfiedLinkError: /u01/app/oracle/product/19.0.0/db_1/oui…

php成績分析系統單科分數分布分析202507

提交二維數據表&#xff0c;識別成績科目顯示科目選擇&#xff0c;選擇科目后顯示樣本數,平均分,最高分,最低分,中位數,柱狀圖圖表顯示各分值人數分布&#xff0c;表格顯示統計數據。 技術&#xff1a;html5css3ajaxphp 原生代碼實現。 效果圖&#xff1a; 下載&#xff1a; …

Redis Cluster 與 Sentinel 筆記

目錄 Redis 集群&#xff08;Cluster&#xff09;概述 Cluster 的工作原理 Cluster 配置與部署 Cluster 常見問題與限制 Redis Sentinel&#xff08;哨兵&#xff09;機制概述 Sentinel 的工作機制 Sentinel 配置與部署 Sentinel vs Cluster 總結 Redis 集群&#xff…

LLM視覺領域存在模型視覺識別不準確、細粒度視覺任務能力不足等科學問題

LLM視覺領域存在模型視覺識別不準確、細粒度視覺任務能力不足等科學問題 除了前面提到的數據集,還有一些用于評估視覺推理等能力的經典數據集。目前關于LLM視覺領域經典提示詞方面的名校或大公司論文較少,以下是相關科學問題、數據集及部分相關論文介紹: 科學問題 視覺推理…

Node.js worker_threads:并發 vs 并行

一、核心結論 Node.js 的 worker_threads 模塊實現的是 并行計算 &#xff0c;而非傳統意義上的“并發”。其通過操作系統級線程實現多核 CPU 的并行執行&#xff0c;同時保留 Node.js 單線程事件循環的并發模型。 二、關鍵概念解析 1. 并發&#xff08;Concurrency&#xff09…

gloo 多卡訓練

我們遇到了分布式訓練中的通信超時問題&#xff08;Connection closed by peer&#xff09;。根據錯誤信息&#xff0c;問題發生在梯度同步的屏障&#xff08;barrier&#xff09;操作時。以下是針對此問題的優化措施和代碼修改&#xff1a; 優化措施&#xff1a; 增強通信穩…

【Docker】在銀河麒麟ARM環境下離線安裝docker

1、前言 采用離線安裝的方式。 關于離線安裝的方式官網有介紹&#xff0c;但是說的很簡單&#xff0c;網址&#xff1a;Binaries | Docker Docs 官網介紹的有幾種主流linux系統的安裝方式&#xff0c;但是沒有kylin的&#xff0c;所以在此記錄一下。 在安裝過程中也遇到了些…

AUTOSAR進階圖解==>AUTOSAR_SWS_SOMEIPTransformer

AUTOSAR SOME/IP 轉換器規范詳解 基于AUTOSAR標準的SOME/IP轉換器協議解析與實現指南目錄 1. 介紹與功能概述2. SOME/IP架構 2.1 SOME/IP轉換器架構2.2 組件解釋2.3 層級說明 3. SOME/IP通信流程 3.1 客戶端/服務器通信序列3.2 通信流程解釋 4. SOME/IP消息結構 4.1 消息結構類…

Python 機器學習核心入門與實戰進階 Day 5 - 模型調參與交叉驗證技巧(GridSearchCV、KFold)

? 今日目標 理解模型調參的重要性&#xff08;避免欠擬合/過擬合&#xff09;掌握 GridSearchCV 的使用方法學習 K 折交叉驗證的基本流程與意義對比不同參數組合的表現使用 Pipeline 簡化流程&#xff08;進階&#xff09;&#x1f4d8; 一、調參思路方法描述Grid Search窮舉所…

Python打卡:Day47

復習日 浙大疏錦行

ACE-Step:AI音樂生成基礎模型

ACE-Step是什么 ACE-Step 是 ACE Studio 和 StepFun 聯合推出的一款開源音樂生成基礎模型&#xff0c;專為高效、連貫、可控的音樂創作而設計。它融合了擴散模型、深度壓縮自編碼器&#xff08;DCAE&#xff09;和輕量級線性變換器&#xff0c;生成速度比傳統大模型快約 15 倍…

Web前端: :is(通用選擇器)

:is(通用選擇器)CSS中的 :is() 選擇器是?個功能強?的偽類選擇器&#xff0c;它?于簡化復雜的選擇器&#xff0c;特別是在處理多個相似的選擇器時。:is() 選擇器接受 ?個選擇器列表作為參數&#xff0c;然后匹配列表中任何?個選擇器所選中的元素。:is() 選擇器核心概念基本…

【學習筆記】網絡設備(華為交換機)基礎知識 24 —— 以太網子接口基礎知識

**總結&#xff1a;分享華為交換機以太網子接口基礎知識&#xff1a;包含子接口的簡介、功能、分類以及二層以太網子接口配置終結子接口、三層以太網子接口配置終結子接口和檢查配置結果的相關命令 ** 一、子接口的概念 1、子接口的簡介以太網子接口&#xff1a;?是通過協議和…

在Docker中安裝nexus3(作為maven私服)

1. 為什么我不推薦安裝nexus2&#xff1f; 有兩個原因&#xff1a;&#xff08;1&#xff09;nexus2安裝麻煩&#xff0c;nexus3安裝更方便 &#xff08;2&#xff09;Nexus 3相對于Nexus 2進行了一些重要的改進和增強。它引入了新的存儲引擎、更多的倉庫類型支持、改進的權限…

一、MySQL 8.0 之《EXPLAIN ANALYZE 執行計劃》

文章目錄一、MySQL EXPLAIN ANALYZE 執行計劃指南主要功能實際執行性能分析詳細的執行統計性能瓶頸識別與普通 EXPLAIN 的區別使用場景查詢優化問題診斷總結二、EXPLAIN ANALYZE 執行計劃樣例分析執行順序解讀逐行詳細解釋第 7 行 (最內層)第 6 行第 5 行第 4 行第 3 行第 2 行…

Google I/O Extended :2025 Flutter 的現狀與未來

大家好&#xff0c;我是 Flutter GDE 郭樹煜&#xff0c;Github GSY 項目的維護人&#xff0c;今天主要分享的內容是「Flutter 的現狀與未來」&#xff0c;可能今天更多會是信息科普類型的內容&#xff0c;主要是分享關于 Flutter 的現狀與未來 現狀 其實 Flutter 從開源到現在…

軟考(軟件設計師)數據庫原理:事務管理,備份恢復,并發控制

數據庫事務管理與備份恢復 事務&#xff08;Transaction&#xff09; 是數據庫管理系統中執行的一個不可分割的工作單元&#xff0c;它包含一組 SQL 操作&#xff0c;這些操作要么全部成功執行&#xff0c;要么全部不執行。 事務的四大特性&#xff08;ACID&#xff09;&…

【牛客刷題】相遇

文章目錄 一、題目介紹1.1 題目描述1.2 輸入描述1.3 輸出描述1.4 示例二、解題思路2.1 核心算法設計2.2 性能優化關鍵2.3 算法流程圖三、解法實現3.1 解法一:基礎實現3.1.1 初級版本分析3.2 解法二:優化版本(推薦)3.2.1 優化版本分析一、題目介紹 1.1 題目描述 街道可以看…