其他分享
首页 > 其他分享> > 写在赛前的胡思乱想

写在赛前的胡思乱想

作者:互联网

这是一篇写在赛前的准备:

(实际上现在赛后回过头来看,当时查的这些资料绝大部分还是有用的,只是自己的python编程能力有所退步,想到了一些数据处理以及验证方式,也做了尝试,但最终没有用起来。但我还是考虑把这篇word贴上来,留个档)

题目是通过基本信息和历史数据,预测客户下个月会**新增**持有信贷类产品还是财富类产品。

先明确一下题目定义:用户持有的贷款等信贷类产品,对于银行是资产类业务。而用户持有的财富类产品,例如民生银行的如意宝,对于银行为负债类业务。

 

那么大致思考一下题目逻辑:

 

用户的基本信息中比较重要的特征肯定有用户的收入、支出、包括用户的历史产品持有性质

 

那么如果用户本月获得大额收入,并且原本持有信贷类产品,则可以考虑用户下个月会按时、或者提前还款,甚至增持财富类产品。

如果用户本月获得大额收入,并且原本持有财富类产品,则可以考虑用户下个月会增加财富类产品持有量。

 

如果用户本月生成大额支出,那么则需要考虑下个月财富类产品减持、或者信贷类产品增持。

 

 

查了一下特征工程的技巧,本次比赛需要注意:[特征工程技巧](https://www.cnblogs.com/pinard/p/9032759.html)

1)注意方差筛选:即方差越大的特征,那么我们可以认为它是比较有用的。如果方差较小,比如小于1,那么这个特征可能对我们的算法作用没有那么大。最极端的,如果某个特征方差为0,即所有的样本该特征的取值都是一样的,那么它对我们的模型训练没有任何作用,可以直接舍弃。在实际应用中,我们会指定一个方差的阈值,当方差小于这个阈值的特征会被我们筛掉。sklearn中的VarianceThreshold类可以很方便的完成这个工作。

2) 计算寻找高级特征:

寻找高级特征最常用的方法有:

若干项特征加和: 我们假设你希望根据每日销售额得到一周销售额的特征。你可以将最近的7天的销售额相加得到。

若干项特征之差: 假设你已经拥有每周销售额以及每月销售额两项特征,可以求一周前一月内的销售额。

若干项特征乘积: 假设你有商品价格和商品销量的特征,那么就可以得到销售额的特征。

若干项特征除商: 假设你有每个用户的销售额和购买的商品件数,那么就是得到该用户平均每件商品的销售额。

添加时间序列:加入1-3月 4-6月 7-9月 10-12月/工资日/节假日

在比赛中即为:

计数:过去一年贷款、购买理财产品的次数

求和:过去一年内购买理财产品的消费总额、贷款总额

比例:贷款申请额度和年收入的占比

时间差:第一次开户距今时长

波动率:过去3年内每份工作的时间的标准差

 

