CN108153918A - 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法 - Google Patents

基于自适应正交交叉的多目标优化算法的个性化电影推荐方法 Download PDF

Info

Publication number
CN108153918A
CN108153918A CN201810112384.4A CN201810112384A CN108153918A CN 108153918 A CN108153918 A CN 108153918A CN 201810112384 A CN201810112384 A CN 201810112384A CN 108153918 A CN108153918 A CN 108153918A
Authority
CN
China
Prior art keywords
individual
population
generation
orthogonal
factor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810112384.4A
Other languages
English (en)
Other versions
CN108153918B (zh
Inventor
杨新武
郭西念
王芊霓
陈晓丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201810112384.4A priority Critical patent/CN108153918B/zh
Publication of CN108153918A publication Critical patent/CN108153918A/zh
Application granted granted Critical
Publication of CN108153918B publication Critical patent/CN108153918B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/735Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Library & Information Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,针对传统推荐算法对准确性和非准确性两个对立指标的优化不足,采用多目标优化算法对这两个目标进行优化,从而在保持准确性的情况下提高多样性。针对NSGA‑II多目标优化算法存在的不足,提出了改进算法SMOCDE,该算法设计了自适应多目标正交交叉算子SMOC,使用该算子对种群进行初始,避免了种群分布不均匀;运用该算子进行交叉操作,保持了种群的收敛性和分布性。将该算法应用于个性化电影推荐这一实际问题中,通过和现有的推荐算法进行测试对比验证了算法的通用性和有效性,提高了推荐结果的准确性、多样性。

Description

基于自适应正交交叉的多目标优化算法的个性化电影推荐 方法
技术领域
本发明属于多目标优化算法和推荐算法技术领域。运用改进的多目标优化算法SMOCDE(具体涉及自适应正交交叉初始化种群,自适应多目标正交交叉算子)做个性化电影推荐,以期多目标优化算法对个性化电影推荐的性能提升。
背景技术
随着互联网技术的发展,网上信息量呈指数式的增长,使得用户在面对大量信息时无法从中获得对自己真正有用的信息,对信息的使用效率反而降低了,这就是所谓的信息超载问题。
个性化推荐系统是解决信息超载问题非常有效的方法。推荐系统根据用户信息和项目属性数据,分析出用户的兴趣爱好,根据用户兴趣点进行个性化推荐。
常用的推荐算法有基于内容的推荐,协同过滤推荐、基于知识的推荐和混合推荐。基于内容的推荐不依赖于用户对项目的评价信息,侧重考察候选推荐项目与用户特征的匹配程度。协同过滤推荐算法可以分为两类:基于记忆的和基于模型的算法。基于记忆的算法根据系统中所有被打过分的产品信息进行预测。基于模型的算法收集打分数据进行学习并推断用户行为模型,进而对某个产品进行预测打分。基于模型的协同过滤算法和基于记忆的算法的不同在于,基于模型的方法不是基于一些启发规则进行预测计算,而是基于对已有数据应用统计和机器学习得到的模型进行预测。基于知识的推荐是一种基于特定领域规则或实例的推理方法,其优点在于不需要建立用户需求偏好模型,缺点是难以指定合理的推理规则。混合推荐是为了克服上述各种推荐技术的弱点,对多种推荐方法的组合应用,其中基于内容的推荐和协同过滤推荐组合是目前应用比较广泛的一种。
传统的推荐算法以准确度作为评价指标,一个好的推荐算法不仅要以准确度作为衡量标准,还应该考虑一些其它指标,准确度指标通常包括准确率,召回率,F-Measure,非准确率指标包括新颖度,多样性等,大多数传统的推荐算法关注项目的评分,即项目按评分排序,并且选择前n项推荐给用户,然而,它们不能兼顾非准确度的评价指标,为了解决这个问题我们引入了多目标优化算法,多目标个性化推荐算法不仅可以关注准确性还可以兼顾多样性,符合现代推荐系统的要求。一些多目标推荐算法相继被提出来,张等人把准确性和多样性看作二次规划问题,设计出多种策略来解决这个优化问题。在推荐列表中应该设置控制参数来衡量多样性的重要性。周等人提出了一种结合热传播算法解决多样性问题和概率传播算法解决准确性的混合推荐算法,该混合方法是使用加权线性组合的方法。结果是权重参数应该适当调整来保持推荐的多样性和准确性。Adomavicius等人,开发了一系列排序算法在保持准确性的情况下产生多样性,公茂果等人用经典多目标遗传算法NSGA-II来优化这两个目标。多目标推荐算法模型有两个优化目标,第一个优化目标是准确性,第二个优化目标是多样性,多目标优化算法用来最大化这两个目标,最终一个准确性和多样性的推荐列表被提供给用户。但是NSGA-II算法存在一些缺陷,导致算法的收敛速度和最终推荐列表存在多样性和准确性的缺失,本发明提出基于自适应正交交叉的多目标优化算法的个性化电影推荐方法来优化准确性和多样性。通过自适应多目标正交交叉算子(SMOC)初始化种群,避免了随机初始化带来的种群分布不均匀,通过自适应多目标正交交叉算子进行交叉操作,使种群能够快速的收敛到pareto前沿,大大减少无效交叉和冗余个体的产生。将该改进算法应用于个性化电影推荐的具体问题上,通过与其他推荐算法的比较验证了算法的效果。
发明内容
本发明的目的是提出一种基于自适应正交交叉的多目标优化算法的个性化电影推荐方法。用于解决传统推荐算法无法更好的优化准确性和非准确性两个对立目标的问题。对推荐列表的准确性和多样性两个目标进行优化,实现个性化电影的推荐。
本发明采用的技术方案为基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,该方法在进化之前,采用正交交叉的方式设置初始化种群,使初始化种群分布均匀,避免随机初始化造成个体分布不均匀,使自适应多目标正交交叉算子进行正交交叉操作,使种群在进化过程中能够快速的收敛到pareto解集,并且使种群的分布更加均匀,使得到的推荐列表多样性更加丰富。
该方法包括以下步骤:
S1个体编码、相关参数设定
个体的编码采用实数编码,基因位为电影的ID号,N个电影组成一个个体,个体编码形式为:<d1,d2,di…dN>,其中N表示电影个数,di表示第i个需要推荐的电影编号。种群初始化为popsize=100,交叉概率pc为0.9,变异概率pm为0.1,每条染色体中电影编号不重复。
S2子空间划分
在实际问题中,存在一些具有多个极值点且全局最优点位置未知的高维多模态函数。在对这些函数进行全局优化时,必须让初始种群中的个体尽可能均匀分布在搜索域中。利用正交实验方法初始化的种群具有均匀分散、齐整可比的特点,使用正交实验方法来初始化种群,产生的初始个体能够均匀分散地分布在整个解空间中,保证了初始群体的多样性和较丰富的模式,能在全局范围内快速收敛,使用正交实验方法初始化种群时当可行解空间[l,u]大时,为提高搜索效率和精度,将可行解空间进行子空间划分,分割成S个子空间[[l1,u1]],[[l2,u2]],……,[[ls,us]],具体操作流程如下:
S2.1.找到满足下式的第m维:
其中m代表第m维,k代表第m维的第k个子空间,l表示可行解空间的下限,u表示可行解空间的上限;
S2.2.假设可行解空间为[l,u],则在第m维处将可行解空间分割成S个子空间[l(1),u(1)],[l(2),u(2)],…,[l(S),u(S)]
其中Im=[c1,j]1×N
m代表第m维,i代表第i个子空间,一共S个子空间,N代表第m维向量的个数。
S3:创建正交表
S3.1.计算满足(QJ-1)/(Q-1)≥F的最小值J;
S3.2.若(Q^J-1)/(Q-1)=F,则令F'=F,否则令F'=(QJ-1)/(Q-1);
S3.3.创建基本列:
S3.4.创建非基本列:
S3.5.对于i和j满足1≤i≤M,1≤j≤F,执行ai,j=ai,j+1;
S3.6.删除正交表LM(QF)的最后F′-F,得到LM(QF)。
其中Q为水平数,F为因素数,且M=QJ,J为计算满足(QJ-1)/(Q-1)≥F的最小值J,ai,j表示第i个组合的第j个因素的水平值,正交表的列分为基本列和非基本列。若第j列满足
则称第j列aj为基本列。
S4自适应多目标正交交叉算子(SMOC)
S4.1.设p1=(p1,1,p1,2,…,p1,N),p2=(p2,1,p2,2,…,p2,N)为参与交叉操作的两个父代个体,由p1和p2所确定的可行解空间为[lparent,uparent],接着把空间[lparent,uparent]中的第i维离散化为Q个水平,即Bi,1,Bi,2,…,Bi,Q,i属于{1,2,…,N},记Bi=(Bi,1,Bi,2,…,Bi,Q),其中:
N是种群的维度,Q是水平数,Bi,1代表第i维的第一个元素
S4.2.令向量k=[k1,k2,…,kt],并且满足:ki∈J且1≤k1<k2<…≤kt≤N,j=1,2,…,t,集合J的定义为:J={i||p1i-p2i|>δ0,i=1,2,…,N},t为p1,p2中相似度低的分量的个数,其中δ0是给定的接近于0的正实数,向量k保存了相似度低的分量在p1,p2中的位置,即进行因素的位置,设x为p1,p2中的任一个体,把个体x=(x1,x2,…,xN)分成t份,此处t是相似度低的分量的个数,一个t中有可能包含几个分量,如果一个t包含一个分量,t就是N份如公式(5)所示;其中每一份表示个体x的一个因素,f代表因素。
令k0=0,则第i个因素fi的Q个水平表示为:
S4.3.根据S3构造正交表LM(QF)=[bi,j]M×F,其中F=t,M=QJ,Q为水平数,利用正交表LM(QF)来对公式5和公式6中的每一个因素对应的Q个水平进行正交实验设计,将产生M个子代个体如公式7:
S4.4.将M个子代应用到k目标函数y1,y2,…,yk的多目标优化问题中,计算每个因素对应的每个水平数的k个目标函数的均值矩阵[Δq,jk]Q×N×K。记N个因素在Q个不同水平下的K个目标的目标均值。
S4.5.由目标均值矩阵计算出每个因素j,j=1,2,…,N的非劣集合
其中对于第j个因素的任何两个水平xu,j,xv,j,j=1,2,…,N,定义当且仅当Δu,j<Δv,j,即第j个因素的第u个水平数的函数均值小于第j个因素的第v个水平数的函数均值,则对于因素j的非劣集合表示为其中Lj={u}
S4.6.创建N个非劣集合的卡式积
N代表维度数,Li表示第i维的非劣集合,1≤i≤N
S4.7对S4.6求得的子代个体进行快速非支配排序,从中挑选出靠近Pareto前沿的优秀个体加入到下一代中。
S5自适应多目标正交交叉初始化种群:
由步骤S2将可行解空间[l,u]分割成S个子空间,利用自适应多目标正交交叉算子对每一个子空间进行交叉操作,产生新的种群p,对种群p进行快速非支配排序,从排序后的种群p中选择靠近pareto最近的n个个体组成初始种群p0
S6生成临时种群p'generation
设generation为进化代数,以pc的概率从pgeneration中选择个体组p'generation由于交叉操作需要偶数出现,选择偶数个个体组成p'generation
S7.交叉操作
对群体p'generation进行随机配对,对选择的每两个个体进行自适应多目标正交交叉算子操作,产生新的后代个体,新的后代个体组成种群Cgeneration,对Cgeneration进行非支配排序,选择靠近pareto最近的一层的个体组成C'generation
S8.变异操作
从p'generation中随机选取不同于待变异向量的两个向量。按选择的顺序求这两个向量的差值,群体经变异后生成的新种群记作G'generation
其中Gm为进化代数,F为收缩因子,F0为初始值,l为个体编号,a,b,c,为维度。
S9.选择操作
采用贪婪算法来选择进入下一代种群的个体,经过变异和交叉操作后生成的实验个体ui(C'generation+G'generation)和进行竞争,只有当个体ui的适应度值较xi更优时才被选作子代,否则直接将xi作为子代,选择操作的方程为:
其中t表示第t代。
S10.终止条件判断:
若达到规定的代数或得到预定的结果,则结束并且输出结果,否则转S6。
对于多目标优化问题的个体目标函数值的计算,需要计算多个目标函数的值,用非支配排序计算各个个体所在的层数,将层数作为个体的虚拟适用度值;
这里涉及到两个目标函数,分别指的是准确性计算函数和多样性计算函数;多样性计算函数为计算每个用户的推荐列表中,每个电影之间的相似度,统计整个列表的相似性得到的结果就是每个用户的推荐列表的多样性。准确性计算函数为计算推荐列表和用户评过分的列表之间的相似性,得到的累加结果就是用户推荐列表的准确性。
与现有技术相比,本发明具有如下有益效果。
基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,算法在进化之前,采用自适应多目标正交交叉算子初始化种群,使初始种群分布均匀,避免种群随机初始化造成的个体分布不均匀;使用自适应多目标正交交叉算子进行交叉操作,使种群分布更加均匀,并且能够快速的收敛于pareto前沿,用改进的算法做电影推荐使获得的推荐列表的准确性和多样性更加丰富,通过与其他推荐算法的实验对比验证了算法的有效性。
附图说明
图1为基于自适应正交交叉的多目标优化算法流程图。
图2基于自适应正交交叉的多目标优化算法的个性化电影推荐方法整体流程图。
图3为基于用户的协同过滤推荐算法主要流程图。
图4为基于内容的推荐算法主要流程图。
具体实施方式
下面结合附图和具体实例对本发明做进一步说明。
本发明采用Movielens作为电影推荐的数据集,该数据集包括943个用户的信息,1682部电影的信息,100,000条用户对电影的评分,把SMOCDE和NSGA-II以及传统的推荐方法基于用户的协同过滤算法(UserCF)、基于内容的推荐算法(CB)进行实验对比。
在NSGA-II和SMOCDE两种多目标优化算法中,以电影ID号作为基因位,每条染色体代表N部电影,实验中N取值为(5,10,15,20),运行代数gen=100,种群规模设置为popsize=50,交叉概率pc=0.9,变异概率pm=0.1,以准确性和多样性为两个优化目标函数,公式如下:
d(i,j)=1-sim(i,j) (11)
其中fD(R)为多样性目标函数,R为推荐列表集合,sim(i,j)为相似性计算函数,L为推荐列表长度。
gm(i,pu)=sim(i,j)i∈R,j∈pu (13)
其中fm(pu,R)为准确性目标函数,L为推荐列表长度,R推荐集合,PU为用户评分项目集合,gm(i,pu)为用户评分集合和推荐列表相似性计算函数。
推荐算法性能评估函数为:
Precision为准确率评价函数,R(i)为用户推荐的列表集合,L(i)为用户喜欢的列表集合。
Div(u)为多样性评价函数,r(i)为推荐列表集合,sim(i,j)为物品i和物品j的相似性,N(i)表示喜欢物品i的集合。
本发明提出的基于自适应正交交叉的多目标优化算法的个性化电影推荐方法的主要流程如图1所示,整个流程运用自适应多目标正交交叉算子初始化种群,和自适应多目标正交交叉算子参与交叉操作的方法,主要分为自适应多目标正交交叉操作初始化种群、选择操作、自适应多目标正交交叉操作、变异操作等四部份。
结合图2对本发明的实施过程作详细的说明。本发明的实例是在以本发明技术方案为前提下进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实例。
实例选用电影个性化推荐问题对本文中提出的多目标改进算法SMOCDE和基于用户的协同过滤算法(UserCF)、基于内容的推荐算法(CB)以及NSGA-II进行测试和比较。
其中,基于用户的协同过滤算法(UserCF)根据用户所看电影的评分数值,计算两两用户之间的相似度,并选出与待推荐用户相似度最接近的topK个用户,以这些相似度数值为权重,利用这些用户已看过并评分的电影对待推荐的用户未看过的电影进行预测评分。主要流程如图3所示。
基于内容的推荐算法(CB)根据电影类型的所属关系计算各个电影之间的相似度值,并对待推荐的用户已经看过的电影评分较高的电影,按照相似度大小对未看过的电影进行预测评分。主要流程如图4所示。
基于NSGA-II和SMOCDE的推荐算法而言,使用准确度和多样性作为两个优化目标函数,使推荐的电影列表多样性和准确度两个指标能够同时达到比较优秀。目的在于求解N个不同电影的编号组合,即每个个体的基因位为一部电影的编号,用di表示第i部电影的编号,个体编码形式为:<d1,d2,di。。。dN>,采用实数编码方式,编码范围为电影编号所在的范围并且为整数形式,保持编码中电影编号有序且不重复,以作为待推荐的N部不同电影的一种组合方式。
下面详细给出该发明技术方案中所涉及的各个细节问题的说明:
S1个体编码、相关参数设定
个体的编码采用实数编码,基因位为电影的ID号,N个电影组成一个个体,个体编码形式为:<d1,d2,di…dN>,其中N表示电影个数,di表示第i个需要推荐的电影编号。种群初始化为popsize=100,交叉概率pc为0.9,变异概率pm为0.1,每条染色体中电影编号不重复。
S2子空间划分
在实际问题中,存在一些具有多个极值点且全局最优点位置未知的高维多模态函数。在对这些函数进行全局优化时,必须让初始种群中的个体尽可能均匀分布在搜索域中。利用正交实验方法初始化的种群具有均匀分散、齐整可比的特点,使用正交实验方法来初始化种群,产生的初始个体能够均匀分散地分布在整个解空间中,保证了初始群体的多样性和较丰富的模式,能在全局范围内快速收敛,使用正交实验方法初始化种群时当可行解空间[l,u]大时(其中l表示可行解空间的下限,u表示可行解空间的上限),为提高搜索效率和精度,将可行解空间进行子空间划分,分割成S个子空间[[l1,u1]],[[l2,u2]],……,[[ls,us]],具体操作流程如下:
S2.1.找到满足下式的第m维:
此处m代表第m维,k代表第m维的第k个子空间
S2.2.假设可行解空间为[l,u],则在第m维处将可行解空间分割成S个子空间[l(1),u(1)],[l(2),u(2)],…,[l(S),u(S)]
其中Im=[c1,j]1×N
m代表第m维,i代表第i个子空间,一共S个子空间,N代表第m维向量的个数。
S3:创建正交表
Step1.计算满足(QJ-1)/(Q-1)≥F的最小值J;
Step2.若(Q^J-1)/(Q-1)=F,则令F'=F,否则令F'=(QJ-1)/(Q-1);
Step3.创建基本列:
Step4.创建非基本列:
Step5.对于i和j满足1≤i≤M,1≤j≤F,执行ai,j=ai,j+1;
Step6.删除正交表LM(QF)的最后F′-F,得到LM(QF)。
其中Q为水平数,F为因素数,且M=QJ,J为计算满足(QJ-1)/(Q-1)≥F的最小值J,ai,j表示第i个组合的第j个因素的水平值,正交表的列分为基本列和非基本列。若第j列满足
则称第j列aj为基本列。
S4自适应多目标正交交叉算子(SMOC)
S4.1.设p1=(p1,1,p1,2,…,p1,N),p2=(p2,1,p2,2,…,p2,N)为参与交叉操作的两个父代个体,由p1和p2所确定的可行解空间为[lparent,uparent],接着把空间[lparent,uparent]中的第i维离散化为Q个水平,即Bi,1,Bi,2,…,Bi,Q,i属于{1,2,…,N},记Bi=(Bi,1,Bi,2,…,Bi,Q),其中:
N是种群的维度,Q是水平数,Bi,1代表第i维的第一个元素
S4.2.令向量k=[k1,k2,…,kt],并且满足:ki∈J且1≤k1<k2<…≤kt≤N,j=1,2,…,t,集合J的定义为:J={i||p1i-p2i|>δ0,i=1,2,…,N},t为p1,p2中相似度低的分量的个数,其中δ0是给定的接近于0的正实数,向量k保存了相似度低的分量在p1,p2中的位置,即进行因素的位置,设x为p1,p2中的任一个体,把个体x=(x1,x2,…,xN)分成t份(t是相似度低的分量的个数,一个t中有可能包含几个分量,如果一个t包含一个分量,t就是N份),其中每一份表示个体x的一个因素(f代表因素)。
令k0=0,则第i个因素fi的Q个水平表示为:
S4.3.根据S3构造正交表LM(QF)=[bi,j]M×F,其中F=t,M=QJ,Q为水平数,利用正交表LM(QF)来对每一个因素对应的Q个水平进行正交实验设计,将产生M个子代个体:
S4.4.将M个子代应用到k目标函数y1,y2,…,yk的多目标优化问题中,计算每个因素对应的每个水平数的k个目标函数的均值矩阵[Δq,j,k]Q×N×K
记N个因素在Q个不同水平下的K个目标的目标均值。
S4.5.由目标均值矩阵计算出每个因素j,j=1,2,…,N的非劣集合
其中对于第j个因素的任何两个水平xu,j,xv,j,j=1,2,…,N,定义当且仅当Δu,j<Δv,j,即第j个因素的第u个水平数的函数均值小于第j个因素的第v个水平数的函数均值,则对于因素j的非劣集合表示为其中Lj={u}
S4.6.创建N个非劣集合的卡式积
N代表维度数,Li表示第i维的非劣集合,1≤i≤N
S4.7对S4.6求得的子代个体进行快速非支配排序,从中挑选出靠近Pareto前沿的优秀个体加入到下一代中。
S5自适应多目标正交交叉初始化种群:
由步骤S2将可行解空间[l,u]分割成S个子空间,利用自适应多目标正交交叉算子对每一个子空间进行交叉操作,产生新的种群p,对种群p进行快速非支配排序,从排序后的种群p中选择靠近pareto最近的n个个体组成初始种群p0
S6生成临时种群p'generation
设generation为进化代数,以pc的概率从pgeneration中选择个体组p'generation由于交叉操作需要偶数出现,选择偶数个个体组成p'generation
S7.交叉操作
对群体p'generation进行随机配对,对选择的每两个个体进行自适应多目标正交交叉算子操作,产生新的后代个体,新的后代个体组成种群Cgeneration,对Cgeneration进行非支配排序,选择靠近pareto最近的一层的个体组成C'generation
S8.变异操作
从p'generation中随机选取不同于待变异向量的两个向量。按选择的顺序求这两个向量的差值,群体经变异后生成的新种群记作G'generation
F=F0*2t
其中Gm为进化代数,F为收缩因子,F0为初始值,l为个体编号,a,b,c均为维度。
S9.选择操作
采用贪婪算法来选择进入下一代种群的个体,经过变异和交叉操作后生成的实验个体ui(C'generation+G'generation)和进行竞争,只有当个体ui的适应度值较xi更优时才被选作子代,否则直接将xi作为子代,选择操作的方程为:
其中t表示第t代。
S10.终止条件判断:
若达到规定的代数或得到满意的结果,则结束并且输出结果,否则转S6。以上为基于改进NSGA-II的个性化电影推荐方法的主要流程步骤。
下面详述说明本发明的实验结果:
为了证明本发明所述方法在电影个性化推荐问题中的有效性,分别采用SMOCDE(本发明中的方法)和UserCF、CB以及NSGA-II对电影个性化推荐中的TOP-N问题进行优化,其中,N为一个组合中推荐电影的个数(这里分别取值为5、10、15、20),实验结果如表1所示。
表1 FFNSGA-II与UserCF、CB以及NSGA-II的准确率对比
Index N CB UscrCF ItemCF NSGA-II SMOCDE
3 0.0356 0.1786 0.1487 0.1934 0.1979
6 0.0267 0.1773 0.1457 0.1898 0.1902
9 0.0312 0.1728 0.1614 0.1823 0.1867
F 12 0.0286 0.1792 0.1638 0.1876 0.1861
15 0.0314 0.1922 0.1642 0.1948 0.1989
18 0.0255 0.1799 0.1588 0.1724 0.177
21 0.0321 0.1897 0.1695 0.1944 0.1983
24 0.0286 0.1854 0.1492 0.1952 0.1978
27 0.0337 0.1926 0.1611 0.1948 0.1993
表.2 SMOCDE与UserCF、CB以及NSGA-II的多样性对比
Index N CB UserCF ItemCF NSGA-II FFNSGA-II
3 0.6424 0.6249 0.5694 0.6658 0.6898
6 0.6732 0.6234 0.5689 0.6689 0.6898
9 0.6535 0.6236 0.5694 0.6652 0.681
12 0.6704 0.6058 0.5701 0.675 0.6805
Diversity 15 0.6645 0.6177 0.5742 0.6713 0.6967
18 0.6678 0.6189 0.5757 0.6815 0.7068
21 0.6743 0.6385 0.5768 0.6831 0.6968
24 0.6858 0.6185 0.5954 0.6794 0.6898
27 0.6889 0.6318 0.5789 0.6824 0.6914
由表1表2可知,采用SMOCDE(本发明中的方法)在N=5、10、15、20的条件下都可以有效的提高推荐的准确性、多样性,而NSGA-II在这两方面则表现较差,UserCF和CB这两种传统的推荐方法相比SCMODE则更差。这充分说明SMOCDE得到的推荐结果比NSGAII方法在提高准确性、多样性方面有所提高,也明显优于UserCF、CB两种传统的推荐方法。因此,与现有技术相比,本发明可以为用户推荐更为精准和多样化的结果。

Claims (3)

1.基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,其特征在于:该方法在进化之前,采用正交交叉的方式设置初始化种群,使初始化种群分布均匀,避免随机初始化造成个体分布不均匀,使自适应多目标正交交叉算子进行正交交叉操作,使种群在进化过程中能够快速的收敛到pareto解集,并且使种群的分布更加均匀,使得到的推荐列表多样性更加丰富;
该方法包括以下步骤:
S1 个体编码、相关参数设定
个体的编码采用实数编码,基因位为电影的ID号,N个电影组成一个个体,个体编码形式为:<d1,d2,di…dN>,其中N表示电影个数,di表示第i个需要推荐的电影编号;种群初始化为popsize=100,交叉概率pc为0.9,变异概率pm为0.1,每条染色体中电影编号不重复;
S2 子空间划分
在实际问题中,存在一些具有多个极值点且全局最优点位置未知的高维多模态函数;在对这些函数进行全局优化时,必须让初始种群中的个体尽可能均匀分布在搜索域中;利用正交实验方法初始化的种群具有均匀分散、齐整可比的特点,使用正交实验方法来初始化种群,产生的初始个体能够均匀分散地分布在整个解空间中,保证了初始群体的多样性和较丰富的模式,能在全局范围内快速收敛,使用正交实验方法初始化种群时当可行解空间[l,u]大时,为提高搜索效率和精度,将可行解空间进行子空间划分,分割成S个子空间[[l1,u1]],[[l2,u2]],……,[[ls,us]],具体操作流程如下:
S2.1.找到满足下式的第m维:
其中m代表第m维,k代表第m维的第k个子空间,l表示可行解空间的下限,u表示可行解空间的上限;
S2.2.假设可行解空间为[l,u],则在第m维处将可行解空间分割成S个子空间[l(1),u(1)],[l(2),u(2)],…,[l(S),u(S)]
其中Im=[c1,j]1×N,
m代表第m维,i代表第i个子空间,一共S个子空间,N代表第m维向量的个数;
S3:创建正交表
S3.1.计算满足(QJ-1)/(Q-1)≥F的最小值J;
S3.2.若(Q^J-1)/(Q-1)=F,则令F'=F,否则令F'=(QJ-1)/(Q-1);
S3.3.创建基本列:
S3.4.创建非基本列:
S3.5.对于i和j满足1≤i≤M,1≤j≤F,执行ai,j=ai,j+1;
S3.6.删除正交表LM(QF)的最后F′-F,得到LM(QF);
其中Q为水平数,F为因素数,且M=QJ,J为计算满足(QJ-1)/(Q-1)≥F的最小值J,ai,j表示第i个组合的第j个因素的水平值,正交表的列分为基本列和非基本列;若第j列满足
则称第j列aj为基本列;
S4 自适应多目标正交交叉算子SMOC
S4.1.设p1=(p1,1,p1,2,…,p1,N),p2=(p2,1,p2,2,…,p2,N)为参与交叉操作的两个父代个体,由p1和p2所确定的可行解空间为[lparent,uparent],接着把空间[lparent,uparent]中的第i维离散化为Q个水平,即Bi,1,Bi,2,…,Bi,Q,i属于{1,2,…,N},记Bi=(Bi,1,Bi,2,…,Bi,Q),其中:
N是种群的维度,Q是水平数,Bi,1代表第i维的第一个元素
S4.2.令向量k=[k1,k2,…,kt],并且满足:ki∈J且1≤k1<k2<…≤kt≤N,j=1,2,…,t,集合J的定义为:J={i||p1i-p2i|>δ0,i=1,2,…,N},t为p1,p2中相似度低的分量的个数,其中δ0是给定的接近于0的正实数,向量k保存了相似度低的分量在p1,p2中的位置,即进行因素的位置,设x为p1,p2中的任一个体,把个体x=(x1,x2,…,xN)分成t份,此处t是相似度低的分量的个数,一个t中有可能包含几个分量,如果一个t包含一个分量,t就是N份如公式(5)所示;其中每一份表示个体x的一个因素,f代表因素;
令k0=0,则第i个因素fi的Q个水平表示为:
S4.3.根据S3构造正交表LM(QF)=[bi,j]M×F,其中F=t,M=QJ,Q为水平数,利用正交表LM(QF)来对公式5和公式6中的每一个因素对应的Q个水平进行正交实验设计,将产生M个子代个体如公式7:
S4.4.将M个子代应用到k目标函数y1,y2,…,yk的多目标优化问题中,计算每个因素对应的每个水平数的k个目标函数的均值矩阵[Δq,j,k]Q×N×K;记N个因素在Q个不同水平下的K个目标的目标均值;
S4.5.由目标均值矩阵计算出每个因素j,j=1,2,…,N的非劣集合
其中对于第j个因素的任何两个水平xu,j,xv,j,j=1,2,…,N,定义当且仅当Δu,jv,j,即第j个因素的第u个水平数的函数均值小于第j个因素的第v个水平数的函数均值,则对于因素j的非劣集合表示为其中Lj={u}
S4.6.创建N个非劣集合的卡式积
N代表维度数,Li表示第i维的非劣集合,1≤i≤N
S4.7 对S4.6求得的子代个体进行快速非支配排序,从中挑选出靠近Pareto前沿的优秀个体加入到下一代中;
S5 自适应多目标正交交叉初始化种群:
由步骤S2将可行解空间[l,u]分割成S个子空间,利用自适应多目标正交交叉算子对每一个子空间进行交叉操作,产生新的种群p,对种群p进行快速非支配排序,从排序后的种群p中选择靠近pareto最近的n个个体组成初始种群p0
S6 生成临时种群p'generation
设generation为进化代数,以pc的概率从pgeneration中选择个体组p'generation由于交叉操作需要偶数出现,选择偶数个个体组成p'generation
S7.交叉操作
对群体p'generation进行随机配对,对选择的每两个个体进行自适应多目标正交交叉算子操作,产生新的后代个体,新的后代个体组成种群Cgeneration,对Cgeneration进行非支配排序,选择靠近pareto最近的一层的个体组成C'generation
S8.变异操作
从p'generation中随机选取不同于待变异向量的两个向量;按选择的顺序求这两个向量的差值,群体经变异后生成的新种群记作G'generation
其中Gm为进化代数,F为收缩因子,F0为初始值,l为个体编号,a,b,c,为维度;
S9.选择操作
采用贪婪算法来选择进入下一代种群的个体,经过变异和交叉操作后生成的实验个体ui(C'generation+G'generation)和进行竞争,只有当个体ui的适应度值较xi更优时才被选作子代,否则直接将xi作为子代,选择操作的方程为:
其中t表示第t代;
S10.终止条件判断:
若达到规定的代数或得到预定的结果,则结束并且输出结果,否则转S6。
2.根据权利要求1基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,其特征在于:对于多目标优化问题的个体目标函数值的计算,需要计算多个目标函数的值,用非支配排序计算各个个体所在的层数,将层数作为个体的虚拟适用度值。
3.根据权利要求1基于自适应正交交叉的多目标优化算法的个性化电影推荐方法,其特征在于:这里涉及到两个目标函数,分别指的是准确性计算函数和多样性计算函数;多样性计算函数为计算每个用户的推荐列表中,每个电影之间的相似度,统计整个列表的相似性得到的结果就是每个用户的推荐列表的多样性;准确性计算函数为计算推荐列表和用户评过分的列表之间的相似性,得到的累加结果就是用户推荐列表的准确性。
CN201810112384.4A 2018-02-05 2018-02-05 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法 Active CN108153918B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810112384.4A CN108153918B (zh) 2018-02-05 2018-02-05 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810112384.4A CN108153918B (zh) 2018-02-05 2018-02-05 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法

Publications (2)

Publication Number Publication Date
CN108153918A true CN108153918A (zh) 2018-06-12
CN108153918B CN108153918B (zh) 2021-07-30

Family

ID=62459593

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810112384.4A Active CN108153918B (zh) 2018-02-05 2018-02-05 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法

Country Status (1)

Country Link
CN (1) CN108153918B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110086731A (zh) * 2019-04-25 2019-08-02 北京计算机技术及应用研究所 一种云架构下网络数据稳定采集方法
CN111191076A (zh) * 2019-12-30 2020-05-22 北京工业大学 基于前景理论与多目标进化的电影推荐方法
CN111428148A (zh) * 2020-03-26 2020-07-17 北京航空航天大学 一种适于制造过程规划的智能优化算法推荐方法
CN111753215A (zh) * 2020-06-28 2020-10-09 海南大学 一种多目标推荐优化方法及可读介质
CN111948977A (zh) * 2020-08-21 2020-11-17 湖北工业大学 一种用于不锈钢加工的多目标优化方法和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010075888A1 (en) * 2008-12-30 2010-07-08 Telecom Italia S.P.A. Method and system of content recommendation
CN103945268A (zh) * 2014-03-17 2014-07-23 深圳创维-Rgb电子有限公司 一种基于多帐号与多目标设备的控制处理方法及系统
CN105868422A (zh) * 2016-06-21 2016-08-17 东北大学 一种基于弹性维特征向量优化抽取的协同过滤推荐方法
CN105975902A (zh) * 2016-04-09 2016-09-28 北京工业大学 基于samme.rcw算法的人脸识别优化方法
CN106844637A (zh) * 2017-01-19 2017-06-13 北京工业大学 基于正交与聚类修剪改进多目标遗传算法的电影推荐方法
CN107203590A (zh) * 2017-04-24 2017-09-26 北京工业大学 基于改进nsga‑ii的个性化电影推荐方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010075888A1 (en) * 2008-12-30 2010-07-08 Telecom Italia S.P.A. Method and system of content recommendation
CN103945268A (zh) * 2014-03-17 2014-07-23 深圳创维-Rgb电子有限公司 一种基于多帐号与多目标设备的控制处理方法及系统
CN105975902A (zh) * 2016-04-09 2016-09-28 北京工业大学 基于samme.rcw算法的人脸识别优化方法
CN105868422A (zh) * 2016-06-21 2016-08-17 东北大学 一种基于弹性维特征向量优化抽取的协同过滤推荐方法
CN106844637A (zh) * 2017-01-19 2017-06-13 北京工业大学 基于正交与聚类修剪改进多目标遗传算法的电影推荐方法
CN107203590A (zh) * 2017-04-24 2017-09-26 北京工业大学 基于改进nsga‑ii的个性化电影推荐方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110086731A (zh) * 2019-04-25 2019-08-02 北京计算机技术及应用研究所 一种云架构下网络数据稳定采集方法
CN111191076A (zh) * 2019-12-30 2020-05-22 北京工业大学 基于前景理论与多目标进化的电影推荐方法
CN111428148A (zh) * 2020-03-26 2020-07-17 北京航空航天大学 一种适于制造过程规划的智能优化算法推荐方法
CN111428148B (zh) * 2020-03-26 2021-11-05 北京航空航天大学 一种适于制造过程规划的智能优化算法推荐方法
CN111753215A (zh) * 2020-06-28 2020-10-09 海南大学 一种多目标推荐优化方法及可读介质
CN111948977A (zh) * 2020-08-21 2020-11-17 湖北工业大学 一种用于不锈钢加工的多目标优化方法和系统
CN111948977B (zh) * 2020-08-21 2021-08-10 湖北工业大学 一种用于不锈钢加工的多目标优化方法和系统

Also Published As

Publication number Publication date
CN108153918B (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
CN108153918A (zh) 基于自适应正交交叉的多目标优化算法的个性化电影推荐方法
CN107203590B (zh) 基于改进nsga-ii的个性化电影推荐方法
CN103971161B (zh) 基于柯西分布量子粒子群的混合推荐方法
Shahabi Sani et al. A multi-objective ant colony optimization algorithm for community detection in complex networks
CN104966125B (zh) 一种社交网络的物品评分及推荐方法
Basu Dynamic economic emission dispatch using evolutionary programming and fuzzy satisfying method
CN106844637B (zh) 基于正交与聚类修剪改进多目标遗传算法的电影推荐方法
CN109948066B (zh) 一种基于异构信息网络的兴趣点推荐方法
CN111222665B (zh) 基于偏好nsga-ⅲ算法的云制造服务组合优化选择方法
CN104794367B (zh) 基于隐语义模型的就医资源评分与推荐方法
CN110118566B (zh) 机器人运行路径生成方法及装置
García‐Hernández et al. Facility layout design using a multi‐objective interactive genetic algorithm to support the DM
CN109325580A (zh) 一种用于服务组合全局优化的自适应布谷鸟搜索方法
CN107256241A (zh) 基于网格与差异替换改进多目标遗传算法的电影推荐方法
CN105354260A (zh) 一种融合社会网络和项目特征的移动应用推荐方法
CN109213951A (zh) 一种基于信任计算和矩阵分解的推荐算法
CN111191076B (zh) 基于前景理论与多目标进化的电影推荐方法
CN107909498B (zh) 基于最大化接受者操作特征曲线下方面积的推荐方法
Vasant Hybrid mesh adaptive direct search genetic algorithms and line search approaches for fuzzy optimization problems in production planning
CN108804586B (zh) 融合网格存优策略的多目标优化的个性化电影推荐方法
Cheng et al. Collaborative filtering algorithm based on data mixing and filtering
Liu et al. An improved quantum particle swarm algorithm for solving multi-objective fuzzy flexible job shop scheduling problem
CN115545294A (zh) 一种基于issa-hkelm的短期负荷预测方法
Abeysooriya et al. Hybrid approach to optimize cut order plan solutions in apparel manufacturing
CN115062236A (zh) 基于多目标优化的混合重排旅游推荐方法及其系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant