一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

目标对象分级方法、装置、设备及可读存储介质与流程

2021-10-27 18:49:00 来源:中国专利 TAG:数据处理 分级 装置 可读 对象


1.本发明涉及数据处理技术领域,尤其涉及一种目标对象分级方法、装置、设备及可读存储介质。


背景技术:

2.银行在经营过程中会产生成千上万个目标对象,例如,运营对象,为了方便进行考核和评级,迫切需要对各个对象进行分级。各个对象的指标数据数量多,各个业务含义差异大,对评级的重要度各不同。如果每个目标对象的评级都经过需求分析、开发、上线、验证4个阶段,流程冗长、迭代缓慢。


技术实现要素:

3.本发明实施例提出一种目标对象分级方法,用以实现对目标对象的分级,效率高,该方法包括:
4.根据业务需求,确定每个目标对象的多个指标;
5.对于每个目标对象的每个指标,解析该目标对象的该指标的计算公式,获得该指标的评分值,基于多个指标的评分值,计算每个目标对象的评分值;
6.根据待分等级数,将多个目标对象生成多个分级方案,其中,每个分级方案包括多个等级,每个等级包括多个目标对象;
7.计算每个分级方案的规模加权距离;
8.采用差分进化算法,基于多个分级方案的规模加权距离,确定最优的分级方案。
9.本发明实施例提出一种目标对象分级装置,用以实现对目标对象的分级,效率高,该装置包括:
10.指标确定模块,用于根据业务需求,确定每个目标对象的多个指标;
11.评分值计算模块,用于对于每个目标对象的每个指标,解析该目标对象的该指标的计算公式,获得该指标的评分值,基于多个指标的评分值,计算每个目标对象的评分值;
12.分级方案获得模块,用于根据待分等级数,将多个目标对象生成多个分级方案,其中,每个分级方案包括多个等级,每个等级包括多个目标对象;
13.规模加权距离计算模块,用于计算每个分级方案的规模加权距离;
14.最优分级方案确定模块,用于采用差分进化算法,基于多个分级方案的规模加权距离,确定最优的分级方案。
15.本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述目标对象分级方法。
16.本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述目标对象分级方法的计算机程序。
17.在本发明实施例中,根据业务需求,确定每个目标对象的多个指标;对于每个目标
对象的每个指标,解析该目标对象的该指标的计算公式,获得该指标的评分值,基于多个指标的评分值,计算每个目标对象的评分值;根据待分等级数,将多个目标对象生成多个分级方案,其中,每个分级方案包括多个等级,每个等级包括多个目标对象;计算每个分级方案的规模加权距离;采用差分进化算法,基于多个分级方案的规模加权距离,确定最优的分级方案。在上述过程中,能够达到的有益效果如下:
18.1、实时性强:从获得指标计算公式,到分级结果可视化显示,可以即时看到反馈结果,便于进行快速的业务迭代。
19.2、扩展性强:可以快速扩张内置的算子、可选指标、以及类内规模加权距离公式,灵活支持新增业务需求。
20.3、灵活度高:根据内置的指标库和算子库,业务人员能够灵活定义多样的指标计算公式。
21.4、业务可解释性强:指标的计算公式根据业务含义直接定义,可解释性强。
附图说明
22.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
23.图1为本发明实施例中目标对象分级方法的流程图;
24.图2为本发明实施例中逆波兰表达式算法的流程图;
25.图3为本发明实施例中差分进化算法计算流程图;
26.图4为本发明实施例中目标对象分级装置的示意图;
27.图5为本发明实施例中目标对象分级装置的另一示意图;
28.图6为本发明实施例中计算机设备的示意图。
具体实施方式
29.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
30.在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本技术的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
31.首先,对本发明实施例中涉及到的术语进行解释。
32.无监督学习:样本没有标签的机器学习。
33.逆波兰表达式:一种后缀表达式,非常适合机器执行,能屏蔽掉括号对运算符的优
先级的提升。
34.进化算法:是一类元启发式算法的统称,借鉴大自然中生物的进化、选择与淘汰机制,通常先产生一个族群,然后不断进化与淘汰,最终产生优异个体作为目标解。
35.差分进化算法:一种基于群体的进化算法,模拟群体中的个体的合作与竞争的过程。
36.图1为本发明实施例中目标对象分级方法的流程图,如图1所示,该方法包括:
37.步骤101,根据业务需求,确定每个目标对象的多个指标;
38.步骤102,对于每个目标对象的每个指标,解析该目标对象的该指标的计算公式,获得该指标的评分值,基于多个指标的评分值,计算每个目标对象的评分值;
39.步骤103,根据待分等级数,将多个目标对象生成多个分级方案,其中,每个分级方案包括多个等级,每个等级包括多个目标对象;
40.步骤104,计算每个分级方案的规模加权距离;
41.步骤105,采用差分进化算法,基于多个分级方案的规模加权距离,确定最优的分级方案。
42.在本发明实施例中,规模加权的距离计算的时间复杂度很低,大大加快了分级方案的优劣的评估速度;引入进化差分算法进行最优分级方案搜索,进一步提高了确定最优的分级方案的效率。
43.具体实施时,每个目标对象有多个指标,例如,裕农通服务点这个目标对象在助农服务、数字化获客、资产负债、非金融服务四个方面,产生了风险相关指标、业绩相关指标、经营相关指标等。每个指标的业务含义各不相同,对评级和考核的重要性也有大有小,这个时候需要业务人员根据实际需求,通过可视化的方式在系统指标表库中挑选出其关注的指标出来。
44.在一实施例中,每个指标的计算公式是按照业务需求,采用预定义的算子编写的。
45.在上述实施例中,预定义的算子例如加、减、乘、除、平方、开方、最大/最小值截断、log等。
46.在给上一步中选定的指标标定一个符号名,然后利用上述算子按照业务需求编写指标的计算公式。
47.在一实施例中,解析该目标对象的该指标的计算公式,包括:
48.采用逆波兰表达式算法解析该目标对象的该指标的计算公式。
49.图2为本发明实施例中逆波兰表达式算法的流程图,步骤如下:
50.步骤201,从左至右扫描指标的计算公式(也称为中缀表达式),获取读取内容,若读取的是操作数,进入步骤202,若读取的是运算符,进入步骤203;
51.步骤202,判断该操作数的类型,并将该操作数存入操作数堆栈;转至步骤207;
52.步骤203,判断读取的运算符,若为左括号"(",进入步骤204,若为右括号")",进入步骤205,若为非括号,进入步骤206;
53.步骤204,将运算符存入运算符堆栈;转至步骤207;
54.步骤205,输出运算符堆栈中的运算符到操作数堆栈,直到遇到左括号为止,此弹出该左括号"(";转至步骤207;
55.步骤206,在运算符堆栈栈顶的运算符为左括号时,将读取的运算符直接存入运算
符堆栈;若读取的运算符比运算符堆栈栈顶的运算符优先级高,将读取的运算符直接存入运算符堆栈;若读取的运算符比运算符堆栈栈顶的运算符优先级低或相等,则输出栈顶运算符到操作数堆栈,直至运算符栈栈顶运算符低于(不包括等于)该运算符优先级,或为左括号,将读取的运算符压入运算符堆栈;转至步骤207;
56.步骤207,当表达式读取完成后运算符堆栈中尚有运算符时,则依序取出运算符到操作数堆栈,直到运算符堆栈为空;
57.步骤208,输出操作数栈的栈顶值为指标的评分值。
58.在一实施例中,根据待分等级数,将多个目标对象生成多个分级方案,包括:
59.将所有目标对象按照评分值从小到大排序;
60.将排序后的目标对象按段划分为待分等级数个集合,每个集合对应一个等级,不同的段能够形成多个分级方案。
61.具体实施时,分成m个等级的目标是在控制每个等级所包含的目标对象的百分比范围的同时,充分考虑评分数据整体分布的特征,在科学性和业务含义间达到平衡。
62.假设目标对象个数为n,等级数为m,则所有可能的分级方案数为n
×
(n

1)
×
(n

2)
×
λ
×
(n

m 1),在n比较大时,总可能分级方案数巨大,无法进行暴力评估来实现实时计算的需求,本发明实施例采用进化差分算法来实现分级的实时计算。
63.在一实施例中,计算每个分级方案的规模加权距离,包括:
64.对于每个分级方案,计算该分级方案中每个等级的占比差,计算该分级方案中每个等级的类内距离;
65.根据每个分级方案中各个等级的占比差和类内距离,计算每个分级方案的规模加权距离。
66.在上述实施例中,占比差是指每个等级所包含样本百分比与目标百分比的差距大小,类内距离是指每个等级内所包含的目标对象的评分值的总体差异大小。
67.在一实施例中,采用如下公式计算该分级方案中每个等级的占比差:
68.diff
i
=|pi

pi

|
69.其中,diff
i
为等级i的占比差;pi为等级i中目标对象数占所有目标对象数的百分比;pi

为目标百分比。
70.每个等级所包含的样本数可能巨大,直接计算时间复杂度为o(n),计算代价大。为了加速各个等级的类内距离的计算,采用累加数组将时间复杂度降到o(logn),步骤如下。
71.在一实施例中,计算该分级方案中每个等级的类内距离,包括:
72.对于每个分级方案的每个等级,根据该等级的评分数组s,构建该等级的累加数组c,所述评分数组为该等级的多个目标对象的评分值按从小到大排序形成的数组;其中,
73.根据所述评分数组和累加数据,确定该等级的评分数组在预设范围内的均值,所述预设范围在第一数值和第二数值之间;等级i的评分数组在预设范围内的均值mean
i
可以表示为
74.使用二分折半查找法所述均值在所述评分数组中的插入位置,这一步的时间复杂
度为log(y

x);
75.根据第一数值和插入位置,计算该等级的第一类内距离;
76.根据插入位置和第二数值,计算该等级的第二类内距离;
77.根据第一类内距离和第二类内距离,计算该等级的类内距离。
78.上述计算过程的总体复杂度为log(n)。
79.在一实施例中,采用如下公式,根据第一数值和插入位置,计算该等级的第一类内距离:
[0080][0081]
其中,dist
i
(x,z)为等级i的第一类内距离;x为第一数值;z为插入位置;mean
i
为等级i的评分数组在预设范围内的均值;c[z]为累加数组在插入位置处的值;c[x]为累加数组在第一数值处的值;
[0082]
采用如下公式,根据插入位置和第二数值,计算该等级的第二类内距离:
[0083][0084]
其中,dist
i
(z,y)为等级i的第二类内距离;
[0085]
采用如下公式,根据第一类内距离和第二类内距离,计算该等级的类内距离:
[0086][0087]
其中,dist
i
为等级i的类内距离。
[0088]
在一实施例中,采用如下公式,根据每个分级方案中各个等级的占比差和类内距离,计算每个分级方案的规模加权距离:
[0089][0090]
其中d为每个分级方案的规模加权距离;diff
i
为每个分级方案中等级i的占比差;dist
i
为每个分级方案中等级i的类内距离;w为权重因子。
[0091]
需要指出的是,权重因子,可以用来调节百分比的权重影响,一般取值为1。(这只是一种线性加权方案,可以根据业务需求采用更加复杂的非线性加权方案)。规模加权距离越小,说明类内距离越小,同时与业务人员设定的各等级百分比差异越小。该值越小,分级方案越优。
[0092]
本发明实施例的目标是从所有可能的分级方案中找出规模加权距离最小的分级方案。由于所有可能的分级方案数量巨大,又要实时响应用户的请求,不可能采用暴力遍历的方式。本发明实施例提出采用进化差分算法来快速寻找近似最优的分级方案。
[0093]
差分进化算法(differential evolution algorithm,de)是一种基于群体的进化算法,它模拟了群体中的个体的合作与竞争的过程。算法原理简单,控制参数少,只有交叉概率和缩放比例因子,鲁棒性强,易于实现。
[0094]
差分进化算法中,每一个个体的基因表示待求解问题的一个候选解。本发明实施例采用如下基因编码方式:
[0095]
对于已排好顺序的对象评分数组s,对象个数为n,等级个数为m,则使用从小到大排序的(m

1)个在[0,n]范围内的整数表示每个等级的边界索引值。
[0096]
即基因为x=(v1,v2,λ,v
m
),其中0≤v1≤v2≤λ≤v
m
≤n
[0097]
通过这种基因编码方式,只有边界约束条件。
[0098]
图3为本发明实施例中差分进化算法计算流程图,包括:
[0099]
步骤301,初始化种群:随机生成pn个个体的基因,设差分进化算法群体包含个体数为pn;
[0100]
步骤302,变异:随机选择3个个体x
r1
、x
r2
、x
r3
,按照如下公式,计算变异基因;
[0101]
u=x
r1
f(x
r2

x
r3
),其中u为变异基因,f为缩放比例因子,一般取值为0.5;
[0102]
步骤303,交叉:首先生成一个随机数1≤d
rand
≤m,然后随机选择一个个体xr,现在交叉xr和u的基因,生成新个体w=(w1,w2,λ,w
m
),生成过程的公式如下:
[0103]
其中cr为交叉概率;
[0104]
步骤304,计算适应度函数:计算w和xr的基因代表的两个分级方案的规模加权距离;
[0105]
步骤305,选择:选择w和xr的基因代表的两个分级方案的规模加权距离值小的那个个体保留,丢弃另外一个个体;
[0106]
步骤306,判断是否结束:如果经过指定轮数迭代后,最优个体没有改变,则结束迭代,选择种群中最优个体的基因代表的方案作为最优分级方案。
[0107]
注:如果时间允许的情况下,可以通过收缩缩放因子f和增大交叉因子cr可以增加种群个体的多样性,可能寻找到更优的解。
[0108]
在一实施例中,所述方法还包括:
[0109]
对最优的分级方案进行可视化展示,这样可以供业务人员进行人工分析。如果分级结果不满足业务需求,还可以快速重复上述步骤,进行新的一轮调整。
[0110]
本发明实施例还提出一种目标对象分级装置,其原理与目标对象分级方法类似,这里不再赘述。
[0111]
图4为本发明实施例中目标对象分级装置的示意图,如图4所示,该装置包括:
[0112]
指标确定模块401,用于根据业务需求,确定每个目标对象的多个指标;
[0113]
评分值计算模块402,用于对于每个目标对象的每个指标,解析该目标对象的该指标的计算公式,获得该指标的评分值,基于多个指标的评分值,计算每个目标对象的评分值;
[0114]
分级方案获得模块403,用于根据待分等级数,将多个目标对象生成多个分级方案,其中,每个分级方案包括多个等级,每个等级包括多个目标对象;
[0115]
规模加权距离计算模块404,用于计算每个分级方案的规模加权距离;
[0116]
最优分级方案确定模块405,用于采用差分进化算法,基于多个分级方案的规模加权距离,确定最优的分级方案。
[0117]
在一实施例中,每个指标的计算公式是按照业务需求,采用预定义的算子编写的。
[0118]
在一实施例中,评分值计算模块具体用于:
[0119]
采用逆波兰表达式算法解析该目标对象的该指标的计算公式。
[0120]
在一实施例中,分级方案获得模块具体用于:
[0121]
将所有目标对象按照评分值从小到大排序;
[0122]
将排序后的目标对象按段划分为待分等级数个集合,每个集合对应一个等级,不同的段能够形成多个分级方案。
[0123]
在一实施例中,规模加权距离计算模块具体用于:
[0124]
对于每个分级方案,计算该分级方案中每个等级的占比差,计算该分级方案中每个等级的类内距离;
[0125]
根据每个分级方案中各个等级的占比差和类内距离,计算每个分级方案的规模加权距离。
[0126]
在一实施例中,规模加权距离计算模块具体用于:
[0127]
采用如下公式计算该分级方案中每个等级的占比差:
[0128]
diff
i
=|pi

