2023年5000字从0到1构建系统_第1页
2023年5000字从0到1构建系统_第2页
2023年5000字从0到1构建系统_第3页
2023年5000字从0到1构建系统_第4页
2023年5000字从0到1构建系统_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

字,从0到1构建系统一、前言

本文主要是笔者在负责实际项目中积累的关于推举系统的皮毛认知和理解。

原先都是以用户的身份接触推举系统,所以在以PM的身份接到任务时自然是一头雾水。各种问题出现在脑海:推举系统是什么?能解决什么问题?如何构建?等等。

说实话,这些问题每一个都困扰了我许久。光是思索第一个问题就花了一个多月,回过头来看,整个项目周期中,也许70%的时间用于思索“是什么”的问题,剩下30%的时间是解决“怎么做”的问题(实际上整个项目中的应用系统除了推举系统还有用户画像系统)。

当然最终的结果是乐观的。所以有意写下此文,一来是记录心得,二来是给有需要的伴侣做实战共享,三来就是抛砖引玉,促进共同沟通。因笔者在该行业中阅历积累较为浅薄,疑虑和不妥之处还望赐教和指正。

二、推举系统简述

1.推举系统是什么

从应用层面简而言之,推举系统的主要功能是基于已知的用户数据通过算法计算并给出用户可能感爱好的信息/物品。

2.推举系统诞生背景简述

随着学问的运用积累、科学技术的进步等,人类在近几百年来通过几次工业革命使得社会的生产力水平得到大幅提升。此外,从其次次世界大战结束后,人类社会加速迈入全面和平常代,全球各国的主基调以经济进展为核心主题,因而进一步加速了社会经济进展水平。

在此基础上,我们从一个生产力水平相对低下、生活物品匮乏的年月渐渐向物质水平充分、信息爆炸再过渡到当下的商品过剩、信息过载的年月。可以预见的是在将来人们在同一决策下将面临越来越多的选择。

在此背景下,消费者(用户)在面临大量的信息或者物品时可能无法真正从中获得自己期望或有用的信息或商品。与此同时,生产者的困扰在于如何让自己的信息/商品呈现给更多用户,如何在海量的信息/商品中脱颖而出。

而推举系统正是解决这一冲突重要工具。尤其是在平台经济模式下,推举系统的应用最为广泛,其中较为典型并具有良好的进展和应用前景的领域包括电子商务领域、电影/视频、音乐、阅读等。

本文主要以项目中涉及的领域【电影/视频】领域为动身点进行绽开。

三、从0到1构建推举系统

1.推举系统的核心功能

推举系统的核心功能就是为用户推举其可能感爱好的商品。大致的过程可以简述为:推举系统依据已知的用户数据,经过推举引擎(推举算法)计算,并给出用户可能感爱好的商品集合,最终再通过前端界面的方式将特定的商品呈现在用户眼前。

比如:已知用户的观影数据,此时可通过推举算法得知用户是一名喜剧电影爱好者,于是便可以向用户推举喜剧电影题材的视频内容。

此外,这里需要重点说明的是,如何推断用户是否感爱好的主要依据来源于已知的用户数据。本质上是基于数据统计推断。所以这里描述的是可能感爱好。这一点很重要。而说到用户数据,这里需要提一下便利后续的理解和扩展,用户数据的主要类型:

用户基本属性:这里主要是用户地理信息,用户社会属性数据(性别、年龄等)等。用户行为数据:这里主要是用户的观影数据(点击、播放、保藏、订购)等。当然,考虑到人类行为动力学特征讨论结果(大多数状况下,人对一件事情的关注只能持续较短的时间),在此还需要做拆分,即历史行为数据和实时行为数据。比较典型的实时推举:某宝购物在线输入关键字搜寻后退出,此时再次进入app则可能会看到与搜寻关键字相关的物品。下图为推举系统基本功能和简要的过程:

2.推举系统的构建

说到这里,我们好像发觉了,其实推举系统说简洁一点就是:给用户推举商品。

假如拓展一下:那就是给什么样的用户推举什么样的商品。再拓展一下:给什么样的(具有某种特征的用户)用户用什么样的方式(不同场景下的推举算法)推举什么样的(与用户特征相匹配的商品)商品。

这样理解的话,我们好像知道可以从哪里下手了。

1)用户特征与商品特征定义

①用户和商品的关联关系

我们需要定义一套规章把用户和商品关联起来。这样可以使得用户和商品存在某种关联关系以便达到对某特征的用户推举关联特征的商品。

可以说用户特征和商品特征之间的关联是相辅相依的。比如:为喜剧电影偏好者推举喜剧电影。

那么问题来了,用户和商品之间本身不存在关联关系,可以说都是相对独立的,何来关系之有?何谈建立关联关系?

这里的答案是用户的行为,用户行为使得用户和商品之间产生关联。由于一次交互,所以产生了联系。于是便有了关联关系。那么这个“交互”其实就是方才提到的:点击、播放、保藏、订购等。用户播放了喜剧电影,则意味着用户与该喜剧电影产生了关联关系。

于是乎,我们好像可以下一个初步的结论,用户可能对喜剧电影感爱好。进而我们是否可以考虑为该用户推举喜剧电影呢?有点欠妥,由于仅凭一次观影,数据量不足。

但是假如我们依据用户的大量历史行为数据发觉该用户看的电影中喜剧偏多,而此刻我们认为用户对喜剧电影有偏好的结论好像就可以站得住脚了。进而,我们可以试着给用户推举喜剧电影了。

②商品特征和用户特征

商品特征源自于对商品不同维度的描述。这里用商品属性代替。下表中的第一列就是商品属性(业界通常把电影电视剧等统称为媒资,因而后文中牵涉到商品的内容将以媒资来描述)。

商品属性及其属性值。这个比较好理解。下图中的【媒资题材】其实就是属性的一种,对应的属性值有:喜剧、悬疑、动作等等。

而我们可以通过商品具备的属性来建立属于商品固有的特征。商品属性越多,商品特征越丰富。如:一部喜剧电影和一部成龙主演的喜剧电影。很明显是后者的特征更丰富。所以我们明确一点:属性是构成特征的基本要素。

同理,对于用户特征亦是如此。通过用户属性来建立用户固有的特征(通常用用户标签来描述)。下表中是用户特征的简要示例。

在说完商品特征/用户特征以及二者之间的关系后,我们可以发觉。用户通过主动行为,与商品发生关联关系,从而建立了用户与商品之间的联系,因而这就为我们做商品推举奠定了基础。

2)推举场景及算法规律构建

①推举场景和推举算法的联系

通过上述过程,我们建立了用户和商品之间的联系,剩下的工作就是需要一套自动化的程序将二者的关系打通。这个自动化程序即我们要说的推举算法。

方才有提到,推举的本质上是基于数据统计推断。而数据我们在这里主要分为两种:

基于用户基本属性数据;基于用户行为数据(包含历史行为数据和实时行为数据)。我们先做个小结:这里全部的推举算法都是基于上述两种数据完成的。

与此同时,我们不妨再回顾一下:给什么样的(具有某种特征的用户)用户用什么样的方式(不同场景下的推举算法)推举什么样的(与用户特征相匹配的商品)商品。

这里需要有一个问题值得思索,为什么推举算法还需要区分场景。

这其实主要源自于应用端需求。比如,我打开了某宝,首页中可能消失了我搜寻过的商品种类推举,而在我下单后可能系统又为我推举了其他的商品。

这里提到的“首页状态”和“下单后”两种分别属于不同的场景。前者是我刚进app,系统可能通过我过去的行为数据发觉我可能对搜寻过的商品比较感爱好,所以为我推举相关商品,而后者是系统通过全网用户数据发觉购买了当前商品A的用户同时也购买了另一款产品B,而此时我购买了该商品于是认为我可能也会下单商品B,所以为我推举了商品B。

不同的场景下,需要有对应合适的推举方式。于是我们将推举场景和推举算法联系到了一起。

我们简洁地整理出示意表格中的实例:基于不同场景下对用户数据采纳特定的推举算法进行计算。

至此,我们还需要完成一项工作才能构成一个简洁的推举系统:推举算法的规律。

②推举算法的规律构建

在上述的示例中,我们列举了部分推举算法,下面一一说明:

用户偏好推举

简而言之,依据用户历史的行为数据推举他平常喜爱看的内容。

还是拿前面说过的:为喜剧电影偏好者推举喜剧电影。所以我们可以制定量化规章。

如:我们统计了该用户过去的观影数据,其中观看【喜剧片】10次,【悬疑片】5次,【战斗片】4次,【爱情片】1次,那么加起来合计观影次数=10+5+4+1=20次,其中根据比例计算分别占比:50%、25%、20%、5%。

那么我们通过现有的数据可以观看到,该用户的仅有数据中显示其对【喜剧片】和【悬疑片】较为有爱好(这里我们定义从历史数据中取Top2,【喜剧】和【悬疑】符合我们自定规章),于是当用户下次开机时,我们有了在首页为用户推举肯定数量的【喜剧片】和【悬疑片】的依据。上述,也许是简洁的用户偏好推举算法。

协同过滤推举

这里我就不献丑了。这种推举算法比较经典,也是业界常用的推举算法。比较典型的案例是:啤酒和尿布。超市人员发觉购买啤酒的用户同时也购买了尿布。于是这个故事可以写成:买尿布的家庭中有婴儿,母亲照看婴儿,父亲去超市买尿布同时也买啤酒。

