利用机器学习方法分析并预测银行理财产品的销售状况_殷高峰
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4
利用机器学习方法分析并预测银行理财产品的销售状况
default balance housing loan contact month day 银 行 duration 推 销 number 部分 pdays previous
poutcome
观测变量 y
字符型变量 数值型变量 字符型变量 字符型变量 字符型变量 数值型变量 数值型变量 数值型变量 数值型变量 数值型变量 数值型变量
(二)指标选取的理由
本文数据选取指标的标准就是观察所选取的影响变量是否能够较为准确且 全面地反映客户的基本信息和银行对每一位客户的营销状况。年龄、教育、婚姻 状况可以反映不同客户的生活状态,由此可以反映处于不同生活阶段的客户对特 定理财产品需求方面的差异。客户的工作状况、个人余额、信贷状况反映了客户 的经济状况,对理财产品的需求同样会造成很大的影响。而银行的营销手段、营 销的时机选择、推销时间的长短、历史营销状况都从不同方面反映了银行的营销
1)以 Probit 回归、Logistic 回归等为代表的广义线性回归模型都假设因变量 服从特定的分布,实际的分布情况可能与广义线性回归各形式所代表的分布函数 存在偏差。
3
利用机器学习方法分析并预测银行理财产品的销售状况
2)当变量个数较多的时候,往往存在多个变量不显著的情况,若剔除这些 变量又可能导致遗漏重要解释变量的偏误。
数值型变量
字符型变量
是否有信贷违约:yes(是),no(否) 在本行年均余额(负数表示负债),单位:万元(人民币) 是否有房贷:yes(是),no(否) 是否有其他贷款:yes(是),no(否) 向客户推销产品的方式:phone(电话),interview(面谈) 最后一次向顾客推销产品的月份数 最后一次向顾客推销产品的日期数 最后一次推销所花费时间(单位:秒) 该理财产品营销期间向顾客推销产品的总次数 最后一次向顾客推销产品距营销期结束时间的间隔天数 该营销期间之前银行对顾客的其他理财产品推销次数 该营销期间之前的其他理财产品的营销情况:1-前一次销售 失败,2-首次推销,3-前一次推销成功 客户最终是否选择购买该理财产品:yes(是),no(否)
其中部分变量在原始数据的基础上进行了调整,具体如下: 1) 删掉了一些与观测变量明显无关以及可能泄露个人信息的变量:比如: 身份证号、序号、个人手机或座机号码等。 2)为了防止过多的虚拟变量影响统计分析的效果,对部分可以排序的字符 型变量做了数值型变量的转换,例如 education、poutcome。 3)为了防止个别变量分类过多从而影响后续的分析,把部分分类变量的一 些分类进行了合并,如把 education 中大学本科、硕士、博士合并成了一类;把 job 中众多不同行业的工作统一划分成了 employee(雇员);把 contact 中“座机” 和“手机”类别合并成 phone(电话)类别 4)为了防止某些数值变量的值显著大于其他的,将这一部分变量进行了处 理。如:balance 的原始单位是人民币元,数值较大,所以将单位转化成“万元” 从而缩小绝对数量值。不采取对数标准化处理是因为 balance 的值可能不为正。
鉴于以上传统广义线性回归建模存在的问题,在大量数据的分析和预测方面, 可以考虑运用数据挖掘的机器学习方法。目前的机器学习方法大体可以分为回归、 分类、聚类、关联分析等几个方面,本文将采用几种数据挖掘的分类方法对数据 进行分析和预测。常用的分类器可分为单分类器和集成分类器,常见的单分类器 有 ID3、CART、C4.5、C5.0 等,其特点是每次分类只依据单棵决策树,单分类 器的缺点是:在每次随机选取不同的训练集和测试集进行分类时,得到的决策树 和分类结果很不稳定。因此在单分类器的基础上又发展了一些复合分类器,如 Bagging、Boosting、Adaboost、随机森林(random forest)等。集成分类器往往 基于多个基分类器的投票来决定最终的分类结果,从而使分类预测结果比单分类 器更为稳定(不见得就更为准确)。此外,支持向量机(SVM)尽管也属于单分 类器的范畴,但 SVM 并没有单分类器结果不稳定的劣势。相反, SVM 经常能 够弥补集成分类器在算法上的一些不足。综合以上分析,本文采取传统的广义线 性回归方法、集成分类算法和 SVM 算法作为分析和预测银行销售理财产品状况 的主要方法。
二、数据的描述与处理
(一)数据概览
本文数据是通过网络渠道购买获得,数据集为某商业银行在 2011-2012 年某 理财产品的销售周期中的一些目标客户的基本信息、银行向客户推销的行为信息 以及该理财产品销售情况的信息集合。该数据集涵盖了客户的一些基本个人信息 和银行推销行为方面的信息,共有 4496 个观测值,17 个变量,包括 16 个影响 变量和 1 个观测变量,不存在缺失值,具体情况如下表:
三、模型的建立与分析
得到了处理的数据后,可以基于该数据对银行理财产品销售状况的预测及其 影响因素进行建模。本文力图通过算法的分析、比较与优化寻求最优的预测方法 与途径,从而使机器学习理论更好地应用于实践。
(一)建模思路与方法
本文选用 Logistic 回归和数据挖掘分类预测的一些算法进行建模。集成学习 方法中比较有代表性的是 Bagging、Boosting 和 Adaboost 算法,而其中 Adaboost 算法是基于前两种集成学习算法的改进,故本文采用 Adaboost 作为其中的一种 参考算法。此外,本文还选取了随机森林模型,近年来兴起并发展的随机森林算 法凭借其优良的分类效果已经成为很多数据挖掘案例的主流算法。但是随机森林 算法容易出现过拟合等问题,且集成分类器普遍存在运算量过大的麻烦。鉴于此, 本文也采取了能够较好地克服“维数灾难”和过拟合问题的支持向量机算法,上 述算法均用统计软件 R(3.1.0)来实现。
(二)Logistic 回归
1. 模型介绍 Logistic 回归模型属于广义线性回归,是一种概率模型。如果解释变量是某
表 1 数据集中各变量的描述
变量名
变量类型 变量的含义
age
数值型变量 年龄
影
education 数值型变量
客户
响
信 息 job
字符型变量
变
部分
量
marriage 字符型变量
教育水平:1-小学,2-初中,3-高中,4-大学 工作:student(学生)、boss(创业者)、employee(雇员)、 retired(退休)、unemployed(失业) 婚姻状况:married(已婚)、single(未婚)、others(丧偶或 离婚等)
一项银行理财产品销售情况可以用选择购买该理财产品的客户数进行度量。 因此,对银行理财产品销售情况的分析和预测实质上就是分析并预测特定的目标 客户群体中的每一个客户会不会选择购买理财产品。将上述变量作为影响变量, 可以用于检验模型的预测效果。
(二)分析方法的选取
上述问题的影响变量为虚拟变量,可以利用传统的广义线性回归方程进行建 模,其中的解释变量可以用于分析和预测被解释变量发生的概率。但广义线性回 归方程存在以下弊端:
尽管理论上几种方法各有利弊,但是具体的分析预测效果如何还要通过实际 数据的检验。此外,对于每种算法,本文都力图考虑优化建模的问题,比如对一 些显著影响预测误差率的重要参数进行优化,从而使模型的分析和预测效果最大 化。若存在一些难以克服的缺陷,本文会作为算法改进的建议在结论中阐释出来。
6
利用机器学习方法分析并预测银行理财产品的销售状况
利用机器学习方法分析并预测银行理财产品的销售状况
全国大学生统计建模大赛参赛论文
利用机器学习方法分析并预测银行理财产 品的销售状况①
培养单位:统计学院 专业名称:统计学 作 者:殷高峰、林航、程梦 指导教师:刘立新 论文日期:二〇一五年六月
①注:该论文获得由中国统计教育学会举办的“2015 年(第四届)全国大学生统计建模大赛”大数据统计建 模类研究生组三等奖。
2
Hale Waihona Puke Baidu
利用机器学习方法分析并预测银行理财产品的销售状况
一、问题的背景与描述
(一)问题的背景
银行理财产品,即商业银行在对某些客户进行分析和了解的基础上,对这些 特定的客户开发并专门设计的投资和管理计划。当客户决定选择银行的理财产品 时,银行即得到来自客户的管理资金的权限,理财产品的收益与风险由客户承担 或客户和银行按照双方签订的协议一同承担。近年来在国务院大力发展实体经济 的政策导向下,银行理财产品市场发展异常迅速。银行理财产品对商业银行的长 期发展是有战略意义的:首先,随着利率市场化和金融创新的大环境下,理财业 务已经成为银行业发展的重心。其次,银行理财业务有利于银行的收入结构改革 和盈利模式转型。因此银行理财产品对银行业的发展愈发重要。
此外,原始数据比较杂乱。由于原始数据的信息并非单纯作为统计分析之用 而是为了作为一项客户记录保留下来,所以很多分类变量的具体分类在统计分析 方面并不是十分合理。比如原始数据集中的“工作”变量原来被分成很多具体的 职业,但过多的职业分类在统计分析中往往会使分析的结果更复杂,甚至干扰分 析的结果。因此对于某些变量过于繁杂的分类,本文为了便于统计分析进行了适 当的合并。其他方面的处理还包括量纲的变动和变量形式的变化。
1
利用机器学习方法分析并预测银行理财产品的销售状况
利用机器学习方法分析并预测银行理财产品的销售状况
摘要
在大数据时代,以数据挖掘为代表的机器学习方法已经成为统计分析中最热 门的技术。数据挖掘近年来发展迅猛,一方面,互联网技术的发展和统计软件的 不断更新使得大量功能强大的算法被开发出来;另一方面,数据挖掘算法的发展 反过来也促进了数据挖掘工具软件的不断发展。数据挖掘在金融实证、生物制药、 基因工程、电子商务等很多领域都有用武之地。在既有数据的基础上利用数据挖 掘进行预测分析,是数据挖掘的一个重要的实际应用。本文利用数据挖掘技术, 基于客户的基本资料和银行推销行为相关的数据对银行向客户推销理财产品的 效果进行分析和预测。所用原始数据是通过网络渠道购买自某商业银行目标用户 理财产品推销信息系统中的数据,包括该商业银行的某理财产品在 2011-2012 年 的销售周期内涉及的 4496 个客户的信息集合。本文首先利用传统的二分类 Logistic 回归来建立银行理财产品销售情况模型并分析其预测效果,然后运用比 较热门的三种数据挖掘分类器:Adaboost、随机森林和支持向量机(SVM)对数 据进行进一步的预测,最后通过比较、分析不同分类器的预测结果,并结合不同 分类器的优缺点对各种分类预测效果进行分析和总结,试图分析预测结果优劣的 原因并提出相关的改进措施。 关键词:数据挖掘 Logistic 回归 Adaboost 随机森林 支持向量机
5
利用机器学习方法分析并预测银行理财产品的销售状况
策略和营销能力,可以考虑选取。
(三)数据质量的说明
该数据集是通过网络渠道向相关人员购买的历史数据,时效性并不是很强 (2011-2012 年),而且涉及的目标客户数为 4000 余人,也并非涵盖了全部的客 户。这主要是因为银行客户的资料涉及个人隐私问题,且近年来新闻媒体对银行 以及信用卡客户个人资料泄密相关问题有很多报道,导致银行客户资料的信息很 难获取。不过从数据整体来看,数据集所涉及的变量基本上涵盖了客户和银行关 于一种特定的理财产品的相关信息。
但一款新型的理财产品不一定总能受到大部分客户的青睐,因为不同客户的 背景、条件不同,其偏好和风险厌恶程度“众口难调”。银行在理财产品的前期 市场调查、中期的设计和后期的推广,都需要大量的人力、物力、体力和脑力, 反映在财务账目上都是一笔笔不可忽视的成本。如果银行推出的理财产品最终没 能引起很多客户的关注,将对银行的盈利水平造成较大的负面影响。而且,理财 产品推行的失败还会打击银行后续推出创新性金融理财产品的信心和热情,这不 利于银行的金融结构体系改革和长远的发展。因此,根据既有的历史信息对银行 理财产品的推广情况进行合理的分析和比较准确的预测,并从中找到影响银行理 财产品的重要因素,对改善银行理财产品的发展状况有重要意义。