贷款违约概率预测方法、及其电子设备和存储介质与流程

文档序号:30525732发布日期:2022-06-25 06:50阅读:187来源:国知局
贷款违约概率预测方法、及其电子设备和存储介质与流程

1.本发明涉及互联网金融技术领域,尤其涉及一种贷款违约概率预测方法、及其电子设备和存储介质。


背景技术:

2.信用评价工作经过多年的发展,由最初的人工评估发展到信息化的计算评估,发明人发现近些年的信息化评价过程大都基于主观打分法以及主客观指标权重法等,这些方法在面对大样本数据时效率低下,评价过程也缺乏科学性,并且算法复杂度较高;此外,在以往的信用评价过程中,评价对象的指标特征分析往往不够精确,这种指标精确处理的欠缺以及特征分析的欠缺,容易导致评价结果出现比较大的误差。
3.为了解决现有技术的不足,本公开提供了基于全局最优模糊核聚类模型的电力用户信用评价方法,该方法能够快速有效地处理大样本数据,并能够精确地获取用户信用等级。
4.模糊核聚类算法(kernel fuzzy c-means clustering,kfcm)是一种基于无监督学习的聚类算法,对于包含未知故障的样本数据具有良好的聚类性能, kfcm在fcm算法基础上引入核函数,将低维非线性特征投影至高维空间,在一定程度上克服了对数据内在形状分布的依赖,能对不同形状分布数据正确聚类,克服了fcm算法对噪声野值点敏感的缺陷,提高了算法鲁棒性,扩大了模式类之间的差异,在高维特征空间达到线性可聚的目的,从而进行更为精细的聚类分析。
5.但kfcm与fcm一样,其聚类性能具有依赖于聚类中心初始值、易陷入局部最优的缺点,随机选择初始聚类中心而不能获得全局最优,且在聚类中心较近或重合时易产生一致性聚类等问题,初始聚类中心与核参数的选择对其分类效果的影响较大。


技术实现要素:

6.本发明旨在于提供一种贷款违约概率预测方法,以解决如下技术问题:
7.1.如何减少主观打分法以及主客观指标权重法,提高评价过程的科学性;
8.2.如何简化算法复杂度;以及
9.3.如何精准地评价对象的指标特征,减少误差。
10.为实现上述目的,本发明的第一方面提供如下技术方案:一种贷款违约概率预测方法,其包括如下步骤:
11.步骤s1:根据用户信贷的原始数据,从数据库中提取建模所需的样本数据,并根据所述样本数据对应的用户历史信贷情况建立用户标签;
12.步骤s2:从数据库中匹配每个用户的关联多维度数据,对采集的原始数据进行缺失补全和异常值处理,并按照7:3的比例切分成训练集和测试集后,分别对所述训练集和所述测试集归一化处理;
13.步骤s3:根据模糊核聚类算法建立kfcm模型,根据所述训练集中的数据,训练并调
整所述kfcm模型的参数;
14.步骤s4:采用和声搜索算法优化kfcm模型,得到最优参数;
15.步骤s5:采用所述测试集中的样本对kfcm模型的预测性能进行测试;以及
16.步骤s6:获取新申请贷款用户的用户数据,根据用户基本信息设置人工阈值规则预测用户是否违约,识别高违约用户。
17.根据本发明第一方面的实施方式,步骤s3包括:
18.s3.1:初始化kfcm模型中的参数,即在n个样本点中随机选取c个数据进行聚类中心初始化;
19.s3.2:通过公式(1)建立聚类目标函数,其中,vi(i=1,2,

,c)为原始特征空间的聚类中心、c为类别数、n为原始特征空间样本数量、u
ik
为第k个样本xk对第i类别的隶属度、m为加权指数;且u
ik
满足0≤u
ik
≤1且其中
20.s3.3:计算核空间的欧式距离,首先定义核函数为k(x,y)=φ(x)
t
φ(y),然后通过公式(2)||φ(xk)-φ(vi)||2=k(xk,xk)+k(vi,vi)-2k(xk,vi)计算核空间的欧式距离;
21.s3.4:利用拉格朗日乘数法求解目标函数的极小值,核空间的欧式距离代入聚类目标函数中,并在约束条件下用拉格朗日乘数法寻优,分别对jφ关于μ、v求偏导,得到新的隶属度u的更新公式(3)和聚类中心v和的更新公式(4)
22.根据本发明第一方面的实施方式,步骤s4包括:
23.s4.1初始化算法相关参数,包括:和声记忆库容量hms、和声记忆库考虑概率hmcr、音调调节概率par、音调微调步长bw、最大迭代次数tmax;
24.s4.2:初始化和声记忆,具体方法为:
25.在预测神经网络的待优化参数的搜索空间中随机产生hms个和声旋律xi,将产生的hms个和声旋律组成和声记忆库{x1,x2,...,xi,...,x
hms
},其中xi表示和声记忆库中的第i个和声旋律;然后从x的解空间中随机生成hms个和声 x1,x2,

