CN113868422A - 一种多标签稽查工单问题溯源识别方法及装置 - Google Patents
一种多标签稽查工单问题溯源识别方法及装置 Download PDFInfo
- Publication number
- CN113868422A CN113868422A CN202111190115.8A CN202111190115A CN113868422A CN 113868422 A CN113868422 A CN 113868422A CN 202111190115 A CN202111190115 A CN 202111190115A CN 113868422 A CN113868422 A CN 113868422A
- Authority
- CN
- China
- Prior art keywords
- training
- model
- text
- corpus
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007689 inspection Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012549 training Methods 0.000 claims abstract description 209
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000000694 effects Effects 0.000 claims abstract description 24
- 230000011218 segmentation Effects 0.000 claims description 36
- 238000013145 classification model Methods 0.000 claims description 30
- 238000012360 testing method Methods 0.000 claims description 22
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000007781 pre-processing Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 11
- 239000013598 vector Substances 0.000 claims description 11
- 238000013528 artificial neural network Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000002360 preparation method Methods 0.000 claims description 9
- 238000005457 optimization Methods 0.000 claims description 8
- 241000590419 Polygonia interrogationis Species 0.000 claims description 6
- 238000005520 cutting process Methods 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000012550 audit Methods 0.000 claims description 2
- 230000000873 masking effect Effects 0.000 claims description 2
- 238000004458 analytical method Methods 0.000 abstract description 9
- 238000003058 natural language processing Methods 0.000 description 22
- 230000002159 abnormal effect Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 7
- 238000010276 construction Methods 0.000 description 7
- 230000005611 electricity Effects 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000001617 migratory effect Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Economics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种多标签稽查工单问题溯源识别方法及装置,构建更加适用于电力行业的预训练语言模型,从专业维度识别并锁定海量电力稽查工单出现的问题共性原因,解决稽查业务中存在的风险及问题难以深度识别与分析的情况。在预训练语言模型构建过程中,除了选择非结构化的文本作为语料,还应加入行业专有词汇以及专有短语来增强预训练语言模型的“专业性”。基于大规模电力语料训练生成的词表文件,通过选择电力稽查行业非结构化的文本、行业专有词汇以及专有短语来作为语料,训练得到具有“专业性”增强效果的预训练模型,应用到下游特定的NLP任务中,从而突破下游任务性能瓶颈。
Description
技术领域
本发明涉及电力业务稽查技术领域,特别涉及一种多标签稽查工单问题溯源识别方法及装置。
背景技术
预训练语言模型(Pre-trained Language Models,PLMs)是一种迁移学习的应用,首先通过在大型文本语料库上训练一个通用的“语言理解”模型,然后将该模型用于下游自然语言处理任务(如文本分类、问答)中。预训练语言模型有如下几大类:第一个是词嵌入(Word Embedding)的Word2Vec和Glove;第二个是上下文嵌入(Context Word Embedding),代表为CoVe和ELMO;第三个是预训练模型,代表是GPT和BERT,谷歌公司在2018年发布了史上第一个无监督、深度双向的预训练NLP系统Bert(Bidirectional EncoderRepresentations from Transformers),该系统凭借基于预训练的fine-tuning模型刷新了11项NLP任务的最优性能记录。
多标签稽查工单问题溯源识别属于多标签的文本分类问题,多标签分类任务中一条数据可能有多个标签,每个标签可能有两个或者多个类别(一般两个)。例如,一篇新闻可能同时归类为"娱乐"和"运动",也可能只属于"娱乐"或者其它类别。
在电力稽查业务过程中会产生大量的稽查工单,其中每条稽查工单包含的内容为对该业务产生的异常情况做具体的描述。如图1所示,为一种典型的电力稽查工单结构。
在现有NLP任务中,大多使用已有的谷歌发布的Bert预训练模型做下游任务的Fine-Tuning(如文本分类的微调)。而该预训练模型是基于通用的维基百科语料来实现的。因为电力行业业务的复杂性,所以像工单异常原因识别这类型的任务要求模型本身具有一定的专业性,直接应用初始的Bert学习出来的通用模型与需要应用的专有领域会产生一定偏差,所以需要加入特定领域的知识。
电力稽查行业多年来积累了大量非结构化的文本数据,将Bert预训练的思想、通用预训练模型与该行业特有的语料结合起来,构建更加适用于电力行业的预训练模型,从而提升下游特定NLP任务性能就是本发明的主要目的。
进一步地,预训练语言模型使用的语料是否干净、内容是否足够丰富是其模型效果好坏的重要影响因素,语料越干净、内容越丰富,得到的模型效果就会越好。本发明考虑到电力稽查行业具有大量的专有词汇以及专有短语,而工单文本由于是人工输入,往往会出现专业词或专业短语的相近描述,如专业短语“超容量用电”,在工单中会变为“超过合同约定容量用电”或“超合同容量用电”,直接使用工单中的文本数据进行语言模型训练,由于模型在训练过程中注重的是工单文本中各个字符之间的关系,所以模型对专业术语的整体感知会降低。如果在工单文本的基础上加入专业词和专业短语作为语料,理论上会增强模型对专业术语的理解识别能力。
现有技术中,在电力稽查业务过程中会产生大量的稽查工单,其中每条稽查工单包含的内容为对该业务产生的异常情况做具体的描述,工单中的异常原因为业务人员最关注的信息,针对海量工单包含的异常原因做分析,精准定位稽查业务中存在的风险及问题,对电力管理决策具有重要意义。因为业务的复杂性,工单异常原因的识别是一个具有专业性的工作,而传统的文本分析方法难以有效对文本进行深度识别。
发明内容
本发明提供一种多标签稽查工单问题溯源识别方法及装置,能够从专业维度识别并锁定海量电力稽查工单出现的问题共性原因,解决稽查业务中存在的风险及问题难以深度识别与分析的情况。
根据本发明的一个方面,提供了一种多标签稽查工单问题溯源识别方法,包括以下步骤:
根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据;
根据所述电力稽查语料数据训练分词器,输出词表文件;
根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据;
根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型;
根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集;
加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型;
将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果;
根据所述评估的模型效果,对所述分类模型进行优化微调。
所述根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据,包括:
准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
将所述语料中的特殊符号进行统一转换;
将每一条文本的空字符、回车符删除,以句号、问号为分割符将文本进行切分并按行存放;
删除重复的句子,以文本文件形式保存并输出为电力稽查语料数据。
所述根据所述电力稽查语料数据训练分词器,输出词表文件,包括:
采用字符级别的编码分词器训练方法,直接生成词表文件;特殊标识设定为[PAD]、[UNK]、[CLS]、[SEP]、[MASK];词表中每个字符在词表中的位置即对应Embedding中的id索引,结果以vocab.txt保存。
所述根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据,包括:
随机地扣掉词表文件中15%的字,用一个掩码[MASK]代替,得到训练数据;
将处理过的序列输入到深层双向Transformer的编码结构中来预测所述的被掩码[MASK]代替的字。
所述根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,包括:
加载预训练语言模型的分词器,对输入文本进行字符编码;
在每个序列的头部插入[CLS],尾部插入[SEP]特殊标识;
将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]标识;
生成序列掩码,将[PAD]标识与对句子的解释区别开;
将所述输入文本划分为测试集与训练集。
所述方法还包括:
所述预训练语言模型参数选用6层Transformers,768维字向量,12个注意力机制头,学习率设为1e-4,一次训练所选取的样本数为64;所述预训练语言模型保存为PowerBert.bin文件;
所述分类模型的学习率设为5e-5,一次训练所选取的样本数为32,一共训练2轮。
所述方法还包括:
按照7:3划分训练集与测试集;
按照9:1的比例划分训练集和验证集用于训练过程的优化。
根据本发明的另一个方面,提供了一种多标签稽查工单问题溯源识别装置,包括:
语料准备单元,用于根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据;
分词器训练单元,用于根据所述电力稽查语料数据训练分词器,输出词表文件;
训练数据生成单元,用于根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据;
预训练语言模型构建单元,用于根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型;
文本预处理单元,用于根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集;
分类模型构建单元,用于加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型;
模型效果评估单元,用于将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果;
微调优化单元,用于根据所述评估的模型效果,对所述分类模型进行优化微调。
所述语料准备单元,包括:
语料准备子单元,用于准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
转换子单元,用于将所述语料中的特殊符号进行统一转换;
切分子单元,用于将每一条文本的空字符、回车符删除,以句号、问号为分割符将文本进行切分并按行存放;
输出子单元,用于删除重复的句子,以文本文件形式保存并输出为电力稽查语料数据。
所述文本预处理单元,包括:
编码子单元,用于加载预训练语言模型的分词器,对输入文本进行字符编码;
字符插入子单元,用于在每个序列的头部插入[CLS],尾部插入[SEP]特殊标识;
长度处理子单元,用于将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]标识;
掩码生成子单元,用于生成序列掩码,将[PAD]标识与对句子的解释区别开;
分类子单元,用于将所述输入文本划分为测试集与训练集。
采用本发明的技术方案,提出了一种多标签稽查工单问题溯源识别方案,从专业维度识别并锁定海量电力稽查工单出现的问题共性原因,解决稽查业务中存在的风险及问题难以深度识别与分析的情况。在预训练语言模型构建过程中,除了选择非结构化的文本作为语料,还应加入行业专有词汇以及专有短语来增强预训练语言模型的“专业性”。基于大规模电力语料训练生成的词表文件,通过选择电力稽查行业非结构化的文本、行业专有词汇以及专有短语来作为语料,训练得到具有“专业性”增强效果的预训练模型,应用到下游特定的NLP任务中,从而突破下游任务性能瓶颈。
本发明方案构建更加适用于电力行业的预训练模型,从而提升下游NLP任务性能。因为电力行业业务的复杂性,该领域的NLP任务一般具有专业性的要求,而传统的文本分析方法难以有效对文本进行深度识别,使用深层双向Transformers技术的Bert可以有效解决文本深度识别的问题,但是如果直接应用初始的Bert学习出来的通用模型与需要应用的专有领域会产生一定偏差,所以需要加入特定领域的知识,电力稽查行业多年来积累了大量非结构化的文本数据,将Bert预训练的思想、通用预训练模型与该行业特有的语料结合起来,构建更加适用于电力行业的预训练模型,从而提升下游NLP任务性能。将PowerBert用于多标签异常溯源识别任务中,该任务的准确率与原有基于Bert训练的分类模型准确率相比,从85%提升到90%,分类准确率大幅度提升。
本发明方案构建的预训练语言模型专业性进一步增强。在预训练语言模型构建过程中,加入的行业专有词汇以及专有短语使得预训练语言模型对于行业文本的“理解”更加专业。
本发明方案对于后续下游NLP任务都不再需要从头开始训练网络,可以直接拿预训练好的结果进行微调,既减少了训练计算量的负担,也减少了人工标注数据的负担。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为现有技术中一种典型的电力稽查工单结构示意图;
图2为本发明实施例中多标签稽查工单问题溯源识别原理流程图;
图3为本发明实施例中PowerBert预训练语言模型语料处理流程示意图;
图4为本发明实施例中基于PowerBert预训练模型进行工单分类微调流程示意图;
图5为本发明实施例中多标签稽查工单问题溯源识别过程原理示意图;
图6为本发明实施例中多标签稽查工单问题溯源识别装置结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例一种多标签稽查工单问题溯源识别方法及装置使用的输入数据包括:电力稽查工单数据、电力稽查基础词、电力稽查专业分类数据及标注文本数据,输出结果为词表文件、预训练语言模型及多标签稽查工单问题溯源分类模型。
本发明实施例中,构建基于大规模电力文本的预训练语言模型,以解决基于通用语料的预训练语言模型不适应电力领域NLP任务的问题,进而应用预训练语言模型解决稽查业务中存在的风险及问题难以深度识别与分析的情况。
具体来说,在电力稽查业务过程中会产生大量的稽查工单,其中每条稽查工单包含的内容为对该业务产生的异常情况做具体的描述,工单中的异常原因为业务人员最关注的信息,针对海量工单包含的异常原因做分析,精准定位稽查业务中存在的风险及问题,对电力管理决策具有重要意义。因为业务的复杂性,工单异常原因的识别是一个具有专业性的工作,而传统的文本分析方法难以有效对文本进行深度识别,故本发明主要解决的技术问题为从专业维度识别并锁定海量电力稽查工单出现的问题共性原因,解决稽查业务中存在的风险及问题难以深度识别与分析的情况。
在现有NLP任务中,大多使用已有的谷歌发布的Bert预训练模型做下游任务的fine-tuning(如文本分类的微调),而该预训练模型是基于通用的维基百科语料来实现的。因为电力行业业务的复杂性,所以像工单异常原因识别这类型的任务要求模型本身具有一定的专业性,直接应用初始的Bert学习出来的通用模型与需要应用的专有领域会产生一定偏差,所以需要加入特定领域的知识,电力稽查行业多年来积累了大量非结构化的文本数据,将Bert预训练的思想、通用预训练模型与该行业特有的语料结合起来,构建更加适用于电力行业的预训练模型,从而提升下游特定NLP任务性能就是本发明的主要目的。
进一步地,预训练语言模型使用的语料是否干净、内容是否足够丰富是其模型效果好坏的重要影响因素,语料越干净、内容越丰富,得到的模型效果就会越好。本发明考虑到电力稽查行业具有大量的专有词汇以及专有短语,而工单文本由于是人工输入,往往会出现专业词或专业短语的相近描述,如专业短语“超容量用电”,在工单中会变为“超过合同约定容量用电”或“超合同容量用电”,直接使用工单中的文本数据进行语言模型训练,由于模型在训练过程中注重的是工单文本中各个字符之间的关系,所以模型对专业术语的整体感知会降低。如果在工单文本的基础上加入专业词和专业短语作为语料,理论上会增强模型对专业术语的理解识别能力。综上所述,本发明与一般预训练语言模型(如Bert、GPT等)不同的是,Bert在构建模型时选择的是维基百科中非结构化的文本数据,本发明除了选择非结构化的文本作为语料,还加入了行业专有词汇以及专有短语来增强预训练模型的“专业性”。
综上两点,本发明的目的为通过选择电力稽查行业非结构化的文本、行业专有词汇以及专有短语来作为语料,训练得到具有“专业性”增强效果的预训练模型,应用到下游特定的NLP任务中,从而突破下游任务性能瓶颈。
本发明各个实施例中,预训练语言模型(Pre-trained Language Models,PLMs)是一种迁移学习的应用,在大型文本语料库(如维基百科)上训练一个通用的“语言理解”模型,然后将该模型用于下游自然语言处理任务(如文本分类、问答)中。Word Embedding即词向量,指用一个低维稠密的向量去表示一个词,通常这个向量的维度在几百到上千之间,词与词之间可以通过相似度或者距离来表示关系,相关的词向量相似度比较高,或者距离比较近,不相关的词向量相似度低,或者距离比较远,这样词向量本身就有了含义。文本的表示问题就得到了解决。词向量可以通过一些无监督的方法学习得到,可以预先在语料库上训练出词向量,以供后续的任务使用。Tonkenizer的作用,除了对文本进行分词外,还将每个词与相应的id编号对应,同时添加句子分隔符、mask掩码等,这里的id是与Bert中embedding矩阵的索引号一一对应。
掩码语言模型(Masked Language Model,MLM),为了无监督的训练深层双向的语言模型,在训练前以一定百分比随机地对输入文本序列中的字符进行屏蔽,然后预测被屏蔽的字符,此过程称为Masked LM。
Fine-Tuning,对于NLP中的分类、问答、实体命名识别等任务,基于预训练语言模型已有参数,根据特定任务,调整最上层的神经网络结构,然后在小数据集里对模型进行训练,训练时固定底层的模型参数只训练顶层的参数或者对整个模型进行训练,这个过程叫做微调(fine-tuning),最终得到一个可用的模型。对特定任务进行微调(fine-tuning),有两个好处,一是解决训练数据不足的问题;另一个是对于NLP任务都不再需要从头开始训练网络,可以直接拿预训练好的结果进行微调,既减少了训练计算量的负担,也减少了人工标注数据的负担。
多标签分类任务中一条数据可能有多个标签,每个标签可能有两个或者多个类别(一般两个)。例如,一条工单产生异常的原因可能同时归类为"工作人员操作不当"和"系统异常",也可能只属于"系统异常"或者其它类别。
本发明实施例中提出的基于预训练模型与前馈神经网络的多标签稽查工单问题溯源识别技术方案,分两大步骤:第一步,构建预训练语言模型,在Bert已有的通用模型基础上构建电力稽查行业的预训练模型;第二步,基于预训练模型进行微调,利用已有的标注数据,实现多标签稽查工单问题溯源识别。
图2为本发明实施例中多标签稽查工单问题溯源识别流程图。如图所示,该多标签稽查工单问题溯源识别流程包括以下步骤:
步骤101、根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据。
本发明实施例中,语料来源于电力稽查工单数据、电力稽查基础词、电力稽查专业分类,以.txt的文件形式保存,每一行为一个句子,文件大小为1G。
本发明实施例中,除了选择非结构化的文本作为语料,还加入了行业专有词汇以及专有短语来增强预训练模型的“专业性”,在具体的语料选择上,对于专有词汇,本发明选择电力稽查基础词库作为语料,该词库由908个专业词构成,每个词由2~5个字符构成;对于专有短语,本发明选择电力稽查专业分类作为语料,该分类由一级分类和二级分类以及主题分类三部分组成,共有305个,每个短语由4~20个字符构成;对于工单文本,本发明选择电力稽查工单数据作为语料,该语料共有500万条,每个文本由3~1473个字符构成。
语料构建过程分为:语料准备、符号转换、句子切分等步骤,具体的语料构建流程参见图3,其中,
准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
将语料中的特殊符号进行统一转换,如特殊字符[#$%&*+]等的转换,英文的句号与数字小数点的区分等;
将每一条文本的空字符、回车符去掉,然后以句号、问号为分割符将文本进行切分并按行存放;
去掉重复的句子,以.txt文件形式保存并输出。
步骤102、根据所述电力稽查语料数据训练分词器,输出词表文件。
本发明实施例中,训练分词器Tokenizer。本实施例采用字符级别的编码分词器训练方法,直接生成词表文件,特殊标识设定为[PAD]、[UNK]、[CLS]、[SEP]、[MASK],词表中包含3K左右的字符,每个字符在词表中的位置即对应Embedding中的id索引,结果以vocab.txt保存,样例如下:
输入:“客户超容量用电异常”
['客','户','超','容','量','用','电','异','常']
编码结果:[2,324,430,874,327,933,662,666,390,370,3]
['[CLS]','客','户','[UNK]','超','容','量','用','电','异','常','[SEP]']
步骤103,根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据。
本发明实施例中,在上下文表示上传统的预训练语言模型如GPT、ELMO等采用的是单向(从左至右、从右至左)或者浅层双向,例如:句子“客户超容量用电异常”,GPT在预测“电”的时候,只能用到上文的“客户超容量用”信息,无法利用到下文“异常”的信息,虽然有技术将从左至右和从右至左的训练方法结合起来,但只是浅层的方式,而BERT在表示“电”的时候,从深层神经网络的最底层开始就利用了其上下文“客户超容量用...异常”的信息,实现深度双向的预训练。
具体的实现方法为:随机地扣掉15%的字,用一个掩码[MASK]代替,然后将处理过的序列输入到深层双向Transformer的编码结构中来预测这个字。假设原句子是“客户超容量用电异常”,这里随机选到了第七个字的位置要被屏蔽掉,也就是对“电”进行屏蔽,那么屏蔽的过程可以描述如下:
80%的概率:用[MASK]替换目标字,例如:客户超容量用电异常-->客户超容量用[MASK]异常。
10%的概率:用随机的字替换目标字,例如:客户超容量用电异常-->客户超容量用水异常。
10%的概率:不改变目标字,例如:客户超容量用电异常-->客户超容量用电异常。这样做的目的是使字的表征偏向于实际观察到的字。
步骤104,根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型。
本发明实施例中,训练并保存预训练语言模型。设置模型训练参数,将文本序列转化为Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练。其中,本发明的模型参数选用(6层Transformers,768维字向量,12个注意力机制头),学习率设为1e-4,一次训练所选取的样本数为64。模型保存为PowerBert.bin文件。
至此完成了第一大步骤电力稽查行业预训练语言模型PowerBert的构建。后续步骤为第二大步骤如何利用PowerBert进行多标签稽查工单问题溯源识别模型的微调。
步骤105,根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集。
本发明实施例中,标注数据量为4926,按照7:3划分训练集与测试集,并按照9:1的比例划分训练集和验证集用于训练过程的优化。
本发明实施例中,将文本处理为如下形式:
输入:“客户超容量用电异常”
输出:[CLS]客户超容量用电异常[SEP][PAD][PAD][PAD]
序列编码为:[2,324,430,874,327,933,662,666,390,370,3,0,0,0,0,0,0,0,0,0,...,0,0,0,0,0,0]L
序列掩码为:[1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,...,0,0,0,0,0,0]L
其中:输出序列长度为指定值L(一般L=128),0表示[PAD];2表示[CLS];3表示[SEP]。
具体文本预处理过程如下:
加载PowerBert的分词器,对输入文本进行字符编码;
在每个序列的头部插入[CLS],尾部插入[SEP]特殊标识;
将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]标识;
生成序列掩码,如果为[PAD]标识则是0,否则就是1,掩码是为了让BERT中的自注意力机制将[PAD]标识与对句子的解释区别开;
将所述输入文本划分为测试集与训练集。
步骤106,加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型。
本发明实施例中,加载预训练语言模型PowerBert,分别定义优化器、学习率(训练时先从小的学习率开始训练)、用于计算精度的辅助函数模型准确率,微调阶段,本发明学习率设为5e-5,一次训练所选取的样本数为32,一共训练2轮。
步骤107,将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果。
本发明实施例中,分别从模型准确率和模型运行时间进行评估。具体评估举例如下:
epoch=1,训练准确率=0.92,平均损失=0.14357946291333065
epoch=1,测试准确率=0.909
epoch=1,花费时间=0:00:21。
步骤108,根据所述评估的模型效果,对所述分类模型进行优化微调。
如图4所示,为基于PowerBert预训练模型进行工单分类微调流程示意图。
如图5所示,为本发明实施例提出的多标签稽查工单问题溯源识别过程原理示意图。
输入为电力稽查业务分类+电力稽查工单+电力稽查基础词库的数据。
步骤1:电力稽查预料准备;
步骤2:训练分词器Tokenizer,输出词表文件vocab.txt;
步骤3:MLM文本字符屏蔽,生成训练数据;
步骤4:训练并保存预训练模型。
输出预训练模型PowerBert。
至此完成了第一大步骤电力稽查行业预训练语言模型PowerBert的构建,下面介绍第二大步骤如何利用PowerBert进行多标签稽查工单问题溯源识别模型的微调,对应流程图为图5中的步骤5~7。
步骤5:文本预处理,加载Tokenizer;
步骤6:分类模型构建,加载PowerBert进行分类模型训练;
步骤7:模型效果评估。输出为分类模型,完成分类模型的构建,用以进行稽查工单的问题溯源。
为了实现上述流程,本发明技术方案还提供多标签稽查工单问题溯源识别装置,如图6所示,该多标签稽查工单问题溯源识别装置包括:
语料准备单元21,用于根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据;
分词器训练单元22,用于根据所述电力稽查语料数据训练分词器,输出词表文件;
训练数据生成单元23,用于根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据;
预训练语言模型构建单元24,用于根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型;
文本预处理单元25,用于根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集;
分类模型构建单元26,用于加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型;
模型效果评估单元27,用于将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果;
微调优化单元28,用于根据所述评估的模型效果,对所述分类模型进行优化微调。
所述语料准备单元21,包括:
语料准备子单元,用于准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
转换子单元,用于将所述语料中的特殊符号进行统一转换;
切分子单元,用于将每一条文本的空字符、回车符删除,以句号、问号为分割符将文本进行切分并按行存放;
输出子单元,用于删除重复的句子,以文本文件形式保存并输出为电力稽查语料数据。
所述文本预处理单元25,包括:
编码子单元,用于加载所述预训练语言模型的分词器,对输入文本进行字符编码;
字符插入子单元,用于在每个序列的头部插入[CLS],尾部插入[SEP]特殊标识;
长度处理子单元,用于将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]标识;
掩码生成子单元,用于生成序列掩码,将[PAD]标识与对句子的解释区别开;
分类子单元,用于将所述已标注文本语料划分为测试集与训练集。
综上所述,本发明的技术方案,提出了一种多标签稽查工单问题溯源识别方案,从专业维度识别并锁定海量电力稽查工单出现的问题共性原因,解决稽查业务中存在的风险及问题难以深度识别与分析的情况。在预训练语言模型构建过程中,除了选择非结构化的文本作为语料,还应加入行业专有词汇以及专有短语来增强预训练语言模型的“专业性”。基于大规模电力语料训练生成的词表文件,通过选择电力稽查行业非结构化的文本、行业专有词汇以及专有短语来作为语料,训练得到具有“专业性”增强效果的预训练模型,应用到下游特定的NLP任务中,从而突破下游任务性能瓶颈。
本发明方案构建更加适用于电力行业的预训练模型,从而提升下游NLP任务性能。因为电力行业业务的复杂性,该领域的NLP任务一般具有专业性的要求,而传统的文本分析方法难以有效对文本进行深度识别,使用深层双向Transformers技术的Bert可以有效解决文本深度识别的问题,但是如果直接应用初始的Bert学习出来的通用模型与需要应用的专有领域会产生一定偏差,所以需要加入特定领域的知识,电力稽查行业多年来积累了大量非结构化的文本数据,将Bert预训练的思想、通用预训练模型与该行业特有的语料结合起来,构建更加适用于电力行业的预训练模型,从而提升下游NLP任务性能。将PowerBert用于多标签异常溯源识别任务中,该任务的准确率与原有基于Bert训练的分类模型准确率相比,从85%提升到90%,分类准确率大幅度提升。
本发明方案构建的预训练语言模型专业性进一步增强。在预训练语言模型构建过程中,加入的行业专有词汇以及专有短语使得预训练语言模型对于行业文本的“理解”更加专业。
本发明方案对于后续下游NLP任务都不再需要从头开始训练网络,可以直接拿预训练好的结果进行微调,既减少了训练计算量的负担,也减少了人工标注数据的负担。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种多标签稽查工单问题溯源识别方法,其特征在于,包括以下步骤:
根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据;
根据所述电力稽查语料数据训练分词器,输出词表文件;
根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据;
根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型;
根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集;
加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型;
将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果;
根据所述评估的模型效果,对所述分类模型进行优化微调。
2.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据,包括:
准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
将所述语料中的特殊符号进行统一转换;
将每一条文本的空字符、回车符删除,以句号、问号为分割符将文本进行切分并按行存放;
删除重复的句子,以文本文件形式保存并输出为电力稽查语料数据。
3.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述根据所述电力稽查语料数据训练分词器,输出词表文件,包括:
采用字符级别的编码分词器训练方法,直接生成词表文件;特殊标识设定为[PAD]、[UNK]、[CLS]、[SEP]、[MASK];词表中每个字符在词表中的位置即对应Embedding中的id索引,结果以vocab.txt保存。
4.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据,包括:
随机扣掉词表文件中15%的字,用一个掩码[MASK]代替,得到训练数据;
将处理过的序列输入到深层双向Transformer的编码结构中来预测所述的被掩码[MASK]代替的字。
5.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,包括:
加载预训练语言模型的分词器,对输入文本进行字符编码;
在每个序列的头部插入[CLS]特殊标识,尾部插入[SEP]特殊标识;
将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]特殊标识;
生成序列掩码,将[PAD]特殊标识与对句子的解释区别开;
将所述输入文本划分为测试集与训练集。
6.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述方法还包括:
所述预训练语言模型参数选用6层Transformers,768维字向量,12个注意力机制头,学习率设为1e-4,一次训练所选取的样本数为64;所述预训练语言模型保存为PowerBert.bin文件;
所述分类模型的学习率设为5e-5,一次训练所选取的样本数为32,一共训练2轮。
7.根据权利要求1所述的一种多标签稽查工单问题溯源识别方法,其特征在于,所述方法还包括:
按照7:3划分训练集与测试集;
按照9:1的比例划分训练集和验证集用于训练过程的优化。
8.一种多标签稽查工单问题溯源识别装置,其特征在于,所述装置包括:
语料准备单元,用于根据电力稽查工单数据、电力稽查基础词及电力稽查专业分类数据构建电力稽查语料数据;
分词器训练单元,用于根据所述电力稽查语料数据训练分词器,输出词表文件;
训练数据生成单元,用于根据掩码语言模型MLM对词表文件进行随机文本字符屏蔽,生成训练数据;
预训练语言模型构建单元,用于根据训练数据设置模型训练参数,将文本序列转化为嵌入Embedding矩阵,作为深度神经网络的输入,输入到Transformers的编码器中,进行模型训练,得到预训练语言模型;
文本预处理单元,用于根据所述预训练语言模型对应的分词器,对已标注文本语料进行预处理,得到训练集与测试集;
分类模型构建单元,用于加载所述预训练语言模型,分别定义优化器、学习率、用于计算精度的辅助函数模型准确率,构建分类模型;
模型效果评估单元,用于将所述训练集与测试集根据所述分类模型进行分类训练,并评估模型效果;
微调优化单元,用于根据所述评估的模型效果,对所述分类模型进行优化微调。
9.根据权利要求8所述的一种多标签稽查工单问题溯源识别装置,其特征在于,所述语料准备单元,包括:
语料准备子单元,用于准备电力稽查工单数据、电力稽查基础词、电力稽查专业分类语料作为预训练语言模型的语料;
转换子单元,用于将所述语料中的特殊符号进行统一转换;
切分子单元,用于将每一条文本的空字符、回车符删除,以句号、问号为分割符将文本进行切分并按行存放;
输出子单元,用于删除重复的句子,以文本文件形式保存并输出为电力稽查语料数据。
10.根据权利要求8所述的一种多标签稽查工单问题溯源识别装置,其特征在于,所述文本预处理单元,包括:
编码子单元,用于加载预训练语言模型的分词器,对输入文本进行字符编码;
字符插入子单元,用于在每个序列的头部插入[CLS]特殊标识,尾部插入[SEP]特殊标识;
长度处理子单元,用于将每一条序列长度处理为相同长度L,大于L的序列进行截断,小于L的序列进行补齐,补齐使用[PAD]特殊标识;
掩码生成子单元,用于生成序列掩码,将[PAD]特殊标识与对句子的解释区别开;
分类子单元,用于将所述输入文本划分为测试集与训练集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111190115.8A CN113868422A (zh) | 2021-10-11 | 2021-10-11 | 一种多标签稽查工单问题溯源识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111190115.8A CN113868422A (zh) | 2021-10-11 | 2021-10-11 | 一种多标签稽查工单问题溯源识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113868422A true CN113868422A (zh) | 2021-12-31 |
Family
ID=78999344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111190115.8A Pending CN113868422A (zh) | 2021-10-11 | 2021-10-11 | 一种多标签稽查工单问题溯源识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868422A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115048511A (zh) * | 2022-04-19 | 2022-09-13 | 南京烽火星空通信发展有限公司 | 一种基于Bert的护照版面分析方法 |
CN116187163A (zh) * | 2022-12-20 | 2023-05-30 | 北京知呱呱科技服务有限公司 | 一种用于专利文件处理的预训练模型的构建方法及系统 |
CN116644157A (zh) * | 2023-07-27 | 2023-08-25 | 交通运输部公路科学研究所 | 基于桥梁养护非结构化数据构建Embedding数据的方法 |
-
2021
- 2021-10-11 CN CN202111190115.8A patent/CN113868422A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115048511A (zh) * | 2022-04-19 | 2022-09-13 | 南京烽火星空通信发展有限公司 | 一种基于Bert的护照版面分析方法 |
CN116187163A (zh) * | 2022-12-20 | 2023-05-30 | 北京知呱呱科技服务有限公司 | 一种用于专利文件处理的预训练模型的构建方法及系统 |
CN116187163B (zh) * | 2022-12-20 | 2024-02-20 | 北京知呱呱科技有限公司 | 一种用于专利文件处理的预训练模型的构建方法及系统 |
CN116644157A (zh) * | 2023-07-27 | 2023-08-25 | 交通运输部公路科学研究所 | 基于桥梁养护非结构化数据构建Embedding数据的方法 |
CN116644157B (zh) * | 2023-07-27 | 2023-10-10 | 交通运输部公路科学研究所 | 基于桥梁养护非结构化数据构建Embedding数据的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112434535B (zh) | 基于多模型的要素抽取方法、装置、设备及存储介质 | |
CN113868422A (zh) | 一种多标签稽查工单问题溯源识别方法及装置 | |
CN111966812B (zh) | 一种基于动态词向量的自动问答方法和存储介质 | |
CN109598517B (zh) | 商品通关处理、对象的处理及其类别预测方法和装置 | |
CN109992664A (zh) | 争议焦点的标注分类方法、装置、计算机设备和存储介质 | |
CN112052684A (zh) | 电力计量的命名实体识别方法、装置、设备和存储介质 | |
CN111274817A (zh) | 一种基于自然语言处理技术的智能化软件成本度量方法 | |
CN112560486A (zh) | 基于多层神经网络的电力实体识别方法、存储介质和设备 | |
CN116342167B (zh) | 基于序列标注命名实体识别的智能成本度量方法和装置 | |
CN111858888A (zh) | 一种值机场景的多轮对话系统 | |
CN110750978A (zh) | 情感倾向分析方法、装置、电子设备及存储介质 | |
CN116402630B (zh) | 一种基于表征学习的财务风险预测方法及系统 | |
CN114969334B (zh) | 异常日志检测方法、装置、电子设备及可读存储介质 | |
CN112257425A (zh) | 一种基于数据分级模型的电力数据分析方法及系统 | |
CN113221569A (zh) | 一种毁伤试验文本信息抽取方法 | |
CN113420548A (zh) | 一种基于知识蒸馏和pu学习的实体抽取采样方法 | |
CN116861924A (zh) | 基于人工智能的项目风险预警方法及系统 | |
CN113886562A (zh) | 一种ai简历筛选方法、系统、设备和存储介质 | |
CN115757695A (zh) | 一种日志语言模型训练方法及系统 | |
CN113065352B (zh) | 一种电网调度工作文本的操作内容识别方法 | |
CN117193823A (zh) | 一种软件需求变更的代码工作量评估方法、系统及设备 | |
CN115357718B (zh) | 主题集成服务重复材料发现方法、系统、设备和存储介质 | |
CN116955534A (zh) | 投诉工单智能处理方法、装置、设备及存储介质 | |
CN116975161A (zh) | 电力设备局放文本的实体关系联合抽取方法、设备、介质 | |
KR102265947B1 (ko) | 기계 학습 기반 정보 제공 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |