版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、引言(一)研究背景随着近几年的全球金融业数字化、信息化普及大浪潮,银行业正面临着巨大的机遇与挑战。客户个性化及多维度金融服务需求不断增长助力个人金融业务发展[1],传统银行业正面临来自金融科技公司的极大挑战。在此场景下,人工智能与机器学习技术被认为正成为推动创新的最重要力量,不仅有望大幅提升银行经营效率,更可提升客户服务及市场准入的精准度。随着大数据技术的完善,数据科学作为银行业务的基础,在银行业务中占据着十分重要的地位,通过对客户的行为和交易数据进行分析为银行业的客户提供对客户喜好和行为模式的深刻洞察。人工智能及机器学习提供的高度准确的数据挖掘技术不仅能帮助银行业了解客户,进而向客户提供定制化的银行产品和服务,也能通过挖掘与分析大数据的容量推动产品和服务的不断升级以适应市场变化并将其开拓。不巧的是,壮大的移动端Internet和数字支付改变了支付系统,迫使传统银行要进行新技术的引入才能保住竞争优势。传统银行在产品、市场渠道及服务个性化方面须及时顺应客户不断进化的预期及需要。复杂日益增加的业务在技术设施的能力达到极限并迫使银行寻找先进机器学习实践以确保数据驱动决策。研究表明,银行业运用大数据技术的不断实践除了可以清晰地描画出顾客画像,增强了业务决策的时间和效率外,建立适当的机器学习模型更是能够预测金融产品的需要和随时间变化而变动的战略以应付市场的变化性和风险。这种变化是一种全面性的和必要的进步,特别是金融业不断加大的市场竞争压力,使得银行业在竞争市场中保持身份就需要不断的创新[2]。从总体看,银行具有高科研创新能力、基于数据分析的组织体制等对银行业个体重点市场的有利,还具有扩大至整个经济系统的经济利益作用。这主要是通过增强金融服务的可获取性和可信赖性而发生的传递作用。因而,不断寻找和学习使用数据科学方法以优化银行业务流程和管理对全球银行市场而言均是一个挑战和一个以创新驱动发展的机遇空间。(二)研究现状数据技术的应用进一步加深了银行业使用机器学习改善银行的服务和服务产品这一趋势。过去几年的研究不断发现,各金融机构都在力图将机器学习算法应用于其重要的核心业务流程中,其应用目的主要是为了能够满足各个不同类型的顾客群需求及处理纷繁复杂的市场变化问题。机器学习在银行不仅仅被应用于客户分层和产品营销,还被广泛的运用于客户流失预测、信贷风险管理等业务中。刘维奇发现可以应用机器学习发掘待入驻的商户、改善现有商户关系和扩大交易量,从而保障银行在市场竞争中获得更多的市场份额[3]。上述机器学习化能够对复杂的零贷业务和全方位的综合业务带来深邃的影响,为综合化、全客化的商业提供新的纬度和空间。对于客户的经营,薛荣荣的研究发现,基于机器学习的客户流失预测能极大提高银行CRM的运营效率[4]。对能够流失的客户识别并辅助银行的挽留计划,对于时序数据进行统计建模,找出能够操作的客户分群定义并高度拟合客户CRM计划以延长生命周期的时序数据的模型有重要的作用。贺一珉特别提到,利用大数据和机器学习技术驱动创新的信贷和金融产品,能够实现更加目标化的客户营销,从而更加避免信贷风险,更高效地为客户提供优质服务,从而提高响应速度[5]。这种创新浪潮正在带领着银行去拥抱一场伟大的数字技术革命,加快迭代升级金融产品组合。金朝亮认为,银行的机器学习模型能够完成客户信用评估。利用融合后的模型通过处理大数据的特征,筛选出重要的预测变量,从而改善信用分评分的准确度和时效性[6]。这种智能数据模型给银行提高了新的效率,又给市场性质和风险控制提供了极快的整合性。当下银行可通过采用合适的算法及优化自身经营重心及市场方面进行合适机器算法模型的使用和优化,如支持向量机、随机森林、决策树等以匹配银行业这一多分类任务的实际需求。对金融领域具有广泛的运用价值,这也构成了下文研究背景,有助于金融产品创新和运用,这对模型更新和迭代优化都非常有利。模型的更新和迭代能帮助银行更好地实现对市场的响应和控制金融风险。这些新技术给银行带来业务流程效率的提升,同时也拓展了客户关系,加快实现银行的智慧化发展。(三)研究目的和意义机器学习对于银行越来越显得尤为重要,它对数据的处理能力和预测能力可以使银行以不同于以往的方式理解和管理其复杂业务。当前银行业务中的数据是海量、高速的,在运用传统的方法对这些海量高速数据进行分析处理时也遇到一定的瓶颈,而机器学习不仅可以通过自动化执行常规事务,而且对支持银行决策、改善客户体验、控制风险产生着重要的作用。所以,深入探索、采用机器学习方法,为银行带来显著优势和有效的对策具有十分重要的意义。本文希望重点关注银行业中一个多分类的解决方案,通过区分银行客户细分群体,为他们提供精确且个性化的产品和服务。现有分类方法对高维信息以及不规范客户模式的计算效率低且不够灵活,并且无法适应客户的快速变化。借助新的ML算法,本文旨在获得对客户分类以及产品推荐更好的准确性和灵活性,从而帮助银行在动态的金融市场上打造及维护客户。本文采用以SVM、KNN、决策树及RF等传统机器学习为代表的技术,SVM适用于多维数据,决策树易见性高、高效,RF综合利用非确定性信息,增强模型鲁棒性以及精度,KNN应用于客户相似度判定中的高效性能,本文利用多种技术组合优势,验证在金融多分的精确度和有效性。本文研究有助于指导银行业构建一个以数据为导向的创新路径来提升自身市场开发能力和客户管理能力。从采用最优化的处理多分类问题等方法获得的结果来说,不仅可以对银行产品的推荐服务提供一个较高精度的客户体验,同时也可以有助于指导商业银行在服务质量个性化和资源最优这两个约束之下更好地应对接踵而至的市场动态,银行业从业人员和学者通过研究和实施有效的机器学习应用模式,可以获得有价值的信息和可操作的实证结果。这对于银行业研究人员和决策者来说是一种深层次的创新研究。二、研究方法介绍本节给出应用于本篇多分类问题的几类主要机器学习算法,并阐述其在本文中的应用,一个合理的算法选择和模型应用,可以作为接下来的实验分析和结果分析的理论支撑。本文主要分为四小节:支持向量机、k近邻算法、决策树和随机森林。在SVM中,首先介绍监督学习方法中的支持向量机及其在高维空间中的作用,然后分析SVM通过最大化类间间隔而进行分类的优越性,介绍核技巧的非线性问题中。在kNN部分,着重介绍kNN方法的基本思想,以及其优点,尤其体现在对于多分类问题的直观性和适用性;在决策树部分,介绍经典的分类方法,方法通过树形进行分类,其对具有复杂非线性特征的问题的优越性。在随机森林部分,通过组合多棵决策树从而提高其在分类精度和鲁棒性的优越性以及随机森林分类方法在多分类问题上的效果进行了介绍。(一)支持向量机本小节主要介绍支持向量机(SupportVectorMachine,SVM)方法。支持向量机是一种有效的监督学习方法并广泛应用于线性和非线性分类问题等领域。支持向量机理论基础源于统计学习理论,最早由Cortes和Vapnik在90年代提出,后因其出色的性能和泛化能力迅速在其他领域应用开来[7]。支持向量机的基本原理是在多维空间中找到一个超平面,使得样本类别可以通过这一超平面被最好地划分开来,这一最佳的标准是通过最大化类别之间的间隔(margin)实现的。通过定义这样的超平面,支持向量机能够在将训练中的错误最小化的同时优化模型对未见数据的预测能力[8]。支持向量机对于多分类问题普遍采用一对一和一对多策略,通过这种方法可将非线性问题转换成若干线性可分问题进行求解,即将复杂问题线性化并逐个求解。支持向量机通过建立多个分类器来实现不同类别的区分:一对一策略,支持向量机构建多个分类器,每个分类器分别解决每对类别之间的问题,建立了N(N-1)/2个SVM分类问题。支持向量机的优点是具有扩展性和核函数对于非线性数据较好的处理能力。其支持向量机的核心是核技巧(kerneltrick)能够让输入数据投射到一个高维特征空间,在该新的特征空间中线性分类器在可视化方面进行非线性分类问题的求解,常见的核函数有多项式核函数、径向基函数核(RBF)核函数和Sigmoid核函数,其中应用最为广泛的是RBF核函数,其表达式如式(2-1),其中,Kx,x'=exp-γx-x'2(2-1)在本文中,对于多分类问题支持向量机建模的路径由上而下分解为多个二分类问题,每个二分类问题被求解为一个单独的支持向量机。这种解决方式允许支持向量机在不同的“内核运算”条件下更为灵活地应用,以求得分类的优化结果。通过调优参数例如正则化参数支持向量机往往应用于数据分析的维度较多,且分类标签较多,且分类标签差别较模糊的问题数据集上。支持向量机是用于处理高维数据集算法的一种,对于分类特征空间较难识别的问题也有很好的解决方式,让这一可塑性强的算法在金融领域复杂的数据集问题上得到很好的工具支撑,如客户分类、贷款决策问题和复杂数据集驱动的决策问题。(二)K近邻算法本小节主要介绍K近邻算法(K-NearestNeighbors,KNN)的基本理论。KNN是一种非参数分类方法,广泛应用于多分类问题等各种机器学习实践中。该方法的基本原则简单直接:判断一个数据点的类别,通过在数据空间中找出距离该点最近的K个邻居点,然后通过多数投票来确定其分类[10]。KNN因为这种直观性成为处理各种复杂分类任务的常用工具。在多分类问题中,KNN通过计算待分类点与所有训练样本的距离来选择最近的K个样本,这些样本构成了测试点的邻域,待分类数据点的类标的确定取决于这些邻域点的多数类。邻域点之间距离的度量方式通常是欧氏距离或者曼哈顿距离。对于任意两个点dx,y=i=1nxi-yi2(2-2)曼哈顿距离的计算方法如公式(2-3)所示。dx,y=i=1nxi-yi(2-3)由于KNN算法的执行过程中不会产生明确的训练模型,因此它在理论上属于一种“欠速学习”或惰性算法。KNN的全部计算成本都体现在分类步骤上,这也是其在广泛应用与大规模数据中面临的一个挑战,即对于大规模数据集而言,它的计算效率较低。针对多分类应用,适当选择K值至关重要。合适的K值对分类准确度影响显著,过小的K使算法容易受到噪音的干扰,而过大的K则可能将不同类的点纳入考虑范围,导致分类边界模糊不清[11]。根据Zhang等的研究,对于不同的测试数据可能需要不同的K值,以适应不同的局部数据分布和特征组合。为了提高KNN的性能以及自动找到合适的K值,文献[12]提出了一种基于相关矩阵的方法的cn-KNN,它主要通过利用训练数据的先验信息来自动确定每一个测试点的最优K值,从而提高了分类的准确性和适应性。KNN既在多类目标应用中起到了十分重要的作用,也应用于不需要复杂模型却能自然分布计算的任务中。而诸如文本分类、图像识别、医疗诊断等许多多分类类的目标均能适用于KNN的应用,广泛的应用也体现了KNN强大的稳健性以及灵活性。虽然KNN对于大数据的处理有所乏力,但对于KNN的方法改进以及与其他新兴计算方法的结合,也不断被提出,KNN仍能在许多应用场景发挥出关键作用。随着数据集规模的逐步增大,如何更好地处理噪声以及完善计算速度,将会是KNN未来发展最重要的研究方向。(三)决策树本文第3.2小节主要讲述决策树的基础理论。决策树是一种分类及回归问题的决策推理模型,决策树是数据决策路径的树状结构,直观的统计性质及良好的解释说明能力,使决策树成为20世纪各领域均有所应用的数据挖掘模型[13]。在解决多分类问题时,决策树的关键任务是识别输入特征中具有最高信息增益的特征以进行节点分裂。信息增益是决策树算法选择最佳切分特征的核心概念,它主要靠计算整个数据集不同特征的熵得到的,其具体计算方式如公式(2-4)所示[14]。InformationGain=HD-i=1mDiD×HDi(2-4)其中HD=-i=1cpilog2pi(2-5)另一种用于度量数据纯度的方法是基尼指数,它在CART算法中被广泛应用。基尼指数的基尼指数计算方法如公式(2-6)所示。结论证明基尼系数越小,说明节点的纯度越高[14]。GiniT=1-i=1cpi2(2-6)一般的多分类决策树通常有如下两步:一是选择特征,通过比较各种特征的信息增益值选出信息增益最大特征作为分裂条件;二是节点分裂,根据选定的特征对数据进行分支,在此基础上递归进行节点分裂直至终止条件。剪枝用于防止决策树过于复杂化和模型与训练数据的过度匹配。有预剪枝和后剪枝两种剪枝方法,预剪枝在生成中使用性能度量提前结束,后剪枝在树完全生成后再调节树的复杂度。由于具有普适性强和易于解释的优点,决策树很容易显示出分类过程的信息组织结构,因而得到在金融投资、疾病检测等复杂应用领域中的广泛应用。伴随着集成学习的诞生,如随机森林的应用,增强了决策树的预测能力和鲁棒性。(四)随机森林本小节主要介绍决策树的集成算法——随机森林(RandomForests)的基本理论。随机森林是一种集成学习方法,它通过组合多个决策树来进行分类或者回归。它最早由Breiman提出,最开始作为对提升法(Boosting)的一种竞争替代,也是泛型树集成方法的一部分[15]。对于多分类和回归任务,随机森林均能够处理,但是其适应性和鲁棒性使得其在处理多分类问题时尤为有效。该方法在医学、金融、生物信息学等领域被广泛应用[16]。随机森林算法主要包含一下几个步骤:首先我们使用自助法(Bootstrap)从原始数据集随机抽样并创建多个样本集,其中的每个样本用于训练一个决策树;每棵决策树在生成过程中会随机选择部分特征用于决策分裂,这样的处理可以保证每个决策树的多样性;最后我们对每个树的输出结果进行投票(分类)或平均(回归)即可得到整个森林的预测结果。在多分类任务背景下,随机森林的预测是通过每棵树的输出进行投票。假设有k棵树,关于某个输入的最终输出Hx=argmaxYi=1kIhix=Y(2-7)我们在文献调查中发现,随机森林的吸引力不仅在于其精度高或者计算效率高,还在于多个树生成过程中的理想估计特性和特征重要性的内置评估能力[15]。由于算法步骤内置的泛化误差评估机制,因此在通常情况下我们不需要使用交叉验证来评估模型效果:在构建每棵树时,有约三分之一的数据并未被选择(也称为“袋外数据”),袋外数据用于测量模型的泛化误差。随机森林还额外提供特征重要性的评估,通过评估每个特征对整体模型预测精度影响进行排序。具体而言,随机森林通过随机打乱某特征的值并观察预测准确度的变化来计算变量的重要性,它对许多高维数据问题提供了极大帮助,这种方法也被称为变量重要性评估。而对于一般的调优参数,随机森林相对而言不是特别敏感,默认参数已能在多数情况下提供良好的表现。对于重要的参数如m(每个节点随机选择的预测变量个数),可以根据袋外误差率进行调整,根据经验主义通常将m初始化为特征总数的平方根。随机森林无论在多分类问题的复杂程度和准确率、容错性方面,以及特征选择、方便数据展示的优点,都已经让其成为研究应用中常选的经典算法之一,通过针对随机森林算法的发展如随机量化回归森林和随机森林生存分析等算法,随机森林应用仍在不断走向进步和广阔的前景。三、数据分析与编码本章节主要介绍我们对数据集进行的全面分析与对相关特征进行的编码处理,数据分析与合适的的编码方式可以为后续的模型训练和预测提供坚实的基础。本章主要分为变量介绍、变量分析、数据编码和相关性分析一共四个小节。在变量说明部分,我们将介绍特征变量和标签分类,并作简单分析,了解数据的基本分布以及初步特征,这为后续变量分析和编码策略奠定了基础;在数据分析部分,我们将进一步研究每个变量本身的特征分布,包括变量偏态、峰度及其他变量的一些基本统计属性,为后续如何选择合适的编码方式进行变量处理提供依据。在数据编码部分,我们对数据的每个特征根据其不同的特征属性,选择合适的编码方式,将特征处理后提供给机器学习算法进行分析使用。相关性分析部分,也是建立在我们编码后的数据之上,在这里我们运用相关性算法评估每个变量之间的相关关系,挖掘变量之间的潜在联系,为后续特征选择和模型优化提供信息。(一)变量介绍本文所使用数据集中含有多个特征变量,这些变量由客户的个人信息变量、账户信息变量以及活动信息变量等构成,对于分析、预测客户行为、实现银行的客户个性化金融产品与金融服务十分重要。表1给出了部分与本文研究相关的变量字段值的分布,下面对数据集中每个变量进行一一描述如下所示。1.Date:记录的时间的数据类型为日期类型,表示这一条记录在何时被生成,该字段虽本身不会参与分类任务,但在识别季节性或其它时间相关趋势时会与其它时间相关特征联合使用。2.客户开户日:客户的开户时间为日期字段,可用来统计客户与银行的关系维持时长,一般而言,开户时间较长的客户会更加偏向于使用该银行,并将视为活跃的长期客户进行预测。3.年龄:年龄作为客户行为预测因素的影响。年龄通常对客户的特征行为有着重要影响,比如年纪更大的客户可能更愿意传统的金融产品,年轻的客户可能对新型金融产品或者服务更感兴趣。4.性别:虽然性别本身可能对客户行为的影响较小,但它仍可能在某些产品或服务的推荐中起到一定的区分作用。5.客户资历:客户资历描述的与客户的合作年限,以月为单位。资历越高的客户,该银行的忠诚度也越高,此类客户一般均会成为银行的长期用户;对于资历越短的客户,越有可能对该银行的产品不太了解,需要进行激活、跟进等。6.新户指数:新户指数代表用户是新注册的客户,0代表非新客,1代表新客。新客户则需要更多的关怀和产品推介,而老客户已对银行的产品有一定认知,并多倾向于定期服务或产品升级。7.客户关系类别:客户关系类别表示客户与银行的关系状态,可分为活跃客户、非活跃客户和前客户。活跃客户具有最大价值,银行会优先为他们提供定制化服务。相对活跃客户而言,非活跃客户属于激活客户,前客户是召回和维系对象。8.外籍指数:外籍指数表示是否为境外客户,境内、境外客户在金融需求及行为特征上有一定差异,因此可以对该特性进行分类分析,针对境外客户还可以提供个性化的服务。9.客户注册渠道:客户在注册客户号时所使用的渠道,渠道种类的不同有可能体现客户的不同特点,例如通过一些特定渠道进行注册的客户可能更加倾向于申请或者购买某一特定的金融产品,因而这个特征有助于区别不同渠道下的客群行为特征。省份代码:省份代码反映客户所在省份,省份存在差异时,客户经济条件及金融需求存在差异,从而影响客户行为,省份信息可以辅助银行识别地区客户特点,并据此进行地区性金融产品推荐。客户薪资:收入收入水准多少影响着客户的购买力以及信贷的金融需要,高收入者客户更容易投资购买较为高端的金融产品,低收入者客户更容易选择信贷贷款产品或者储蓄金融产品。12.近期活动指数:客户的活跃度指数能够表明客户是否参与了近期的活动。活跃客户通常具有更高的产品购买潜力,因此,活跃度较高的客户群体对银行来说更为重要。13.客户群组:客户群组字段表示客户属于哪种客户类型,包括贵宾客户、大学生和散户,不同的客户类型表示客户的金融产品需求不同,贵宾客户多存在财富管理需求,大学生更多倾向于长期投资类产品。以上都是用于描述数据集的特征字段,通过对这些变量的信息挖掘及处理,可以令银行更易辨别出不同客户的群体特性,为其提供更加个性化的金融服务以达到提升客户满意度和银行市场竞争力的目标。表1数据集特征字段和字段值分布(二)描述性统计分析本小节重点分析了数据集的数值型变量分布情况,对各个变量的分布情况进行可视化,可以了解该变量的基本特征,例如分布的偏度和峰度,是否存在异常值和离群点。下面具体分析几个具有典型意义的变量。图1年龄的分布年龄的分布如图1所示:可以看出,年龄的分布仍以正态分布为主,大体上集中于30至50岁,年龄较小与较大的客户相对较少。银行目标客户主要集中在青年及中年人,较大及较小极端值相对较少。图2客户资历的分布客户历史状况分布:由图2可以看出,客户历史状况存在一个峰形,历史较长或较短的客户较少,大多数客户的历史处于0~200之间。图3客户省份分布图3反映了省份的编码分布图:根据图3,可以发现省份编码为28的地方出现次数远大于其他省份的出现次数,呈现出类不平衡状态,而其他省份的出现次数较少,从而体现出该省份地区在整体样本中占有很大的比例。图4客户收入分布图4中是收入分布情况,收入数据呈现为明显的偏态,绝大部分客户的收入分布在低收入的区间内;高收入人数在总体样本中占的比例少。收入变量具有明显的极端值会对模型产生作用,在数据预处理中,需要对收入进行适当处理,比如对偏态分布进行对数变换,以保障模型学习收入的特性不会受极端值作用。图5客户购买产品分布图5呈现了银行产品种类的情况:银行产品种类属于预测的目标变量在数据集上具有比较均匀的分布,可以看出种类之间占比是相对均等的,这也是很关键的一个问题,因为对后续的多类任务来说,这直接关系到模型的目标是预测什么,对变量如何处理就决定了后续的模型如何使用这种变量来训练以及预测。针对这样的变量,我们在处理数据时会把它转换成数字形式即对分类变量做标签编码或独热编码等等方便模型进行训练与预测。上述这些单变量分析的图形不仅有助于我们了解数据集中客户的一些分布特征,同时也有助于我们了解数据集中的偏态特征和一些异常值数据点等信息,从而有助于后期的多变量分析与模型构建工作,有助于我们对数据中存在的问题做出初步的发现,并可以为我们进行特征工程提供一定的借鉴作用。相关性分析是数据挖掘过程中重要的环节之一,在特征筛选、建模过程中起着不可替代的作用,它能够找出数据表中的隐藏模式和变量之间的关联关系,对后期建模过程起指导作用。分析特征与特征之间的相关性、特征与响应变量之间的相关性,能够判断哪些特征对预测模型的影响重大,哪些特征是多余的甚至是有害的。相关性分析能够降低模型对单个训练对象的过拟合,提高模型的稳定性和泛化性。一种常用的相关性分析方法是使用相关性矩阵可视化,其中相关性矩阵表示每对特征间相关性值的大小,通常通过数值或颜色的深浅来反映其强度大小。在热图中我们可以通过直观的颜色大小,一目了然地看出特征之间的线性关系:相关性值大小通常在-1~1范围内,如果值为1,则表示该特征之间为完全正相关,值为-1则表示完全负相关,值为0则不存在线性相关。图6编码后的特征变量的相关性热图图6显示了该项目编码后的特征变量相关性热图,接下来对特征的相关性进行分析。热力图能直观地分析出那些特征与目标变量(比如客户产品选择)之间有着较高的相关性,而哪些特征之间是弱相关性的,客户年限与客户群体(大众)特征之间相关性较高,可能体现出客户的年限越长,他的产品偏好越来越向某一类产品靠近。性别的其他特征相关性不是特别大,说明这个特征对于预测任务不大,可能要在模型中需格外慎重。在数据存在高度相关性特征时,多重共线性问题是相关性分析过程中常见的问题,高度相关性特征会使模型不稳定,从而影响模型参数估计值和预测效果。由热图可以看出本项目数据集的总体特征是变量间相关性较低,对于建模来说这是一个好现象。相关性较小时则表明各特征提供了独立信息,并不会造成太多冗余,更容易增强模型的效率以及稳定性。(三)数据编码1.标签编码标签编码(LabelEncoding)是最常用的一种编码方法,主要将类别型数据进行数字编码,然后给机器学习算法进行处理。标签编码的核心优势即为简单、直观,能够有效处理类别很多且存在明显序的类别变量;标签编码通过将各类别分别映射为一个惟一的整数值,有效维护特征的数据维度,即不会出现过量的冗余特征:所以更适应于类别很多的或明显的有序的特征。标签编码选择对象为本项目中客户的加入银行渠道的特征,该特征的字段值(类别)较多,且明显有顺序关系(有顺序或高低之分)。标签编码可以把它转换成数值类型,方便后期模型调用。之所以选择标签编码,是因为标签编码简单,不会造成数据维数爆炸。相比独热编码,独热编码也可以正确编码类别,但是会多出很多二元特征,会使数据集维度爆炸和变得稀疏,且并不能提供额外的信息,因此对该字段采用标签编码是更好的选择。2.独热编码独热编码(One-HotEncoding)主要应用于将类别的数据进行数值化,以方便机器学习算法可以对其进行操作。独热编码主要的核心观点为:对于每个类别型变量中的所有类别,每添加一个类别就创建一个新的二进制属性,以此表示该类别是否出现;并为每个类别设置一个单独的列,如果存在某一实例类别,则设置该列值等于1,否则为0。独热编码最主要的优势便是类别型变量转换为多个二进制变量,有效地解决了类别之间的顺序问题,进而避免了标签编码可能产生的类别大小隐含序问题以及避免了模型误解了类别之间的顺序或大小关系的问题。字段独热编码后所有的特征变量的字段值在训练机器学习模型的过程中是同等地对待所有类别,不会因为数值的大小问题误导模型去判断。该项目中,对于性别和客户关系类字段这些特征变量值都是包含多个类别值的特征,且类别值之间是无序无等级关系的,比如性别字段有两个类别值“H”(男性)和“V”(女性)之间并无明显的优先顺序,因此我们对于该字段使用独热编码,为每个类别生成二进制的特征,可以更好地表示此类变量的类别信息,而不会错误地把类别解释为数值型变量。标签编码适合对存在顺序关系的类别特征进行编码,但是对于无顺序关系的类别特征而言,标签编码会引入错误顺序假设,使模型错误地认为其中一类比另一类“重要”;而独热编码将每类特征都“隔离”进行处理,没有引入这样的假设,因此独热编码更合适用于无序类别特征。独热编码的一个缺点是会增加数据的维数,对于类别较多的数据,会使得数据变得更加稀疏,大大增加了模型训练的计算量。若一个特征中包含有10个类别,则使用独热编码得到10个新的二进制特征,当特征较多时容易出现维度爆炸问题并极大的增加了模型的复杂性。3.频率编码频率编码是一种依据类别的数据出现在类别中的频率(即类别的出现次数)而进行的数据编码方法。它的优点主要是不增加数据的维度,也能反映出类别变量的分布情况。频率编码将每个类别映射到在数据中出现的次数或占的比例,出现次数或占的比例高的类别被赋予更大的值,而出现次数或占的比例低的类别被赋予较小的值。相比于独热编码,频率编码不导致数据维度增大,在类别较多的情况下能大大减少数据的稀疏性,同时还能有效体现类别之间的分布信息。对于客户收入这一特征变量,在本项目中选择了频率编码。这一特征变量分布在显著性上是有差异的,属于偏态的分布特征。对这一特征变量做频率编码处理,将收入水平按照出现次数由多到少进行排序,将收入的值在高频值的一组群体赋以较高的数值,这一处理方式可使该模型中识别出收入的值是高频值的这一特征,在处理后的模型中,能够针对这类样本群体特征做出较高的识别度。4.周期编码周期编码:周期编码用于具有周期规律的变量,如月份、季度、天数等,这种编码的目的是为了更好地发现数据中的周期变化特点,避免了在默认编码时无法反映变量的周期性特点。我们将时间类变量(如月份、季度等)转化为具有周期规律特征的数值,从而使得学习模型能够较好地理解、预测这些周期性变化。周期编码时,往往采用正弦函数或者余弦函数对时间(或日期)类型数据(如月份、小时等)进行周期编码,即对日期数据(或时间数据)用正弦与余弦进行周期编码后映射在光滑的数值空间,这样利用周期编码可以捕捉到数据的周期变化情况。例如月份特征经周期编码后,1与12月份映射的数值接近。时间特征-周期编码:利用时间特征(记录日期)中的周期特性(月份),将月份转换为正弦值和余弦值。本文将周期编码运用在时间特征中,有利于模型捕捉每月、每天或每秒等时间中数据产生的周期变化。5.差值编码差值编码是利用两个相关的特征的差值生成一个新特征的编码方式。它的优势是对特征的相对关系进行编码,适合在时间和其它相关度较高的数据上使用。差值编码将两个特征作差,得到一个新特征,新特征体现两原始特征之间的差异。此时,模型学习的就是这种差异带来的影响,而不是只关注各个特征带来的影响。例如,时间特征在两个时间点的差比它们各自的值有更深刻的意义,在这个方面,差值编码会提供差异信息,对模型的精度有促进作用。本文差值编码采用记录年份和开户年份两个属性间的差值,通过求这两个特征差值得到的差值为新特征开户年长,用来记录客户开户时间和当前时间的相差年份,来揭示客户与银行建立关系的时间,为模型提供有关客户以往和行为模式信息的特征。6.小结本节部分对数据集的各特征进行多种编码以便能够顺利输入机器学习模型进行训练,对各特征性质、数据分布进行相应的选择编码。标签编码适用于具有顺序关系或等级的类别变量,如客户加入渠道;独热编码则适用于无序类别变量,如性别和客户关系类型;频率编码则通过将类别的频率信息转化为数值形式,主要应用于收入字段,以帮助模型识别收入的分布特征;周期编码则用于具有周期性特征的日期变量,如记录日期的月份,以捕捉购买产品的季节性变化;差值编码用于提取两个特征之间的相对关系,如提取数据记录年份和开户年份的差值以体现开户时长。同时在编码过程中,我们对客户收入这一特征还进行了偏态处理,采用对数变换的方式对其进行了转换以减少其偏态性对模型训练的影响。表2总结了所有特征字段的编码方式。不同的编码方式各自具有自身的优点:标签编码能够降维方便类别变量,适合有序特征;独热编码能够避免类别变量的顺序假设,适合无序特征;频率编码能够减低数据稀疏性并保留类别分布的信息;周期编码能够捕捉时序特征中的周期变化;差值编码能够体现特征的相对大小,让模型学会更多的信息。表2数据集中特征字段的编码方式四、实证分析(一)评价指标机器学习模型的评价时,通常我们要进行多个评价指标的综合对比,从而判定模型的表现。而在多分类等问题中,单用一个准确率难以客观评价模型好坏,还需要多个评价指标一起进行综合判断,常用评价指标有混淆矩阵、召回率、精确率、F1值、宏平均、加权平均等,下面将这几个评价指标进行说明。混淆矩阵(ConfusionMatrix)是一个矩阵,可以表达分类模型的预测结果和实际情况的结果,对于每一个类别而言,矩阵的每个元素都反映了该类别实际的样本数以及模型的分类结果。它是分类模型评价的基础。混淆矩阵中,真正例(TruePositive,TP)、假反例(FalseNegative,FN)、真反例(Truenegative,TN)、假正例(FalsePositive,FP)分别为:在分类结果与实际结果均正确时的数目、分类结果为阳性而实际结果阴性时的数目、分类结果阴性而实际结果为阳性时的数目、分类结果阴性而实际结果为阴性时的数目。召回率(Recall)同样也有另外一个名字叫真正率(TruePositiveRate,TPR),指的是模型预测为正类的所有样本中,实际为正类样本占比是多少。召回率值越高的时候,表明模型将正类漏查越少。召回率的定义如下所示。Recall=TPTP+FN(4-1)其中,精确率(Precision)也称为查准率(PosiivePredictiveValue,PPV),指的是模型判定为正类样本中真正为正类的样本占全部判定为正类样本的比例。精确率越大,说明模型对正类判定的能力越强。精确率的计算式为。Precision=TPTP+FP(4-2)其中,F1分数(F1-Score)即精确度与召回率的调和平均数,是衡量综合精确度与召回率性能的指标且尤其适合应用于类别不平衡的问题。F1分数值越高,模型精确率和召回率表现越平衡。F1分数计算式为:F1-Score=2×Precision×RecallPrecision+Recall(4-3)其中,宏平均(MacroAverage)是计算对所有类别计算的评价指标的平均值而不考虑类别的数目,它比较能反映模型对所有类别的整体表现。对于每个类别,先计算出其精确率、召回率和F1分数,再对其计算非加权的平均值。宏平均精确率(MacroPrecision)、宏平均召回率(Mac-robRecall)及宏平均F1分数(MacroF1-Score)的计算分别为。MacroPrecision=1Ni=1NPrecisioni(4-4)MacroRecall=1Ni=1NRecalli(4-5)MacroF1-Score=1Ni=1NF1-Scorei(4-6)其中,加权平均(WightedAverage)和宏平均相比的不同在于加权平均考虑到了各个类的样本数,在加权平均计算中,模型在每个类别上的表现将会得到该类别样本数的加权,这足以反映出了样本数量较大的类别对于整个模型效果的影响,加权平均能够更好地对类别样本量较小的模型进行评价。对于每一个类别,我们首先计算其精确率、召回率和F1分数,按该类别的样本数进行加权再计算加权的平均值。加权平均精确率(WeightedPrecision)、加权平均召回率(WeightedRecall)和加权平均F1分数(WeightedF1-Score)的计算公式分别为:WeightedPrecision=i=1NPrecisioni×Supportii=1NSupporti(4-7)WeightedRecall=i=1NRecalli×Supportii=1NSupporti(4-8)WeightedF1-Score=i=1NF1-Scorei×Supportii=1NSupporti(4-9)其中,(二)模型分析与对比本节将就支持向量机、K-近邻、决策树和随机森林4个算法进行对比,着重比较分析4个算法在多分类任务下的混淆矩阵和模型指标。1.支持向量机表1支持向量机混淆矩阵表2支持向量机模型指标从表1及表2可以看出,支持向量机在某些类别上有待提升,主要体现在“直接借记”这一类别,F1分数为0.47,召回率也只有39%,说明支持向量机处理这一类别时会出现较多的漏检现象;养老金的召回率比较高(63%),但精确度较低(50%),说明模型会将一些其他类的样本识别为养老金;贷款类别的精确度达到了76%,召回率高达87%。证券类别的表现是各类中表现最差的,精确度只有55%,召回率也只有54%。2.K-邻近表3K-邻近混淆矩阵表4K-邻近模型指标KNN模型算法使用KNN计算样本之间距离来进行分类。从表3和表4可以看出KNN优于支持向量机,尤其是在“贷款”分类中的精确度和召回率(精确度87%,召回率95%)。从具体的分类中我们可以观察到,KNN在这两类的分类中比较好,即“养老金”精确度为73%,召回率为86%。信用卡精确度82%,精确率和召回率相差甚大,模型在此分类准确性低,证券精确度77%,召回率72%,在这个分类中,模型下降,需要更多的改进。3.决策树表5决策树混淆矩阵表6决策树模型指标决策树算法就是用一颗树来作判断决策。从表5和表6可以看出,决策树的表现非常好,尤其在类别“贷款”和“养老金”,其F1分数为97%。信用卡类的F1为91%,召回率为88%,可能还需要更多的训练数据可以进一步改善分类效果。证券和直接借记的类别也做的很不错,尤其在召回率上,分别为94%和96%,可见,决策树可以识别较好的区分这两个类别。4.随机森林表7随机森林混淆矩阵表8随机森林模型指标随机森林(RandomForest)算法是一种决策树集成算法,利用多个决策树进行投票来做出决策,准确率高,并具有很好的鲁棒性。由表7、表8可知,随机森林对于“贷款”类效果最好,召回率达到了100%。随机森林对于“养老金”类的F1分数是98%,效果也很好。对于证券、直接借记类别的精确度分别为95%和97%,召回率都在90%以上,模型对于这些类有较好的适应性。信用卡类别的精确度是96%,召回率是93%,可见随机森林对这一类也有较好的识别效果。5.小结通过4种模型的性能对比可以看出,决策树和随机森林的大多数类别性能较好,特别是二者在识别小类类别时性能更为优越。其中,在准确率、宏平均准确率、召回率和F1方面,随机森林的性能优势很大,在“贷款”和“养老金”类别上的准确率高,召回率和正确率接近满分,说明随机森林算法在金融任务上表现出较高的性能。随机森林可有效弥补类别不平衡给总体性能带来的“偏见”,避免了某些类别过于影响整个性能。对比支持向量机的效果一般,在“直接借记”与“证券”类上的召回率与F1值较小,我们发现,支持向量机对这2个类别的虚假负例容易出现,未能很好涵盖这方面的样本特征,其原因可能是支持向量机的超平面结构,限制了对这2个类别的分类。表8算法模型指标对比从表8可以看出,随机森林无论在精度、宏平均精确率,还是查准率、F1值上都是最佳的,即它在多分类中具有很强的适应性和鲁棒性。而决策树作为一种单独的模型,也是表现很好的,适用于数据相对干净而且类别差距较大的情况。而决策树对于复杂性数据集和类别极不平衡的数据集,有可能会出现过拟合。对于本项目中的多分类问题,随机森林无疑是最好的方法,随机森林的集成学习优势能够帮助它解决这种复杂的数据分类问题。所以,随机森林不仅是最适合本项目任务的算法,而且它还可以适用于其他真实应用且具有较广泛的适用性和可靠性。五、结论与展望(一)结论本文基于机器学习进行银行客户购金融产品多分类,主要采用基于支持向量机、KNN、决策树、随机森林的经典机器学习模型,开展特征工程对模型优化的研究,并综合比较不同机器学习模型对银行客户购产品预测的性能。本文应用的关键数据特征工程处理方法,使输入数据能够被机器学习模型所接受,对多个影响模型精度的重要特征进行了数据转换和预处理。采用标签编码方法处理具有顺序关系或字段数较多的类别变量,如客户加入渠道等;采用独热编码方法处理无序的类别和字段值较少的类别变量,如性别、客户关系种类等;对收入等分布明显具有偏态的特征进行了频率编码和对数变换处理,减弱偏态对数据的影响;利用周期编码处理数据记录日期的月份特征,抓住该特征的周期性变化;利用客户开户年限与数据记录年份的差值特征,构建特征——开户年长,用于向模型表达客户的持续经营年限。通过对模型的研究可知,随机森林模型在各项评价指标上均为最优,其在准确率、宏平均精确率、召回率和F1值上也远高于其它模型。同时在“贷款”与“养老金”类别中随机森林的召回率和精确度都相当理想,体现了随机森林模型在多分类问题中具有很高的效率和稳健性。决策树模型作为单一模型在“贷款”、“养老金”的准确度上较为理想,但决策树模型也较为可能在类别不平衡时存在过度拟合的情况,而这种情况也是未来模型需要加强的模型调整部分。K近邻算法和支持向量机两类模型,在某些类别的准确率上较为一般,但相较于前一种模型还是具有其自身的一些优点,尤其支持向量机在“直接借记”类别的F1得分只有0.47,召回率也只有39%低下的原因是不能有效的分类出这一类别的一些样本。综上对比,研究的结果可以看出,随机森林模型在金融产品多分类预测方面有着无可替代的优势,其在类别不平衡及复杂的分类过程中都发挥着不可替代的作用,而决策树这一单一模型在金融产品的多分类中表现也较为优异,但是在类别不平衡和过拟合问题上还是需要更深层次的调整和改进,支持向量机和支持向量机在一些类别上也表现中规中矩,但是在“证券”的类别的表现上却不尽如人意。本文的主要贡献在于,我们在银行客户买金融产品的预测实例中验证了机器学习方法的应用意义,且通过特征工程显著提升模型的预测能力及精度。为银行的客户细分、产品推荐、风险管理等领域带来一种数据驱动的创新解决方案,有助于银行更准确的了解客户、更清楚的把握客户需求而实施更准确的金融产品定位,从而使自身市场反应更灵敏、竞争力更明显。随着大数据技术与机器学习方法的持续进步,银行业将面临更多新的创新机遇,未来机器学习模型持续优化与特征工程的日益丰富将进一步促使银行业在客户关系管理和金融产品创新领域取得新的突破。长期而言,由于金融市场环境的变化,需要在更全面的数据基础上,在新技术手段的辅助下继续持续进行研究,从而继续探索。(二)展望与不足在金融行业客户的金融产品多分类购买行为的预测研究中,我们实现了相对较好的结果,但同时我们也存在一些缺点。因为本研究所使用的数据集具备一定的时效性约束,其数据获取时间也较早,这无法完全体现出目前的银行客户行为是发生了一定变化的,在移动支付、互联网银行和金融快速发展的时代背景下,银行客户的行文情况可能已完全不复以前,这就使得我们进行后续的研究时应使用近些年的数据集来提高其效果的时效性。我们虽然针对类别不平衡问题进行了重采样及类别权重调整等处理,但在部分类别上的预测效果较差,对少数类别如“直接借记”、“证券”这类类别的客户没有被识别。后续我们可以进一步针对类别不平衡问题进行学习研究,如引入合成少数类过采样技术SMOTE(S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 唐山市新区2025-2026学年第二学期三年级语文第五单元测试卷部编版含答案
- 楚雄彝族自治州姚安县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 四平市双辽市2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 曲靖市会泽县2025-2026学年第二学期六年级语文第五单元测试卷部编版含答案
- 软件方案评审
- 深度解析(2026)《CBT 4415-2015船用螺旋风管及附件》
- 深度解析(2026)《CBT 3905.6-2005锡基轴承合金化学分析方法 第6部分:原子吸收光谱法测定铜量》
- 深度解析(2026)《CBT 3580-1994船体钢板和构件修理测厚技术要求》
- 深度解析(2026)《CBT 601-1992 自闭式放泄阀》:结构解析、标准解码与未来应用前瞻
- 福建美术题库及答案
- 中国电信安徽公司校园招聘试卷
- 氧气瓶安全培训知识
- 2023学年完整公开课版耐久跑说课
- 足球传球与跑位配合技巧:传跑结合破解对手防线
- 《水泥搅拌桩》课件
- 数独培训课件
- GB/T 470-2008锌锭
- 鲧禹治水课件
- 初中 初一 劳动教育活动《维护保养自行车》第一课时 PPT 课件
- 廊桥施工方案完整优秀版
- 部编版四年级语文下册第二单元《习作:我的奇思妙想》课件PPT
评论
0/150
提交评论