,x
hms
放入和声记忆库,并计算每个和声f(x)值;
26.s4.3:生成新和声,具体方法为:
27.随机产生一个介于0~1之间的随机数rand1,通过与hmcr值进行比较,按顺序逐个生成新的和声向量;
28.在生成后,随机产生一个介于0~1之间的随机数rand2,通过与par 值进行比
较判断是否微调音调,微调方式如公式(5) 所示;
29.通过从和声记忆库学习、随机创作一个音调和在学习基础上微调音调3种方式产生一候选解其中分量由公式(6)产生,其中,xi是表示从种群的第i列随机选择一个音调;
30.在生成后,随机产生一个介于0~1之间的随机数rand2,通过与par 值进行比较判断是否微调音调,根据公式(7)对选取的个体进行微调;如果不满足rand1《hmcr,则在变量的取值范围里重新生成一个新解,其中,rand2为[0,1]上均匀分布的一个随机数,k为离散变量可能值的个数;
[0031]
产生rand(0,1)的随机数r,r1,r2,生成的新和声向量记为x'=(x'1,x'2,

,x'n),采用改进的音调调整规则和自适应参数调优方法产生新的和声;
[0032]
s4.4:如果新解x
new
比hm中最差的解具有更好的目标函数值,那么新解加入到hm中,而最差的解在hm中被删除,将产生的新解与和声记忆库中最差解进行比较,若新解优于最差解,则替换掉最差解,否则不进行操作,并重新记录hmcr和par的值;
[0033]
s4.5:更新和声记忆库,规定hm中相同解数目不能超过一定数量,即n (x
new
=xi,i=1,2,...,hms)《maxvec,其中,n(
·
)是计算在hm中相同解个数的函数,maxvec是hm中相同解的最大数量,根据公式(8) 即若f(x
new
)<f(x
worst
),则 x
new
=x
worst
进行进行记忆库的更新,其中x
worst
为和声记忆库中最差解;
[0034]
s4.6:改进和声搜索算法,采用公式(9)确定par值的范围,其中,parmax和parmin分别为par的最大值和最小值,m和n分别为当前和最大迭代次数;采用公式(10) 确定bw值的范围,其中bwmax和bwmin分别为 bw的最大值和最小值,m和n分别为当前和最大迭代次数;以及
[0035]
s4.7:得到最优参数,若满足最大迭代次数则算法终止,获取最优的小波神经网络结构参数,否则算法转到步骤s3继续执行。
[0036]
根据本发明第一方面的实施方式,所述kfcm模型还包括数据监督模块,所述数据监督模块用于检测计算而得的数据是否有异常数据。
[0037]
根据本发明第一方面的实施方式,所述kfcm模型还包括数据纠正模块,所述数据纠正模块用于删除所述异常数据,并同时补入合理数据。
[0038]
本发明的第二方面涉及一种电子设备,其包括:存储器和处理器,所述处理器和所述存储器电连接,所述存储器用于存储程序,且所述处理器调用存储于所述存储器中的程
序,以执行如本发明第一方面所述的方法。
[0039]
本发明的第三方面涉及一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机运行时执行如本发明第一方面所述的方法。
[0040]
与现有技术相比,本发明能够达到的有益效果是:
[0041]
(1)相比于粒子群和遗传等传统算法,和声搜索算法具有实现简单、并行性高、求解速度快、鲁棒性强等优点,对于优化问题具有较好的求解性能,本专利改进了和声搜索算法,提高了收敛速度和效率;
[0042]
(2)kfcm与fcm一样,其聚类性能具有依赖于聚类中心初始值、易陷入局部最优的缺点,利用和声搜索算法优化kfcm模型的参数,加快了模型的收敛速度、避免了局部极小值,提高了违约概率预测的精度,实用性高。
附图说明
[0043]
图1为本发明的贷款违约概率预测方法的流程图。
具体实施方式
[0044]
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0045]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0046]
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0047]
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可以是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
[0048]
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“上”、“下”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。
[0049]
以下将结合附图,对本发明实施例做进一步说明。本领域技术人员应理解的是,本发明所描述的实施例仅是示范性实施例。
[0050]
第一方面
[0051]
本发明的第一方面涉及一种贷款违约概率预测方法,其包括如下步骤:
[0052]
步骤s1:根据用户信贷的原始数据,从数据库中提取建模所需的样本数据,并根据所述样本数据对应的用户历史信贷情况建立用户标签;
[0053]
步骤s2:从数据库中匹配每个用户的关联多维度数据,对采集的原始数据进行缺失补全和异常值处理,并按照7:3的比例切分成训练集和测试集后,分别对所述训练集和所述测试集归一化处理;
[0054]
步骤s3:根据模糊核聚类算法建立kfcm模型,根据所述训练集中的数据,训练并调整所述kfcm模型的参数;
[0055]
步骤s4:采用和声搜索算法优化kfcm模型,得到最优参数;
[0056]
步骤s5:采用所述测试集中的样本对kfcm模型的预测性能进行测试;以及
[0057]
步骤s6:获取新申请贷款用户的用户数据,根据用户基本信息设置人工阈值规则预测用户是否违约,识别高违约用户,输出所述用户的决策建议。
[0058]
具体而言,在步骤s1中,首先确定好贷款的观察期和表现期,一般选取首次借款申请时间在6-12月内的,比如2020年4月到10月并且有还款表现的用户10000人作为样本数据,然后根据用户的还款表现,对每个所述样本数据进行标签化处理,即根据所述样本数据对应的用户历史信贷情况建立用户标签,以一个用户的样本数据为例,若首次还款的逾期天数小于等于30天则定义为好用户,即优质用户,用0表示;相对的,若首次坏款的逾期天数大于30天则定义为坏用户,即需要重点监控的用户,用1表示。
[0059]
根据所确定的正样本和负样本的数量,判断正样本与负样本的比例是否满足设定比例,并进一步通过过采样或欠采样,以使正样本和样本的比例满足所述设定比例,以实现样本数据的均衡。
[0060]
根据所述信贷因素数据计算所述收集样本中逾期用户和未逾期用户之比,若计算结果为逾期用户少于未逾期用户的类不平衡情况,则对所述逾期用户过采样,使得所述逾期用户和所述未逾期用户之比满足预设比例阈值。
[0061]
更具体而言,步骤s2中,分为s2.1从数据库中匹配每个客户的关联多维度数据,以及s2.2对采集的原始数据进行缺失补全、异常值处理,并按照7:3 的比例切分成训练集和测试集后分别对训练集和测试集归一化处理。以下将分别介绍s2.1和s2.2.
[0062]
进一步而言,s2.1从数据库中匹配每个客户的关联多维度数据,如:客户的个人基本信息、平台操作行为数据和借贷数据。获取客群的属性数据,包括:收入、消费、职业、城市、性别、年龄;获取用户的平台曹魏行为数据,包括但不限于登录本平台的次数、网页/网站的点击次数、点击频率等信息,获取客群的借贷数据,所述借贷数据包括:借贷频率、借贷次数、借贷额、逾期率、还款积极度、历史还款记录、已还款期、应还款期、还款期数、和/或贷款多头数量。根据借贷数据可以客户贷款历史行为特征衍生变量:历史违约次数、历史违约金额、违约时间间隔、历史申请次数、申请金额、被拒次数、贷款账龄占贷款期限比例、当前期数内资金流入金额、当期流入金额与还款金额差值等需要经过数据处理获取的信息。
[0063]
从数据库中获取历史上用户注册、登录、身份信息提交等用户app端操作事件,以
及用户基本属性信息(如用户信息、使用设备等)和地理位置信息(如 lbs、ip、wifi等),根据各个历史用户操作事件追踪该用户的历史用户行为轨迹,以历史用户行为轨迹数据、用户基本属性信息和地理位置信息.
[0064]
目前三方征信数据源的种类很多,包括:查询申请人的风险欺诈类的、大数据评分类的、多头借贷类、手机在网时长和状态类、司法信息类、工商信息类、电信消费记录类等。在授信的风控中,通常会将多个数据源结合在一起来使用,综合评估申请人的风险情况来确定是否授信。
[0065]
另外在合规要求下,不限于获取三方征信数据,包括:查询申请人的风险欺诈类的、大数据评分类的、多头借贷类、手机在网时长和状态类、司法信息类、工商信息类、电信消费记录类等。
[0066]
信贷因素数据主要包括用户申请信息数据、其他金融机构用户信用记录数据、贷款状态数据、用户申请记录数据、用户信用卡还款及消费记录数据,共 200维。所述用户申请信息数据包括用户申请的贷款信息数据(贷款类型、贷款总额、年金等)、用户基本信息数据(性别、年龄、学历、职业、行业、居住情况等)、用户财务信息数据(年收入、房和车情况等)、申请时提供的资料等;所述其他金融机构用户信用记录数据包括用户在征信中心或其他金融机构的信用记录、违约金额、违约时间等;所述贷款状态数据包括用户在本机构贷款已付款与未付款数据等;所述用户申请记录数据包括申请信息、申请结果等;所述用户信用卡还款及消费记录数据包括还款日期、是否逾期、还款金额、是否欠款、消费次数、消费金额等。具体的,用户申请信息通过用户申贷时填写的相关表单获取;所述用户申请记录和用户信用卡还款及消费记录数据通过查询用户在本机构过往记录获得;所述其他金融机构用户信用记录数据通过公开数据以及从其他单位合作获取。
[0067]
更进一步而言,s2.2对采集的原始数据进行缺失补全、异常值处理,并按照7:3的比例切分成训练集和测试集后分别对训练集和测试集归一化处理,由于变量较多,需要对各个特征进行量纲统一,本文采用标准化处理航班运行数据,公式如下:式中,x为标准化后的数据,x为标准化前的数据,xmean为样本均值,σ为样本的标准差。
[0068]
特征选择在机器学习中一方面用来防止数据训练的过拟合现象,另一方面降低模型的复杂度,简化后续计算。随机森林的训练过程中,可以对每个特征进行评估,计算其重要程度,主要流程如下:
[0069]
采用randomforest随机森林方法对训练样本的关系型数据表格中不存在缺失值的指标的特征作为特征变量,将训练样本的关系型数据表格中存在缺失值的指标分别选做目标函数,利用特征变量和目标函数的非缺失值作为训练样例,训练randomforest模型,训练好的randomforest模型可以预测缺失特征的缺失值,完成所有训练样例中缺失指标的填充;
[0070]
step 1:对于每一棵决策树利用袋外数据(即没有选择的数据)计算袋外数据误差,记为err1;
[0071]
step 2:随机抽取有样本特征i的袋外数据加入高斯白噪声,再次计算袋外误差,记为err2;
[0072]
step 3:得到特征i的重要度公式为:式中,n为随机森林中的决策树数量。
[0073]
数据处理包括异常值处理、类别型变量的处理、缺失值处理和特征标准化处理、对数据进行初步清洗。比如,统计每个特征的同一值和空值,初步筛选掉无用特征。再接着基于业务知识,做一些特征工程和特征衍生的工作,这一步会显著提高数据的表现能力。
[0074]
数据预处理模块:用于判断信贷因素数据的数据状态并进行数据处理,得到预处理结果,包括,判断所述信贷因素数据中的数据缺失状态,若大于缺失阈值则采用随机森林算法填补缺失数据;若小于缺失阈值则采用均值法对缺失数据进行填补,对离散非数值型属性进行one-hot编码,得到预处理结果;
[0075]
信贷因素数据选择模块:采用梯度提升树方法对所述预处理结果中的各信贷因素数据进行重要度计算通过排序删除冗余因素,得到选择后信贷因素数据,包括,计算用于判别用户信贷逾期的信贷因素数据在单棵决策树中重要度,根据单棵决策树中重要度计算结果,计算每个所述信贷因素数据在全部梯度提升树的全局重要度,全部所述信贷因素数据依据全局重要度进行排序,删除部分冗余信贷因素,得到所述选择后信贷因素数据;
[0076]
所述异常数据包括缺失值占比大数据、数值异常数据、长度异常数据、关联异常数据、脱敏异常数据和时效性异常数据;将所述行为数据中的异常数据通过增删或替换处理,得到处理数据;
[0077]
所述预设数据源包括:数据采集器、券商业务数据、合作方数据和第三方数据市场中一种或多种结合;
[0078]
所述预设规则包括:数据清洗、数据集成、数据规约和数据变换;
[0079]
所述数据清洗包括:去重、缺失值处理、异常值处理、特征编码和标准化处理中一种或多种
[0080]
以下将详细介绍步骤s3的具体情况:
[0081]
在步骤s3中,模糊核聚类算法(kernel fuzzy c-means clustering,kfcm) 是一种基于无监督学习的聚类算法,对于包含未知故障的样本数据具有良好的聚类性能,kfcm在fcm算法基础上引入核函数,将低维非线性特征投影至高维空间,在一定程度上克服了对数据内在形状分布的依赖,能对不同形状分布数据正确聚类,克服了fcm算法对噪声野值点敏感的缺陷,提高了算法鲁棒性,扩大了模式类之间的差异,在高维特征空间达到线性可聚的目的,从而进行更为精细的聚类分析。
[0082]
但kfcm与fcm一样,其聚类性能具有依赖于聚类中心初始值、易陷入局部最优的缺点,随机选择初始聚类中心而不能获得全局最优,且在聚类中心较近或重合时易产生一致性聚类等问题,初始聚类中心与核参数的选择对其分类效果的影响较大。
[0083]
kfcm算法是在fcm基础上将核函数映射到高维空间来进行聚类,通过引入核函数,利用非线性映射φ(
·
):x

f将输入空间x变换至高维特征空间 f,即将样本xk(k=1,2,

,n)映射为φ(xk)来进行聚类,通过最小化目标函数将含有n个样本点的向量xk(k=1,2,

,n)划分到c个类别中。
[0084]
具体而言,步骤s3包括:
[0085]
s3.1:初始化kfcm模型中的参数,即在n个样本点中随机选取c个数据进行聚类中
心初始化,其中kfcm最大迭代次数、高斯核参数σ、隶属度矩阵加权指数m以及迭代终止条件均提前设定,同时设置聚类数目c,模糊度m的值,目标函数允许最小误差ε,最大迭代次数t;
[0086]
s3.2:通过公式(1)建立聚类目标函数,其中,vi(i=1,2,

,c)为原始特征空间的聚类中心、c为类别数、n为原始特征空间样本数量、u
ik
为第k个样本xk对第i类别的隶属度、m为加权指数;且u
ik
满足0≤u
ik
≤1且其中
[0087]
s3.3:计算核空间的欧式距离,核函数利用从低维到高维空间的映射函数的内积表示,首先定义核函数为k(x,y)=φ(x)
t
φ(y),然后通过公式(2) ||φ(xk)-φ(vi)||2=k(xk,xk)+k(vi,vi)-2k(xk,vi)计算核空间的欧式距离;
[0088]
常见的核函数有高斯核函数、多项式核函数及sigmoid核函数等,高斯核函数的计算速度与精度在处理大多数实际问题时优于其他函数,本发明中, kfcm采用的核函数为高斯核函数,其具体公式为:其中,σ为高斯核参数;vi(i=1,2,

,c)为原始特征空间的第i个聚类的中心。
[0089]
s3.4:利用拉格朗日乘数法求解目标函数的极小值,核空间的欧式距离代入聚类目标函数中,并在约束条件下用拉格朗日乘数法寻优,分别对jφ关于μ、v求偏导,得到新的隶属度u的更新公式(3)和聚类中心v和的更新公式(4)
[0090]
由于kfcm算法是fcm的派生算法,同传统的fcm算法一样,kfcm 算法存在一些明显的缺点,如对噪声和野值数据极为敏感、聚类性能依赖于初始中心值、易陷于局部最优、聚类中心较近或重合时容易产生一致性聚类等问题。
[0091]
kfcm的初始聚类中心与核参数的选择对其分类效果的影响较大。
[0092]
kfcm算法在fcm算法基础上引入核函数,将低维非线性特征投影至高维空间,克服了fcm算法对噪声野值点敏感的缺陷,提高了算法鲁棒性。不过两种算法依然存在对初始值敏感和易陷入局部最优的缺点;
[0093]
kfcm与fcm一样其聚类性能具有依赖于聚类中心初始值、易陷入局部最优的缺点。随机选择初始聚类中心而不能获得全局最优且在聚类中心较近或重合时易产生一致性聚类等问题。
[0094]
以下将详细介绍步骤s4的具体情况:
[0095]
在s4中,和声搜索算法(harmony search algorithm,hsa)是模拟乐队通过反复调节乐器使其演奏出最美和声的一种新兴智能算法,在音乐演奏中,乐师往往需要反复调整
乐队中各种乐器的音调,寻找一个最佳的和声状态(目标函数)。
[0096]
本发明在进行设计时将小波神经网络模型的预测误差作为目标函数,即调用小波神经网络进行预测,得到的结果作为和声的适应度值。将需要优化的输入权重wij、输出权重wj、伸缩因子aj、平移因子bj作为每个和声的位置向量, x(hms)=[wij,aj,bj,wj],hms为和声数目,i为输入层节点数,j为隐藏层节点数,则和声维数d=(i+3)
×
j。利用和声搜索算法搜索最佳的小波神经网络结构参数中,将小波神经网络模型的预测误差作为目标函数,即调用小波神经网络进行预测,得到的预测结果作为和声的适应度值,将需要优化的小波神经网络的输入权重、输出权重、伸缩因子和平移因子作为每个和声的位置向量。
[0097]
hsa算法的基本思想为:首先初始化和声记忆库大小(harmony memorysize,hms)和迭代次数(iteration number,nt),产生m个初始解放入和声记忆库中,并对和声记忆库保留概率(harmony memory considering rate,hmcr) 和音调调节率(pitch adjusting rate,par)进行参数设置。然后以概率hmcr在 hm中进行搜索,以1-hmcr概率在记忆库外搜索。同时,在记忆库内进行搜索时,当随机搜索到某一分量后,则对该分量以概率par进行扰动,最后由搜索后得到的各个分量构成新解,若新解优于记忆库中的最差解,则用新解替换库中最差解,否则保持当前hm不变。如此循环,直到满足迭代次数或其他终止条件为止。
[0098]
具体而言,步骤s4包括:
[0099]
s4.1初始化算法相关参数,包括:和声记忆库容量hms、和声记忆库考虑概率hmcr、音调调节概率par、音调微调步长bw、最大迭代次数tmax。
[0100]
其中和声记忆库hm中的每一个和声矢量是由kfcm模型的权值及阈值的完整集合;这五个参数依次对应元启发式算法中的种群大小、从当前种群中选择解的概率、变异概率、变异步长和终止条件。
[0101]
参数初始化设置。在进行rvm参数寻优之前,hs算法自身需要初始化的参数有:记忆库取值概率hmcr,和声记忆库的大小hms(harmonymemory size),音调微调概率par,音调调节带宽bw(bandwith),最大进化迭代代数为tmax,超参数r和y的上、下限值向量分别是xmax和xmin,个体和声向量维数为n。
[0102]
s4.2:初始化和声记忆,具体方法为:
[0103]
在预测神经网络的待优化参数的搜索空间中随机产生hms个和声旋律xi,其中和声旋律下标i=1,2,...,hms;和声旋律xi存储了预测电池soc的神经网络的nd个待优化参数;将产生的hms个和声旋律组成和声记忆库 {x1,x2,...,xi,...,x
hms
},其中xi表示和声记忆库中的第i个和声旋律;
[0104]
初始化和声记忆矩阵。从x的解空间中随机生成hms个和声x1,x2,

