朴素贝叶斯算法与车辆风险分类
2020-08-13郭念国
郭念国
(河南工业大学 理学院,河南 郑州 450001)
保险作为风险分摊的一种有效方式,其基础为风险的同质性。若被保险人的风险不同质,对风险水平低的被保险人来讲,缴纳相同的保费进行损失分摊显然是不公平的,从而在下一个保险年度就会放弃当前保险业务,这使得保险双方都会因业务的更换而产生损失。作为保险人,如何留住这些相对低风险的客户,关键是如何基于被保险人的相关风险信息对其进行有效分类[1],使得分类后同类中的被保险人是同质的。
分类算法作为统计学习理论研究的一个核心问题,在许多领域都有着广泛的应用[2],且取得了众多成果。通常,分类算法总是把数据分为两部分:一部分为训练数据,另一部分为检验数据。分类算法模型的构建是基于训练数据,而检验分类算法模型的分类效果则是基于检验数据。因朴素贝叶斯算法易于构建、易于解释,而且通常具有良好的分类效果,从而得到了广泛应用[3],但该算法在车辆保险领域中的研究尚不多见。通常,被保险人所接触到的车辆索赔数据是格式化的数据,如下面这种由列组成的数据框:
车辆使用用途 | 车辆行驶区域 | 车辆价格 | 被保险人受教育程度 | 索赔额 | 索赔次数 |…
这种格式化的数据比较适合拟合广义线性模型,而且建立的模型可以给出风险因子(即解释变量,如车辆使用用途、车辆行驶区域等)对损失变量的相关关系,这也正如Antonio[4]指出的那样:广义线性模型已成为车辆保险实务领域中的标准模型。然而,广义线性模型对数据结构的要求比较高(不能包含缺失值),而且选择损失变量的分布往往具有一定的主观性。如何弥补广义线性模型的这些不足,是本文使用朴素贝叶斯方法进行分类研究的目的。
朴素贝叶斯算法是使用概率大小进行预测分类的一种统计学习算法,而预测概率是使用训练数据中相关特征来计算的,预测概率越低,事件发生的可能性越小;反之,事件发生的可能性越大。本文结合车辆保险领域中的风险分类问题,从事件、离散型随机变量和连续型随机变量三个角度,对朴素贝叶斯算法及其思想进行研究分析。结合一组数据,使用朴素贝叶斯算法及常用的广义线性模型对数据进行拟合,并对拟合结果进行了比较分析。
1 朴素贝叶斯算法及其思想
1.1 基于事件的朴素贝叶斯算法及其思想
(1)
(2)
则认为具有A1,A2,…,Am的被保险人具有高风险。
(3)
其中,非负数λ≥0,实际应用中,常取λ=1,此时称为拉普拉斯平滑[6]。同样,先验概率的计算为
(4)
由此,朴素贝叶斯算法在采用了贝叶斯估计条件下,可处理缺失数据,并进行估计,从而提高了数据的使用效率。当然,在此只给出了两分类,下面给出多分类问题。
1.2 基于离散型随机变量的朴素贝叶斯算法及其思想
一般情况下,车辆保险领域中数据为下面这种由列组成的数据框:
车辆使用用途 | 车辆行驶区域 | 车辆价格 | 被保险人受教育程度 | 索赔额 | 索赔次数 |…
设Y表示索赔额(或索赔次数),依据保险人的风险分类标准将索赔额度(或索赔次数)的风险分成c(c≥2 )个类B1,B2,…,Bc。若c=2,则为1.1节的情况。设X=(X1,X2,…,Xp)为p维特征向量,设T={(x1,y1),(x2,y2),…,(xntrm,yntrn)}为训练数据,从而可以求出先验概率分布为
(5)
似然概率分布为
Pr(X=x|Y=Bi)=Pr(X(1)=x(1),…,X(p)=x(p)|Y=Bi),i=1,2,…,c
(6)
于是联合概率分布为
Pr(X=x,Y=Bi)=Pr(Y=Bi)Pr(X=x|Y=Bi),i=1,2,…,c
(7)
若x(j)有sj(j=1,2,…p)个不同的取值,即
(8)
根据贝叶斯定理,得
(9)
考虑一个具有风险特征x0的被保险人y0应当划分到哪类风险组中时,只需计算条件概率Pr(Y=Bi|X=x0),哪个组的概率最大,就分到哪个组。又因为
(10)
(11)
若观测值x的某个特征,如第j(j=1,2,…,p)个取值ajl(l=1,2,…,sj)为缺失值,就会导致似然估计Pr(X(j)=ajl|Y=Bi)=0,从而影响后验概率的计算结果,使分类产生偏差。与1.1节相同,采用贝叶斯估计,即条件概率的贝叶斯估计为
(12)
其中I(·)示性函数,满足条件“·”取值为1,否则取值为0。这等价于在随机变量每个取值的频数上赋加一个非负数λ,当λ=1,称为拉普拉斯平滑,λ=1,退化为极大似然估计。
1.3 基于连续型随机变量的朴素贝叶斯算法及其思想
无论是基于事件还是基于离散随机变量的朴素贝叶斯算法,显示该算法似乎更适合类别变量,使得该算法在类别分析中得到广泛应用,如垃圾邮件的识别问题[7]等。所以,当变量X(j)(j=1,2,…,p)为连续值时,如何对变量进行离散化是一个值得研究的问题,本文采用Max Kuhn[8]中的方法,对变量X(j)进行高斯离散,即
(13)
(14)
(15)
2 实证分析
为了验证朴素贝叶斯算法的分类预测能力,采用SAS公司[9]提供的车辆索赔数据。该数据有33个变量,10 303条观测记录,而且有许多观测值中包含缺失值。朴素贝叶斯算法可以处理含有缺失数据的数据,但为了使本文研究结果能够与常用的经典分类方法作比较,提取了一年期保单数据。将含有缺失值的观测数据删除后,有效样本数为n=2 812,对被保险人的索赔(outcome)情况进行统计,索赔保单数891,约占总样本的31.7%。结合车辆保险的实际情况,初步选择一些相关的风险变量,一般情况下,保单的编号不会对索赔行为产生影响,可将这些显然独立的变量删除,挑选18个可能对索赔有影响的风险变量,分别为KIDSDRIV(车上儿童人数)、TRAVTIME(单位距离)、CAR_USE(车辆用途)、BLUEBOOK(车辆价值)、NPOLICY(拥有的保单数)、CAR_TYPE(车辆类型)、RED_CAR(是否红色车辆)、REVOLKED(近7年是否有驾照吊销)、MVR_PTS(车辆扣分)、AGE(年龄)、HOMEKIDS(家庭儿童数)、INCOME(收入)、GENDER(性别)、MARRIED(婚姻状况)、PARENT1(是否单亲)、JOBCLASS(工作类型)、MAX_EDUC(最高受教育程度)、DENSITY(家庭或工作所在区域)。这些变量对索赔是否具有显著影响,可以通过图形来进行简单判定,见图1。
图1 索赔(outcome)与年龄(AGE)、家庭儿童数(HOMEKIDS)的分布
由图1(a)可知:年龄对索赔有影响,否则,发生索赔的被保险人和没有索赔的被保险人的年龄分布应相同,同样由图1(b)也可以得出相同的结论。
为验证建立模型的拟合效果,首先利用caret包中函数createDataPartition将提取的数据拆分成两部分,一部分为训练数据,一部分为检验数据,分别占总样本量的75%和25%,即ntrn=2 110,ntst=702,且训练数据中索赔占31.7%,检验数据中索赔占31.6%。基于训练数据,朴素贝叶斯算法使用caret包中train函数,建立一个概率模型,利用该模型对检验数据进行预测分析,Logistic回归模型是基于R中glm[10]函数建立的,两种分类方法的分类效果如表1所示。检验数据样本量为702,发生索赔的有222个,无索赔的有480个。
表1 模型预测效果比较
从表1可以看出:朴素贝叶斯算法(无缺失数据)对没有发生索赔和发生索赔的被保险人成功预测的比率分别为84%和51%,总体预测正确率近74%;Logistic回归模型成功预测的比率分别为90% 和51%,且总体预测正确率近78%。无论从总体预测还是从单个指标,均比朴素贝叶斯算法效果好。当然,此结果是建立在删除缺失值基础之上。如使用全部的10 303条观测数据,同样采用全部数据的75%为训练数据,25%为检验数据(样本量为2 575),重复上述过程,朴素贝叶斯的分类结果如表1中朴素贝叶斯(全部数据),没有发生索赔的被保险人预测正确率达到了85%,而发生索赔的被保险人的正确预测率达到了54%,均有所提高,而且,总体预测正确率同样达到了78%,总体预测正确率与Logistic回归模型基本一致。
采用基于朴素贝叶斯的Adaboost分类算法(由Freund和Schapire[11]首次提出),其对没有发生索赔的被保险人正确预测率达到94%左右,优于Logistic回归模型。因为该算法对Schapire[12]提出的Boosting算法进行了改进,而Boosting 本身是一个通过对多个弱学习模型的集合,组合成为强学习模型的一个分类算法,故也称为增强算法。这些算法尽管建立在朴素贝叶斯算法基础上,但其算法已远不如朴素贝叶斯算法直观,故本文没有采用。
3 结论
基于朴素贝叶斯算法对车辆保险领域中被保险人的索赔问题进行研究。通过实例分析发现,朴素贝叶斯算法不仅可以解决广义线性模型分布类型的选择问题,而且可以处理缺失数据问题,体现了该算法的客观性和适应性,并且在一定程度上提高了数据的使用效率。然而,该算法只有在使用全样本的条件下,总体预测正确率才能达到广义线性模型,使用相同样本量时,朴素贝叶斯算法预测能力比常用的广义线性模型稍差。出现这种结果的原因在于没有对变量进行筛选,因为朴素贝叶斯算法假设变量间是独立的,而本文选择的18个变量中,明显存在相关关系,比如年龄(AGE)与收入(INCOME),显然相同条件下年龄越大收入也可能会越高,存在正相关关系;再比如车辆价值(BLUEBOOK)与收入(INCOME)间也会存在相关关系,一般情况下收入越高购买的车辆价值也可能越高。这些不满足独立假设条件的变量会导致朴素贝叶斯算法预测精度的下降。
相关变量对预测精度的影响程度多大?如何选择变量以及如何在选择变量的基础上,借助于朴素贝叶斯算法对被保险人的索赔风险进行有效分类?是本文下一步研究的方向。