APP下载

基于隐因子模型的P2P借贷推荐算法

2016-05-14李友马晔赟陈杨阳

山东工业技术 2016年4期
关键词:推荐系统

李友 马晔赟 陈杨阳

摘 要:P2P网络借贷的兴起使得网络借贷平台上投资用户数目以及贷款项目数目迅速激增,同时带来海量的借款人信息以及贷款信息,投资用户在众多贷款项目中找到自己感兴趣的贷款项目变得愈加困难。本文在研究推荐系统相关算法的基础上,详尽的实验了基于隐因子模型的推荐算法,在挖掘用户感兴趣的贷款的准确率。为了说明算法的有效性,本文做了相关推荐算法的多组对比实验。对比实验结果表明,基于隐因子模型的推荐算法能够更有效地预测投资用户的投资偏好,并且对推荐系统应用到P2P借贷平台具有借鉴意义。

关键词:P2P借贷;推荐系统;隐因子模型

DOI:10.16640/j.cnki.37-1222/t.2016.04.233

0 引言

伴随信息技术的迅速发展,互联网金融在近年来迅速兴起。其中P2P网络借贷凭借低成本,快速便捷等特点正成为人们投资理财的新选择。网络借贷平台是新兴的金融市场,通过互联网通道产生的海量交易数据促使了许多相关学术研究。关于网络借贷的研究大致可以分为对投资者出借意愿的研究[1]、对贷款项目评估的研究[2]以及对网络借贷中社交网络的研究[3]。

本文的研究内容是使用推荐算法,分析用户的相关信息,从正在招标的贷款项目中挖掘出用户可能感兴趣、可能投资的项目,并推荐给相应的投资用户,实现提高网络借贷平台上借贷双方的匹配效率的目的。本文的创新工作:(1)从信息检索和机器学习方法的角度考虑,挖掘并推荐给出借人感兴趣的项目,实现提高资本需求双方匹配效率进而提高平台运营效率的研究还是从未有过的;(2)推荐系统目前主要应用于电子商务与社交网络领域,将其运用到网络借贷平台上的情况也不曾有过;(3)使用具有高可扩展性的机器学习方法--矩阵分解技术[4],将推荐系统[5]应用到网络借贷平台。

1 相关知识

本部分将介绍论文研究所要用到的相关知识以及本文实验数据集。

1.1 协同过滤推荐算法

协同过滤推荐是基于这样的假设:如果用户之间的历史行为与偏好是相似的,那么我们可以向他们推荐他们之间相互感兴趣但未发掘的内容。

其方法是将原有的信息构建成一个用户评分矩阵R,行向量代表每一个用户,列向量代表每一个项目,其中的每一个值代表特定用户对特定项目的评分(喜好程度)。目前协同过滤算法主要有基于内存的推荐和基于模型的推荐。矩阵分解即是属于基于模型[5]。

1.2 本文数据介绍

由于我国网络借贷平台数据未被公开,所以无法获得,故本文数据采用的是美国的网络借贷平台Prosper.com上的数据。本文实验只需用到Bids与Loans表。Bids表保存了投资者的出借记录,Loans表记录了借款项目的基本信息和状态。

在网络借贷中,并没有投资者对贷款的评分。但从投资用户对贷款项目的投资金额来看,可以预见,越多的出借数额代表投资用户对该贷款项目越有兴趣,评分也越高。即将投资金额离散为10个等级,从1至10表示金额越大则级别越高,级别越高则表明越感兴趣,我们称它为“投资等级”。

2 基于隐因子模型的推荐算法

矩阵分解模型是当前基于模型的协同过滤算法中应用最流行的一种[5],并且获得了较理想的推荐效果。Yehuda Koren在Netflix比赛中使用称作LFM(latent factorization model)的矩阵分解方法,推荐效果得到显著提升。

2.1 隐因子模型算法实现

对于M*N的评分矩阵,传统的是使用SVD进行分解,而实际上这种直接计算特征值的传统方法的计算复杂度很高,在大规模的矩阵上基本不可行,而实际中系统动辄就是上千万的用户和上百万的物品,所以这种方法无法使用。因此,在实际应用中我们使用LFM方法来进行矩阵分解求解。LFM方法的形式化描述如下所示:

(1)

其中Ui表示的是一个f维的用户因子向量,Vj代表的是一个f维的项目因子向量;UiTVj表示用户i对贷款j的估计投资等级。

求解目标函数(1),通常有两种方法,一种是交叉最小二乘法,一种是随机梯度下降法。由于交叉最小二乘法计算复杂且运算速度慢,所以使用随机梯度下降法。

2.2 实验介绍

(1)数据预处理。从Bids表中导出每个投资者的投资记录,Loans表中导出每个借款成功的贷款项目记录,并按投标日期排序。由于Prosper.com公开的数据有限,为了保证信息的及时性,我们采用最新的2009年至2010年的投资记录进行实验并评估推荐效率。

