1. 引言
为更好地保障核电厂的安全稳定运行,国家核安全局提出了配置风险管理技术政策,要求核电厂建立与应用配置风险管理体系,实现对电厂风险水平的有效控制和管理 [1] 。配置风险管理是根据核电厂实际运行配置(即核电厂各安全系统、设备及其必要的支持系统所处的状态),利用活态概率安全分析模型计算风险指标,开展核电厂风险管理的方法。
配置风险管理通常使用风险监测工具来开展。风险监测工具需根据系统和部件的实际状况确定实时风险,从而反映出当前电厂的风险水平,通常需要输入设备、状态、时间等风险配置参数信息,经计算后输出风险评价结果。核电厂操纵员日志能全面且及时地记录电厂系统设备状态变化信息,是风险配置参数的可靠来源,但由于其为非结构化的文本数据,为设备和状态等风险配置参数的提取带来了困难。
在工业数字化发展潮流下,核能数字化、智能化是未来核电技术的发展趋势。江苏核电的洪伟等人通过自动语义分析应用研究,实现了维修作业中缺陷申请单的自动分票 [2] 。广东电网的刘宏等人通过构建调控语义识别模型,研究了人工智能语音交互技术在电力调控领域的应用,可有效减轻人工压力并提升工作效率 [3] 。本研究通过开发智能化语义识别工具,实现日志数据中非结构化风险配置参数的有效提取,并实时在线导入风险监测工具,可更好地保障风险分析的实时性及准确性,对于核电厂的风险管理具有重要意义。
2. 研究方案
本文将对核电厂操纵员日志的智能化语义识别开展研究,以获取其中的风险配置参数信息,研究方案如图1所示。通过对核电厂操作日志进行语义解析并结合核电专家经验及专业词典制定语料处理规则,开发基于注意力机制的神经网络模型,进行文本标注训练和模型优化后以获取所需的语义识别结果。
2.1. 文本语义解析
核电厂操作日志是电厂操纵员针对核电厂运行相关的操作记录,包括操作描述、类型、模式、编码、设定值、时间等众多内容。核电厂的配置风险管理需要根据设备的可用性状况进行风险计算,因此需提取出日志文本中的设备编码及设备状态等信息,以作为配置风险管理的参数输入。由于物理环境、语法及书写习惯的不同,操纵员的日志描述具有多样性、模糊性及非规范性,为非结构化自然语言文本的语义识别带来了较大困难。
日志文本主要以夹杂中文汉字、英文字母、数字及特殊符号的短文本形式出现,内容形式具有较大差异性。不规范的编码格式及表达样式会对设备编码及对应状态的识别造成较大干扰,具体日志解析结果如表1所示。