, x
hms
放入和声记忆库,并计算每个和声f(x)值;
[0105]
初始化和声记忆库,将随机产生的hms个优化问题的初始解放入和声记忆库中。在解空间ωi范围内随机生成hms个和声解或个体),构成了初始的和声库。这些随机产生的解和对应的目标函数值存储在种群中。通常为了让算法有更好的初始hm,初始产生的随机解数目大于hms,然后选择目标函数值好的hms个解放在种群中。用矩阵表示为:
[0106]
利用xmin+rand1
×
(xmax-xmin)在相关向量机(rvm)超参数解空间中随机产生hms个和声,随机产生的超参数值xhms n和对应的目标函数值f(xhms)存储在种群中,构成了网络安全态势初始的和声库。用矩阵表示为:
[0107][0108]
其中,x1,x2,

,x
hms
为hms初始解,x1,x2,

,xn为每一组初始解中的n个变量。hms个和声,构成了初始的和声库,调用小波神经网络进行预测,计算预测误差,得到原始记忆库(hm)中的各个体适应度值,f(x1)为每一组初始解的适应度函数值。
[0109]
在该和声库中,每一行代表一个解。
[0110]
s4.3:生成新和声,具体方法为:
[0111]
随机产生一个介于0~1之间的随机数rand1,通过与hmcr值进行比较,按顺序逐个生成新的和声向量;
[0112]
在生成后,随机产生一个介于0~1之间的随机数rand2,通过与par 值进行比较判断是否微调音调,微调方式如公式(5) 所示;
[0113]
通过从和声记忆库学习、随机创作一个音调和在学习基础上微调音调3种方式产生一候选解其中分量由公式(6)产生,其中,xi是表示从种群的第i列随机选择一个音调(决策变量);也即第二次变异,可以看出第二次变异的概率是1-hmcr;rand1∈[0,1]上均匀分布的一个随机数。
[0114]
如果是从当前种群中选择的,还要以一定概率调整音调,也即第一次变异。
[0115]
在生成后,随机产生一个介于0~1之间的随机数rand2,通过与par 值进行比较判断是否微调音调,根据公式(7)对选取的个体进行微调;如果不满足rand1《hmcr,则在变量的取值范围里重新生成一个新解,其中,rand2为[0,1]上均匀分布的一个随机数,k为离散变量可能值的个数;
[0116]
产生rand(0,1)的随机数r,r1,r2,生成的新和声向量记为x'=(x'1,x'2,

