作者简介:侯澄钧,俄亥俄州立大学运筹学博士, 目前在美国从事财产事故险(Property & Casualty)领域的保险产品开发,涉及数据分析、统计建模和产品算法优化等方面的工作。

只有想不到,没有保不了。这就是我对美国保险行业最深刻的认识。 大到地震,小到球票,加上平时开车,租房,看病,旅游,保险无时不刻的出现在了美国人生活工作的方方面面。 除了没有住所,没有工作,没有任何财产的流浪人员,每个美国人都不可避免得需要与保险打交道。 如果银行是厚重的少林,证券是玄妙的武当,那保险作为弟子遍布江湖的丐帮确实当之无愧。 下面我想从房屋火灾险,医疗责任险,自然灾害险,聊聊美国人是怎么开始玩保险,然后玩出各种花样,甚至玩坏的。 之后我会写写数据科学是如何应用于保险行业的,同时介绍一些常用的预测模型,只对这方面内容感兴趣的朋友可以直接跳过之前的内容。

房屋火灾险

房屋火灾险简称火险,顾名思义,就是针对房子里以及房子本身由于火灾造成的损失而设立的保险产品。 美国历史上大多数民居都是木质的(现在依然如此,在历史悠久一点的新英格兰地区随便买个二手房就能买到百年老房),一把大火可以让成片的居民倾家荡产。 所以房屋火灾险是美国历史最悠久的险种之一,传说第一家专业火险公司是由美国历史上的“第一位自然人”本杰明-富兰克林创立的。 而我目前工作的公司也是以火险起的家,现在还把林肯总统的房屋保险合同供在公司大堂里。 1835年的纽约大火波及17个街区,数以百计的房屋被烧毁,当时的直接损失就在两亿美金以上。 26家纽约当地的火险公司中有23家因为无法支付赔偿而倒闭。 就在此时我东家公司的创始人挺身而出,抵押了自己的所有财产,以此支付了所有保险赔偿,立下了口碑,继而把公司发展成了美国保险业诸侯之一。

1
公司展览室里奇葩的古董消防车

我觉得火险的兴起,继而带动整个美国保险行业的发展,主要原因之一当然就是有需求。 有需求就有市场,而保险把个人无法承受的不确定性,分担到一个群体,使得这个不确定变得可以接受甚至可控,的这种特质天然契合了需求。 第二个原因就跟历史发展有关,美国一开始是由各个独立的州组合起来的联邦,所以历来都是崇尚小政府,崇尚地区自制,你联邦别管我州,州别管我地区。 再加上地广人稀,很多地方上的政府职能是缺失的,就是现在,美国警察还得既管交通又抓犯人。 所以当时的火险公司很大程度上承担了消防的职能,每家公司都是有自己的消防车救火队的。 火情扑灭及时的话,赔偿金额就可以减少,所以火险公司天然得有减少火灾发生降低火灾损失的动机。 这样就激发了一个群体的主观能动性,高效得创造了价值。 当然利益的驱使也会带来新的问题,比如没有投保的房子是救还是不救呢,救的话下次投保的人就有可能减少,不救的话社会道德上又说不过去。 不过这些问题总是有解决办法的,所以说火险还是很有效得降低了火灾对个人的危害,一直发展到了今天成为房屋综合险的一部分, 特别是在加州地区,火险在整个房屋险里面的比重相当大。

医疗责任险

之前看到有关医闹和魏泽西事件的相关报道,让人扼腕叹息。患者有患者痛苦,医者有医者的无奈。 所以下面我想说说美国的医疗责任保险(medical professional liability insurance)。 它是提供给医疗单位/个人提供的一种责任险,旨在投保对象(医疗单位)因为处置失当造成人身损伤时,由承保单位(保险公司)承担所有的赔偿, 包括后续的医疗费用,可能的人身财产损失,以及法律诉讼的相关费用。

美国有14个州强制或半强制要求医护从业者必须购买医疗责任险,其中7个州把这项保险作为行医资格的前提条件 (参考1)。 其实大多数美国正规医院都会以购买或者商业合作的方式给下属的医生护士提供这种保险。 保险公司根据投保对象所在的医疗行业/科室,从事职能,工作时长/时段,所在地区,教育程度,索赔上限,担保有效期等等,有一套十分细致的保费定价标准。

