基于改进协同过滤的个性化产品服务系统方案推荐
2021-02-25陈耶拉耿秀丽
陈耶拉,耿秀丽
(上海理工大学 管理学院,上海 200093)
0 引言
《中国制造2025》提出要优先发展服务型制造,服务型制造是制造业和服务业融合的新型制造模式,该模式下制造企业为用户提供个性化的产品和服务的集成解决方案,即产品服务系统(Product-Service System,PSS)。个性化的解决方案有助于满足用户需求,提升企业竞争力,但同时也给企业的方案设计带来了挑战。如何根据个性化用户需求快速设计出符合需求特征的方案成为企业关注的重要问题。个性化产品服务系统设计方面已经开展了相关研究,文献[1]提出了基于本体的产品服务系统配置方法,解决了PSS组件配置时系统不一致问题;文献[2]提出了利用智能软件的创新产品服务系统设计方法,利用SCP作为媒介和工具减少PSS对环境的影响;文献[3]提出了面向大规模个性化的产品服务系统模块化设计框架,以实现低成本快速配置;文献[4]研究了产品服务系统模块的有效比较与选择,为实现可持续发展提出产品服务系统建模框架;文献[5]以用户满意度最大化、成本最小化建立了多目标规划模型,利用基于模型规划的服务/产品工程法实现产品延伸服务配置。上述PSS设计方法未全面考虑了用户需求。信息技术为PSS方案设计提供了充分的数据与技术支持。推荐算法是电子商务领域常用的方法,可以快速地为用户提供符合个性化需求的商品信息,为设计个性化PSS提供了解决思路。个性化推荐算法主要分为基于用户的推荐、基于内容的推荐和混合推荐3类。协同过滤技术是常用的基于用户的推荐算法,通过计算用户行为或偏好的相似性,找到新用户的最近邻用户,利用最近邻预测并推荐合适方案。
协同过滤算法目前在很多领域得到了广泛应用。为快速有效地为用户进行产品与服务的推荐,文献[6]利用协同过滤算法中的隐语义概率模型为用户进行电影推荐;文献[7]考虑了阅读时长与频次,利用基于模型的协同过滤算法评估用户对书籍的偏好并进行推荐;文献[8]借助大量已有相似软件的需求描述,为新软件推荐适合的缺失特征。随着产品服务系统的研究深入,推荐算法也开始用于PSS设计研究中,文献[9]考虑了用户的个性化需求以及PSS环境因素,利用协同过滤算法为用户进行环保PSS方案推荐,该文献在协同过滤算法中考虑了属性权重,但属性权重计算方法过于主观。协同过滤推荐算法的核心是找到新用户的最近邻用户,基于最近邻的历史信息预测新用户对项目的兴趣度并做出推荐,因此用户间的相似度计算是重要环节。文献[10]基于Person余弦相似度算法,考虑商品推荐率计算用户间的相似度;文献[11-12]考虑了用户评分可信度计算相似性;文献[13]将用户的评分相似性与用户的情感评论相似性加权求和计算用户相似性;文献[14]利用余弦相似度算法获得用户兴趣相似度,通过云模型获得用户信任云相似度,将两者加权求和获得用户综合相似度寻找最近邻。上述研究未考虑不同配置下各属性对配置满意度贡献度的不同,忽略了不同配置角度下各属性权重的不同,影响了推荐准确度。本文考虑了不同配置下各属性权重影响用户对方案的满意度,并利用该权重计算用户间的相似度。
通常,属性权重的确定方法分为主观赋权法和客观赋权法,其中客观赋权法克服了主观赋权法过度依赖专家经验知识以及存在主观随意性的缺陷。常用的客观赋权方法有熵权法[15-16]、均方差法[17]、主成分分析法[18]等。但在用户满意度研究中,属性效用与总体满意度呈非线性关系[19],而BP神经网络(Back Propagation Neural Network,BPNN)具有较高的自由度以及非线性映射能力,因此更适合非线性情况下属性客观权重的研究[20]。另外,BPNN属于具有自适应能力的黑箱模型,可以自动提取人工操作难以准确获得的特征,因此克服了用户满意度研究中传统统计模型的局限性,柔性的网络结构更贴合用户满意度评价这一复杂内部机制的现实情况。文献[21]通过将用户对关键服务属性的满意度评分输入到神经网络,获得了关键服务属性的重要性。BP神经网络通过非线性函数处理输入和输出的数据,根据训练后模型中的网络连接路径权重得到方案属性的权重。方案推荐过程中已有用户对方案属性的满意度评分,再增加总体满意度评分就可以通过BPNN模型得到属性权重。其中,属性评分数据作为网络输入数据,总体方案满意度评分数据作为网络输出数据。模型训练后,网络连接路径权重的均值即为方案属性的权重。因此,本文采用BPNN处理历史用户评分数据,获得各属性对总体满意度的贡献,从而得到方案客观属性权重。
考虑到不同方案满足的需求类型不同,相应的属性效用不同,为提高推荐准确度,本文提出基于考虑属性权重的多属性协同过滤方法,利用BPNN为不同方案的各属性权重赋值。针对不完全冷启动问题,考虑用户对方案属性的不同偏好,结合属性客观权重与Person余弦算法计算用户间的相似度,并预测目标用户对其他未使用过PSS方案的兴趣度评分,最后为目标用户推荐合适的PSS方案。
1 研究框架
本文提出了考虑方案属性客观权重的多属性协同过滤推荐方法,该方法主要分为两个研究阶段,其推荐过程如图1所示。
(1)设计调查问卷采集用户对不同方案各属性和方案总体的满意度评价信息。建立BPNN,将用户对方案属性的满意度评分作为输入变量,用户对方案总体的满意度评分作为一个输出变量;将采集的评分信息部分作为训练集,部分作为验证集。获得训练完成的BP神经网络后,提取网络中链路的权重计算获得每个属性的客观重要度,以此获得不同产品服务系统方案下各属性的客观权重。
(2)针对不完全冷启动问题,根据目标用户的少量PSS方案历史评分数据,利用考虑用户方案属性偏好的Person余弦相似度算法计算用户间的贴近度,利用Top-N法选取N个高贴近度用户为最近邻。根据最近邻用户对方案的评分预测目标用户的评分并推荐方案。
2 基于BP神经网络计算方案属性权重
通过调查问卷法获得并提取较为典型的用户评价数据,其中包括对各个PSS方案使用后的属性评分以及总体满意度评分,用于训练验证BP神经网络,以确定针对不同方案的属性权重。评价数据中的满意度评分采用Likter五分量表法,即完全不满意1分;较不满意2分;一般3分;比较满意4分;非常满意5分。基于已有文献研究,选取问卷数据中70%数据用于训练BPNN模型,20%数据用于测试训练后的模型,10%数据用于验证[22]。本文利用MATLAB建立BPNN模型,提出了方案属性权重获取方法。由于不同PSS方案具有不同的功能特点,各方案中的属性效用不同,因此用户对不同方案中的各属性偏好不同。假设数据库中的产品服务系统方案集A={A1,A2,A3,…,Aq}共有q个,针对某一方案下的属性权重计算步骤如下:
步骤1将该方案的所有方案属性评分Rj转为自然对数形式,即
Rj→ln(Rj),j=1,2,…,m。
(1)
式中m为所有方案属性的个数。
步骤2将自然对数形式的属性满意度评分作为BPNN的输入变量,总体用户满意度作为BPNN唯一的输出变量。设置学习速率与动量因子,隐含层和输出层的激活函数选取双曲正切函数,模型学习的终止规则采用交叉验证过程。由于隐含层的神经元个数并无精确公式可以确定,通过建立多个BPNN训练测试以确定最适隐含层神经元个数。隐含层的神经元个数取值范围为[2N+1,OP(N+1)][23],N为输入神经元个数,OP为输出神经元个数。在该取值范围中等差选取适当的隐含层神经元数值,并建立相应的BP神经网络。
步骤3训练和测试BPNN。将平均绝对百分比误差(MAPE)和拟合优度R2作为评价BPNN模型性能的指标。
i=1,…,n。
(2)
式中:yi为预测输出;ai为实际输出;n为样本数量。
(3)
式中σ2为总实际输出方差。
当R2接近1时,表示BPNN模型具有良好的拟合优度;MAPE接近0时,表示BPNN模型具有精确的预测能力。筛选出最佳BPNN模型,从而确定BP神经网络隐含层神经元个数取值。
步骤4获取输入变量,即属性的相对重要度。当BPNN已经训练完成后,针对一个输入神经元,取该输入神经元到隐含层神经元和对应隐含层神经元到输出神经元这两段链接路径上的权重之和作为整条链接路径的权重,因此一个输入神经元具有的链接路径权重个数与隐含层神经元个数相同,即总链接路径权重。总链接路径权重的均值为一个输入神经元的权重;一个输入神经元的重要度是其权重与总输入神经元权重的比值。
(4)
(5)
其中:Ij为所求属性的权重;wj为属性Cj的标准化权重,即属性重要度,其中j∈I;wjh为输入层神经元j与隐含层h链路的权重,h∈H;who为隐含层h与输出层神经元o链路的权重,o∈O;H为隐含层的神经元;I为输入层神经元;O为输出层神经元;|H|为隐含层的基数。
3 改进的多属性协同过滤推荐方法
本文考虑到属性的客观重要性以及用户评分的主观倾向,采用改进后的多属性协同过滤算法为用户进行推荐。
首先,获取用户集U={U1,U2,U3,…,Up}对各PSS方案集A的不同属性集C={C1,C2,C3,…,Cn}的满意度评分,如表1所示,Rikj表示用户Ui对方案Ak的属性Cj的满意度评分分值。
表1 用户-PSS评分表
其次,将用户对各方案下的属性满意度和方案总体满意度评分输入BPNN,根据式(4)和式(5)获得各方案下的不同属性重要度wkj,表示针对方案Ak中属性Cj的客观重要度。
将用户对产品服务系统方案属性的评分与属性的客观重要度加权,获得用户对方案的综合评价集,如表2所示。评分计算公式如下:
(6)
式中Rik为用户Ui对方案Ak的评分。
表2 用户-PSS综合评分表
在为目标用户U0进行新方案推荐时,针对方案评价数据稀少的问题,基于该用户已使用的项目评分,采用考虑属性权重的Person余弦相似度算法寻找最近邻。根据TOP-N法,选取N个高贴近度的用户组成最近邻用户并根据其对方案的评分预测目标用户对未购买方案的评分,最后选取兴趣度预测评分最高的产品服务系统方案为目标用户进行推荐。Perosn余弦相似度公式和预测评分公式如下:
sim(U0,V)=
(7)
(8)
4 案例分析
4.1 案例背景及计算
某企业是一家空气净化器制造商,为了增强企业竞争力,满足消费者日益增长的个性化需求,提高产品销售效率,推出为用户推荐产品服务系统方案的服务。该公司提供具有不同特征的产品服务系统方案,分别为:“静音系列”(A1)、“净化系列”(A2)、“杀菌系列”(A3)、“节能系列”(A4)、“美观系列”(A5)、“智能系列”(A6)、“服务系列”(A7)、“加湿系列”(A8)、“便携系列”(A9)、“大面积系列”(A10)。可选的产品服务系统方案的差异在于方案属性的权重不同,方案属性分别为:洁净空气输出率(C1)、风扇速度(C2)、除菌率(C3)、体积大小(C4)、服务响应效率(C5)、品牌APP智能控制系统(C6)。
从客户管理系统中提取200位用户的历史评价数据,其中包含用户对曾经使用过的各类产品PSS方案的各属性满意度评价以及方案总体满意度评价。满意度采用1~5分进行打分,从低到高分别表示非常不满意、比较不满意、一般、比较满意、非常满意。表3截取了部分用户满意度信息。
表3 用户满意度
为了获得方案属性的客观重要度,首先将用户的满意度评分转化为自然对数形式。从200份用户历史评价数据中随机抽取70%的数据用于训练BPNN模型,20%的数据用于测试训练后的模型,10%的数据用于验证。BPNN的输入变量和输出变量分别为自然对数形式的属性满意度和总体用户满意度。学习速率与动量因子均设置为0.7,隐含层和输出层的激活函数选取双曲正切函数。隐含层的神经元个数取值范围为[7,13],因此本文取值7、9、11、13作为隐含层神经元个数训练BPNN模型。通过实验获得误差直方图,由图数据统计信息得出:当隐藏层神经元个数为7、9、11、13时,误差标准方差分别为0.0164 9、0.0275 5、0.0720 1、0.171 3,因此选取误差最小的模型,即隐含层神经元个数为7的BPNN,并获得该BPNN模型的链路权重数据,根据式(4)和式(5)得到各方案下不同属性重要度,如表4所示。
表4 各方案下的不同属性重要度
续表4
目标用户U0曾体验过方案A1、A3、A6、A7、A9、A10,并希望尝试该企业其他产品服务系统方案。为了给用户U0在未体验过的方案A2、A4、A5、A8中推荐合适的方案,利用U0的历史记录寻找最近邻用户V。首先,选取9个体验过全部方案并作出评价的典型用户U1~U9,获取用户对方案各属性的评分,如表5所示;然后考虑用户对方案属性的偏好,采用式(6)计算用户对方案的评分,如表6所示。
表5 用户-PSS各属性评分表
表6 用户-PSS综合评分表
为了对目标用户U0进行方案推荐,根据已有的少量方案评分进行计算。根据式(7)计算目标用户U0与用户U1~U9的相似度,计算结果依次为:0.862 2、0.642 3、0.245 1、0.9070、0.9011、0.824 0、0.768 4、0.507 2、0.9591。用户相似度由高到低为U9>U4>U5>U1>U6>U7>U2>U8>U3。
根据TOP-N法,取N=3。选取与目标用户U0相似度最高的3个用户组成最近邻用户集V,分别为U9、U4、U5。基于U0的邻居用户的方案综合评分,根据式(8)预测U0对未购买方案A2、A4、A5、A8的评分,分别为6.330 4、14.1078、12.819 6、9.077 2。其中预测方案兴趣度最高的是A4,因此为目标用户推荐方案A4。
4.2 对比分析
为了验证考虑用户方案属性偏好Person余弦相似度算法的有效性,采用传统的Person余弦相似度算法进行对比。传统的用户相似度计算方法未考虑不同方案下各属性权重,即当用户方案属性评分加权求和为用户对方案的综合评分时,对方案属性评分进行简单平均获得方案综合评分。基于表5数据,采用传统的Person余弦相似度算法处理用户对不同方案各属性评分数据,得到如表7所示的评分表。
表7 用户-PSS综合评分表
利用Person余弦相似度计算目标用户U0与用户U1~U9的相似度,计算结果如下:0.593 2、0.398 2、0.325 3、0.462 4、0.659 3、0.566 3、0.487 3、0.296 3、0.619 7。用户相似度由高到低为U5>U9>U1>U6>U7>U4>U2>U3>U8。因此,目标用户U0相似度最高的最近邻用户是U5,U9和U1。根据公式(8)预测U0对未购买方案A2、A4、A5、A8的评分,分别为3.762 2,3.195 5,3.165 4,2.926 7。其中预测方案兴趣度最高的是A2,因此为目标用户推荐方案A2。
将本文所提方法计算的用户相似度和不考虑方案属性权重计算的用户相似度进行比对,通过改进相似度算法,用户U0的最近邻用户分别是U9、U4、U5,而对比算法中用户U0的最近邻用户分别是U5,U9和U1。用户相似度影响了预测推荐方案的结果,改进算法中最佳推荐方案A4,而对比算法中最佳推荐方案为A2。依据目标用户U0的已体验方案的评分数据信息与本文所提方法获取的最近邻用户U9、U4、U5相应的方案评分数据进行对比,U0与U9、U4、U5对方案满意度情况相似,均对方案A10具有较高满意度,对方案A1满意度较差,反映了最近邻用户与目标用户U0的需求偏好相似。另外,最近邻用户一致对推荐方案A4的满意度评分远高于他们对其他方案的满意度评分,结果说明所提方法推荐结果更准确,更贴近目标用户U0的个性化需求。而对比算法中,用户U0的最近邻用户U5,U9、U1与U0已体验的方案满意度情况相差甚远,难以反映最近邻用户与目标用户U0有相似的偏好。另外,推荐方案A2未获得最近邻用户一致满意度最高分,因此未考虑方案属性权重进行的最适方案推荐结果不准确,与目标用户U0的实际需求偏好不符。
图3给出了用户U0与用户U1~U9的相似度对比图。由图3可知,对比算法获得的用户相似度数值较为接近,用户间差异较小,相似程度模糊。而所提方法获得的用户相似度数据坡度较大,对比显著,因此考虑属性重要度更能区分用户的不同偏好,以准确计算出最相似的最近邻用户,推荐结果更精确。
5 结束语
产品服务系统是制造业型企业满足用户多样化需求,提升企业竞争力的重要途径。为实现个性化产品服务系统方案的快速配置,协同过滤算法可根据目标用户的偏好找到最近邻用户,根据最近邻用户的信息为其快速推荐方案。本文提出基于改进协同过滤的个性化产品服务系统推荐算法,考虑用户对方案属性的偏好并结合方案属性的客观权重来计算用户间的相似度,为目标用户进行个性化方案推荐。在用户相似度计算环节,将不同方案下各属性的客观重要度引入Person余弦相似度算法;根据已有的用户使用满意度信息,基于BPNN计算不同方案下各属性的客观重要度。所提方法提高了属性重要度的可靠性,可以精确地寻找目标用户的最近邻用户,提高目标用户方案评分预测的准确性,从而找到最佳的推荐方案。
本文通过对某空气净化器企业进行的个性化产品服务系统方案推荐过程进行分析,并将不考虑方案属性权重的协同过滤算法结果与本文所提的改进协同过滤算法结果进行对比。通过对比,本文考虑不同方案下各属性的偏好可使用户间差异表现地更加显著,提高了用户相似度的可靠性,准确预测了目标用户的最佳方案。下一步研究将考虑用户满意度评价信息的不确定性对方案推荐产生的影响。