本集简介
双语字幕
仅展示文本字幕,不包含中文音频;想边听边看,请使用 Bayt 播客 App。
你有没有好奇过?
你有没有好奇过?
其实啊,这背后是嗯非常非常复杂,而且迭代特别快的一种推荐技术在工作。
其实啊,这背后是嗯非常非常复杂,而且迭代特别快的一种推荐技术在工作。
今天呢,我们就来深入的扒一扒,呃,一份来自快手 OneRec 团队的技术报告,就是关于他们的那个最新的推荐框架,叫 OneRec V two。
今天呢,我们就来深入的扒一扒,呃,一份来自快手 OneRec 团队的技术报告,就是关于他们的那个最新的推荐框架,叫 OneRec V two。
这个可不是只是简单升个级,嗯,它很可能代表了生辰石推荐的一个呃新方向。
这个可不是只是简单升个级,嗯,它很可能代表了生辰石推荐的一个呃新方向。
行,那咱们就一起来梳理处理这份报告。
行,那咱们就一起来梳理处理这份报告。
帮你快速抓住里面那些嗯核心的创新点,还有关键数据,以及它对我们平时用的这些推荐服务到底意义是什么。
帮你快速抓住里面那些嗯核心的创新点,还有关键数据,以及它对我们平时用的这些推荐服务到底意义是什么。
准备好了吗?
准备好了吗?
那我们就这开始吧。
那我们就这开始吧。
嗯,对,现在这个生成式 AI 啊,确实在改变很多领域。
嗯,对,现在这个生成式 AI 啊,确实在改变很多领域。
推荐系统肯定是其中之一。
推荐系统肯定是其中之一。
以前那种老的推荐方法,就是所谓的瀑布流架构,呃,有点像,怎么说呢,工厂流水线作业。
以前那种老的推荐方法,就是所谓的瀑布流架构,呃,有点像,怎么说呢,工厂流水线作业。
一步一步来,但这样呢计算资源容易分散,而且呢每个环节优化的目标啊可能还不太一样,有点矛盾。
一步一步来,但这样呢计算资源容易分散,而且呢每个环节优化的目标啊可能还不太一样,有点矛盾。
嗯,这个生成式推荐呢,思路就不一样了。
嗯,这个生成式推荐呢,思路就不一样了。
他把整个过程看成是一个嗯端到端的序列生成任务,就好像是让模型直接给你写出来一个你可能会喜欢的视频列表。
他把整个过程看成是一个嗯端到端的序列生成任务,就好像是让模型直接给你写出来一个你可能会喜欢的视频列表。
哦,直接生成列表。
哦,直接生成列表。
对,这样做的好处就是能直接去优化我们最终关心的那个目标。
对,这样做的好处就是能直接去优化我们最终关心的那个目标。
比如说你看视频的总时长啊,或者点赞、评论这些互动行为。
比如说你看视频的总时长啊,或者点赞、评论这些互动行为。
而且模型的那个 M F U,就是模型 FLOPS 利用率。
而且模型的那个 M F U,就是模型 FLOPS 利用率。
呃,通俗点说就是模型的忙碌程度或者说效率吧,通常也会更高。
呃,通俗点说就是模型的忙碌程度或者说效率吧,通常也会更高。
明白了,就是让算力花在刀刃上。
明白了,就是让算力花在刀刃上。
哎,可以这么理解。
哎,可以这么理解。
不过呢,就算是之前已经在快手跑得很成功的那个 OneRack V 1啊。
不过呢,就算是之前已经在快手跑得很成功的那个 OneRack V 1啊。
他也碰到了挑战,主要就是两方面吧。
他也碰到了挑战,主要就是两方面吧。
第一个是计算效率有点到瓶颈了,你想想看啊,在 V 1那个架构里面,呃,报告里说。
第一个是计算效率有点到瓶颈了,你想想看啊,在 V 1那个架构里面,呃,报告里说。
有高达97.66%的计算量都花在理解你的历史行为,就是那个上下文编码上。
有高达97.66%的计算量都花在理解你的历史行为,就是那个上下文编码上。
哇,这么多!
哇,这么多!
对,而不是真正用来生成那个推荐列表。
对,而不是真正用来生成那个推荐列表。
这就像一个作者,他花了97趴的时间去查资料、做笔记,结果只用3趴的时间来写作。
这就像一个作者,他花了97趴的时间去查资料、做笔记,结果只用3趴的时间来写作。
肯定高不了。
肯定高不了。
是吧?
是吧?
这就限制了模型想做大都很难。
这就限制了模型想做大都很难。
然后第二个挑战呢,就是它那个强化学习方法有点局限,唯一主要靠一个所谓的奖励模型来判断推荐的好不好。
然后第二个挑战呢,就是它那个强化学习方法有点局限,唯一主要靠一个所谓的奖励模型来判断推荐的好不好。
但这有点像请了个裁判。
但这有点像请了个裁判。
嗯,这个裁判的判断标准啊,可能本身就不完美。
嗯,这个裁判的判断标准啊,可能本身就不完美。
然后模型呢,有时候就学聪明了,它不去琢磨怎么让你真正满意,而是去琢磨怎么讨好这个裁判,拿高分。
然后模型呢,有时候就学聪明了,它不去琢磨怎么让你真正满意,而是去琢磨怎么讨好这个裁判,拿高分。
啊,就是所谓的奖励 Hacking。
啊,就是所谓的奖励 Hacking。
没错,就是这个意思。
没错,就是这个意思。
而且这种学习方式,它的那个采样效率也不算特别高。
而且这种学习方式,它的那个采样效率也不算特别高。
我明白了,等于说,唯一虽然跑起来了,但是呢有点费劲,计算开销大,而且学东西的方法呢,也不够实诚。
我明白了,等于说,唯一虽然跑起来了,但是呢有点费劲,计算开销大,而且学东西的方法呢,也不够实诚。
可能会被带偏。
可能会被带偏。
那这个 OnePlus V two 它是怎么来搞定这两个问题的呢?
那这个 OnePlus V two 它是怎么来搞定这两个问题的呢?
听起来它带来了两个挺核心的改进。
听起来它带来了两个挺核心的改进。
对头,OnePlus V two 的第一个核心创新。
对头,OnePlus V two 的第一个核心创新。
他们提出了一个叫做惰性纯解毒器架构,英文是 Lazy Decoder Only Architecture。
他们提出了一个叫做惰性纯解毒器架构,英文是 Lazy Decoder Only Architecture。
这个惰性 lazy 用的特别有意思。
这个惰性 lazy 用的特别有意思。
他做了一个非常大胆的决定,就是干脆把那个消耗了9成多算力的 Encoder 部分给砍掉了。
他做了一个非常大胆的决定,就是干脆把那个消耗了9成多算力的 Encoder 部分给砍掉了。
等等,是完全去掉 Encoder 那那模型怎么去理解用户的历史信息呢?
等等,是完全去掉 Encoder 那那模型怎么去理解用户的历史信息呢?
比如说我看过什么,喜欢点赞什么这类信息。
比如说我看过什么,喜欢点赞什么这类信息。
哎,问到点子上了,这恰恰就是这个惰性架构的精妙之处。
哎,问到点子上了,这恰恰就是这个惰性架构的精妙之处。
他不是说完全不要用户历史信息了,而是把这些信息,就是我们说的上下文,看作是静态的背景资料,先放在一边。
他不是说完全不要用户历史信息了,而是把这些信息,就是我们说的上下文,看作是静态的背景资料,先放在一边。
只有当 decoder 在生成推进结果需要参考这些背景资料的时候。
只有当 decoder 在生成推进结果需要参考这些背景资料的时候。
他才通过一种叫交叉注意力 Cross Attention 的机制,懒洋洋的过去看一眼,拿到需要的信息就行了。
他才通过一种叫交叉注意力 Cross Attention 的机制,懒洋洋的过去看一眼,拿到需要的信息就行了。
哦,有点像开卷考试。
哦,有点像开卷考试。
需要的时候再去翻书查一下。
需要的时候再去翻书查一下。
哎,这个比喻挺形象的,就是按需索取,而不是像以前那样,先把整本书,用户历史,从头到尾精读一遍,编码。
哎,这个比喻挺形象的,就是按需索取,而不是像以前那样,先把整本书,用户历史,从头到尾精读一遍,编码。
这种做法带来的好处,那是立竿见影。
这种做法带来的好处,那是立竿见影。
首先就是计算量,哗一下就降下来了。
首先就是计算量,哗一下就降下来了。
报告里的图一显示的特别清楚。
报告里的图一显示的特别清楚。
跟 V 一比,同样是10亿参数规模的模型,V 二的总计算量减少了足足94%。
跟 V 一比,同样是10亿参数规模的模型,V 二的总计算量减少了足足94%。
百分之九十四,这太惊人了。
百分之九十四,这太惊人了。
这个数字其实揭示了一个挺重要的点,可能以前我们觉得必须做的很多上下文编码计算,对最终生成推荐结果来说,嗯,并不是那么不可或缺。
这个数字其实揭示了一个挺重要的点,可能以前我们觉得必须做的很多上下文编码计算,对最终生成推荐结果来说,嗯,并不是那么不可或缺。
那计算效率上来了,直接就带来了第二个好处,就是这个架构的可扩展性特别好。
那计算效率上来了,直接就带来了第二个好处,就是这个架构的可扩展性特别好。
因为省钱省力了嘛,那你就可以把模型做更大。
因为省钱省力了嘛,那你就可以把模型做更大。
WangRank V 2,他们成功的把模型规模扩展到了80亿参数。
WangRank V 2,他们成功的把模型规模扩展到了80亿参数。
而且效果是随着模型增大而稳定提升的,这个就比较符合 AI 领域常说的那个缩放定律,Scaling Law。
而且效果是随着模型增大而稳定提升的,这个就比较符合 AI 领域常说的那个缩放定律,Scaling Law。
嗯嗯,越大越好。
嗯嗯,越大越好。
对。
对。
图一和图六的数据都说明了这一点,更大的模型通常就意味着它更聪明、理解和预测能力更强嘛。
图一和图六的数据都说明了这一点,更大的模型通常就意味着它更聪明、理解和预测能力更强嘛。
理解了,就是砍掉 Encoder。
理解了,就是砍掉 Encoder。
让 decoder 按需查阅,大大省了计算量,模型就能做得更大更强。
让 decoder 按需查阅,大大省了计算量,模型就能做得更大更强。
哎,报告里好像还提到了不少具体的优化技巧,进一步提升效率的。
哎,报告里好像还提到了不少具体的优化技巧,进一步提升效率的。
比如那个 GQA、键值共享,还有某 A 什么的,这些听起来有点技术。
比如那个 GQA、键值共享,还有某 A 什么的,这些听起来有点技术。
对对,细节扩码。
对对,细节扩码。
为了把效率压榨到极致,他们还用了一些小妙招。
为了把效率压榨到极致,他们还用了一些小妙招。
比如那个 GQA,Grouped Query Attention,你可以把它想象成一种更聪明的注意力计算方法。
比如那个 GQA,Grouped Query Attention,你可以把它想象成一种更聪明的注意力计算方法。
它能用更少的内存处理同样甚至更长的用户历史序列。
它能用更少的内存处理同样甚至更长的用户历史序列。
让模型能看得更远,表4的数据就显示效果不错。
让模型能看得更远,表4的数据就显示效果不错。
嗯,内存小了能看的东西反而多了。
嗯,内存小了能看的东西反而多了。
是这个意思,然后还有那个键值共享,Key-Value Sharing。
是这个意思,然后还有那个键值共享,Key-Value Sharing。
这个更有意思,它让点解读器里面,嗯,相邻的好几层可以共享课堂笔记。
这个更有意思,它让点解读器里面,嗯,相邻的好几层可以共享课堂笔记。
嗯,共享笔记。
嗯,共享笔记。
对,就是共用从用户历史里提炼出来的一些关键信息表示。
对,就是共用从用户历史里提炼出来的一些关键信息表示。
这样就不用每一层都辛辛苦苦重新去算一遍,参数量和计算量都省了。
这样就不用每一层都辛辛苦苦重新去算一遍,参数量和计算量都省了。
表3和图11A显示,就算共享比例很高,对最终效果影响也不大,挺划算的。
表3和图11A显示,就算共享比例很高,对最终效果影响也不大,挺划算的。
确实挺巧妙的。
确实挺巧妙的。
那 MOA 呢?这个好像最近很火。
那 MOA 呢?这个好像最近很火。
模型内部啊,不再是只有一个庞大的通才网络来处理所有信息了,而是养了一群专家 experts,每个专家可能只擅长处理某一类信息。
模型内部啊,不再是只有一个庞大的通才网络来处理所有信息了,而是养了一群专家 experts,每个专家可能只擅长处理某一类信息。
当一个信息进来的时候,系统会判断,哎,哪个或者哪几个专家最擅长处理这个,然后就只把这个任务交给这些被选中的专家来干活。
当一个信息进来的时候,系统会判断,哎,哪个或者哪几个专家最擅长处理这个,然后就只把这个任务交给这些被选中的专家来干活。
哦,其他人就休息。
哦,其他人就休息。
对,其他专家就摸鱼休息。
对,其他专家就摸鱼休息。
这样呢,整个模型可以包含很多专家,总的知识量很大,但每次实际干活的时候,只动用一小部分计算资源,就非常高效。
这样呢,整个模型可以包含很多专家,总的知识量很大,但每次实际干活的时候,只动用一小部分计算资源,就非常高效。
报告里就提到,一个包含40亿参数的 MoE 模型,每次实际只需要激活5亿参数。
报告里就提到,一个包含40亿参数的 MoE 模型,每次实际只需要激活5亿参数。
它的效果啊,居然能超过一个需要完全激活20亿参数的传统密集模型。
它的效果啊,居然能超过一个需要完全激活20亿参数的传统密集模型。
哇,四两拨千斤的感觉。
哇,四两拨千斤的感觉。
差不多就是这个意思,见表5和图7。
差不多就是这个意思,见表5和图7。
好的,明白了。
好的,明白了。
所以第一个大创新,惰性纯结构器加上这些优化技巧,核心目标就是让模型跑得更快、更省、能做得更大。
所以第一个大创新,惰性纯结构器加上这些优化技巧,核心目标就是让模型跑得更快、更省、能做得更大。
那第二个核心创新呢?
那第二个核心创新呢?
是不是就是解决 V 1那个强化学习不够实诚的问题?
是不是就是解决 V 1那个强化学习不够实诚的问题?
完全正确。
完全正确。
第二个核心创新,他们叫基于真实世界用户互动的偏好对齐。
第二个核心创新,他们叫基于真实世界用户互动的偏好对齐。
英文是,Preference Alignment with Real World User Interactions。
英文是,Preference Alignment with Real World User Interactions。
核心思想就是,咱别老盯着那个可能被糊弄的裁判了,对吧?
核心思想就是,咱别老盯着那个可能被糊弄的裁判了,对吧?
嗯,我们直接从用户在真实世界里面的行为反馈里面去学习。
嗯,我们直接从用户在真实世界里面的行为反馈里面去学习。
看看用户到底用实际行动给哪些内容投了赞成票,给哪些投了反对票。
看看用户到底用实际行动给哪些内容投了赞成票,给哪些投了反对票。
更直接了。
更直接了。
对,更直接。
对,更直接。
这里面有两个关键点。
这里面有两个关键点。
第一个叫时长感知奖励塑造,Duration-Aware Reward Shaping。
第一个叫时长感知奖励塑造,Duration-Aware Reward Shaping。
这个是为了解决一个偏差问题。
这个是为了解决一个偏差问题。
我们知道,不能简单的说,你看一个视频时间长,就代表你特别喜欢它。
我们知道,不能简单的说,你看一个视频时间长,就代表你特别喜欢它。
对吧?
对吧?
对,可能视频本身就很长。
对,可能视频本身就很长。
没错,一个你从头看到尾的1分钟短视频,可能比一个你只看了开头3分钟的10分钟长视频,更能说明你的偏好。
没错,一个你从头看到尾的1分钟短视频,可能比一个你只看了开头3分钟的10分钟长视频,更能说明你的偏好。
所以他们就设计了一种更公平的比较方法,先把你看过的视频按照他们自己的时长,分分组。
所以他们就设计了一种更公平的比较方法,先把你看过的视频按照他们自己的时长,分分组。
比如说,1~2分钟的放一组,5~10分钟的放另一组。
比如说,1~2分钟的放一组,5~10分钟的放另一组。
然后呢,对于一个新推荐给你的视频,看看你实际播放了多少时间。
然后呢,对于一个新推荐给你的视频,看看你实际播放了多少时间。
然后跟你之前看过的,属于同一个时长分组的那些视频比,能排在什么位置?
然后跟你之前看过的,属于同一个时长分组的那些视频比,能排在什么位置?
嗯,比如说能不能排进前25趴?
嗯,比如说能不能排进前25趴?
哦,在同类里面比排名。
哦,在同类里面比排名。
对。
对。
用这个相对排名,或者说百分位排名,Quantile,作为一个归一化的用户偏好得分,记作 QI 这个更能反映你对这个视频的偏好程度。
用这个相对排名,或者说百分位排名,Quantile,作为一个归一化的用户偏好得分,记作 QI 这个更能反映你对这个视频的偏好程度。
然后他们就用这种排名高的,比如说 QI 在前25趴,作为正样本,就是你喜欢的,标记为 AI 等于 PLUS1。
然后他们就用这种排名高的,比如说 QI 在前25趴,作为正样本,就是你喜欢的,标记为 AI 等于 PLUS1。
而那些你明确点了不喜欢或者很快划走的。
而那些你明确点了不喜欢或者很快划走的。
就作为负样本,标记为 AI 等于-1。
就作为负样本,标记为 AI 等于-1。
嗯,这个思路确实更合理,等于是在相似长度的视频里做比较,把视频本身长短的干扰给剔除了。
嗯,这个思路确实更合理,等于是在相似长度的视频里做比较,把视频本身长短的干扰给剔除了。
嗯。
嗯。
那有了这些来自真实用户的正负样本之后,模型怎么利用它们来学习呢?
那有了这些来自真实用户的正负样本之后,模型怎么利用它们来学习呢?
这里是不是也得有新算法支持?
这里是不是也得有新算法支持?
是的,这就引出了第二个关键点。
是的,这就引出了第二个关键点。
他们提出了一种新的策略优化算法,叫做梯度有界策略优化,简称 GBPON。
他们提出了一种新的策略优化算法,叫做梯度有界策略优化,简称 GBPON。
以前那些传统的强化学习算法,有时候在处理用户反馈,特别是负反馈,就是用户不喜欢的那些信号时。
以前那些传统的强化学习算法,有时候在处理用户反馈,特别是负反馈,就是用户不喜欢的那些信号时。
可能会反应过度。
可能会反应过度。
反应过度。
反应过度。
对,就是学习的步子迈的太大了,导致整个学习过程像坐过山车一样,很不稳定,训练很容易就崩掉了。
对,就是学习的步子迈的太大了,导致整个学习过程像坐过山车一样,很不稳定,训练很容易就崩掉了。
不久左边就画了这种不稳定的情况。
不久左边就画了这种不稳定的情况。
这个 G B P O 算法呢,就想了个办法。
这个 G B P O 算法呢,就想了个办法。
它不像有些算法,碰到可能导致不稳定的样本,就干脆扔掉不学了。
它不像有些算法,碰到可能导致不稳定的样本,就干脆扔掉不学了。
他不仍,而是给模型学习的那个步法,动态的设定了一个护栏或者说边界。
他不仍,而是给模型学习的那个步法,动态的设定了一个护栏或者说边界。
边界。
边界。
对,这个边界是参考了我们常用的另外一种相对来说比较稳定的损失函数。
对,这个边界是参考了我们常用的另外一种相对来说比较稳定的损失函数。
叫 BCE 损失,它的那个梯度范围来设定的。
叫 BCE 损失,它的那个梯度范围来设定的。
这样一来呢,模型在学习的时候,尤其是从负反馈里学习的时候,步子就不会迈得太大太偏。
这样一来呢,模型在学习的时候,尤其是从负反馈里学习的时候,步子就不会迈得太大太偏。
整个学习过程就稳定多了。
整个学习过程就稳定多了。
图9右边和图10就展示了这种改进。
图9右边和图10就展示了这种改进。
哦,明白了,相当于给模型的学习过程扎了个智能的限速器和方向盘。
哦,明白了,相当于给模型的学习过程扎了个智能的限速器和方向盘。
让他学的既能充分利用信息,又不容易跑偏,学的又快又稳。
让他学的既能充分利用信息,又不容易跑偏,学的又快又稳。
哈哈,这个比喻很形象。
哈哈,这个比喻很形象。
那这种基于真实用户反馈的强化学习方法,实际效果到底怎么样?
那这种基于真实用户反馈的强化学习方法,实际效果到底怎么样?
有没有跟之前的方法做比较?
有没有跟之前的方法做比较?
那必须得有啊!
那必须得有啊!
报告里的表6就做了一个挺有意思的对比,他们分了两组。
报告里的表6就做了一个挺有意思的对比,他们分了两组。
一组呢只用传统的那些推荐数据来训练模型,另一组呢在训练数据里混进去了 OneRec 模型自己生成推荐之后收集到的用户反馈数据,让模型从自己的实践中学习。
一组呢只用传统的那些推荐数据来训练模型,另一组呢在训练数据里混进去了 OneRec 模型自己生成推荐之后收集到的用户反馈数据,让模型从自己的实践中学习。
对,这就引入了所谓的 on policy 的学习的概念,让模型能够从自己的推荐实践当中去学习和改进,实现一种自我进化。
对,这就引入了所谓的 on policy 的学习的概念,让模型能够从自己的推荐实践当中去学习和改进,实现一种自我进化。
结果怎么样呢?
结果怎么样呢?
结果显示啊,当模型开始从自己的实践经验里学习之后,几乎所有的推荐指标都变好了。
结果显示啊,当模型开始从自己的实践经验里学习之后,几乎所有的推荐指标都变好了。
特别是一些以前可能会下降的指标,你比如说视频的观看次数。
特别是一些以前可能会下降的指标,你比如说视频的观看次数。
都变成了正向提升,这就证明了让模型进行这种自我反思和迭代优化是非常重要的。
都变成了正向提升,这就证明了让模型进行这种自我反思和迭代优化是非常重要的。
效果不错,那它跟 V 1那种依赖裁判,就是奖励模型的学习方式比呢?
效果不错,那它跟 V 1那种依赖裁判,就是奖励模型的学习方式比呢?
哪种效果更好?
哪种效果更好?
这就是表七要回答的问题了。
这就是表七要回答的问题了。
他们比较了三种策略,第一种只用奖励模型来学习,第二种只用我们刚才讲的那个真实用户反馈,就是时长感知的那个方法来学习。
他们比较了三种策略,第一种只用奖励模型来学习,第二种只用我们刚才讲的那个真实用户反馈,就是时长感知的那个方法来学习。
第三种呢,把这两种方法结合起来一起用。
第三种呢,把这两种方法结合起来一起用。
嗯,结果呢?
嗯,结果呢?
结果发现啊挺有意思的,如果只用真实用户反馈,主要是基于观看时长嘛。
结果发现啊挺有意思的,如果只用真实用户反馈,主要是基于观看时长嘛。
那么提升用户的 APP 停留时长效果是最好的。
那么提升用户的 APP 停留时长效果是最好的。
如果只用那个奖励模型,它可能综合考虑了点赞、评论等更多目标,那么提升这些互动类指标效果更明显。
如果只用那个奖励模型,它可能综合考虑了点赞、评论等更多目标,那么提升这些互动类指标效果更明显。
而如果把两者结合起来用呢,就可以在停留时长和互动指标之间取得一个还不错的平衡。
而如果把两者结合起来用呢,就可以在停留时长和互动指标之间取得一个还不错的平衡。
啊,这说明不同的学习目标,或者说教材,会引导模型产生不同的偏好。
啊,这说明不同的学习目标,或者说教材,会引导模型产生不同的偏好。
交出有不同特长的模型来。
交出有不同特长的模型来。
没错,就是这个道理。
没错,就是这个道理。
你要让模型在哪方面强,就得给它相应的训练材料。
你要让模型在哪方面强,就得给它相应的训练材料。
非常清晰的对比,听起来这些理论创新和离线实验都挺成功的哈。
非常清晰的对比,听起来这些理论创新和离线实验都挺成功的哈。
那最后也是最关键的,把它用到像快手这样每天几亿人都在用的平台上,Online AB 测试的结果到底怎么样?这才是真正的考验。
那最后也是最关键的,把它用到像快手这样每天几亿人都在用的平台上,Online AB 测试的结果到底怎么样?这才是真正的考验。
线上效果是骡子是马拉出来溜溜才知道,OneRack V 2确实在快手主 APP 和快手极速版这两个主阵地都进行了大规模的 AB 测试。
线上效果是骡子是马拉出来溜溜才知道,OneRack V 2确实在快手主 APP 和快手极速版这两个主阵地都进行了大规模的 AB 测试。
覆盖的用户量非常大,达到了嗯4亿日活用户。
覆盖的用户量非常大,达到了嗯4亿日活用户。
4亿日活。
4亿日活。
是的,效果怎么样呢?
是的,效果怎么样呢?
可以说非常显著,你可以看一下报告里的表吧。
可以说非常显著,你可以看一下报告里的表吧。
在快手主 APP 上,用户的日均 APP 停留时长提升了0.467。
在快手主 APP 上,用户的日均 APP 停留时长提升了0.467。
然后用户的7日留存率,就是 LT7。
然后用户的7日留存率,就是 LT7。
这是一个衡量用户粘性的关键指标,提升了0.069%。
这是一个衡量用户粘性的关键指标,提升了0.069%。
在快手极速版上呢,停留时长的提升更明显,达到了0.741%。
在快手极速版上呢,停留时长的提升更明显,达到了0.741%。
七日留存也提上了0.034 percent 哇,虽然看起来是零点几个百分点,但在4亿日活的基础上。
七日留存也提上了0.034 percent 哇,虽然看起来是零点几个百分点,但在4亿日活的基础上。
对,绝对值是非常可观的。
对,绝对值是非常可观的。
你想想每天增加的总用户时长和留下来的用户数,这个改进是非常实在的。
你想想每天增加的总用户时长和留下来的用户数,这个改进是非常实在的。
而且更难得的是什么呢?
而且更难得的是什么呢?
是 Verview V two 在提升停留时长和留存这些核心目标的同时啊。
是 Verview V two 在提升停留时长和留存这些核心目标的同时啊。
还把点赞、关注、评论、分享,这些几乎所有的用户互动指标也都给带起来了,都是正向提升。哦,这个不容易吧?
还把点赞、关注、评论、分享,这些几乎所有的用户互动指标也都给带起来了,都是正向提升。哦,这个不容易吧?
对,这就是所谓的跷跷板效应,经常是你优化这个指标,那个指标可能就掉下去了。
对,这就是所谓的跷跷板效应,经常是你优化这个指标,那个指标可能就掉下去了。
但 v two 在这方面表现出了很好的平衡能力,缓解了这个问题。
但 v two 在这方面表现出了很好的平衡能力,缓解了这个问题。
另外性能方面,他们也提到了,一个10亿参数的 v two 模型,在线上处理包含3000个历史行为的序列。
另外性能方面,他们也提到了,一个10亿参数的 v two 模型,在线上处理包含3000个历史行为的序列。
用 LV0的 GPU 推理一次只需要36毫秒。
用 LV0的 GPU 推理一次只需要36毫秒。
很快啊。
很快啊。
是的,而且 GPU 的有效利用率 MFU 达到了62。
是的,而且 GPU 的有效利用率 MFU 达到了62。
这说明这个新架构在线上跑起来既快又高效。
这说明这个新架构在线上跑起来既快又高效。
嗯。
嗯。
嗯,效果确实很亮眼,性能也跟得上。
嗯,效果确实很亮眼,性能也跟得上。
那我们来快速小结一下这次对 One Ring V 2的探讨哈。
那我们来快速小结一下这次对 One Ring V 2的探讨哈。
听下来,核心就是两大突破,第一个是那个惰性纯解读器架构。
听下来,核心就是两大突破,第一个是那个惰性纯解读器架构。
通过非常大胆的移除 Encoder,再加上一系列的优化技巧,实现了计算效率上的巨大飞跃,也让模型有了超强的扩展能力。
通过非常大胆的移除 Encoder,再加上一系列的优化技巧,实现了计算效率上的巨大飞跃,也让模型有了超强的扩展能力。
第二个呢,是那个基于真实用户反馈的。
第二个呢,是那个基于真实用户反馈的。
偏好对齐,用了更聪明的时长奖励设计,还有更稳定的 GPPO 优化算法,让模型能更直接、更有效的学习用户的真实喜好,而不是被奖励模型带偏。
偏好对齐,用了更聪明的时长奖励设计,还有更稳定的 GPPO 优化算法,让模型能更直接、更有效的学习用户的真实喜好,而不是被奖励模型带偏。
嗯,总结的很到位。
嗯,总结的很到位。
而最终的结果,也证明了这些创新的价值。
而最终的结果,也证明了这些创新的价值。
在4亿日活用户的真实环境中,Warwick V 2显著提升了用户停留时长和留存这些核心指标。
在4亿日活用户的真实环境中,Warwick V 2显著提升了用户停留时长和留存这些核心指标。
并且还很好的平衡了多个推荐目标,可以说让推荐系统离真正懂你又近了一大步。
并且还很好的平衡了多个推荐目标,可以说让推荐系统离真正懂你又近了一大步。
的确是这样,但我觉得呀。
的确是这样,但我觉得呀。
这份报告还有一个特别值得称赞的地方。
这份报告还有一个特别值得称赞的地方。
哦?
哦?
是什么?
是什么?
就是他也很坦诚,指出了当前这个方法还存在的一些局限性。
就是他也很坦诚,指出了当前这个方法还存在的一些局限性。
以及未来需要我们去思考的方向,这一点我觉得特别适合留给你,也留给所有听众,作为咱们这次探讨完之后的一个嗯延伸思考。
以及未来需要我们去思考的方向,这一点我觉得特别适合留给你,也留给所有听众,作为咱们这次探讨完之后的一个嗯延伸思考。
在报告的最后部分,就是第五节和附录 D,他们参考了表9的数据,做了一个比较极端的实验。
在报告的最后部分,就是第五节和附录 D,他们参考了表9的数据,做了一个比较极端的实验。
他们完全关闭了缓存。
他们完全关闭了缓存。
让所有参与实验的流量,都由 OneReck V 2模型实时的去生成推荐结果。
让所有参与实验的流量,都由 OneReck V 2模型实时的去生成推荐结果。
全部实时算,对,全部实时算。
全部实时算,对,全部实时算。
在这种情况下呢,虽然用户的互动数据,你比如点赞呐、关注啊,这些指标。
在这种情况下呢,虽然用户的互动数据,你比如点赞呐、关注啊,这些指标。
提升的非常惊人,高的能到百分之十几,甚至接近30。
提升的非常惊人,高的能到百分之十几,甚至接近30。
哇!
哇!
但是也暴露了出了一些潜在的嗯生态层面的问题。
但是也暴露了出了一些潜在的嗯生态层面的问题。
最明显的一个就是冷启动的视频,也就是那些刚刚发布,还没积累太多互动数据的新视频。
最明显的一个就是冷启动的视频,也就是那些刚刚发布,还没积累太多互动数据的新视频。
他们的观看量出现了大幅度的下降,在两个 APP 上分别下降了大概45%和37。
他们的观看量出现了大幅度的下降,在两个 APP 上分别下降了大概45%和37。
下降这么多。
下降这么多。
是的,这个幅度挺大的。
是的,这个幅度挺大的。
同时呢,他们也观察到。
同时呢,他们也观察到。
推荐结果的内容聚集度,Closer density 增加了。
推荐结果的内容聚集度,Closer density 增加了。
这个意味着什么呢?
这个意味着什么呢?
可能推荐的内容越来越集中在少数一些热门的,或者模型已经很确定你喜欢的那种类型上。
可能推荐的内容越来越集中在少数一些热门的,或者模型已经很确定你喜欢的那种类型上。
多样性可能就降低了。
多样性可能就降低了。
嗯,确实是个问题,新内容或者小众内容可能更难被看到了。
嗯,确实是个问题,新内容或者小众内容可能更难被看到了。
没错,就仅引出了一个非常关键的问题,值得我们大家一起思考。
没错,就仅引出了一个非常关键的问题,值得我们大家一起思考。
当我们有了像 OneReck V 2这样非常强大的生成式推荐模型,它能够极其高效的去优化那些用户参与度指标,比如停留时长、点赞等等。
当我们有了像 OneReck V 2这样非常强大的生成式推荐模型,它能够极其高效的去优化那些用户参与度指标,比如停留时长、点赞等等。
在这种情况下,我们该如何去确保整个内容生态的健康和平衡呢?
在这种情况下,我们该如何去确保整个内容生态的健康和平衡呢?
怎么才能避免那些新的、小众的内容被强大的效率机器给埋没掉?
怎么才能避免那些新的、小众的内容被强大的效率机器给埋没掉?
如何在追求个性化推荐的极致效率和维护内容的多样性、促进新内容的发现之间,找到那个最佳的平衡点?嗯。
如何在追求个性化推荐的极致效率和维护内容的多样性、促进新内容的发现之间,找到那个最佳的平衡点?嗯。
对,这很可能就是下一代推荐系统需要去重点面对和解决的核心挑战了。
对,这很可能就是下一代推荐系统需要去重点面对和解决的核心挑战了。
好了,今天就聊到这里。
好了,今天就聊到这里。
非常感谢你的收听,也希望这次我们对 OneRAG v two 的深入解读,能让你对推荐技术的前沿进展,以及它所带来的这些机遇和挑战。
非常感谢你的收听,也希望这次我们对 OneRAG v two 的深入解读,能让你对推荐技术的前沿进展,以及它所带来的这些机遇和挑战。
能有更深入的理解和一些启发吧。
能有更深入的理解和一些启发吧。
关于 Bayt 播客
Bayt 提供中文+原文双语音频和字幕,帮助你打破语言障碍,轻松听懂全球优质播客。