一种基于粒子群算法的艺术品推荐方法转让专利

申请号 : CN201810787365.1

文献号 : CN109034968B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜小军

申请人 : 江苏中润普达信息技术有限公司

摘要 :

本发明公开了一种基于粒子群算法的艺术品推荐方法,包括如下步骤:S1:形成用户和艺术品属性矩阵;S2:引入K‑means算法,并根据艺术品属性权重对传统算法进行改进,融合用户搜索行为的数量以及频度的特征,构建用户特征向量,进而通过基于属性权重进行相关用户聚类;S3:计算邻居集合:(1)、类别的聚类;(2)、最近邻搜索。本发明通过粒子群寻优过程,寻找全局最优的权重和最优的结果,自动把个性化需求信息及时提供到用户的手里。

权利要求 :

1.一种基于粒子群算法的艺术品推荐方法,其特征在于,包括以下步骤:S1:形成用户和艺术品属性矩阵;

S2:引入K‑means算法,并根据艺术品属性权重对传统算法进行改进,融合用户搜索行为的数量以及频度的特征,构建用户特征向量,进而通过基于属性权重进行相关用户聚类,K‑means算法的处理流程如下:(1)、从n个数据对象任意选择k个对象作为初始聚类中心;

(2)、根据每个聚类对象的均值,计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;

(3)、重新计算每个聚类的均值;

(4)、循环(2)到(3)直到每个聚类不再发生变化为止;

k‑means算法接受输入量k,然后将n个数据对象划分为k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小,聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”来进行计算的;

S3:计算邻居集合:

(1)、类别的聚类,其具体步骤如下:Step1、初始化一群微粒,且群体规模为m;

Step2、计算每个微粒的适应度;

Step3、对每个微粒,将其适应值与其经过的最好位置pbest作比较,如果较好,则将其作为当前的最好位置pbest;

Step4、如果否,就更新粒子的位置和速度;如果是,输出解决最优解即聚类中心;

Step5、未达到结束条件则转Step2,迭代终止条件为最大迭代次数Gk或/和微粒群迄今为止搜索到的最优位置满足预定最小适应阈值;

(2)、最近邻搜索,其具体步骤如下:在经过目标艺术品聚类后,只需要在目标相似性最高几个聚类中就能够找到目标艺术品的大部分邻居,而不用在整个空间进行搜索;

最近邻搜索,具体步骤如下:

A、计算目标相与每个聚类中心的相似性;

B、选择小于相似性阈值聚类中心所在的聚类进行搜索,计算聚类内项目与目标项目的相似性;

C、找出与目标艺术品最近的前N个邻居作为目标项目的最近邻居;

D、产生预测:在计算出目标艺术品的最近邻居后,对项目预测并评分;

E、形成推荐:选择用户最感兴趣的N个艺术品进行推荐,从而完成艺术品推荐。

说明书 :

一种基于粒子群算法的艺术品推荐方法

技术领域

[0001] 本发明涉及艺术品推荐技术领域,尤其涉及一种基于粒子群算法的艺术品推荐方法。

背景技术

[0002] 随着人们收入水平的提高,艺术品消费也开始走进寻常百姓家。特别是移动互联网的普及,艺术品市场也全面进入互联网时代,艺术品的网上展示交易日益成为潮流。消费
者面对大量的网上艺术品交易信息,常常会因此而迷失其中,出现信息膨胀也称作信息过
载的问题,往往难以发现最需要或最适合的艺术品。用户推荐系统的出现有效地缓解了这
一矛盾。但是,数据的稀疏性、冷启动以及忽略用户兴趣迁移等问题的存在却阻碍着推荐系
统进一步的发展。对此,人们在努力寻找一种智能的服务方式,可以按照用户的意愿为用户
选择他感兴趣的产品或服务。
[0003] 为了解决这一矛盾问题,快速准确地找到所需信息,搜索引擎(SearchEngine)技术备受青睐,但是搜索引擎必须依据用户输入的准确信息来完成信息搜索工作,而且也没
有顾及用户的个性化特点,只要关键词一致,那么每个用户获得的搜索结果都是相同,所以
它的智能性低,难以在知识层面理解用户需求。
[0004] 另外,搜索引擎工作的机制也决定了其只适合在用户主动搜索时进行被动式的服务,无法提供适时的主动推荐。为使用户得到需要而满意的服务,推荐系统成为必然之选。
为此,我们提出了一种基于粒子群算法的艺术品推荐方法。

发明内容