pi

|
[0129]
其中,diff
i
为等级i的占比差;pi为等级i中目标对象数占所有目标对象数的百分比;pi

为目标百分比。
[0130]
在一实施例中,规模加权距离计算模块具体用于:
[0131]
对于每个分级方案的每个等级,根据该等级的评分数组,构建该等级的累加数组,所述评分数组为该等级的多个目标对象的评分值按从小到大排序形成的数组;
[0132]
根据所述评分数组和累加数据,确定该等级的评分数组在预设范围内的均值,所述预设范围在第一数值和第二数值之间;
[0133]
使用二分折半查找法所述均值在所述评分数组中的插入位置;
[0134]
根据第一数值和插入位置,计算该等级的第一类内距离;
[0135]
根据插入位置和第二数值,计算该等级的第二类内距离;
[0136]
根据第一类内距离和第二类内距离,计算该等级的类内距离。
[0137]
在一实施例中,规模加权距离计算模块具体用于:
[0138]
采用如下公式,根据第一数值和插入位置,计算该等级的第一类内距离:
[0139][0140]
其中,dist
i
(x,z)为等级i的第一类内距离;x为第一数值;z为插入位置;mean
i
为等级i的评分数组在预设范围内的均值;c[z]为累加数组在插入位置处的值;c[x]为累加数组在第一数值处的值;
[0141]
采用如下公式,根据插入位置和第二数值,计算该等级的第二类内距离:
[0142][0143]
其中,dist
i
(z,y)为等级i的第二类内距离;
[0144]
采用如下公式,根据第一类内距离和第二类内距离,计算该等级的类内距离:
[0145][0146]
其中,dist
i
为等级i的类内距离。
[0147]
在一实施例中,规模加权距离计算模块具体用于:
[0148]
采用如下公式,根据每个分级方案中各个等级的占比差和类内距离,计算每个分级方案的规模加权距离:
[0149][0150]
其中d为每个分级方案的规模加权距离;diff
i
为每个分级方案中等级i的占比差;dist
i
为每个分级方案中等级i的类内距离;w为权重因子。
[0151]
图5为本发明实施例中目标对象分级装置的另一示意图;在一实施例中,还包括展示模块406,用于:对最优的分级方案进行可视化展示。
[0152]
本技术的实施例还提供一种计算机设备,图6为本发明实施例中计算机设备的示意图,该计算机设备能够实现上述实施例中的目标对象分级方法中全部步骤,所述计算机设备具体包括如下内容:
[0153]
处理器(processor)601、存储器(memory)602、通信接口(communications interface)603和通信总线604;
[0154]
其中,所述处理器601、存储器602、通信接口603通过所述通信总线604完成相互间的通信;所述通信接口603用于实现服务器端设备、检测设备以及用户端设备等相关设备之间的信息传输;
[0155]
所述处理器601用于调用所述存储器602中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的目标对象分级方法中的全部步骤。
[0156]
本技术的实施例还提供一种计算机可读存储介质,能够实现上述实施例中的目标对象分级方法中全部步骤,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的目标对象分级方法的全部步骤。
[0157]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0158]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0159]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0160]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0161]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