• 风控模型效能提升的秘籍,这三种相关度的处理方法用好就对了


    在建模过程中,为了提升模型训练的性能与效率,我们往往会对特征变量进行筛选,而特征相关性分析是其中一个方法。由于特征相关性分析的原理逻辑简单,且实现过程方便,已经默认为特征工程的一项“标配”环节。但是,对于建模样本的特征相关性分析,我们经常看到也比较熟悉的可能有相关系数、卡方检验、方差分析、t检验、z检验等。当然,这些方法的应用是根据字段的变量类型、取值类型等维度来综合决定的。其中,相关系数法是我们最常见也是习惯性使用的,具体来讲,包括pearson相关系数、spearman相关系数、kendall相关系数等。虽然这三类相关性系数看似有一定区别,但我们常用的是pearson相关系数,甚至很多小伙伴只用pearson系数来评估数值型特征的相关性程度。显然,这并没有将特征相关性分析做到合理应用,其实pearson、spearman、kendall在原理思想与应用场景有着很明显的区分,主要体现在特征的分布类型,以及任务的分析目的。在这个场景下,本文围绕具体实例,来介绍下以上三种相关系数的特点分布与适用范围。

    在python环境中,通过pandas库的DataFrame.corr()可以很方便的获取特征的相关系数,只需要指定参数method的取值(pearson、spearman、kendall)。对于特征变量的相关系数结果,各类系数的取值范围为[-1,1],正值代表正相关,负值代表负相关,绝对值越大,相关性越强。根据特征之间的相关系数取值大小,可以进一步完成变量的筛选,在实际场景中也有一个习惯性但非严格的评估标准,具体如下:
    在这里插入图片描述

                                                                 图1 特征相关性评估
    
    • 1

    以上关于相关性程度的认定规则,在实际应用中并不是固定的,但大体上在这些取值范围,具体的变量筛选标准需要结合样本特征、建模需求等情况而定。在明确了特征相关性系数的应用背景后,接下来我们围绕具体的样本数据,来分别介绍下各个相关性系数的实现结果与特征描述。本文采用的样本数据包含5000条样本与7个特征,部分样例如图2所示,其中字段Var1~Var6为待分析的特征对象,具体特征字典如图3所示。
    在这里插入图片描述
    图2 样本数据样例


    在这里插入图片描述
    图3 特征字典

    1、相关系数概要
    根据以上样本数据,我们在python环境采用图4对应方法来获取特征变量之间的各类相关性系数(pearson、spearman、kendall),最终的输出结果分别如图5~图7所示。
    在这里插入图片描述
    图4 特征相关性实现


    在这里插入图片描述
    图5 特征pearson系数


    在这里插入图片描述
    图6 特征spearman系数

    在这里插入图片描述
    图7 特征kendall系数

      由以上结果可知,特征Var1~Var6在不同相关系数维度下的分布还是有着较明显区别,不仅体现在相关系数值的大小,而且部分字段相关性的正负关系也有差异。例如Var1与Var4,在pearson系数上是正相关(0.0311909),而在spearman与kendall是负相关(-0.0230693、-0.0198071),同时相关性的绝对程度也有一定差别。对于这种分布情形,虽然各类相关性系数的取值都具有一定意义,但我们要客观评定特征之间的相关性程度,最合理的自然是选择其中一个系数值类来分析,而这个认定标准则需要结合各相关系数的适用场景,以及我们待分析特征的取值类型。
    
    • 1

    2、系数对比分析
    特征相关性系数(pearson、spearman、kendall)由于原理逻辑的差异,在适用的特征情形也有明显区分,下面我们简单对此进行概况与描述。
    (1)pearson系数
    pearson(皮尔逊)相关系数,定义为两个特征变量之间的协方差和标准差的商,适用场景主要体现为:两个特征之间是线性关系,均为连续型数据;两个特征的总体呈现为正态分布,或接近正态的单峰分布;两个特征的观测值成对出现,且每对观测值之间相互独立。
    (2)spearman系数
    spearman(斯皮尔曼)相关系数,是用来衡量特征的等级相关性,系数检验的本质不是数据之间的关系,而是数据排名之间的关系。spearman相关系数对数据条件的要求没有pearson相关系数严格,只要两个特征的观测值是成对的等级评定数据,或者是由连续变量观测数据转化得到的等级数据,无论两个特征的总体分布形态、样本容量的大小如何,都可以采用spearman相关系数来进行分析。
    (3)kendall系数
    kendall(肯德尔)相关系数,是用来测量两个随机变量相关性的统计值,肯德尔检验是无参数假设检验,通过算出的相关系数去检验两个随机变量之间的分布依赖性,kendall相关系数与spearman相关系数对特征数据条件的要求相同。
    对于以上三个相关性系数,pearson与spearman是更为常见的,这里需要注意的是,pearson相关系数是度量特征之间线性关系,而spearman 相关系数是度量特征之间的单调关系,二者在实际应用场景的情形简单概况如下:
    (1)pearson系数评估的是两个连续型特征之间的线性关系,当其中一个特征变量的变化与另一个变量的成比例变化相关时,这两个变量具有线性关系。
    (2)spearman系数评估两个连续型或顺序型特征之间的单调关系,在单调趋势体现中,特征变量分布倾向于同时变化,但不一定以不变的速率变化;spearman 相关系数是根据每个变量的秩值而并非原始取值来计算的,通常用于评估顺序等级变量的相关程度。

    3、系数应用实现
    结合本文样本数据的特征字典信息(图3),可知特征Var1(电商平台会员等级)与Var4(营销价值度)是等级顺序型变量,而其余特征为连续型特征,如果要更合理分析特征之间的相关性程度,对特征Var1、Var4采用spearman系数来分析,而Var2、Var3、Var5、Var6采用pearson相关系数来分析。当然,在实际场景中也可以采用不同系数方法对所有特征来全面分析,但具体评估过程需要结合特征的取值分布类型来量化特征之间的线性关系或单调关系。
    下面我们针对本文样本数据,采用三种不同方法(pearson、spearman、kendall)来实现特征变量之间相关性系数的可视化结果,具体实现过程如图8所示,输出的可视化效果如图9~11所示。

    在这里插入图片描述
    图8 相关系数可视化实现


    在这里插入图片描述
    图9 pearson相关系数可视化


    在这里插入图片描述
    图10 spearman相关系数可视化


    在这里插入图片描述
    图11 kendall相关系数可视化

    通过以上各相关系数的可视化结果,可以很直观的了解到特征变量之间的相关性程度,便于快速分析样本特征的整体相关性分布情况,而对于特征筛选的阈值确定,是需要结合具体场景而定。例如,当样本特征较多时,可以考虑将相关性系数的筛选阈值设置较严格些(比如0.5);当样本特征较少时,则考虑将筛选阈值设置较宽松些(比如0.7)。此外,对于不同特征的取值分布类型(连续型、有序型等),则要分别对应更合适的相关性系数结果来综合评估。
    综合以上内容,我们围绕具体样例,具体介绍了特征相关性三大系数(pearson、spearman、kendall)的应用场景及其特点,并通过实际样本数据展现了特征相关性系数的可视化图。为了便于大家对特征相关性系数的进一步熟悉与理解,本文额外附带了与以上内容同步的python代码与样本数据,供大家参考学习,详情请移至知识星球参考相关内容。
    在这里插入图片描述

    更多内容,有兴趣的童鞋可关注:

    在这里插入图片描述

    ~原创文章

  • 相关阅读:
    C++深入学习part_2
    Linux-网络配置、管理与基本应用
    【推送服务】【FAQ】Push Ki常见咨询合集7--其它问题
    Kafka - 消息队列的两种模式
    AWT中常用组件
    【安装笔记-20240529-Windows-Electerm 终端工具】
    网络代理技术:保障隐私与增强安全
    SpringBoot和Vue实现用户个人信息展示与保存与集成JWT——基于SpringBoot和Vue的后台管理系统项目系列博客(十四)
    传统IT人的崩溃瞬间……
    基于vue的移动端如何监听系统返回
  • 原文地址:https://blog.csdn.net/weixin_45545159/article/details/126513965