在相关医疗单位投保的前提下,如果有医疗事故发生,保险公司首先按照协议承担一切损失,之后再是冗长的责任认定过程,这时候,保险公司的优势就显现出来了。 保险公司设有专门的代理部门(subrogation),向可能的责任第三方,例如医疗器械/药物供应商,提出赔偿要求,甚至法律诉讼。 保险公司非常重视这个部门,我曾经给代理部门做过一个文本分析的模型,从数以万计的案件中筛选出更有可能成功向第三方索赔的案件。 这样,如何追回损失甚至获得巨额赔偿这样的事情,就从患者及其亲属的事变成了保险公司的事,由长期从事案件处理,且具备法律或者医学专业知识的人员接手, 毕竟在如此整合高效的资源面前,个人四处奔走的努力是非常渺小的。

有些人会有疑问,在有了医疗责任保险的情况下,医护人员难道不会更加肆无忌惮的玩忽职守、浑水摸鱼吗?其实不会。 相反,如果运行得当,医疗责任险也可以在一定程度规范医疗行业。 例如被反复热议的民营医疗,在进行医疗责任险的情况下,不断发生事故医疗单位或个人的保费会随之上涨,继而提高之前浑水摸鱼之辈的医疗成本, 甚至被各家保险公司拒绝提供保险服务,直接被剔除出医疗行业。与之相对,优质的医疗单位和个人的保险成本也会更低,盈利的空间也更大。

诚然,医疗责任险势必会增加医疗成本 (参考2), 但是我们不得不去思考,医患关系恶化带来的巨大社会成本,我们又如何回避呢? 而且就像之前介绍的那样,一般门诊医生的保费金额十分有限,分摊到患者头上就更是微小,而高危医疗行业的责任险成本也可以由病人的医疗保险承担。 另一方面,温情一些看,医疗责任险有点像募捐,集合社会资源救助因为医疗事故而遇到困难的人。 这也是保险的本质,集合资源应对未来的风险。

自然灾害险

最后我想聊聊自然灾害险(catastrophe insurance)。说它是保险并不准确,它其实是为了应对重大自然灾害这类巨大风险时的一种债券(bond)。 拿之前的纽约大火举例,一场大火烧了大半个纽约,这时保险分摊损失的功能就无法履行了,因为人人都面临了巨大损失。 而这样巨大的损失又不是单一公司所能承担的,所以那场大火拖垮了纽约几乎所有的火险公司。 面对这样的情况,就需要把风险进一步转移,稀释,最后消化在一个更大更强的市场里,那就是金融市场。 保险公司为了专门应对地震或者飓风带来风险,与特定金融机构(称为special purpose vehicle or SPV)合作, 发行自然灾害债券(catastrophe bond)给投资人。 如果风调雨顺,保险公司会把收到保费中的一部分拿出来作为债券利息支付给投资人。 如果小灾小祸不断,那支付给投资人的利息就会减少。真到大灾四起,投资人买债券的本金都会被保险公司拿去支付赔偿。

其实这一套玩法不只出现在保险领域。银行可用贷款的未来偿还作为抵押,发行债券给投资人,转移贷款无法偿还的风险。 举例来说你借了20万给隔壁老王,老王答应一年后除了这20万再多加1万作为利息还你。 但是你又担心万一老王跑路了怎么办,这时候门口的山炮跑来跟你说,不如你把未来的1万利息里面拿出2000现在给我,万一老王跑路了,我把他欠的20万还你。 这样你就用未来收益的一部分,对冲了老王跑路的风险。