3)注意特征衍生:[参考文章](https://www.jianshu.com/p/c7508915a2e1):里面有举例,讲得很清楚

在进行特征衍生的过程中,我们可以分别从 3个角度去分析:购物者、商品、购物者和商品的关系。

一 购物者。购物者是购买行为的发起者,在日常生活中,我们几乎每天都要进行不 同次数的购物行为二每个独立的人都有自己的性格,都有自己的行为方式。在购物方面, 可能有的人很喜欢买东西,有的人不喜欢买东西,有的人喜欢点击各种商品但是不买,有 的人点了产品就一定会买等,这些行为特点都可以通过特征衍生量化表示并且带入算法去计算

 

二 商品。相较于人的个性多样性,商品的属性显得较为单一。商品的特点主要可以 通过3方面来刻画,分别是产品的产品热度、季节因素和产品的消耗频率。产品的热度该怎么理解呢?产品的热度可以看作产品的受欢迎程度。比如一款产品被点击的次数很多或者被购买了很多次,那么就可以通过一个特征来表示这个产品的受欢迎度。这个指标可以通过两种方式来获得,一种是计算这个商品的总被购买量,另—种就是首先算一下全部产品的总购买量然后求平均值,通过总购买量和平均值的对比进行打标

 

三 购物者和商品关系。购买者和商品之间的关系特征是最难被衍生出来的,这个特征主要表示的是特定用户对特定产品的喜爱程度。这里举一个简单的例子,假设小美看上了一条连衣裙,但是因为价格太贵,小美一直没有下定决心要买,于是小美就每周都会点击这条连衣裙的店铺.等待店铺促销或者这条连衣裙打折出售的时候入手。这种行为其实并不少,我们可以通过一个特征来刻画。这个特征就是用户A对产品B的点击频率,可以统计每个月A对B的点击数量,这是一种用户和商品的对应属性特征。

 

4)特征的分箱:[参考1](https://blog.csdn.net/qq_42642945/article/details/88676219),[参考2](https://blog.csdn.net/XindiOntheWay/article/details/81840747)

分箱好坏指标:WOE和IV

分箱之前要切分,通常50-100个切分点,看数据量的大小,最最最重要的,千万不要用等距划分,因为比如收入、年龄这些字段成偏态分步,数据没有平均分布,要用等频划分。

类别变量,类别较少,就不用在分箱了。

如果有那个类别是全部为坏样本,需要和最小的不是坏样本的合并一下,因为不合并等会WOE不能计算了。

补充:类型数在2类之上,又不是高维稀疏的,且纯分类特征,可以采用one-hot变量。此外在一般比赛中,可以尽量少使用热编码,因为热编码膨胀了数据量,在选择变量是不是进入模型当中去,也是存在问题了。业务方面的解释性也差,没直接的业务逻辑关系。除非没变量的时候,可以考虑用一下。

 

 

别人的特征

(一)[互联网金融信贷业务比赛](https://blog.csdn.net/datawhale/article/details/97857881)

 

1. 常规统计特征

 

用户当前标的属性(期数,费率,总金额)历史

 

借款距当前最小天数/最大天数

 

借款日/还款截止日dayofweek, dayofmonth

 

每日平均还款金额

 

全部历史账单统计

 

历史1期/2期/3期账单统计

 

周1/5/6/7还款次数

 

1/5/6/10/11/15/16/20/21/25/26日还款次数

 

2. 历史滑窗特征

 

近3/6/9月订单数、订单金额、提前还款日期统计

 

近3/6/9月首逾记录、截止日还款记录统计

 

用户近3/6/9/12个月标的期数统计值

 

用户近3/6/9/12个月标的费率统计值

 

用户近3/6/9/12个月标的总金额统计值

 

近3/6月标的期数/费率占6/9/12均值的比例

 

当前金额占近3/6/9月均值比例

 

用户近7天行为数、白天夜晚行为数

 

用户近15天行为1数、2数、3数

 

3. 用户画像特征

 

性别、年龄、身份证和id是否同一个省

 

注册时间据放款时间的月数

 

提取占比最多的几个城市

 

使用lgb训练所有用户画像,y为截止日还款和是否逾期,将预测概率作为特征

 

通过IV筛选最高的若干tag作为模型输入

 

使用tfidf对tag编码

 

4. 其它重要特征

 

这部分也是需要着重介绍的,也是很大选手没有考虑到的,“用户未来所面对的压力”,这会影响到用户未来还款情况。

 

用户未来一个月需还的标的数、金额(由历史记录推测)

 

用户未来一个月其他标的还款截止日距当前标的截止日的日期差(先借先还原则)

 

借款日到最近农历春节的日期差

 

其它部分

 

还款截止日到历史最近的1/5/6/10/11/15/20/21/25/26日的日期差(推测可能的工资日)

 

用户历史标的时间间隔

 

...

标签:类产品,特征,购物者,用户,还款,胡思乱想,销售额,赛前
来源: https://blog.csdn.net/u010737756/article/details/113404753