[0005] 本发明提出了一种基于粒子群算法的艺术品推荐方法,以解决上述背景技术中提出的问题。
[0006] 本发明提出了一种基于粒子群算法的艺术品推荐方法,包括如下步骤:
[0007] S1:形成用户和艺术品属性矩阵;
[0008] S2:引入K‑means算法,并根据艺术品属性权重对传统算法进行改进,融合用户搜索行为的数量以及频度的特征,构建用户特征向量,进而通过基于属性权重进行相关用户
聚类;
[0009] S3:计算邻居集合:
[0010] (1)、类别的聚类,其具体步骤如下:
[0011] Step1、初始化一群微粒,且群体规模为m;
[0012] Step2、计算每个微粒的适应度;
[0013] Step3、对每个微粒,将其适应值与其经过的最好位置pbest作比较,如果较好,则将其作为当前的最好位置pbest;
[0014] Step4、如果否,就更新粒子的位置和速度;如果是,输出解决最优解即聚类中心;
[0015] Step5、未达到结束条件则转Step2,迭代终止条件为最大迭代次数Gk或/和微粒群迄今为止搜索到的最优位置满足预定最小适应阈值;
[0016] (2)、最近邻搜索,其具体步骤如下:
[0017] 在经过目标艺术品聚类后,只需要在目标相似性最高几个聚类中就能够找到目标艺术品的大部分邻居,而不用在整个空间进行搜索,与目标相似性最高几个聚类空间相对
于整个空间要小得多,因此能够大大提高在线搜索速度,让推荐系统实时性得到保证。
[0018] 优选的,在S2中的K‑means算法的处理流程如下:
[0019] (1)、从n个数据对象任意选择k个对象作为初始聚类中心;
[0020] (2)、根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;
[0021] (3)、重新计算每个(有变化)聚类的均值(中心对象);
[0022] (4)、循环(2)到(3)直到每个聚类不再发生变化为止。
[0023] 优选的,k‑means算法接受输入量k,然后将n个数据对象划分为k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小,聚类
相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。
[0024] 优选的,在S3中的最近邻搜索,具体步骤如下:
[0025] A、计算目标相与每个聚类中心的相似性;
[0026] B、选择小于相似性阈值聚类中心所在的聚类进行搜索,计算聚类内项目与目标项目的相似性;
[0027] C、找出与目标艺术品最近的前N个邻居作为目标项目的最近邻居;
[0028] D、产生预测:在计算出目标艺术品的最近邻居后,对项目预测并评分;
[0029] E、形成推荐:选择用户最感兴趣的N个艺术品进行推荐,从而完成艺术品推荐。
[0030] 优选的,相似艺术品能够定义为:
[0031] LNU={L(j)//LC(j)‑LC(i)≤αLC(j)=LC(i)}
[0032] 其中:α表示预定最小适应阈值,L(j)表示已经分类的艺术品,L(i)表示当前艺术品,LNU表示形成的相似艺术品群体。
[0033] 本发明提出的一种基于粒子群算法的艺术品推荐方法,有益效果在于:该方法从用户对艺术品预先设置的需求出发(对应的是用户的网络搜索行为),并结合基于用户和基
于艺术品领域的知识,通过粒子群寻优过程,寻找全局最优的权重和最优的结果,自动把个
性化需求信息及时提供到用户的手里,用户在复杂的网络生态中不是孤立的存在,他可以
和相邻用户进行互动,借助群体之间的交流和协作,用户遵循一定的原则在网络上进行自
主搜索艺术品相应的目标,并与其他关系用户进行互动的同时,其搜索行为行也能对其他
用户行为产生影响。而关注用户搜索艺术品行为的动态也能够引起其他用户的行为变化。
用户艺术品的搜索行为表现为分布性和自组织性,其搜索行为与群智能多项原则具有一致
性。

具体实施方式

[0034] 下面结合具体实施例来对本发明做进一步说明。
[0035] 本发明提出了一种基于粒子群算法的艺术品推荐方法,包括如下步骤:
[0036] S1:形成用户和艺术品属性矩阵;
[0037] S2:引入K‑means算法,并根据艺术品属性权重对传统算法进行改进,融合用户搜索行为的数量以及频度的特征,构建用户特征向量,进而通过基于属性权重进行相关用户
聚类;
[0038] S3:计算邻居集合:
[0039] (1)、类别的聚类,其具体步骤如下:
[0040] Step1、初始化一群微粒,且群体规模为m;
[0041] Step2、计算每个微粒的适应度;
[0042] Step3、对每个微粒,将其适应值与其经过的最好位置pbest作比较,如果较好,则将其作为当前的最好位置pbest;
[0043] Step4、如果否,就更新粒子的位置和速度;如果是,输出解决最优解即聚类中心;
[0044] Step5、未达到结束条件则转Step2,迭代终止条件为最大迭代次数Gk或/和微粒群迄今为止搜索到的最优位置满足预定最小适应阈值;
[0045] (2)、最近邻搜索,其具体步骤如下:
[0046] 在经过目标艺术品聚类后,只需要在目标相似性最高几个聚类中就能够找到目标艺术品的大部分邻居,而不用在整个空间进行搜索,与目标相似性最高几个聚类空间相对
于整个空间要小得多,因此能够大大提高在线搜索速度,让推荐系统实时性得到保证。
[0047] 在S2中的K‑means算法的处理流程如下:
[0048] (1)、从n个数据对象任意选择k个对象作为初始聚类中心;
[0049] (2)、根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;
[0050] (3)、重新计算每个(有变化)聚类的均值(中心对象);
[0051] (4)、循环(2)到(3)直到每个聚类不再发生变化为止。
[0052] k‑means算法接受输入量k,然后将n个数据对象划分为k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小,聚类相似度是
利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。
[0053] 在S3中的最近邻搜索,具体步骤如下:
[0054] A、计算目标相与每个聚类中心的相似性;
[0055] B、选择小于相似性阈值聚类中心所在的聚类进行搜索,计算聚类内项目与目标项目的相似性;
[0056] C、找出与目标艺术品最近的前N个邻居作为目标项目的最近邻居;
[0057] D、产生预测:在计算出目标艺术品的最近邻居后,对项目预测并评分;
[0058] E、形成推荐:选择用户最感兴趣的N个艺术品进行推荐,从而完成艺术品推荐。
[0059] 相似艺术品能够定义为:
[0060] LNU={L(j)//LC(j)‑LC(i)≤αLC(j)=LC(i)}
[0061] 其中:α表示预定最小适应阈值,L(j)表示已经分类的艺术品,L(i)表示当前艺术品,LNU表示形成的相似艺术品群体。
[0062] 粒子群算法是一种随机搜索的群体智能算法。粒子群优化算法是在1995年由Eberhart博士和Kennedy博士一起提出的,它源于对鸟群捕食行为的研究。它的基本核心是
利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序
到有序的演化过程,从而获得问题的最优解。它更强调群体内部个体之间的协同与合作而
不是达尔文“适者生存”理论。
[0063] 我们可以利用一个有关PSO的经典描述来对PSO算法进行一个直观的描述。设想这么一个场景:一群鸟进行觅食,而远处有一片玉米地,所有的鸟都不知道玉米地到底在哪
里,但是它们知道自己当前的位置距离玉米地有多远。那么找到玉米地的最佳策略,也是最
简单有效的策略就是搜寻目前距离玉米地最近的鸟群的周围区域。PSO就是从这种群体觅
食的行为中得到了启示,从而构建的一种优化模型。
[0064] 该方法的基本原理就是把当前用户当作活动的“粒子”,通过“粒子”之间相互学习,不断优化权值,找到最佳匹配需求(即推荐)的过程。目标就是要用粒子群算法来学习用
户的需求信息,然后做出一个选择性的建议。这些粒子在运动过程中可以相互学习,互相交
换信息,粒子群飞行主要靠两个吸引:一个是自己历史上最好的位置;一个是领域历史上最
好的记录。这样的粒子不是乱飞,而是具有群智能化的。
[0065] 本发明中,用户在复杂的网络生态中不是孤立的存在,他可以和相邻用户进行互动,借助群体之间的交流和协作,表现出超越个体智能的行为特征。这就是群体智能。
[0066] 也就是说,用户遵循一定的原则在网络上进行自主搜索艺术品相应的目标,并与其他关系用户进行互动的同时,其搜索行为行也能对其他用户行为产生影响。而关注用户
搜索艺术品行为的动态也能够引起其他用户的行为变化。用户艺术品的搜索行为表现为分
布性和自组织性,其搜索行为与群智能多项原则具有一致性。
[0067] 对于每一个用户来说,都是搜索空间运动的一个“粒子”,那么系统中所用到的用户群我们称之为“粒子群”。而用户需求的最优解就对应为用户群要寻找的“那个结果”。所
有的用户都具有一个位置向量(粒子在解空间的位置,一个是自己历史上最好的位置)和速
度向量(决定下次飞行的方向和速度,一个是领域历史上最好的记录),并可以根据目标函
数来计算当前的所在位置的适应值,能够将其理解为距离“那个结果”的距离。在每次的迭
代中,种群中的粒子除了根据自身的“经验”(历史位置)进行学习以外,还可以根据种群中
最优粒子的“经验”来学习,从而确定下一次迭代时需要如何调整和改变飞行的方向和速
度。就这样逐步迭代,最终整个种群的粒子就会逐步趋于最优解。
[0068] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其
发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。