APP下载

基于声纹识别的电网调度认证系统设计

2023-11-10孙丽丽张延童翟洪婷张庆锐

山东电力技术 2023年10期
关键词:声纹识别声纹口令

孙丽丽,翟 启,张延童,翟洪婷,张庆锐

(国网山东省电力公司信息通信公司,山东 济南 250001)

0 引言

随着人工智能技术成熟和新一代电网系统设备集成化程度提高,电网系统对管理信息化的要求与日俱增,智能化电网调度已成为当前的研究热点和实现形式。调度系统对“统一集中调度,各级按权管理”的需要,导致调度中心处理的数据量不断增加。虽然智能电网自动调度平台系统内部已经建立相对较完备高效的多级权限管理控制机制,能满足系统日常运营的实时调度业务需求,但系统调度执行过程管理中,各类系统安全性问题不断产生,例如,调度系统中可能存在岗位无关人员或使用系统其他部门人员提供的账户,进行超出正常权限范围操作等问题。此类问题根源在于现有调度系统主要以人工通过调度电话专线或者网络发送操作指令的通信形式来实现[1],调度流程中缺乏足够的人员身份认证,对某些特殊调度指令缺少二次确认和真伪鉴别,对电网安全造成潜在威胁。

在人工智能技术飞速发展的今天,声纹识别等相关技术无疑为提高电网调度效率和保障安全提供了新可能[2]。声纹识别作为目前所有生物特征验证方法体系中唯一的非接触与远程识别验证的方法,在调度运行领域具有天然优势。近年来,越来越多的调度系统采用声纹识别调度,但实际上该技术的应用仅仅集中在声学模型、语言模型及分析应用等几个方面。文献[3-4]在小规模词语库场景中进行实验和验证,提出基于高斯混合-隐马尔可夫模型(gaussian mixture hidden markov model,GMM-HMM)的电力调度场景下的声学模型,但未能全面系统考虑语言模型变化对语音识别系统性能带来的影响。文献[5]设计一些在小规模电网语音调度系统场景下较简单并且实用有效的语法规则,用于电网语音调度系统中语音命令交互语法规则设计,但该设计所提各种语义信息均不够全面充分。文献[6]在双向编码的TransFormer 模型基础上提出一种全新的电网调度场景下语音识别模式,在现有基于BERT的语音识别模型上,删改一部分语音片段特征并添加关键字特征、命名实体特征。上述文献表明:针对现有电网语音调度系统的研究,大多只关注调度语音的表层语义信息,没有考虑短语音和欺骗性语音等引发的安全问题。

为此,针对此类电网调度安全挑战,提出基于深度卷积神经网络的声纹识别技术和动态口令技术,设计一种结合语音识别和声纹识别技术的身份验证方法,以提升在电网调度语音指挥业务中调度员身份声纹识别准确率,实现调度员身份验证。此外,还结合调度指令可行性校验,确保调度的安全性。

1 声纹识别技术相关研究

1.1 声纹识别

现有声纹识别模型多基于身份向量(identity vectors,i-vectors)方法建立。在这些模型中,以无监督的方式学习映射矩阵T,使得数据最大似然化。矩阵T将通用背景模型(universal background model,UBM)的高维统计信息映射为已知的低维特征信息向量ivectors。通过计算两个信息向量ivectors的距离,可以判断两个声纹是否归属于同一人。近期,有学者提出另一种基于xvectors方法的解决方案,这类方法利用深度神经网络(deep neural networks,DNN)对训练数据中的说话人进行分类。训练完成后,利用特征嵌入层提取特征信息xvectors。概率线性判别分析(piecewise linear discriminant analysis,PLDA)[7]分类器用于比较特征信息,从而实现声纹识别。这些方法大多采用人工设定的特征,如FilterBank 系数和梅尔频率倒谱系数(mel-frequency cepstral coefficients,MFCC)[8]。上述人工特征均依据人的表征特征感知能力而设计,难以适用于高效的声纹识别任务。为解决这一缺陷,将卷积神经网络(convolutional neural networks,CNN)应用在了声纹识别领域。

CNN 因为权值共享、局部滤波和池化等操作,有助于提高模型健壮性和表征能力,被广泛应用于图像领域。但是,语音样本的数据量相对于图像样本的数据量小,因此在使用CNN声纹识别时,卷积层中的参数个数不能太大,否则容易过拟合。此外,CNN在训练样本数量较少的情况下,学习到的滤波器往往包含噪声,因此无法有效地表示声纹信号。为解决这些问题,SincNet[9]减少第一卷积层中需要学习的参数并用Sinc 函数代替卷积从而实现带通滤波器,SincNet比标准CNN收敛速度更快,效果更好。

