一种基于发声神经电位信号的无声语音重建方法

    专利查询2022-07-09  139



    1.本发明涉及人机接口和人工智能领域,尤其是涉及一种基于发声神经电位信号的无声语音重建方法,用于完成无声说话时语音重建。


    背景技术:

    2.人机接口是一种利用软硬件来探索人类神经活动的基本方法。人机接口使人类无需言语即可与周围环境互动并传达内心想法。静音语音解码是人机接口最受欢迎的领域之一。静音语音解码旨在使用生物信号来检测与语音相关的生物活动(而不是声学数据)并解码人类的思想。它具有广泛的现实生活应用,例如语音康复、静音操作、作为声学语音的补充等。
    3.现有对静音语音解码的研究可以分为两大类,即生物信号到文本和生物信号到语音。考虑到生物信号到文本的方法可能会忽略说话者的身份,并且分类错误会传播到下游过程。一些工作试图通过从无声语音中检测到的生物信号重建语音来实现静音语音解码。但是仍然存在输出语音正确率低,语音质量不清晰,质量低等问题。


    技术实现要素:

    4.本发明主要是解决现有技术所存在的对脑电信号解码重建的正确率较低,语音质量不清晰等技术问题,提供一种高质量的基于发声神经电位信号的无声语音重建方法。
    5.本发明针对上述技术问题主要是通过下述技术方案得以解决的:一种基于发声神经电位信号的无声语音重建方法,基于语音重建模型,包括模型训练过程和重建过程,模型训练过程如下:
    6.s1、被试者正常朗读文本内容,贴在人体表面的电极阵列采集有声朗读时的有声神经电位信号,麦克风同时采集朗读的语音信号;有声神经电位信号与语音信号是时间同步的;
    7.s2、被试者无声默读与步骤s1中相同的文本内容,电极阵列采集无声默读时的无声神经电位信号;
    8.s3、对有声神经电位信号、无声神经电位信号以及语音信号进行预处理及分帧,有声神经电位信号分帧后得到的有声神经电位特征记为x
    1:m
    ,m为有声神经电位特征的总帧数;语音信号分帧后得到的语音特征记为y
    1:m
    ,语音特征的帧数和有声神经电位特征相同;无声神经电位信号分帧后得到的无声神经电位特征记为x
    1:n
    ,n为无声神经电位特征的总帧数;
    9.s4、根据语音信号及其对应的文本,通过强制对齐获得语音信号对应的真实音素ph
    1:m

    10.s5、通过有声神经电位信号与无声神经电位信号计算第i帧无声神经电位信号的持续长度di,第i帧无声神经电位信号x
    1:n
    [i]对应语音信号中的[y
    1:m
    [j],

    , y
    1:m
    [j p-1]],di=p,1≤i≤n,d
    1:n
    是di的集合;本步骤是因为无声神经电位信号与有声神经电位信号
    在被试者重复的过程中语速不一致,需要重新对齐;
    [0011]
    s6、将无声神经电位特征x
    1:n
    输入至编码器得到编码隐变量h
    1:n

    [0012]
    s7、将编码隐变量h
    1:n
    输入至持续长度预测器中得到预测的持续长度计算预测的持续长度与真实帧持续长度d
    1:n
    的均方误差损失(mse,mean square error);
    [0013]
    s8、将编码隐变量h
    1:n
    与真实帧持续长度d
    1:n
    输入至长度调整器,进行帧数调整以得到解码隐变量h
    1:m

    [0014]
    s9、将解码隐变量h
    1:m
    输入至音素分类器中,输出预测音素计算预测音素与真实音素ph
    1:m
    的交叉熵损失(cee,cross entropy error);
    [0015]
    s10、将解码隐变量h
    1:m
    输入至有声神经电位特征重建器中,输出预测有声神经电位特征计算预测有声神经电位特征与有声神经电位特征x
    1:m
    的均方误差损失;
    [0016]
    s11、将解码器隐变量h
    1:m
    输入至解码器得到预测语音特征再将预测语音特征经过后处理网络(post-net)得到残差m帧语音特征将预测的m帧语音特征和残差m帧语音特征分别与实际的语音特征y
    1:m
    计算平均绝对误差损失(mae,mean absolute error);
    [0017]
    s12、根据损失函数进行反向传播以更新语音重建模型的训练权重,直至语音重建模型收敛,损失函数公式为:
    [0018][0019]
    式中,λ
    ph
    为交叉熵损失权重,λ
    recons
    为有声信号均方误差损失权重,这两个权重都在0到1之间,均通过训练得到,
    [0020]
    重建过程为将采集到的无声神经电位信号输入到语音重建模型中,得到重建后的语音信号。
    [0021]
    作为优选,所述重建过程具体为:
    [0022]
    a1、通过贴在人体表面的电极阵列采集无声神经电位信号,将采集到的无声神经电位信号进行预处理并分帧,得到无声神经电位特征x

    1:n
    ,n为无声神经电位特征的总帧数,将无声神经电位特征x

    1:n
    输入至编码器得到编码隐变量
    [0023]
    a2、将编码隐变量输入到持续长度预测器中获得预测的持续长度
    [0024]
    a3、将编码隐变量和预测的持续长度输入至长度调整器得到解码隐变量
    m为调整后的解码隐变量总帧数,
    [0025]
    a4、将解码器隐变量输入至解码器后得到预测语音特征将预测语音特征输入到post-net中得到残差语音特征
    [0026]
    a5、将残差语音特征输入至声码器中获得语音信号,声码器可以是griffin-lim、parallel wavegan或wavenet等神经声码器。
    [0027]
    作为优选,所述电极阵列的电极为银/氯化银表面湿电极,包括偏置电极、参考电极以及采集电极;
    [0028]
    至少各有一个偏置电极和一个参考电极放置于耳后乳突处;
    [0029]
    采集电极包括位于口颊肌区域、舌外肌区域、颧肌区域、喉外肌区域中的任何一类或若干类。
    [0030]
    贴置于口颊肌区域和舌外肌区域的电极为单电极,贴置于颧肌区域和喉外肌区域的电极为差分电极,即有两个电极,采集得到的两路信号差分得到一路信号。信号采集设备接收电极阵列发送的电信号,并对该信号进行放大。信号重建模块对无声信号进行一系列处理,将上述处理后通过训练网络重建成语音。语音设备将重建出的语音信号播放,通过人耳接收。
    [0031]
    作为优选,所述预处理包括滤波和特征提取,特征提取具体为通过移动窗按帧提取时域和时频域特征。
    [0032]
    滤波包括但不限于工频滤波和带通滤波。时域特征主要包括但不限于过零点、平均值、绝对平均值和方差,时频域特征为对每帧内信号进行短时傅立叶变换后的幅度值。
    [0033]
    作为优选,步骤s4具体为:将语音特征和文本输入强制对齐软件mfa (montreal forced aligner),得到每个音素对应的时间段,从而计算出每帧语音特征对应的音素。
    [0034]
    作为优选,所述编码器包括全连接层、位置嵌入层以及基于fastspeech框架搭建的前馈转换器。
    [0035]
    作为优选,所述持续长度预测器包括卷积层、relu激活层以及一个全连接层,卷积层的层数在1到3层之间。
    [0036]
    作为优选,解码器包括基于fastspeech框架搭建的前馈转换器和全连接层; post-net包括卷积层,层数在1到5之间。
    [0037]
    作为优选,长度调整器的具体过程为:
    [0038]
    将编码隐变量中的hi复制di次,得到的即为解码隐变量。
    [0039]
    长度调整器的目的是基于持续长度序列(或)调整编码隐变量。
    [0040]
    作为优选,音素分类器和有声神经电位特征重建器均为全连接层。
    [0041]
    作为优选,步骤s5具体为:
    [0042]
    s51、通过动态时间规整(dtw)得到有声神经电位特征和无声神经电位特征之间各个帧的对,动态时间规整的损失函数如下:
    [0043]
    ‖x
    1:n
    [i]-x
    1:m
    [j]‖
    [0044]
    s52、计算使得动态时间规整的损失函数最小的输入输出帧级对应关系序列 a
    1:m

    其中a
    1:m
    [j]表示第j帧有声神经电位特征对应的无声神经电位特征帧的标号,真实帧持续长度的计算公式为:
    [0045][0046]
    其中,di也称为真实帧持续长度,其中
    [0047]
    作为优选,训练过程中对动态时间规整的损失函数进行更新,公式如下:
    [0048][0049]
    其中,为编码隐变量h
    1:n
    直接输入至解码器中得到n帧输出语音特征,λ
    align
    为对齐权重,对齐权重值在5到10之间,通过训练得到;
    [0050]
    动态时间规整的损失函数的更新为将全部训练数据训练k次后更新,k的值为5到20。
    [0051]
    作为优选,声码器需要将被试者的语音进行预训练,获得一个被试者语音特征转换为语音的神经声码器的预训练模型。
    [0052]
    作为优选,模型在多次实验数据上训练及使用时,将实验次数作为标记输入到embedding网络中,与输入神经电位特征合并,输入到编码器中。
    [0053]
    作为优选,模型在多次实验数据上训练及使用时,可以将单次实验中获得的持续长度合并直接作为多次实验数据训练时真实持续长度,输入到持续长度预测器中,而不需要进行计算。
    [0054]
    本发明的基本思想是,利用电极采集发声时发声相关神经电位信号与语音信号,并在无声情况下采集发声相关神经信号,并且通过深度学习网络获得无声神经电位信号与相同文本的语音信号的联系,完成无声情况下语音信号的重建,完成无声情况信息内容的传递,完成无声传递信息的任务,可直接进行无声情况的信息传递。对于一些无法发声的场合,声带不振动,以默读的形式完成信息传递的过程。
    附图说明
    [0055]
    图1是本发明的一种基于发生神经电位的语音重建系统框图;
    [0056]
    图2是本发明的一种模型训练结构流程图;
    [0057]
    图3是本发明的一种模型使用结构流程图;
    [0058]
    图4是本发明的一种模型中音素分类器与有声神经电位特征重建器使用结构流程图;
    [0059]
    图5是本发明的单人5次实验的结果图。
    具体实施方式
    [0060]
    下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
    [0061]
    实施例:本实施例的一种基于神经电位信号的无声语音重建系统,如图1 所示,包括:
    [0062]
    电极阵列101,电极阵列包含至少2个电极,贴置于面部采集发声相关神经电位信
    号;
    [0063]
    麦克风102用于采集有声朗读时的语音信号;
    [0064]
    信号采集模块103,将采集的电位信号进行通过运放进行放大,并通过有线或无线通信形式发送给上位机,同时在有声朗读时将麦克风采集的语音信号通过有线或无线通信形式发送给上位机;
    [0065]
    信号重建模块104,在训练阶段,采集有声朗读时神经电位信号与麦克风采集的信号进行对齐,预处理与特征提取,采集无声时的神经电位信号进行预处理与特征提取,并将上述神经电位信号特征作为输入,语音信号作为输出训练网络;在测试阶段,仅采集无声神经电位信号,进行预处理、特征提取并输入网络进行重建;
    [0066]
    语音播放设备105,将重建出的语音通过语音播放设备播放。
    [0067]
    本发明的基本思想是,利用电极采集发声器官表面的发声神经电位,经过信号处理、语音重建等步骤,无声情况下也可以输出语音。
    [0068]
    电极阵列是一组发声神经电位传感器,位于人体面部以及面部周边,获取人体电信号。麦克风用于采集有声朗读时的语音信号。信号采集设备接收电极阵列发送的电信号,并对该信号进行放大。信号重建模块对无声信号进行一系列处理,将上述处理后通过训练网络重建成语音。语音设备将重建出的语音信号播放,通过人耳接收。
    [0069]
    详细说明本发明的一种基于神经电位信号的无声语音重建训练方法,如图2 所示,包括以下步骤:
    [0070]
    步骤1:首先被试者根据屏幕显示的文本内容正常朗读,通过电极阵列采集有声朗读有声神经电位信号,通过麦克风采集语音信号,有声神经电位信号与语音信号是时间同步的。其次被试者无声默念相同文本,采集无声默念时的无声神经电位信号;
    [0071]
    步骤2:信号预处理,对步骤1采集的神经电位信号与语音信号进行预处理、分帧,其中n帧无声神经电位信号特征为x
    1:n
    ,m帧有声神经电位信号的特征为x
    1:m
    ,与有声神经电位信号同步获得的语音信号特征为y
    1:m

    [0072]
    步骤3:根据有声语音信号及其对应的文本拼音及音素,通过强制对齐工具获得每帧有声语音信号y
    1:m
    对应的音素ph
    1:m

    [0073]
    步骤4:由于无声神经电位信号与有声神经电位信号在被试者重复的过程中语速不一致,需要重新对齐。通过相同文本内容的有声神经电位特征x
    1:m
    与无声神经电位特征x
    1:n
    计算无声神经电位特征第i帧的持续长度di,1≤i≤n,无声特征第i帧x
    1:n
    [i]对应的有声特征ym中[yj,

    ,y
    j p-1
    ],di=p则为x
    1:n
    [i]对应的持续长度。
    [0074]
    步骤4.1:通过dtw(动态时间规整)得到两个时间序列之间各个帧的对:
    [0075]
    dtw的损失函数如下:
    [0076]
    ||x
    1:n
    [i]-x
    1:m
    [j]||
    [0077]
    步骤4.2:根据上述损失函数计算使得损失函数最小的输入输出帧级对应关系序列即a
    1:m
    ,其中a
    1:m
    [j]表示第j帧有声特征对应的无声特征帧的标号。得到真实帧持续长度的计算公式如下:
    [0078][0079]
    其中,di也称为真实帧持续长度,其中
    [0080]
    步骤5:神经电位特征转换为语音特征的重建网络训练:
    [0081]
    步骤5.1:将步骤2所述神经电位特征x
    1:n
    输入至编码器以得到编码隐变量 h
    1:n

    [0082]
    步骤5.2:将步骤5.1所述编码隐变量h
    1:n
    输入至持续长度预测器中,时序时间预测器输出预测的持续长度与步骤4得到的真实帧持续长度d
    1:n
    计算mse (mean square error,均方误差损失);
    [0083]
    步骤5.3:将步骤5.1所述编码隐变量h
    1:n
    与步骤4得到的真实帧持续长度d
    1:n
    输入至长度调整器,进行帧数调整以得到解码隐变量h
    1:m

    [0084]
    步骤5.4:将步骤5.3所述解码隐变量h
    1:m
    输入至音素分类器中,输出预测音素与与步骤3中得到的真实音素帧ph
    1:m
    计算cee(cross entropy error,交叉熵损失),如图4所示;
    [0085]
    步骤5.5:将步骤5.3所述解码隐变量h
    1:m
    输入至有声神经电位特征重建器中,输出预测音素与与步骤3中得到的实际对应有声神经电位特征x
    1:m
    计算mse,如图4所示;
    [0086]
    步骤5.6:将步骤5.3所述解码器隐变量h
    1:m
    输入至解码器得到预测语音特征再将经过post-net得到残差m帧语音特征将与分别与实际语音特征计算mae(mean absolute error,均方误差损失);
    [0087]
    步骤5.7:在训练过程中更新dtw损失函数,公式如下所示:
    [0088][0089]
    其中,为在训练过程中输入特征x
    1:n
    进入编码器得到隐变量h
    1:n
    ,再将h
    1:n
    后直接输入至解码器中而不经过长度调节器调节后得到n帧输出语音特征,λ
    align
    为对齐权重。持续长度计算如步骤4.2所述;
    [0090]
    步骤5.8:该多任务训练模型的损失函数公式如下:
    [0091][0092]
    步骤6:将无声神经电位特征输入到网络中,直接获得语音特征;
    [0093]
    所述步骤1中,采集味觉刺激下的表面肌电信号的基本流程如下:
    [0094]
    步骤1.1、被试者洁净面部,粘贴电极,佩戴麦克风。
    [0095]
    步骤1.2、调试semg采集系统软硬件。
    [0096]
    步骤1.3、被试者根据屏幕显示句子正常朗读,鼠标控制开始结束;
    [0097]
    步骤1.4、被试者根据屏幕显示句子正常朗读,鼠标控制开始结束,避免唇部运动,只有舌头运动,无声阅读,记录神经电位信号,鼠标控制开始结束,该步骤重复5次。
    [0098]
    步骤1.5、更换句子内容,重复步骤1.3和1.4。
    [0099]
    所述步骤1中所述的电极阵列为一组获取人体电信号的传感器。信号采集设备接收电极阵列发送的电信号,并对该信号进行放大。信号重建模块对无声信号进行一系列处理,将上述处理后通过训练网络重建成语音。语音设备将重建出的语音信号播放,通过人耳接收;
    [0100]
    所述步骤1中所述的电极阵列电极为银/氯化银表面湿电极,包括偏置电极、参考电极以及采集电极;
    [0101]
    至少各有一个偏置电极和一个参考电极放置于耳后乳突处;
    [0102]
    采集电极至少包括位于口颊肌区域、舌外肌区域、颧肌区域、喉外肌区域中的任何一类;
    [0103]
    贴置于口颊肌区域和舌外肌区域的电极为单电极,贴置于颧肌区域和喉外肌区域的电极为差分电极,即有两个电极,采集得到的两路信号差分得到一路信号;
    [0104]
    所述步骤2包括以下步骤:
    [0105]
    步骤2.1:对神经电位信号滤波,包括但不限于工频滤波和带通滤波;
    [0106]
    步骤2.2:对神经电位信号提取特征,提取的特征以及提取方式具体为通过移动窗按帧提取时频与时频域特征。时域特征主要包括但不限于过零点、平均值、绝对平均值和方差,时频域特征为对每帧内信号进行短时傅立叶变换后的幅度值;
    [0107]
    所述步骤3将被试者的语音及其文本输入强制对齐软件montreal forced aligner(mfa),得到每个音素对应的时间段,从而计算出每帧语音特征对应的音素;
    [0108]
    所述步骤5.1的编码器包括全连接层,位置嵌入层,以及基于fastspeech框架搭建的fft(前馈转换器);
    [0109]
    所述步骤5.6的解码器包括基于fastspeech框架搭建的fft(前馈转换器),全连接层;
    [0110]
    所述步骤5.6的post-net包括卷积层;
    [0111]
    所述步骤5.7中的dtw损失函数的更新为将全部训练数据训练k次后再进行更新,k的值在5到20之间;
    [0112]
    所述步骤6包括以下步骤,如图3所示:
    [0113]
    步骤6.1:无声神经电位特征x
    1:n
    输入至编码器以得到编码隐变量
    [0114]
    步骤6.2:将步骤6.1所述编码隐变量作为输入到预训练的持续长度预测器中获得预测的持续长度
    [0115]
    步骤6.3:将步骤6.2所述编码隐变量和持续长度预测器预测出的持续长度输入至长度调整器得到解码隐变量
    [0116]
    步骤6.4:将步骤6.3所述解码器隐变量输入至解码器后得到预测语音特征将输入到post-net中得到残差语音特征
    [0117]
    步骤6.5:将步骤6.4所述预测语音特征输入声码器中获得语音信号,其特征在于使用的声码器可以是传统的griffin-lim声码器,也可以是parallel wavegan,wavenet等神经声码器;
    [0118]
    作所述步骤6中神经声码器,需要将被试者的语音进行预训练,获得一个被试者语音特征转换为语音的神经声码器的预训练模型;
    [0119]
    所述的模型,在多次实验数据上训练及使用时,将实验次数作为标记输入到embedding网络中,与输入神经电位特征合并,输入到编码器中;
    [0120]
    所述的模型,在多次实验数据上训练及使用时,可以将单次实验中获得的持续长度合并直接作为多次实验数据训练时真实持续长度,输入到持续长度预测器中,而不需要进行计算。
    [0121]
    本实例的语音重建效果:如图5所示,8位被试者所听写的重建出的语音为每次实验的测试集中的5条语音,五次混合实验中,8位被试者所听写的重建出的语音为测试集中的25条语音,被试者对测试语音没有任何先验知识,单次实验平均错字率为3.39%。
    [0122]
    本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
    [0123]
    尽管本文较多地使用了预处理,声码器等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。
    转载请注明原文地址:https://tc.8miu.com/read-3472.html

    最新回复(0)