明星偏好推举

这里同上述第一项相像,就不再赘述了。主要目的有两个,一个是筛选出近期比较热的明星,推举他的内容;另一部分是根据用户对明星的偏好,推举用户偏好的明星的内容。

通过上述的推举算法的规章的建立,结合已知的数据,我们好像可以为单个用户做共性化推举了。下图所示,但这里只是整个系统的一部分。

3)推举结果的过滤和排序

完成了前面的内容后,理论上我们可以做出一个较为简洁的推举系统。但是在实际业务中还会牵涉到两项比较重要的工作需要完成:过滤和排序。

①推举结果的过滤

这里的过滤:主要是针对媒资库中剔除不符合业务规章的媒资的过程。而不符合业务规章需要依据实际的业务来确定,常见的不符合规章的类型有如下:

被加入黑名单的媒资内容:加入黑名单后将不再呈现在用户视野中,故而需要过滤掉。媒资版权过期:媒资库中过滤掉版权过期的内容。话题敏感的媒资内容:某些时间段或特别大事引发的敏感内容“下架”。排重过滤:这里的排重过滤也有多种形式,常见的是:推举系统在最近的一段时间段为用户推举过某电影,但是用户并没有播放,可能是用户对该项推举不感爱好。当推举次数积累到肯定程度时,系统将自动过滤该媒资。其他:这里的过滤条件可能会有多种,主要源自于业务需求,故而不再一一列举。下面的流程图中是实际业务中需要进行过滤的选项。

②推举结果的排序

通过上述过滤,推举结果的媒资集合已经被清理了一轮。但集合中剩余的内容并不是全部的媒资都需要呈现给用户。用户的视野是有限的,推举位的数量也是有限的,所以我们应当从这个集合中再次筛选出比较“易产生爱好”的内容,进而提升用户可能对推举内容产生的爱好。

排序的方式有多种,这里只列举了一部分并且是单一的排序方式。也可以通过算法规章进行综合排序等,这里只争论单一排序。排序方式包括:

热度排序:媒资集合中全部的媒资根据热度来排序;评分排序:根据评分大小来排序;上线时间排序:根据上线的时间远近来排序;其他。

4)推举结果的展现

推举结果的展现

在经过媒资的过滤和排序后,推举内容已经预备好进入用户的视野了。我们重新整理并对从前的示意图做一下优化,如下:

整个过程相对清楚,但总有点抽象。所以,我准备用一个简洁的示例来进行回顾和说明。

连续上述提到的例子。我们统计了小明过去的观影数据,其中观看【喜剧片】10次、【悬疑片】5次、【战斗片】4次、【爱情片】1次,那么加起来合计观影次数=10+5+4+1=20次,其中根据比例计算分别占比:50%、25%、20%、5%。

那么我们通过现有的数据可以观看到,该用户的仅有数据中显示其对【喜剧片】和【悬疑片】较为有爱好(这里我们定义从历史数据中取Top2,【喜剧】和【悬疑】符合我们自定规章)。于是当小明下次开机时,来到了首页(这里示例默认了只使用一种推举引擎)。此时系统的工作:

a.从媒资库中取了1000部【喜剧片】和1000部【悬疑片】,并对两种类型的电影做了【过滤】,各剩下500部符合业务规章的电影。

b.系统各将这500部电影根据【热度】进行了排序,原先的无序媒资集合有序了。

但是值得留意的是,这个集合很大,而我们现在首页的推举位只有9个。我们需要解决的问题有两个,一个是我们已经知道的,我们1次最多只能推9个,另一个是我们要给小明推举两种类型的影片,如何安排数量。

信任说到这里,大家自有答案。我们根据【喜剧片】50%占比,【悬疑片】25%占比:即【喜剧片】比【悬疑片】=2:1来安排数量。于是【喜剧片】=9*2/3=6个,【悬疑片】=9*1/3=3个。

c.如此,我们将媒资集合中【喜剧片】排名前6个影片以及【悬疑片】前3个影片,呈现在小明的眼前。

以上大致是一个简要的推举系统的构建以及整个过程的描述。

当然在实际的业务中,会有偏差,也有一部分重要的问题这里没有提及。比如:推举算法种类的多样性和精确     性;推举结果的反馈、推举效果如何等等。

总而言之,通过整个过程我们大致了解了推举系统的本质,也了解到一个简要的推举系统如何构建以及可能存在的问题和优化的方向。假如这个目的实现了,那么本文的目的也就达到了。盼望对有需要的伴侣供应思路,同时也欢迎多多沟通。

四、心得:写在最终

推举系统对于一个产品经理来说不是一个常见的产品,由于市面上几乎找不到类似的产品,更别说做什么竞品分析。由

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论