信息推送及模型训练方法、装置、设备及存储介质
技术领域
本公开涉及信息推送领域,特别是涉及一种信息推送及模型训练方法、装置、设备及存储介质。
背景技术
随着移动互联网的发展,移动端的流量在各互联网产品中逐步占据了主导地位。为移动端推送信息时如何使得推送的信息能够有效触达用户,以提高用户活跃度和强化营销效果,是众多移动端产品面临的迫切问题。
目前的信息推送方案主要分两种。
一种信息推送方案是预先圈定一部分用户,直接交给信息推送模块进行推送,缺点是很多用户不在线,需要等到用户联网时才能真正发出,无法进行实时触达;并且推送时不知道用户的行为状态,难以进行针对性的场景化推送。
另一种信息推送方案是客户端定期请求信息推送模块推送信息,缺点是请求集中在某个时间段,其他时间段较为空闲,造成资源浪费,且请求时间为固定的几个时间点,不能做到根据不同场景进行个性化推送。
有鉴于此,仍需要一种能够提高推送的信息的触达效率的信息推送方案。
发明内容
本公开的主要目的在于提供一种能够提高推送的信息的触达效率的信息推送方案。
根据本公开的第一个方面,提供了一种信息推送方法,包括:获取终端相关的信息;基于所述终端相关的信息,识别所述终端的当前场景;以及基于所述当前场景,向所述终端推送业务信息。
优选地,所述终端相关的信息包括通过多种方式获取的多个方面的信息。
优选地,所述终端相关的信息可以包括所述终端的状态信息和/或用户针对所述终端执行的操作信息。
优选地,所述状态信息可以包括时间、网络接入类型、定位信息、型号、***类型、电量、内存空间、运行模式以及当前运行应用中的任意一项或多项,并且/或者所述操作信息可以包括用户针对所述终端上的预安装应用执行的第一操作信息和/或用户针对所述终端上的第三方应用执行的第二操作信息。
优选地,获取终端相关的信息的步骤可以包括:接收从所述终端上传的终端相关的信息。
优选地,所述识别终端的当前场景的步骤可以包括:对所述终端相关的信息进行解析,以得到一种或多种特征维度下的状态信息;基于解析得到的状态信息,确定所述终端的当前场景。
优选地,所述状态信息可以包括以下一种或多种特征维度:时间;位置;终端状态;行为类型;行为偏好。
优选地,所述向终端推送业务信息的步骤可以包括:基于所述终端的当前场景和所述终端的当前用户的个性化信息,确定要推送的业务信息;以及向所述终端推送所确定的业务信息。
优选地,所述确定要推送的业务信息的步骤可以包括:基于所述终端的当前场景和所述终端的当前用户的个性化信息,确定适于向所述终端推送的多个候选业务信息;计算所述多个候选业务信息中每个候选业务信息的优先级;按照优先级由大到小的顺序,将排名靠前的预定数量的候选业务信息确定为向所述终端推送的业务信息。
优选地,该方法还可以包括:判断当前推送周期内向所述终端推送所述业务信息的次数是否超过第一预定阈值;在判定当前推送周期内推送的次数未超过第一预定阈值的情况下,向所述终端推送业务信息。
优选地,该方法还可以包括:判断最近一次向所述终端推送所述业务信息的时刻与当前时刻之间的时间是否超过第二预定阈值;在判定时间超过第二预定阈值的情况下,向所述终端推送业务信息。
优选地,所述向所述终端推送业务信息的步骤还可以包括:利用预先训练好的预测模型,预测用户对基于所述当前场景推送的业务信息的操作结果;基于预测的操作结果,确定是否向所述终端推送业务信息。
优选地,所述操作结果可以包括:点击结果和/或转化结果;或者点击概率和/或转化概率。
根据本公开的第二个方面,还提供了一种模型训练方法,包括:构造一个或多个训练样本,其中,所述训练样本的特征是对终端相关的信息进行识别得到的场景,所述训练样本的标记是用户对基于所述场景推送的业务信息的操作结果;使用一个或多个所述训练样本训练预测模型,其中,所述预测模型用于预测用户对基于所述当前场景推送的业务信息的操作结果。
优选地,所述场景包括一种或多种特征维度下的状态信息。
优选地,所述状态信息可以包括以下一种或多种特征维度:时间;位置;终端状态;行为类型;行为偏好。
优选地,所述操作结果可以包括:点击结果和/或转化结果;或者点击概率和/或转化概率。
根据本公开的第三个方面,还提供了一种信息推送装置,包括:信息获取装置,用于获取终端相关的信息;场景识别装置,用于基于所述终端相关的信息,识别所述终端的当前场景;以及信息推送装置,用于基于所述当前场景,向所述终端推送业务信息。
优选地,所述终端相关的信息包括通过多种方式获取的多个方面的信息。
优选地,所述终端相关的信息包括所述终端的状态信息和/或用户针对所述终端执行的操作信息。
优选地,所述状态信息包括时间、网络接入类型、定位信息、型号、***类型、电量、内存空间、运行模式以及当前运行应用中的任意一项或多项,并且/或者所述操作信息包括用户针对所述终端上的预安装应用执行的第一操作信息和/或用户针对所述终端上的第三方应用执行的第二操作信息。
优选地,信息获取装置可以接收从终端上传的终端相关的信息。
优选地,所述场景识别装置可以包括:解析模块,用于对所述终端相关的信息进行解析,以得到一种或多种特征维度下的状态信息;第一确定模块,用于基于解析得到的状态信息,确定所述终端的当前场景。
优选地,所述状态信息可以包括以下一种或多种特征维度:时间;位置;终端状态;行为类型;行为偏好。
优选地,所述信息推送装置可以包括:第二确定模块,用于基于所述终端的当前场景和所述终端的当前用户的个性化信息,确定要推送的业务信息;以及推送模块,用于向所述终端推送所确定的业务信息。
优选地,所述第二确定模块可以包括:候选信息确定模块,用于基于所述终端的当前场景和所述终端的当前用户的个性化信息,确定适于向所述终端推送的多个候选业务信息;分值计算模块,用于计算所述多个候选业务信息中每个候选业务信息的优先级;排序确定模块,用于按照优先级由大到小的顺序,将排名靠前的预定数量的候选业务信息确定为向所述终端推送的业务信息。
优选地,该装置还可以包括:第一判断装置,用于判断当前推送周期内向所述终端推送所述业务信息的次数是否超过第一预定阈值,在所述第一判断装置判定当前推送周期内推送的次数未超过第一预定阈值的情况下,所述信息推送装置向所述终端推送业务信息。
优选地,该装置还可以包括:第二判断装置,用于判断最近一次向所述终端推送所述业务信息的时刻与当前时刻之间的时间是否超过第二预定阈值,在所述第二判断装置判定时间超过第二预定阈值的情况下,所述信息推送装置向所述终端推送业务信息。
优选地,该装置还可以包括:预测装置,用于利用预先训练好的预测模型,预测用户对基于所述当前场景推送的业务信息的操作结果,所述信息推送装置基于预测的操作结果,确定是否向所述终端推送业务信息。
优选地,所述操作结果可以包括:点击结果和/或转化结果;或者点击概率和/或转化概率。
根据本公开的第四个方面,还提供了一种模型训练装置,包括:构造装置,用于构造一个或多个训练样本,其中,所述训练样本的特征是对终端相关的信息进行识别得到的场景,所述训练样本的标记是用户对基于所述场景推送的业务信息的操作结果;训练装置,用于使用一个或多个所述训练样本训练预测模型,其中,所述预测模型用于预测用户对基于所述当前场景推送的业务信息的操作结果。
优选地,所述场景包括一种或多种特征维度下的状态信息。
优选地,所述状态信息包括以下一种或多种特征维度:时间;位置;终端状态;行为类型;行为偏好。
优选地,所述操作结果可以包括:点击结果和/或转化结果;或者点击概率和/或转化概率。
根据本公开的第五个方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行本公开的第一个方面或第二个方面述及的方法。
根据本公开的第六个方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行本公开的第一个方面或第二个方面述及的方法。
利用本公开的信息推送方案推送的业务信息是根据当前场景确定的,因此推送的业务信息能够较好地满足用户当前的个性化需求。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1是用于实现本公开实施例的环境的示意图。
图2示出了根据本公开一实施例的信息推送方法的示意性流程图。
图3示出了本公开的信息推送方案的一种实现流程图。
图4示出了根据本公开一实施例的信息推送装置的结构框图。
图5示出了根据本公开一实施例的模型训练装置的结构框图。
图6是可以用于执行本公开的信息推送方法或模型训练方法的计算设备的示意性框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
【术语解析】
POI,Point of Interest的缩写,可以翻译成“信息点”,每个POI可以包含四方面信息,名称、类别、经度纬度、附近的酒店饭店商铺等信息。
LBS,基于位置的服务,它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在地理信息***(外语缩写:GIS、外语全称:Geographic Information System)平台的支持下,为用户提供相应服务的一种增值业务。
Push,移动端的消息推送。
TT,TimeTunnel的缩写,一种集日志的采集、传输、存储、监控于一体的日志管理***示例。
SLS,Simple Log Service的缩写,简单日志服务,一种针对日志收集、存储、查询和分析的服务***示例。
MetaQ,一个消息中间件。
Galaxy,通用的流式计算(Stream Computing)平台,提供实时(分钟级、秒级和百毫秒级延迟)的流式数据计算服务。
Blink,基于flink开源架构的扩展、优化的一个流式计算框架。
【方案概述】
本公开主要提出了一种能够使推送的信息有效触达用户的信息推送方案。本公开的核心思想是,通过收集并分析终端相关的信息,识别终端的当前场景,以识别出的场景为信息推送的依据,向终端用户推送与当前场景相匹配的业务信息。由于推送的业务信息是根据当前场景确定的,因此推送的业务信息能够较好地满足用户当前的个性化需求。
进一步地,本公开述及的终端相关的信息可以包括终端产生的终端实时行为信息,即用户针对终端执行的实时操作信息。由此,本公开的信息推送方案是以用户针对终端执行的实时操作信息为信息推送的触发因子,因此可以使得信息推送的时机与终端的用户使用状态一致,进而可以使得信息推送的流量分布与用户的自然行为分布趋势一致,避免了流量集中在某几个固定时段的问题。
更进一步地,本公开的信息推送方案可以由服务端实现,即可以由服务端接收从终端(即客户端)上传的终端相关的信息。当有数据上报时,表明终端处于联网状态,因此,本公开的信息推送方案通过以终端上传的终端相关的信息为信息推送的触发因子,还可以避免等待用户联网的过程,实现信息的实时推送。
综上,利用本公开的信息推送方案,在推送时机和推送内容两方面均能够有效触达用户,从而可以提高用户的推送体验。
本公开实施例提供的信息推送方案可以应用于如图1所示的环境中。图1是用于实现本公开实施例的环境的示意图。在一个实施例中,环境中的终端10可以经由网络40实现与服务器20的信息收发。服务器20可以将从终端10获取的数据存储至数据库30,也可以通过访问数据库30来获取终端10所需的内容。终端10之间(例如,10_1与10_2或10_N之间)也可以经由网络40彼此通信。网络40可以是广义上的用于信息传递的网络,可以包括一个或多个通信网络,诸如无线通信网络、因特网、私域网、局域网、城域网、广域网或是蜂窝数据网络等。在一个实施例中,网络40也可以包括卫星网络,由此将终端10的GPS信号传送给服务器20。应当注意,如果向图1中添加或从图1中去除附加模块,不会改变本发明的示例实施例的底层概念。另外,虽然为了方便说明而在图中示出了从数据库30到服务器20的双向箭头,但本领域技术人员可以理解的上,上述数据的收发也是可以通过网络40实现的。
终端10可以是可用来进行网络访问的任何合适的电子设备,如可以是便携式电子设备,包括但不限于智能电话、平板电脑或是其他便携式终端。服务器20则是能够通过网络访问的提供交互服务所需信息的任何服务器。图中虽然示出了多个终端10-1…N以及单个服务器20和数据库30,并且在随后的描述中会选择其中的一个或部分终端加以描述(例如,终端10-1),但是本领域技术人员应该理解的是,上述1…N个终端旨在表示真实网络中存在的多个终端,示出的单个服务器20和数据库30旨在表示本发明的技术方案涉及服务器及数据库的操作。对特定编号的终端以及单个服务器和数据库加以详述至少为了说明方便,而非暗示对终端和服务器的类型或是位置等具有限制。
图2示出了根据本公开一实施例的信息推送方法的示意性流程图。其中图2示出的信息推送方法可以由图1中的终端10实现,也可以由服务器20实现,还可以由服务器20和终端10配合实现。优选地,可以由服务器20实现。
参见图2,在步骤S210,获取终端相关的信息。
其中获取终端相关的信息的步骤可以由服务器执行,例如可以由服务器接收从终端(即客户端)上传的终端相关的信息。本公开述及的终端优选地是指手机、IPAD、智能手表等便携式终端(如移动终端)。
所获取的终端相关的信息可以包括通过多种方式获取的多个方面的信息,如可以是以不同方式获取的终端的多个层次、多个领域的信息。例如,可以以不同方式获取终端状态信息、用户针对***级app的行为信息、用户针对第三方app的行为信息等不同层次的跨领域信息,得到终端相关的信息。
本公开述及的终端相关的信息可以包括终端的状态信息和用户针对终端执行的操作信息。状态信息可以包括但不限于时间、网络接入类型(WIFI、2G、3G、4G等)、定位信息、型号(如终端的机型)、***类型、电量、内存空间(可以是当前剩余内存空间或当前占用内存空间)、运行模式(如待机模式、飞行模式、省电模式、省流量模式等等)以及当前运行应用(可以包括前台运行应用和后台运行应用)等等。
用户针对终端执行的操作信息可以包括用户针对终端上的预安装应用执行的第一操作信息和用户针对终端上的第三方应用执行的第二操作信息。
本公开述及的第三方应用特指与预安装应用对立的由终端用户自主安装的应用。预安装应用可以包括***级应用和其它预安装应用。其中,***级应用可以包括但不限于应用市场、日历、信息、联系人、时钟、录音机等,其它预安装应用可以是由厂家和/或经销商在终端上预安装的应用。
作为本公开的一个可选实施例,终端相关的信息的获取步骤可以由服务器执行,即可以由服务器从终端获取终端相关的信息。具体实现上,可以通过安装在终端上的监控软件监控收集终端上的活动信息(即终端相关的信息),所收集的信息可以上传至服务器,以便服务器对收集的信息进行解析。
在步骤S220,基于终端相关的信息,识别终端的当前场景。
在获取终端相关的信息后,可以对终端相关的信息进行解析,以得到一种或多种特征维度下的状态信息。例如可以通过解析得到时间、位置、终端状态、行为类型、行为偏好等多种特征维度下的状态信息。其中,终端状态可以包括但不限于电量、内存空间、运行模式、当前运行应用等多种终端状态中的一种或多种。行为类型和行为偏好可以通过对用户针对终端执行的操作信息解析得到,例如,在用户在终端上执行搜索操作时,可以确定行为类型为搜索行为,在用户多次打开旅游类应用时,可以确定行为偏好为旅游偏好。
作为本公开的一个实施例,在由服务器从多个终端获取多条终端相关的信息的情况下,可以解析出每条信息的用户id(即终端id)、用户状态、行为类型、行为偏好、终端状态、时间(时间戳)、位置等等。
根据解析得到的一个或多个特性维度下的状态信息,可以进一步识别出终端的当前场景。例如,根据对终端相关的信息解析得到的当前位置信息,如当前用户所处的商圈、购物中心或POI等位置信息,可以识别出当前的LBS场景;根据用户在终端的桌面执行的搜索行为,可以识别出当前场景为搜索场景,进一步地,根据执行搜索行为所使用的搜索词,可以进一步识别出能够表现用户当前的搜索需求的搜索需求场景;根据用户对第三方应用的使用情况,可以识别出用户的行为偏好场景,例如用户在短时间内多次打开旅游类应用,则可以确定当前场景为旅游偏好场景;根据时间戳与位置信息,当捕捉到用户在下班时间回到家中时,可以识别出当前场景为娱乐休闲场景。根据终端相关的信息,还可以确定其他多种场景,此处不再赘述。
在步骤S230,基于当前场景,向终端推送业务信息。
所识别的当前场景能够在一定程度上表征终端用户在当前的个性化需求,因此可以基于当前场景确定适于向终端用户推送的业务信息,以使得向终端推送的业务信息能够较好地满足用户的当前个性化需求,提高用户的推送体验。
例如,在识别出当前场景为LBS场景的情况下,可以向终端推送基于LBS的周边生活服务信息;在识别出当前场景为搜索场景的情况下,可以向终端推送与提取的搜索词相关的商业化内容;在识别出当前场景为旅游偏好场景的情况下,可以有针对性底向终端的当前用户推送旅游类的资讯或旅游类的商业推广信息;在识别出当前场景为用户下班回到家中时,可以用户推送相关的娱乐信息。
至此结合图2就本公开的信息推送方案的基本实现流程做了说明。下面对本公开的技术方案涉及的其它方面分别进行描述。
【推送内容的确定】
在本公开中,基于所确定的当前场景,可以结合终端的当前用户的个性化信息(如历史行为、实时行为、长期与短期兴趣等等)确定要推送的业务信息(即推送内容)。
作为本公开的一个可选实施例,可以基于当前场景和当前用户的个性化信息,确定适于向终端推送的多个候选业务信息,其中候选业务信息的数量可以根据需求设定,一般在几十到几百之间。针对多个候选业务信息,可以计算每个候选业务信息的优先级,按照优先级由大到小的顺序,将排名靠前的预定数量的候选业务信息确定为向终端推送的业务信息。
具体可以通过多种方式计算候选业务信息的优先级。例如,可以使用机器学习模型,综合用户的画像、兴趣、行为特征等多方面因素,对每个候选业务信息进行精细化打分,以确定其优先级。其中,机器学习模型可以是用于预估用户在当前场景下对业务信息的点击概率和/或转化概率的预测模型,其可以是预先训练得到的。可以使用机器学习模型预测用户在当前场景下对候选业务信息的点击概率和/或转化概率,该概率值可以作为其优先级的衡量因子。而根据用户的画像、兴趣、行为特征等信息对业务信息进行打分的实现过程为本领域技术人员所公知,此处不再赘述。
【适度推送】
为了避免过度推送对用户产生骚扰,针对每个终端,可以设定单个推送周期内的推送次数上限,或者设定推送间隔。例如,推送周期可以为一天,可以设定每天为同一终端推送的次数上限(如8次),另外也可以设定针对同一终端执行的相邻两次推送的时间间隔,如相邻两次推送的时间间隔可以设定为不小于1小时。
在为用户设定推送次数上限的情况下,在向终端推送业务信息前,可以判断当前推送周期内向终端推送业务信息的次数是否超过设定的次数上限(为了便于区分,此处称为第一预定阈值),在判定次数未超过第一预定阈值的情况下,才向终端推送业务信息。
在为用户设定相邻两次推送的时间间隔的阈值(为了便于区分,此处称为第二预定阈值)的情况下,在向终端推送业务信息前,可以判断最近一次向终端推送业务信息的时刻与当前时刻之间的时间是否超过第二预定阈值,在判定超过第二预定阈值的情况下,才向终端推送业务信息。
优选地,可以在获取到终端的终端相关的信息(即步骤S210)后,对当前推送周期内的推送次数或相邻的推送间隔进行判断,在符合推送条件的情况下下,才执行后续步骤S220、S230。
【推送预测】
为了提高推送的业务信息被点击和/或转化的概率,提高用户的推送体验。在向用户推送业务信息前,可以利用预先训练好的预测模型(机器学习模型)预测用户对基于当前场景推送的业务信息的操作结果,基于预测的操作结果,确定针对当前场景是否向终端推送业务信息。
预测模型的训练过程如下。
(1)构造训练样本。
训练样本的特征是对终端相关的信息进行识别得到的场景,训练样本的标记是用户对基于场景推送的业务信息的操作结果。
场景可以包括一种或多种特征维度下的状态信息,也就是说,训练样本的特征可以是一种或多种特征维度下的状态信息。例如,可以包括但不限于时间、位置、终端状态、行为类型、行为偏好等特征维度下的状态信息。其中,关于终端相关的信息、终端状态、行为类型、行为偏好,可以参见上文相关描述,此处不再赘述。
在本公开中,基于同一场景向终端用户推送的业务信息可以是多个,因此每个训练样本的标记(即操作结果)可以是用户分别对基于场景推送的多个业务信息中的每个业务信息执行的操作结果的统计结果,而该统计结果可以是经过统计得到的最终点击结果和/或转化结果,也可以是经过统计得到的点击概率和/或转化概率。
也就是说,操作结果可以是点击结果和/或转化结果,也可以是点击概率和/或转化概率。其中,点击结果是指用户对基于场景推送的业务信息的点击结果,包括“点击”和“不点击”两种情况。转化结果是指基于场景推送的业务信息被转化的结果,包括“转化”和“未转化”两种情况,本公开述及的转化是指推送的业务信息被用户接受,例如以推送的业务信息为账户注册信息为例,如果用户注册账户,则认为该信息被用户接受,业务信息转化成功,如果用户未注册账户,则认为该信息未被用户接受,业务信息转化失败。点击概率是指用户对基于场景推送的业务信息的点击概率,转化概率是指用户对基于场景推送的信息的转化概率。
(2)使用训练样本训练预测模型
训练过程为本领域所公知,此处不再赘述。最终训练得到的预测模型可以用于预测用户对基于当前场景推送的业务信息的操作结果。其中,操作结果可以是点击结果和/或转化结果,也可以是点击概率和/或转化概率。
也就是说,最终训练得到的预测模型可以用于预测用户对基于某一场景推送的业务信息是否点击或该业务信息是否被转化,也可以用于预测用于对基于某一场景推送的业务信息进行点击或转化的概率。
预测模型的使用过程如下。
在预测模型用于预测用户对基于当前场景推送的业务信息的点击概率和/或转化概率的情况下,可以利用预测模型对基于步骤S220确定的当前场景进行预测,预测用户对基于该当前场景推送的业务信息的点击概率和/或转化概率。在预测的点击概率和/或转化概率较低的情况下,可以不向终端推送业务信息。
在预测模型用于预测用户对基于当前场景推送的业务信息的点击结果和/或转化结果的情况下,可以利用预测模型对基于步骤S220确定的当前场景进行预测,预测用户对基于该当前场景推送的业务信息的点击结果和/或转化结果。在预测的点击结果和/或转化结果为否的情况下,可以不向终端推送业务信息。
【应用例】
图3示出了本公开的信息推送方案的一种实现流程图。
参见图3,在步骤S310,可以实时收集用户数据流。
具体可以基于操作***层面收集多个层级、多个领域的实时数据流,例如可以包括终端状态信息、用户针对***级应用的行为和用户针对第三方应用的行为。
本实施例述及的数据流是指随着时间的推移不断采集的用户数据,实时数据流是指实时采集的数据流。收集的实时数据流相当于前文述及的终端相关的信息,或者说,通过对实时数据流进行解析,可以得到终端相关的信息。
作为示例,终端状态信息可以包含终端的网络接入类型(WIFI、移动网络)、定位信息、手机型号、***类型、电量、内存空间等;用户针对***级应用的行为可以包含用户在应用商店的动作、用户信息流浏览、用户在主屏幕搜索、用户使用地图等;用户针对第三方应用的行为包含第三方应用的安装、卸载、启动、关闭等。
上述多个跨域的类型数据可以通过客户端埋点或是后台服务按照事先约定的统一数据格式实时输入到日志管理***,如可以输入到TT、SLS、MetaQ等日志通道中。
在步骤S320,流式数据解析。
可以利用流式计算平台对步骤S310收集的多个实时数据流进行解析处理。例如可以使用galaxy、blink等实时流式计算平台实现。处理流程包括以下步骤。
(1)galaxy接入1)中SLS、MetaQ通道的数据,统一转换输出到TT。
(2)blink接入TT的数据,查询用户的已投放次数与最近一次投放时间,如果用户的已投放次数达到上限或最近一次投放时间距离当前时间小于一定阈值,则过滤掉本次请求。
(3)对于未被过滤掉的请求,解析出每条数据的用户id、状态信息、行为类型、时间戳等内容供后续模块使用。
在步骤S330,场景分析与决策。
可以根据上一步输出的用户状态信息、行为类型等,解析出用户的场景以及上下文信息,用于后续模块根据不同场景召回不同的个性化内容进行推送。
在步骤S340,内容个性化召回。
可以根据确定的当前场景、历史与实时行为、长期与短期兴趣,针对不同用户和不同场景召回相关的内容,该模块为粗粒度召回,召回的集合大小一般在几十到几百之间。如图3所示,所召回的内容可以是音乐、视频、资讯、广告等多种类型的内容(即业务信息)。
在步骤S350,内容精细化排序。
针对召回的内容,可以应用机器学习模型,综合用户的画像、兴趣、行为等特征,对每个内容进行精细化打分,选出得分最高的N个内容。
如图3所示,在执行步骤S330、步骤S340、步骤S350的过程中,均可以参考用户画像与用户兴趣。
在步骤S360,内容推送。
可以根据客户端与服务端的连接保持情况,将得分最高的N个内容推送至终端。
可见,本公开提出的基于终端的实时场景进行信息推送(包括push、短信、即时通讯工具等)的方案,与传统的推送方案相比,能够有效的识别用户的特定场景需求。比如通过POI及相关查询信息识别出用户的购物行为的场景,推送周边商家的相关的优惠信息;通过用户的位置移动信息及时间信息识别出用户的出行场景,推送相关的音乐及新闻服务。
这种基于场景的消息推送在实际运营过程中,能够有效提高内容分发的智能程度及用户对内容的接受程度,在触达效率和效果上有很大提升。在实际商业化推送中,基于本公开的信息推送方案推送的内容(业务信息)的点击率/转化率相对于传统方案提高80%以上,在分发效率和用户体验上均有显著提升。
本公开的信息推送方案可以作为信息推荐***为安装在终端上的各类应用提供信息推荐服务,也可以作为信息推荐模块嵌入在安装在终端上的特定应用中。也就是说,本公开可以实施为基于push及短信推送的业务产品,也可以实施为存在push及短信业务的移动端***(如Android、ios、小米、华为等),还可以嵌入在微信、QQ等即时通信软件及存在多条产品线的移动APP中。
【信息推送装置】
图4示出了根据本公开一实施例的信息推送装置的结构框图。其中,装置中的各功能模块可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是,图4所描述的功能模块可以组合起来或者划分成子模块,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能模块的任何可能的组合、或者划分、或者更进一步的限定。下面仅就装置可以具有的功能模块以及各功能模块可以执行的操作做简要说明,对于其中涉及的细节部分可以参见上文描述,这里不再赘述。
参见图4,信息推送装置400包括信息获取装置410、场景识别装置420以及信息推送装置430。
信息获取装置410用于获取终端相关的信息,优选地信息获取装置410可以接收从终端上传的终端相关的信息。终端相关的信息可以包括通过多种方式获取的多个方面的信息。例如,终端相关的信息可以包括终端的状态信息和/或用户针对终端执行的操作信息。
状态信息包括时间、网络接入类型、定位信息、型号、***类型、电量、内存空间、运行模式以及当前运行应用中的任意一项或多项。
操作信息包括用户针对终端上的预安装应用执行的第一操作信息和/或用户针对终端上的第三方应用执行的第二操作信息。
场景识别装置420用于基于终端相关的信息,识别终端的当前场景。
如图4所示,场景识别装置420可以可选地包括图中虚线框所示的解析模块421和第一确定模块423。
解析模块421用于对终端相关的信息进行解析,以得到一种或多种特征维度下的状态信息。作为示例,特征维度可以包括但不限于以下一种或多种:时间、位置、终端状态、行为类型以及行为偏好。第一确定模块423用于基于解析得到的状态信息,确定终端的当前场景。
信息推送装置430用于基于当前场景,向终端推送业务信息。
如图4所示,信息推送装置430可以可选地包括图中虚线框所示的第二确定模块431和推送模块433。
第二确定模块431用于基于终端的当前场景和终端的当前用户的个性化信息,确定要推送的业务信息。推送模块433用于向终端推送所确定的业务信息。
如图4所示,第二确定模块431可以可选地包括图中虚线框所示的候选信息确定模块4311、分值计算模块4313以及排序确定模块4315。
候选信息确定模块4311用于基于终端的当前场景和终端的当前用户的个性化信息,确定适于向终端推送的多个候选业务信息。分值计算模块4313用于计算多个候选业务信息中每个候选业务信息的优先级。排序确定模块4315用于按照优先级由大到小的顺序,将排名靠前的预定数量的候选业务信息确定为向终端推送的业务信息。
如图4所示,信息推送装置400还可以可选地包括图中虚线框所示的第一判断装置440。
第一判断装置440用于判断当前推送周期内向终端推送业务信息的次数是否超过第一预定阈值,在第一判断装置440判定当前推送周期内推送的次数未超过第一预定阈值的情况下,信息推送装置430才向终端推送业务信息。
如图4所示,信息推送装置400还可以可选地包括图中虚线框所示的第二判断装置450。
第二判断装置450用于判断最近一次向终端推送业务信息的时刻与当前时刻之间的时间是否超过第二预定阈值,在第二判断装置450判定时间超过第二预定阈值的情况下,信息推送装置430才向终端推送业务信息。
如图4所示,信息推送装置400还可以可选地包括图中虚线框所示的预测装置460。
预测装置460用于利用预先训练好的预测模型,预测用户对基于当前场景推送的业务信息的操作结果,信息推送装置430基于预测的操作结果,确定是否向终端推送业务信息。其中操作结果可以包括点击结果和/或转化结果,或者可以包括点击概率和/或转化概率。
【模型训练装置】
图5示出了根据本公开一实施例的模型训练装置的结构框图。其中,装置中的各功能模块可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是,图5所描述的功能模块可以组合起来或者划分成子模块,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能模块的任何可能的组合、或者划分、或者更进一步的限定。下面仅就装置可以具有的功能模块以及各功能模块可以执行的操作做简要说明,对于其中涉及的细节部分可以参见上文描述,这里不再赘述。
如图5所示,模型训练装置500包括构造装置510和训练装置520。
构造装置510用于构造一个或多个训练样本,其中,训练样本的特征是对终端相关的信息进行识别得到的场景,训练样本的标记是用户对基于场景推送的业务信息的操作结果,
场景包括一种或多种特征维度下的状态信息。状态信息包括以下一种或多种特征维度:时间、位置、终端状态、行为类型、行为偏好。
操作结果可以包括点击结果和/或转化结果,或者可以包括点击概率和/或转化概率。
训练装置520用于使用一个或多个训练样本训练预测模型,其中,预测模型用于预测用户对基于当前场景推送的业务信息的操作结果。
【计算设备】
根据本公开还提供了一种可以用于执行本公开的信息推送方法或模型训练方法的计算设备。
图6是可以用于执行本公开的信息推送方法或模型训练方法的计算设备的示意性框图。
如图6所示,该计算设备600可以包括处理器610和存储器620。存储器620上存储有可执行代码。当处理器610执行该可执行代码时,使得处理器610执行上面描述的信息推送方法或模型训练方法。
上文中已经参考附图详细描述了根据本发明的信息推送及模型训练方法、装置及计算设备。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的***和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。