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

基于深度学习的电网调控领域信息检索方法、系统和介质与流程

2022-03-02 02:56:44 来源:中国专利 TAG:


1.本发明属于深度学习与电网调控信息检索交叉领域,具体涉及一种基于深度学习的电网调控领域信息检索方法、系统和介质。


背景技术:

2.电网调控系统经多年运行,海量的电网运行数据存储于数据库或文件系统中,呈现出规模大、种类多、范围广等特点,当前查询电网调控信息,通常需要通过像结构化查询语言(structured query language,sql)这样的程序式查询语言来与数据库(或文件系统)进行交互操作,这就需要懂sql语言的专业技术人员来执行这一操作。sql语言的学习门槛比较高,即使对于计算机从业者来说,想要针对不同的数据库和应用场景,编写大量的并保证正确率的sql语句也是项复杂的工作。近年来,随着电网业务不断发展,电网调控信息领域的数据库表格个数与数据量骤增,给调度人员的查询工作带来一定的挑战,往往只有经验丰富的调度人员才能基于问题快速编写出正确的sql语句在数据库中查找相关的答案。对于经验少的调度人员极不友好。基于以上现状,需要一种快速的信息检索方法让调度人员在第一时间能根据检索问题快速获取检索答案。


技术实现要素:

3.本发明针对电网调控系统海量数据分析繁琐低效的问题,利用语义解析技术训练ai智能体,能将自然语言转换成可执行的sql语句,从而降低了数据查询的门槛,为用户提供更人性化的信息检索服务。
4.实现本发明目的之一的基于深度学习的电网调控领域信息检索方法,包括如下步骤:
5.s1、收集多个电网调控领域的自然语言问句与sql语句的语句对;
6.s2、将收集的多个自然语言问句转换成可用于训练深度学习翻译模型的源语句;将收集的多个sql语句转换为用自然语言表述的目标语句;
7.所述步骤s2的转换过程可以基于现有技术用软件编码实现,其可以将自然语言问句转换成可输入给深度学习翻译模型的源语句文本。
8.进一步地,所述步骤s2还包括对源语句进行预处理,所述预处理包括分词处理、特殊字符替换处理、增加特殊字符;
9.进一步地,所述将收集的多个sql语句转换为用自然语言表述的目标语句包括如下步骤:
10.s201、构建数据库表名和列名与自然语言的表述映射关系;
11.s202、根据上述表述映射关系将步骤s1的sql语句转换为用自然语言表述的目标语句;
12.所述表述映射关系包括用自然语言所表述的信息与其所在的数据库中表或列名的一一对应的映射,比如“plant_basic”是数据库中用来存放“发电厂信息的”表,該表中列
名为“plant_type”的列表示发电厂类型,那么可以得到两个映射关系:“plant_basic发电厂基本信息”、“plant_basic.plant_type发电厂基本信息.发电厂类型”。
13.进一步地,所述步骤s202还包括对目标语句进行预处理,所述预处理包括分词处理、特殊字符替换处理、增加特殊字符。
14.s3、搭建深度学习翻译模型,用步骤s2获得的源语句与目标语句对深度学习翻译模型进行训练,得到text-to-sql智能体。
15.通过上述模型训练,所述text-to-sql智能体能将源语句翻译成用目标语句,所述text-to-sql智能体可以采用基于transformer的深度学习翻译模型,相比其它模型能提高sql生成的准确率。
16.s4、使用text-to-sql智能体将用自然语言表述的问句转换成目标语言文本;
17.进一步地,所述步骤s4包括如下步骤:
18.s401、对用户输入的自然语言问句进行转换,得到可输入给text-to-sql智能体的源语言文本;
19.s402、使用text-to-sql智能体对源语言文本进行预测,得到目标语言文本。
20.所述步骤s401中转换过程可以基于现有技术用软件编码实现,其可以将自然语言问句转换成可输入给深度学习翻译模型的源语句文本。
21.进一步地,所述步骤s401包括如下步骤:
22.步骤1、根据数据库表名和列名与自然语言的表述映射关系将用户输入的自然语言文本转换为可输入给text-to-sql智能体的源语言文本;
23.步骤2、对可输入给text-to-sql智能体的源语言文本进行预处理。
24.所述预处理包括分词处理、特殊字符替换处理、增加特殊字符。
25.s5、将步骤s4获得的目标语言文本转换成可执行的sql语句。
26.进一步地,所述步骤s5包括如下步骤:
27.s501、对目标语言文本进行后处理;
28.所述后处理包括替换或删除特殊字符。
29.s502、构建数据库表名和列名与自然语言的表述映射关系;
30.s503、根据上述表述映射关系将步骤s5获得的目标语言文本转换转换成可执行的sql语句。
31.s6、运行步骤s5得到的sql语句对数据库进行检索获取查询信息。
32.实现本发明目的之二的基于深度学习的电网调控领域信息检索系统,包括:
33.训练数据构建模块:用于构建用于训练深度学习翻译模型的训练数据;
34.模型训练模块:用于根据从训练数据构建模块获得的训练数据对深度学习翻译模型进行训练,得到text-to-sql智能体;
35.问句解析模块:用于将用户输入的源语言解析成text-to-sql智能体能识别的源语言文本;
36.sql后处理模块:用于将text-to-sql智能体输出的目标语言文本转换成数据库可执行的语句;
37.sql运行模块:用于运行从sql后处理模块获得的数据库可执行的语句,从数据库中检索所需要的信息。
38.进一步地,还包括数据预处理模块,用于对输入深度学习翻译模型和/或text-to-sql智能体的语句进行预处理,所述预处理包括分词处理、特殊字符替换处理、增加特殊字符。
39.进一步地,还包括映射关系构建模块,用于构建数据库表名和/或列名与自然语言的表述映射关系。
40.实现本发明目的之三的一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述基于深度学习的电网调控领域信息检索方法的任一项步骤。
41.有益效果:
42.利用本发明所述的方法和系统,降低了对电网数据库进行操作的门槛,实现了电网调控信息领域结构化数据的快速智能检索,节省了大量人工编写sql的时间,提高了工作效率,同时增加了数据挖掘的深度、提高了数据增值变现能力。
附图说明
43.图1是本发明所述的系统框图。
具体实施方式
44.下列具体实施方式用于对本发明权利要求技术方案的解释,以便本领域的技术人员理解本权利要求书。本发明的保护范围不限于下列具体的实施结构。本领域的技术人员做出的包含有本发明权利要求书技术方案而不同于下列具体实施方式的也是本发明的保护范围。
45.另外,本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
46.下面结合图1讲述本发明所述系统的一个实施例,包括:
47.训练数据构建模块:用于构建用来训练深度学习翻译模型的训练数据;
48.模型训练模块:用于根据从训练数据构建模块获得的训练数据对深度学习翻译模型进行训练,得到text-to-sql智能体;
49.问句解析模块:用于将用户输入的源语言解析成text-to-sql智能体能识别的源语言文本;
50.sql后处理模块:用于将text-to-sql智能体输出的目标语言文本转换成数据库可执行的语句;
51.sql运行模块:用于运行从sql后处理模块获得的数据库可执行的语句,从数据库中检索所需要的信息。
52.进一步地,还包括数据预处理模块,用于对输入深度学习翻译模型和/或text-to-sql智能体的语句进行预处理,所述预处理包括分词处理、特殊字符替换处理、增加特殊字符。
53.进一步地,还包括映射关系构建模块,用于构建数据库表名和/或列名与自然语言的表述映射关系。
54.上述模块分别应用于不同的阶段,本发明包括两个阶段:模型训练阶段和模型应
用阶段,如图1所示,模型训练阶段包括:训练数据构建模块、数据预处理模块、模型训练模块;模型应用阶段包括:问句解析模块、sql后处理模块、sql执行模块。
55.所述模型训练阶段,训练数据构建模块用于对自然语言问句、数据库表结构、sql语句进行整理,构建多个用于训练深度学习翻译模型的源语句与目标语句;数据预处理模块用于对训练数据构建模块中构建的语句进行预处理;模型训练模块用于根据数据预处理模块得到的数据,训练深度学习翻译模型,得到text-to-sql智能体,实现将自然语言问题自动转换为sql语句。
56.所述模型应用阶段,问句解析模块用于对用户输入的自然语言问句进行预处理,生成源语言文本;利用模型训练模块的text-to-sql智能体将源语言文本自动转换为目标语言文本;sql后处理模块用于对text-to-sql智能体输出的目标语言文本进行后处理,使其转换为可以能够被数据库执行的sql语句;sql执行模块用于运行sql后处理模块得到的sql语句,在数据库引擎内进行查询,得到用户需要的检索答案。
57.下面分步骤详细阐述本发明所述方法的其中一个实施例。
58.s1、收集多个电网调控领域的自然语言问句与sql语句的语句对;
59.根据电网调控领域业务场景的需求,收集自然语言问句与sql语句的语句对。如下所示列举了一对自然语言问句与sql语句的语句对:
60.语句对1:
61.问句:abc电厂类型是什么
62.对应sql语言的查询语句:select plant_type from plant_basic where name='abc电厂';
63.所述自然语言问句与所述sql语句为一一对应关系,即通过在数据库中运行所述sql语句可以查询到所述自然语言问句所要查询的信息。
64.s2、将收集的多个自然语言问句转换成可用于训练深度学习翻译模型的源语句;将收集的多个sql语句转换为用自然语言表述的目标语句;
65.将每个自然语言问句与其对应的候选数据库表结构进行建模,构建文本输入特征feature1,此种格式的文本可输入给深度学习翻译模型,作为其源语句,格式如下:《q》与《/q》之间为原始问题文本,《t》与《/t》之间为数据库表结构,《c》之前为数据库名,《c》之后为列名,不同列名通过@字符进行分割,格式如下:
66.《q》原始问题文本《/q》|《t》表1名称《c》@字段1@字段2《/t》《t》表2名称《c》@字段1@字段2《/t》
……
67.上述语句对1转换成如下文本:
68.《q》abc电厂类型是什么《/q》|《t》发电厂基本信息《c》@发电厂id@发电厂名称@发电厂类型
……
《/t》《t》变电站基本信息《c》@变电站id@变电站名称
……
《/t》
……
69.为了提高深度学习模型的预测准确率,还需对上述源语句进行预处理,所述预处理包括分词处理,即对文本输入特征feature1进行分词处理得到文本输入特征feature2,分词时,特殊符号如《q》、《t》、《c》等不进行分词处理,保留整个字符。上述文本进行分词后得到以下文本,作为深度学习翻译模型的训练语句的源语句:
70.《q》abc电厂类型是什么《/q》|《t》发电厂基本信息《c》发电厂id@发电厂名称@发电厂类型
……
《/t》《t》变电站基本信息《c》@变电站id@变电站名称
……
《/t》
……

