◎张婧旭
(中国电信股份有限公司福建分公司 福建 福州 350000)
随着电信行业和计算机科技的迅速发展,出现一些团体为了经济利益等,通过骚扰电话、垃圾短信等方式对目标人群进行骚扰;通过利用电脑设备和专用软件,可以自动变换呼叫频率,按照特定规则生成呼叫号码并且实现高频率呼叫。由于当前办理移动电话号码的成本很低,骚扰电话发起者会经常变换用于骚扰的电话号码,增加对电话号码捕捉的难度。因此,本文从实战角度,介绍了一种适用于运营商的基于用户行为特征的骚扰欺诈电话识别技术,对提高治理骚扰、欺诈电话的准确度提供借鉴。
骚扰电话有三种行为,分别是直接拨打、诱导回拨和连续呼叫。直接拨打,就是骚扰人直接拨打被骚扰人电话传播事先录制好的语音;诱导回拨,就是拨打电话响铃后自动挂断,当被骚扰人回拨后会听到骚扰语音;连续呼叫,就是通过计算机对被骚扰人连续呼叫,影响被骚扰人正常通话。三种骚扰行为共同点是:呼叫频率高;单位时间内被叫数量大;呼叫时间比较集中;响铃时间短;骚扰号码被呼叫时的通话时间短;被叫号码集中度高;被叫号码为空号的比例大。
用户在办理业务时留下了档案信息,包括户名、证件号、性别、产品(套餐)等信息,在用户通信过程中生成了通话详单、上网详单。对这些信息可以进行初步的整合加工,得到我们进行深度学习的基础数据。如客户入网时间、在网产品个数、套餐类别、开通时间、月通话次数、主叫通话次数、被叫号码数、漫游地、上网流量等。同时为进行深度学习,还需通过人工方式获取一定量的骚扰、欺诈、快递、外卖、客服等真实的号码。
1.标签字段
将人工标记的结果数据转换为数值型的编码,用于后续的算法使用。
2.日期型字段
用户数据中有大量的日期型的数据,如客户入网时间、套餐开通时间等,该类数据真正关心的不是具体的日期,而是该日期过去了多久,距今多少天或多少月等,用户是老用户还是新用户等,因此需要对日期型数据进行处理转换,可以在python中处理,但更建议在数据库中处理,因为数据库中处理相对简单。部分数据因为历史原因存在异常,需先对异常值进行处理,如入网时间的最小最大值分别为11111111、99991231。
3.类别型字段
用户数据中有大量的类别型的数据,如用户星级、用户终端厂商、用户主套餐等,该类数据相对于数值型的数据,一方面是不同取值之间不存在大小的判断,另一方面取值存在字符数据包括中文数据,因此需对这类数据进行预处理,同时部分类别型字段的取值范围太多(如终端型号、套餐类别等)需进行归类。
4.连续型字段
连续型字段指通话分钟数、上网流量、客户积分等数据,该类数据为实数型或整数型字段,可以根据业务理解基于已有数据加工大量新的字段供机器学习算法进行数据挖掘。
5.综合数据处理
将日期型字段、类别型字段、连续型字段结合起来做一些综合性处理,例如将以上特征(字段)选取部分做聚类,再构造统计特征。
6.内存优化
内存优化的思路是将数值型数据的数据类型转为最合适的,如将数据类型由'intt64'转为'int8'类型等。由此降低数据对内存的占用,腾出内存供机器学习算法使用,提高模型训练速度。
为保障机器学习训练出来的模型能用来预测,前面的数据处理是将训练数据和需要预测的数据(应用数据)合并在一起处理的,以保证处理方式一致。因此,需将训练数据和应用数据拆分出来,并需明确因变量和自变量,同时为测试模型的优劣,需将训练数据中留出一定比例的数据作为测试集。
1.算法选择
要预测的label字段取值有5个,因此该识别问题是个多分类问题,python中能做多分类的算法有随机 森 林(Random Forest Classifier)、 多 分 类(One Vs Rest Classifier)、 逻 辑 回 归(Logistic Regression),xgboost、LightGBM等,前三个Python的Scikit-learn中自带,后两个需下载安装包在Python中安装。经过比较,xgboost、LightGBM的效果较好,LightGBM效率比xgboost高非常多,因此最终选择了LightGBM算法。
2.算法实现
因样本数量严重不均衡,需对此进行处理,处理方式有过采样、欠采样、smote算法等,本次通过对训练模型设置权重来实现。
训练开始:2020.02.23 10:58:26
训练结束:2020.02.23 12:31:23
训练耗时:1小时32分钟57.36秒
3.参数调优
可以用GridSearchCV进行参数调优。
该调优方法是对parameters中的所有参数进行组合后逐个运行,花费时间较长,例如以上例子中若对max_depth,n_estimators两个参数同时调优,需花费的时间约为7×5*1.5小时,约两天。因此该调优方法只适用于小数据量情况下,对于电信的大数据量同时调优多个参数耗时都以天为单位,尽量只对每个参数进行逐个调优。
4.应用测试集测试模型效果
查看AUC值
5.输出结果
(一)模型训练结束,即可用模型对数据进行预测。
骚扰欺诈电话严重扰乱正常的生产生活秩序。对于普通用户来说,这种行为不仅扰乱了正常工作生活,还造成精神上和经济上的损失;对于电信运营商来说,这种行为影响了通信网络资源的正常使用,影响了企业品牌形象。本文从实战角度出发介绍了骚扰欺诈电话识别的一般过程,向运营商提供一种可以基于用户大数据利用人工智能技术进行骚扰、欺诈电话的预测识别办法,有利于提高治理骚扰、欺诈电话的准确度和覆盖率。