news 2026/9/10 4:53:48

基于移动网络通讯行为的风险用户识别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于移动网络通讯行为的风险用户识别

基于移动网络通讯行为的风险用户识别

大赛地址:基于移动网络通讯行为的风险用户识别,该比赛是联通大数据公司发起的,同时作为我们的实训的比赛。下面是自己参加比赛过程的报告:

第一次参加这种比赛,发现自己经验明显不足。初赛0.787(52/624),复赛0.784(71/624),虽然成绩很差,但是感觉对新手来说是一次很好的锻炼机会。简单的介绍一下自己的一些思路。

这次比赛分为初赛和复赛两部分,自己的比赛代码也有好几个版本,这里选取得成绩最好的一次讲讲思路。

1 特征工程

训练数据集一共包括四个文件,用户风险标签,用户通话记录数据,用户短信记录数据,用户网站/App访问记录数据。

测试数据集一共包括三个,用户通话记录数据,用户短信记录数据,用户网站/App访问记录数据。

初赛与复赛分别使用不同的测试数据集,分为test_A,test_B,将这些训练集与测试集当正负样本平衡处理。

下面介绍的是自己能想到的一些特征。

1.1 用户通话记录数据表

通话表如下图 11用户通话记录表所示(下面3张图片来自比赛主页)

图 1‑1用户通话记录表

对通话数据的考虑主要就是判断用户通话是否规律等,还有挖掘出用户接收的通话的特征。

对用户通话数据处理方法:

1.1.1 预处理

对start_time的时变量做除以2变换,对opp_len进行分组,避免one-hot变换后分布太稀疏(对线性模型有影响),同理对天变量除以5(或者对用户的生活作息时间进行分组).

1.1.2 特征提取
统计特征
  • 统计每个用户的号码通话的所有与不同的号码数量,以及与均值的差
  • 统计用户通话in、out的不同号码数量,in、out的差值,以及所占比例。
  • 统计一些特殊号码,如opp_head为100的,像运营商的号码;170、171虚拟号码段
  • 统计不同opp_head的unique_count
  • 通话时长的相关统计量,如均值, 最大值,中位数,标准差,最小值等
  • 统计不同call_type下的opp_num
  • 统计不同opp_len下的opp_num

一些特征的可视化:

通话类型统计数均值:

通话出入度

One-hot编码特征
  • 通话类型做one-hot编码,同时与in、out做特征交叉,统计数量
  • 对start_time的天变量和时变量做one-hot,统计数量
  • 对天变量,统计不同日期的通话数量的相关统计量,如均值, 最大值,中位数,标准差,最小值等

1.2 用户短信记录数据表

用户短信数据表如下图 12用户短信记录数据表

图 1‑2用户短信记录数据表

个人觉得短信记录表比voice表重要一些,主要是被动接收的短信的特征,如opp_head、opp_len,接收的不同号码的数量,主要是一些统计特征,还有对可以分类的做one-hot变换。除此之外,找出它们之间的一些相关性特征进行组合。

对用户短信数据处理方法:

1.2.1 预处理

先统计所有opp_num,再清洗掉opp_head为000的系统短信;对opp_len进行分组,对start_time的时变量和天变量做类似通话数据的处理。

1.2.2 特征提取
统计特征
  • 统计每个opp_num所有与不同的号码数量,与均值的差
  • 统计用户接收短信in、out的不同号码数量,in、out的差值,以及所占比例。
  • 分组统计一些特殊号码的所有与不同的数量以及与均值的差,如opp_head为100的,像运营商的号码;170、171虚拟号码段,106的通知类短信
  • 统计不同opp_len下的opp_num数量以及与均值的差
  • 统计不同opp_head的数量

一些特征可视化

短信接收出入度:

日期分组的短信变化均值:

One-hot编码特征
  • 对start_time的天变量和时变量做one-hot,与in、out做交叉,分别求count和unique_count

1.3 用户网站/App访问记录数据表

用户网站/App访问记录数据表如下图 13用户网站/App访问记录数据表

图 1‑3用户网站/App访问记录数据表

对用户网站/App访问记录数据主要是考虑访问的app/网站的不同的数量,以及访问时间的特征,上传流量等。

对用户网站/App访问记录数据处理方法:

1.3.1 预处理

wa数据有很多缺失值,对wa_date缺失值填充-1做其他类别处理,将天数做除以5变换。求名字长度wa_len,对wa_len分组处理。

