之前讲了很多关于数据建模的场景,让人感觉大数据分析就是配合模型创建API供应用调用的事。但其实大数据分析要远比想象的复杂。
以风控模型为例,需要经历
- 数据集采集
- 风险定义
- 特征工程
- 机器学习模型选取与优化
- 本地化部署
在数据集采集需要考虑哪些是反映用户信用等级的数据,包括用户的按揭贷款、信用卡账单、损益表以及可预测的消费行为。当然评测机构也有用户的一般个人信息,包括年龄、工作、职位等等。结合信用信息和个人信息,评测机构可以建立一个涵盖数千特征值的个人参数表。
接下来是风险定义,简单地说就是用户的经济状况,比如用户在过去的数月中是否有按揭贷款或者信用卡未偿还的情况,根据这一情况标记风险。当然评估维度可以有很多,比如失业金账户的余额变更情况,医疗支出等等。
接下来是特征工程,这个过程包括了衔接原始数据的数据清洗工作,清洗不光是“清理”,将错误或异类的数据剔除,更多的是为空值添加分类,为稀有值添加分类以及将每一个分类转换为数值:比如周一到周日转换为1到7,当这一分类有统计意义的时候(例如学生连续5天缺课的日期分布情况)。
分类完成后或在已有的数值属性中有空值,我们需要继续量化,对于空值,可以将其转变成在正态分布(泊松分布或其他分布模型)之外的值;对于线性模型中超出分布的值,将其转换为分布的末端值。
接下来进入变量的预处理,包括归一化--即将有量纲的表达式,经过变换,化为无量纲的表达式,成为标量,以及对某些数值取模,取平方以备后续的调用。
最后是选取特征,一般考虑到计算性能,几十个变量是GPU高频计算的极限(其实最好控制在20以内),通过随机森林算法(RFE),XGB迭代式特征消除法可以有效减少不必要的特征。
在特征工程完成后,很多情况下机器学习的部分都可以自动完成。对于一个有监督学习的案例库,告知模型目标成功率、选取参数和算法以及参数即可自动得出适合银行风控的算法模型。
最后是将算法模型部署到银行系统中,这一部分的工具有很多,这里就不做过多赘述了。
总的来说,风控系统AI模型的主要工作还是在特征工程上,其实绝大多数的AI的工作重点都是特征工程,以保证输入的有效性,无论是有监督算法还是无监督算法,而人们普遍认识的却是AI的主要工作在于数据建模,这其实是与实际情况有偏差的。