1.一种基于审美特征和对抗性学习的协同过滤推荐方法,其特征在于,该方法包括如下步骤:步骤1:从产品数据集中分别提取出CNN特征 和AES特征 ,AES特征即审美特征;
步骤2:拼接CNN特征和AES特征,得到新的特征矩阵Fq;
步骤3:在协同过滤的基础上加入审美特征,定义所提出的原始CFA模型,用 表示;
步骤4:确定对抗性扰动的目标和添加位置,提高算法的精度和准确性,同时使模型训练过程的复杂度尽可能降低;
步骤5:定义所提出的对抗性扰动ACFA模型,用 表示;
步骤6:模型训练,通过最小化目标函数来实现模型参数学习,以获得最佳的模型参数;
步骤7:调整模型中关于扰动的两个超参数 和 ,使得模型性能最佳;
步骤8:选取推荐系统评价指标作为评价模型性能的依据;
步骤9:记录、整理实验结果,与基线模型对比,形成结论;
所述步骤2中,得到新的特征矩阵表示为 ,其中CNN特征 和AES特征 分别通过CNN卷积神经网络和BDN美学网络从产品数据集中提取;
所述步骤3中,在加入审美特征后,得到的未添加对抗性扰动的CFA模型的定义如(1)所示:(1)
其中,M是用户偏好矩阵,U代表用户的嵌入矩阵,V代表产品的嵌入矩阵,F是特征矩阵,p、q分别表示用户和产品, 是基于潜在特征所得到的,V捕捉的是用户的偏好信息,而是基于图片特征所得到的,M是对用户偏好的编码,特征矩阵 的构建已在步骤2中给出;
所述步骤3中,由于CFA模型使用典型的贝叶斯个性化排序优化标准对用户的隐式反馈进行优化,所以将BPR损失作为对应的目标函数,如(2)所示:(2)
其中,D是训练集,是模型的参数,p、q、q’分别表示用户、该用户购买过的产品和该用户未购买过的产品,表示各参数 对应系数, 是L2范数,其中 表示为:(3)
所述步骤4中,由于对抗性学习的第一个重要过程,是构建能够使BPR损失最大的扰动,所以确定所引入的对抗性扰动表示为:(4)
其中, ,D是训练集,是模型的参数, 是控制扰动幅度的超参数, 是L2范数;并选择在模型参数中加入扰动,通过在模型的参数处加入扰动,一方面它能避免提取图片特征的网络与模型训练过程产生交叉影响,提高算法的精度和准确性,另一方面它能避免模型训练过程中产生过大的复杂度,提升算法的效率;
所述步骤5中,确定对抗性扰动加入的位置后,将对抗性扰动模型ACFA定义为如(5)所示:(5)
其中, 表示加入到审美特征矩阵的对抗性扰动;
所述步骤6中,模型训练过程中,对于一个实例(p,q,q’ ),需要在已确定对抗性扰动的条件下,通过最小化相对应的目标函数来实现对模型参数的更新,因为相关的目标函数固定不变,所以此时的模型参数学习又看作是一个求最小值问题,能够将其近似为梯度下降,如(6)表示:(6)
其中, ,表示学习率,选择Tensorflow中的Adagrad优化器参与模型参数学习,它能对克服SGD对学习率不能进行自适应调整的局限性。
2.根据权利要求1所述的基于审美特征和对抗性学习的协同过滤推荐方法,其特征在于,所述步骤7中,对抗性扰动的加入引入了两个额外的超参数 和 ,来分别控制扰动幅度即扰动大小和对抗性扰动所产生的损失函数在总损失函数中的影响力,将分别改变 和 的取值,每次改变取值后都重新进行模型训练,将模型性能达到最佳时所对应的超参数取值作为最终取值。