• 机器学习之IV编码,分箱&WOE编码


    IV的概念与作用

    全称是Information Value,中文的意思是信息价值,或者信息量
    
    • 1

    作用:

    1、构建分类模型时,经常需要对特征进行筛选。
    2、挑选特征的过程考虑的因素比较多,最主要和最直接的衡量标准是特征的预测能力,而IV就是用来衡量自变量(也就是特征)的预测能力
    IV需要用到WOE,而WOE是建立在分箱之上的
    
    • 1
    • 2
    • 3

    分箱:

    数据分箱:是一种数据预处理技术,用于减少次要观察误差的影响,是一种将多个连续值分组为较少数量的“分箱”的方法。也就是将连续特征变成离散化特征。
    分箱需要用到cut或者qcut
    cut是等距分箱,为qcut是等频分箱
    
    • 1
    • 2
    • 3

    使用如下:

    import numpy as np
    import pandas as pd
    # 得到哟组连续型变量
    ages = np.linspace(1, 59, num=50)
    print(ages.shape)
    # 使用分箱对连续型变量进行离散化,bins表示的分组的个数
    ages_cut = pd.cut(ages, bins=10, labels=['A','B','C','D','E','F','G','H','I','J'])
    # 输出分箱后的结果
    print(ages_cut)
    print(ages_cut.value_counts())
    # 等频分箱
    ages_qcut = pd.qcut(ages, q=10)#q表示的箱子的个数
    # 等频分箱的结果
    print(ages_qcut)
    print(ages_qcut.value_counts())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    输出结果:

    (50,)
    ['A', 'A', 'A', 'A', 'A', ..., 'J', 'J', 'J', 'J', 'J']
    Length: 50
    Categories (10, object): ['A' < 'B' < 'C' < 'D' ... 'G' < 'H' < 'I' < 'J']
    A    5
    B    5
    C    5
    D    5
    E    5
    F    5
    G    5
    H    5
    I    5
    J    5
    dtype: int64
    [(0.999, 6.8], (0.999, 6.8], (0.999, 6.8], (0.999, 6.8], (0.999, 6.8], ..., (53.2, 59.0], (53.2, 59.0], (53.2, 59.0], (53.2, 59.0], (53.2, 59.0]]
    Length: 50
    Categories (10, interval[float64, right]): [(0.999, 6.8] < (6.8, 12.6] < (12.6, 18.4] <
                                                (18.4, 24.2] ... (35.8, 41.6] < (41.6, 47.4] <
                                                (47.4, 53.2] < (53.2, 59.0]]
    (0.999, 6.8]    5
    (6.8, 12.6]     5
    (12.6, 18.4]    5
    (18.4, 24.2]    5
    (24.2, 30.0]    5
    (30.0, 35.8]    5
    (35.8, 41.6]    5
    (41.6, 47.4]    5
    (47.4, 53.2]    5
    (53.2, 59.0]    5
    dtype: int64
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31

    什么是WOE?

    WOE全称Weight of Evidence,也就是证据权重的意思,WOE是对原始特征的一种编码形式。要对一个特征进行WOE编码,需要首先吧这个变量进行分组处理(也叫离散化,分箱等等。),分组后,
    
    • 1

    WOE计算公式

  • 相关阅读:
    【从零开始学习 SystemVerilog】9.5、SystemVerilog 杂项—— file operations(文件操作)
    UniAPP优美地实现多图片上传、多行文本输入框以、单选框
    RuoYi_Cloud本地搭建
    [附源码]Python计算机毕业设计Django动漫电影网站
    【数字识别】基于DBN实现minist数据集手写数字识别附matlab代码
    @Valid和@Validated在service层的分组校验
    linux复习笔记01(小滴课堂)
    聊聊 JS 断点的实现
    Windows上搭建一个网站(基本生产环境)
    echarts实现横向和纵向滚动条(使用dataZoom)
  • 原文地址:https://blog.csdn.net/qq_38404903/article/details/134091121