揭秘一点资讯推送系统一、前言 Push的目标是促活和拉活,不仅承担着提升用户粘性的职责,还肩负着挽救沉默用户的使命。
主动负责:遇到问题不推诿,主动承担责任,展现你的担当精神。 #生活常识# #职场技巧# #职场升职攻略#
一、前言
Push的目标是促活和拉活,不仅承担着提升用户粘性的职责,还肩负着挽救沉默用户的使命。
用户在App上都有会经历“新用户、活跃用户、沉默用户、流失用户”这样一个生命周期,即对应“安装、常用、不用、卸载”四个阶段。
而Push要做的就是尽可能的让用户长期驻留在“活跃”期内,并且将处于“沉默”期的用户尽可能的拉活至“活跃期”,这也就解释了为什么说Push的目标是促活和拉活。
Push是App可以主动触达用户的途径之一,而低廉的成本使其成为最佳的触达选择,但是Push如果在于用户的亲密接触中造成不佳的用户体验,则会造成用户的流失甚至卸载App的行为发生。
所以说在达成其目标的同时,也要兼顾用户体验,尽可能的寻求两者之间的平衡,所以Push关闭率以及App卸载率也是需要关注的重要负反馈指标。
如何避免用户因Push而关闭Push权限甚至造成App卸载;如何延缓用户生命周期的下沉时间;如何选择合适的场景、内容、时机、频次是用户可以接受并进行消费的,这些问题正是一点资讯推送系统所要考虑并解决的。
二、推送能力要求
基于上述的问题,对推送的能力要求就较为明确了,主要需要聚焦以下几点:
- 推送的目标人群
不是所有的推送内容都具有普适性,当用户收到过多这种相关性不强且无意义的推送后,会产生厌烦心理,进而导致用户关闭推送甚至卸载应用,所以为普适性不强的内容选择正确的推送目标人群至关重要。
- 推送的时机选择
不是所有的推送内容都适合不分时段的立即触达用户,对于时效性且重要性不强的推送应避开用户休息的时间段,避免影响用户正常生活。
推送的频次控制如果不加节制的进行推送,那无异于成为新的“短信轰炸”,不仅严重影响用户的产品体验,也严重影响了用户的日常生活,令用户产生厌恶心理,而导致用户关闭推送甚至卸载应用的可能性,也远高于无目的性的内容推送。
推送的内容多样性避免对用户进行内容类型较为单一的推送,喜新厌旧是人之常情,这就要求推送覆盖的场景应尽可能的充足,在满足用户的日常需求之外还需满足用户的猎奇心理。
综上所述,也不就难发现如何把推送做好,如何在满足自身促活和拉活目标的同时,可以兼顾用户体验(即降低关闭率和卸载率这两个负反馈指标)。
三、推送系统平台概述
3.1、推送系统平台能力
通过前文描述,也就可以总结出推送系统平台所要具备的能力:
触达速度这个是推送的核心要求,不仅仅是为了应用的整体目标效果和品牌塑造,更是应用所要承担的社会责任要求,针对重大的突发事件,理应以最快的速度触达用户,让用户可以及时知晓并加以应对处理,这类内容主要为如地震、海啸、极端天气这一类自然灾害的预警,又或者如一些恶性案件的追逃、处理通告等,又或是影响较大的国内国际时政、军事等内容。
人群圈定在用户基数较大的环境下,根据渠道、设备、LBS和用户画像等信息可以较为精准的圈定出推送的受众人群,但是不宜太过精准,否则会造成受众用户覆盖不足,进行影响推送所要达成的目标效果。
个性化当前互联网各应用中都存在或大或小的信息过载问题,且现实生活中也是千人千面,这就要求系统需要根据用户的兴趣来进行精准推送,以满足用户的日常消费需求,进一步提升用户的消费欲望。
多样性通过内容的多样性,充分满足用户在不同场景下的需求,如早晨出门上班前的交通拥堵情况、天气状况等预报类内容,非工作时间时的本地、兴趣、猎奇等资讯类内容,节假日前的旅游、美食、网红打卡地等生活类内容,以及应用内的评论、点赞、转发等互动类内容。
3.2、推送系统平台设计
从3.1中要求的能力出发,首先需要对推送进行等级划分,以此来界定推送的时效性需求和个性化需求:
一级推送强时效性内容,以最快的速度触达本次推送圈定的受众用户。
二级推送在强时效性要求的基础上,增加个性化要求,即需要考虑内容与受众用户的关联性。
三级推送弱时效性内容,这类内容仅关注与受众用户的关联性,包括本地内容(与受众用户存在LBS上的关联性)、个性化内容(与受众用户在兴趣上的关联性)、互动内容(与受众用户自身在App内行为的关联性)等。
根据推送等级的划分,也就明确推送系统平台中各模块的职能要求,而推送系统平台由哪些模块构成,如下图所示:
图3-1 推送系统平台整体结构
整个推送系统纵向看由上至下分为四层,“内容层”是平台的入口,负责大部分推送的触发以及推送内容的生产,是整个系统平台的启动器;“召回预测层”是平台的计算引擎,负责人与文章之间的召回及预测打分;“推送决策层”是平台的核心部分,推送的选择、推送的时机、推送的频次都由其来控制,不仅承担了目标的大部分效果,也肩负着平衡用户体验的职责;“分发控制层”是平台的基石,在确保推送各触达通道的到达基础之上,还需要兼顾一部分的基本逻辑保障,如历史去重(因为分发数据由多路数据流汇聚而成,在这里统一进行最终的历史去重可以保证避免重复推送的出现),以及每个用户的条数控制(这是基于目前几大厂商推送条数限制和平衡用户体验综合得出的策略)。
其中,“编辑运营推送工具”从名称就可以看出,其主要服务于编辑同学的日常运营需求,编辑同学可以在工具上进行推送的相关信息配置。推送工具目前支持通过配置灵活生成不同的推送模板,来适用于不同业务线及不同的推送场景,从而降低编辑同学的配置复杂度,提升推送效率。编辑同学在此工具上可以进行各级别的推送,其中以强时效性的突发内容为主,因为对突发事件的捕捉能力,机器是有其自身局限性的,无法满足此类内容速度第一的要求。
“个性化机器推送审核工具”,主要是服务于召回预测层中的“个性化机器推送召回预测模块”,审核同学会在该工具上对所有的入库内容进行安全性审核(推送是主动触达用户,在内容安全性上的要求远超其他场景),从而为推送产生丰富可靠有保障的物料库,供召回使用。而自动化的机器推送是周期性的离线任务,且根据用户的兴趣来做相关性召回,所以审核为可推送的内容都应是低时效性的,否则会出现推送旧闻这种影响用户体验的问题。
而“召回预测层”和“推送决策层”作为整个推送系统的核心模块,不在这里做过多赘述,将会在下一部分进行详细描述。
四、主要模块介绍
4.1、编辑运营推送召回预测模块
图4-1 编辑运营推送召回预测模块详细设计
该模块承担了编辑日常运营的推送计算任务,覆盖了一级、二级、三级各级别的推送场景,其中以一级和二级为主,因为这种以时效性为主的推送是机器暂时无法做到的,三级推送则是以弱时效性的个性化内容为主,和“个性化机器召回预测模块”共同组成了完整的个性化推送场景。
该模块的召回主题是内容,被召回的对象是用户,这是和“个性化机器召回预测模块”除时效性之外的另一个主要区别,这也就意味着此处的弱时效性个性化内容更容易成为热文爆文。
为了满足这里以时效性内容推送为主的情况,即要求计算要尽可能的快,从而达到更快触达用户的需求,对所需要的用户数据会进行分片预处理,这样可以避免一个服务器处理过多的用户从而导致计算速度的下降。通过以每个用户分片数据集为独立计算任务,来达到一次推送可以同时在多个服务进程并行计算的目标,而在每个独立的服务进程内,对分片数据集内的用户又是以多线程的方式进行并发计算,尽最大可能提升每次推送任务的算力。并且考虑到各推送级别的任务可能同时进行计算,所以服务进程内的线程池选择优先级队列来作为阻塞队列,保证高级别的推送任务会得到计算资源的保障。
最终会将推送内容与召回用户的计算结果,根据推送的任务级别,写入对应的Kafka Topic中,从而达到不同推送级别任务使用不同推送策略的目的。
4.2、个性化机器召回预测模块
图4-2 个性化机器召回预测模块详细设计
该模块仅负责三级推送,即以强关联性为目的的弱时效个性化推送,包括兴趣关联性和本地关联性两方面,并且与编辑运营推送最大的区别就是这里是以用户为主体来召回相关内容。
因为从内容时效性角度来看是以弱时效甚至无时效为主,所以在审核的过程中,就要剔除掉强时效性的内容,并且针对具备一定时效性的内容也要标注上有效时间,避免召回并分发旧闻,从而造成用户体验较差的问题。
基于内容时效性不强以及覆盖用户基数较大这两点,所以个性化机器推送计算任务采用离线的方式,并且由于用户数据是存储在Hdfs上,故选择支持处理分布式数据集的Spark来作为计算引擎,来尽可能的提升任务的计算速度,从而可以支撑更多的计算轮次,为后续的“推送决策层”提供更多的个性化候选内容。
4.3、推送决策模块
图4-3 推送决策模块详细设计
“推送决策层”是整个推送系统的核心大脑,不仅承担了为达成系统目标而选出左右的内容,还承担了平衡用户体验的责任。
一级推送和二级推送策略相对较少,因为该两个推送级别重点是强时效性,所以要做的就是强触达用户,二级较于一级的区别在于,需要考虑当前的推送内容是否符合用户当前的兴趣,所以二级推送在圈定用户的覆盖上会有一定比例的损失(这主要是因为在做用户圈定的时候为了增加覆盖而减低了关联性要求,所以需要策略上剔除与内容关联性较弱的用户,避免给用户退出不相关的内容)。
重点是针对三级推送的策略,这里需要考虑的因素较多,所以策略的复杂度也较高,相对于一级、二级推送,三级推送没有强触达用户的诉求,所以推送频次的考虑更多也是针对这个级别的内容而言。
由于三级推送的来源既有编辑同学的运营内容,也有个性化机器推送的内容,还有一些触发式的用户行为相关推送内容,来源较为驳杂,为了在有时间窗口时给用户推送最有价值的内容,这个价值不仅是对用户有价值,也是对系统目标有收益的,同时考虑均为弱时效性的,那么就需要先对源源不断流入的候选内容进行存储,并通过竞争策略来决定哪条内容适合进行分发。
竞争策略是通过长期的ABtest得出的,因为各类内容的预测模型不统一,所以排序规则也并不统一,需要在规则上进行人为限定,但是也会受到历史行为的影响,会根据一段时间内各类内容的时间分布和数量分布进行提降权,来保证内容的多样性和合理性。
另外,推送时机和推送频次,也会根据不同的用户个体来进行实时的动态变化,以期系统收益最大化以及用户体验也可以得到有效保证。
五、总结与展望
目前一点资讯的推送系统已经有过几次重大的升级和变革,已经覆盖各推送场景,在推送策略上也针对用户的不同维度做了精细的适配,并且在系统收益上已经收获了显著的收益,同时也很好的兼顾了用户产品体验,并且已经逐步的将该系统能力投射在其他产品业务线上,或被其他团队借鉴后应用在其他的触达场景。
为了取得更好的线上效果,未来我们将针对以下几个方向做进一步的优化:
在系统能力上,进一步优化部分核心模块的动态调整和灵活配置能力;
进一步增强全链路的数据跟踪和监控能力;
结合一点资讯的算法能力优势,进一步提高个性化推送,以及完全消除推送策略对规则的依赖;
文章来自一点资讯推荐系统团队
网址:揭秘一点资讯推送系统一、前言 Push的目标是促活和拉活,不仅承担着提升用户粘性的职责,还肩负着挽救沉默用户的使命。 https://www.yuejiaxmz.com/news/view/112418
相关内容
如何做好APP的消息推送(一) – 人人都是产品经理,利用人工智能提升京东销售效率和用户体验的创新应用
家庭健康助手:角色、职责与资格大揭秘
职场生活最新资讯
一份完整的户外活动方案7篇
生活目标能提升心理健康
值得一看的家电能效标识揭秘
有创意的户外亲子活动方案(通用30篇)
推送消息&推送机制(推送机制如何规划设置)
帝格珠宝的美学生活 独造匠心品牌 提升客户幸福感