当前位置:文档之家› 银行客户分类问题

银行客户分类问题

评阅编号(由校组委会评阅前进行编号):编号专用页评阅编号(由校组委会评阅前进行编号):评阅记录:评奖结果:银行信贷业务问题摘要随着经济的快速发展,银行越来越重视客户的分类,对于银行来说,一个新客户的到来,银行应该针对该客户的信息,判断客户可能的类别,然后采用针对性较强的销售策略,以获得最高的效益。

本文就是一个典型的银行客户分类问题,第一问我们运用支持向量机模型把银行客户分成有贷款和无贷款的,把附件bank1中的数据作为训练集,将其中的客户资料进行量化,构造出分类函数)xgfy+==x=,把数据))wx(sgn(sgn((b)带进去当1y时此客户是无贷款的,运用支持向==-y时此客户为有贷款的,当1量机计算出参数w和b,再从附件bank-full中随机抽取10%的数据作为检测集进行检验得到准确率为97.1688%。

第二问我们构造决策树模型对有贷款和无贷款的客户进行细分,我们把附件bank1中数据分为有贷款和无贷款的,分别建立决策树。

我们只选取年龄、工作、婚姻状况、教育程度、信贷违约、年平均余额这六个属性,把是否信贷违约看做分类标识,先对数据进行量化分类,再分别算出它们的信息增益,根据算出的信息增益值的大小,对属性进行排序确定叶节点画出决策树,把决策树的每一个从根到叶节点的路径作为一个分类,由此我们把有贷款的无贷款的都细分为六类。

第三问分为两小问来解答:(1)判断此客户是否可能购买贷款产品,我们任意给出一个客户资料,把客户资料量化后代入第一问中的模型得出1y,因此=我们判断此客户有可能购买贷款产品。

(2)建议其购买哪种贷款产品,我们再把客户资料代入第二问中的模型判断出此客户属于有贷款中的第二类,由每类客户的购买建议,我们推荐他购买短期的担保贷款。

关键词:分类问题支持向量机决策树信息增益一、问题的重述近年来以来,我国经济获得了快速增长,银行的信贷资本在其中发挥了极其重要的作用,银行信贷业务的发展是当前扩大我国国内需求与促进经济增长的重要途径之一。

银行信贷业务是银行最基本、最重要的资产业务,通过发放银行贷款收回本金和利息,扣除成本后获得利润。

一般来说,银行信贷业务是银行赢利的重要手段,所以很多银行都推出了很多新的业务来满足更多人士的贷款需求。

从银行信贷业务的分类来说,可以分为法人信贷业务、个人信贷业务。

其中法人信贷业务包括项目贷款、流动资金贷款、小企业贷款、房地产企业贷款等;个人信贷业务包括个人住房贷款、个人消费贷款、个人经营贷款等。

银行信贷业务同时也是风险性较大的一种业务。

按照贷款期限来说,银行信贷业务分为短期贷款,即一年以内;中期贷款,即一年以上五年以下;长期贷款,五年以上等三种类型。

按保障条件来分,银行信贷业务可以分为信用贷款、担保贷款和票据贴现等三个类别。

某银行为了对客户提供更好的信贷服务,对信用卡客户进行了详细的分析和调查。

调查主题是对某种家庭和个人背景的用户成为银行信贷的潜在客户的可能性进行分析与判断。

请考虑以下问题:(1)建立能够描述有贷款和无贷款的客户的基本背景数据模型;(2)对有贷款和无贷款的客户群进行细分建模;(3)给定一个客户的背景,判断其是否可能购买贷款产品,如果可能的话建议其购买哪种贷款产品。

二、问题的分析本题是一个比较典型的分类问题。

问题一是建立能够描述有贷款和无贷款的客户的基本背景数据模型。

对于这个问题,我们要先建立一个二分类模型,把有贷款和无贷款的客户资料分开,在这里我们用支持向量机来解决这个二分类问题,建立一个基于支持向量机的银行客户分类模型,由于不能确定它是否是线性可分的,而线性可分是线性不可分的一种特殊情况,因此我们把它看做是线性不可分的来处理,即把它看做是非线性的来处理。

用附件bank1中的数据作成的训练集来求解模型,再从bank-full中随机选取10%的数据作为检测集来验证模型是否合理。

问题二是在问题一的基础上对有贷款和无贷款的客户再进行细分建模,这不在是一个二分类问题,而是一个多分类问题,因此我们在此问中采取决策树模型,先根据信息增益分别对有贷款和无贷款的客户资料做出决策树,在对决策树进行调整,得到一个合理的决策树,将每一个决策树的路径作为一个分类,从而达到对有贷款和无贷款的客户群进行细分的目的。

问题三是给定一个客户的背景,判断其是否可能购买贷款产品,如果可能的话建议其购买哪种贷款产品。

在这一问中我们把它分成两小问来处理:(1)给定一个客户的背景,判断其是否可能购买贷款产品,给定一个客户资料把它带入第一问建立的模型中得出它是否会购买贷款。

(2)我们先把第二问中得到的有贷款的客户细分类进行贷款产品的配对,再把此客户的背景资料带入第二问建立的模型中看他是出于哪一类的,给出相应的产品推荐。

三、符号的说明T : 附件bank1中的数据作成的训练集,i x :由年龄、工作、婚姻状况、教育程度、信贷违约、年平均余额6个属性组成的向量, i y :分类标记,T :原训练集T 转化为Hilbert 空间H 中的新训练集, i x :由i x 映射到Hilbert 空间H 中的向量, ()g x :Hilbert 空间H 中超平面, i D :样本点, ()f x :分类函数,i δ:样本点(),i i i D x y =到超平面()g x 的间隔, i σ: 样本点到超平面的距离,即几何间隔, i ξ:松弛变量, C :惩罚参数,i λ:拉格朗日乘子, S :分类后的训练集,),...,,(21n s s s I :样本分类所需的期望信息, )(A E :A 的信息熵, )(A Gain :A 的信息增益。

四、模型假设1、本模型只考虑年龄、工作、婚姻状况、受教育程度、信贷违约、年平均余额,不考虑其他因素。

2、只要有房贷或个人贷款中的一样,我们就认为他是有贷款的。

3、不考虑经济波动对本数据的影响。

4、不考虑属性间的相互影响。

五、模型的建立与求解5.1问题一5.1.1 模型的建立本问题采用支持向量机[1]来进行二分类,由于这个二分类问题究竟是否是线性可分的尚不能定论,因此不能简单的认为它是线性可分的而作简单化处理,而线性可分是线性不可分的一种特殊情况,故在得出结论前,我们把它看做是线性不可分的来处理,即非线性的情况。

我们解决线性不可分问题的基本思路——向高维空间转化,使其变得线性可分。

因此我们先把低维的线性不可分的情况转化为高维线性可分的情况,再来建立线性可分的支持向量机模型[6][7]。

我们把附件bank1中的数据作为训练集,则训练集T 为()()(){}()1122,,,,...,,mm m T x y x y x y X Y =∈⨯,其中i x =(年龄,工作,婚姻状况,教育程度,信贷违约,年平均余额)6X R ∈=,X 称为输入空间,输入空间中的每一个点i x 由6个属性特征组成,{}1,1i y Y ∈=-,i y 为分类标记,1,2...i m =,m 为训练集的数据的个数。

我们在解决非线性的情况时引入从输入空间X 到另一个高维的Hilbert 空间H 的变化()x x ϕ→,将原输入空间X 的训练集()()(){}()1122,,,,...,,mm m T x y x y x y X Y =∈⨯转化为Hilbert 空间H 中的新的训练集()()(){}()()(){}11221122,,,,...,,(),,(),,...,(),m m m m T x y x y x y x y x y x y ϕϕϕ==,它在Hilbert 空间H 中线性可分。

下面我们在Hilbert 空间H 中建立线性可分的支持向量机模型[4]。

我们的目的是要找到一个超平面()g x wx b =+,能把数据分到超平面的两边,其中w 是一个向量, b 是一个实数,构造分类函数()sgn(())y f x g x ==,将任意一个模式x 带进去即可得到分类。

下面我们只需要求得参数w 和b ,满足当i y =1时,1i wx b +≥;当i y =-1时,1i wx b +≤-,但实际上只需要求w ,求得以后找某些样本点代入就可以求得b 。

我们定义一个样本点(),i i i D x y =到超平面的间隔为()1i i i y wx b δ=+≥,将w 和b 归一化可得1()i i g x wσ=,这是样本点到超平面的距离,称为几何间隔。

而误差次数22()rσ≤,其中σ是样本集合到分类面的几何间隔,max ,1,2...i r x i m ==,即r 是所有样本中向量长度最长的值,是一个定值。

由此可以看出误差次数是由σ决定的,σ越大误差越小。

要寻找最大的σ,我们固定间隔i δ为1,寻找最小的w ,我们把它转化为一个二次规划问题——最小化21()2J w w =。

即,最小化21()2J w w =s.t ()1,1,2,...i i y wx b i m +≥=我们将原训练集映射到更高维的训练集时,样本点i D 有可能以下三种情况: (1) 各样本点分类正确。

(2) 落在分离段内,且正确分类即满足不等式0()1i i y wx b ≤+<。

(3) 错误分类,即满足不等式()0i i y wx b +<。

为此,我们将引进一个新的变量0i ξ≥,将上述三种情况归为同一约束条件,即()1i i i y wx b ξ+≥-,第一种对应i ξ=0,第二种对应0<i ξ≤1,第三种对应i ξ>1,变量i ξ称为松弛变量。

则原来的优化问题就变成了211min ()2mi i J w w C ξ==+∑s.t ()1,1,2,...i i i y wx b i m ξ+≥-=,0,1,2,...i i m ξ≥=,其中C>0为惩罚参数是一个常量,C 决定了你有多重视离群点带来的损失,C 定的值越大,对目标函数的损失也越大。

可以给每一个离群点都使用不同的C ,这时就意味着你对每个样本的重视程度都不一样。

这就变成了凸规划问题,引入拉格朗日函数表示为[]21111(,,,,)()12m m mi i i i i i i i i i L w b w C y wx b ξλμξλξμξ====+-+-+-∑∑∑,对应的KKT 条件为10mi i i i Lw y x w λ=∂=⇒=∂∑ 100mi i i Ly b λ=∂=⇒=∂∑ 00i i iL C λμξ∂=⇒--=∂ []()10i i i i y wx b λξ+-+=0i i μξ=0,0,1,2,...,i i i m μξ≥≥=将上述的条件带入拉格朗日函数成为wolfe 双重优化任务得1111max(,)2mm mi i j i j i j i i j y y x x λλλλ===-∑∑∑s.t 0i C λ≤≤10,1,2,...,mi ii yi m λ===∑求此优化问题即可求得i λ,由此可得出1mi i i i w y x λ==∑,因此原来的()g x 变为11(),,,mmi i i i i i i i g x wx b w x b y x xb y x x b λλ===+=+=+=+∑∑,在这里我们选取径向基函数做为核函数(,)((),())(,)i j i j i j K x x x x x x ϕϕ==则wolfe 双重优化任务就成为1111max((,))2mm mi i j i j i j i i j y y K x x λλλλ===-∑∑∑s.t 0i C λ≤≤10,1,2,...,mi ii yi m λ===∑,由此生成的分类函数为1()sgn(())sgn((,))mi i i j i y f x g x y K x x b λ====+∑5.1.2模型的求解本文仅选用6个属性值进行确定,各属性值的取值范围定义如下: 年龄(age ):1、2、3,(1代表30岁以下,2代表30-50岁,3代表50岁以上); 工作(job ):1、2、3,(1代表管理级别,2代表非管理级别,3代表无业); 婚姻状况(marital ):1、2、3(1代表单身,2代表已婚,3代表离异); 教育程度(educatior ):0、1、2、3(0代表未知,1代表初级,2代表中级,3代表高级);信贷违约吗(defalt ):0、1(0代表否,1代表是);年平均余额(balance):0,1,2,3(0代表0欧元以下,1代表0-2000,2代表2000-4000,3代表4000以上);贷款:-1、1(-1代表无贷款,1代表有贷款);下面我们用svm 来求解模型[8][9]。

相关主题