Table 1. Log text analysis and examples
表1. 日志文本解析及示例
虽然核电厂的设备编码有一定规律性,具有固定的字母和数字组合,但描述其状态的语言和语序存在模糊性,且日志文本中存在其它类型的字母和数字编码及多样化的组合形式,加上不规范的书写习惯、复杂的操作环境、以及缺少的核电专业语料库,无法基于现有知识或模型提供有效参考,需针对各种日志类型进行语义识别研究。
2.2. 语义识别模型
核电厂日志语义识别模型,需实现对非结构化文本的语义解析,以提取其中的设备、状态、控制等信息。本研究采用了主流的开源框架和基础模块(主要基于Python语言,其中自然语言处理基于Pytorch框架),开发面向日志工单的风险配置参数语义识别模型,以实现实体识别和状态识别功能。另基于给定的语料库规则及领域词典进行了解析结果的验证和纠正,保证解析结果的准确性。模型开发最终实现了语料预处理、特征工程及语义识别等功能模块。
语料预处理模块关注语料清洗和分词过程,首先根据专业经验设定了清洗规则,用以从日志工单文本中筛选有效信息 [2] 。针对中英混杂的文本,将英文字符(包括字母、数字和特殊符号)和中文字符分离处理。在英文字符中通过正则匹配的形式,优先过滤出完整的设备编码,之后对缩写形式的设备编码进行识别重组,整合为完整的设备编码,记录为设备。对于中文字符进行后续的分词步骤,采用了Jieba语料库和核电厂专业名词词典相结合的方式,实现了对核电厂操作日志文本的有效处理。该模块可以进行简单分词、并行分词、命令行分词,同时还支持关键词提取、词性标注以及词位置查询等。
特征工程模块将预处理后的字词表示成计算机能够识别的数据类型。词嵌入是一种将自然语言中的字词映射到高维向量空间中的技术,它能够将词汇之间的语义关系编码为向量空间中的距离关系,从而用于后续语义识别模型的训练。Skip-gram和CBOW是两种常用的词嵌入模型,它们基于神经网络的方法,通过学习词汇周围的上下文信息来生成词向量 [4] 。其中,Skip-gram模型可根据一个中心词,预测周围上下文词汇的概率分布,其通过训练神经网络来最小化目标函数,从而得到每个词的向量表示,优点是可以处理稀有单词,缺点是训练速度较慢。CBOW模型通过学习上下文词汇的平均向量来预测中心词,从而生成每个词汇的向量表示,优点是训练速度较快,缺点是不适于处理稀有单词。在本研究的语义识别模型中,两种词嵌入模型均被部署,并设置为择优选择。
语义识别模块通过基于注意力机制的深度学习模型,能克服文字表达中的模糊性,实现实体定位和状态识别等功能。注意力机制是一种用于处理序列数据的深度学习模型,它可以自适应地关注输入序列中的重要部分,从而在序列数据处理任务中取得更好的性能,具有较好的泛化性能和语言表达能力 [5] 。该模型通过计算每个时刻的注意力权重,将输入序列中的不同部分赋予不同的权重,从而在计算输出时更加关注重要的信息。在机器翻译任务中,注意力机制模型可以将源语言中与目标语言相关的部分赋予更高的权重,从而实现更好的翻译效果。注意力机制模型主要由输入层、编码器层、注意力层、解码器层及输出层构成 [6] 。其中,输入层用来接受输入的序列数据,并将其转换为网络可以处理的格式;编码器层使用循环神经网络(RNN)、卷积神经网络(CNN)或Transformer等模型对输入序列进行编码,并生成一系列特征向量,用于计算注意力权重;注意力层用来计算每个时刻的注意力权重,可以采用点积注意力、加性注意力等不同的方式进行计算;解码器层使用RNN或Transformer等模型对编码器层的输出进行解码,并生成目标序列;输出层根据任务需求,用softmax函数输出分类概率,用线性输出回归值 [7] 。另可通过一些特殊的层类型,如多头注意力层、自注意力层、层归一化等来提高模型的泛化能力和训练效果 [8] 。
如图2所示,本研究中的语义识别模型先通过预处理和特征工程得到文本的字向量,之后再通过长短期记忆人工神经网络(LSTM) [9] 和CNN网络混合单元对文本进行自动编码和推理,推理过程中结合使用了自注意力和协同注意力两种注意力机制来强调文本中不同句子和字词的匹配程度,最后通过全连接层并经过SoftMax分类器得到最终识别结果。其中,双向LSTM (BiLSTM)编码层可以同时考虑前后文信息,捕捉长距离的依赖关系 [10] 。注意力机制层可以根据当前任务动态地选择输入中最重要的部分。CNN层可以提取文本中的局部特征。通过将BiLSTM层、注意力层和CNN层组合起来,可以得到一个端到端的实体识别模型,用来比较识别结果和标签,实现模型训练。

Figure 2. The semantic recognition model
图2. 语义识别模型
2.3. 文本标注训练
为完善模型功能,需基于人工标注的日志文本数据进行模型训练,从而得到较为准确的语义识别模型。模型训练时,人工标注数据的准确性及数据量将明显影响模型的学习训练效果,最终影响模型的语义识别结果。
在本研究中主要关注日志中的设备编码及设备状态记录。其中,设备编码一般由机组、工艺系统、设备类型及数字编号组成,具有特定格式,如2SEC001PO。设备状态涵盖多种操作及动作类别,如:
设备退出状态:隔离、挂牌、停运、停役、退出、不可用、关闭、断电、断开等。
设备返回状态:解除隔离、摘牌、投运、运行、复役、打开、开启、启动、可用、恢复、送电等。
日志文本中较常见的设备状态描述及其出现比例如表2所示。

