01空间表示在学习深奥的机器学习理论之前,先介绍一下机器学习中最基本的一些概念。特征:对特定事物的属性描述,用属性向量表示。第j条记录xj的属性向量可以表示为:xj=(xj(1),xj(2),...,xj(i),...,xj(n)),j=1,2,...,N,xj∈X其中每个xj(i)是特征维度上的值。标签:又称样本标签,用于描述事物的某种特征。标签值:标签的值。在二元分类问题中,取值通常为0和1。标注空间(outputspace):所有标签的集合,记为Y。样本(Sample):也称为样本。具有相应标签的记录,由(record,tag)对表示。例如,第j个样本可以表示为:(xj,yj),j=1,2,...,N,xj∈X,yj∈Y假设空间F通常是一族由下式确定的函数a参数向量:F={f|Y=fw(X),w∈Rn}其中,参数向量w在n维向量空间Rn中取值,称为参数空间。假设空间F也可以定义为一组条件概率(概率模型):F={P|P(Y|X)}其中X是定义在输入空间X上的随机变量,Y定义在随机变量的输出空间Y。上面的公式理解起来可能比较抽象,接下来我们用一个实际的例子来理解相关概念。首先,在建立模型之前,必须有一个由多个样本组成的样本集,例如:(用户A,{年龄:29,身高:185,年收入:70,婚姻状况:未婚,状态:逾期})(用户B,{年龄:24,身高:167,年收入:31,婚姻状况:已婚,状态:未逾期})(用户C,{年龄:46,身高:177,年收入:50,婚姻状况:离婚),status:notoverdue})...每个用户及其属性称为样本(或观察)。这样一系列的用户和他们自身的属性构成了一个样本集,其中用户“A”、“B”、“C”构成了一个样本空间,“特征年龄”、“身高”、“年收入”和“婚姻状况”status”构成一个特征空间。另外,还有一个空间叫做参数空间,是由构成预测函数的参数的所有值组成的空间。“status”字段表示样本的标签,是模型需要判断的结果。在这个例子中,特征空间有4个值:年龄、身高、年收入和婚姻状况。这4个值代表特征空间中的4个维度,或者说这个特征空间的维度是4。在良好的假设下,模型期望每个特征互不干扰,但在现实中,通常是有关系的每个功能。例如,我们可以绘制两个维度(年龄和身高)。当我们处于年轻的时候(即0到8岁),我们可以清楚地观察到身高的值随着年龄的增长而增加,如图3-1所示。▲图3-1变量相关性示例。婚姻状况特征可能是{未婚,已婚,离婚},那么这三个值就限制了特征空间在婚姻状况维度的取值。如果数据中只有{unmarried,divorced}两个取值的样本,则说这个数据集不能完全代表它所在的样本空间,即在它的一个特征维度上,一些取值没有被观察到,也不能很好地观察到特征在这个维度上的真实分布。通过观察到的样本点,只能表示阴影部分的空间,如图3-2所示。▲图3-2空间表示示例02模型学习模型训练(又称学习或拟合)是指将数据传入模型,使模型学习数据的潜在规律(如数据的分布)的过程).构建模型的本质可以理解为从数据分布中抽象出一个决策函数。决策函数(非概率模型)定义为从输入空间X到输出空间Y的映射f:X→Y。假设空间F定义为一组决策函数,其形式如下:F={f|Y=f(X)}其中X是定义在输入空间X上的变量,X∈X;Y是定义在输出空间Y上的变量。当你想预测一个离散值时,比如一个人是男性还是女性,或者用户是否会还钱,这个任务就叫做分类。相应地,如果你想预测一个人的年龄,或者用户未来哪一天会还款,这样的任务就叫做回归。当一个任务只有两个值时,它被称为二元分类任务。记分卡模型是一个典型的二元分类任务,即预测用户是否会逾期。当任务涉及多个类别时,称为多类别任务。一个典型的例子是在做欺诈检测时预测用户是否有欺诈行为。这看起来是一个二分类任务(预测是否作弊),但实际上用户的作弊方式是不同的,每一种作弊方式都是一个单独的类别,所以本质上是一个多分类任务。从数据是否标注的角度,模型可以分为三类:监督学习(SupervisedLearning,SL)、半监督学习(Semi-SupervisedLearning,SSL)和无监督学习(UnsupervisedLearning,UL)。).监督学习是指在应用计分卡的建模中,样本集中每个用户的标签已经明确知道,即如果随机选择一个人,则可以知道他的逾期状态。无监督学习是指在建模的时候,根本没有当前样本集的标签信息,也就是完全不知道谁超期了。半监督学习介于两者之间。对于当前样本集,一部分样本的标签是已知的,另一部分不知道是否过期。一般来说,模型的效果排序是:监督学习>半监督学习>无监督学习在大多数情况下,尽可能使用标签信息,这样得到的模型会更好。但很多时候,要不要贴标签,并不是由个人决定的。比如很多平台都没有骗取用户的标签。这时候训练一个有监督的模型就非常困难了,半监督和无监督学习可以起到一定的作用。03模型评估对于模型学习的结果,主要关注两个问题:欠拟合和过拟合。欠拟合是指模型的拟合程度不高,数据与拟合曲线相距甚远,或者模型没有很好地捕捉到数据的特征,不能很好地拟合数据。也就是说,模型在学习过程中没有掌握好它应该掌握的知识,模型学习的偏差比较大。过拟合是指为了得到一致的假设而使假设过于严格,即模型学习过于详细,将某些个案的特征当作共性,使得模型的泛化能力较低。图3-3很好的解释了过拟合和欠拟合的含义。图a表示欠拟合,图b表示拟合良好,图c表示过拟合。通俗的理解,过拟合就是模型学得太仔细了,欠拟合就是模型学得太粗糙了。▲图3-3拟合优度模型越复杂,越容易过拟合。样本量越大,数据分布越充分,模型越不可能过拟合。为了更好地表示过拟合和欠拟合,建模时通常将样本集分为训练集(Train)和测试集(Test)。训练集是用来带入模型训练的集合,测试集主要是在模型训练好后对模型进行测试,验证模型的效果。一般认为,在训练集上表现良好但在测试集上表现不佳的模型存在过拟合的风险;而在训练集上表现明显比测试集差的模型有欠拟合的风险。在训练一个模型的时候,我们不仅希望模型在训练集上表现的足够好,也希望模型在其他数据集上表现的好。在训练集上的性能与在测试集上的性能之间的差异称为泛化误差,泛化误差由三部分组成:偏差、方差和噪声。偏差衡量的是模型的预期预测与真实结果的偏离程度,即模型本身的拟合能力。方差衡量的是相同大小的训练集变化引起的学习能力的变化,即数据扰动的影响。噪声表征了拟合问题本身的难度。图3-4显示了训练度和误差之间的关系。▲图3-4训练度与误差通常在离线模型训练完成后,最终模型上线前,会对测试集和训练集进行整合,对模型的系数进行重新拟合,得到最终模型。这是因为人工数据集越大,样本空间的表示可能越好。一些曝光不足的特征值对应的标签分布可能在数据量增加时有更高的曝光率。比如上一个例子中的数据集如下:(用户A,{年龄:29,身高:185,年收入:70,婚姻状况:单身,状态:逾期})(用户B,{年龄:24,身高:167,年收入:31,婚姻状况:已婚,状况:未逾期})(用户C,{年龄:46,身高:177,年收入:50,婚姻状况:离婚,状况:未逾期})...if训练集中有一个婚姻状况的值没有得到,只存在于测试集中。那么当测试集和训练集结合得到最终模型时,预测未来用户的偏差会更小。但是有些模型,比如极限梯度提升机(eXtremeGradientBoosting,XGBoost),需要使用测试样本集来实现训练过程的提前停止,所以需要选择一些样本不参与训练,比如从原始训练集中选择少量样本作为早停依据。作者简介:梅子兴,资深风控技术专家、AI技术专家和算法专家,曾在多家知名金融科技公司担任算法研究员和数据挖掘工程师。师从Experian、Discover等公司资深风控专家,擅长深度学习、复杂网络、迁移学习、异常检测等非传统机器学习方法,热衷于数据挖掘和跨域优化实践的算法。毛新宇,资深品牌视觉设计师、插画师。曾在国内知名文旅公司担任品牌设计师,设计打造知名文旅目的地及品牌设计案例。本文节选自《智能风控:Python金融风险管理与评分卡建模》,经发布者授权发布。
