APP下载

基于多目标免疫优化的个性化推荐算法

2020-02-02李琳

电子技术与软件工程 2020年18期
关键词:列表准确度准确性

李琳

(辽宁科技大学 辽宁省鞍山市 114051)

目前,推荐系统是处理信息过载问题最重要的方法之一,广泛应用于各个领域。协同过滤算法在推荐系统中广泛应用。现有的推荐算法通常以精确度最大化为推荐目标,推荐多样化才能提高用户的满意度。在实际应用中,多个目标之间相互制约,如何通过个性化推荐技术得到多个目标权衡下的结果具有重要意义[1]。史晓艳提出一种基于多目标的推荐模型提高挖掘潜在兴趣和冷门商品的能力[2]。A.Jain 使用多目标优化方法权衡普及度和多样性,具有良好的客观性[3]。申凯丽将人工免疫算法引入传统推荐算法中,提高推荐质量[4]。本文主要考虑推荐的准确性和多样性,利用基于用户的协同过滤算法和免疫算法,得到用户满意度和项目多样性均衡的推荐结果。

1 相关工作

邻域模型是协同过滤算法中最常见的方法,其结果直观且实现相对简单。主要刻画项目或用户之间的相似度,将相似度较高的称作最近邻,根据最近邻的偏好进行预测,得到推荐结果。

相对于单目标优化,多目标优化问题更贴近日常生活和工程领域实际问题的模型。实际应用中得到同时满足各个目标的最优解几乎是不可能的,只能对这些目标进行协调处理,得到一个较为满意的结果。

在多个目标函数冲突的情况下,多目标进化是解决全局寻优的有效算法。非支配邻域免疫算法(NNIA)模拟多样性抗体共生、少数抗体激活的现象,通过克隆与遗传操作,加强稀疏区域的搜索。NNIA 因为其高效的进化性能,良好的收敛性在解决多目标问题上被广泛应用。

2 基于多目标免疫优化的个性化推荐

2.1 改进的邻域模型

用户评分习惯会对系统预测的准确率造成影响,引入观测误差降低影响,将误差分为两个部分。一部分是项目观测误差,体现项目所获得的评分情况,另一部分是用户观测误差,体现用户评分习惯。计算误差时以所有评分的均值为基准。如用户u 对项目i 的观测误差定义为:

bi和bu分别表示项目i 和用户u 相对于平均分的观测误差,具体表示为:

图1:NO.989 用户的Pareto 前沿面

改进的评分预测公式表示为:

2.2 目标函数

准确性是指用户对系统推荐项目感兴趣的可能性。因为在离线系统中,准确率在训练集中是未知的,所以采用相似度匹配函数作为准确性目标函数,表示为:

其中N 为最终推荐列表的长度,R 为候选集,Pu为用户u 评价过的项目集,fV越小,相似度越高,推荐的准确率越高。

推荐的多样性也是需要考虑的重要问题。多样性目标函数表示为:

fD的值越小,推荐列表中项目之间的相似度越小,多样性越好。

本文的目标函数包括推荐的准确性和多样性两个方面,以最小化为优化模型。最终的目标函数表示为:

表1:准确度指标结果

表2:多样性指标结果

2.3 免疫优化

使用NNIA,通过实数编码对候选集进行编码,采用均匀交叉算子和单点变异算子进行遗传操作,对候选解集列表进行进一步优化,产生最终推荐列表。免疫优化算法产生的是一系列拥有不同推荐目标的推荐列表,可根据用户具体推荐目标进行个性化推荐。

3 仿真实验

实验使用Movielens 数据集,包含1720 个用户对3323 部电影的评分数据,随机选择80%的数据作为训练集,20%作为测试集。设置候选列表长度为50,最终推荐列表长度N 为10,迭代次数为200,交叉概率0.8,变异概率0.1。

3.1 算法有效性

本实验在数据集中随机选择一个用户。算法为NO.989 用户提供的解集如图1,f1 为准确性指标函数值,f2 为多样性指标函数值,每个点代表一个推荐列表。

算法有效求得分布均匀的50 个不同的解,解a 为所有解集中准确性最高,多样性最差的推荐列表,解b 为所有解集中多样性最高的列表,但其准确性不高。随着推荐准确性的不断提高,多样性的值逐渐下降,说明准确性和多样性存在冲突,符合个性化推荐的规律。

3.2 推荐准确度

实验随机选取连续10 个用户,测试用户编号为420-429。本文算法(User-NNIA)与基于用户的协同过滤算法(UserCF)和基于项目的协同过滤算法(ItemCF)进行比较,结果如表1所示,8 个用户推荐列表的平均准确率高于其他对比算法,2 个用户的推荐列表准确率均值小于两种对比算法,但最大值大于其他对比算法的准确度值。本文算法所给出的推荐列表不一定是最准确的,但是可给出比其他两种比较算法更准确的推荐结果,有更大的可能性推测出测试集中用户喜欢的项目。

3.3 推荐多样性

推荐多样性对比结果如表2所示。7 个用户推荐列表的多样性平均值优于其他算法,3 个用户推荐列表的多样性平均值小于一种对比算法,但是最小值均优于对比算法。说明即使本文算法所得到的多样性平均值不是最好的,其最小值也将优于对比算法。

4 结论

本文提出基于多目标免疫优化的推荐算法,在不降低准确度的前提下提高推荐多样性。算法将协同过滤算法与多目标进化算法相结合,将推荐问题视为一个多目标优化问题,解决准确度与多样性之间的冲突。

猜你喜欢

列表准确度准确性
学习运用列表法
幕墙用挂件安装准确度控制技术
动态汽车衡准确度等级的现实意义
美剧翻译中的“神翻译”:准确性和趣味性的平衡
论股票价格准确性的社会效益
列表画树状图各有所长
超声引导在肾组织活检中的准确性和安全性分析
不含3-圈的1-平面图的列表边染色与列表全染色
高炉重量布料准确度的提高
对电子天平的误差及保证其称量准确度的探讨