基于用户行为的黑产识别

一、背景介绍

随着互联网+这一概念的不断发展,电商、出行、外卖等行业近些年也持续发展壮大,越来越多的商家进入这一市场。为了在激烈的竞争中拉取新用户,培养用户的消费习惯,各种类型的营销活动和补贴活动也是层出不穷。在为正常用户带来福利的同时,也催生了一批专注于营销活动的“羊毛党”。目前,羊毛党的行为越发专业化,团伙化和地域化,同套利黑产团伙的斗争,是一场永无止境的攻防战。机器学习模型是风控系统中实时识别和对抗黑产攻击的有效手段。面对黑产攻击手段快速多变,黑样本数据标签缺失等问题,目前除了LR,RF等耳熟能详的机器学习模型,基于RNN的深度学习模型,无监督学习模型等技术也被应用到同黑产的对抗中。
本文通过训练学习用户在消费过程中的关联操作、交易详单信息,来识别交易风险。

1.1数据来源
https://www.dcjingsai.com/common/cmpt/2018%E5%B9%B4%E7%94%9C%E6%A9%99%E9%87%91%E8%9E%8D%E6%9D%AF%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%BB%BA%E6%A8%A1%E5%A4%A7%E8%B5%9B_%E7%AB%9E%E8%B5%9B%E4%BF%A1%E6%81%AF.html

1.2 数据集基本情况简介
operation:用户操作详情表单,训练集共1460843条数据,测试集共1140578条数据。
在这里插入图片描述
transaction:交易详情表单,训练集共共264654条数据,测试集共128382条数据
在这里插入图片描述
1.3 总体思路
本项目主要构建了两类模型,一类是基本特征模型,主要提取用户单体信息作为特征,围绕用户、商户和设备等特征从流行度统计和频次统计两个方面来衍生新特征;另一类为关系网络特征模型,主要运用graph embedding构建一度关联、二度关联的异构网络,通过Node2Vec方法提取用户与商户、设备及账户关系信息作为模型特征。最后采用LightGBM对两类模型进行训练,加权融合模型结果。

二、 数据清洗
2.1 operation&transaction数据集:

  1. 将特征day转换为完整日期,第一天为’2018-08-31’,以此往后推。
  2. 根据device_code1、device_code2、device_code3构造新的特征device_type用于判断用户设备是ios系统还是Android系统,变量‘1’表示ios,‘2’表示Android,‘3’为未知。
  3. 将device_code1、device_code2、device_code3整合为一个变量device_code。
  4. 从device2特征中提取出手机品牌作为新的一列特征device_brand。
  5. 对geo_code特征进行地址解析,从而得到经纬度(longitude\ latitude)、国家(nation)、省份(province)、城市(city)等特征。
  6. 从time特征中提取出hour。
  7. 根据nation判断是否在境内操作从而衍生特征is_china。
  8. 判断设备信息缺失程度device_miss_cnt和环境缺失程度device_miss_cnt。

2.2 operation数据集:

  1. 判断是否连接wifi操作is_wifi_env。
  2. 根据ip1、ip2判断用户是电脑操作还是手机操作,‘1’为电脑,‘2’为手机,‘3’为两者都用。
  3. 将ip1、ip2合成一个特征ip,ip1_sub、ip2_sub合并为ip_sub。

三、 探索性数据分析EDA
训练集中同时有操作和交易的用户有29091个,只有操作记录的用户有637个,只有交易记录的用户有1451个。

3.1 operation数据集

  1. 通过统计用户平均操作次数来观察黑产用户与正常用户之间是否存在明显区别,其中黑产用户平均操作次数为36次,而正常用户平均操作次数51次,可以看出黑产用户平均操作次数更少,可以认为他们想通过较低的成本获得利益。
  2. 分别以天和小时为统计单位,比较黑产与正常用户在一定时间内的总操作量和平均操作量。按天来统计的操作量呈现周期性的趋势,而从按天计的平均操作量来看,绝大时间正常用户的平均操作量高于羊毛党,而是某些时间羊毛党的操作量则显著高于正常用户,后续特征构造会考虑时间对黑产用户的影响。
    在这里插入图片描述
    在这里插入图片描述
  3. 统计每个用户mode, device1等特征唯一值的个数,可以看到羊毛党和正常用户在mac1、mac2、wifi、city等特征的最大值存在较大区别。
    在这里插入图片描述
  4. 分别统计黑产和正常用户在mode特征中最具热度的前5个操作类型,并计算两者排前5的操作类型共中有几个相同。同时对’device1’,‘mac1’,‘mac2’,‘wifi’,‘device_code’,‘device_type’,‘device_brand’,'os_version’也做相同处理。其中,特征mac1、mac2、wifi、device_code共有的数量为1、1、0、0,两者区别较大。

3.2 transaction数据集

  1. 黑产用户平均交易次数为11次,而正常用户平均交易次数为8次,羊毛党的交易频率略高于正常用户。
  2. 分天和小时来看,黑产用户的平均交易量大部分时间也高于正常用户。值得注意的一点是,在大概25-30天之间的时间段黑产用户的平均交易量和平均操作量都显著增高,黑产用户可能集中在某个时间段操作,参加完活动可能就不再登录。