1.2 短时语音识别

近年来,声纹识别技术发展迅速,各类研究逐渐成熟,人们逐渐将研究方向转向更具有挑战性的复杂环境,例如信道失配、短时语音和背景噪声等。声纹识别系统对短时语音识别效果直接影响用户的体验,短时语音一般指时长5 s 以内的语音,超过5 s 的语音录入会让用户反感。然而在实际应用中,现有声纹识别系统仅能对长度足够的语音发挥较好的识别性能[10],包括支持向量机(support vector machine,SVM)[11]、基于高斯混合模型(gaussian mixture model,GMM)的声纹识别模型[12]等,随着语音长度的缩短,这些声纹识别系统的性能迅速下降,声纹模型能从语音中学习到的身份信息较少,且从短时语音中提取的特征更易受说话人状态、语音内容和语调的影响,在语音数据不足的情况下如何充分挖掘语音特征进行身份识别成为研究热点。文献[13]对比各类网络模型的优缺点,发现CNN 在短时语音识别领域的优势。基于卷积神经网络的声纹识别系统,以语音语谱图为输入,同时利用语音的时域信息和频域信息,能更好地克服短时语音数据量不足的问题,同时运算速度更快,可以与用户进行实时互动。

1.3 欺骗性语音检测

随着声纹识别系统的广泛使用,欺骗性语音逐渐成为威胁声纹识别系统安全的因素,欺骗性语音攻击方式主要有3 种:语音合成(text to speech,TTS)、语音转换(voice conversion,VC)[14]以及录音重放(recapture)。语音合成技术是指对给定的文本信息运用合成技术,将其转换为一段音色接近于目标说话人的自然语言序列[15];语音转换技术则是通过技术手段对某一个人的自然语音波形进行修改变换,使之听起来与目标说话人的声音相似,达到难以区分的程度;录音重放攻击指攻击者事先采集目标说话人的音频,再通过播放设备重放音频来欺骗声纹身份认证系统,获得非法授权,相比其他两种欺骗性语音,录音重放攻击的成本低廉且没有技术门槛,极难被声纹身份认证系统抵挡。

为应对欺骗性语音挑战,尤其是录音重放攻击,除在声纹识别算法上进行改进外,在身份认证系统中引入动态认证也是一种有效手段[16]。动态身份认证加入时间因子作为参数,使用固定时间间隔随机产生的口令代替传统的静态口令,进而避免口令语音泄露带来的安全问题。动态身份认证系统会设定时间限制,例如声纹身份认证系统中,以动态口令生成时间为起点,要求待认证用户必须在规定时间内录入动态口令语音,否则不予通过。由于动态口令的随机性,攻击者无法在短时间内获取包含指定内容的目标用户语音。运用基于动态口令的身份验证方法可有效保证系统的可靠性和访问的安全性[17]。

2 方案设计

2.1 调度认证系统构建

针对提出的各种基于声纹识别的身份认证挑战,构建一种基于声纹识别的调度认证系统,解决电网调度场景中可能存在的多种未知欺骗攻击和错误调度指令问题。该系统的目标是判断访问用户的输入语音是否为真实语音以及实现对未知访问用户的身份验证,对调度人员进行访问控制。此外为避免错误拟定指令对电网造成安全威胁,保障调度系统能够发布合规的调度指令,该系统会对指令正确性进行校验,对调度指令进行有效约束。考虑电网调度场景的实时性需求,该系统应实现高效响应用户的请求,在执行身份认证的同时给予及时有效的相关反馈。

文中设计的调度认证系统如图1 所示,主要分为四层架构:数据层、功能层、接口层和业务应用层。每一层均包含相应的功能组件,各层之间通过层级关系进行数据传输以及功能连接,层级结构保障整体系统高内聚、低耦合的特征。前端业务应用层主要实现用户和系统之间的交互,该层向用户提供身份认证入口,后台会对采集的语音进行身份验证和指令校验,然后向用户返回“通过”并发布调度指令,或者“拒绝”;接口层是应用层和功能层的桥梁,根据当前身份认证需求提供相应的功能接口;功能层主要提供系统核心的声纹处理功能,实现语音预处理、声纹识别、语音识别和指令校验功能;数据层则包括声纹数据库、随机文本库和调度术语库,实现对声纹特征和调度术语的存储,以及动态口令的生成,为功能层提供数据支持。

图1 基于声纹识别的调度认证系统架构Fig.1 Dispatching authentication system architecture based on voiceprint recognition

提出的基于声纹识别的调度认证系统的实现流程如图2所示。

