[发明专利]基于多因子遗传算法的多规模关键用户提取方法有效
申请号: | 201910421711.9 | 申请日: | 2019-05-21 |
公开(公告)号: | CN110162704B | 公开(公告)日: | 2022-06-10 |
发明(设计)人: | 刘静;任珍妮 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06N3/08;G06N3/12 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 程晓霞;王品华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于多因子遗传算法的多规模关键用户提取方法,解决了推荐系统中不同规模关键用户同时提取的技术问题,主要步骤包括:生成候选序列集合,计算候选序列集合的多个关键用户提取任务的平均绝对误差;计算父代候选序列的能力因子和标量适应度值;对父代候选序列集合进行匹配性遗传操作;对子代候选序列集合进行选择性平均绝对误差更新;输出多个不同规模关键用户集合。本发明将多因子遗传算法中优化的种群用本发明中的关键用户候选序列集合表示,计算每个父代候选序列的能力因子和标量适应度值,对父代候选序列集合进行匹配性遗传操作,选择性更新子代候选序列集合。推荐准确率高,提取效率高。可用于网络关键信息的提取。 | ||
搜索关键词: | 基于 因子 遗传 算法 规模 关键 用户 提取 方法 | ||
【主权项】:
1.一种基于多因子遗传算法的多规模关键用户提取方法,其特征在于,包括有如下步骤:(1)获取数据并划分为训练集、验证集和测试集:从网上截取包含不同规模关键用户的所有用户对物品的评分数据作为基础数据,并按照60%,20%,20%的比例将基础数据划分为训练集、验证集和测试集;(2)生成候选序列集合;输入k个任务,每个任务均是推荐系统关键用户的提取任务,其中每个关键用户提取任务对应的关键用户提取规模分别为p1,p2,...,pk,k为推荐系统多规模关键用户提取任务的数量,也是关键用户提取规模的数量;基于多因子遗传算法编码方法,将k个关键用户提取规模降序排列,选择第一个关键用户提取规模作为候选序列的长度q,分别随机生成N个q维的父代候选序列和N个q维的子代候选序列,每一维随机取值为0到1之间的随机数,其中N为父代候选序列的数量,也是子代候选序列的数量;将N个父代候选序列和N个子代候选序列的集合作为2N个中间候选序列,生成的父代、子代和中间候选序列集合经过映射即可得到包含多规模关键用户的关键用户序列集合;(3)计算每个父代候选序列的k个关键用户提取任务的平均绝对误差:针对每个父代候选序列,根据映射公式,将该父代候选序列的前pj位作为第j个关键用户提取任务得到的关键用户序列,其中pj为第j个多规模关键用户提取任务的关键用户提取规模,得到每个父代候选序列在k个关键用户提取任务上的关键用户序列;针对每个父代候选序列在k个关键用户提取任务上的关键用户序列,利用基于关键用户的协同过滤推荐算法完成推荐过程,得到基础数据验证集中用户的预测评分,根据平均绝对误差计算公式,计算每个父代候选序列在每个关键用户提取任务上得到的平均绝对误差;(4)计算每个父代候选序列的能力因子和标量适应度值:针对每个关键用户提取任务,对所有父代候选序列在每个关键用户提取任务上得到的平均绝对误差分别升序排序,得到每个父代候选序列在k个关键用户提取任务上的排序序号,利用得到的排序序号,计算每个父代候选序列的能力因子和标量适应度值;(5)输入终止阈值:终止阈值根据实际工程通过经验设定;(6)对父代候选序列集合进行匹配性遗传操作,更新子代候选序列集合:基于多因子遗传算法,从父代候选序列集合中逐次随机选择两个父代候选序列,根据随机交配概率和两个父代候选序列的能力因子进行匹配性遗传,对能力因子相同的两个父代候选序列执行均匀交叉操作,得到两个子代候选序列,对能力因子不同的两个父代候选序列分别执行基本位变异操作,得到两个子代候选序列;(7)选择性更新每个子代候选序列的k个关键用户提取任务的平均绝对误差:对由两个父代候选序列均匀交叉得到的子代候选序列,随机选择任意一个父代候选序列的能力因子对应的关键用户提取任务,计算平均绝对误差,对由唯一父代候选序列标准位变异得到的子代候选序列,计算其唯一父代候选序列的能力因子对应的关键用户提取任务的平均绝对误差,将每个子代候选序列未被计算的关键用户提取任务的平均绝对误差更新为100000;(8)合并父代候选序列集合和子代候选序列集合,得到中间候选序列集合;(9)计算并更新每个中间候选序列的能力因子和标量适应度值:针对每个关键用户提取任务,对所有中间候选序列在每个关键用户提取任务上的平均绝对误差分别升序排序,得到所有中间候选序列在k个关键用户提取任务上的排序序号,利用得到的排序序号,计算并更新每个中间候选序列的能力因子和标量适应度值;(10)更新父代候选序列集合:将2N个中间候选序列的标量适应度值降序排列,选择前N个中间候选序列作为更新后的父代候选序列集合;(11)计算最小平均绝对误差和,判定是否小于终止阈值:对所有父代候选序列按照标量适应度值降序排列,计算第一个父代候选序列的k个关键用户提取任务的平均绝对误差和,作为多规模关键用户提取任务的最小平均绝对误差和,判断最小平均绝对误差和是否小于终止阈值,若是,执行步骤(12),否则,执行步骤(6);(12)输出多规模关键用户提取结果:针对第j个关键用户提取任务,将N个父代候选序列在该关键用户提取任务上按照平均绝对误差升序排序,利用映射公式,将第一个父代候选序列的前pj维转换为第j个关键用户提取任务的关键用户提取结果,用相同的方法,依次得到并输出k个关键用户提取任务的关键用户提取结果,完成多规模关键用户提取过程;(13)测试提取的k个不同规模关键用户集合性能:针对得到的k个关键用户提取任务的关键用户提取结果,基于关键用户的协同过滤推荐算法,分别完成推荐过程,得到k个关键用户提取结果在测试集用户的预测评分,根据平均绝对误差计算公式,计算k个关键用户提取任务得到的平均绝对误差。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910421711.9/,转载请声明来源钻瓜专利网。