张春丽 张涛
摘要:随着各种互联网金融理财产品的普及,用户往往难以获取可信任的投资产品,为解决这一问题,设计一种基于社交网络定向推送理财产品的方法,利用用户直接社会关系和间接社会关系来推送理财产品。当用户之间关系不明确时,通过分析用户所使用的移动设备或位置感知服务产生的时空数据集,基于EBM 模型来挖掘潜在的用户社会关系,即间接社会关系。基于用户的直接社会关系和间接社会关系发现用户可信任的其他用户,然后利用传统的基于用户的协同过滤算法做出理财产品推送。算法分析与仿真实验结果表明该推送方法是可行和有效的。
关键词:金融理财产品;社会关系;时空数据;EBM模型;协同过滤
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)30-0277-04
The Study of Financial Products Push Based on Social Relations
ZHANG Chun-li, ZHANG Tao
(Network Security Technology Research and Development Center, Third Research Institute of the Ministry of Public Security, Shanghai 200120, China)
Abstract: With the popularity of various internet financial products, the user is often difficult to obtain trusted investment products. In order to solve this problem, a method based on social network to recommend financial products is designed, which makes use of the user direct and indirect social relations to push financial products. When the relationship between the users is not clear, by analyzing spatiotemporal data sets generated by the mobile device or location based service used by users, the EBM model is applied to tap the potential social relations between users, namely indirect social relations. After that trusted users of the target user can be found based on the direct and indirect social relations. Finally, traditional user-based collaborative filtering algorithm is used to recommend financial products. Algorithm analysis and simulation results show that the push method is feasible and effective.
Key words: financial products; social relations; spatiotemporal data; EBM model; collaborative filtering
1 引言
隨着互联网的快速发展和智能手机的迅速普及,我国互联网金融市场作为一个潜力巨大的新兴市场应运而生。互联网金融快速的发展为互联网金融理财产品[1]的生长提供丰富的土壤。2013年,阿里巴巴集团推出一款名为“余额宝”的金融理财产品,成为第一个真正意义上的互联网金融理财产品。与传统银行理财产品相比,低门槛、高收益、操作简单方便是它留给投资者的最深刻的印象。这些优点让互联网理财产品很快成为投资者的新型理财方式。在余额宝的带领下越来越多的互联网金融理财产品如雨后春笋般成长起来。伴随着这些投资产品的产生,消费者信任这一问题日渐突出,如何选择低风险高回报的理财产品越来越难。在此背景下,本文提出了一种基于社交网络定向推送理财产品的方法。利用用户直接社会关系和间接社会关系来推送理财产品。当用户之间关系不明确时,通过分析用户所使用的移动设备或位置感知服务产生的时空数据集,基于EBM 模型来挖掘潜在的用户社会关系,即间接社会关系。
众所周知,微博、微信、位置感知服务LBS的普及,产生了大量有关用户位置信息的数据集。我们可以隐式的获取这些用户位置信息,例如当用户在移动设备上进行了信用卡交易活动,我们通过手机信号发射塔、GPS、WiFi热点等可以推测出他目前所在的位置以及交易的时间等。同时,用户位置信息也可以显示获取,例如当一个人发布了一篇带有地理标签的微博,或者在微信上传了一张图片。这些位置数据集,即时空数据集,保真度高,是研究用户的社会行为,用户间社会关系的丰富信息资源。同时社会研究表明,频繁在同一时间出现在同一地点的两个人,最有可能有一定的社会关系,比如说朋友关系、夫妻关系等。
本文通过获取用户的时空数据集,发现用户的间接社会关系,并基于用户的直接社会关系和间接社会关系帮助用户发现可信任的其他用户,然后利用传统的基于用户的协同过滤算法做出理财产品推送。
2 相关工作
2.1 协同过滤推荐
协同过滤的概念最早于1992年由Goldberg等人提出,用于解决电子邮件数量过载问题。直到今天,协同过滤算法依然是互联网中应用最广泛、最成功的推荐算法。目前主要有基于用户(User-based)[2] 的协同过滤和基于商品(Item-based)[3]的协同过滤算法。
基于用户的协同过滤算法依据“相似用户具有相似兴趣”的假设,为目标用户选择相似用户集,利用这些相似用户的已有评分对目标用户没有进行过评分的产品进行评分预测,具体步骤如下:
假设用户u和用户v购买理财产品集合分别为[Iu]、Iv,共同购买的理财产品集合为Iuv,[Ru,i]表示用户u对理财产品i 的购买情况,[Rv,i]表示用户v对理财产品i 的购买情况,0代表没有购买过,1代表购买过,[Ru]和[Rv]分别表示用户u和v对理财产品的平均购买情况。
(1) 计算用户相似性
基于两个用户共同购买的理财产品计算相似性,为目标用户选择兴趣相似度最高的N个最近邻,最常用的测量用户相似度的方法是皮尔逊相关系数相似度和余弦相似度。用户u和用户v之间的相似性通过Pearson相关系数度量[4]:
[simu,v=i∈IuvRu,i-RuRv,i-Rvi∈IuvRu,i-Ru2i∈IuvRv,i-Rv2] (1)
(2) 得到目标用户的推荐列表。
根据N个近邻用户对理财产品的购买行为,计算目标用户对目标产品的预测评分。最终将预测评分最高的若干理财产品推荐给目标用户。常用计算方法是平均加权策略,如下:
目标用户u 对理财产品i 的预测评分为[4]:
[Pu,i=Ru+simu,v×Rv,i- Rvsimu,v] (2)
基于商品的协同过滤算法原理和基于用户的算法基本上是相同的,但是基于商品的协同过滤算法在计算相似性的时候是针对商品的,该种算法适用于用户数量的增长速度大大超过商品数量的增长速度的系统中。通过为目标用户的未购买过的理财产品选择相似产品集并对其进行评分预测,算法选出最终评分最高的N个理财产品推荐给用户。
本文中我们使用基于用户的协同过滤算法,以用户社会关系强度[6,7]衡量用户相似度,使用平均加权策略预测未知评分。
2.2 用户社会关系强度
Granovetter在他的标志性论文《The Strength of Weak Ties》[5]提出了关系强度的概念。关系强度从量化角度考察社会网络用户间的连接紧密程度。社会关系强度越高,表示用户间的关系越紧密。因此度量和分析用户社会网络关系强度具有重要的理论和实用价值。针对当前在线社交网络中用户关系强度度量问题,陈亮[6]等认为在线社会网络中用户的交互频率从某种程度上反映了社交网络中用户之间的关系强度,并以微博用户为例给出了关系强度的定量化描述。具体步骤如下:
(1) 形式化定义微博用户交互行为
微博应用存在多种用户交互行为,如消息提醒、私信、转发、收藏、评论、关注、点赞等,分为四种不同的属性:直接、间接、公开、私有。
这些用户交互行为可以形式化定义如下:
[WBu1,…,un:P] (3)
其中,WB表示微博应用情景,而P可表示多種用户交互行为,[ u1,…,un]可代表该交互行为涉及到的不同用户。
由此可知,不同用户的不同交互行为可表示为[Piv1,…,vn],[Pjv1,…,vm]等形式。例如,用户[u1]与用户[v1]在某篇微博中存在不同的用户交互行为[P1]与[P2],为计算用户[u1]与用[v1]之间关系强度,可将两者合并为同一描述形式:[WBu1,v1:P1u1?P2v1]。其中[P1]与[P2]是不同的用户交互行为,如[P1u1]代表用户[u1]转发了当前的微博,[P2v1]代表用户[v1]评论了该微博。
(2) 计算关系强度值
关系强度值计算形式化表示如下:
[suv=k=1Nkαk*f(|Su|k(v) |)] (4)
在上式中, Suv表示用户u与用户v之间的关系强度值,其取值范围为(0,1),[k=1Nkαk=1]代表用户情境空间分类及每种情境的权重,不失一般性,这里取四种关系属性权重为[αk] = 0.25。Nk代表了属性分类,在这里代表直接属性、间接属性、公开属性和私有属性。[Su|k(v)]表示属于第k类属性的交互行为的集合。f是用户交互行为正规化函数,形式化表示为:
[fx=ln(xmaxx2x)ln(xmax2x2)] (5)
其中,[x][x]表示自变量的平均值,在微博应用情景中表示用户交互行为集合的平均值,[xmax]表示自变量的最大值,这里表示某类属性交互行为的最大值。从上式中可以看出如果[x>x],f(x)的值接近1,反之[fx]值接近0。
关系强度值接近0表明两者之间为弱关系,接近1表明两者之间为强关系。在线社交网络中用户交互行为形成的关系强度反映了用户对的兴趣相似性和同质性,但并不能反映用户对的现实社会关系。用户在购买理财产品时更多地会考虑到它带来的风险性,所以人们更愿意相信来自信任度高的朋友的推荐。所以在社交网络中向用户推送理财产品不仅要考虑用户的兴趣相似性,还要考虑用户的真实社会关系,真实关系越亲密,推送成功率越高。所以本文工作主要在于挖掘社交网络中用户的真实社会关系,并综合用户的兴趣相似性,来推送理财产品。
3 基于社交网络的理财产品推送方法
3.1 建立原始数据模型
本文使用从新浪微博中采集的6万余名用户信息(用户个人账号信息、用户关系信息、用户交互行为信息与用户位置信息等),并获取到这些用户在2016年3月到2016年6月共三个月的理财产品购买记录,建立原始数据模型如下:
(1) 用户集合,即所有采集的新浪微博用户集合,用U表示。
(2) 理财产品集合,即所有可选择的理财产品集合,用I表示。
(3) 用户交互行为集合,用[WBu1,…,un:P]表示。
(4) 用户时空数据集[7],即从社交网络中收集到的有关用户位置信息的数据集,每条时空数据包括用户ID、用户访问地点的经纬度值、地点ID,用L表示。
(5) 用户社会关系矩阵,即集合U 中的用户间的社会关系,用 F表示用户关系矩阵,存储用户之间的社会关系强度。
(6) 用户产品评分矩阵,即集合U 中用户对集合I中理财产品的评分矩阵,使用R 表示。
3.2 用户社会关系
(1) 直接社会关系
社交网络中用户间的直接社会关系[ sdij],表示有在线交互记录的用户i和用户j的用户相似性以及历史交互行为情况的属性向量,如公式4所示。
(2) 间接社会关系
社交网络中用户间的间接社会关系[ sidij],是指通过从社交网络中收集用户i和用户j的时间位置信息挖掘用户i和用户j潜在的社會关系,如公式6、7、8所示。
本文中我们基于用户位置信息计算用户间的间接社会关系强度。EBM模型是一种时空数据集上计算社会关系强度的基于熵的模型,是用户多样性[7]和加权频率[7]的有效结合。多样性量化度量两个用户的所有共同出现中有效位置的数量,给出了实际位置的平均丰度比例。并通过引入了一个可调节的参数q灵活控制频繁发生的巧合事件对社会关系强度的影响力。加权频率提高了两个用户在不拥挤地点的共同出现对社会关系强度的重要性。
假设用户社会关系强度为[ sij],用户多样性为[Dij],用户加权频率为[Fij],社会关系强度计算公式如下:
[ sij=αDij+βFij+γ ] (6)
[Dij=l,cij,l≠0cij,lfijq11-q] (7)
[Fij=lcij,l×exp u,Pu,l≠0Pu,llogPu,l ] (8)
其中α 、β 、γ 是优化参数,q是多样性阶数,α 、β的经验值[7]为(0.483,0.520),q的经验值为0.1。[ cij,l]是用户i和j在地点l的共同出现次数,[fij=lcij,l]是用户i和j在所有地点共同出现的总数。[Pu,l]是用户u在地点l出现的概率。
基于用户位置信息形成的社会关系强度,因为考虑了用户的实时和历史位置信息,更能反映用户对在现实中的社会关系。
(3) 综合社会关系
在线社交网络中用户交互行为形成的关系强度反映了用户对的兴趣相似性和同质性,并不能反映用户对的现实社会关系。同时基于用户位置信息形成的社会关系强度,因为考虑了用户的实时和历史位置信息,更能反映用户对在现实中的社会关系。综合考虑两种社会关系强度,最终形成了既能反映用户兴趣相似性又能反映用户真实信任关系的社会关系强度。给出了计算方法如下:
[ sij=γ sdij+(1-γ) sidij] (9)
其中[γ∈[0,1]],当[γ=0]时,用户社会关系即用户的间接社会关系,当[γ=1]时,用户社会关系即用户的直接社会关系,通过调节[γ]可以控制两种社会关系的权重比例。
基于理财产品市场现状,多数用户更愿意相信来自朋友而非理财平台的推荐信息,且交往密切的用户信任度越高。用户社会关系强度越高,他们交往越密切,那么他们的信任值越高。所以用户社会关系强度在某种程度上表示用户之间信任度。
3.3 基于用户社会关系的理财产品推荐方法
推荐方法的基本思想是:用户交互行为信息上计算用户对的直接社会关系,形成直接社*会关系矩阵;时空数据集上计算用户对的间接社会关系,形成间接社会关系矩阵;线性组合直接社会关系矩阵和间接社会关系矩阵,得到既能反映用户对兴趣相似性也能反映用户现实社会关系的综合社会关系,并根据关系紧密程度找到可信任用户集;基于可信任用户的理财产品评分信息,利用传统的基于用户的协同过滤算法做出理财产品推荐。
算法:基于用户社会关系推送理财产品
输入:用户交互行为集[WBu1,…,un:P],用户时空数据集L,用户产品评分矩阵R,目标用户[u]
输出:向目标用户[u]推送的理财产品集
第一步:用户交互行为集合[WBu1,…,un:P]上根据公式3、4计算用户对的直接社会关系强度[ tij],得到直接社会关系矩阵T;
第二步:时空数据集L上根据公式5、6、7计算用户对的间接社会关系强度[ sij],得到间接社会关系矩阵S;
第三步:T和S线性组合得到用户对社会关系矩阵F。
第四步:基于用户社会关系矩阵F,利用TOP-N方法或阈值法,得到目标用户的K个最近邻。
第五步:平均加权策略进行评分预测,得到推送产品列表。
4 实验
本文提出一种基于社交网络推送理财产品的方法。根据用户的在线交互行为和时空数据集,深入挖掘潜在的用户社会关系,然后将其应用于协同过滤算法,帮助用户发现其可信任的近邻用户,并进行用户偏好理财产品预测。
4.1 实验环境
实验运行的硬件环境为Intel(R) Core? i7-4790 CPU @3.60GHz,内存8GB,操作系统为Windows7。开发环境为Eclipse。
4.2 评价方法
(1)准确率
准确率表示推荐给用户的列表中他喜欢的理财产品的概率,定义为推荐列表中用户喜欢的理财产品个数与推荐列表长度的比值,对于用户u,推荐准确率的计算方式如下:
[P=NtpL]
其中[Ntp]表示推荐列表中的理财产品与测试集中该用户所选过的理财产品重合的个数,L表示系统为用户推荐的理财产品个数(即推荐列表长度)。
P的值越高,,说明算法的推荐效果越好,而系统平均的推荐准确 率,既是测试集中所有用户准确率的平均值。
(2)召回率
我们将推荐列表中用户喜欢的理财产品个数与系统中用户喜欢的所有理财产品个数的比率定义为召回率,用于表示一个用户喜欢的理财产品被推荐的概率。对于用户u,推荐召回率定义如下:
[R=NtpIu]
其中,[Ntp]表示推荐列表中的理财产品与测试集中用户u选过的理财产品重合的个数,[Iu]表示测试集中用户u选过的所有理财产品的个数。
R的值越高,说明算法的推荐效果越好,而系统平均的推荐召回率,既是测试集中所有用户召回率的平均值。
4.3 结果比较
为了验证用户间的社会关系强度对推荐结果的影响,在实验中我们比较了基于用户的协同过濾算法(user-based CF)、基于产品的协同过滤算法(item-based CF)和本文提出的基于用户社会关系的推荐算法(hybrid)的推荐效果。
对于上述三种算法,我们取推荐列表长度(即系统推荐给目标用户的理财产品个数为1-6,并计算算法在准确率、召回率两个指标上的表现。
从图1和2中可以看出,在准确率和召回率两个指标上,均是基于用户社会关系的推荐算法的效果最佳,其次是基于产品的协同过滤算法(item-based CF),再次是基于用户的协同过滤算法(user-based CF),三种推荐算法的准确率和召回率的差异不太大。
从图3和图4中的结果可以看出,本文提出的基于用户社会关系的推荐算法,当[γ=0.3]时推荐效果最佳,表示更能体现用户真实社会关系的间接社会关系对理财产品推荐效果的影响较大。
5 结论
本文结合用户社会关系研究方法提出一种基于用户社会关系强度进行理财产品推荐的方法。该方法在推荐过程中考虑了用户的在线交互行为信息、用户的位置信息、用户间的社会关系强度以及评分矩阵信息,并根据用户关系紧密程度找到可信用户;利用可信用户计算目标用户对理财产品的偏好。从实验结果可以看出基于用户社会关系推送理财产品有比较好的推送效果。另外,本文中的社会关系计算方法只考虑了用户访问某一地点的时间以及地点的拥挤程度,而忽略了用户在某一地点的停留时间,这对用户间的社会关系也是至关重要的。在未来的工作中,我们打算研究如何将用户停留时间加入到社
会关系计算方法中,以便进一步改善推荐的效果。
参考文献:
[1] 徐弦,程姣姣,符之瑜,等.不同年龄阶层群体对互联网理财产品的信任度研究[J].经贸实践,2015(16).
[2] Breese J S, Heckerman D, Kadie C. Empirical Analysis of Predictive Algorithm for Collaborative Filtering[J]. 2015.
[3] GONG Songjie, YE Hongwei. Joining user clustering and item based collaborative filtering in personalized recommendation services[C]//Industrial and Information Systems, 2009. IIS'09. International Conference on. IEEE, 2009: 149-151.
[4] 马宏伟,张光卫,李鹏.协同过滤推荐算法综述[J].小型微型计算机系统, 2009 ,30 (7): 1282-1288.
[5] Granovetter M. The strength of weak ties[J]. American journal of sociology, 1973: 1360-1380
[6] 陈亮,朱培栋,陈侃.基于在线交互行为的社会关系强度计算方法[EB/OL].北京:中国科技论文在线 [2016-06-12].http://www.paper.edu.cn/releasepaper/content/201606-577.
[7] Pham H, Shahabi C,Liu Y, Ebm- an entropy-based model to infer social strength from spatiotemporal data, Proceedings of the 2013 international conference on Management of data. ACM, 2013: 265-276.
[8] 张佩云, 黄波, 谢荣见,等. 一种基于社会网络信任关系的服务推荐方法[J].小型微型计算机系统, 2014, 35(2):222-227.
[9] 王玉祥, 乔秀全, 李晓峰,等. 上下文感知的移动社交网络服务选择机制研究[J].计算机学报,2010, 33(11):2126-2135.