(2)结果分析。经过隐因子分解之后计算内积得到原矩阵的逼近矩阵,得出了每个用户对借款的投资等级预测值。在评估我们的实验算法时,我们使用评估推荐效率常用的算法:采纳率、精确率、召回率和F值来表示。实验结果发现,随着推荐项目的增多,各项评估指标也增大。当对每个投资用户推荐10个贷款时,最终有86%的用户至少投资了10个贷款中的一项,并且精确率、召回率和F值各项指标也分别达到24%、43%和30.8%。

基于内存的推荐也是协同过滤算法家族使用最为广泛的推荐算法之一。基于内存的推荐的投资等级预测公式如下:

(2)

在式中,表示用户u的平均投资等级;ωu,i表示用户u和i之间的相关性,在实验中我们选取皮尔森相关性系数来计算相关性;α是归一化因子;n表示参照用户数,对n的选取,常用的有两种方式,一种是指定相关度阈值θ,一种是选择固定的K个邻居数。

为说明基于隐因子模型的算法比基于内存的推荐算法相对有效,我们使用同样的训练和测试数据集,和使用指定密度阈值θ和邻居数K的基于内存的协同过滤推荐算法在最优时的表现对比(经过多次实验得出θ=0.1和K=15)。实验结果表明,在推荐10个贷款项时,LFM的推荐准确性要优于基于内存的推荐算法超过10%。

3 基于借贷行为差异的改进算法

在现实生活中,投资用户的出借行为是存在差异的。某些投资者的闲散资金比较充裕,他们的平均投资额超过普遍的用户;同时,贷款之间也存在差异。如有的借款被看好,投资用户愿意出借更多的资金,而使得贷款的平均出借额更高。因此,借款人的投资行为以及贷款项目的优劣都会对出借额的多少产生影响。

3.1 模型改进

现将借贷行为差异考虑到(1)中的模型内。若全体投资用户对一个项目的平均出借等级为A,用户i对一个项目的平均出借等级比A高出Bi(Bi大于0即表示i的投资等级高于平均值,小于0则表示低于平均值);同理,若全体贷款的每一个出借人的平均出借等级为C,贷款j目前的平均出借等级比C高出Lj(Lj大于0即表示j的出借等级高于平均水平,小于0则低于平均水平),这里的Bi与Lj即为出借人的出借偏好和贷款项目的好坏差异。则用户i对贷款j的估出投资等级为的表达式修改为下式:

(3)

同样优化公式将修改为下式:

(4)

3.2 结果分析

将改进后的模型重新做预测,可以发现精确率、召回率、F值都有部分提升。当向每个用户推荐10个贷款时,最终有89%的用户至少投资了其中一项,可以发现采纳率在改进后提高相对明显,对于推荐特定K个项目,改进后的采纳率平均提高4%。

4 结束语

对于网络借贷平台,如果能够使用有效的推荐系统,向投资用户推荐他们感兴趣的贷款项目,不仅可以减少用户在投资决策时的信息筛选,提升用户体验,还能提高借款效率而提高运营效率。通过Prosper网站真实数据实验,结果表明,基于隐因子模型的推荐算法可以有效的利用用户的历史投资记录,找出用户感兴趣的贷款项目;并且当考虑不同用户与贷款项目的个体偏见时,可以更好地提升推荐效率。

参考文献:

[1]宋文,韩丽川.P2P网络借贷中投资者出借意愿影响因素分析[J].西南民族大学学报:自然科学版,2013,39(05):795-799.

[2]Li S, Qiu J, Lin Z, et al. Do borrowers make homogeneous decisions in online P2P lending market? An empirical study of PPDai in China[C]// Service Systems and Service Management (ICSSSM),2011 8th International Conference on.IEEE,2011:1-6.

[3]Berger S C,Gleisner F.Emergence of Financial Intermediaries in Electronic Markets:The Case of Online P2P Lending[J].BuR - Business Research,2010,2(01):39-65.

[4]程明松,刘勺连.一种实用快速非负矩阵分解算法[J].大连理工大学学报,2013,53(01):151-156.

[5]J.Bobadilla,F.Ortega,A.Hernando,A.Gutierrez.Recommender systems survey. Knowledge-Based Systems,2013,46(01):109-132.

作者简介:李友(1990-),男,江西赣州人,硕士研究生,主研领域:数据挖掘。

猜你喜欢

推荐系统
数据挖掘在选课推荐中的研究
基于用户偏好的信任网络随机游走推荐模型
基于个性化的协同过滤图书推荐算法研究
个性化推荐系统关键算法探讨
浅谈Mahout在个性化推荐系统中的应用
关于协同过滤推荐算法的研究文献综述
一种基于自适应近邻选择的协同过滤推荐算法
UGC标签推荐系统的一种新的标签清理方法
网上商品推荐系统设计研究
基于Mahout分布式协同过滤推荐算法分析与实现