一种基于gbdt算法模型的非法语音识别方法及系统
技术领域
1.本发明涉及计算机人工智能技术领域,,特别涉及一种基于梯度提升决策树(gbdt)算法模型的非法语音识别方法及系统。
背景技术:
2.随着互联网时代的高速发展,人们生活也发生了巨大的变化。用户之间可以采用用户终端实现语音通话或短信交互,多种多样的应用也进入到人们的视野中。但也给我们生活带来便利的同时,也产生了很多潜在的危险,用户个人隐私在互联网中的泄露有可能被诈骗分子有机可乘,甚至导致了个人财产损失。近年来,电信诈骗成爆发式增长,诈骗手法层出不穷,诈骗中所使用的技术手段也不断升级。电信诈骗是指通过电话,编造虚假信息,设置骗局,对受害人实施远程、非接触式诈骗,诱使受害人打款或转账的犯罪行为,通常以冒充他人及仿冒、伪造各种合法外衣和形式的方式达到欺骗的目的,如冒充公检法、商家公司厂家、国家机关工作人员、银行工作人员等各类机构工作人员,伪造和冒充招工、刷单、贷款、手机定位和招嫖等形式进行诈骗。随着科技的发展,一系列技术工具的开发出现和被使用,诈骗分子借助于移动终端或固定电话等通信工具,及现代的技术等实施非接触式的诈骗迅速地发展蔓延,给人民群众造成了很大的损失。在这种情况下,需要对网络中的语音进行识别,从中识别出非法语音,并针对识别出的非法语音进行诸如屏蔽或提醒用户的相关处理,以减少或避免用户的损失。
3.因此,如何准确识别出通信网络中的非法语音,特别识别出通信网络中的非法语音的类别是一个亟待解决的问题。
技术实现要素:
4.有鉴于此,本技术实施例提供一种基于gbdt算法模型的非法语音识别方法及系统,能够准确识别出通信网络中的非法语音及非法语音类别。
5.本技术实施例是这样实现的:
6.一种基于梯度提升决策树gbdt算法模型的非法语音识别方法,所述方法包括:
7.获取通信网络的呼叫详细记录cdr中的通话数据后,从中提取特征数据;
8.将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
9.较佳地,所述得到特征数据包括:
10.提取得到符合训练得到的gbdt算法模型输入的特征数据。
11.较佳地,所述训练得到gbdt算法模型包括:
12.获取通信网络的cdr中的通话数据,采用k均值聚类k-means算法进行聚类采样,形成特征数据集合,包括训练子集合与测试子集合;
13.采用5折交叉验证方式,基于训练子集合训练gbdt算法模型后,基于测试子集合验证gbdt算法模型,计算得出gbdt算法模型的评估指标,确定训练得到的gbdt算法模型满足
所设置的评估指标;
14.将训练得到的gbdt算法模型设置在通信网络中的网络侧,对通信网络中的cdr通话数据进行非法语音的分类处理。
15.较佳地,所述采用k-means算法进行聚类采样包括:
16.将所述通话数据基于k-means算法进行聚类,分为第一特征数据集,包括少数类数据集和多数类数据集;
17.基于合成少数类过采样smote方法,对其中的少数类数据集进行过采样后,得到采样后的少数类数据集;
18.对得到的采样后的少数类数据集进行有回放的过采样及随机线性插值处理后,与少数类数据集合成后,进行清洗;
19.将合成后的少数类数据集汇入到第一特征数据集中,得到特征数据集合。
20.较佳地,所述基于训练子集合训练gbdt算法模型包括:
21.对gbdt算法模型的核心参数进行设置;
22.对各个特征数据进行信息增益值计算,得到各个特征数据的信息增益率值;
23.将其中信息增益值最大的特征收据,作为节点分裂条件,从根节点开始,递归进行分类回归树的构建;
24.生成分类回归树。
25.较佳地,所述gbdt算法模型的评估指标包括:
26.将精准率、召回率或/和f1-score指标作为评估指标。
27.较佳地,所述将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果包括:
28.计算每个特征数据的信息增益值,并将每个特征数据的信息增益值进行降序排序,选择信息增益值最大的特征作为根节点;
29.计算其他节点的信息增益值,并选择信息增益最大的特征数据进行第二次分裂,以此类推进行多次分裂,形成gbdt算法模型的分类回归树;
30.基于分类回归树的分类结果作为非法语音的识别结果,包括是否为非法语音及非法语音类别。
31.一种基于gbdt算法模型的非法语音识别系统,所述系统包括:提取单元及处理单元,其中,
32.提取单元,用于获取通信网络的呼叫详细记录cdr中的通话数据后,从中提取特征数据;
33.处理单元,用于将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
34.如上所见,本技术实施例获取通信网络中的呼叫详细记录(cdr)中的通话数据后,从中提取特征数据,得到特征数据;将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。这样,本技术实施例就可以基于gbdt算法模型准确识别出通信网络中的非法语音的类别。
附图说明
35.图1为本技术实施例提供的一种基于gbdt算法模型的非法语音识别方法流程图;
36.图2为本技术实施例提供的训练gbdt算法模型的方法流程图;
37.图3为本技术实施例提供的一种基于gbdt算法模型的非法语音识别系统结构示意图;
38.图4为本技术实施例提供的应用例子1所构建的分类预测树的结构示意图;
39.图5为本技术实施例提供的应用例子2所构建的分类预测树的结构示意图。
具体实施方式
40.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
42.下面以具体实施例对本技术的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
43.从背景技术可以看出,准确识别出通信网络中的非法语音,特别是准确识别出通信网络中的非法语音类别,是进行后续的针对识别出的非法语音进行诸如屏蔽或提醒用户的相关处理,以减少或避免用户的损失的前提条件。因此,本发明实施例获取通信网络中的cdr中的通话数据后,采用k-means算法进行聚类,得到特征数据;将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
44.本技术基于从通信网络中获取的cdr中的通话数据,采用k-means算法进行聚类,得到特征数据,并采用机器学习方式基于得到的特征数据训练gbdt算法模型,用于后续对非法语音的识别,从而实现对通信网络中的录音语音进行非法语音识别及非法语音分类的自动化,本技术的方案既可以显著提高非法语音的分类准确性,又能降低工作人员对非法语音分类的识别工作量。
45.在这里,采用gbdt算法模型能够准确识别出诸如诈骗电话的非法语音,有效解决对非法语音的误判和漏判等问题。在本技术实施例中,在对cdr中的通话数据进行采样过程中,使用了k-means算法进行采样,有效解决了gbdt算法模型的误差。本技术实施例中采用的gbdt算法是一个实现提升(boosting)算法的框架算法,支持二分类及多分类的预测,能自动实现特征选择,加快训练速度,及降低内存消耗,使得gbdf算法模型有更好的准确率。
46.图1为本技术实施例提供的一种基于gbdt算法模型的非法语音识别方法流程图,
其具体步骤包括:
47.步骤101、获取通信网络的cdr中的通话数据后,从中提取得到特征数据;
48.步骤102、将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
49.在该方法中,所述得到特征数据包括:
50.提取得到符合训练得到的gbdt算法模型输入的特征数据。
51.在该方法中,所述将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果包括:
52.计算每个特征数据的信息增益值,并将每个特征数据的信息增益值进行降序排序,选择信息增益值最大的特征作为根节点;
53.计算其他节点的信息增益值,并选择信息增益最大的特征数据进行第二次分裂,以此类推进行多次分裂,形成gbdt算法模型的分类回归树;
54.基于分类回归树的分类结果作为非法语音的识别结果,包括是否为非法语音及非法语音类别。
55.在该方法中,为了实现步骤102,就需要进行对gbdt算法模型进行训练,得到训练好的gbdt算法模型用于识别非法语音及对非法语音的类别进行分类。如图2所示,图2为本技术实施例提供的训练gbdt算法模型的方法流程图,其具体步骤包括:
56.步骤201、获取cdr通话数据,基于所获取的cdr通话数据设置训练样本,包括正样本和负样本,并设置其中的正样本和负样本的比例;
57.在本步骤中,为了保护用户的隐私权,cdr通话数据是采集加密存储在通信网络的服务器中,在获取时,需要进行解密处理;
58.步骤202、采用k均值聚类(k-means)算法对获取的cdr通话数据进行聚类采样,形成特征数据集合,该特征数据集合中包括训练子集合与测试子集合;
59.步骤203、采用5折交叉验证方式,基于训练子集合训练gbdt算法模型后,基于测试子集合验证gbdt算法模型,计算得出该gbdt算法模型的评估指标,确定训练得到的gbdt算法模型满足所设置的评估指标;
60.在本步骤中,所述该gbdt算法模型的评估指标包括gbdt算法模型的精准率、召回率和f1分数等;
61.在本步骤中,当所述gbdt算法模型训练结束后,结合业务及多种模型评估指标,评估所述gbdt算法模型的上线可行性,对满足业务要求的模型实施上线运行,实现自动化的非法语音分类;
62.步骤204、将训练得到的gbdt算法模型设置在通信网络中的网络侧,对通信网络中的cdr通话数据进行非法语音的分类处理。
63.这样,当通信网络中的cdr通话数据到达到通信网络中的服务器时,就可以调用与部署有gbdt算法模型的服务器的应用程序(api)接口,将cdr通话数据进行如图1所述的过程,进行gbdt算法模型的非法语音分类,并返回得到非法语音识别结果。
64.在本技术实施例中,cdr通话数据为设定时间的通话数据,比如设定时间为6个月,,该cdr通话数据在处理前,已脱敏加密处理,cdr通话数据的维度为47维,经过数据清洗、变量衍生、特征筛选后得到gbdt的输入特征数据为x1,x2,x3
……
x35。
65.其中,得到的特征数据定义如下:
66.x1:主叫号码;x2:主叫号码归属省;x3:主叫号码归属市;x4:通话时长;x5:通话次数;x6:主叫号码的国际移动设备识别码(imei);x7:主叫号码imei更换次数;x8:主叫号码imsi更换次数;x9:被叫号码归属省;x10:被叫号码归属市;x11:主叫号码网络类型;x12:被叫号码网络类型;x13:主叫号码是否漫游;x14:主叫号码呼叫开始时间;x15:主叫号码呼叫结束时间;x16:主叫号码呼叫失败次数;x17:主叫号码呼叫被拒接次数;x18:主叫号码呼叫号码离散度;x19:主叫号码呼叫区域离散度;x20:主叫号码呼叫位置;x21:主叫号码是否在高危区域;x22:被标记的总次数;x23:被标记骚扰的次数;x24:天拨打不同号码平均通话时长;x25:天最小通话;x29:最晚打电话的小时;x30:每天有多少小时在打电话;x31:该号码是否为虚商号码;x32:该号码是否为靓号;x33:该号码是否境外号;x34:该号码三地是否一致;x35:该号码是否频繁换卡。
67.在将cdr通话数据输入到gbdt算法模型处理之前,需要进行特征数据提取。这是因为非法语音对于通信网络中传输的语音来说,是万分之一概率,诸如诈骗电话是万分之一概率,所以需要提取其中的特征数据,从而提高gbdt算法模型后续对非法语音识别的准确性。将cdr通话数据进行特征数据提取采用k-means算法,具体步骤包括:
68.第一步骤,采集cdr通话数据,作为不平衡数据集u0,基于k-means算法,对不平衡数据集u0进行聚类,得到2个类的数据集,分别为少数类数据集a和多数类数据集b。
69.第二步骤,基于合成少数类过采样(smote)方法,对少数类数据集a进行过采样,对于少数类中每一个样本x,以欧氏距离为标准计算它到少数类样本集a中所有样本的距离,得到k近邻。欧式距离d计算如公式(1)所示:
[0070][0071]
第三步骤,将采样后得到合成的少数类数据集c,对合成的少数类数据集c有放回的过采样,并在采样过程中对于每一个随机选出样本进行随机线性插值,分别与原样本合成新的样本u,对新的数据集u进行清洗以去除噪声。
[0072]
(4)将新样本放入原数据,产生新的训练集。
[0073]
这样,经过了上述过程中,形成了最终的新样本集,包括训练样本与测试样本。
[0074]
也就是说,所述采用k-means算法进行聚类采样包括:
[0075]
将所述通话数据基于k-means算法进行聚类,分为第一特征数据集,包括少数类数据集和多数类数据集;
[0076]
基于合成少数类过采样smote方法,对其中的少数类数据集进行过采样后,得到采样后的少数类数据集;
[0077]
对得到的采样后的少数类数据集进行有回放的过采样及随机线性插值处理后,与少数类数据集合成后,进行清洗;
[0078]
将合成后的少数类数据集汇入到第一特征数据集中,得到特征数据集合。
[0079]
在本技术实施例中,所述基于训练子集合训练gbdt算法模型包括:
[0080]
对gbdt算法模型的核心参数进行设置;
[0081]
对各个特征数据进行信息增益值计算,得到各个特征数据的信息增益率值;将其中信息增益值最大的特征收据,作为节点分裂条件,从根节点开始,递归进行分类回归树的
构建;生成分类回归树。
[0082]
在本技术实施例中,需要对gbdt算法模型进行训练,以下对整个过程详细说明。
[0083]
首先,需要对gbdt算法模型进行配置、核心参数设置及参数设置,包括:
[0084]
(1)n_estimators:该参数含义是弱学习器的最大迭代次数,或者说最大的弱学习器的个数。一般来说n_estimators太小,容易欠拟合,n_estimators太大,又容易过拟合,一般选择一个适中的数值。在本技术中,默认是100。在实际调参的过程中,常常将n_estimators和下面介绍的参数learning_rate一起考虑。
[0085]
(2)learning_rate:该参数含义是学习率,也称步长,工程中结合实际效果用经验值。通常用步长和迭代最大次数一起来决定算法的拟合效果。所以这两个参数n_estimators和learning_rate要一起调参。
[0086]
(3)subsample:该参数含义是采样,取值范围为(0,1]。注意这里的子采样和随机森林不一样,随机森林使用的是放回抽样,而这里是不放回抽样。如果取值为1,则全部样本都使用,等于没有使用子采样。如果取值小于1,则只有一部分样本会去做gbdt算法模型的决策树拟合。选择小于1的比例可以减少方差,即防止过拟合,但是会增加样本拟合的偏差,因此取值不能太低。经验取值范围在[0.5,0.8]之间,本技术默认是1.0,即不使用子采样。
[0087]
(4)init:该参数含义是算法默认初始值,即初始化的时候的弱学习器,如果不输入,则用训练集样本来做样本集的初始化分类回归预测。否则用init参数提供的学习器做初始化分类回归预测。本技术采用有先验知识,或者之前做过一些拟合的时候设置的值,如果没有的话就用默认参数。
[0088]
(5)loss:该参数含义是损失函数,即gbdt算法模型中的损失函数。分类模型和回归模型的损失函数是不一样的。默认是对数似然损失函数"deviance"。
[0089]
(6)alpha:该参数只有gradientboostingregressor有,默认是0.9,如果噪音点较多,可以适当降低这个分位数的值。
[0090]
(7)max_features:该参数含义是最大特征数,该参数数值类别很多,默认是"none"。如果特征数非常多,可以灵活使用刚才描述的其他取值来控制划分时考虑的最大特征数,以控制决策树的生成时间。
[0091]
(8)max_depth:该参数含义是决策树最大深度,默认可以不输入,如果不输入的话,默认值是3。一般来说,数据少或者特征少的时候可以不管这个值。如果模型样本量多,特征也多的情况下,推荐限制这个最大深度,具体的取值取决于数据的分布。常用的可以取值10-100之间。
[0092]
(9)min_samples_split:该参数含义是子树内部节点再划分所需最小样本数,这个值限制了子树继续划分的条件,如果某节点的样本数少于min_samples_split,则不会继续再尝试选择最优特征来进行划分。默认是2.如果样本量不大,不需要管这个值。如果样本量数量级非常大,则推荐增大这个值。
[0093]
(10)min_samples_leaf:该参数含义是叶子节点最少样本数,这个值限制了叶子节点最少的样本数,如果某叶子节点数目小于样本数,则会和兄弟节点一起被剪枝。默认是1,可以输入最少的样本数的整数,或者最少样本数占样本总数的百分比。如果样本量不大,不需要管这个值。如果样本量数量级非常大,则推荐增大这个值。
[0094]
(11)min_weight_fraction_leaf:该参数含义是叶子节点最小的样本权重和,这
个值限制了叶子节点所有样本权重和的最小值,如果小于这个值,则会和兄弟节点一起被剪枝。默认是0,就是不考虑权重问题。如果有较多样本有缺失值,或者分类树样本的分布类别偏差很大,就会引入样本权重,这时本技术注意这个值了。
[0095]
(12)max_leaf_nodes:该参数含义是最大叶子节点数,通过限制最大叶子节点数,可以防止算法模型过拟合,默认是"none”,即不限制最大的叶子节点数。如果加了限制,算法会建立在最大叶子节点数内最优的决策树。如果特征不多,可以不考虑这个值,但是如果特征分成多的话,可以加以限制,具体的值可以通过交叉验证得到。
[0096]
(13)min_impurity_split:该参数含义是节点划分最小不纯度,这个值限制了决策树的增长,如果某节点的不纯度(基于基尼系数,均方差)小于这个阈值,则该节点不再生成子节点。即为叶子节点。默认值1e-7,不推荐改动该值。
[0097]
在gbdt算法模型对输入的特征数据进行处理时,采用信息增益方式处理。信息增益在gbdt算法模型中是用来进行特征数据选择的指标,某个特征数据的信息增益越大,则这个特征的选择性越好。其计算公式如公式(2)所示:
[0098]
g(d,a)=h(d)-h(d|a)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0099]
其中h(d)为经验熵,h(d|a)为选定特征数据a的经验条件熵,计算公式分别如公式(3)、公式(4)所示:
[0100][0101][0102]
其中,训练数据集合d,|d|为样本容量,即样本的个数(d中元素个数),设有k个类ck来表示,|ck|为ci的样本个数,|ck|之和为|d|,k=1,2
…
,根据特征a将d划分为n个子集d1,d2.....dn,|di|为di的样本个数,|di|之和为|d|,i=1,2,....,记di中属于ck的样本集合为dik,即交集,|dik|为dik的样本个数。
[0103]
训练gbdt算法模型实际就是构建分类预测树,在构建分类预测树时,仅需要输入训练数据集和停止计算的条件,输出为单棵的分类回归(crat)树,即分类二叉树。根据训练数据集,从根节点开始,递归地对每个节点进行如下操作,构建分类二叉决策树:
[0104]
(1)设节点的训练数据集为d,计算现有的特征数据对该数据集的基尼指数,此时,对每一个特征数据a,对其可能取的每个值a,根据样本点对a=a的测试为“是”或“否”将d分割成d1和d2两部分,利用公式(2)计算a=a时的基尼系数。
[0105]
(2)在所有可能的特征数据a以及他们所有可能的切分点a中,选择基尼指数最小的特征及其对应的切分点作为最优特征与最优切分点。依最优特征与最优切分点,从现节点生成两个子节点,将训练数据集分配到两个子节点中去。
[0106]
(3)对两个子节点递归地调用(1),(2),直至满足建树停止条件。
[0107]
(4)根据特征及分割点生成crat树。
[0108]
算法停止计算的条件是节点中的样本个数小于预定的阈值,或样本集的基尼指数小于预定阈值(样本基本属性相同),或没有更多特征。在模型训练的过程中会产生最优决策树模型,对于新输入的测试样本通过最优决策模型输出非法语音类别。
[0109]
这样,在训练gbdt算法模型时,结合上述对gbdt算法模型的配置及参数设置,采用5折交叉验证方式对gbdt算法模型进行训练,不断拟合特征数据,最终得到训练好的gbdt算
法模型。
[0110]
当训练得到gbdt算法模型后,需要对训练得到的gbdt算法模型件评估,本技术采用精准率、召回率及f1-score对模型进行评估,其计算公式分别如公式(5)、公式(6)、公式(7)所示。
[0111]
precision(精准率)=tp/(tp+fp)
ꢀꢀꢀꢀ
(5)
[0112]
recall(召回率)=tp/(tp+fn)
ꢀꢀꢀꢀꢀꢀ
(6)
[0113]
f1-score=2*precision*recall/(precision+recall)
ꢀꢀ
(7)
[0114]
其中,tp代表样本为正,预测结果为正的个数,fp代表样本为负,预测结果为正的个数,tn代表样本为负,预测结果为负的个数,fn代表样本为正,预测结果为负的个数。
[0115]
如果评估的gbdt算法模型符合需求,则采用pickle方式对gbdt算法模型进行序列化后保存在网络侧的服务器上,采用flask构建服务器的api,使用pickle方式进行gbdt算法模型反序列化,以api接口的方式拦截cdr通话数据,进行非法语音的识别及非法语音的分类。
[0116]
具体地说,当通信网络中的cdr通话数据到达到通信网络中的服务器时,就可以调用与部署有gbdt算法模型的服务器的应用程序(api)接口,将cdr通话数据进行如图1所述的过程,进行gbdt算法模型的非法语音分类,并返回得到非法语音识别结果。
[0117]
图3为本技术实施例提供的一种基于gbdt算法模型的非法语音识别系统结构示意图,所述系统包括:提取单元及处理单元,其中,
[0118]
提取单元,用于获取通信网络的cdr中的通话数据后,从中得到特征数据;
[0119]
处理单元,用于将得到的特征数据输入到gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
[0120]
在该系统中,所述得到特征数据包括:提取得到符合训练得到的gbdt算法模型输入的特征数据。
[0121]
gbdt算法模型所采用的gbdt算法是一种利用树形结构进行决策的算法,对于样本数据根据已知需求,特征处理后,最终建立一棵最优树,树的叶子结节标识最终决策。新来的数据便可以根据这棵树进行判断。gbdt算法采用cart树方式构建单棵树,树需要剪指,它训练速度快,内存占用率低。gbdt算法模型在训练过程中,随机有放回的选择训练数据集后,构造分类器,用组合学习到的模型来增加整体的非法语音的分类效果。以下以具体识别诈骗电话及对诈骗电话进行分类,举几个应用例子对本技术进行详细说明。
[0122]
应用例子1
[0123]
本应用案例为所设定区域内的设定单位所管辖的cdr通话数据,提取的主要特征数据有是否漫游境外、虚商号段、被叫区域离散度、呼出呼入比、是否出现在高危基站、被叫号码归属地、或/和呼叫频次等特征数据。通过这些特征数据输入到训练好的gbdt算法模型中,预测这些号码是否为诈骗电话。每一个内部节点都表示一个属性条件判断,叶子节点表示是否为诈骗号码。在决策树选择特征数据时,应选择信息增益值最大的特征数据,作为该节点分裂条件,以此计算其他各个特征的信息增益值,形成最优化树,最后输出的叶子节点表示是否为诈骗号码。单棵树结构如图4所示,图4为本技术实施例提供的应用例子1所构建的分类预测树的结构示意图。
[0124]
应用例子2
[0125]
本应用案例为所设定区域内的设定单位所管辖的cdr通话数据,从中提取特征数据,包括:是否漫游境外、虚商号段、被叫区域离散度、呼出呼入比、是否出现在高危基站、被叫号码归属地、或/和呼叫频次等特征数据。根据这些特征数据预测该号码是否为诈骗电话。每个内部节点表示一个属性的条件判断,叶子节点表示是否为诈骗电话。在决策树选择特征数据时,首先计算每个特征数据的信息增益值,并将每个特征数据的信息增益值进行降序排序,选择信息增益值最大的特征数据作为根节点,计算其他节点的信息增益值,并选择信息增益最大的特征数据进行第二次分裂,以此类推进行多次分裂,形成最优化分类预测树,最后由gbdt模型的最优化树给出该号码是否为诈骗电话,及其基于所属节点确定该诈骗电话的分类类型。该应用例子所构造的单棵树结构如图5所示,图5为本技术实施例提供的应用例子2所构建的分类预测树的结构示意图。
[0126]
可以看出,本技术实施例基于cdr通话数据,训练gbdt算法模型,在此过程中,针对不平衡数据样本,采用k-means-smote算法进行过采样,平衡数据分布,提取特征数据;设置gbdt算法模型的特征数据输入参数、输出参数及gbdt内的参数,从而提高所训练得到的gbdt算法模型的精准度,提高训练效率;通过计算训练得到的gbdt算法模型的估计指标进行非法语音的识别效果评估,比如精准率、召回率或f1-score等估计指标的评估,从而得到识别效果最好的gbdt算法模型进行后续对非法语音的识别。本技术实施例能够准确识别非法语音,具有准确且快捷的特点。
[0127]
本技术附图中的流程图和框图,示出了按照本技术公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标准的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0128]
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本技术中。特别地,在不脱离本技术精神和教导的情况下,本技术的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,所有这些组合和/或结合均落入本技术公开的范围。
[0129]
本文中应用了具体实施例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思路,并不用于限制本技术。对于本领域的技术人员来说,可以依据本技术的思路、精神和原则,在具体实施方式及应用范围上进行改变,其所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
技术特征:
1.一种基于梯度提升决策树gbdt算法模型的非法语音识别方法,其特征在于,所述方法包括:获取通信网络的呼叫详细记录cdr中的通话数据后,从中提取特征数据;将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。2.如权利要求1所述的方法,其特征在于,所述得到特征数据包括:提取得到符合训练得到的gbdt算法模型输入的特征数据。3.如权利要求1所述的方法,其特征在于,所述训练得到gbdt算法模型包括:获取通信网络的cdr中的通话数据,采用k均值聚类k-means算法进行聚类采样,形成特征数据集合,包括训练子集合与测试子集合;采用5折交叉验证方式,基于训练子集合训练gbdt算法模型后,基于测试子集合验证gbdt算法模型,计算得出gbdt算法模型的评估指标,确定训练得到的gbdt算法模型满足所设置的评估指标;将训练得到的gbdt算法模型设置在通信网络中的网络侧,对通信网络中的cdr通话数据进行非法语音的分类处理。4.如权利要求3所述的方法,其特征在于,所述采用k-means算法进行聚类采样包括:将所述通话数据基于k-means算法进行聚类,分为第一特征数据集,包括少数类数据集和多数类数据集;基于合成少数类过采样smote方法,对其中的少数类数据集进行过采样后,得到采样后的少数类数据集;对得到的采样后的少数类数据集进行有回放的过采样及随机线性插值处理后,与少数类数据集合成后,进行清洗;将合成后的少数类数据集汇入到第一特征数据集中,得到特征数据集合。5.如权利要求3所述的方法,其特征在于,所述基于训练子集合训练gbdt算法模型包括:对gbdt算法模型的核心参数进行设置;对各个特征数据进行信息增益值计算,得到各个特征数据的信息增益率值;将其中信息增益值最大的特征收据,作为节点分裂条件,从根节点开始,递归进行分类回归树的构建;生成分类回归树。6.如权利要求3所述的方法,其特征在于,所述gbdt算法模型的评估指标包括:将精准率、召回率或/和f1-score指标作为评估指标。7.如权利要求1所述的方法,其特征在于,所述将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果包括:计算每个特征数据的信息增益值,并将每个特征数据的信息增益值进行降序排序,选择信息增益值最大的特征作为根节点;计算其他节点的信息增益值,并选择信息增益最大的特征数据进行第二次分裂,以此类推进行多次分裂,形成gbdt算法模型的分类回归树;基于分类回归树的分类结果作为非法语音的识别结果,包括是否为非法语音及非法语
音类别。8.一种基于gbdt算法模型的非法语音识别系统,其特征在于,所述系统包括:提取单元及处理单元,其中,提取单元,用于获取通信网络的呼叫详细记录cdr中的通话数据后,从中提取特征数据;处理单元,用于将得到的特征数据输入训练得到的gbdt算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。
技术总结
本申请公开了一种基于梯度提升决策树(GBDT)算法模型的非法语音识别方法及系统,本申请实施例获取通信网络中的呼叫详细记录(CDR)中的通话数据后,从中提取特征数据,得到特征数据;将得到的特征数据输入训练得到的GBDT算法模型中,输出得到所述语音的识别结果,所述语音的识别结果包括所述语音是否为非法语音及非法语音的类别。这样,本申请实施例就可以基于GBDT算法模型准确识别出通信网络中的非法语音的类别。中的非法语音的类别。中的非法语音的类别。
技术研发人员:张飞 丁正 顾晓东 董伟
受保护的技术使用者:上海欣方软件有限公司
技术研发日:2021.12.06
技术公布日:2022/3/8