71.将sql语句转换为用自然语言表述的目标语句,具体包括如下步骤:
72.s201、构建数据库表名和列名与自然语言的表述映射关系;
73.如将“发电厂基本信息”的表名和列名与自然语言的表述进行映射,前面为表名,或者表名.列名,后面为其所代表的自然语言的含义,如下所示:
74.plant_basic发电厂基本信息
75.plant_basic.name发电厂基本信息.发电厂名称
76.plant_basic.plant_type发电厂基本信息.发电厂类型
77.在此步骤中需进行预处理,所述预处理包括特殊字符替换,为了避免上述映射关系中的点与sql语句的where查询条件中的小数点冲突,从而影响深度学习模型的训练,因此需要将上述表述映射关系中的点替换为sql语句中不会出现的字符,在本实施例中替换为@。
78.s202、根据上述表述映射关系将步骤s1的sql语句转换为用自然语言表述的目标语句;
79.将上述语句对1中的sql:select plant_type from plant_basic where name='abc电厂'进行转换后,如下所示:
80.处理后的sql:
81.select发电厂基本信息@发电厂类型from发电厂基本信息where发电厂基本信息@发电厂名称='abc电厂'
82.对上述处理后的sql进行预处理,得到用于输入深度学习翻译模型的目标语句。所述处理包括分词处理,分词时sql中关键字不进行分词,保留整个字符,如select、where、from、join等;对表名和列名进行分词;所述预处理还包括增加特殊字符,sql中不同成分之间增加分隔符