图2 调度认证系统的实现流程Fig.2 The implementation process of dispatching authentication system

调度认证系统的实现步骤如下:

1)声纹认证阶段。待验证人员首先录入调度指令语音,声纹模型提取语音输入声纹特征并在声纹数据库中检索该声纹特征,若匹配声纹成功则进入动态验证环节。

2)动态验证阶段。基于随机文本库生成随机口令,并展示给待验证人员,待验证人员录入动态口令语音,首先将该语音输入语音识别模型,转换为文本序列,与展示的随机口令文本进行匹配,同时将该语音输入声纹识别模型提取声纹特征,与步骤1)中提取的声纹特征进行匹配。若两次匹配均通过则进入步骤3)指令检验阶段。

3)调度指令检验阶段。首先将录入的调度指令语音输入语音识别模型,得到文本序列,并在调度术语数据库中检索该调度指令内容,旨在发现录入的调度指令中存在的问题,例如不合规术语和超出阈值的异常数值,对调度指令进行安全性校验。如果发现调度指令存在安全隐患,则不予执行并将调度指令退回,直至调度人员对指令进行修改,通过合规性校验后,系统再发布调度指令。

2.2 人员声纹认证

在电网调度场景中,为避免指令歧义等隐患引起的安全风险,调度系统通常要求调度员使用一套统一且严谨的调度术语体系进行联系汇报,这使得调度指令较为简练,语音时长较短,同时也导致声纹识别系统难以获得大量声纹信息,无法提取出足够的声纹特征[18]。因此在电网调度系统中,如何从有限的声纹数据中获取尽可能多的声纹特征用于声纹人员认证,具有较大的研究价值。

传统的声纹识别方法难以从原始语音中提取充足的信息来检测短时语音,针对该短时语音安全挑战,引入卷积神经网络CNN 对声纹进行建模,CNN是近年来语音处理领域中最流行的架构之一,其权重共享、局部感知域和池化层等特征有助于发现语音信息中鲁棒的特征表示,因此引入CNN 可以有效解决短时语音挑战中语音信息量不足的问题[19]。首先,将说话者的语音信号划分为短时语音段;然后,从短时语音段生成短时间频谱图,并取对数获得短时间对数频谱图;接着,将多个短时对数频谱图叠加为一组获取特征谱图,以减小样本大小,并准确地获得稳定的声纹特征。最后,将特征谱图输入到卷积神经网络中,预测出最有可能的说话人,采用卷积神经网络对声纹特征进行提取,可以充分利用时域和频域的特征,提高声纹识别系统的性能[20]。

所设计的声纹认证阶段主要分为训练、注册和识别3 个流程。在训练流程中,首先从非相关人员中采集大量的训练语音,然后将训练语音进行预处理得到语谱图,最后将语谱图作为声纹模型的输入,训练出用于声纹识别的通用背景模型,流程如图3所示。

图3 声纹认证阶段训练流程Fig.3 Voiceprint authentication phase training process

在注册流程中,首先需要采集相关调度人员的注册语音,将注册语音预处理生成语谱图后,输入到通用背景模型中得到声纹嵌入向量,然后将同一个调度人员的多个声纹嵌入向量进行平均,最终得到属于每一个调度人员的声纹模型,存储到声纹数据库中即视为完成注册,流程如图4所示。

图4 声纹认证阶段注册流程Fig.4 Voiceprint authentication phase registration process

在识别流程中,首先对语音信号进行预处理得到语谱图,然后将语谱图输入训练得到的声纹模型中,得到待识别语音的声纹嵌入向量,最后与声纹数据库中的声纹模型进行对比,计算并评估声纹嵌入向量与所有声纹模型的相似性,得到大小为N的余弦距离矩阵(N表示说话人数量)。使用该余弦距离矩阵中的值作为相似度得分,若数据库存在相似度大于设定阈值的声纹特征则判断为通过,进入动态验证阶段,若无高于阈值的声纹特征则不予通过,流程如图5所示。

图5 声纹认证阶段识别流程Fig.5 Voiceprint authentication phase identification process

2.3 口令动态验证

除短时语音安全挑战外,欺骗性语音也是一个威胁声纹识别身份认证的安全挑战,欺骗性语音即系统闯入者使用语音合成、录音重放等方法欺骗声纹身份认证系统,试图利用虚假语音通过身份认证,获取系统操作权限,实行不法行为。如何应对欺骗性语音无疑对声纹身份认证系统提出更高的要求。通过技术合成的人工语音,无法完全模仿目标用户的真实语音,合成语音与真实语音在高频区分布差别较大,难以合成连贯且自然的语音,先进的声纹识别算法可以识别合成语音与真实语音的差异,在一定程度上抵御合成语音威胁。而录音重放的语音取自真实目标用户的语音,基于声纹识别技术的身份验证系统无法识别验证语音是否为系统用户本人录入,抑或是录音重放,因此现有声纹身份认证系统难以抵御此类攻击。

