一种分离式混合移动广告推荐方法与流程

文档序号:12158817阅读:247来源:国知局
本发明涉及移动广告领域,特别涉及一种分离式混合移动广告推荐方法。
背景技术
:随着移动互联网的普及和飞速发展,推荐系统也已经被广泛应用于各种领域,例如移动电子商务领域,App移动广告领域。移动应用广告是通过移动终端设备访问移动应用时显示的广告,移动应用广告形式包括横幅广告、插播广告、积分墙广告、视频广告、激励下载安装应用等。当前,移动终端的移动应用程序(APP)常常通过移动广告软件开发包(SDK)采集移动终端信息,并发送至后台服务器,后台服务器利用移动终端信息和广告信息等计算得到合适的推荐广告,并将推荐广告推送至移动终端进行展示,渲染。然而,一方面随着移动用户和数据的急剧增长,后台服务器的计算压力越来越大;另一方面移动终端的情境快速变化,移动应用广告推荐的实时性要求越来越高,同时广告服务商和用户对广告推荐的有效性要求也越来越高。技术实现要素:本发明的目的在于克服现有技术的缺点与不足,提供一种分离式混合移动广告推荐方法。本发明的目的通过下述技术方案实现:一种分离式混合移动广告推荐方法,包括以下步骤:步骤1、服务器对收集到的移动应用广告日志进行预处理,将预处理后的日志数据文件保存在使用分布式文件系统实现的存储模块中;步骤2、所述服务器使用基于协同过滤和基于内容推荐的混合推荐算法对步骤1所述存储模块中的日志数据和广告数据进行混合广告推荐计算,得到各个移动终端用户的推荐广告ID列表,所述ID表示标识码;步骤3、移动终端的移动应用程序通过移动广告软件开发包向所述服务器提出移动广告推荐请求,所述服务器向所述移动应用程序推送所述推荐广告ID列表及对应广告属性,所述移动应用程序采用APP表示,所述移动广告软件开发包采用SDK表示;步骤4、所述移动应用程序接收推荐广告ID列表及对应广告属性,所述移动应用程序利用移动终端收集的实时细粒度情境信息得到情境属性,利用情境属性,根据实时情境过滤算法在所述广告推荐列表中筛选得到最终推荐广告ID;步骤5、所述移动应用程序根据最终推荐广告ID向所述服务器请求所述最终推荐广告,所述服务器发送最终推荐广告信息,所述移动应用程序接收最终推荐广告信息,进行广告展示。步骤2所述混合广告推荐计算是离线的分布式计算;所述离线的分布式计算是由服务器周期性触发混合广告推荐计算,以及所述广告数据的更新触发混合广告推荐计算。步骤1所述移动应用广告日志包括操作时间戳、移动设备标识符、IP地址、地理位置、应用标识符、广告标识符和用户对移动应用广告的操作行为标识;所述用户对移动应用广告的操作行为的类型包括广告浏览行为、广告点击行为、移动应用下载行为和移动应用安装行为;可选地,所述移动应用广告日志还包括移动设备型号、移动设备操作系统及版本、移动终端接入网络方式、及其他移动终端特征和其他接入网络特征;步骤2所述的广告数据是移动广告的广告标识符、广告名称、广告属性和广告有效期。步骤1所述的预处理步骤如下:对于所述移动应用广告日志的所有记录,进行作弊数据和噪声数据过滤,得到过滤的数据集后,根据如下规则对剩余记录进行打分:某个APP上的特定广告的动作作为集合,根据每个集合中动作的完整性评分,动作越完整,得分越高,所述特定广告的动作为展示、点击、下载和安装等;可选的,所述集合中动作的完整性是指:移动广告在所述移动应用程序上,如果按照“广告展示-广告点击-广告任务完成(如广告APP下载、广告APP安装)”的顺序发生,则定义为广告的动作是完整的,动作越完整的广告,得分越高;可选地,5分为最高分,1分为最低分,未评分的广告定义为0分。步骤2所述基于协同过滤和基于内容推荐的混合推荐算法包含如下步骤:步骤2.1:使用相似度计算方法对“用户-广告”评分矩阵计算目标用户的协同相似度,可选的,使用皮尔逊相似度计算方法计算目标用户的相似度;步骤2.2:对步骤2.1计算得到的用户协同相似度进行排序,并选取计算结果最高的n个用户作为协同近邻用户集;步骤2.3:根据广告的广告属性,比较目标用户与协同近邻用户集中各个用户的历史关注广告的内容相关性,从协同近邻用户集中筛选内容相关性最高的m个用户作为混合近邻用户;所述历史关注广告是指用户曾经点击操作过的广告;步骤2.4:结合目标用户的对已评分广告的平均评分,对步骤2.3中目标用户的m个混合近邻用户使用加权平均算法来预测目标用户对在广告有效期内还未评分的广告的评分;步骤2.5:对目标用户的在广告有效期的各个广告评分进行排序,选取评分最高的K个广告为推荐广告集,推荐广告集中的广告ID构成目标用户的推荐广告ID列表;缺省地,选取n值为m值的3倍。步骤4所述实时情境过滤算法是指:根据移动终端收集的实时细粒度情境信息得到情境属性,利用模糊数学方法计算所述推荐广告ID列表中的各个广告与所述情境属性的模糊相关度,并按所述模糊相关度从高到低排序,得到最终推荐广告。本发明的目的也可以通过以下技术方案实现:一种分离式混合移动广告推荐方法,包括:服务器对收集到的移动应用广告日志进行预处理,并将预处理后的数据存储在所述存储模块中;所述服务器使用基于协同过滤和基于内容推荐的混合推荐算法对所述存储模块中的日志数据和广告数据进行混合广告推荐计算,得到各个移动终端用户或移动终端用户组的广告推荐列表;所述移动终端的移动应用程序(APP)通过移动广告软件开发包(SDK)向所述服务器提出移动广告推荐请求,所述服务器向所述移动应用程序推送所述广告推荐列表及对应广告的广告属性;所述移动应用程序接收所述广告推荐列表,根据移动终端的移动情境信息,在所述广告推荐列表中筛选得到最终推荐广告,然后向所述服务器请求所述最终推荐广告,并在所述移动应用程序中展示。所述移动应用广告日志包括操作时间戳、移动设备标识符、IP地址、地理位置、应用标识符、广告标识符、用户对移动应用广告的操作行为标识;所述用户对移动应用广告的操作行为的类型包括广告浏览行为、广告点击行为、移动应用下载行为、移动应用安装行为;可选地,所述移动应用广告日志还包括移动设备型号、移动设备操作系统及版本、移动终端接入网络方式、及其他移动终端特征和其他接入网络特征。所述的广告数据是移动广告的广告标识符、广告名称、广告属性和广告有效期。所述混合广告推荐计算是在线的或离线的分布式计算。所述离线的分布式计算是由服务器周期性触发所述混合广告推荐计算,以及所述广告数据的更新触发所述混合广告推荐计算。进一步的,所述混合推荐算法包括如下步骤:步骤1:使用相似度计算方法对“用户-广告”评分矩阵计算目标用户的协同相似度。可选的,使用皮尔逊相似度计算方法计算目标用户的相似度。步骤2:对步骤1计算得到的用户协同相似度进行排序,并选取计算结果最高的n个用户作为协同近邻用户集。步骤3:根据广告的广告属性,比较目标用户与协同近邻用户集中各个用户的历史关注广告的内容相关性,从协同近邻用户集中筛选内容相关性最高的m个用户作为混合近邻用户。所述历史关注广告是指用户曾经点击操作过的广告。缺省地,选取n值为m值的3倍。步骤4:结合目标用户的对已评分广告的平均评分,对步骤3中目标用户的m个混合近邻用户使用加权平均算法来预测目标用户对在广告有效期内还未评分的广告的评分。步骤5:对目标用户的在广告有效期的各个广告评分进行排序,选取评分最高的K个广告为推荐广告集,推荐广告集中的广告ID构成目标用户的推荐广告ID列表。所述分离式混合移动广告推荐系统使用的分布式文件系统,缺省地,选择HDFS(Hadoop分布式文件系统)存储海量移动应用广告用户日志文件,所述日志文件根据一定的预处理方法整理成协同过滤算法过程中读入的“用户-广告-评分”格式。所述服务器对收集到的移动应用广告日志进行预处理,包括作弊数据过滤和噪声数据过滤、对合法数据打分两个阶段。所述作弊数据过滤和噪声数据过滤是指:对于所述移动应用广告日志的所有记录,在设定的时间粒度里,广告在所述移动应用程序(APP)频繁出现广告展示、广告点击、广告下载、广告点击等广告动作,且上述广告动作发生的频率超过正常用户对广告的交互频率,这样的广告视为不合理的、作弊的,将这样的移动广告数据定义为作弊数据;广告数据因为移动广告软件开发包(SDK)收集时发生网络异常、时间戳偏差、用户错误点击等不正常因素,导致所述广告数据与正常广告数据差异过大,这样的数据视为噪声数据。上述作弊数据和噪声数据在预处理阶段剔除。所述对合法数据打分是指:某个APP上的特定广告的动作(展示、点击、下载和安装等)作为集合,根据每个集合中动作的完整性评分,动作越完整,得分越高。可选的,所述用以判断移动应用广告日志噪声所设定的时间粒度为5秒。可选的,所述集合中动作的完整性是指:移动广告在所述移动应用程序上,按照“广告展示-广告点击-广告任务(如广告APP下载、广告APP安装)”的顺序发生。如果广告按照上述顺序产生动作记录,则定义为广告的动作是完整的,动作越完整的广告,得分越高。其中,5分为最高分,1分为最低分。特别地,在所述的协同过滤算法中,未评分的项目定义为0分。所述移动应用程序根据移动终端的移动情境信息,在所述广告推荐列表中筛选得到最终推荐广告,具体步骤如下:所述移动终端接收并缓存推荐系统模块推送过来的k个推荐广告ID列表,当所述移动终端细粒度的情境信息变化时,所述移动终端根据移动情境信息得到情境属性,利用模糊数学计算推荐广告ID列表的各个广告与所述情境属性的模糊相关度,并按照所述模糊相关度从高到低排序,得到最终推荐广告。所述移动应用程序向所述服务器请求所述最终推荐广告,并在所述移动应用程序中展示。本发明相对于现有技术具有如下的优点及效果:1、本发明有效解决了现有技术的移动广告的推荐问题,降低了后台服务器的计算压力,提高了移动应用广告推荐的实时性和有效性。2、本发明的分离式混合移动广告推荐方法包括对收集到的移动应用广告日志进行预处理,将预处理后的日志数据文件保存在使用分布式文件系统实现的存储模块中,并通过基于协同过滤算法和基于内容推荐的混合推荐方法计算移动广告推荐列表;根据移动终端移动应用程序请求,推送移动广告推荐列表及对应广告的广告属性到移动终端;移动终端移动应用程序利用移动终端的实时细粒度情境信息,根据实时情境过滤算法在广告推荐列表中筛选得到最终推荐广告,移动应用程序向所述服务器请求最终推荐广告信息,在移动终端进行广告展示,有效地提升了移动应用广告推荐的实时性和有效性。附图说明图1是本分离式混合移动广告推荐方法的一种典型流程示意图。具体实施方式下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。实施例分离式混合移动广告推荐方法的一种典型流程示意图,如图1所示。在步骤1中,所述服务器对收集到的移动应用广告日志进行预处理,包括作弊数据过滤和噪声数据过滤、对合法数据打分两个阶段。所述作弊数据过滤和噪声数据过滤是指:对于所述移动应用广告日志的所有记录,在设定的时间粒度里,广告在所述移动应用程序(APP)频繁出现广告展示、广告点击、广告下载、广告点击等广告动作,且上述广告动作发生的频率超过正常用户对广告的交互频率,这样的广告视为不合理的、作弊的,将这样的移动广告数据定义为作弊数据;广告数据因为移动广告软件开发包(SDK)收集时发生网络异常、时间戳偏差、用户错误点击等不正常因素,导致所述广告数据与正常广告数据差异过大,这样的数据视为噪声数据。上述作弊数据和噪声数据在预处理阶段剔除。所述对合法数据打分是指:某个APP上的特定广告的动作(展示、点击、下载和安装等)作为集合,根据每个集合中动作的完整性评分,动作越完整,得分越高。缺省地,所述判断移动应用广告日志数据是否为噪声所设定的时间粒度为5秒。可选的,所述集合中动作的完整性是指:移动广告在所述移动应用程序上,按照“广告展示-广告点击-广告下载-广告安装”的顺序发生。如果广告按照上述顺序产生动作记录,则定义为广告的动作是完整的,动作越完整的广告,得分越高。其中,5分为最高分,1分为最低分。特别地,在所述的协同过滤算法中,未评分的项目定义为0分。进一步地,对初始移动应用用户日志文件预处理后,保存在以分布式文件系统HDFS为实现基础的存储模块中。步骤2,所述服务器使用基于协同过滤和基于内容推荐的混合推荐算法对所述存储模块中的日志数据和广告数据进行混合广告推荐计算,得到各个移动终端用户或移动终端用户组的广告推荐列表。所述分离式混合移动广告推荐系统推荐模块使用基于协同过滤和基于内容策略做离线运算,预先计算推荐广告集。所述协同过滤算法包含如下步骤:1)使用“用户-广告”评分矩阵计算用户的相似度,缺省地,使用皮尔逊相似度计算用户的相似度,具体计算方法如公示(1)所示。皮尔逊相似度计算公式:其中,w(a,i)表示与活跃用户(activeuser)或者说目标用户相似度最高的n个用户的权重;vi,j表示用户i对广告j的评分;表示活跃用户已评分广告的平均评分,表示其他用户对已评分广告的平均评分,计算公式如(2)所示,平均评分计算公式:其中,Ii表示用户i已评分过的所有广告的集合。2)对步骤1)的相似度计算公式得到结果进行排序,并选取计算结果最高的n个用户作为邻居用户,用以后续步骤中计算评分的候选数据集。3)对步骤2)中的n个邻居用户使用加权平均算法来预测活跃用户对还未评分的项目的评分。使用公示(3)来预测活跃用户对还未评分的项目的评分,活跃用户a对未评分目标项目j的评分的计算公式如下:公示(3)表明应用相似度加权法来计算预测评分其中,k表示归一化因子。基于内容推荐策略作为对协同过滤缺乏广告(或物品)内容上相似考虑的补充。考虑如表1(用户广告点击行为表)所示的用户点击广告的场景(如用户a点击广告j,则对于的值为1):表1如果考虑用户在广告行为记录上的相似度,目标用户Target和user1、user2都有相似的兴趣,他们都同时对广告2感兴趣,但是如果再根据广告在内容上的考虑,比如在列表2(广告类型属性表)中,我们假设广告1到5的类型属性如下:广告类型广告1生活实用广告2娱乐广告3娱乐广告4娱乐广告5生活实用表2实际上,User2对广告的关注包括了生活实用类型和娱乐类型,表现不确定,相比较而言,User1跟Target用户有着更高的相似度,专注于娱乐型,因此用户Target与用户User1的相似度大于与User2的相似度。在步骤3中,移动终端的移动应用程序(APP)通过移动广告软件开发包(SDK)向所述服务器提出移动广告推荐请求,所述服务器向所述移动应用程序推送所述广告推荐列表。最后,所述移动应用程序接收所述广告推荐列表,所述移动应用程序根据移动终端的移动情境信息,在所述广告推荐列表中筛选得到最终推荐广告,然后向所述服务器请求所述最终推荐广告,并在所述移动应用程序中展示。具体步骤如下:所述移动终端接收并缓存推荐系统模块推送过来的k个推荐广告ID列表,当所述移动终端有更细粒度的情境信息变化时,所述移动终端根据移动情境信息得到情境属性,计算情境属性与k个推荐广告的相关性,并按照此相关性从高到低排序,得到最终推荐广告。所述多维细粒度情境相关性计算按如下步骤进行:1)选取时间,日期,广告类型作为筛选指标,其中,三种情境的数值映射关系如表3所示。情境维度原始取值(物理意义)数值类型时间上午/AM07:00–AM11:001午餐/AM11:00–PM02:002下午/PM02:00–PM05:003晚餐/PM05:00–PM08:004晚上/PM08:00–PM12:005深夜/AM00:00–AM07:006日期工作日(周一至周五)1周末(周六日)2广告类型娱乐型1实用型2其他3表32)使用余弦相似度公示计算情境相似度,计算公式如公示(4)所示:其中,w(a,i)表示用户a与用户i的情境相似度;sa,j,si,j分别表示用户a和用户i在情境j下的数值;Ca和Ci分别表示用户a和用户i的情境集合,事实上,这两者包含的内容是完全相同的,即时间,日期,广告类型三种筛选指标。通过上述情境相似度的计算得到wc,按照步骤2计算用户相似度wu,两者的乘积wc*wu作为最终协同过滤使用的综合相似度,筛选得到最终推荐广告。进一步的,所述移动应用程序向所述服务器请求所述最终推荐广告,并在所述移动应用程序中展示。上述实施例仅用于说明本发明的技术方案而非限制。本领域的专业人员可以对本发明的技术方案进行修改或同等替换,而不脱离本发明的技术方案的精神和范围,均应涵盖在本发明的权利要求范围中。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1