。分词处理后如下所示,作为输入深度学习翻译模型的目标语句:
83.select

发电厂基本信息@发电厂类型

from

发电厂基本信息

where

发电厂基本信息@发电厂名称



'abc电厂'
84.s3、搭建深度学习翻译模型,用上述步骤获得的源语句与目标语句对深度学习翻译模型进行训练,得到text-to-sql智能体。
85.所述模型采用现有技术中基于transformer的深度学习翻译模型,相比其它模型能提高sql生成的准确率,编码器负责对输入序列(即源语句)进行编码,解码器负责生成文本(目标语句),编码器和解码器之间通过自注意力机制进行联系。
86.所述text-to-sql智能体能自主学习,将源语句翻译成用目标语句。
87.s4、使用text-to-sql智能体将用自然语言表述的问句转换成目标语言文本,包括如下步骤:
88.s401、将用户输入的自然语言问句转换成可输入给text-to-sql智能体的源语言文本;
89.如用户输入自然语言问句:efg电厂电子邮箱是什么。
90.步骤1、根据数据库表名和列名与自然语言的表述映射关系将用户输入的自然语言文本转换为可输入给text-to-sql智能体的源语言文本;
91.步骤2、对可输入给text-to-sql智能体的源语言文本进行预处理,所述预处理包括分词处理。
92.转换后的源语言文本如下所示:
93.《q》efg电厂电子邮箱是什么《/q》|《t》发电厂基本信息《c》@发电厂id@发电厂名称@发电厂类型
……
《/t》《t》变电站基本信息《c》@变电站id@变电站名称
……
《/t》
……
94.s402、使用text-to-sql智能体对源语言文本进行预测,得到目标语言文本。所述目标语言文本采用sql语言的框架,但表名和列名用自然语言表述的伪sql语句,它是不能被执行的,还需要对其进行进一步处理,将自然语言转换成实际数据库中对应的表或列,并将特殊字符替换成原始字符才能在数据库中被执行。
95.所述伪sql语句如下所示:
96.select

