张青
【摘 要】为了自动识别各类诈骗电话,有效提升用户通话体验,减少用户经济损失,采用挖掘分析中的统计和数据建模方法,通过分析用户通话信令,研究通话业务模式,构建异常通话自动识别的聚类算法。经过实验验证了该聚类算法在假冒领导诈骗电话自动识别的有效性,可有针对性地指导接下来的诈骗电话细分。
【关键词】聚类算法;诈骗电话;自动识别
1 引言
截止2018年第二季度末,我国手机用户已超过15亿,固定电话用户约为2亿,中国已成为全球电话用户最多的通信大国。但是,在电信产业快速发展的同时,利用高科技通讯技术和金融转账方式的便利进行的各种违法犯罪活动也日益猖獗起来[1-3]。
通信信息诈骗是犯罪分子以非法占有为目的,利用网络、手机、固定电话、短信等通信工具,采取远程、非接触的方式,通过虚构事实诱使受害人往指定的账号打款或转账,骗取他人财物的一种犯罪行为。假冒领导诈骗场景中,骗子通过电话冒充领导或熟人进行骗钱,从“猜猜我是谁”,到“我是你领导”,使不少电信用户上当受骗,蒙受巨额经济损失。
常见的通信信息防诈骗技术方法是通过在网络侧对短时高频发话行为进行识别和拦截来实现的。而目前大部分诈骗场景,例如假冒领导、网购诈骗等,其人工发话行为已经和正常的通话非常类似。如果仅仅通过发话频次特征来识别,其准确率和覆盖率达不到预定的目标,需要运用大数据挖掘算法来寻找更能有效区分诈骗通话行为的特征。
对诈骗行为的识别是一个典型的二分类问题,用于分类的算法大致分为有监督学习(决策树、朴素贝叶斯、SVM等)和无监督学习(聚类等)两类。在诈骗识别的初始阶段,样本一般来源于有经济损失的诈骗受害者到公安的报案以及来自于工信部12321网站上的举报信息,这个样本量占诈骗总量的极小一部分,对模型样本的训练不具备有监督学习的条件。
本文在深入分析通话信令的业务模型的前提下,在异常通话模式中,采用挖掘建模中的聚类算法,有效提取假冒领导诈骗电话的通话特征,从而为自动识别假冒领导诈骗电话提供有效的手段[4]。
2 聚类算法概述
聚类算法起源于分类学,在古老的分类学中,人们主要依靠经验和专业知识来实现分类,很少利用数学工具进行定量的分类。随着人类科学技术的快速发展,对分类的要求越来越高,以致有时仅凭经验和专业知识难以确切地进行分类,于是人们逐渐把数学工具引用到了分类学中,形成了数值分类学,之后又将多元分析的技術引入到数值分类学形成了聚类算法[5]。聚类算法研究内容非常丰富,具体包括系统聚类法、动态聚类法、模糊聚类法、图论聚类法、有序样品聚类法、聚类预报法等。
在机器学习中,聚类是一种无监督学习,是在预先不知道欲划分类的情况下,根据信息相似度原则进行信息聚类的一种方法。聚类的目的是使得属于同类别的对象之间的差别尽可能的小,而不同类别上的对象之间的差别尽可能的大。因此,聚类的意义就在于将观察到的内容组织成类分层结构,把类似的事物组织在一起。
3 聚类算法的数据挖掘
下面采用跨行业数据挖掘标准流程CRISP-DM(Cross-Industry Standard Process for Data Mining)来阐述如何使用聚类算法对假冒领导诈骗电话进行自动识别的全过程。
3.1 业务理解
在大量手机和固话的通话信令中,诈骗电话的通话行为往往都隐藏在异常通话行为中。何谓异常通话行为,具体包括利用特殊设备,对批量号码进行外呼等。包括不等待被叫用户接通即挂断的“响一声”,诱骗用户回拨后进行广告或诈骗行为;自动语音外呼,又称“恶意呼叫”,是一种机器行为,通过播放虚假信息,例如停机、欠费等进行诈骗;精准人工诈骗,在获取被叫用户姓名等信息的情况下,采取人工批量外呼,实施诈骗行为。下面对某运营商在广东某地的通话信令进行分析,进而对其中涉及上述三类异常通话行为来构建业务模型。
(1)“响一声”
1)通话场景
目前的“响一声”主叫号码可以分为两类,一类是普通手机号码,另一类是声讯台号码。
“响一声”大部分是普通手机号码发呼,例如130-139,150-159等手机号段,这类响一声电话主要目的有三种:
◆部分企业诱导用户回拨电话进行广告宣传;
◆部分不法分子诱导用户回拨电话进行六合彩、卖淫等信息宣传;
◆部分不法分子诱导用户回拨电话进行通信诈骗活动。
此外,还有一类显示的是非普通号码,例如96,168等开头的声讯台号码,这些号码主要被取得正规运营资质的声讯台或者信息服务公司拥有,回拨这类号码可能会产生信息服务费。
主要关注利用“响一声”进行诈骗的行为,所以会关注普通手机号码的外呼行为。
2)通话信令特征
◆高频(日通话次数为500次以上,在三类异常通话行为中发呼频次为最高);
◆通话时长callduration=0(主叫侧挂机);
◆6 s<呼叫时长occupancyduration <10 s;
◆特征:看通话时长为0的次数同时结合呼叫平均时长小于7 s,判断为机器行为。
(2)自动语音外呼
1)通话场景
自动语音外呼是通过电脑自动往外拨打用户电话,将录制好的语音通过电脑播放给用户,将电脑电话集成一体,这是现代客户服务中心系统必不可少的一个组成部分。通过录制语速适中清晰的语音,批量外呼后实现自动播放通知、广告等。客户有兴趣的话,可以通过按键进行咨询,这时候便转接到人工话务员。而通过播放虚假信息,例如停机、欠费等进行诈骗也就隐匿在其中。
2)通话信令特征
◆高频,但日通话次数较“响一声”发呼频次少;
◆语音外呼;
◆3 s<通话时长callduration<10 s(被叫未上当),被叫侧挂断,诈骗上当者平均通话时长callduration大于120 s;
◆呼叫时长occupancyduration远大于6 s;
◆每天平均通话时长小于10 s(大部分电话打不通或由于被叫用户警惕性高,接通后很快挂机,拉低通话均值,根据统计信息:一般正常通话时长平均为40 s
~60 s)。
(3)人工高频外呼
1)通话场景
人工在短时间内多次拨打用户电话,假冒领导就是其中典型的诈骗场景之一。骗子通过电话冒充领导或熟人进行骗钱。从“猜猜我是谁”,到“我是你领导”,一旦被叫用户上当,落入骗子的圈套进行转账操作,用户将会蒙受巨大的经济损失。
2)通话信令特征
◆高频:每天通话次数在100次左右;
◆人工外呼(类似熟人,有被叫人准确信息,例如姓名等);
◆通话时长callduration类似正常通话;
◆每天平均通话长小于10 s(大部分打不通或被叫用户警惕性高,接通后很快挂机,拉低通话时间长的均值);
◆按日通话开始时间点分布:考虑到人工性和诈骗场景的特殊性(第二天上午去找领导回访),通话时间点集中在下午到晚上。
3.2 数据准备
通过对三种异常通话业务场景的分析,可以初步推测,理论上某些通话特征是可以将三种异常通话行为区隔开来,例如平均通话时长、通话时长分段占比、呼叫时长等。作为建模的基础,构建一张挖掘用宽表,该表按天按主叫号码汇总。原始的通话信令中包含主叫号码、被叫号码、通话时长、呼叫时长等信息,为构建更多的特征,采用特征工程获取衍生变量构成挖掘宽表,其中用到归一化、均值化等特征处理方法。挖掘宽表字段包括主叫号码、总通话次数、总通话时长(callduration)、平均通话时长(ave_callduration)、总非零通话时长(no_zero_callduration)、平均非零通话时长(ave_calldur_no_zero)、零通话时长占比(zero_callduration_rate)、零通话次数、被叫号码个数、总呼叫时长(occupancyduration)、平均呼叫时长(ave_occpduration)、按日最早发话时间点、按日最晚发话时间点等特征。
根据上面分析的三类异常通话场景,筛选按天按主叫号码统计的通话次数大于等于100的宽表记录,用聚类算法来区分三类异常通话行为的特征。
3.3 数据建模
对多种聚类算法模型(Kmeans、DBscan、两步聚类等)的训练结果进行比较后,最终采用两步聚类分析方法[6-8],聚类结果如图1所示。其中,Cluster Quality = 0.7,聚类效果比较好。
对特征零通话时长占比(zero_callduration_rate)及平均非零通话时长(ave_calldur_no_zero)采用直方图可以进行辅助分析,零通话时长占比高是因为异常通话中被叫的警惕性高,未接通的比例相对正常通话要高;而平均非零通话时长的直方图中,一类几乎全部集中在0 s~5 s内,这是类似“响一声”的通话行为,还有一类是有部分在0 s~5 s内(警惕性高接听后未上当主动挂断),同时也有类似正常的通话行为。示例如图2所示。
从业务模型的关键参数——平均呼叫时长(ave_occpduration)和平均非零通话时长(ave_calldur_no_zero),并结合上文3.1章节中三类异常通话业务模型的通话信令特征,可以初步分析出:类别3为响一声(其平均非零呼叫时长ave_occpduration约为6.44 s,平均通话时长ave_callduration为0.09 s,几乎为0);类别2包含假冒领导诈骗号码(平均通话时长为16 s,远小于正常通话时长40 s~60 s的范围),具体如图3所示。
3.4 模型优化
将类别2号码的通话信令清单导出,进一步尝试增加新的特征,包括通话移固比例、接通后分段通话时长占比、主叫归属地与被叫归属地相同的占比等,从而对假冒领导的典型模型做进一步优化。
(1)步骤1,筛选出类别2的清单。
代码示例如下:
select t1.ano,t1.bno,t1.starttime,t1.callduration,t1.opcname,t1.acity,t1.bcity,t1.Protocol,t1.occupancyduration
from
(select ano,bno,starttime,callduration,opcname,acity,bcity,Protocol,occupancyduration from(通話清单表)where p_day='2016-06-12'and SignalFrom='(诈骗发话地)'and Protocol in ('1','2'))t1 join select ano from (类型2的号码表) where…
(2)步骤2,新增特征:被叫号码中移动和固定电话号码的占比等。
代码示例如下:
select t1.ano,t1.call_sum,
(case when t2.mb_num is null then 0 else t2.mb_num end) mb_num,t1.zero_callduration,(t1.call_sum- t1.zero_callduration)no_zero_calldur,t1.zero_callduration_rate, t1.bno_num, t1.callduration_sum,…
(3)步骤3,新增一卡双号和拨打特殊号码的特征。
◆增加广东全省一卡双号的主副号对应关系表。
◆继而观察当天诈骗发话的主号打往银行、充值平台、10000/10001号客服的情况,代码示例如下:
select t01.ahome,t01.ano,count(*)yh_call_sum,count(distinct t01.bno)yh_call_cont from
select ahome,ano,bno from (通话清单表) where p_day ='2016-06-28' and acl='3'…
◆综合主副号特征、副号的发话时段、呼叫频次、被叫离散度、主被叫归属地、被叫移固占比等特征、终端价格分档、黑基站、黑银行账号短信以及包括相关主号呼叫特服號码,包括银行、充值平台、电信客服号码,主副号发话行为具有时间上的接续性等特征。
3.5 模型验证
通过对聚类模型的特征及算法的多次优化,接下来用通话信令数据聚类后的结果进行业务效果验证。
(1)验证样本选取
根据某通信运营商某日通话信令清单,在模型预测的正样本中,筛取一定量样本,按最大化覆盖正样本的原则,获取通话时长不低于5 s的记录,以便有效回访被叫。
(2)验证方法
为确定是否发生诈骗案,本方法以多种信息相互印证,包括客观诈骗事实、被叫用户证词以及互联网举报信息。
具体如下:
1)样本通话后存在被叫发出过110电话
2)被叫证词:对样本抽取的被叫回访了解
◆其所接电话是否涉嫌假冒身份诈骗;
◆存在被叫向陌生人转账汇款事实;
◆是否报警处理。
3)互联网举报信息:通过百度、360搜索引擎检索
◆该号码样本是否被公众标记为诈骗电话;
◆样本是否与公开号码相似度较高。
(3)样本核定标准
对于因用户原因拒绝回访是否诈骗的样本不予计算,以上三种验证方法只要符合其一,则认为该样本为真正的正样本。
(4)验证步骤
◆后台数据库查询相关主被叫通话信令记录;
◆对正样本通话时间长的被叫优先进行回访;
◆检查话单,该被叫是否事后打过110;
◆互联网检索。
(5)验证情况汇总
从2016年9月1日的通话信令中共提取15个正样本,通话共701次,涉及614个被叫。选择通话大于等于5 s的被叫用户进行回访,愿意受访的有15人,涉及14个正样本。
◆13人已意识到样本属假冒领导或熟人诈骗,涉及13个正样本,按交流情况分析有13个正样本为真正的正样本,1个正样本无法确定;
◆1人已报警处理,涉及正样本1个;
◆存在3个被叫向陌生人转账汇款,涉及正样本3个;
◆互联网举报信息:通过百度、360搜索引擎检索情况无结果。
(6)验证结论
按被叫证词、报警、转账等情况分析,14个正样本中13个为真正的正样本(有一个未能确认),假冒领导模型分析精确率为:13/14=92.85%。
3.6 模型部署
将模型固化到生产系统中,持续筛选假冒领导的诈骗号码并对其主叫号码进行实时拦截。经过一段时间的模型筛选和持续拦截,在集团发布的12321用户投诉记录中,假冒领导诈骗类型的投诉率大大降低。
4 结束语
随着大数据分析挖掘技术的不断发展,传统诈骗电话的识别方法将出现大的变化。本文基于某省电信运营商通话信令数据,通过构建异常通话业务模型,采用挖掘分析中的统计和聚类建模方法,有效进行假冒领导诈骗电话的自动识别,可有针对性地指导接下来的诈骗电话细分。随着诈骗场景的变化,可进一步将聚类算法拓展运用到例如网购诈骗、中奖诈骗等诈骗场景中[9-10]。
参考文献:
[1] 马在鑫. 电信诈骗犯罪的形势与对策[J]. 法制与社会, 2016(34): 58-59.
[2] 吴勇. 通信网络诈骗犯罪现状及情境预防探析[J]. 法制与社会, 2016(32): 268-269.
[3] 包琅允,阳平,徐爱华. 通信信息诈骗防范解决方案探讨[J]. 电信技术, 2017(7): 59-63.
[4] 罗汉斌,薛峥. 基于大数据的通信信息诈骗治理模式研究[J]. 电信工程技术与标准化, 2017(3): 71-76.
[5] 胡宗海,曹立勇,姚程宽. 数据挖掘聚类分析方法研究[J]. 科技广场, 2017(3): 6-9.
[6] 施卓敏,孙健英,何晓涛. 基于两步聚类分析方法的ARP系统用户分析[J]. 计算机与现代化, 2014(3): 73-76.
[7] 李莉,梁帝炎,王进,等. 基于两步聚类算法的社区蔬菜直销点顾客满意度分析[J]. 农村经济与科技, 2013(9): 32-33.
[8] 杨美洁. 基于两步聚类算法的高血压电子病历数据挖掘研究[J]. 医学信息学杂志, 2016,37(12): 14-17.
[9] 吴珂,刘雅文. 如何识别电话诈骗[J]. 百姓生活, 2018(2): 43.
[10] 李铭. 电信防诈骗电话系统的运用探讨[J]. 信息通信, 2017(1): 245-246.