这套玩法在信贷领域的马甲叫做信用违约互换(credit default swap),被认为是08年美国金融危机的重要推手。 因为山炮不只找了你,他还找了你哥,你姐,你的七大姑八大姨,他把你们所有人的CDS打了个包,再为这份打包之后的CDS搞了一份CDS。 山炮心里那个得意啊,即赚了差价,又有人给我接盘,知识创造财富诚不我欺。 如果一切太平,那大家都赚钱大家都开心,但是万一有个风吹草动,层层传递的风险链就会显得如此脆弱,任何一个小的违约都会引起连锁反应。 其实也可以把CDS看成一种变相保险:CDS卖方作为承保机构,答应在买方也就是投保人的某种资产贬值时提供补偿。 它与传统保险产品最大的不同就是,CDS买方可以没有承保资产的所有权,所以它在金融市场上是可以自由交易的。

有趣的是,无法还贷的风险不断增大时,CDS的价格反而快速攀升,因为大家都急着找人接盘嘛, 接盘的代价自然会水涨船高,这也是电影《大空头》(The Big Shot)里的那一帮人在经济危机前夜疯狂敛财的途径。 不过总的来说,把风险转移给庞大的金融市场还是十分有效的,只要不发生波及全国的自然灾害(金融危机的可能性倒是更大),就总能愉快得找到接盘侠。

2
大空头海报:蝙蝠贝爷,高司令,皮神,还有一位神偷奶爸声音的正主儿

介绍这些,只是提供一种视角:可能在某一领域,在当前社会框架下,保险制度是相对最节约社会成本的选择。 但是每种制度都有它自己的问题,自由经济也不是万能的。 看看美国,社会撕裂,人民生活水平倒退,制造业衰退,经济发展结构畸形,就可以看到经济社会单纯逐利的弊端。

保险与数据科学

首先我觉得,数据科学与保险行业是天然契合的,或者说保险行业是建立在数据科学的基础之上的。 因为这个行业不产生实体产品,所有的保险产品都是基于对未来的预测而创造出来的,而对未来的预测又必须建立在对历史趋势的总结之上。 保险产品的核心就是针对不同的危机,不同的人群,不同的自然经济环境,制定独有的定价系统。 而产品是否能盈利的关键就在于,不同人群面对不同危机时的风险是否可控。这就要求保险产品对人群的划分足够细致且有代表性,同时划分后的环境要足够稳定。 然后就可以利用统计模型来研究分析这一群体的历史损失,进行定价。很多统计模型在发明之初就被广泛应用在了保险领域,下面我就介绍一些最常用的模型。 不过在此之前我想先谈谈我个人对预测模型(predictive modeling)和计算机学习(machine learning)的一些认识。

预测模型顾名思义,主要关注对未来的预测,很多时候其数据包含了时间维度的变量。 不管是参数模型(parametric model)还是非参数模型(non-parametric model),它们在给出定量的预测之外,还可以提供一些其他的有用信息, 比如变量对模型预测能力的贡献及其排行。而这些信息对解决某些商业问题十分有帮助,比如推断客户购买决定的主导因素。 计算机学习很多时候却像一个黑匣子,特别是现在非常火的深度学习(deep learning)/神经网络(neural network), 得到的模型为什么在高维分类问题方面效果这么好,没人说得清是为什么,就像人很多时候也不知道为什么就特别喜欢这个颜色的包包,说不清楚,就是感觉舒服。

除此之外,计算机学习在数值运算和数据存储方面特别下功夫,因为最后模型是否有效通常直接取决于训练数据量是否足够大和算法迭代次数是否足够多。 而预测模型因为涉及到时间维度,更多的数据量并不一定对预测未来帮助更大,相较于使用三年的数据建模, 最近一年的数据往往可以给出一个对未来三个月情况的更准确预测,因为在这三年中,某些隐含的趋势发生了变化,而近期的数据往往更具有代表性。 所以深度学习这类模型在保险产品的核心,定价领域基本没有什么应用,但在市场营销,客户体验等方面还是有很多成功案例的。

而在定价领域用到最多或者说用到唯一的模型就是广义线性模型(generalized linear model or GLM)。 之前提到保险产品的价格是建立在预期损失之上的,不同的价格连接了不同的预期,而这些不同就反应在了定价参数上。 比如说某一地区私家车因为驾驶事故造成的车辆年平均损失是1000块,同时通过历史数据比较发现,20至25岁男司机造成的损失显著高于这个平均水平,达到了1800块。 那在定价的时候,20至25岁男青年的保费就需要多乘一个1.8的系数。实际中,这样的系数有几百个。 而它们都是通过GLM拟合得到的:以历史损失作为因变量(dependent/response variable), 自变量(independent variable)年龄中20岁到25岁这一层对应的系数(coefficient)就对应了一个价格系数,当然一般系数拟合后还需要进一步调整。