在这里插入图片描述
在这里插入图片描述
3. 黑产用户channel对应的平均种类为1.725,正常用户为1.3,黑产用户对应的的频道数量明显高于正常用户。细分到具体渠道,可以看到在102渠道下,黑产用户显著高于正常用户,而106和119渠道都不怎么活跃,而118渠道下,正常用户占比几乎为0,而黑产客户较多,在140频道活跃显著低于正常用户。

在这里插入图片描述
4. 统计每个用户mode, device1等特征唯一值的个数,可以看到羊毛党和正常用户在这些特征的最大值都存在较大区别。
在这里插入图片描述
5. 羊毛党交易金额额度显著低于正常用户且交易金额容易固定。同时黑产用户的交易类型(amt_src1\ amt_src2)、交易账户(acc_id1)以及转出转入账户(acc_id2\acc_id3)的平均个数都显著高于正常用户。
在这里插入图片描述在这里插入图片描述
6. 黑厂用户对应的商家更为集中,平均账户余额更少。
在这里插入图片描述在这里插入图片描述
7.黑产用户一个设备可能绑定多个用户id。7. 黑产用户一个设备可能绑定多个用户id。
在这里插入图片描述
四、 特征工程
4.1basemodel特征衍生
4.1.1基本特征衍生

在这里插入图片描述
4.1.2 时间滑窗特征统计
我们从时间维度提取借款人在不同时间点的特征以衡量用户动态风险。我们将时间窗口分为每天/每三天/每七天/每小时/半夜/早上/下午/晚上进行时间滑窗特征统计,其中早上时间为[6,12),下午为(12,18],晚上为(18,23],半夜为[0,6)。
1. 时间滑窗数量统计类特征
用户时间频率统计。用户在不同时间窗口内的交易/操作次数。

1.1 非时间特征(单个)与时间交叉衍生。
流行度统计:非时间特征以操作设备地址mac1为例,一个用户在时间窗口内可能有多个mac1类别,统计用户在时间窗口内对应的mac1类别流行度的平均值、最大值、最小值和方差作为新的衍生特征。其中流行度为不同的操作设备地址在时间窗口内对应的操作/交易次数。
频次统计:以交易类型trans_type1为例,统计用户在不同时间窗口,用该交易类别(消费/退款…)进行交易的次数。

1.2 非时间特征(两个)与时间交叉衍生。
同单个特征与时间交叉的频次统计类似。例如用户在该ip地址中用某种交易方式(trans_type1)进行交易的次数。

2. 时间滑窗趋势统计类特征。
由于一个人的行为是会动态变化的,因此我们差值和比值来衡量这种动态变化。以交易类型trans_type1为例,时间窗口以天计:
差值=当天某交易方式次数-前一天交易方式次数
比值=当天某交易方式次数/前一天交易方式次数
在这里插入图片描述
4.2关系网络模型特征衍生
4.2.1网络特征提取
异构网络构建

我们把网络中的节点分为两类,一类是用户本身,另一类是用户交易操作涉及到的信息,如账户类字段,通过graph embedding构建异构网络。
在这里插入图片描述
Node2Vec提取特征
我们采用Node2Vec(控制模型更倾向于进行广度还是深度优先搜索的概率)网络表示学习方法来进行特征提取。使用Node2Vec网络表示方式来训练表达一阶邻近度,由于网络中的一阶近邻非常稀疏,因此采用PCA进行降维处理。

4.2.2非网络特征
同4.1部分的特征衍生方法类似basemodel特征,主要围绕设备环境、商户交易,构造用户画像、商户画像和设备环境画像。

五、 特征筛选
basemodel特征衍生部分,我们构造了一系列的组合特征和时间滑窗特征,加起来近2200维特征(不包含关系网络提取特征),这么多维特征一方面可能会导致维数灾难,另一方面很容易导致过拟合,可以采用降维或特征选择来降低特征维度。这里我们采用基于模型的特征排序的方法来降低特征维度,这种方法有一个好处:模型学习的过程和特征选择的过程同时进行,因此我们采用这种方法。基于xgboost 来做特征选择,xgboost 模型训练完成后可以输出特征的重要性,据此我们保留了特征重要性大于0的特征,最终选出500多维特征。

六、 模型训练
LightGBM作为业界公认优秀的集成树模型,具有非常强的非线性拟合能力,非常适合对我们构造的大量连续型特征进行建模。对比同样强大的xgboost,它具有更快的速度,方便我们线下测试模型效果。同时,lgb相较于传统的树模型,加入了boosting和bagging的集成思想,以及正则项,可有效控制过拟合。通过模型训练及贝叶斯优化得到basemodel线下TPR为0.77759, 关系网络模型线下TPR为0.64693,而模型融合后线下TPR为0.783571,相对basemodel有百分位的提升。

代码:https://github.com/Susanna333/black-industry-recognition-based-on-user-behavior

发布了1 篇原创文章 · 获赞 0 · 访问量 22
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览