一种基于算法回填的用户标签稠密化方法及装置与流程

文档序号:12271590阅读:215来源:国知局
一种基于算法回填的用户标签稠密化方法及装置与流程
本发明涉及计算机
技术领域
,尤其涉及一种基于算法回填的用户标签稠密化方法及装置。
背景技术
:随着计算机软件技术的发展,用户通过软件进行各种日常活动,而在应用软件的使用过程中,根据每个用户的喜好和需求,为用户提供相应的产品或信息的推广,将更加有利于产品和互动的推广。因此,很多软件公司通过用户标签库的方式对用户进行管理。但是,在用户标签库的构建过程中,由于大部分用户不能参与全部活动,也不能对所有活动和产品进行评价。导致构建的用户标签矩阵十分稀疏,在进行推荐时导致缺失部分签字用户。在实现本发明过程中,发明人发现现有技术中至少存在如下问题:现有的用户标签矩阵稀疏程度较大,在进行活动时,定位用户不够全面,对潜在用户不能进行很好的定位,会造成推荐精准度不高,信息推送用户缺失等问题。技术实现要素:本发明实施例提供一种基于算法回填的用户标签稠密化方法及装置,通过对标签的挖掘,得到用户的潜在标签进行回填,获得较为稠密的用户标签矩阵,在进行基于用户的推荐时,可以尽可能的保证数据的精准度。一方面,本发明实施例提供了一种基于算法回填的用户标签稠密化方法,所述方法包括:获取需要回填的用户群和用户标签对应的第一回填标签表;利用Fpgrouth算法回填所述第一回填标签表;获取需要回填的用户群和用户标签对应的第二回填标签表;利用Itemcf算法回填所述第二回填标签表;获取需要回填的用户群和用户标签对应的第三回填标签表;利用Usercf算法回填所述第三回填标签表。另一方面,本发明实施例提供了一种基于算法回填的用户标签稠密化装置,所述装置包括:第一回填标签表获取单元,用于获取需要回填的用户群和用户标签对应的第一回填标签表;Fpgrouth算法单元,用于利用Fpgrouth算法回填所述第一回填标签表;第二回填标签表获取单元,用于获取需要回填的用户群和用户标签对应的第二回填标签表;Itemcf算法单元,用于利用Itemcf算法回填所述第二回填标签表;第三回填标签表获取单元,用于获取需要回填的用户群和用户标签对应的第三回填标签表;Usercf算法单元,用于利用Usercf算法回填所述第三回填标签表。上述技术方案具有如下有益效果:本发明通过Fpgrouth算法、Itemcf算法和Usercf算法,通过现有的用户标签进行挖掘推测,对部分未知用户标签进行回填,获得更加全面的用户标签。将现有的用户标签通过算法构建得更加全面,补全用户的未知标签信息,为基于用户的推荐提供更加全面精准的标签数据支撑,对用户描述更加精准。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一种基于算法回填的用户标签稠密化方法流程图;图2为本发明实施例一种基于算法回填的用户标签稠密化装置结构示意图;图3为本发明应用实例Fpgrouth算法的实现过程示意图;图4为本发明应用实例Itemcf算法和Usercf算法的实现过程示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,为本发明实施例一种基于算法回填的用户标签稠密化方法流程图,所述方法包括:101、获取需要回填的用户群和用户标签对应的第一回填标签表;102、利用Fpgrouth算法回填所述第一回填标签表;103、获取需要回填的用户群和用户标签对应的第二回填标签表;104、利用Itemcf算法回填所述第二回填标签表;105、获取需要回填的用户群和用户标签对应的第三回填标签表;106、利用Usercf算法回填所述第三回填标签表。优选地,所述利用Fpgrouth算法回填所述第一回填标签表,包括:进行基于全量用户的Fpgrouth算法关联规则计算,得到对应的标签关联规则置信度和支持度;将满足置信度阀值和支持度阀值的数据回填所述第一回填标签表。优选地,所述利用Itemcf算法回填所述第二回填标签表,包括:所述利用Itemcf算法,基于皮尔逊系数获取标签相似度,以回填所述第二回填标签表。优选地,所述利用Usercf算法回填所述第三回填标签表,包括:所述利用Usercf算法,基于皮尔逊系数获取标签相似度和邻域值,以回填所述第三回填标签表。优选地,所述用户标签包括如下的一种或多种:忠诚度、活跃度、报名类活动偏好、摇一摇活动偏好、养生爱好者、新闻爱好者、娱乐爱好者。对应于上述方法实施例,如图2所示,为本发明实施例一种基于算法回填的用户标签稠密化装置结构示意图,所述装置包括:第一回填标签表获取单元21,用于获取需要回填的用户群和用户标签对应的第一回填标签表;Fpgrouth算法单元22,用于利用Fpgrouth算法回填所述第一回填标签表;第二回填标签表获取单元23,用于获取需要回填的用户群和用户标签对应的第二回填标签表;Itemcf算法单元24,用于利用Itemcf算法回填所述第二回填标签表;第三回填标签表获取单元25,用于获取需要回填的用户群和用户标签对应的第三回填标签表;Usercf算法单元26,用于利用Usercf算法回填所述第三回填标签表。优选地,所述Fpgrouth算法单元22,具体用于进行基于全量用户的Fpgrouth算法关联规则计算,得到对应的标签关联规则置信度和支持度;将满足置信度阀值和支持度阀值的数据回填所述第一回填标签表。优选地,所述Itemcf算法单元24,具体用于利用Itemcf算法,基于皮尔逊系数获取标签相似度,以回填所述第二回填标签表。优选地,所述Usercf算法单元26,具体用于利用Usercf算法,基于皮尔逊系数获取标签相似度和邻域值,以回填所述第三回填标签表。优选地,所述用户标签包括如下的一种或多种:忠诚度、活跃度、报名类活动偏好、摇一摇活动偏好、养生爱好者、新闻爱好者、娱乐爱好者。以下通过应用实例对本发明实施例上述技术方案进行详细说明:1.根据用户标签数量,筛选出需要回填的用户群。根据用户标签的制定规则,筛选出参与计算的用户标签。如下表1所示:表1第一回填标签表2.将筛选出的用户标签进行基于全量用户的Fpgrouth关联规则计算,得到对应的标签关联规则置信度、支持度,并且初始化置信度和支持度阀值,将满足阀值条件的数据插入关联规则表,其中Fpgrouth算法的实现过程如图3所示,具体包括:a)首先构建FPtree(简称FP树)。输入:数据集、最小支持度。输出:FP树、头指针表。1.遍历数据集,统计各元素项出现次数,创建头指针表。2.移除头指针表中不满足最小支持度的元素项。3.第二次遍历数据集,创建FP树。对每个数据集中的项集:3.1初始化空FP树。3.2对每个项集进行过滤和重排序。3.3使用这个项集更新FP树,从FP树的根节点开始:3.3.1如果当前项集的第一个元素项存在于FP树当前节点的子节点中,则更新这个子节点的计数值。3.3.2否则,创建新的子节点,更新头指针表。3.3.3对当前项集的其余元素项和当前元素项的对应子节点递归3.3的过程。b)然后递归查找频繁项集,并输出置信度/支持度表。输入:我们有当前数据集的FP树(inTree,headerTable)(a)步骤中构建的FP树)。输出:支持度/置信度表。1.初始化一个空列表preFix表示前缀。2.初始化一个空列表freqItemList接收生成的频繁项集(作为输出)。3.对表头header中的每个元素basePat(按计数值由小到大),递归:3.1记basePat+preFix为当前频繁项集newFreqSet。3.2将newFreqSet添加到freqItemList中。3.3计算t的条件FP树(myCondTree、myHead)。3.4当条件FP树不为空时,继续下一步;否则退出递归。3.5以myCondTree、myHead为新的输入,以newFreqSet为新的preFix,外加freqItemList,递归这个过程,输出频繁项集freqItemList。3.6计算频繁项集freqItemList内的各项关联规则的置信度,将满足最小置信度的关联规则存入支持度/置信度表。通过支持度阀值4,置信度阀值0.8的Fpgrouth关联规则可得到如表2的关联规则置信度和支持度表:关联规则支持度置信度[新闻爱好者]->活跃度60.86[忠诚度]->报名类活动偏好50.83[新闻爱好者,忠诚度]->活跃度40.8[报名类活动偏好,新闻爱好者]->活跃度40.8[新闻爱好者,忠诚度]->报名类活动偏好40.8表2置信度和支持度表3.将原有用户标签表与关联规则表进行匹配,将匹配成功的标签进行目标用户群数据回填。通过上述置信度\支持度表,可对用户标签表做出如下回填,如下表3所示,加粗的数据为回填数据:表3第二回填标签表4.回填后的用户标签表再次经过筛选,筛选出仍需要回填的用户群。5.将筛选出的用户群进Itemcf协同过滤计算,得到对应的用户推荐标签,对目标用户群内的用户进行推荐标签的回填,其中Itemcf算法如图4所示。A.首先计算标签间的相似度:选取皮尔逊相似度计算标签相似度,计算公式为:其中XY分别代表任意两个用户标签,通过调用mahout中的PearsonCorrelationSimilarity类实现,传入参数为用户标签的转化数据。B.将计算得出的相似度做作为参数,传递给mahout的GenericItemBasedRecommender方法,获得用户的推荐标签和得分。将标签和得分回填到用户标签表。回填后的用户标签表再次经过筛选,筛选出仍需要回填的用户群,如下表4所示,加粗的数据为回填数据:基于皮尔逊相关系数相似度的Itemcf回填获得的用户标签表表4第三回填标签表6.基于全量用户构建用户相似度矩阵,对目标用户群内的用户进行基于Usercf的协同过滤计算,获得目标用户群内用户的推荐标签,对目标用户群内的用户进行推荐标签的回填,其中Usercf算法如图4所示。a)首先计算用户间的相似度:选取皮尔逊相似度计算标签相似度,计算公式为:其中XY分别代表任意两个用户向量,通过调用mahout中的PearsonCorrelationSimilarity类实现,由于加入权重,传入参数为用户标签的转化数据和权重。b)将计算得出的相似度做为参数,传递给mahout的NearestNUserNeighborhood方法,并且初始化邻域值大小。c)将计算得出的相似度和邻域值做作为参数,传递给mahout的GenericItemBasedRecommender方法,获得用户的推荐标签和得分。d)评估推荐标签和结果,若不满足阀值,调整邻域值重复步骤c),若满足条件则将标签和得分回填到用户标签表。基于皮尔逊相关系数,邻域为5的Usercf回填过的用户标签表,如下表5所示,加粗的数据为回填数据:表5上述标签表即为用户标签最终回填稠密化后的用户标签表本发明实施例通过Fpgrouth算法、Itemcf算法和Usercf算法,通过现有的用户标签进行挖掘推测,对部分未知用户标签进行回填,获得更加全面的用户标签。将现有的用户标签通过算法构建得更加全面,补全用户的未知标签信息,为基于用户的推荐提供更加全面精准的标签数据支撑,对用户描述更加精准。应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广范围相一致。上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrativelogicalblock),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrativecomponents),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1