首发于 AI入门不放弃
从零搭建推荐系统——框架篇

从零搭建推荐系统——框架篇

推荐系统本质是对用户不同行为,从海量物料中选取用户可能感兴趣的物料进行展示,通过策略、算法、规则等途径引导用户产生点击或其他交互行为,那从用户打开特定app起,到展示出相关内容到底经历了何种操作,海量的物料是怎样被筛选出来?如果业务越做越大,用户和物料数据积累越来越多,仅靠规则不能进一步提升用户对物料感兴趣程度,那么该如何升级成为推荐系统为用户带来更好的浏览体验?本系列文章将展示如何从0搭建一套较为完整的推荐系统,进而一窥其内部原理。


高屋建瓴,各公司业务系统和场景各有不同,系统有繁有简,技术栈和使用细节千差万别,要搭建推荐系统,我们先把系统模块和数据流梳理清,大多都具有如下模块和流程。

如图所示,数据流实线为在线流程,虚线为离线流程。一般在线流程指用户实时访问系统用于计算及使用的服务,离线流程指跟用户请求无直接关系可对数据单独统计计算的过程。

物料数据

首先要有被推荐的物料数据,而且必须要多,非常多,几十上百个的也就可以先退出 了,与其花大量精力搭建推荐系统,还不如多开垦业务场景,丰富内容,一把好枪还需要充足的弹药供应才能发挥威力不是。一般来说可推荐物料需要数万到数千万甚至上亿,每个物料具有唯一id,除此之外还应有其自身的各类基础信息,各家业务不同信息也各不相同,例如类型(文本、视频、图片)、类别(新闻、娱乐、体育)、标签(宝马,奥迪,东坡肘子.....)、时效、地域等等。物料数量规模庞大,再加上自身各类信息,那需要存储的物料池也会成倍增加,对不同规模的数据量就得盘一盘该如何存储,这里先简单抽象成一个物料池。


用户数据

有了物料数据还需要有用户数据,一般是系统日志通过埋点记录用户各类行为,通过日志收集系统计算处理,将有效的用户行为数据结构化并落到存储空间中,一般用数据仓库进行管理,便于后续分析、计算。用户行为一般是用户的浏览、点击、播放等普通行为以及点赞、评论、转发、下单等深层行为,结合访问时获取到的用户设备、时间、地域等,加上各行为打上时间戳,日积月累就能构造出一个用户的多维度行为轨迹和画像。


用户画像

用户数据结构化落仓后就方便后续对用户行为的统计分析了,结合用户时序信息,可以计算出所需维度的用户画像,例如用户的兴趣点标签,偏好什么内容,习惯在什么时段访问,常用的地理位置信息,通过浏览内容判断用户年龄段和性别等,深入些的后续还可进行用户聚类、分群等分析处理。


实时计算

这里还需要一个实时计算的环节,用于通过实时收集日志并解析物料与用户的实时统计信息,例如物料的曝光数、点击数、评论数等,可以丰富物料的基础信息;对用户来说可以收集用户实时曝光、点击及其他行为的实时数据,用于后续算法特征处理或在线规则处理。


算法模块

物料和用户数据齐备,就轮到推荐算法上场了,当然这里也是一个大模块,上面的数据虽有,但此数据非彼数据,算法需要用的还需要转化为特征和样本数据,绝大部分算法模型还是很挑食的,喂进去的数据必须要经过处理,否则再好的模型面对噪声数据也不会有好的结果。数据处理好,选好模型就可以训练了,结果不错皆大欢喜,效果不好不能直接把锅甩给模型不给力,还要分析数据、调整参数,经过几个来回后得到一个还不错的模型,就可以准备给用户使用啦。如果数据规模庞大还需要分布式训练。

推荐引擎

如果业务要求实时性不强,用户和数据量都不是很庞大,那么在离线按小时或天的频次直接计算各个用户可能的偏好物料即可,无论通过用户画像偏好匹配物料,还是使用训练好的模型进行直接预测排序,只要能满足业务要求就是一套好系统。但很多场景用户访问要求实时性高,业务特性复杂,就需要一套专门的推荐引擎将推荐系统及依赖的各模块整合起来,包括构建倒排索引、召回、排序、rerank及其他依赖模块,便于灵活开发与部署。另外评估推荐系统效果也需要科学的分桶实验系统也需要在推荐引擎模块中实现。


数据报表

截止目前一套完整的数据流已经可以跑通了,也可以为用户推荐计算好的结果,但还需要一个看起来不起眼却非常重要的模块——报表数据,用来展示推荐系统整体效果,包括AB实验效果,分标签、召回等维度效果等,用于后续迭代优化时提供数据支撑。

至此,推荐系统的蓝图已构思完毕,数据可以在纸面上完全流动起来形成闭环,不断积累数据,不断迭代算法策略,不断提升效果指标,不断产生业务收益,不断提升程序员的工资,想想是不是很开心?后面我们就把上述的这些坑一块一块填起来,完整实现一套推荐系统。



想对推荐系统了解更多?请移步:

深圳SEO优化公司天津营销网站哪家好岳阳百度爱采购报价成都设计网站多少钱和田关键词按天扣费辽源网站优化按天计费公司吕梁网站改版哪家好仙桃网站优化按天扣费多少钱秦皇岛网站搜索优化黄山网络推广公司青岛百度竞价哪家好云浮外贸网站设计果洛外贸网站设计哪家好楚雄设计公司网站多少钱同乐网站搭建价格海西网站优化按天扣费推荐黔西南网站制作设计报价洛阳网站优化按天收费公司绍兴百度标王公司丽水网站关键词优化报价许昌模板推广报价益阳网站推广工具推荐焦作企业网站制作报价榆林关键词按天扣费多少钱福田营销网站哪家好苏州英文网站建设公司马鞍山优秀网站设计价格岳阳网站改版哪家好郴州百度竞价公司塔城网站制作设计通辽建设网站多少钱歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化