Table 2. Equipment status and corresponding proportions
表2. 设备状态及对应比例
将3500条人工标注完成的日志数据输入语义识别模型中进行初步学习训练,其中,80%的标注数据作为训练集输入,20%的标注数据作为测试集输入,可得到如图3所示的准确率曲线。图3中的横坐标为训练轮数,纵坐标为模型识别与人工标注比较得到的准确率。每轮训练后会给出训练集和测试集的准确率,测试集的准确率可以反映当前模型的训练效果。模型默认进行迭代训练,并会自动保存在当前测试集上表现最优,即准确率最高的模型参数,在下次训练时自动读取此参数,从之前训练的结束位置以新的训练集开始训练。由图3的准确率曲线可知,模型初步训练后的准确率可达到83%。图4为模型训练的损失率曲线,表征了模型训练中对训练集的拟合,损失率越小表示对训练集的拟合效果越好。
3. 应用效果分析
将初步训练完成后的语义识别模型应用在日志文本的识别中,可得到较好的识别结果,如表3所示,输入日志文本内容,可输出设备编码和设备状态的语义识别结果。

Table 3. Semantic recognition results
表3. 语义识别结果
续表
分析可知,针对日志文本中较常出现的设备缩写类型,语义识别模型可将缩写的设备编码拆分并重组,实现标准化的设备编码输出,同时准确识别到相应的设备状态。针对含有空格的不规范设备编码也可进行规范化处理。
含有单个设备和单个状态的日志文本一般较简单且易于识别,在本研究的初步模型中可达到92%的设备和状态识别准确率。含有单个设备和多个状态的日志文本则较难识别,该类型的日志针对一个设备可能进行多项操作和状态描述,甚至给出设备状态变化的条件,需要结合上下文语义和具体情况进行实际状态判断,在人工标注训练样本中体现一致的判断规则,经大量样本学习后提高语义识别模型进行语义判断的准确性。
含有多个设备的日志文本识别具有复杂性,可分为多个设备单个状态和多个设备多个状态的日志类型。针对同一状态下的多个设备,语义识别模型会将每个设备分别匹配到上述状态并输出多个设备和状态标签。针对含有多个设备和多个状态的日志内容,语义识别模型可识别出各个设备并分别匹配到相应的设备状态,去除重复的设备标签后输出最终结果。含有多个设备编码和设备状态的日志内容会对语义识别模型的识别结果造成干扰性,出现设备数量识别不全或设备状态识别错误的情况,针对此类型的日志文本,在本研究的初步模型中可达到74%的识别准确率。
基于少量文本训练得到的语义识别初步模型可作为自动标注工具来辅助人工标注工作,从而较大减少人工标注的工作量,提高文本标注训练效率。如图5所示,将经过初步模型训练后的语义识别模型用于日志文本中设备编码和设备状态的自动识别,得到自动标注数据后进行人工检查及更正,可高效得到更多的日志标注数据,用以进一步训练优化模型。经过大量的标注训练数据输入,可使模型得到更优异的参数特征,最终实现高精度的语义识别语义功能,针对各类型日志文本的识别预计可达到95%以上的准确率。
4. 结论
本文通过语义识别模型开发研究,可实现人工智能在核电领域的应用,对核电数字化发展有重要意义。基于核电厂操纵员日志的自然语言识别研究应用可得到以下结论:
1) 含有单个设备编码和状态的日志文本内容一般较简单且易于识别,含有多个设备编码和状态的日志内容会对语义识别模型的识别结果造成干扰,出现设备数量识别不全或设备状态识别错误的情况。
2) 人工标注数据的准确性及数据量将明显影响模型的学习训练效果,最终影响模型的语义识别结果。人工标注数据的错误将造成语义识别模型的学习错误,从而降低识别准确率。训练样本数据较少时,模型将无法充分学习对应特征。
3) 研究结果表明,经初步训练后的语义识别模型准确率可达83%。将初步模型用作自动标注工具来辅助人工标注工作,可减少人工标注的工作量。结合人工检查及修正,提高文本标注训练效率,可获得大量训练样本数据用于模型迭代优化,进一步提高准确率。