,x'n),采用改进的音调调整规则和自适应参数调优方法产生新的和声;
[0117]
s4.4:更新和声记忆库,采用稳态选择操作更新,即如果新解x
new
比hm 中最差的解具有更好的目标函数值,那么新解加入到hm中,而最差的解在 hm中被删除,将产生的新解与和声记忆库中最差解进行比较,若新解优于最差解,则替换掉最差解,否则不进行操作,并重新记录hmcr和par的值;
[0118]
s4.5:更新和声记忆库,为了防止算法早熟收敛,规定hm中相同解数目不能超过一定数量,即n(x
new
=xi,i=1,2,...,hms)《maxvec,其中,n(
·
)是计算在hm中相同解个数的函数,maxvec是hm中相同解的最大数量,根据公式(8)即若f(x
new
)<f(x
worst
),则x
new

x
worst
进行进行记忆库的更新,其中x
worst
为和声记忆库中最差解;
[0119]
s4.6:改进和声搜索算法,
[0120]
在和声搜索算法中需要定义bw、par、hmcr三个参数,hsa中的这三个参数采用的是随机搜索策略,较少的参数和清晰的概念使其容易实现,但新解与和声记忆库的产生方式对此算法的结果有很大的影响,尤其是在处理优化问题时收敛精度和局部搜索能力达不到要求。取变化的par和bw值来进行运算。其中,par值按反正切函数由小到大变化,bw值按指数函数由大到小变化对hsa进行改进。
[0121]
设置par变化方式:hmcr应取较大值,因此本文选取参数hmcr为 0.9,使用动态的par参数。在和声算法搜索初期,为了使算法快速搜寻较好的区域,采用较小的par值;在和声算法搜索后期,为了使算法跳出局部极值,采用较大的par值。采用公式(9)确定par值的范围,其中,parmax和parmin分别为par的最大值和最小值, m和n分别为当前和最大迭代次数。起初par为最小值,随着m的增大, par值按反正切函数关系逐渐增大;当m趋近于n时,par值趋近于parmax。
[0122]
设置bw变化方式:在和声算法搜索初期,为了使算法在大范围内进行搜索,采用较大的bw值;在和声算法搜索后期,为了使算法在小范围内进行精细探测,采用较小的bw值。采用公式(10)确定bw值的范围,其中bwmax和bwmin分别为bw的最大值和最小值,m 和n分别为当前和最大迭代次数。起始时bw为最大值,随着m的增加, bw值按指数函数关系逐渐减小。当m趋近于n时,bw趋近于bwmin。
[0123]
s4.7:得到最优参数,判断算法是否终止,若满足最大迭代次数则算法终止,获取最优的小波神经网络结构参数,否则算法转到步骤s3继续执行。
[0124]
最终hm中最好的和声就是算法的最优解,将最优解映射到kfcm模型中,得到网络各层的初始化权值w和阈值θ,并对网络进行训练和负荷预测。
[0125]
将最优和声所对应的向量作为bp神经网络的初始权值和阈值,训练bp 神经网络进行预测。
[0126]
hs算法参数设置为:最大迭代次数n=10000,和声记忆库大小hms=100,搜索空间为[-1,1],记忆库取值概率hmcr=0.95,音调微调概率par=0.3,微调步长bw=0.2。pso算法参数设置为:最大迭代次数n=200,群体规模m=30,搜索空间为[-1,1],惯性因子ω=0.728,局部学习因子、全局学习因子 c1=c2=1.49445。
[0127]
和声记忆库的大小hms=40,和声记忆库的取值概率hmcr=0.4,音调微调概率par=0.1,音调微调步长bw=0.08。
[0128]
为了评价模型预测能力及模型的稳定性,常用的模型重点指标有ks(kolmogorov-smirnov,柯尔莫哥洛夫-斯米尔诺夫检验)、auc(area undercurve,roc曲线下的面积;roc,receiver operating characteristic,受试者工作特征)等,同时也可结合混淆矩阵和/或提升图进行分析。ks值越大、auc值越大,表示模型能够将用户区分开来的程度越大。
[0129]
auc值其实是roc曲线下的面积,roc曲线横轴是fpr(假阳率),纵轴是tpr(正阳率),这2指标的计算公式如下:
[0130]
fpr=fp/(fp+tn)
[0131]
tpr=tp/(tp+fn)
[0132]
其中:tp:预测类别是p(正例),真实类别也是pfn:预测类别是n,真实类别是pfp:预测类别是p,真实类别是n(反例)tn:预测类别是n,真实类别也是n。
[0133]
auc值介于0.1和1之间,auc作为数值可以直观地评价分类器的好坏,值越大越好,计算式参照如下:
[0134][0135]
其中:m为正类样本的数目,n为负类样本的数据,对预测的score从大到小排序,然后令最大score对应的样本的rank为n,第二大score对应样本的 rank为n-1,以此类推。
[0136]
根据本发明第一方面的实施方式,所述kfcm模型还包括数据监督模块,所述数据监督模块用于检测计算而得的数据是否有异常数据。
[0137]
根据本发明第一方面的实施方式,所述kfcm模型还包括数据纠正模块,所述数据纠正模块用于删除所述异常数据,并同时补入合理数据。
[0138]
具体而言,数据监督模块和数据纠正模块是kfcm模型中的辅助功能模块,用于当计算机中毒、被黑客侵入、或其它以外事件发生时,kfcm模型可能会运算得到结果不正确的数据,即异常数据。当数据监督模块检测出有异常数据产生时,数据纠正模块自动启动,删除所述异常数据,并同时补入合理数据。此处所说的合理数据,是指与众多数据相比,符合众多数据运算结果的数据。
[0139]
第二方面
[0140]
本发明的第二方面涉及一种电子设备,其包括:存储器和处理器,所述处理器和所述存储器电连接,所述存储器用于存储程序,且所述处理器调用存储于所述存储器中的程序,以执行如本发明第一方面所述的方法。
[0141]
本领域技术人员应理解的是,所述电子设备,可以是,但不限于个人电脑 (personal computer,pc)、平板电脑、移动上网设备(mobile internet device, mid)等设备。
[0142]
还应理解的是,处理器、存储器以及其他可能出现于电子设备的组件相互之间直接或间接的电性连接,以实现数据的传输或交互。例如,处理器、存储器以及其他可能出现的组件相互之间可以通过一条或多条通讯总线或信号线实现电性连接。
[0143]
第三方面
[0144]
本发明的第三方面涉及一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机运行时执行如本发明第一方面所述的方法。
[0145]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0146]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统和方法,也可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执
行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0147]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0148]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,手机,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0149]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1