1.3.2 特征提取
统计特征
  • 统计用户访问的wa_name所有与不同的名字的数量,与均值的差统计用户访问的名字的长度分组的数量。
  • 统计用户访问的次数的相关统计量,如均值, 最大值,中位数,标准差,最小值等。
  • 统计用户访问时长的相关统计量,如均值, 最大值,中位数,标准差,最小值等。
  • 统计用户上传流量的相关统计量,如均值, 最大值,中位数,标准差,最小值等。
  • 统计用户下载流量的相关统计量,如均值, 最大值,中位数,标准差,最小值等。
  • 统计不同opp_head的数量

一些特征可视化

App/网站访问数量均值:

One-hot编码特征
  • 对访问的日期进行one-hot编码,与up_flow、visit_cnt,down_flow、做交叉特征,求相关统计量,如均值, 最大值,中位数,标准差,最小值等。
  • 对访问的类型进行one-hot编码,与up_flow、visit_cnt,down_flow、做交叉特征,求相关统计量,如均值, 最大值,中位数,标准差,最小值等。

多项式特征:

最后根据feature_importance来选择一些特征进行做多项式组合

  • 将访问类型为网站的unique_count与sms的in类型的opp_head为106的做二次多项式组合
  • 将访问类型为网站的up_flow与sms的in类型的unique_count做二次多项式组合
  • 将访问类型为网站的unique_count与sms的in类型的unique_count为与voice的unique_count做二次多项式组合

1.4 总结

赛后发现自己提取的特征明显不够,还有一些重要的特征没有考虑到,如没有对voice,sms,wa出现频次最多的top-k以及对voice和sms的opp_head进行one-hot变换;还有它们两次的最近的一些时间间隔等等。虽然自己也做了很多尝试,如分别对voice,sms,wa每天的一些特征统计量进行处理,但是因为特征方面没有大的提升。到后面复赛赛心态有点崩了,最高的一次分数还是第一次提交时候。赛后才发现对分数提升最大的就是对opp_head进行one-hot之后,提高了大概0.07的分数,这才是拉开差距的主要特征。

2 LGB单模型

1.树模型

使用lgb单模型,选择gdbt,使用GridSearchCV挑选最佳参数。主要调'min_data_in_leaf'和'num_leaves'这两个参数尝试使用stacking将多个模型融合,尝试发现效果并不明显,故最后没有采用。

参考文献

(https://zhuanlan.zhihu.com/p/26820998)(Kaggle 数据挖掘比赛经验分享)

(https://www.zhihu.com/question/29316149)(特征工程到底是什么?)

(http://lightgbm.apachecn.org/cn/latest/index.html)(LightGBM 的中文文档)

♻️ 资源

大小:464KB

➡️资源下载:https://download.csdn.net/download/s1t16/87404312

注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 1:14:23

【Django毕设源码分享】基于Django的环保公益项目众筹平台的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/9/3 1:14:23

神经网络能用C语言实现吗?具体函数怎么写

在深度学习框架盛行的今天,许多人误以为神经网络必须依赖TensorFlow或PyTorch这样的库。实际上,理解其底层原理的最佳途径之一,就是用C语言亲手实现神经网络的核心函数。这不仅能让你透彻掌握前向传播、反向传播等关键机制,还能为…

作者头像 李华
网站建设 2026/9/3 1:14:19

OFA-large模型环境部署:Miniconda+torch27虚拟环境一键激活教程

OFA-large模型环境部署:Minicondatorch27虚拟环境一键激活教程 你是不是也经历过这样的场景:好不容易找到一个图像语义蕴含模型,结果光是配环境就折腾半天——Python版本冲突、transformers版本不兼容、tokenizers报错、模型下载卡在99%、环…

作者头像 李华
网站建设 2026/9/3 1:14:22

AI+传统美学:弦音墨影新手入门全指南

AI传统美学:弦音墨影新手入门全指南 1. 为什么你需要这把“数字画笔” 你是否试过在一段监控视频里找一个人,翻来覆去拖进度条,眼睛发酸却仍漏掉关键帧? 是否为电商短视频反复剪辑同一段追逐镜头,只为突出那只跃起的…

作者头像 李华
网站建设 2026/9/8 15:40:13

AI语音新选择:Qwen3-TTS多语言合成体验

AI语音新选择:Qwen3-TTS多语言合成体验 1. 引言 语音合成技术正在经历一场革命性的变革。从早期机械式的电子语音,到如今近乎真人般自然的语音合成,TTS(Text-to-Speech)技术已经深入到我们生活的方方面面。无论是智能…

作者头像 李华