本发明公开了一种面向众筹平台的个性化推荐单目标进化方法,包括:S1、定义众筹平台数据库为C,C={Y1,Y2,…,Yi,…,Y|α|}表示众筹平台数据库中所有交易记录的集合,Yi表示第i个交易记录,|α|为交易记录的总数;遍历众筹平台数据库C中总数为|α|的交易记录,淘汰投资记录少于3的用户以及对应的投资记录,得到众筹平台数据库C中满足条件的交易记录集合D={X1,X2,…,Xi,…,X|τ|},|τ|为满足条件的交易记录的总数,|M|为D中不同用户的数目,以及D中所对应的不同种类产品项的数目为|N|,并根据K‑means算法对用户聚类,得到八个不同的用户类Ci(1≤i≤8);S2、利用基于适应度计算的单目标优化方法对众筹平台数据库D中所有的产品推荐列表进行优化,从而得到最优的一个推荐列表。本发明可以根据自己的需求选择最符合其个人偏好的产品来进行投资。
1 .一种面向众筹平台的个性化推荐单目标进化方法,其特征在于,该方法包括以下步骤:S1、定义众筹平台数据库为C,C={Y1 ,Y2 ,… ,Yi ,… ,Y|α|}表示所述众筹平台数据库中所有交易记录的 集合 ,Yi表示第i个交易记录 ,|α|为交易记录的 总数 ;遍历众筹平台数据库C中 总数为|α|的交易记录 ,淘汰投资记录少于3的 用户以 及对应的投资记录 ,得到所述众筹平台数据库C中满足条件的交易记录集合D={X1 ,X2 ,… ,Xi ,… ,X|τ|},|τ|为满足条件的交易记录的 总数 ,|M|为D中不同 用户的数目 ,以 及D中所对应的不同 种类产品项的数目|N| ,并根据K-means算法对所述用户聚类 ,得到八个不同的 用户类Ci(1≤i≤8) ;
S2、利用基于适应度计算的单目标优化方法对所述众筹平台数据库D中所有的产品推荐列表进行优化,从而得到最优的一个推荐列表。
2 .根据权利要求1所述的面向众筹平台的个性化推荐单目标进化方法,其特征在于,所述S1步骤具体方法为:将任意一个推荐列表X的推荐问题转换为如式(1)所示的单目标优化问题:式(1)中,UPR(X)表示所述推荐列表X的效用-准确性,并有:式(2)中,uprij表示考虑每个产品的效用状态后,投资者i对产品j的预测评分;
式(1)中,TVC(X)表示所述推荐列表X的话题-多样性,并有:式 (3) 中 ,Ndif表示对于某个类Ci里所有 用户的推荐列表中不同 产品的数目 ,Tdif表示对于某个类Ci里所有 用户的推荐列表中不同话题的数目 ,N和T分别表示不同 产品总数目 和话题总数目。
3 .根据权利要求1-2任一所述的面向众筹平台的个性化推荐单目标进化方法,其特征在于,所述S2步骤具体包括以下流程:A1、种群编码:根据所述众筹平台数据库D中所有的 产品项种类数目 ,采 用实数编码方式对推荐列表X中的所有产品项进行编码,得到推荐列表的一个个体X={x1 ,x2 ,… ,xi ,…x|L|};xi表示推荐列表X中第i个产品项,|L|表示推荐列表的长度;对|τ|个交易记录进行编码,得到编码后的众筹平台数据库D ';
A2、初始化种群:A21 :定义种群大小为popSize ;令popSize=100 ,其中N为数据集中所有不同 产品总数 ,L为推荐列表长度 ;通过以 上的计算 ,可以 得到每个 用户的 产品评分表中 ,排 名前S的 产品中 ,排 名提高的 产品 ,将其汇聚成一个|U|行的 表格T ,每行存储相应 用户所对应的排名提高的产品;同理,可以得到一个|U|行的表格V,每行存储相应用户的排名降低的产品;
A22 :提出基于产品排 名变动的 初始化策略 ,针对类Ci中的 用户Um ,求得Tm (1≤m≤|U|)中的 产品个数 ,若|Tm|小于等于L/2 ,则将Tm中所有个体均放入Um的推荐列表中 ,剩下的L-|Tm|个产品随机的从候选产品集Candidate中选出 ,注意 ,为避免推荐列表重复 ,我 们会把已放入推荐列表的Tm中的产品先从候选产品集Candidate中去除 ,再将Vm(1≤m≤|U|)中的产品从 用户Um的候选产品集Candidate去除 ,最后去除Um已 投资过的 产品TrainDatam ;若|Tm|大于L/2,则从Tm随机选出L/2个产品放入推荐列表,剩下的L/2个产品随机的从候选产品集Candidate中选出,同上,为避免推荐列表重复,我们会把已放入推荐列表的产品Tm ,排名降低产品Vm (1≤m≤|U|) 和已投资过的产品TrainDatam先从候选产品集Candidate去除 ;重复|U|次,得到单个个体solution,再重复popSize次,得到初始化种群population;
A23:遍历所述编码后的众筹平台数据库D ',从而对所述初始化种群中的所有个体进行匹配,并利用MaximizeF(X)=λ*f1(X)+(1-λ)*f2(X)s .t .:λ∈(0 ,1)f1=utility-accuracyf2=topic-diversity计算得到所述初始化种群中的所有个体的相应的效用-准确性值和话题-多样性值;
A24 :对所述 初始化 种群按 照F (X) 值从大到小的 顺 序进行排 序 ,得到排 序后的 前popSize个个体组成的种群;
A3、种群进化:A31:初始化迭代次数G=0;
A32:采用锦标赛选择的策略对所述再次排序后的前popSize个个体组成的种群进行选择,得到交配池,作为第G次迭代的种群;
A33:对所述第G次迭代的种群中的个体进行交叉变异产生第G+1次迭代的种群;
A34 :遍历所述 编码后的 众筹平台数 据库D’,从而对所述第G+1次 迭代的 种群中的 所有个体进行匹配,并利用MaximizeF(X)=λ*f1(X)+(1-λ)*f2(X)s .t .:λ∈(0 ,1)f1=utility-accuracyf2=topic-diversity计算得到 第G+1次 迭代的 种群中的 所 有个体的 相应的 效 用-准 确性值 和话 题- 多样性值;
A35 :对所述 第G+1次 迭代的 种群按照F (X) 值从大到小的 顺序进行排序 ,得到排序后的第G+1次迭代的前popSize个个体组成的种群;
A36 :将G+1赋值给G ;并重复执行步骤A32 ,直到G值达到popSize为止 ,从而得到最终迭代后的种群;
A37:对最终迭代后的种群中的个体按照F(X)从大到小的顺序进行排序,得到排序后的
相关内容