具体实施方式
本申请实施例提供了基于深度学习的用户画像优化方法、装置及存储介质,结合初级用户画像以及用户在预设时段内的交互行为信息,能够挖掘出更多的用户行为特征和用户基本特征,再利用深度学习模型学习这些特征之间的关联,从而有利于预测得到更准确的用户画像。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
挖掘不同组织的优化用户画像对于分析问题、信息推送、人数估计以及模型训练等方面,都具有非常重要的意义。不同组织包含但不仅限于家庭组织、办公组织、学校组织以及其他组织等,本申请以家庭组织为例进行介绍,但这不应理解为对本申请的限定。其中,家庭组织是指用户常住地居所的家庭结构(family structure),家庭组织是指家庭中成员的构成及其相互作用和相互影响的状态,以及由这种状态形成的相对稳定的联系模式。家庭结构包括两个基本方面,第一是家庭人口要素,即家庭由多少人组成,家庭规模大小。第二是家庭模式要素,即家庭成员之间怎样相互联系,以及因联系方式不同而形成的不同的家庭模式。
在一个家庭组织中,优化用户画像可以是家庭级别信息。基于家庭结构成员之间的现实关系(例如,亲人关系、室友关系或需要长期生活在一起的其它关系)可确定家庭级别信息,需要说明的是,家庭优化用户画像可包括四个等级,分别为由1人构成的家庭级别信息,由2至3人构成的家庭级别信息,由3至5人构成的家庭级别信息,以及由5人以上构成的家庭级别信息。
然而,在实际情况下,难以统计每个组织的优化用户画像,因此,为了能够预测得到更准确的优化用户画像,本申请提供了一种基于深度学习的用户画像优化方法,该方法应用于图1所示的用户画像优化系统,如图所示,用户画像优化系统包括服务器和终端设备,且客户端部署于终端设备上。本申请涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、掌上电脑、个人电脑、智能电视、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。服务器和终端设备的数量也不做限制。
终端设备可以向服务器发送业务请求,该业务请求携带目标用户的标识,以使服务器基于目标用户的标识,获取目标用户的初级用户画像以及目标用户在预设时段内的交互行为信息,并对这些信息进行特征化处理,得到目标特征向量。将目标特征向量输入至已训练的用户画像优化模型,由用户画像优化模型输出该目标用户的优化用户画像。其中,用户画像优化模型是基于机器学习(Machine Learning,ML)训练得到的,其中,机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
机器学习属于人工智能(Artificial Intelligence, AI)技术的一个分支,其中,人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
下面将对本申请的核心步骤进行介绍,请参阅图2,图2为本申请实施例中用户画像优化方法的一个核心流程示意图,如图所示,核心步骤分为三个部分,具体地:
第一部分为原始数据积累,将用户线上实时请求的日志数据接入HDFS进行存储。考虑到存储成本和后续计算效率,基于数据仓库工具(hive)的结构化查询语言(Structured Query Language,SQL)对日志的关键信息进行原始特征的提取和存储,并且对于冗余数据进行丢弃。
第二部分为数据特征工程,根据存储在HDFS中的原始特征的数据特性,进行合适的特征处理方法。这里选用计算引擎(Spark)和符号数据系统(TensorFlow)进行特征工程。具体分工为,针对于非嵌入(Embedding)的常规特征工程方法,可以基于Spark进行计算,并将结果存储在HDFS。针对于Embedding的深度学习特征工程方法,基于符号数据系统(TensorFlow)计算引擎进行计算,并将结果存储在HDFS。
第三部分为模型训练和评估,首先基于hive SQL,将特征从HDFS中读出,然后基于TensorFlow进行建模,最后基于内置的数学评估方法进行模型评估,模型评估包括模型线下评估以及模型线上评估。评估结果分为两种情况,第一种情况为评估指标正向,则将模型推到线上,进行A/B测试(A/B Test),如果A/B Test也显示各项业务指标正向,则接入全部流量进行线上正式使用。第二种情况为评估指标负向,那么需要重新对模型进行训练,直到模型效果符合预期。
结合上述介绍,下面将对本申请中基于深度学习的用户画像优化方法进行介绍,请参阅图3,本申请实施例中用户画像优化方法的一个实施例包括:
101、获取目标用户的初级用户画像,其中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息中的至少一种,用户基础信息表示用户相关的信息,设备基础信息表示终端设备相关的信息,地理位置信息表示用户的位置信息;
本实施例中,用户画像优化装置获取目标用户的初级用户画像,该目标用户即待预测所属优化用户画像的用户。其中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息中的至少一种,下面将分别对这三类信息进行介绍。
具体地,用户基础信息表示用户相关的信息,例如,用户的性别、年龄、职业、学历以及兴趣爱好等。设备基础信息表示终端设备相关的信息,例如,终端设备的型号、终端设备的运营商、终端设备的内存、终端设备的品牌以及终端设备的价格等。地理位置信息表示用户的位置信息,例如,上海、北京以及深圳等。
需要说明的是,用户画像优化装置可部署于计算机设备,该计算机设备可以是服务器,也可以是终端设备,本申请以用户画像优化装置部署于服务器为例进行介绍,然而这不应理解为对本申请的限定。
102、获取目标用户在预设时段内的交互行为信息,其中,交互行为信息包括兴趣点信息、接入点轨迹信息、应用流量信息以及应用时间信息中的至少一种,接入点轨迹信息表示终端设备的接入顺序;
本实施例中,用户画像优化装置获取目标用户在预设时段内的交互行为信息,预设时段可指一个时间窗口,例如,近半年、近三个月、近一个月、近1周、近3天或者近1天等,更具体地,还可以指具体的时间段,例如,休息时间、活动时间、假期时间、周末时间和工作日时间等。其中,交互行为信息包括兴趣点信息、接入点轨迹信息、应用流量信息以及应用时间信息中的至少一种,下面将分别对这四类信息进行介绍。
具体地,兴趣点(Point of Interest,POI)信息表示与POI相关的信息,POI可指一些固定场所,例如,酒店、餐厅、商场以及健身房等,与POI相关的信息包含但不仅限于用户去过POI的类型和次数,以及用户对于POI的评价和消费情况等。接入点轨迹信息表示终端设备的接入顺序,例如,用户在预设时段内以此连接无线保真(Wireless Fidelity,wifi)网络1、wifi网络2、wifi网络8和wifi网络2。应用流量信息表示各类型应用的流量使用情况,例如,社交类应用的使用流量为5兆字节(Megabytes,MB),游戏类应用的使用流量为30MB。应用时间信息表示各类型应用的使用时长情况,例如,社交类应用的使用时长为35分钟,游戏类应用的使用时长为120分钟。
103、根据初级用户画像生成第一特征向量;
本实施例中,用户画像优化装置根据初级用户画像生成第一特征向量。
104、根据交互行为信息生成第二特征向量;
本实施例中,用户画像优化装置根据交互行为信息生成第二特征向量。
105、对第一特征向量与第二特征向量进行拼接处理,以得到目标特征向量;本实施例中,用户画像优化装置根据初级用户画像;
本实施例中,用户画像优化装置将第一特征向量和第二特征向量进行拼接(concat)处理,得到后的特征向量,即目标特征向量。
106、调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像。
本实施例中,用户画像优化装置调用训练好的用户画像优化模型对目标特征向量进行分析处理,通过用户画像优化模型输出目标用户所对应的优化用户画像。
由此可见,本申请基于深度学习技术建立一套精准有效且复用性强的自动化识别系统,能够识别出用户的优化用户画像,理论上,只需要调整输入的样本类型即可识别出对应的优化用户画像。需要说明的是,本申请涉及的优化用户画像包含但不仅限于家庭结构等级、最高学历等级以及个人信用分等级。
下面将以预测家庭结构等级为例,并结合信息推送场景进行介绍,请参阅图4,图4为本申请实施例在线处理和离线处理的一个流程示意图,如图所示,整个流程分为在线流程和离线流程两个部分,下面先介绍在线流程,具体地:
在步骤A1中,用户通过终端设备发送的业务请求,其中,业务请求携带目标用户的标识。
在步骤A2中,当服务器接收到业务请求时,根据用户标识会从线上数据存储引擎(Decache)中查询用户的特征,其中,Decache是一种高访问高并发的线上键值对(key-value)数据存储引擎。
在步骤A3中,在查询到用户特征之后,拉取该用户的实时行为特征数据,即得到用户实时特征向量。
在步骤A4中,将用户实时特征向量拼接成实时入模型的特征向量,即得到目标特征向量。
在步骤A5中,基于线下训练好的用户画像优化模型和用户的目标特征向量,预测当前用户的家庭优化用户画像,即确定家庭结构等级。
在步骤A6中,记录用户的线上行为反馈,这里的行为反馈是指用户对信息的反馈行为,假设该信息为曝光的广告,那么行为反馈可包括是否点击广告,广告是否转化等。
下面再介绍离线流程,具体地:
在步骤B1中,将信息推荐预测模型输出的预测评分与用户对线上信息(例如,广告)的历史行为数据存储在分布式文件系统(Hadoop Distributed File System,HDFS)上。
在步骤B2中,定时离线统计用户在不同时间窗口(例如,近半年、近三个月、近一个月、近1周和近3天)和不同时间段(例如,休息时间、活动时间、周末时间和工作日时间等)的交互行为信息。
在步骤B3中,对交互行为信息进行特征化处理。
在步骤B4中,生成特征化处理后得到的用户行为特征向量。
在步骤B5中,提取终端设备的画像特征,提取用户行为画像特征,以及提取用户在近期内对信息(例如,广告)的行为反馈。
在步骤B6中,对提取到的画像特征进行拼接。
在步骤B7中,获取拼接后的用户画像特征向量。
在步骤B8中,对用户画像特征向量和用户行为特征向量进行拼接。
在步骤B9中,将拼接后得到的特征向量用于模型训练,其中,包括训练用户画像优化模型以及信息推荐预测模型。
在步骤B10中,对训练好的模型进行线下评估,模型达标之后,即可投入线上使用。
在步骤B11中,对模型进行线上评估。
在步骤B12中,如果线上评估达标,则固化模型的模型参数,即完成模型训练。
本申请实施例中,提供了一种基于深度学习的用户画像优化方法,首先获取目标用户的初级用户画像,以及目标用户在预设时段内的交互行为信息,基于此,根据初级用户画像以及交互行为信息,生成目标特征向量,由此,调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像。通过上述方式,结合初级用户画像以及用户在预设时段内的交互行为信息,能够挖掘出更多的用户行为特征和用户基本特征,再利用深度学习模型学习这些特征之间的关联,从而有利于预测得到更准确的用户画像。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,获取目标用户的初级用户画像之前,还可以包括:
接收终端设备发送的业务请求,其中,业务请求携带目标用户的标识;
获取目标用户的初级用户画像,具体可以包括:
根据业务请求,从第一数据库中获取目标用户的初级用户画像,其中,第一数据库用于存储至少一个用户所对应的初级用户画像;
获取目标用户在预设时段内的交互行为信息,具体可以包括:
根据业务请求,从第二数据库中获取目标用户在预设时段内的交互行为信息,其中,第二数据库用于存储至少一个用户在不同时间窗口以及时间段内的交互行为信息。
本实施例中,介绍了一种基于不同数据来源生成目标特征向量的方式。以用户画像优化装置部署于服务器为例,首先服务器接收终端设备发送的业务请求,该业务请求包含但不仅限于视频播放业务、游戏登录业务、电商交易业务以及信息查询业务,且业务请求中携带目标用户的标识。基于此,服务器根据业务请求分别获取初级用户画像以及交互行为信息。
具体地,由于业务请求携带目标用户的标识,因此,基于目标用户的标识可从第一数据库中查找到相关的初级用户画像。在完成授权之后,服务器可调用第一数据库中的数据,第一数据库可以是存储大数据的数据库,第一数据库存储有至少一个用户的初级用户画像。为了便于理解,请参阅表1,表1为第一数据库中初级用户画像的一个示意。
表1
对象标识 |
性别 |
职业 |
学历 |
1001000 |
男性 |
学生 |
本科 |
0001010 |
男性 |
律师 |
硕士 |
1010010 |
女性 |
律师 |
硕士 |
1110010 |
男性 |
工程师 |
博士 |
1001001 |
女性 |
老师 |
本科 |
表1所示的初级用户画像仅为一个示意,不应理解为对本申请的限定。
类似地,基于目标用户的标识可从第二数据库中查找到目标用户在预设时段内的交互行为信息。在完成授权之后,服务器可调用第二数据库中的数据,第二数据库可以是存储日志数据的数据库,第二数据库存储有至少一个用户在不同时间窗口以及时间段内的交互行为信息。为了便于理解,请参阅表2,表2为第二数据库中交互行为信息的一个示意。
表2
对象标识 |
时间 |
应用类型 |
POI类型 |
1001000 |
2020/11/5 15:30:08 |
游戏类 |
咖啡厅 |
0001010 |
2020/11/5 22:10:23 |
社交类 |
五星级酒店 |
1010010 |
2020/11/5 19:12:11 |
工具类 |
健身房 |
1110010 |
2020/11/5 09:20:25 |
社交类 |
五星级酒店 |
1001001 |
2020/11/5 20:30:08 |
工具类 |
商场 |
表2所示的交互行为信息仅为一个示意,不应理解为对本申请的限定。
基于此,根据初级用户画像生成第一特征向量,并且根据交互行为信息生成第二特征向量,将第一特征向量与第二特征向量进行拼接处理,得到目标特征向量。
其次,本申请实施例中,提供了一种基于不同数据来源生成目标特征向量的方式,通过上述方式,当用户发起业务请求时,可根据该业务请求分别从相应的数据库中提取初级用户画像和交互行为信息,从而提升方案的可行性和可操作性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息,用户基础信息包括至少一类画像属性标签,设备基础信息包括至少一类设备属性标签,地理位置信息包括至少一类位置属性标签;
根据初级用户画像生成第一特征向量,具体可以包括:
针对于初级用户画像中的每类画像属性标签,对每类画像属性标签所对应的属性内容进行独热编码,以得到每类画像属性标签的独热编码向量,其中,每类画像属性标签的独热编码向量包含于第一特征向量;
针对于初级用户画像中的每类设备属性标签,对每类设备属性标签所对应的属性内容进行独热编码,以得到每类设备属性标签的独热编码向量,其中,每类设备属性标签的独热编码向量包含于第一特征向量;
针对于初级用户画像中的每类位置属性标签,对每类位置属性标签所对应的属性内容进行独热编码,以得到每类位置属性标签的独热编码向量,其中,每类位置属性标签的独热编码向量包含于第一特征向量。
本实施例中,提供了一种对信息进行独热编码(one-hot encoding)的方式。由前述实施例可知,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息中的至少一种,其中,用户基础信息包括画像属性标签,设备基础信息包括设备属性标签,地理位置信息包括位置属性标签,下面将分别结合具体示例,介绍上述三类信息的编码方式。
一、用户基础信息;
用户基础信息包括至少一类画像属性标签,画像属性标签包含但不仅限于性别、学历以及职业。以画像属性标签为学历作为示例,设定学历有七类,分别为“小学”、“初中”、“高中”、“大专”、“本科”、“硕士”和“博士”,每个类别对应一个维度。示例性地,假设目标用户的学历为“本科”,则“学历”所对应的独热编码向量为(0,0,0,0,1,0,0)。
二、设备基础信息;
设备基础信息包括至少一类设备属性标签,设备属性标签包含但不仅限于设备品牌、设备类型(例如,滑盖、直板以及翻盖等)以及设备产地。以设备属性标签为设备品牌作为示例,设定设备品牌有五类,分别为“苹果”、“华为”、“三星”、“小米”和“诺基亚”,每个类别对应一个维度。示例性地,假设目标用户使用的终端设备为“华为”,则“设备品牌”所对应的独热编码向量为(0,1,0,0,0)。
三、地理位置信息;
地理位置信息包括至少一类位置属性标签,位置属性标签包含但不仅限于国家、省份、市以及区,以位置属性标签为省份作为示例,设定省份有十类,分别为“北京”、“上海”、“广东”、“西安”、“湖南”、“湖北”、“山东”、“海南”、“广西”和“四川”。每个类别对应一个维度。示例性地,假设目标用户的常住地为“广东”,则“省份”所对应的独热编码向量为(0,0,1,0,0,0,0,0,0,0)。
需要说明的是,每类画像属性标签的独热编码向量,每类设备属性标签的独热编码向量,以及每类位置属性标签的独热编码向量都属于第一特征向量。
再次,本申请实施例中,提供了一种对信息进行one-hot编码的方式,通过上述方式,采用one-hot编码能够对初级用户画像中的部分进行编码,解决了分类器不好处理属性数据的问题,在一定程度上也起到了扩充特征的作用,从而提升数据处理的合理性和可行性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,初级用户画像包括设备基础信息,设备基础信息包括设备固定信息以及设备变量信息;
根据初级用户画像生成第一特征向量,具体可以包括:
对设备固定信息进行特征缩放处理,以得到已缩放特征,其中,已缩放特征包含于第一特征向量;
根据变量划分规则确定设备变量信息所对应的合并编码特征,其中,合并编码特征包含于第一特征向量。
本实施例中,介绍了一种对信息进行特征缩放(Feature Scaling)以及合并编码(Consolidation Encoding)的方式。由前述实施例可知,初级用户画像包括设备基础信息,其中,设备基础信息包括设备固定信息以及设备变量信息,下面将分别结合具体示例,介绍上述两类信息的编码方式。
一、设备固定信息;
对设备固定信息进行特征缩放处理,即根据数值型特征的分布情况,选择合适的归一化方法来消除特征之间的量纲差异,使模型更加稳定。比如对于符合或近似符合正态分布的特征,进行高斯归一化处理。设备固定信息包含但不仅限于终端设备的价格以及终端设备的内存,以设备固定信息为终端设备的价格作为示例进行介绍,特征缩放包括三种方式。
第一种为对固定信息进行调节比例(Rescaling)处理,该方法是将数据的特征缩放到[0,1]或[-1,1]之间,缩放到什么范围取决于数据的性质。固定信息缩放前与缩放后满足如下关系:
其中,
表示缩放后的值(即已缩放特征),x表示初始值。假设终端设备的价格为6000,即x=6000,假设该终端设备的最高售价为7000,最低售价为5000,则已缩放特征为0.5。
第二种为对固定信息进行平均值规范化(mean normalisation)处理,固定信息缩放前与缩放后满足如下关系:
其中,
表示缩放后的值(即已缩放特征),x表示初始值。假设终端设备的价格为6000,即x=6000,假设该终端设备的最高售价为7000,最低售价为5000,平均售价为5500,则已缩放特征为0.25。
第三种为对固定信息进行标准化(Standardization)处理,特征标准化使每个特征的值有零均值)和单位方差,固定信息缩放前与缩放后满足如下关系:
其中,
表示缩放后的值(即已缩放特征),x表示初始值,std()表示标准差,n表示设备总数。
二、设备变量信息;
某些类目变量下的多个取值,可以将其归纳成同一个信息。设备变量信息包含但不仅限于终端设备的系统版本号,以设备变量信息为终端设备的系统版本号作为示例,假设终端设备是安卓系统版本,安卓系统版本包括多个取值,例如“4.2”、“4.4”和“5.0”,基于经验确定变量划分规则,变量划分规则可以是将这三个取值的安卓系统版本归纳为“低版本安卓系统”。示例性地,假设目标用户使用的终端设备的系统版本号为“4.2”,则“系统版本号”所对应的合并编码特征为0。
安卓系统版本还包括多个取值,例如“6.0、“7.0”、“8.0”、“9.0”和“10.0”,基于经验确定变量划分规则,变量划分规则可以是将这五个取值的安卓系统版本归纳为“高版本安卓系统”。示例性地,假设目标用户使用的终端设备的系统版本号为“9.0”,则“系统版本号”所对应的合并编码特征为1。
需要说明的是,已缩放特征和合并编码特征都属于第一特征向量。
再次,本申请实施例中,提供了一种对信息进行特征缩放以及合并编码的方式,通过上述方式,特征缩放的目标就是数据规范化,使得特征的范围具有可比性,它是数据处理的预处理,对后续使用数据具有关键作用。而合并编码将不同的分类变量映射到同一变量,通过特征工程和人的经验,给模型添加了额外的学习信息,即增加了归类的信息,带来更大的正向收益。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,交互行为信息包括兴趣点信息,兴趣点信息包括兴趣点统计信息以及兴趣点关联信息;
根据交互行为信息生成第二特征向量,具体可以包括:
根据兴趣点统计信息确定计数编码特征,其中,计数编码特征包含于第二特征向量;
对兴趣点关联信息进行编码处理,以得到第一待处理特征;
基于第一待处理特征,通过第一特征处理网络所包括的网络层获取类别编码特征,其中,类别编码特征包含于第二特征向量。
本实施例中,介绍了一种对信息进行计数编码(Count Encoding)以及类别嵌入(Category Embedding)的方式。由前述实施例可知,交互行为信息包括POI信息,其中,设备基础信息包括POI统计信息以及POI关联信息,下面将分别结合具体示例,介绍上述两类信息的编码方式。
一、POI统计信息;
对POI统计信息进行计数编码,也就是用类别的统计特征来代替原始类别。POI统计信息包含但不仅限于用户到达某个POI的次数以及用户达到某个POI的小时数,以POI统计信息为用户到达某个POI的次数作为示例进行介绍。假设目标用户在预设时间内(例如,1个月内)住在五星级酒店2次,即计数编码特征为2。由此可见,某个POI对应的计数编码特征越大,表示用户对该POI的兴趣越高,同时还可基于计数编码特征了解用户的消费能力等。
可以理解的是,计数编码特征还可以是用户使用社交类应用的次数等,此处以POI统计信息作为示意,然而不应理解为对本申请的限定。
二、POI关联信息;
根据数据分析发现,有许多类目特征都存在较强的稀疏性。为了避免模型过拟合和提高模型稳定性,引入神经网络将高维稀疏分类变量转换为低维稠密的嵌入变量,即可对POI关联信息进行类别嵌入。POI关联信息包含但不仅限于用户到达某个POI的类型,用户给予某个POI的评价以及用户到达某个POI的品牌名。以POI关联信息为用户到达某个POI的品牌名作为示例进行介绍。假设目标用户在预设时间内(例如,1个月内)住的五星级酒店品牌名为“万豪”和“香格里拉”,将“万豪”和“香格里拉”分别进行编码,可采用one-hot编码进行编码,以得到第一待处理特征,将第一待处理特征输入至第一特征处理网络,其中,第一特征处理网络是由若干个网络层构成的神经网络,作为第一特征处理网络中的网络层(例如,卷积层或者池化层),能够将高维稀疏的第一待处理特征转换为低维稠密的类别编码特征。例如,类别编码特征可以为128维。
需要说明的是,类别编码特征属于第二特征向量。
再次,本申请实施例中,提供了一种对信息进行计数编码以及类别嵌入的方式,通过上述方式,计数编码对线性和非线性算法均有用,而且针对计数编码之后特征分布不规则的问题,能够很好地处理计数。而类别嵌入使用神经网络根据分类变量创建密集的嵌入,不但能够提升模型训练的效率,而且采用更少的内存开销,提供更好的精度。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,交互行为信息包括接入点轨迹信息;
根据交互行为信息生成第二特征向量,具体可以包括:
根据接入点轨迹信息生成第二待处理特征,其中,接入点轨迹信息包括目标用户在T个时刻所连接的接入点标识,T为大于或等于1的整数;
基于第二待处理特征,通过多级时空卷积神经网络MST-CNN所包括的网络层获取接入点轨迹特征向量,其中,接入点轨迹特征向量包含于第二特征向量。
本实施例中,介绍了一种采用嵌入法对接入点轨迹信息进行编码的方式。由前述实施例可知,交互行为信息包括接入点轨迹信息,其中,接入点轨迹信息包括目标用户在T个时刻所连接的接入点标识,例如,P=(p1,p2,p5,p9),此时T等于4,p1表示1号接入点,p2表示2号接入点,p5表示5号接入点,p9表示9号接入点,接入点具体可以是wifi接入点或者蓝牙接入点,本申请以wifi接入点为例进行介绍,然而这不应理解为对本申请的限定。
具体地,根据接入点轨迹信息生成第二待处理特征,第二待处理特征包括两个部分的特征,第一部分为时间特征,即目标用户接入到某个接入点的时间,以P=(p1,p2,p5,p9)为例,时间特征表示为(t1,t2,t3,t4),第二部分为位置特征,即该接入点的位置信息,以P=(p1,p2,p5,p9)为例,位置特征表示为(loc1,loc2,loc5,loc9)。将时间特征和位置特征进行拼接后得到第二待处理特征。将第二待处理特征输入至多级时空卷积神经网络(Multilevel Spatial-Temporal Convolutional Neural Network,MST-CNN),通过MST-CNN获取接入点轨迹特征向量。为了便于理解,请参阅图5,图5为本申请实施例中多级时空卷积神经网络的一个结构示意图,如图所示,MST-CNN包括卷积层和全连接层,将第二待处理特征输入至MST-CNN,通过第一卷积层(即卷积层1)输出接入点轨迹特征向量,或者,先通过第一卷积层(即卷积层1)输出中间特征向量,再通过卷积层2对中间特征向量进行特征向量提取处理,得到接入点轨迹特征向量,此处不做限定。
再次,本申请实施例中,提供了一种采用嵌入法对接入点轨迹信息进行编码的方式,通过上述方式,基于MST-CNN深度学习网络,对用户的对接入点轨迹信息进行嵌入,能够捕捉到用户的接入行为,从而了解用户的行为轨迹,有利于增加模型对用户行为的理解,从而提升模型预测的准确性和可靠性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,交互行为信息包括应用流量信息;
根据交互行为信息生成第二特征向量,具体可以包括:
按照预设流量使用顺序,对应用流量信息所包括的应用类型进行排序,得到第一应用类别序列,其中,预设流量使用顺序为应用使用流量从小到大的顺序,或,应用使用流量从大到小的顺序;
对第一应用类别序列进行独热编码,以得到第三待处理特征;
基于第三待处理特征,通过第二特征处理网络所包括的网络层获取应用流量编码特征,其中,应用流量编码特征包含于第二特征向量。
本实施例中,介绍了一种对应用流量信息进行嵌入编码的方式。由前述实施例可知,交互行为信息包括应用流量信息,下面将分别结合具体示例,介绍应用流量信息的编码方式。
具体地,假设目标用户使用的终端设备上安装有三类应用,分别为社交类应用、游戏类应用以及视频类应用,并假设总共有五个应用类型,分别为社交类应用、工具类应用、电商类应用、游戏类应用以及视频类应用。示例性地,目标用户的用户标识为“1001000”,且预设时段可以为最近3天,为了便于理解,请参阅表3,表3为在预设时段内应用流量信息的一个示意。
表3
基于此,以预设流量使用顺序为应用使用流量从大到小的顺序,即得到第一应用类别序列,请参阅表4,表4为第一应用类别序列的一个示意。
表4
基于此,对第一应用类别序列进行one-hot编码,以得到第三待处理特征。其中,对视频类应用进行one-hot编码,得到向量(0,0,0,0,1)。对游戏类应用进行one-hot编码,得到向量(0,0,0,1,0)。对社交类应用进行one-hot编码,得到向量(1,0,0,0,0)。对工具类应用进行one-hot编码,得到向量(0,1,0,0,0)。对电商类应用进行one-hot编码,得到向量(0,0,1,0,0)。由此,将这些向量拼接起来,即得到第三待处理特征,(0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0)。
可选地,还可以对应用使用流量进行归一化处理,将归一化后的应用使用流量作为向量中的一个特征。例如,视频类应用的向量为(0,0,0,0,1,1)。游戏类应用的向量为(0,0,0,1,0,0.6)。社交类应用的向量为(1,0,0,0,0,0.2)。工具类应用的向量为(0,1,0,0,0,0)。电商类应用的向量为(0,0,1,0,0,0)。由此,将这些向量拼接起来,即得到(0,0,0,0,1,1,0,0,0,1,0,0.6,1,0,0,0,0,0.2,0,1,0,0,0,0,0,0,1,0,0,0)作为第三待处理特征。
将第三待处理特征输入至第二特征处理网络,其中,第二特征处理网络是由若干个网络层构成的神经网络,作为第二特征处理网络中的网络层(例如,卷积层或者池化层),能够提取低维稠密的应用流量编码特征,例如,应用流量编码特征可以为128维。
需要说明的是,应用流量编码特征属于第二特征向量。
再次,本申请实施例中,提供了一种对应用流量信息进行嵌入编码的方式,通过上述方式,利用列表嵌入(list-embedding)对不同类型应用的流量使用行为序列进行嵌入特征的提取,从而获取到低维稠密的用户行为特征,有利于进行后续的模型处理。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,交互行为信息包括应用时间信息;
根据交互行为信息生成第二特征向量,具体可以包括:
按照预设时长使用顺序,对应用时间信息所包括的应用类型进行排序,得到第二应用类别序列,其中,预设时长使用顺序为应用使用时长从小到大的顺序,或,应用使用时长从大到小的顺序;
对第二应用类别序列进行独热编码,以得到第四待处理特征;
基于第四待处理特征,通过第三特征处理网络所包括的网络层获取应用时长编码特征,其中,应用时长编码特征包含于第二特征向量。
本实施例中,介绍了一种对应用时间信息进行嵌入编码的方式。由前述实施例可知,交互行为信息包括应用时间信息,下面将分别结合具体示例,介绍应用时间信息的编码方式。
具体地,假设目标用户使用的终端设备上安装有三类应用,分别为社交类应用、游戏类应用以及视频类应用,并假设总共有五个应用类型,分别为社交类应用、工具类应用、电商类应用、游戏类应用以及视频类应用。示例性地,目标用户的用户标识为“1001000”,且预设时段可以为最近3天,为了便于理解,请参阅表5,表5为在预设时段内应用时间信息的一个示意。
表5
基于此,以预设时长使用顺序为应用使用时长从长到短的顺序,即得到第二应用类别序列,请参阅表6,表6为第一应用类别序列的一个示意。
表6
基于此,对第二应用类别序列进行one-hot编码,以得到第四待处理特征。其中,对视频类应用进行one-hot编码,得到向量(0,0,0,0,1)。对游戏类应用进行one-hot编码,得到向量(0,0,0,1,0)。对社交类应用进行one-hot编码,得到向量(1,0,0,0,0)。对工具类应用进行one-hot编码,得到向量(0,1,0,0,0)。对电商类应用进行one-hot编码,得到向量(0,0,1,0,0)。由此,将这些向量拼接起来,即得到第四待处理特征,(0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0)。
可选地,还可以对应用使用时长进行归一化处理,将归一化后的应用使用时长作为向量中的一个特征。例如,视频类应用的向量为(0,0,0,0,1,1)。游戏类应用的向量为(0,0,0,1,0,0.6)。社交类应用的向量为(1,0,0,0,0,0.2)。工具类应用的向量为(0,1,0,0,0,0)。电商类应用的向量为(0,0,1,0,0,0)。由此,将这些向量拼接起来,即得到(0,0,0,0,1,1,0,0,0,1,0,0.6,1,0,0,0,0,0.2,0,1,0,0,0,0,0,0,1,0,0,0)作为第四待处理特征。
将第四待处理特征输入至第三特征处理网络,其中,第三特征处理网络是由若干个网络层构成的神经网络,作为第三特征处理网络中的网络层(例如,卷积层或者池化层),能够提取低维稠密的应用时长编码特征,例如,应用时长编码特征可以为128维。
需要说明的是,应用时长编码特征属于第二特征向量。
再次,本申请实施例中,提供了一种对应用时间信息进行嵌入编码的方式,通过上述方式,利用list-embedding对不同类型应用的时间使用行为序列进行嵌入特征的提取,从而获取到低维稠密的用户行为特征,有利于进行后续的模型处理。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像,具体可以包括:
调用用户画像优化模型所包括的嵌入层对目标特征向量进行嵌入特征向量提取处理,得到M个嵌入特征向量,其中,M个嵌入特征向量中的每个嵌入特征向量具有相等的维度数,M为大于1的整数;
调用用户画像优化模型所包括的交互层对M个嵌入特征向量进行注意力特征向量提取处理,得到M个注意力特征向量;
调用用户画像优化模型所包括的残差网络对M个注意力特征向量进行残差特征向量提取处理,得到M个残差特征向量;
调用用户画像优化模型所包括的输出层对M个残差特征向量进行概率分布计算处理,得到目标概率分布;
根据目标概率分布确定目标用户所对应的优化用户画像。
本实施例中,介绍一种基于自注意神经网络的自动特征交互学习(AutomaticFeature Interaction Learning via Self-Attentive Neural Networks,AutoInt)模型输出优化用户画像的方式。需要说明的是,如果目标特征向量存在缺失特征,则还可以对目标特征向量进行NaN嵌入,即对于特征进行缺失值处理。采用“剔除”、“平均值填充”和“缺失标记”等方法,将缺失值转为嵌入表达的方式,对模型的效果具有最大的正向收益。下面将对缺失值处理进行介绍。
一、删除;
即删除属性或者删除样本。如果大部分样本该属性都缺失,这个属性能提供的信息有限,可以选择放弃使用该维属性;如果一个样本大部分属性缺失,可以选择放弃该样本。虽然这种方法简单,但只适用于数据集中缺失较少的情况。
二、统计填充;
对于缺失值的属性,尤其是数值类型的属性,根据所有样本关于这维属性的统计值对其进行填充,如使用平均数、中位数、众数、最大值以及最小值等,具体选择哪种统计值需要具体问题具体分析。
三、统一填充;
对于含缺失值的属性,把所有缺失值统一填充为自定义值,如何选择自定义值也需要具体问题具体分析。常用的统一填充值有“空”、“0”、“正无穷”以及“负无穷”等。
基于此,将处理好的目标特征向量输入至用户画像优化模型进行分析处理,用户画像优化模型可以是AutoInt模型。为了便于理解,请参阅图6,图6为本申请实施例中用户画像优化模型的一个结构示意图,如图所示,目标特征向量可分为M个特征向量,即目标特征向量表示为x=[x1,x2,…,xM],其中,M表示特征字段的总数,xm表示第m个特征向量。将目标特征向量输入至用户画像优化模型所包括的嵌入层,由此输出每个特征向量所对应的嵌入特征向量,即得到M个嵌入特征向量表示为e=[e1,e2,…,eM],每个嵌入特征向量具有相等的维度数。
嵌入层将所有的离散以及连续特征都映射成一个等长的嵌入向量(即嵌入特征向量),其中,离散特征是直接查找嵌入(lookup embedding)表,多值的离散特征使用平均池化(average pooling),连续特征则相当于乘以一个不含偏离(bias)的稠密(Dense)层。
接下来,采用交互层对M个嵌入特征向量进行注意力计算,即使用多头自注意力(Multi-head Self-Attention) 来实现,并且可以叠加多层,实现特征的高阶交叉。这样做的原因是特征组合的关键是知道哪些特征组合在一起有强大的表征能力,这个实际上相当于在人工特征工程中进行特征选择。同时基于自注意力机制,考虑让每个字段的特征与其他字段的特征分别做注意力计算,根据注意力的权重来判断该字段特征与其他字段特征组合的重要性,越重要的组合给予的权重越高,最后生成加权后的总池化(sum pooling)作为该字段特征与所有其他字段特征组合的结果。因此,得到每个嵌入特征向量所对应的残差特征向量,即得到M个残差特征向量。
将M个残差特征向量输入至输出层,通过softmax函数计算得到目标概率分布。假设目标概率分布为(0.1,0.8,0.1),则将0.8所对应的维度确定为目标用户的优化用户画像。
需要说明的是,本申请提供的用户画像优化模型采用AutoInt结构,可选地,用户画像优化模型还可以采用极深因子分解机(Extreme Deep Factorization Machine,xDeepFM)、基于乘积的神经网络(Product-based Neural Network,PNN)、采用特征重要性和双线性特征交互(Feature Importance and Bilinear feature Interaction Network,FiBiNet)、因子分解机支持的神经网络(Factorization Machine supported NeuralNetwork,FNN)或其他结构,此处不做限定。
其次,本申请实施例中,提供了一种基于AutoInt模型输出优化用户画像的方式,通过上述方式,AutoInt模型本质上是希望通过找到一种特征自动进行高阶交叉的方法,既能弥补 MLP 对乘性特征组合捕获能力不强的弱点,又能够较好的解释哪些特征组合比较有效。利用AutoInt模型预测优化用户画像,能够显示学习高维特征交叉的一种方法,并提高了可解释性,此外,有利于提升预测结果的可靠性和准确度。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像之前,还可以包括:
获取第一训练样本集合,其中,第一训练样本集合包括至少一个训练样本,每个训练样本包括待训练初级用户画像以及待训练交互行为信息,且每个训练样本对应于一个标注优化用户画像;
针对于第一训练样本集合中的每个训练样本,根据待训练初级用户画像以及待训练交互行为信息,生成待训练特征向量,其中,待训练特征向量是由第一待训练特征向量以及第二待训练特征向量拼接后得到的,第一待训练特征向量为基于待训练初级用户画像生成的,第二待训练特征向量为基于待训练交互行为信息生成的;
调用待训练用户画像优化模型对每个训练样本所对应的待训练特征向量进行用户画像优化处理,以输出每个训练样本所对应的预测概率分布;
根据每个训练样本所对应的预测概率分布以及标注优化用户画像,对待训练用户画像优化模型的模型参数进行更新,直至满足模型训练条件,得到用户画像优化模型。
本实施例中,介绍了一种训练用户画像优化模型的方式。首先需要获取第一训练样本集合,该第一训练样本集合中包括至少一个训练样本,通常情况下,需要包括大量的训练样本,每次迭代的批大小(batch size)可设置为512,嵌入维度可设置为10,使用自适应学习率优化(adaptive moment estimation,Adam)算法,在训练过程中对于神经网络单元按照一定的概率将其暂时从网络中丢弃(dropout)的参数设置为0.2。
具体地,每个训练样本包括待训练初级用户画像以及待训练交互行为信息,可以理解的是,待训练初级用户画像所包括的内容与前述实施例中初级用户画像所包括的内容相似,而待训练交互行为信息所包括的内容与前述实施例中交互行为信息所包括的内容相似,故此处不做赘述。对每个训练样本的待训练初级用户画像进行特征化处理,得到对应的第一待训练特征向量,对每个训练样本的待训练交互行为信息进行特征化处理,得到第二待训练特征向量,将第一待训练特征向量和第二待训练特征向量进行拼接,得到训练样本的待训练特征向量。
此外,还可以对每个训练样本进行标注,由此得到标注优化用户画像,例如,训练样本A的标注优化用户画像为“第一级别”,假设共有三个级别分类,则训练样本A的标注优化用户画像可表示为(1,0,0)。
将每个训练样本的待训练特征向量输入至待训练用户画像优化模型,通过待训练用户画像优化模型输出预测概率分布,继续以训练样本A为例,假设训练样本A的预测概率分布为(0.8,0.1,0.1),可采用如下交叉熵损失函数计算损失值:
其中,p表示标注优化用户画像,q表示预测概率分布,H(p,q)表示损失值,损失值越小,表示两个概率分布越接近。由此可见,训练样本A的损失值为:
基于此,对第一训练样本集合中的各个训练样本均进行上述计算,直至满足模型训练条件,则将最近一次更新的模型参数作为用户画像优化模型的模型参数。需要说明的是,满足模型训练条件包括训练次数达到阈值门限,或者,损失值达到收敛,此处不做限定。
最后,基于TensorFlow的模型固化Saver()方法固化训练好的用户画像优化模型,总共生成四个文件,第一个为内部事件(checkpoint)文本文件,用于记录模型文件的路径信息列表。第二个为二进制文件model.ckpt.data,用于保存网络权重信息。第三个为二进制文件model.ckpt.index,用于保存每个网络权重的索引。第四个为二进制文件model.ckpt. meta,用于保存TensorFlow计算图的结构信息。
其次,本申请实施例中,提供了一种训练用户画像优化模型的方式,通过上述方式,基于机器学习算法,利用已标注的训练样本对用户画像优化模型进行训练,使得用户画像优化模型学习到特征之间的关系,从而提升优化用户画像预测的准确性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像之后,还可以包括:
获取待推荐信息的关联特征,其中,关联特征包括待推荐信息的标识、类型以及名称中的至少一种;
调用信息推荐预测模型对目标特征向量、待推荐信息的关联特征以及目标用户所对应的优化用户画像评分处理,以输出目标用户针对于待推荐信息的预测评分;
若待推荐信息的预测评分大于或等于评分阈值,则向目标用户使用的终端设备推送待推荐信息。
本实施例中,介绍了一种结合优化用户画像实现推送信息的方式。需要说明的是,如果目标特征向量存在缺失特征,则还可以对目标特征向量进行NaN嵌入,即对于特征进行缺失值处理。缺失值处理的方式已在前述实施例中描述,此处不再赘述。
具体地,在得到优化用户画像之后,可将目标特征向量、待推荐信息的关联特征以及目标用户所对应的优化用户画像共同输入至信息推荐预测模型。其中,待推荐信息包含但不仅限于广告、电影及文章等。关联特征包括待推荐信息的标识、类型以及名称中的至少一种,以待推荐信息为广告作为示例,则关联特征包括广告的标识(例如,ID112412),广告的类型(例如,衣服类、食品类以及生活用品类),以及广告名称(例如,“XXX牌洗衣粉”)。
示例性地,信息推荐预测模型可以是AutoInt模型。为了便于理解,请参阅图7,图7为本申请实施例中信息推荐预测模型的一个结构示意图,如图所示,将目标用户所对应的优化用户画像和待推荐信息的关联特征进行特征化处理后,与目标特征向量进行拼接,拼接后的特征向量表示为x=[x1,x2,…,xN],其中,N表示特征字段的总数,xn表示第n个特征向量。将该特征向量输入至信息推荐预测模型所包括的嵌入层,由此输出每个特征向量所对应的嵌入特征向量,即得到N个嵌入特征向量表示为e=[e1,e2,…,eN],每个嵌入特征向量具有相等的维度数。
嵌入层将所有的离散以及连续特征都映射成一个等长的嵌入向量,接下来采用交互层对N个嵌入特征向量进行注意力计算,由此得到N个残差特征向量。最后,将N个残差特征向量输入至输出层,通过sigmoid函数计算得到待推荐信息的预测评分,其中,预测评分可体现目标用户对待推荐信息的感兴趣程度,预测评分越大,表示目标用户可能点击待推荐信息的可能性越高。因此,如果待推荐信息的预测评分大于或等于评分阈值,则向目标用户使用的终端设备推送待推荐信息。
可以理解的是,信息推荐预测模型的结构与用户画像优化模型的结构类似,且具有相似的特征处理方式,故此处不做赘述。
需要说明的是,本申请提供的信息推荐预测模型也可以采用xDeepFM、PNN、FiBiNet或者FNN等结构,此处不做限定。
其次,本申请实施例中,提供了一种结合优化用户画像实现推送信息的方式,通过上述方式,结合优化用户画像作为信息推荐的依据,一方面能够显示学习高维特征交叉的一种方法,并提高了可解释性,此外,有利于提升预测结果的可靠性和准确度。另一方面可以提升信息提升的效果。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,调用信息推荐预测模型对目标特征向量、待推荐信息的关联特征以及目标用户所对应的优化用户画像评分处理,以输出目标用户针对于待推荐信息的预测评分之前,方法还包括:
获取第二训练样本集合,其中,第二训练样本集合包括至少一个正样本以及至少一个负样本,每个正样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个正样本对应于一个第一标注结果,每个负样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个负样本对应于一个第二标注结果,第一标注结果用于指示信息已转换,第二标注结果用于指示信息未转换;
针对于第二训练样本集合中的每个正样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成正样本特征向量;
针对于第二训练样本集合中的每个负样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成负样本特征向量;
调用待训练信息推荐预测模型对每个正样本特征向量以及每个负样本特征向量评分处理,以输出每个正样本的预测评分以及每个负样本的预测评分;
根据每个正样本的预测评分、每个正样本的第一标注结果、每个负样本的预测评分以及每个负样本的第二标注结果,对待训练信息推荐预测模型的模型参数进行更新,直至满足模型训练条件,得到信息推荐预测模型。
本实施例中,介绍了一种训练信息推荐预测模型的方式。首先需要获取第二训练样本集合,该第二训练样本集合中包括至少一个正样本以及至少一个负样本,通常情况下,需要包括大量的正样本和负样本,每次迭代的批大小(batch size)可设置为512,嵌入维度可设置为10,使用自适应学习率优化(adaptive moment estimation,Adam)算法,在训练过程中对于神经网络单元按照一定的概率将其暂时从网络中丢弃(dropout)的参数设置为0.2。
具体地,每个正样本和每个负样本均包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,可以理解的是,待训练初级用户画像所包括的内容与前述实施例中初级用户画像所包括的内容相似,而待训练交互行为信息所包括的内容与前述实施例中交互行为信息所包括的内容相似,故此处不做赘述。对每个正样本的待训练初级用户画像进行特征化处理,得到对应的第一待训练特征向量,对每个正样本的待训练交互行为信息进行特征化处理,得到第二待训练特征向量,对每个正样本的待训练优化用户画像进行特征化处理,得到第三待训练特征向量,对每个正样本的信息关联特征进行特征化处理,得到第四待训练特征向量,将第一待训练特征向量、第二待训练特征向量、第三待训练特征向量和第四待训练特征向量进行拼接,得到相应的正样本特征向量。其中,信息关联特征与前述实施例中待推荐信息的关联特征类似,其中,即包括待推荐信息的标识、类型以及名称中的至少一种。
对每个负样本的待训练初级用户画像进行特征化处理,得到对应的第五待训练特征向量,对每个负样本的待训练交互行为信息进行特征化处理,得到第六待训练特征向量,对每个负样本的待训练优化用户画像进行特征化处理,得到第七待训练特征向量,对每个负样本的信息关联特征进行特征化处理,得到第八待训练特征向量,将第五待训练特征向量、第六待训练特征向量、第七待训练特征向量和第八待训练特征向量进行拼接,得到相应的负样本特征向量。
此外,还需要对每个正样本进行标注,由此得到第一标注结果,其中,第一标注结果为1,第一标注结果用于指示信息已转换,例如,用户点击了信息或者浏览了信息等。类似地,也需要对每个负样本进行标注,由此得到第二标注结果,其中,第二标注结果为0,第二标注结果用于指示信息未转换,例如,用户未点击信息。
将每个正样本的正样本特征向量和每个负样本的负样本特征向量输入至待训练信息推荐预测模型,通过待训练信息推荐预测模型输出每个样本对应的预测评分。可采用如下回归损失函数计算损失值:
其中,y表示标注结果,f(x)表示预测评分。
基于此,对第二训练样本集合中的各个正样本和负样本均进行上述计算,直至满足模型训练条件,则将最近一次更新的模型参数作为信息推荐预测模型的模型参数。需要说明的是,满足模型训练条件包括训练次数达到阈值门限,或者,损失值达到收敛,此处不做限定。当满足模型训练条件时,还需要对信息推荐预测模型进行线下评估和线上评估。
线下模型评估选用业内公认合理的指标,即曲线下的面积(Area Under Curve,AUC)。选择AUC具有如下如下优势,首先,AUC指标本身和模型预测评分的绝对值无关,只关注排序效果,更加贴近实际业务的需要。其次,AUC的计算方法同时考虑了学习器对于正样本和负样本的分类能力,在样本不平衡的情况下,依然能够对分类器做出合理的评价。AUC值越大,当前分类算法越有可能将正样本排在负样本前面,得到更好的分类结果。
线上模型评估考虑模型对具体业务带来的帮助,评估方法是基于A/B Test。评估的指标有广告点击率和广告转化率等。
当模型线下评估和模型线上评估有任何一项不合格时,会对模型重新训练,直到评估的指标均通过为止。模型调整的方向可以是选择不同时间窗口以及不同维度的正负样本,或者,对模型关键参数进行网格搜索,选择效果最优的参数组合。
最后,基于TensorFlow的模型固化Saver()方法固化训练好的用户画像优化模型,总共生成四个文件,第一个为内部事件(checkpoint)文本文件,用于记录模型文件的路径信息列表。第二个为二进制文件model.ckpt.data,用于保存网络权重信息。第三个为二进制文件model.ckpt.index,用于保存每个网络权重的索引。第四个为二进制文件model.ckpt. meta,用于保存TensorFlow计算图的结构信息。
再次,本申请实施例中,提供了一种训练信息推荐预测模型的方式,通过上述方式,基于机器学习算法,利用正样本和负样本共同对信息推荐预测模型进行训练,使得信息推荐预测模型学习到特征之间的关系,并且结合用户的优化用户画像能够加强预测结果的可靠性,从而提升信息推荐的效果。
综上,请参阅图8,图8为本申请实施例中信息推送方法的一个整体流程示意图,如图所示,具体地:
在步骤S1中,获取第一训练样本集合,其中,第一训练样本集合包括至少一个训练样本,每个训练样本包括待训练初级用户画像以及待训练交互行为信息,且每个训练样本对应于一个标注优化用户画像。
在步骤S2中,针对于第一训练样本集合中的每个训练样本,根据待训练初级用户画像以及待训练交互行为信息,生成待训练特征向量,其中,待训练特征向量是由第一待训练特征向量以及第二待训练特征向量拼接后得到的,第一待训练特征向量为基于待训练初级用户画像生成的,第二待训练特征向量为基于待训练交互行为信息生成的。
在步骤S3中,进入模型训练环节,即调用待训练用户画像优化模型对每个训练样本所对应的待训练特征向量进行用户画像优化处理,以输出每个训练样本所对应的预测概率分布。
在步骤S4中,在模型训练环节中,根据每个训练样本所对应的预测概率分布以及标注优化用户画像,对待训练用户画像优化模型的模型参数进行更新,直至满足模型训练条件,得到用户画像优化模型。
在步骤S5中,获取第二训练样本集合,其中,第二训练样本集合包括至少一个正样本以及至少一个负样本,每个正样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个正样本对应于一个第一标注结果,每个负样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个负样本对应于一个第二标注结果,第一标注结果用于指示信息已转换,第二标注结果用于指示信息未转换。
在步骤S6中,针对于第二训练样本集合中的每个正样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成正样本特征向量。
在步骤S7中,针对于第二训练样本集合中的每个负样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成负样本特征向量。
在步骤S8中,进入模型训练环节,调用待训练信息推荐预测模型对每个正样本特征向量以及每个负样本特征向量评分处理,以输出每个正样本的预测评分以及每个负样本的预测评分。
在步骤S9中,在模型训练环节中,根据每个正样本的预测评分、每个正样本的第一标注结果、每个负样本的预测评分以及每个负样本的第二标注结果,对待训练信息推荐预测模型的模型参数进行更新,直至满足模型训练条件,得到信息推荐预测模型。
在步骤S10中,将AUC作为模型评价结果,将训练好的信息推荐预测模型投放到线上进行预测,根据预测结果得到AUC值,其中,AUC是接受者操作特性曲线(receiveroperating characteristic curve,ROC)曲线下的面积。AUC直观地反映了ROC曲线表达的分类能力。AUC越大,表示分类结果越准确。
在步骤S11中,如果AUC大于或等于AUC阈值(例如,0.6),则进入步骤S12,反之,如果AUC小于AUC阈值,则继续进行模型训练。
在步骤S12中,线上模型评估考虑模型对具体业务带来的帮助,评估方法是基于A/B Test。
在步骤S13中,如果A/B Test达到预期,则进入步骤S14,反之,如果A/B Test未达到预期,则继续进行模型训练。
在步骤S14中,如果满足模型训练条件,则得到用户画像优化模型和信息推荐预测模型,并固化模型参数。
在步骤S15中,客户端在调用服务接口时,服务器会调用训练好的信息推荐预测模型以及用户画像优化模型。获取目标用户的初级用户画像,其中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息中的至少一种,用户基础信息表示用户相关的信息,设备基础信息表示终端设备相关的信息,地理位置信息表示用户的位置信息。
在步骤S16中,获取目标用户在预设时段内的交互行为信息,其中,交互行为信息包括兴趣点信息、接入点轨迹信息、应用流量信息以及应用时间信息中的至少一种,接入点轨迹信息表示终端设备的接入顺序。
在步骤S17中,根据初级用户画像生成第一特征向量,根据交互行为信息生成第二特征向量,对第一特征向量与第二特征向量进行拼接处理,以得到目标特征向量。
在步骤S18中,调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像。
在步骤S19中,获取待推荐信息的关联特征,其中,关联特征包括待推荐信息的标识、类型以及名称中的至少一种。
在步骤S20中,调用信息推荐预测模型对目标特征向量、待推荐信息的关联特征以及目标用户所对应的优化用户画像进行评分处理,以输出目标用户针对于待推荐信息的预测评分。
在步骤S21中,若待推荐信息的预测评分大于或等于评分阈值,则向目标用户使用的终端设备推送待推荐信息。此外,还可以进行用户行为反馈,用户在客户端对模型预测结果的反馈,会作为客户端日志进行保存。
结合上述介绍,下面将结合实验情况对本申请的模型效果进行介绍,请参阅图9,图9为本申请实施例中基于验证的一个预测效果对比示意图,如图所示,从线下AUC效果来看,采用AutoInt模型预测优化用户画像相比于其它技术方案,平均提高34.52%。从线上AUC效果来看,采用AutoInt模型预测优化用户画像相比于其它技术方案,平均提高32.38%。请参阅图10,图10为本申请实施例中基于验证的一个业务效果对比示意图,如图所示,从广告点击率来看,采用AutoInt模型预测广告点击率相比于其它技术方案,平均提高187.70%。从广告转化率来看,采用AutoInt模型预测广告转化率相比于其它技术方案,平均提高183.12%。
下面对本申请中的用户画像优化装置进行详细描述,请参阅图11,图11为本申请实施例中用户画像优化装置的一个实施例示意图,用户画像优化装置20包括:
获取模块201,用于获取目标用户的初级用户画像,其中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息中的至少一种,用户基础信息表示用户相关的信息,设备基础信息表示终端设备相关的信息,地理位置信息表示用户的位置信息;
获取模块201,还用于获取目标用户在预设时段内的交互行为信息,其中,交互行为信息包括兴趣点信息、接入点轨迹信息、应用流量信息以及应用时间信息中的至少一种,接入点轨迹信息表示终端设备的接入顺序;
生成模块202,用于根据初级用户画像生成第一特征向量;
生成模块202,还用于根据交互行为信息生成第二特征向量;
生成模块202,还用于对第一特征向量与第二特征向量进行拼接处理,以得到目标特征向量;
处理模块203,用于调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,结合初级用户画像以及用户在预设时段内的交互行为信息,能够挖掘出更多的用户行为特征和用户基本特征,再利用深度学习模型学习这些特征之间的关联,从而有利于预测得到更准确的用户画像。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,用户画像优化装置20还包括接收模块204;
接收模块204,用于在获取模块201获取目标用户的初级用户画像之前,接收终端设备发送的业务请求,其中,业务请求携带目标用户的标识;
获取模块201,具体用于根据业务请求,从第一数据库中获取目标用户的初级用户画像,其中,第一数据库用于存储至少一个用户所对应的初级用户画像;
获取模块201,具体用于根据业务请求,从第二数据库中获取目标用户在预设时段内的交互行为信息,其中,第二数据库用于存储至少一个用户在不同时间窗口以及时间段内的交互行为信息。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,当用户发起业务请求时,可根据该业务请求分别从相应的数据库中提取初级用户画像和交互行为信息,从而提升方案的可行性和可操作性。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,初级用户画像包括用户基础信息、设备基础信息以及地理位置信息,用户基础信息包括至少一类画像属性标签,设备基础信息包括至少一类设备属性标签,地理位置信息包括至少一类位置属性标签;
生成模块202,具体用于针对于初级用户画像中的每类画像属性标签,对每类画像属性标签所对应的属性内容进行独热编码,以得到每类画像属性标签的独热编码向量,其中,每类画像属性标签的独热编码向量包含于第一特征向量;
针对于初级用户画像中的每类设备属性标签,对每类设备属性标签所对应的属性内容进行独热编码,以得到每类设备属性标签的独热编码向量,其中,每类设备属性标签的独热编码向量包含于第一特征向量;
针对于初级用户画像中的每类位置属性标签,对每类位置属性标签所对应的属性内容进行独热编码,以得到每类位置属性标签的独热编码向量,其中,每类位置属性标签的独热编码向量包含于第一特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,采用one-hot编码能够对初级用户画像中的部分进行编码,解决了分类器不好处理属性数据的问题,在一定程度上也起到了扩充特征的作用,从而提升数据处理的合理性和可行性。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,初级用户画像包括设备基础信息,设备基础信息包括设备固定信息以及设备变量信息;
生成模块202,具体用于对设备固定信息进行特征缩放处理,以得到已缩放特征,其中,已缩放特征包含于第一特征向量;
根据变量划分规则确定设备变量信息所对应的合并编码特征,其中,合并编码特征包含于第一特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,特征缩放的目标就是数据规范化,使得特征的范围具有可比性,它是数据处理的预处理,对后续使用数据具有关键作用。而合并编码将不同的分类变量映射到同一变量,通过特征工程和人的经验,给模型添加了额外的学习信息,即增加了归类的信息,带来更大的正向收益。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,交互行为信息包括兴趣点信息,兴趣点信息包括兴趣点统计信息以及兴趣点关联信息;
生成模块202,具体用于根据兴趣点统计信息确定计数编码特征,其中,计数编码特征包含于第二特征向量;
对兴趣点关联信息进行编码处理,以得到第一待处理特征;
基于第一待处理特征,通过第一特征处理网络所包括的网络层获取类别编码特征,其中,类别编码特征包含于第二特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,计数编码对线性和非线性算法均有用,而且针对计数编码之后特征分布不规则的问题,能够很好地处理计数。而类别嵌入使用神经网络根据分类变量创建密集的嵌入,不但能够提升模型训练的效率,而且采用更少的内存开销,提供更好的精度。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,交互行为信息包括接入点轨迹信息;
生成模块202,具体用于根据接入点轨迹信息生成第二待处理特征,其中,接入点轨迹信息包括目标用户在T个时刻所连接的接入点标识,T为大于或等于1的整数;
基于第二待处理特征,通过多级时空卷积神经网络MST-CNN所包括的网络层获取接入点轨迹特征向量,其中,接入点轨迹特征向量包含于第二特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,基于MST-CNN深度学习网络,对用户的对接入点轨迹信息进行嵌入,能够捕捉到用户的接入行为,从而了解用户的行为轨迹,有利于增加模型对用户行为的理解,从而提升模型预测的准确性和可靠性。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,交互行为信息包括应用流量信息;
生成模块202,具体用于按照预设流量使用顺序,对应用流量信息所包括的应用类型进行排序,得到第一应用类别序列,其中,预设流量使用顺序为应用使用流量从小到大的顺序,或,应用使用流量从大到小的顺序;
对第一应用类别序列进行独热编码,以得到第三待处理特征;
基于第三待处理特征,通过第二特征处理网络所包括的网络层获取应用流量编码特征,其中,应用流量编码特征包含于第二特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,利用list-embedding对不同类型应用的流量使用行为序列进行嵌入特征的提取,从而获取到低维稠密的用户行为特征,有利于进行后续的模型处理。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,交互行为信息包括应用时间信息;
生成模块202,具体用于按照预设时长使用顺序,对应用时间信息所包括的应用类型进行排序,得到第二应用类别序列,其中,预设时长使用顺序为应用使用时长从小到大的顺序,或,应用使用时长从大到小的顺序;
对第二应用类别序列进行独热编码,以得到第四待处理特征;
基于第四待处理特征,通过第三特征处理网络所包括的网络层获取应用时长编码特征,其中,应用时长编码特征包含于第二特征向量。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,利用list-embedding对不同类型应用的时间使用行为序列进行嵌入特征的提取,从而获取到低维稠密的用户行为特征,有利于进行后续的模型处理。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,
处理模块203,具体用于调用用户画像优化模型所包括的嵌入层对目标特征向量进行嵌入特征向量提取处理,得到M个嵌入特征向量,其中,M个嵌入特征向量中的每个嵌入特征向量具有相等的维度数,M为大于1的整数;
调用用户画像优化模型所包括的交互层对M个嵌入特征向量进行注意力特征向量提取处理,得到M个注意力特征向量;
调用用户画像优化模型所包括的残差网络对M个注意力特征向量进行残差特征向量提取处理,得到M个残差特征向量;
调用用户画像优化模型所包括的输出层对M个残差特征向量进行概率分布计算处理,得到目标概率分布;
根据目标概率分布确定目标用户所对应的优化用户画像。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,AutoInt模型本质上是希望通过找到一种特征自动进行高阶交叉的方法,既能弥补 MLP 对乘性特征组合捕获能力不强的弱点,又能够较好的解释哪些特征组合比较有效。利用AutoInt模型预测优化用户画像,能够显示学习高维特征交叉的一种方法,并提高了可解释性,此外,有利于提升预测结果的可靠性和准确度。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,用户画像优化装置20还包括训练模块205;
获取模块201,还用于在处理模块203调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像之前,获取第一训练样本集合,其中,第一训练样本集合包括至少一个训练样本,每个训练样本包括待训练初级用户画像以及待训练交互行为信息,且每个训练样本对应于一个标注优化用户画像;
生成模块202,还用于针对于第一训练样本集合中的每个训练样本,根据待训练初级用户画像以及待训练交互行为信息,生成待训练特征向量,其中,待训练特征向量是由第一待训练特征向量以及第二待训练特征向量拼接后得到的,第一待训练特征向量为基于待训练初级用户画像生成的,第二待训练特征向量为基于待训练交互行为信息生成的;
处理模块203,还用于调用待训练用户画像优化模型对每个训练样本所对应的待训练特征向量进行用户画像优化处理,以输出每个训练样本所对应的预测概率分布;
训练模块205,用于根据每个训练样本所对应的预测概率分布以及标注优化用户画像,对待训练用户画像优化模型的模型参数进行更新,直至满足模型训练条件,得到用户画像优化模型。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,基于机器学习算法,利用已标注的训练样本对用户画像优化模型进行训练,使得用户画像优化模型学习到特征之间的关系,从而提升优化用户画像预测的准确性。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,用户画像优化装置20还包括推送模块206;
获取模块201,还用于在处理模块203调用用户画像优化模型对目标特征向量进行用户画像优化处理,以输出目标用户所对应的优化用户画像之后,获取待推荐信息的关联特征,其中,关联特征包括待推荐信息的标识、类型以及名称中的至少一种;
处理模块203,还用于调用信息推荐预测模型对目标特征向量、待推荐信息的关联特征以及目标用户所对应的优化用户画像进行评分处理,以输出目标用户针对于待推荐信息的预测评分;
推送模块206,用于若待推荐信息的预测评分大于或等于评分阈值,则向目标用户使用的终端设备推送待推荐信息。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,结合优化用户画像作为信息推荐的依据,一方面能够显示学习高维特征交叉的一种方法,并提高了可解释性,此外,有利于提升预测结果的可靠性和准确度。另一方面可以提升信息提升的效果。
可选地,在上述图11所对应的实施例的基础上,本申请实施例提供的用户画像优化装置20的另一实施例中,用户画像优化装置20还包括训练模块205;
获取模块201,还用于获取第二训练样本集合,其中,所述第二训练样本集合包括至少一个正样本以及至少一个负样本,每个正样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个正样本对应于一个第一标注结果,每个负样本包括待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,且每个负样本对应于一个第二标注结果,所述第一标注结果用于指示信息已转换,所述第二标注结果用于指示信息未转换;
生成模块202,还用于针对于所述第二训练样本集合中的每个正样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成正样本特征向量;
生成模块202,还用于针对于所述第二训练样本集合中的每个负样本,根据待训练初级用户画像、待训练交互行为信息、待训练优化用户画像以及信息关联特征,生成负样本特征向量;
处理模块203,还用于调用待训练信息推荐预测模型对每个正样本特征向量以及每个负样本特征向量评分处理,以输出所述每个正样本的预测评分以及所述每个负样本的预测评分;
训练模块205,用于根据所述每个正样本的预测评分、所述每个正样本的第一标注结果、所述每个负样本的预测评分以及所述每个负样本的第二标注结果,对所述待训练信息推荐预测模型的模型参数进行更新,直至满足模型训练条件,得到所述信息推荐预测模型。
本申请实施例中,提供了一种用户画像优化装置,采用上述装置,基于机器学习算法,利用正样本和负样本共同对信息推荐预测模型进行训练,使得信息推荐预测模型学习到特征之间的关系,并且结合用户的优化用户画像能够加强预测结果的可靠性,从而提升信息推荐的效果。
本申请提供的用户画像优化装置可部署于计算机设备,请参阅图12,图12是本申请实施例计算机设备30的结构示意图。计算机设备30可包括输入设备310、输出设备320、处理器330和存储器340。本申请实施例中的输出设备可以是显示设备。
存储器340可以包括只读存储器和随机存取存储器,并向处理器330提供指令和数据。存储器340的一部分还可以包括非易失性随机存取存储器(Non-Volatile RandomAccess Memory,NVRAM)。
存储器340存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器330控制计算机设备30的操作,处理器330还可以称为中央处理单元(Central Processing Unit,CPU)。存储器340可以包括只读存储器和随机存取存储器,并向处理器330提供指令和数据。存储器340的一部分还可以包括NVRAM。具体的应用中,计算机设备30的各个组件通过总线系统350耦合在一起,其中总线系统350除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统350。
上述本申请实施例揭示的方法可以应用于处理器330中,或者由处理器330实现。处理器330可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器330中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器330可以是通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器340,处理器330读取存储器340中的信息,结合其硬件完成上述方法的步骤。
图12的相关描述可以参阅图3中方法部分的相关描述和效果进行理解,本处不做过多赘述。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如前述各个实施例描述的方法。
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例描述的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。