相信很多小伙伴们都玩过狼人杀的游戏,今天,作者将从狼人杀这款游戏出发,来和大家一起谈讨下数据与模型。
数据挖掘1:谁是狼人
玩过狼人杀的小伙伴们知道,狼人杀的魅力就是妥善利用各种信息,并加以推断,找到狼人玩家。对于新手而言,拿到狼人牌后,多半会显得紧张、结巴、语无伦次,甚至直接会在话语中暴露出狼人身份,坐实狼人身份。
而高玩在拿到狼人牌时,会很好隐藏自己身份,使得普通玩家难以判断。那么问题来了,谁是狼人?
现实中,这样的“狼人”并不少见。
在信贷场景下,借贷者借钱后可能会恶意逾期不还,成为一个“狼人”。
“引狼入室”是借贷机构所不愿见到的,因此他们也想出了一些办法来识别借贷者的身份,比如人工验证借贷者的学历、收入、征信等信息。一段时间后,机构开始顶不住了,借钱的人太多了,审核不过来。而且由于审核方式单一,很多“狼人”巧妙利用各种方式通过审核,继续坑钱。
虽然一定程度上可以对审核规则进行更新,但“狼人”总能找到新的缺口,通过审核。这可愁坏了借贷机构,这造成的损失谁顶得住啊!
模型本质2:机器学习
不过,再会玩的狼人都会在言行上透露出狼人的本质。他们一言一行中总会给出细微但有价值的信息,积少成多,最终帮助我们揪出他的狼尾巴。只是,我们如何利用好这些信息呢?
随着大数据的崛起和机器学习的应用,借贷场景下的“狼人”开始无所遁形,我们可以掌握其更多维度的信息,帮助我们去判断借贷者的好坏身份,比如app安装偏好、地理位置等信息。
然后合理的运用机器学习建模方法,就可以将这些信息妥善利用起来,让“狼人”露出原形。这可乐坏了借贷机构,终于有解决办法啦!
模型3:逻辑与统计的胜利
狼人杀本就是个逻辑推理游戏,需要参与者能够准确抓住那些有助于我们判断的信息,并理性、客观地分析,最后找到狼人。只有这样,我们才能锻炼出“神预言家”的能力,并在不同对局中,都能准确找到“狼人”。
模型的运作就像一个机械化工厂,不同于人工审核(手工作坊)的方式,它更精密、准确,面对海量、多维度、弱特征的信息(如网络行为特征、地理信息等)时,仍可以高效率完成判别,大大提高工作效率,并且保证质量。
模型基础之一4:数据
纸上得来终觉浅,绝知此事要躬行,光知道玩法是不行的。
要想成为狼人杀推理高手,最重要的就是多玩、多分析。一方面,要进行大量对局,加深我们对狼人杀游戏玩法的理解;另一方面,也要和不同的人对局,获得足够多的玩家信息,便于我们了解玩家。
同样的,模型再好也需要数据支撑,数据的好坏是决定模型效果的最重要一环。一般情况下,对于已有的海量数据,我们都需要进行处理,如填补变量缺失值、组合变量、衍生变量等。
1. 特征筛选
由于狼人杀局内信息繁多,我们只需要挑选比较有价值的信息进行分析,场外信息和无关信息需要过滤,否则会降低我们分析的严谨性和可信度,从而不被其他玩家信任,这对于自诩“高玩”的我们肯定是太不能接受了。
游戏尚且如此,建模就更不能马虎了。建模中,必须要对样本特征进行严格的筛选,把对业务上有解释意义的变量纳入模型。
否则,面对你的建模结果,别人会一脸渴(meng)求(bi)地问:身高怎么就对一个人的逾期率产生了影响?实际操作中,我们会对诸如手机号、设备所在经纬度这样的变量进行剔除,选择个人兴趣偏好、多头得分等有解释意义的变量进入模型。
2. 样本与标签选择
苦练之下,终有所成,我们的狼人杀技术已经相当厉害了。正准备一展才华时,才发现他们要玩斗地主。慌乱之下,被地主打的落花流水,郁闷难当。
总结经验,就是先明确要玩什么,再去做准备。
建模也是一样。我们的建模是基于信贷场景下的。并且,根据不同的业务需求,建模所需准备也不同。对于贷前、贷中和贷后三个场景,我们对于“狼人”的定义和认知也是不同的。
贷前阶段,我们不知道借贷者是否是“狼人”,只是用模型去判断他的身份,避免“引狼入室”,但总会有遗漏;贷中和贷后阶段,我们发现了那些溜进来的“狼人”,这时,就需要对他们坏的程度进行确定,以采取进一步的手段和措施。
这里,发现“狼人”和判断“狼人”有多坏需要用到不同维度的信息,这就要求在建模中要选择同业务需求相一致的样本数据。
模型基础之二5:算法
终于,我们愉快的进行了几场狼人杀游戏。并且发现,每个人的思考逻辑、分析角度都不太一样。有的人只根据当前轮次的发言进行分析,有的人则倾向于将多轮次的发言综合起来分析,也有人选择划水,使得分析的结果也各不相同。
面对同样的业务需求,我们也可采用不同的建模方法。当然,不同建模方法之间互有优劣,具体如何采用,需要结合实际,妥善选择。信贷建模最为常用的当属LR,但其在大数据应用方面稍显逊色。实际中,我们更倾向于使用GBDT进行建模。
模型评估6:谁是“神预言家”
愉快的时光总是短暂的,游戏结束了。但这是否是几场高质量的对局?谁会是那个“神预言家”?
一般而言,需要通过多次对局、甚至和不同玩家多次对局才能判断玩家的推断能力。该玩家在某局推测的准确性多高?是否在不同局中都能保持这样的准确率?
模型完成后,也需要验证其准确性和稳定性,看它在其他样本(测试集、跨时间窗口样本)上的效果是否准确、稳定。
如果效果不好,则需要考虑重新调整样本(变量再筛选、再组合等)、模型参数,直到模型表现好为止。很多时候,这并不是一蹴而就的事,需要多次反复进行。
模型之痛7:巧妇难为无米之炊
经过废寝忘食的练习,我们终于成为了狼人杀高手。本以为会在游戏中练就火眼金睛,铲除狼人,带领队友走向胜利,却发现,己方全是“猪队友”,身为平民的我,无法获取足够信息,导致判断失误,痛输对局。或许此时,我们已经不能再玩低端局了。
虽然我们可能对建模方法的使用了如指掌,但没有足够有效的数据,我们也很难训练出一个好的模型。当前虽然是大数据时代,但对于很多小微企业、甚至很多大企业而言,如何获得数据都是他们所无法解决的痛点,即便掌握优秀的建模技能,但缺乏数据验证,也难以做出好的模型。