针对欺骗性语音安全挑战,文中采用动态口令验证技术来解决该问题。声纹识别技术可以分为文本有关型、文本无关型和文本提示型。3种声纹识别技术各有其特色:文本相关型使用说话人的发音关键词和常用语句作为训练文本,识别时,按照固定内容发音,识别性能优异,但更容易被盗用真实用户语音;文本无关型的说话人识别方法,无须限制识别时的语音内容,使用起来更加灵活方便,但是性能不能得到保证;文本提示型同时具备文本有关型和文本无关型的优势,既有良好的识别效率,也能防范欺骗性语音。动态口令验证技术属于文本提示型声纹识别技术,每次执行身份认证时,系统会从预先设定的文本库中随机选择并生成动态文本,要求说话人依照展示文本发音,系统同时也会设置时限,闯入者很难在短时间合成目标用户语音,更不可能提前获取包含提示文本的目标用户的真实语音,通过动态口令验证技术可以很好地解决欺骗性语音问题。

文中提出的动态口令验证阶段实现流程如图6所示。

图6 动态验证阶段流程Fig.6 Dynamic verification phase process

动态口令验证阶段实现步骤如下:

1)从文本库中随机生成动态口令,展示给待验证人员,待验证人员须在规定时间录入动态口令语音,否则验证失败。

2)将动态口令语音输入语音识别模型,得到文本识别结果,将识别结果与展示的动态口令进行匹配,若不匹配则要求重新录入。

3)若识别结果与动态口令匹配,则继续进行声纹特征提取,将动态口令语音输入到声纹识别模型中,得到声纹嵌入特征,与之前录入的调度指令语音进行声纹特征余弦相似度判决,给出核验结果;

4)若判决的余弦相似度大于设定的阈值,则判断调度指令语音不属于欺骗性语音,调度员身份检验通过,继续执行指令校验阶段,若相似度低于阈值则不予执行。

2.4 指令有效性校验

随之电网智能化进程的推进,电网安全问题时有发生,例如无权限调度和错误调度等。这些风险时刻威胁着电网系统的正常调度,加强电网风险管控,提高电网调度操作水平迫在眉睫。针对可能出现的错误调度指令,文中提出了加入指令校验过程的构想,调度指令校验是指当系统即将执行调度指令时,先对调度指令进行可行性校验,即检查指令的合规性和安全性,当发现调度指令存在安全隐患或表达歧义等问题时,系统会退还调度指令并提示调度人员更改指令,直至指令通过校验后才被允许发布。对调度指令进行校验既可以提升电网风险管理水平,还能提高电网调度效率,最大程度上规避错误调度引起的安全事故。

文中提出的调度指令校验实现流程如图7所示。

图7 调度指令校验流程Fig.7 Dispatching instruction verification process

调度指令校验实现步骤如下:

1)首先将调度指令语音输入语音识别模型和word2vec,输出文本识别结果,接着计算文本中所有单词的词嵌入,最后对所有词嵌入取平均。

2)计算识别文本词嵌入和调度术语数据库中记录的所有调度指令的词嵌入之间的余弦相似度,得到余弦距离矩阵。

3)若余弦距离矩阵中存在大于设定阈值的值,即说明该调度语音是存在记录在数据库中的合规调度指令,判断允许执行;反之,若不存在则要求重新录入调度指令语音。

3 结束语

针对传统电网调度系统中缺乏调度认证的问题,结合电网运行特点及调控需求,设计基于声纹识别的调度认证系统,帮助远程识别现场的调度下令人员的真实身份,并校验调度指令的可行性。首先,引入深度学习算法模型提取语音特征,有效地抽取输入语音更深层次的信息,提高模型的运算速度,解决短时语音问题;其次,引入动态口令验证,剔除虚假调度语音,核验现场人员的真实身份,解决欺骗性语音问题;最后,对调度指令进行可行性校验和风险评估,减少不合规调度指令造成的风险,提高电网调度的效率,同时避免重大安全事故。

猜你喜欢

声纹识别声纹口令
高矮胖瘦
口 令
屏幕即指纹识别
声纹识别中的区分性训练
好玩的“反口令”游戏
基于i—vector声纹识别上课点名系统的设计与实现
SNMP服务弱口令安全漏洞防范
面向移动终端的语音签到系统
基于数字水印的人脸与声纹融合识别算法
声纹