运营商多数据融合方法、系统、电子设备及计算机存储介质与流程
未命名
07-15
阅读:154
评论:0
1.本发明涉及运营商多源数据融合领域,尤其涉及一种运营商多数据融合方法、系统、电子设备及计算机存储介质。
背景技术:
2.运营商行业数据具有数据规模大、数据源多、数据类型复杂、实时性要求高和安全性要求高等特点,这些数据来自于海量的用户或不同的系统、平台和渠道,其数据格式、质量和可靠性存在较大差异。为了帮助运营商更好地了解用户需求和行为,优化网络架构和资源配置,提升服务质量和用户体验,从而提高市场竞争力和经济效益,需要对运营商行业做多源数据的融合分析,以消除数据孤岛、提高数据质量和可信度,发现数据之间的关联性和趋势。
3.常用的多源数据融合算法包括基于加权平均、基于最大化、基于聚类和基于决策树等方法,但这些算法均存在一些普遍的缺点,如对数据源异构性的适应能力有限,对于数据量大、数据维度高的情况,其计算复杂度过高、且难以处理时效性较高的数据,数据流动变化的适应性差。
4.因此,需要进一步研究和优化算法,以提高其准确性、效率和可解释性。
技术实现要素:
5.发明目的:本发明为了解决运营商多源数据融合时,其计算复杂度高、时效性处理较差等问题,提出一种运营商多数据融合方法、系统、电子设备及计算机存储介质,实现运营商数据的大批量快速融合,以适用于大容量数据融合的场景。
6.本发明的技术方案是这样实现的:
7.第一方面,提出一种运营商多数据融合方法,该方法包括如下步骤:
8.建立第一阶段规则引擎,在第一阶段规则引擎中配置待提取的数据范围,形成数据池;数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源;
9.数据流引擎在数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集;
10.在第一阶段规则引擎中内嵌自适应流式引擎算法模型,形成第二阶段规则引擎;第二阶段规则引擎将运营商多源待融合数据集拆分为多个子任务进行管理和调度;
11.业务系统根据业务需求调用第二阶段规则引擎,将需要匹配的数据传递给第二阶段规则引擎,第二阶段规则引擎根据预设的算法规则,对传入的数据集进行匹配和处理,并返回匹配结果;
12.业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。
13.在第一方面进一步的实施例中,基站信令数据源至少包括:基站位置、信号强度、接入时间、掉线时间;
14.用户终端信令数据源至少包括:终端位置、信号强度、网络类型、数据传输速率;
15.网络信令数据源至少包括:网络状态、负载、拥塞程度、丢包率;
16.在第一阶段规则引擎中配置待提取的数据范围至少包括:
17.配置过滤时间范围,只保留指定时间段内的信令数据;
18.配置过滤信令类型范围,只保留指定的信令类型;
19.配置过滤imsi/imei号码,按需过滤指定的imsi或imei号码;
20.配置过滤基站id,按需过滤指定基站的信令数据;
21.配置过滤位置信息,按需过滤指定地点的信令数据;
22.配置过滤其他条件,按需过滤包括呼叫持续时间、通话状态在内的其它条件。
23.在第一方面进一步的实施例中,数据流引擎将提取到的数据转换为结构化的数据流包括如下步骤:
24.步骤a、数据过滤:数据流引擎将要处理的数据从数据库和/或文件导入至第一阶段规则引擎中,过滤出预定条件的数据,并将数据输出至预定位置,并生成包含过滤规则的数据库表和元数据;
25.步骤b、数据去重:在包含过滤规则的数据库表中执行去重规则删除重复数据,得到去重后的数据库表和元数据;
26.步骤c、数据转换:在去重后的数据库表中执行数据转换规则,将原始数据转换为标准格式数据,得到标准化后的数据库表和元数据;
27.步骤d、数据清洗:在标准化后的数据库表中执行数据清洗规则,最终得到运营商多源待融合数据集。
28.在第一方面进一步的实施例中,数据去重的过程包括:
29.步骤b-1、设定数据去重规则,数据去重规则包括多个字段,在执行数据去重时,将数据去重规则内的单个字段的唯一值或多个字段组合的唯一值作为数据去重的依据;
30.步骤b-2、创建一个空的哈希表,分别读取待去重的数据,对每个数据进行哈希运算,得到一个哈希值;
31.步骤b-3、将哈希值作为键,原数据作为值,插入哈希表中:
32.若插入哈希表成功,则说明当前数据是第一次出现,不执行数据去重程序;
33.若插入哈希表失败,则说明当前数据已经出现过,执行数据去重程序;
34.步骤b-4、重复步骤b-2至步骤b-3,直到所有数据都被处理完毕;
35.步骤b-5、在第一阶段规则引擎中测试去重规则,检查是否能正确识别重复数据,并执行去重操作;
36.步骤b-6、返回去重后的数据集合。
37.在第一方面进一步的实施例中,数据去重规则至少包括:
38.时间去重:相同时间戳的数据只保留一条;
39.基站去重:同一基站的多条数据只保留一条最新的数据;
40.用户去重:同一用户的多条数据只保留一条最新的数据;
41.数据类型去重:同一类型的数据只保留一条;
42.数据完整性去重:如果有多条数据的内容完全相同,只保留一条。
43.在第一方面进一步的实施例中,数据转换的过程包括:
44.步骤c-1、确定需要转换的数据源和目标数据结构;
45.步骤c-2、定义数据转换规则,包括时间戳转换、地理位置转换、十六进制转换、编码转换、数据类型转换、字段映射;
46.步骤c-3、使用第一阶段规则引擎提供的转换函数和表达式来实现数据转换规则;
47.步骤c-4、针对数据转换过程中出现的异常情况,编写相应的异常处理规则,确保数据转换的正确性和稳定性。
48.在第一方面进一步的实施例中,数据清洗的过程包括:
49.步骤d-1、确定要清洗的数据源和数据清洗后的目标,分别执行缺失值处理和异常值处理:
50.缺失值处理:检测数据中是否存在缺失值,并采用均值填充、中位数填充、插值法对数据填充或删除;
51.异常值处理:检测数据中是否存在异常值,并采用删除异常值、替换异常值的方法对数据的异常值进行处理;
52.步骤d-2、确定清洗规则,将清洗规则添加到第一阶段规则引擎中,在标准化后的数据库表中执行数据清洗规则,最终得到运营商多源待融合数据集。
53.在第一方面进一步的实施例中,清洗规则包括:
54.数据格式验证:验证数据是否符合指定格式,指定格式包括手机号码位数是否符合国家标准、身份证号码是否符合国家标准;
55.数据去重:利用去重规则删除重复数据;
56.数据修正:对经过数据格式验证后的不完整或错误的数据进行纠正;
57.时间修正:对于基站发送的时间戳,进行修正以匹配实际时间;
58.位置修正:对于基站发送的位置信息,进行修正以匹配实际位置;
59.数据格式修正:对于基站发送的数据格式不正确的情况,进行修正以匹配标准数据格式;
60.数据补全:对于基站发送的数据不完整的情况,进行补全以获得完整数据;
61.数据过滤:对于基站发送的数据中包含噪声或无用信息的情况,进行过滤以获得有用数据。
62.在第一方面进一步的实施例中,自适应流式引擎算法模型的构建过程包括:
63.s1、将运营商多源待融合数据集拆分为多个子任务,定义需要多源融合业务的输入数据源表和输出数据源表:
[0064][0065][0066]
式中,表示由多个拆分的子任务构成的输入数据源表,表示第n个子任务的数据源;表示输出数据源表,其中表示经过融合后输出得到的数据源;
[0067]
s2、定义第i个子任务中规则模型编号ruleiid、规则名称ruleiname、规则描述ruleidec;
[0068]
s3、对于子任务taskn,从输入源中获取数据,将其赋值给taskn(input)变量,使用第一阶段规则引擎将taskn(rulei)作为参数传递,将第一阶段规则引擎的返回值赋值给taskn(output),在第一阶段规则引擎被触发时,循环对子任务1至子任务n中的每个规则的
权重进行计算,根据触发的规则及其权重,将所有触发的规则的权重相加得到总和:
[0069][0070]
式中,表示第n个子任务所触发的第i个规则;表示第n个子任务触发的规则的权重;
[0071]
s4、对运营商多源待融合数据集的每个子任务进行划分为k个等份,对于每个等份,将其作为测试集,其余的k-1个等份作为训练集;
[0072]
对于每个训练集,训练一个模型,并使用测试集进行测试,记录性能指标;
[0073]
s5、将训练集中每个子任务分别加载并加载配置的初始规则,并将其保存在内存中;从外部消息引擎kafka中接入事件流,根据加载的规则进行唯一值编号;
[0074]
s6、通过接收一个规则引擎配置规则列表,计算列表中所有元素的总和;通过将总和除以列表的长度计算出平均值,并将结果存储在一个名为平均规则的结果对象中;
[0075]
s7、构建由多个算法规则组成的算法池,基于业务分析的数据和业务需求选择算法池中的一项或多项算法规则;
[0076]
s8、针对步骤s7中一项或多项算法规则生成的预定数据点进行抽查,以判断训练集的准确性。
[0077]
在第一方面进一步的实施例中,步骤s6将mean结果对象插入到规则模型编号表数据集中,计算公式如下:
[0078][0079]
式中,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;
[0080]
当数据集为空列表且结果为平均值时,执行以下操作:
[0081]
初始化一个变量sum为0;
[0082]
对于数据集中的每个数x,计算(x-平均值)^2并加到sum中;
[0083]
计算标准差sd,公式为:
[0084][0085]
其中,mean表示数据集的平均值,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;
[0086]
将sd结果对象插入到规则模型编号表数据集中。
[0087]
在第一方面进一步的实施例中,步骤s8进一步包括:
[0088]
s8-1、对于多个算法规则生成的分类任务,确认每个样本的类别是否正确;如果发现错误,将当前错误记录下来,并调整规则;
[0089]
s8-2、对抽查结果进行分析,以确定训练集的准确性;
[0090]
s8-3、对全量数据的每个任务分别加载算法规则,并加载配置的初始规则,并重新定义规则编号;
[0091]
s8-4、根据更新规则的编号,与算子节点的键比对;算子节点定义是数据+规则组成的数据包;
[0092]
s8-4a、如果存在规则编号与算子节点的键一致,则将当前更新规则转换成特殊标志的事件流;
[0093]
s8-4b、如果存在多个并发算子节点,则拷贝多份规则事件并设置不同的指定字段的值;然后往当前任务的下游算子投递事件流;分析的算子节点根据特殊事件流的编号信息及版本信息,与此节点现有的规则进行比对;
[0094]
s8-4c、如果所有规则编号与算子节点的键都一致,则更新规则,并用新规则进行实时关联分析;
[0095]
s8-5、根据初始的规则为含有规则编号的多个规则列表;
[0096]
s8-6、根据下游交叉算子并行度生成相应多个事件;事件的类型字段改成规则类型,事件的编号改成规则的编号,其他相应字段值也做更新:
[0097]
s8-6a、使用选择算子选择两个父代权重向量;
[0098]
s8-6b、使用交叉算子结合两个父代权重向量,产生一个新的后代权重向量;
[0099]
s8-6c、使用变异算子对后代权重向量进行调整;
[0100]
s8-7、将后代权重向量添加到种群中;
[0101]
s8-8、根据实时数据和模型预测的结果,采用基于遗传算法以达到自适应流式控制,调整触发规则的权重;
[0102]
s8-9、定义适度函数:
[0103]
在网络优化领域,选择网络负载和连接质量作为适应度函数的指标;
[0104]
在位置服务领域,选择定位精度和响应时间指标作为适应度函数的评价标准。
[0105]
在第一方面进一步的实施例中,步骤s8-2对抽查结果进行分析的过程包括:
[0106]
s8-2a、如果发现错误或不完整的数据大于等于预定值,则重新执行数据清洗流程,自动调整权重规则;
[0107]
s8-2b、如果发现错误或不完整的数据小于预定值,则继续使用当前数据集进行训练。
[0108]
在第一方面进一步的实施例中,步骤s8-4根据更新规则的编号与算子节点的键比对的过程包括:
[0109]
如果比对如果一致,则把当前更新规则转换成特殊标志的事件流;
[0110]
如果有多个并发节点,则拷贝多份规则事件并设置不同的指定字段的值;然后往此任务的下游算子投递事件流;分析的算子节点根据特殊事件流的编号信息及版本信息,与此节点现有的规则进行比对。
[0111]
在第一方面进一步的实施例中,步骤s8-5进一步包括:
[0112]
根据更新规则的编号,与需要更新的算子节点的规则的键比较;如果比较结果不一致,则忽略当前更新规则;如果比较结果一致,则把此更新规则转换成特殊标志的事件流。
[0113]
第二方面,提出一种运营商多数据融合系统,该系统包括第一阶段规则引擎、数据流引擎、第二阶段规则引擎、以及业务系统四个组成部分。
[0114]
第一阶段规则引擎中配置待提取的数据范围,形成数据池;数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源;
[0115]
数据流引擎在数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集;
[0116]
第二阶段规则引擎在第一阶段规则引擎中内嵌自适应流式引擎算法模型构建得
到,第二阶段规则引擎将运营商多源待融合数据集拆分为多个子任务进行管理和调度;
[0117]
业务系统根据业务需求调用第二阶段规则引擎,将需要匹配的数据传递给第二阶段规则引擎,第二阶段规则引擎根据预设的算法规则对传入的数据集进行匹配和处理,并返回匹配结果;业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。
[0118]
第三方面,提出一种电子设备,该电子设备包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行第一方面的运营商多数据融合方法。
[0119]
第四方面,提出一种计算机可读存储介质,存储介质中存储有至少一可执行指令,可执行指令在电子设备上运行时,使得电子设备执行如第一方面的运营商多数据融合方法的操作。
[0120]
有益效果:上述运营商多数据融合方法、系统、电子设备及计算机存储介质,针对每个任务使用不同的数据源,以及针对不同的数据源使用不同的数据融合算法,大大提升了数据融合的精度和效率。此外,拆分任务后可以将复杂的融合过程分解成简单的子任务,更容易进行管理和调度,同时也可以支持并行计算,提高融合的速度,适用于大规模、复杂的多源数据融合问题。此外,集成系统应用,根据业务的需求,选择适合的自适应流式规则引擎,进行相关的配置,实现灵活部署。
附图说明
[0121]
图1是一个实施例中运营商多数据融合方法的流程图。
[0122]
图2是一个实施例中将提取到的数据转换为结构化的数据流的流程图。
[0123]
图3是一个实施例中数据去重的流程图。
[0124]
图4是一个实施例中运营商多数据融合系统的结构示意图。
具体实施方式
[0125]
在下文的描述中,给出了大量具体的细节以便提供对本发明更为彻底的理解。然而,对于本领域技术人员而言显而易见的是,本发明可以无需一个或多个这些细节而得以实施。在其他例子中,为了避免与本发明发生混淆,对于本领域公知的一些技术特征未进行描述。
[0126]
图1展示了一个实施例中运营商多数据融合方法的流程图,在本实施例中提出如下运营商多数据融合的方法:
[0127]
步骤1、建立第一阶段规则引擎,在所述第一阶段规则引擎中配置待提取的数据范围,形成数据池;所述数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源。
[0128]
可选的,基站信令数据源包含基站的位置、信号强度、接入时间、掉线时间等信息。
[0129]
用户终端信令数据源包含终端的位置、信号强度、网络类型、数据传输速率等信息。
[0130]
网络信令数据源包含网络的状态、负载、拥塞程度、丢包率等信息。
[0131]
可选的,配置待提取的数据范围包括需要收集哪些类型的信令数据、收集数据的时间范围、数据的采集频率等。
[0132]
收集数据的时间范围:比如一个月、一季度、半年等。
[0133]
数据的采集频率:比如每小时、每天、每周等。具体需要根据业务场景和数据变化情况来进行调整。
[0134]
步骤2、数据流引擎在所述数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集。确定需要支持的数据处理功能和数据处理规模。使用数据流引擎进行数据过滤和解析,对采集到的原始数据进行过滤、去重、解密等内置规则配置。
[0135]
在一个实施例中,见图2,数据流引擎在对数据进行结构化操作时步骤如下:
[0136]
一、数据过滤:根据数据源、数据类型、数据内容等进行过滤,只保留需要的数据。
[0137]
(1)定义规则:首先,需要定义规则,即要对数据进行什么样的过滤和处理。详细定义规则如下:
[0138]
①
时间范围:设置过滤时间范围,只保留指定时间段内的信令数据。
[0139]
②
信令类型:根据需要选择过滤特定的信令类型,如呼叫建立、呼叫结束、短信等。
[0140]
③
imsi/imei号码:可以根据需要过滤指定的imsi或imei号码的信令数据。
[0141]
④
基站id:根据需要过滤指定基站的信令数据。
[0142]
⑤
位置信息:可以根据需要过滤指定地点的信令数据,如城市、区域等。
[0143]
⑥
其他条件:根据具体需求设置其他过滤条件,如呼叫持续时间、通话状态等。
[0144]
(2)建立规则引擎:在可视化界面中定义规则,建立一个规则引擎,并根据业务需要执行上述定义的规则。
[0145]
(3)导入数据:根据多源融合配置将要处理的数据从数据库、文件或其他来源导入规则引擎中。
[0146]
(4)执行规则:用户手动或者程序自动执行规则引擎,让它根据定义的规则对数据进行过滤和处理。规则引擎会自动应用定义的规则,过滤出符合条件的数据,并将其输出或存储到指定的位置。
[0147]
(5)输出结果:规则引擎处理完数据后,将结果输出到指定的位置。并生成包含过滤规则的数据库表和元数据。
[0148]
二、数据去重:数据过滤后的有些数据可能会重复出现,需要去除重复数据,以减少数据处理的复杂度。
[0149]
可选的,本实施例基于哈希表来实现自动化数据去重算法设计,去重流程见图3:
[0150]
(1)确定数据去重的依据:数据去重的依据可以是某个字段的唯一值,或多个字段组合的唯一值。根据实际情况确定数据去重的依据。设计规则如下:
[0151]
①
时间去重:相同时间戳的数据只保留一条。
[0152]
②
基站去重:同一基站的多条数据只保留一条,通常选择保留最新的数据。
[0153]
③
用户去重:同一用户的多条数据只保留一条,通常选择保留最新的数据。
[0154]
④
数据类型去重:同一类型的数据只保留一条,例如位置信息、呼叫信息、短信信息等。
[0155]
⑤
数据完整性去重:如果有多条数据的内容完全相同,只保留一条即可。
[0156]
(2)创建规则:在规则引擎中创建数据去重的规则,选择合适的条件和动作,使得规则可以正确地识别重复数据,并进行去重操作。
[0157]
(3)定义条件:根据数据去重的依据,定义相应的条件。例如,如果数据去重的依据是某个字段的唯一值,那么条件可以是“当该字段值已存在时,认为数据重复”。
[0158]
(4)定义动作:根据实际需求,定义相应的动作。可以将重复数据删除、合并、标记等。
[0159]
(5)创建一个空的哈希表。
[0160]
①
分别读取规则引擎处理后待去重的数据,对每个数据进行哈希运算,得到一个哈希值。
[0161]
②
将该哈希值作为键,原数据作为值,插入哈希表中。
[0162]
(6)如果插入成功,则说明该数据是第一次出现,不需要去重。
[0163]
(7)如果插入失败,则说明该数据已经出现过,需要进行去重动作操作。
[0164]
(8)重复(5)至(7),直到所有数据都被处理完毕。
[0165]
(9)测试规则:在规则引擎中测试定义好的规则,检查规则是否可以正确地识别重复数据,并进行去重操作。
[0166]
(10)返回去重后的数据集合。
[0167]
三、数据转换:有些数据格式可能不符合需求,需要进行转换。将原始数据转换为标准格式,方便后续的数据处理和分析。如,将时间戳转换为日期格式,将字符串转换为数字格式等。
[0168]
在一个实施例中,数据转换的步骤如下:
[0169]
(1)确定需要转换的数据源和目标数据结构。
[0170]
(2)定义数据转换规则,包括数据类型转换、数据格式转换、数据字段映射等。定义详细规则如下:
[0171]
时间戳转换:运营商数据中的时间戳通常以十进制或十六进制格式出现。需要将其转换为人类可读的日期和时间格式。
[0172]
地理位置转换:运营商数据中的地理位置信息通常以经纬度的形式出现。需要将其转换为可读的地址或地点名称。
[0173]
十六进制转换:运营商数据中的许多字段可能以十六进制的形式出现。需要将其转换为十进制或其他可读的格式。
[0174]
编码转换:运营商数据中的某些字段可能采用了特定的编码方式,如ascii码、unicode等。需要将其转换为可读的文本格式。
[0175]
数据类型转换:运营商数据中的不同字段可能采用了不同的数据类型,如整型、浮点型、布尔型等。需要将其转换为相应的数据类型。
[0176]
字段映射:运营商数据中的某些字段可能采用了不同的命名方式,需要将其映射到统一的命名规则下。
[0177]
(3)使用规则引擎提供的转换函数和表达式来实现数据转换规则。
[0178]
(4)针对数据转换过程中可能出现的异常情况,编写相应的异常处理规则,确保数据转换的正确性和稳定性。
[0179]
四、数据清洗:有些数据可能包含错误或无用信息,需要进行清洗。可以通过正则表达式、关键词过滤等方式进行数据清洗,以提高数据质量。
[0180]
可选的,本实施例提出的数据清洗的步骤如下:
[0181]
(1)确定数据源和目标:首先需要确定要清洗的数据源和数据清洗后的目标。
[0182]
①
缺失值处理:检测数据中是否存在缺失值,并根据数据的实际情况进行填充或删除。常见的缺失值处理方法包括均值填充、中位数填充、插值法等。
[0183]
②
异常值处理:检测数据中是否存在异常值,并根据数据的实际情况进行处理。常见的异常值处理方法包括删除异常值、替换异常值等。
[0184]
(2)确定清洗规则:在设计清洗规则之前,需要了解数据的特点和质量问题。例如,如果数据存在缺失值,可以考虑使用插补方法填补缺失值。如果数据存在异常值,可以考虑使用统计方法或基于模型的方法进行异常值检测和处理。场景的清洗规则如下:
[0185]
(3)数据格式验证:验证数据是否符合指定格式,如手机号码是否为11位数字、身份证号码是否符合国家标准等。
[0186]
(4)数据去重:删除重复的数据记录,以确保数据的准确性和完整性。
[0187]
(5)数据修正:对不完整或错误的数据进行修正和纠正,例如对于手机号码中的错误号码进行修正。
[0188]
①
时间修正:对于基站发送的时间戳,进行修正以匹配实际时间。例如,如果基站的时钟与网络时间不同步,则需要对时间戳进行修正。
[0189]
②
位置修正:对于基站发送的位置信息,进行修正以匹配实际位置。例如,如果基站的经纬度信息不准确,则需要对位置信息进行修正。
[0190]
③
数据格式修正:对于基站发送的数据格式不正确的情况,进行修正以匹配标准数据格式。例如,如果基站发送的数据格式与标准格式不匹配,则需要对数据格式进行修正。
[0191]
(6)数据补全:对于基站发送的数据不完整的情况,进行补全以获得完整数据。例如,如果基站发送的数据缺少某些字段,则需要对数据进行补全。
[0192]
(7)数据过滤:对于基站发送的数据中包含噪声或无用信息的情况,进行过滤以获得有用数据。例如,如果基站发送的数据中包含广告或垃圾信息,则需要对数据进行过滤。
[0193]
(8)实现规则:将设计好的规则实现到规则引擎中。对实现好的规则进行测试和优化,确保规则可以正确地清洗数据,并且在不同数据场景下都能够适用。
[0194]
(9)应用规则:将规则应用到实际数据清洗中,根据需要进行调整和优化。
[0195]
步骤3、在所述第一阶段规则引擎中内嵌自适应流式引擎算法模型,形成第二阶段规则引擎;所述第二阶段规则引擎将所述运营商多源待融合数据集拆分为多个子任务进行管理和调度。
[0196]
在一个实施例中,自适应流式引擎算法模型的构建过程如下:
[0197]
(1)将运营商多源待融合数据集拆分为多个子任务,定义需要多源融合业务的输入数据源表和输出数据源表:
[0198][0199][0200]
式中,表示由多个拆分的子任务构成的输入数据源表,表示第n个子任务的数据源;表示输出数据源表,其中表示经过融合后输出得到的数据源;
[0201]
(2)定义第i个子任务中规则模型编号ruleiid、规则名称ruleiname、规则描述
ruleidec;
[0202]
(3)对于子任务taskn,从输入源中获取数据,将其赋值给taskn(input)变量,使用第一阶段规则引擎将taskn(rulei)作为参数传递,将第一阶段规则引擎的返回值赋值给taskn(output),在第一阶段规则引擎被触发时,循环对子任务1至子任务n中的每个规则的权重进行计算,根据触发的规则及其权重,将所有触发的规则的权重相加得到总和:
[0203][0204]
式中,表示第n个子任务所触发的第i个规则;表示第n个子任务触发的规则的权重;
[0205]
(4)对运营商多源待融合数据集的每个子任务进行划分为k个等份,对于每个等份,将其作为测试集,其余的k-1个等份作为训练集;
[0206]
对于每个训练集,训练一个模型,并使用测试集进行测试,记录性能指标;
[0207]
(5)将训练集中每个任务分别加载并加载配置的初始规则,并将其保存在内存中。从外部消息引擎kafka中接入事件流,根据加载的规则进行唯一值编号;
[0208]
(6)通过接收一个规则引擎配置规则列表,计算列表中所有元素的总和。然后,它通过将总和除以列表的长度,计算出平均值,并将结果存储在一个名为平均规则的结果对象中。将mean结果对象插入到规则模型编号表数据集中。计算公式如下:
[0209][0210]
式中,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;
[0211]
当数据集为空列表且结果为平均值时,执行以下操作:
[0212]
初始化一个变量sum为0;
[0213]
对于数据集中的每个数x,计算(x-平均值)^2并加到sum中;
[0214]
计算标准差sd,公式为:
[0215][0216]
其中,mean表示数据集的平均值,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;
[0217]
将sd结果对象插入到规则模型编号表数据集中。
[0218]
(7)构建由多个算法规则组成的算法池,基于业务分析的数据和业务需求选择算法池中的一项或多项算法规则;
[0219]
可选的,算法池可以内置如下算法规则,以便基于业务分析的数据和业务需求选择内置不同的算法模型:
[0220]
①
欧几里得距离公式:用于计算两个基站之间的距离,公式为:
[0221][0222]
其中和是第一个基站的坐标,和是第二个基站的坐标。
[0223]
②
k-means算法:用于将基站分组,以便更好地进行数据分析和处理。该算法将基站分为k个不同的簇,使得同一簇内的基站距离较近,而不同簇之间的基站距离较远。
[0224]
③
决策树算法:用于预测基站信令数据的特征,例如用户所在的位置或行为。该算
法通过构建一个决策树来预测数据的属性,每个节点表示一个属性,每个分支表示该属性的取值,最终到达叶子节点的属性值即为预测结果。
[0225]
④
贝叶斯分类器算法:用于分类基站信令数据,例如将用户分为不同的群体或行为类别。该算法通过先验概率和条件概率来计算每个类别的概率,并将数据分配给具有最高概率的类别。
[0226]
(8)运行规则引擎计算训练集数据,针对步骤(7)中一项或多项算法规则生成的预定数据点进行抽查,以判断训练集的准确性。
[0227]
在一个实施例中,抽查步骤如下:
[0228]
①
针对一些规则生成的特定的数据点进行抽查。
[0229]
②
对于多个规则生成的分类任务,需要确认每个样本的类别是否正确;如果发现错误,需要将其记录下来,并调整规则。
[0230]
③
分析抽查结果:对抽查结果进行分析,以确定训练集和训练数据的准确性。
[0231]
如果发现错误或不完整的数据较多,可能需要重新采集或清洗数据。自动调整权重规则。
[0232]
如果抽查结果表明数据准确性很高,可以继续使用该数据集进行训练。
[0233]
对全量数据进行算法每个任务分别加载,并加载配置的初始规则,并重新定义规则编号。
[0234]
④
根据更新规则的编号,与算子节点的键比对。
[0235]
如果一致,把此更新规则转换成特殊标志的事件流。
[0236]
如果有多个并发节点,则拷贝多份规则事件并设置不同的指定字段的值。然后往此任务的下游算子投递事件流。分析的算子节点根据特殊事件流的编号信息及版本信息,与此节点现有的规则进行比对。
[0237]
只有都一致情况,则更新规则,并用新规则进行实时关联分析。
[0238]
⑤
根据初始的规则为含有规则编号的多个规则列表。
[0239]
规则流中根据更新规则的编号,与需要更新的算子节点的规则的键比较。
[0240]
如果比较结果不一致,则忽略此更新规则。
[0241]
如果比较结果一致,则把此更新规则转换成特殊标志的事件流。
[0242]
⑥
根据下游交叉算子并行度,生成相应多个事件。事件的类型字段改成规则类型,事件的编号改成规则的编号,其他相应字段值也做更新。
[0243]
使用选择算子选择两个父代权重向量。
[0244]
使用交叉算子结合两个父代权重向量,产生一个新的后代权重向量。
[0245]
使用变异算子对后代权重向量进行微小的调整。
[0246]
⑦
将后代权重向量添加到种群中。
[0247]
⑧
根据实时数据和模型预测的结果。采用基于遗传算法以达到自适应流式控制,调整触发规则的权重,以提高预测准确性和系统性能。
[0248]
⑨
定义适度函数:
[0249]
在网络优化领域,选择网络负载和连接质量作为适应度函数的指标;
[0250]
在位置服务领域,选择定位精度和响应时间等指标作为适应度函数的评价标准。
[0251]
将处理后的数据进行可视化展示,以便用户可以查看数据的状态和执行的操作。
[0252]
步骤4、集成系统应用:业务系统根据业务需求调用所述第二阶段规则引擎,将需要匹配的数据传递给所述第二阶段规则引擎,所述第二阶段规则引擎根据预设的算法规则,对传入的数据集进行匹配和处理,并返回匹配结果;业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。
[0253]
在一个实施例中,集成系统应用的步骤如下:根据业务的需求,选择适合的自适应流式规则引擎,并进行相关的配置和部署。然后,在系统中需要进行规则匹配的地方,调用自适应流式规则引擎的 api 接口,将需要匹配的数据传递给引擎。自适应流式规则引擎会根据预设的规则和算法,对传入的数据集进行匹配和处理,并返回匹配结果。最后,根据匹配结果,系统可以进行相应的业务逻辑处理和多源数据融合。
[0254]
在一个实施例中,如图4所示,提出一种运营商多数据融合系统,该系统包括第一阶段规则引擎、数据流引擎、第二阶段规则引擎、以及业务系统四个组成部分。
[0255]
第一阶段规则引擎中配置待提取的数据范围,形成数据池;数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源。数据流引擎在数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集。第二阶段规则引擎在第一阶段规则引擎中内嵌自适应流式引擎算法模型构建得到,第二阶段规则引擎将运营商多源待融合数据集拆分为多个子任务进行管理和调度。业务系统根据业务需求调用第二阶段规则引擎,将需要匹配的数据传递给第二阶段规则引擎,第二阶段规则引擎根据预设的算法规则对传入的数据集进行匹配和处理,并返回匹配结果;业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。
[0256]
关于运营商多数据融合系统的具体限定可以参见上文中对于运营商多数据融合方法的限定,在此不做赘述。上述运营商多数据融合系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于接入网设备中的处理器中,也可以以软件形式存储于接入网设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0257]
在一个实施例中,提出一种电子设备,该电子设备包括处理器、存储器、通信接口和通信总线。处理器、存储器和通信接口通过通信总线完成相互间的通信。存储器用于存放至少一可执行指令,可执行指令使所述处理器执行图1中运营商多数据融合方法的流程。
[0258]
本技术实施例还额外提供了一种计算机可读存储介质,存储介质中存储有至少一可执行指令,可执行指令在电子设备上运行时,使得电子设备执行如上述实施例所述的运营商多数据融合方法的操作。
[0259]
综上所述,为了解决运营商多源数据融合时,其计算复杂度高、时效性处理较差等问题,本发明设计了一种自适应流控的创新算法,并运行于数据流引擎上,实现运营商数据的大批量快速融合,以适用于高速大容量数据融合的场景。
[0260]
尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上做出各种变化。
技术特征:
1.一种运营商多数据融合方法,其特征在于,包括如下步骤:建立第一阶段规则引擎,在所述第一阶段规则引擎中配置待提取的数据范围,形成数据池;所述数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源;数据流引擎在所述数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集;在所述第一阶段规则引擎中内嵌自适应流式引擎算法模型,形成第二阶段规则引擎;所述第二阶段规则引擎将所述运营商多源待融合数据集拆分为多个子任务进行管理和调度;业务系统根据业务需求调用所述第二阶段规则引擎,将需要匹配的数据传递给所述第二阶段规则引擎,所述第二阶段规则引擎根据预设的算法规则,对传入的数据集进行匹配和处理,并返回匹配结果;业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。2.根据权利要求1所述的运营商多数据融合方法,其特征在于,所述基站信令数据源至少包括:基站位置、信号强度、接入时间、掉线时间;所述用户终端信令数据源至少包括:终端位置、信号强度、网络类型、数据传输速率;所述网络信令数据源至少包括:网络状态、负载、拥塞程度、丢包率;在所述第一阶段规则引擎中配置待提取的数据范围至少包括:配置过滤时间范围,只保留指定时间段内的信令数据;配置过滤信令类型范围,只保留指定的信令类型;配置过滤imsi/imei号码,按需过滤指定的imsi或imei号码;配置过滤基站id,按需过滤指定基站的信令数据;配置过滤位置信息,按需过滤指定地点的信令数据;配置过滤其他条件,按需过滤包括呼叫持续时间、通话状态在内的其它条件。3.根据权利要求1所述的运营商多数据融合方法,其特征在于,所述数据流引擎将提取到的数据转换为结构化的数据流包括如下步骤:步骤a、数据过滤:所述数据流引擎将要处理的数据从数据库和/或文件导入至所述第一阶段规则引擎中,过滤出预定条件的数据,并将数据输出至预定位置,并生成包含过滤规则的数据库表和元数据;步骤b、数据去重:在包含过滤规则的数据库表中执行去重规则删除重复数据,得到去重后的数据库表和元数据;步骤c、数据转换:在去重后的数据库表中执行数据转换规则,将原始数据转换为标准格式数据,得到标准化后的数据库表和元数据;步骤d、数据清洗:在标准化后的数据库表中执行数据清洗规则,最终得到运营商多源待融合数据集。4.根据权利要求3所述的运营商多数据融合方法,其特征在于,所述数据去重的过程包括:步骤b-1、设定数据去重规则,所述数据去重规则包括多个字段,在执行数据去重时,将所述数据去重规则内的单个字段的唯一值或多个字段组合的唯一值作为数据去重的依据;步骤b-2、创建一个空的哈希表,分别读取待去重的数据,对每个数据进行哈希运算,得
到一个哈希值;步骤b-3、将所述哈希值作为键,原数据作为值,插入哈希表中:若插入哈希表成功,则说明当前数据是第一次出现,不执行数据去重程序;若插入哈希表失败,则说明当前数据已经出现过,执行数据去重程序;步骤b-4、重复步骤b-2至步骤b-3,直到所有数据都被处理完毕;步骤b-5、在所述第一阶段规则引擎中测试所述去重规则,检查是否能正确识别重复数据,并执行去重操作;步骤b-6、返回去重后的数据集合。5.根据权利要求4所述的运营商多数据融合方法,其特征在于,所述数据去重规则至少包括:时间去重:相同时间戳的数据只保留一条;基站去重:同一基站的多条数据只保留一条最新的数据;用户去重:同一用户的多条数据只保留一条最新的数据;数据类型去重:同一类型的数据只保留一条;数据完整性去重:如果有多条数据的内容完全相同,只保留一条。6.根据权利要求3所述的运营商多数据融合方法,其特征在于,所述数据转换的过程包括:步骤c-1、确定需要转换的数据源和目标数据结构;步骤c-2、定义数据转换规则,包括时间戳转换、地理位置转换、十六进制转换、编码转换、数据类型转换、字段映射;步骤c-3、使用所述第一阶段规则引擎提供的转换函数和表达式来实现数据转换规则;步骤c-4、针对数据转换过程中出现的异常情况,执行异常值处理流程,确保数据转换的正确性和稳定性。7.根据权利要求6所述的运营商多数据融合方法,其特征在于,所述数据清洗的过程包括:步骤d-1、确定要清洗的数据源和数据清洗后的目标,分别执行缺失值处理和异常值处理:缺失值处理:检测数据中是否存在缺失值,并采用均值填充、中位数填充、插值法对数据填充或删除;异常值处理:检测数据中是否存在异常值,并采用删除异常值、替换异常值的方法对数据的异常值进行处理;步骤d-2、确定清洗规则,将所述清洗规则添加到所述第一阶段规则引擎中,在标准化后的数据库表中执行数据清洗规则,最终得到运营商多源待融合数据集。8.根据权利要求7所述的运营商多数据融合方法,其特征在于,所述清洗规则包括:数据格式验证:验证数据是否符合指定格式,所述指定格式包括手机号码位数是否符合预设标准、身份证号码是否符合预设标准;数据去重:利用所述去重规则删除重复数据;数据修正:对经过所述数据格式验证后的不完整或错误的数据进行纠正;时间修正:对于基站发送的时间戳,进行修正以匹配实际时间;
位置修正:对于基站发送的位置信息,进行修正以匹配实际位置;数据格式修正:对于基站发送的数据格式不正确的情况,进行修正以匹配标准数据格式;数据补全:对于基站发送的数据不完整的情况,进行补全以获得完整数据;数据过滤:对于基站发送的数据中包含噪声或无用信息的情况,进行过滤以获得有用数据。9.根据权利要求1所述的运营商多数据融合方法,其特征在于,所述自适应流式引擎算法模型的构建过程包括:s1、将所述运营商多源待融合数据集拆分为多个子任务,定义需要多源融合业务的输入数据源表和输出数据源表:;;式中,表示由多个拆分的子任务构成的输入数据源表,表示第n个子任务的数据源;表示输出数据源表,其中表示经过融合后输出得到的数据源;s2、定义第i个所述子任务中规则模型编号rule
i
id、规则名称rule
i
name、规则描述rule
i
dec;s3、对于子任务task
n
,从输入源中获取数据,将其赋值给task
n
(input)变量,使用所述第一阶段规则引擎将task
n
(rule
i
)作为参数传递,将所述第一阶段规则引擎的返回值赋值给task
n
(output),在所述第一阶段规则引擎被触发时,循环对子任务1至子任务n中的每个规则的权重进行计算,根据触发的规则及其权重,将所有触发的规则的权重相加得到总和:;式中,表示第n个子任务所触发的第i个规则;表示第n个子任务触发的规则的权重;s4、对所述运营商多源待融合数据集的每个子任务进行划分为k个等份,对于每个等份,将其作为测试集,其余的k-1个等份作为训练集;对于每个所述训练集,训练一个模型,并使用测试集进行测试,记录性能指标;s5、将所述训练集中每个子任务分别加载并加载配置的初始规则,并将其保存在内存中;从外部消息引擎kafka中接入事件流,根据加载的规则进行唯一值编号;s6、通过接收一个规则引擎配置规则列表,计算列表中所有元素的总和;通过将总和除以列表的长度计算出平均值,并将结果存储在一个名为平均规则的结果对象中;s7、构建由多个算法规则组成的算法池,基于业务分析的数据和业务需求选择所述算法池中的一项或多项所述算法规则;s8、针对步骤s7中一项或多项所述算法规则生成的预定数据点进行抽查,以判断训练集的准确性。10.根据权利要求9所述的运营商多数据融合方法,其特征在于,步骤s6将mean结果对象插入到规则模型编号表数据集中,计算公式如下:
;式中,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;当数据集为空列表且结果为平均值时,执行以下操作:初始化一个变量sum为0;对于数据集中的每个数x,计算(x-平均值)^2并加到sum中;计算标准差sd,公式为:;其中,mean表示数据集的平均值,表示第i个数据集中的第j个数据,n表示当前数据集中的规则个数;将sd结果对象插入到规则模型编号表数据集中。11.根据权利要求9所述的运营商多数据融合方法,其特征在于,步骤s8进一步包括:s8-1、对于多个所述算法规则生成的分类任务,确认每个样本的类别是否正确;如果发现错误,将当前错误记录下来,并调整规则;s8-2、对抽查结果进行分析,以确定训练集的准确性;s8-3、对全量数据的每个任务分别加载算法规则,并加载配置的初始规则,并重新定义规则编号;s8-4、根据更新的规则编号,与算子节点的键比对:s8-5、根据初始的规则为含有规则编号的多个规则列表;s8-6、根据下游交叉算子并行度生成相应多个事件;事件的类型字段改成规则类型,事件的编号改成规则的编号,其他相应字段值也做更新:s8-6a、使用选择算子选择两个父代权重向量;s8-6b、使用交叉算子结合两个父代权重向量,产生一个新的后代权重向量;s8-6c、使用变异算子对后代权重向量进行调整;s8-7、将所述后代权重向量添加到种群中;s8-8、根据实时数据和模型预测的结果,采用基于遗传算法以达到自适应流式控制,调整触发规则的权重;s8-9、定义适度函数:在网络优化领域,选择网络负载和连接质量作为适应度函数的指标;在位置服务领域,选择定位精度和响应时间指标作为适应度函数的评价标准。12.根据权利要求11所述的运营商多数据融合方法,其特征在于,步骤s8-2对抽查结果进行分析的过程包括:s8-2a、如果发现错误或不完整的数据大于等于预定值,则重新执行数据清洗流程,自动调整权重规则;s8-2b、如果发现错误或不完整的数据小于预定值,则继续使用当前数据集进行训练。13.根据权利要求11所述的运营商多数据融合方法,其特征在于,步骤s8-4根据更新规则的编号与算子节点的键比对的过程包括:如果比对如果一致,则把当前更新规则转换成特殊标志的事件流;
如果有多个并发节点,则拷贝多份规则事件并设置不同的指定字段的值;然后往此任务的下游算子投递事件流;分析的算子节点根据特殊事件流的编号信息及版本信息,与此节点现有的规则进行比对。14.根据权利要求11所述的运营商多数据融合方法,其特征在于,步骤s8-5进一步包括:根据更新规则的编号,与需要更新的算子节点的规则的键比较;如果比较结果不一致,则忽略当前更新规则;如果比较结果一致,则把此更新规则转换成特殊标志的事件流。15.一种运营商多数据融合系统,其特征在于,包括:第一阶段规则引擎;所述第一阶段规则引擎中配置待提取的数据范围,形成数据池;所述数据池内包括基站信令数据源、用户终端信令数据源、网络信令数据源;数据流引擎;所述数据流引擎在所述数据池内提取数据,将提取到的数据转换为结构化的数据流,并基于结构化的数据流生成运营商多源待融合数据集;第二阶段规则引擎;所述第二阶段规则引擎在所述第一阶段规则引擎中内嵌自适应流式引擎算法模型构建得到,所述第二阶段规则引擎将所述运营商多源待融合数据集拆分为多个子任务进行管理和调度;业务系统;所述业务系统根据业务需求调用所述第二阶段规则引擎,将需要匹配的数据传递给所述第二阶段规则引擎,所述第二阶段规则引擎根据预设的算法规则对传入的数据集进行匹配和处理,并返回匹配结果;所述业务系统根据返回的匹配结果进行相应的业务逻辑处理和多源数据融合。16.一种电子设备,其特征在于,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-14任意一项所述的运营商多数据融合方法。17.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如权利要求1-14任意一项所述的运营商多数据融合方法的操作。
技术总结
本发明提供了一种运营商多数据融合方法、系统、电子设备及计算机存储介质,涉及运营商多源数据融合领域。本发明针对每个任务使用不同的数据源,以及针对不同的数据源使用不同的数据融合算法,大大提升了数据融合的精度和效率。此外,拆分任务后可以将复杂的融合过程分解成简单的子任务,更容易进行管理和调度,同时也可以支持并行计算,提高融合的速度,适用于大规模、复杂的多源数据融合问题。此外,集成系统应用,根据业务的需求,选择适合的自适应流式规则引擎,进行相关的配置,实现灵活部署。实现灵活部署。实现灵活部署。
技术研发人员:艾怀丽 孟浩 卢亚楠 王一淳
受保护的技术使用者:中国移动紫金(江苏)创新研究院有限公司
技术研发日:2023.06.06
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