美国保险监管机构对整套定价系统有非常严格的要求,除了规定必须通过GLM拟合外,对哪些变量可以出现在定价系统中也有规定, 任何涉及到政治正确的东西都不能出现,例如一个地区的种族分布情况。保险公司想要更改或者增加价格系数必须经过严格的审批,这个过程往往需要好几个月。 所以现在美国的保险定价存在相当的滞后性,因为新的定价模型一般都是半年前拟合的,用的又是更早的数据。 在很多保险公司都存在的盈利周期,据说就是由这滞后性造成的。 此外美国各州政府又对定价系统有不同且繁琐的法律要求,各保险公司为应对监管所付的成本都是相当大的。 R里面我常用的GLM工具包是glmnet,之前我发过一篇文章,介绍了基本的应用和原理,有兴趣的朋友可以读一读 (链接)。

除了定价系统,GLM也被广泛应用在保险的其他领域,例如预测保单明年是否续约等等。 同时,新出现的一些预测模型,因为能提供更准确的预测,现在也被越来越多得应用在除定价领域之外的各个方面, 其中最典型的就是gradient boosting machine(GBM)。GBM的核心是树状模型(tree-based model), 它与random forest最大的不同就在于,random forest里每一个树都是相对独立的,而GBM的单个树状模型是基于上一个树的拟合结果而建立的,是一个渐进过程。 在一个分类(classification)GBM的迭代过程中,当前的树模型会集中关注造成过往树模型分类错误的数据,目标就是更进一步提高模型预测的准确度。 这就使得GBM往往可以把衡量模型预测能力的一些指标推到一个非常高的程度,让它在很多建模比赛里拔得头筹。 同时,GBM的拟合参数比较多,大多数的参数都在控制过度拟合(over-fitting)情况的出现,一个好的GBM模型往往需要大量的调试工作。 现在最好用的GBM软件包是xgboost,R/Python/Java都有各自版本,特点是提供了非常多可供调试的参数,拟合效率高。

3
一个树状模型(请原谅一名老DOTAer对LOLer的恶意)

但很多时候,相较于尝试各种模型,或者致力于调试模型参数,反而不如把时间花在收集更多数据和处理数据上。 这里“更多数据”有两层含义,一是数据量(行)的提升,这在互联网环境下数字化的今天已经不存在什么问题。 第二层就是指数据维度(列)的增加,它可以通过连接或者创建其他数据源来达到,或者在现有数据基础上进行衍生。

举一个车险报价系统的例子,顾客在网站上输入自己以及车辆的基本信息,并指定保险理赔的金额上限后, 网站就会反馈出这份保单的价格,由顾客比较之后决定是否投保。对于是否投保的预测,价格显然会是一个主导因素。 如果能收集到顾客以前花了多少钱在车险上,那模型的预测能力一般会有显著提升。在模型中加入这个历史价格和现在报价的比值,还可以进一步提升模型效果。 当然有时历史价格是收集不到的,比如新车新司机,此时可以应用商业知识进行合理猜测,例如地区均值。 甚至还可以对历史价格单独建模预测,再把这个预测值作为变量加入到是否投保的预测模型中去,同时引入另一个自变量标定这是预测指。 此外还有一些专门的统计方法用来处理缺失数据(missing value imputation), 常用的R软件包有softImpute(using soft-threshold single value decomposition), mice(using chained equation), DMwR::knnImputation(using k-nearest neighbors)。

好了,关于模型的介绍就先写到这里。之后我会尽量抓紧时间把之前计划的,关于xgboost的文章攒好。 拖了这么久,确实有些惭愧。最后感谢大家的阅读,有任何问题都欢迎留言,或者一起聊聊天。

发表/查看评论