发电厂基本信息@电子邮箱

from

发电厂基本信息

where

发电厂基本信息@发电厂名称



'efg电厂'
97.s5、将上述步骤获得的目标语言文本转换成可执行的sql语句,包括如下步骤:
98.步骤1、对目标语言文本进行后处理,所述后处理包括替换或删除特殊字符。
99.对上述目标语言文本中的符号

进行sql分块处理,不同的sql块间移除分词分隔符,得到结果语句如下:
100.select发电厂基本信息@电子邮箱from发电厂基本信息where发电厂基本信息@发电厂名称='efg电厂'
101.步骤2、根据构建的数据库表名和列名与自然语言的表述映射关系,将结果语句中的表名和列名替换为数据库中原始的英文表述。
102.所述数据库表名和列名与自然语言的表述映射关系在前述步骤中已经构建。
103.转换后如下所示:
104.select plant_basic.email from plant_basic where plant_basic.name='efg电厂'
105.s6、运行上述步骤得到的sql语句对数据库进行检索获取查询信息。
106.将上述可执行的sql语句在数据库引擎内进行查询,根据数据库的查询结果得到用户需要的检索答案,示例:
107.efg_plant@163.com
108.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
109.本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现所述基于深度学习的电网调控领域信息检索方法的各个步骤,在此不再赘述。
110.计算机可读存储介质可以是前述任一实施例提供的数据传输装置或者计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。
111.进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储将要输出或己输出的数
据。
112.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
113.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
114.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
115.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
116.最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
117.本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。
再多了解一些

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

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

相关文献