1.本发明的技术方案涉及深度学习图像处理和图像识别技术领域,具体是一种基于多线索相互蒸馏和自蒸馏的连续手语识别方法。
背景技术:2.连续手语识别的目的是将一句完整的手语语句翻译成为一个完整的文字语句。一个完整的手语语句由若干个单词构成,连续手语识别的任务是将完整的手语语句分割为若干个手语单词,再通过句子合成为一个完整的文字语句。连续手语识别涉及到了计算机视觉、人机交互、模式识别和自然语言处理等多个技术领域。
3.手语不仅仅是手势变化,它是由手势、上半身肢体动作和脸部表情共同构成的一种肢体语言,是听力障碍人群和正常人之间的重要交流方式。由于大多数正常人不懂手语,故连续手语识别技术实现了听力障碍人群和正常人之间的沟通交流。手语识别一般分为两类:孤立手语识别和连续手语识别,连续手语识别通常以孤立手语识别为基础,对手语孤立词进行识别,然后进行单词拼接。传统的连续手语识别方法利用手工特征进行建模,近些年来深度学习技术被用于连续手语识别之中,对于连续手语识别中由于手势遮挡、手势变化大等因素导致识别精度低的缺陷有了明显改进。
4.然而,现有的手语数据集中,一个连续手语视频对应的标签是整个语句的标签,视频中包含的孤立手语词和其对应的单词标签的对齐是未知的,所以连续手语识别是一种弱监督问题。链接时序分类网络(connectionist temporal classification,ctc)可以解决视频标签的弱监督问题,能够自动完成输入视频序列和文本序列之间的对齐任务。zhou等人在“spatial-temporal multi-cue network for continuous sign language recognition”中使用ctc作为损失进行序列学习,建立手语视频帧和手语词汇之间的映射关系,但是序列学习部分相较于特征提取部分更容易过拟合。公开号为cn112487951a的专利申请公开了一种手语识别和翻译方法,该方法通过从骨干网络第三层基本网络层的输出特征图中反卷积上采样提取关键点,并通过获取关节节点构成向量,再与骨干网络的向量连接,采用两层双向长短时记忆网络来学习时序特征,使用ctc分类器作为优化损失函数,smooth-l1函数作为关键点匹配损失函数;该方法的缺点是:忽略了手语是一个动态过程,没有对短期的时空特征进行特征提取,丢失了运动信息。公开号为cn112329690a的专利申请公开了一种基于时空残差网络和时序卷积网络的连续手语识别方法,该方法使用时空残差网络提取特征,通过时序卷积网络增强短期的时间联系,再通过双向门控循环单元建立长时间联系,使用ctc分类器作为网络最终的损失函数;该方法的缺点是:只关注于图像本身,没有充分利用图像中的局部信息;由于某些单词的手势表达很相似,例如“报答”与“报复”、“电脑”与“钢琴”、“惊讶”与“陌生”(参见文献《hu h,zhouw,pu j,et al.global-local enhancement network for nmf-aware sign language recognition[j].acm transactions on multimedia computing,communications,and applications(tomm),2021,17(3):1-19.》),往往需要结合脸部表情才能确定具体含义,因此该方法对于相似手
语词的识别精度较低。
[0005]
在以往的研究中,基于深度学习的连续手语识别通常使用特征提取模块和序列学习模块相结合的混合模型,min等人在“visual alignment constraint for continuous sign language recognition”中提出混合模型会导致特征提取模块的训练不足,导致特征提取模块的收敛能力较差。
技术实现要素:[0006]
针对现有技术的不足,本发明所要解决的技术问题是:提供了一种基于多线索相互蒸馏和自蒸馏的连续手语识别方法。该方法利用了原始手语图像中的脸部信息和手部信息,通过相互蒸馏的方式,充分利用了脸部信息和手部信息的知识,解决了局部信息利用不充分的问题,提高了神经网络的泛化能力,从而达到提高识别精度的目的;通过自蒸馏的方式增加了神经网络中不同模块之间的协调性,在一定程度上解决了多模块组合形成的混合神经网络会导致特征提取模块部分训练不足的问题,增强了特征提取模块的收敛,增强了整个神经网络对手语的识别能力。
[0007]
本发明解决所述技术问题所采用的技术方案如下:
[0008]
一种基于多线索相互蒸馏和自蒸馏的连续手语识别方法,其特征在于,该方法包括以下内容:
[0009]
获取手语视频,从手语视频中提取脸部、左手手部以及右手手部视频;
[0010]
对手语视频、脸部视频、左手手部视频和右手手部视频进行包括随机裁剪、随机翻转和归一化在内的预处理;
[0011]
将手语视频输入到残差网络resnet50中进行特征提取,得到全局空间特征;将脸部视频、左手手部视频和右手手部视频输入到残差网络resnet18中,得到脸部空间特征、左手手部空间特征和右手手部空间特征;
[0012]
将左手手部空间特征和右手手部空间特征按照第二个维度进行拼接,得到手部空间特征;利用一维卷积模块分别从全局空间特征、脸部空间特征和手部空间特征中提取具有短期时间联系的全局手语词级特征、脸部手语词级特征和手部手语词级特征;一维卷积模块由一维卷积和时序最大池化构成,一维卷积模块的结构为conv
1d
,maxpooling
1d
,conv
1d
,maxpooling
1d
,conv
1d
为卷积核大小为5的一维卷积,maxpooling
1d
为大小为2的时序最大池化;
[0013]
从全局手语词级特征、脸部手语词级特征和手部手语词级特征中提取具有长期时间联系的全局上下文级特征、脸部上下文级特征和手部上下文级特征,再利用全连接层和softmax激活函数,获得归一化的全局分类概率矩阵、脸部分类概率矩阵、手部分类概率矩阵和全局手语词级分类概率矩阵;
[0014]
基于获得的分类概率矩阵,构建总损失函数,训练神经网络;总损失函数包含链接时序分类损失函数、多线索相互蒸馏损失和自蒸馏损失三部分;将训练后的神经网络用于预测手语,并输出手语标签。
[0015]
与现有技术相比,本发明的有益效果是:
[0016]
本发明突出的实质性特点如下:
[0017]
(1)本技术中使用原始手语图像、脸部图像和手部图像作为神经网络的多线索输
入,基于相对应的图像的语义信息相同,通过相互知识蒸馏使得多线索之间相互学习,增强了神经网络的泛化能力,提高了各个线索对于手语的识别能力。在实际应用过程中,仅通过原始手语图像就推理生成手语词,而不需要再输入脸部图像和手部图像。本技术通过使用手语词级特征和上下文级特征通过自我局部自蒸馏的方式增加了网络部分的收敛,帮助整体神经网络提高对于手语词的识别效果。
[0018]
(2)本技术通过openpose算法从手语视频的各帧原始手语图像中定位手部关节和脸部位置,按照坐标点进行裁剪生成脸部图像、左手手部图像和右手手部图像,进而得到脸部视频、左手手部视频和右手手部视频;将手语视频、脸部视频、左手手部视频和右手手部视频这四条线索分别通过神经网络提取空间特征,两条手部线索拼接到一起,后续三条线索分别通过一维卷积模块、双向门控单元和全连接层得到各自的分类概率矩阵。在构建损失函数训练神经网络的过程中,本技术提出的多线索相互蒸馏损失和自蒸馏的方式通过使用kl散度损失来增强了各个线索的泛化能力,最后使用ctc损失对各个线索加以标签的对齐约束进行训练,最终的识别手语过程中,通过束搜索解码策略将分类概率矩阵转换为手语词,实现连续手语的识别。
[0019]
本发明的显著进步是:
[0020]
(1)本发明方法与cn112329690a相比,本发明方法能够充分利用原始手语图像中的脸部和手部信息,通过自蒸馏方式改进了混合神经网络中特征提取部分训练不足的问题,提高了识别效果。
[0021]
(2)本发明方法使用残差网络resnet50提取手语视频的空间特征,使用残差网络resnet18提取脸部视频、左手手部视频和右手手部视频的空间特征,分别针对不同大小的图像使用不同深度的网络进行特征提取,resnet中的残差结构可以有效避免梯度爆炸和梯度消失的问题,使得网络收敛速度更快、优化更容易,参数相比于之前的结构更少。
[0022]
(3)本发明方法与cn112487951a相比,本发明方法所具有的优点是通过一维卷积模块来提取短期的时空特征,捕获手语的运动信息,以此获取手语词级特征进行后续的操作,这样可以充分加强手势的前后时间关联,提高识别效果。
[0023]
(4)本发明方法使用二维卷积和一维卷积相结合的方式代替三维卷积,可以有效地减少神经网络的参数量,加快神经网络的计算速度,并且根据一维卷积核和时序池化的大小控制手语词级特征中包含的帧数,而三维卷积不能有效地控制手语词级特征中包含的帧数。
[0024]
(5)本发明方法通过使用kl散度损失来使得三条线索之间通过相互蒸馏的方式相互学习彼此之间有用的知识,充分利用多线索的特征,提高各个线索的泛化能力。
[0025]
(6)本发明方法提出了一种自蒸馏方法,通过使用kl散度损失来使得手语词级特征和上下文级特征之间通过相互蒸馏的方式相互学习彼此之间有用的知识,可以有效改变混合模型中特征提取部分训练不足的问题,从而提高网络的识别效果。
附图说明
[0026]
图1是本发明的整体流程图;
[0027]
图2是相互蒸馏和自蒸馏的示意图。
具体实施方式
[0028]
如图1所示,本发明基于多线索相互蒸馏和自蒸馏的连续手语识别方法的流程如下:
[0029]
获取手语视频v,从手语视频中提取脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
→
对手语视频v、脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
进行预处理
→
提取手语视频v、脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
的空间特征
→
利用一维卷积模块将空间特征f
full
、f
face
、f
rhand
和f
lhand
转换为具有短期时间联系的手语词级特征
→
提取手语词级特征f
′
full
、f
′
face
和f
′
hand
长期时间联系的上下文级特征e
full
、e
face
和e
hand
→
获得归一化的分类概率矩阵y
full
、y
face
、y
hand
和y
gloss
→
构建总损失函数,训练神经网络
→
根据训练后的神经网络预测手语,并输出手语标签g
→
完成连续的手语识别。
[0030]
如图2所示,利用分类概率矩阵y
full
、y
face
、y
hand
进行相互知识蒸馏,利用分类概率矩阵y
full
和y
gloss
进行自蒸馏的流程如下:
[0031]
多线索相互蒸馏部分:使用kl散度损失d
kl
计算分类概率矩阵y
full
和y
face
的差异、y
face
和y
full
的差异
→
使用kl散度损失d
kl
计算分类概率矩阵y
full
和y
hand
的差异、y
hand
和y
full
的差异
→
使用kl散度损失d
kl
计算分类概率矩阵y
hand
和y
face
的差异、y
face
和y
hand
的差异
→
根据前述三部分kl散度损失d
kl
计算多线索相互蒸馏损失;
[0032]
自蒸馏部分:使用kl散度损失d
kl
计算分类概率矩阵y
full
和y
gloss
的差异、y
gloss
和y
full
的差异
→
根据这两部分散度损失d
kl
计算自蒸馏损失。
[0033]
本技术中分类概率矩阵y
full
、y
face
、y
hand
和y
gloss
的维度均为(t
′
,1296),代表对t
′
的特征块进行1296种分类,使用kl散度损失d
kl
作为知识蒸馏的过程,在多线索相互蒸馏中,y
full
、y
face
、y
hand
分别两两使用kl散度损失d
kl
进行约束,这样可以通过其他线索的分类概率矩阵调整自己部分的分类概率矩阵,通过反向传播调整神经网络,从而增强神经网络的泛化能力。在自蒸馏中,y
full
和y
gloss
使用kl散度损失d
kl
进行约束,两者根据彼此的分类概率矩阵相互调整,增强局部神经网络收敛的同时,增强模型的泛化能力。
[0034]
本技术中通过控制一维卷积模块得到的手语词级特征包含视频中十六个帧图像的信息,与一个孤立手语词所需要的帧数基本相同,这样做可以极大的增强局部时间信息的处理,增强神经网络的识别能力。
[0035]
实施例1
[0036]
本实施例的基于多线索相互蒸馏和自蒸馏的连续手语识别方法,具体步骤如下:
[0037]
第一步,获取手语视频,从手语视频中提取脸部、左手手部以及右手手部视频;
[0038]
假设手语视频v=(v1,
…
,v
t
,
…vt
),手语视频为原始手语图像序列形成的视频,t为手语视频v的帧数,表示原始手语图像序列的第1帧、
…
、第t帧、
…
、第t帧,手语视频中的原始手语图像大小为210
×
260像素,利用式(1)将各帧原始手语图像转换为256
×
256像素;
[0039]vt
=resize(256,256)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0040]
公式(1)中,resize(
·
)表示调整图像大小的函数;
[0041]
通过openpose算法获取手语视频v中的人体关节点集p=(p1,
…
,p
t
,
…
p
t
),p
t
表示第t帧原始手语图像中的人体关节点集,p
t
中包含18个二维数组,即18个关节点的坐标;根据图像中的坐标点对各帧原始手语图像进行裁剪,分别得到脸部图像、左手手部图像和右手手部图像,脸部图像大小为64
×
64像素,左手和右手手部图像大小均为96
×
96像素;所有
帧脸部图像、左手手部图像和右手手部图像按时间序列排列,分别得到脸部视频帧脸部图像、左手手部图像和右手手部图像按时间序列排列,分别得到脸部视频左手手部视频和右手手部视频和分别表示从第t帧原始手语图像裁剪得到的脸部图像、左手图像和右手图像;
[0042]
获取脸部视频v
face
的表达式如下,获取左手以及右手手部视频同理;
[0043]vface
=crop(v,p)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0044]
公式(2)中,crop(
·
)表示以坐标点为中心进行裁剪的函数;
[0045]
第二步,对手语视频v、脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
进行预处理;
[0046]
将手语视频v=(v1,
…
,vi,
…vt
)中各帧原始手语图像调整为128
×
128像素,并随机裁剪为112
×
112像素,然后进行随机水平翻转,再将图像的像素值都归一化至(-1,1),手语视频v输入神经网络的维度为(t,3,112,112);将脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
中各帧图像进行随机水平翻转,再将图像的像素值都归一化至(-1,1),脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
输入网络的维度分别为(t,3,64,64)、(t,3,96,96)和(t,3,96,96);公式(3)为手语视频v的预处理表达式,公式(4)~(6)分别为脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
的预处理表达式;
[0047][0048][0049][0050][0051]
公式(3)~(6)中,resize(
·
)表示调整图像大小的函数,randomcrop(
·
)表示对图像随机裁剪成固定大小的函数,randomflip(
·
)表示对图像进行随机水平翻转的函数,normalize(
·
)表示归一化函数,用于将图像的像素值从(0,255)归一化到(-1,1)之间;
[0052]
第三步,利用神经网络提取手语视频v、脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
的空间特征,得到全局空间特征f
full
、脸部空间特征f
face
、左手手部空间特征f
lhand
和右手手部空间特征f
rhand
;
[0053]
将预处理的手语视频v输入到残差网络resnet50(residual network 50)中进行空间特征提取,得到全局空间特征f
full
的维度为(t,1024),提取全局空间特征的表达式为:
[0054][0055]
公式(7)中,conv
resnet50
(
·
)表示残差网络resnet50的函数,表示全局空间特征f
full
中的第t个向量,即从第t帧预处理的手语图像中提取的空间特征;
[0056]
将预处理的脸部视频v
face
、左手手部视频v
lhand
和右手手部视频v
rhand
分别输入到残
差网络resnet18(residual network 18)中进行空间特征提取,得到脸部空间特征18)中进行空间特征提取,得到脸部空间特征左手手部空间特征和右手手部空间特征f
face
、f
rhand
和f
lhand
的维度均为(t,1024),提取空间特征的表达分别为如下公式(8)~(10)所示;
[0057][0058][0059][0060]
公式(8)~(10)中,conv
resnet18
(
·
)表示残差网络resnet18的函数,f
tfull
、f
tlhand
和f
trhand
分别表示脸部空间特征f
face
、左手手部空间特征f
lhand
和右手手部空间特征f
rhand
中的第t个向量;
[0061]
第四步,利用一维卷积模块分别从全局空间特征f
full
、脸部空间特征f
face
、左手手部空间特征f
lhand
和右手手部空间特征f
rhand
中提取具有短期时间联系的全局手语词级特征、脸部手语词级特征和手部手语词级特征;
[0062]
将左手手部空间特征f
lhand
和右手手部空间特征f
rhand
按照第二个维度进行拼接,得到手部空间特征f
hand
,f
hand
的维度为(t,2048),拼接的表达为如下公式(11)所示;
[0063]fhand
=cat(f
lhand
,f
rhand
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11)
[0064]
公式(11)中,cat(
·
)表示按照第二个维度进行特征拼接的函数,
[0065]
分别使用一维卷积模块对全局空间特征f
full
、脸部空间特征f
face
和手部空间特征f
hand
进行短期时间联系的特征提取,得到全局手语词级特征f
′
full
、脸部手语词级特征f
′
face
和手部手语词级特征f
′
hand
;一维卷积模块由一维卷积和时序最大池化构成,一维卷积模块的具体结构为conv
1d
,maxpooling
1d
,conv
1d
,maxpooling
1d
,conv
1d
为卷积核大小为5的一维卷积,maxpooling
1d
为大小为2的时序最大池化,使用一维卷积模块提取手语词级特征表达为如下公式(12)~(14)所示;
[0066][0067][0068][0069]
在公式(12)~(14)中,conv1d(
·
)表示一维卷积模块,和分别表示全局手语词级特征f
′
full
、脸部手语词级特征f
′
face
和手部手语词级特征f
′
hand
中的第t个向量,手语词级特征维度均为(t
′
,1024),t
′
=(n-4)/2=(((t-4)/2)-4)/2,n表示时间维度;
[0070]
一维卷积模块可以分成两个阶段,首先将全局空间特征f
full
、脸部空间特征f
face
和手部空间特征f
hand
的维度分别转换为(1,1024,t),(1,1024,t)和(1,2048,t),使用一维卷积模块其中的一维卷积和时序最大池化提取特征,得到中间特征和具体
操作表达为如下公式(15)~(17)所示;
[0071][0072][0073][0074]
在公式(15)~(17)中,reshape(
·
)表示转换特征维度函数,conv
1d
(
·
)表示卷积核大小为5的一维卷积函数,maxpooling
1d
(
·
)表示时序最大池化函数,和分别表示中间特征和中的第t个向量,中间特征和的维度均为(1,n,1024),n=(t-4)/2;
[0075]
再将中间特征和分别作为输入通过一维卷积模块中的另一个一维卷积和时序最大池化转换为具有短期时间联系的全局手语词级特征f
′
full
、脸部手语词级特征f
′
face
和手部手语词级特征f
′
hand
,具体操作表达为如下公式(18)(19)(20)所示;
[0076][0077][0078][0079]
第五步,分别从全局手语词级特征f
′
full
、脸部手语词级特征f
′
face
和手部手语词级特征f
′
hand
中提取具有长期时间联系的全局上下文级特征e
full
、脸部上下文级特征e
face
和手部上下文级特征e
hand
;
[0080]
将上述第四步获得的全局手语词级特征f
′
full
、脸部手语词级特征f
′
face
和手部手语词级特征f
′
hand
的维度均转换为(t
′
,1,1024),分别输入到串联的两层双向门控循环单元中,双向门控循环单元(bi-directional gated recurrent unit,bgru)为已有的公知算法,提取具有长期时间联系的全局上下文级特征脸部上下文级特征和手部上下文级特征提取上下文级特征的表达为如下公式(21)~(23)所示;
[0081][0082][0083][0084]
公式(21)~(23)中,rnngroup(
·
)表示提取具有长期时间联系的上下文级特征的
函数,rnngroup(
·
)由串联的两层双向门控循环单元组成,和分别表示全局上下文级特征e
full
、脸部上下文级特征e
face
和手部上下文级特征e
hand
中的第t个向量;
[0085]
第六步,获得归一化的全局分类概率矩阵y
full
、脸部分类概率矩阵y
face
、手部分类概率矩阵y
hand
和全局手语词级分类概率矩阵y
gloss
;
[0086]
将第五步中获取的全局上下文级特征e
full
、脸部上下文级特征e
face
、手部上下文级特征e
hand
和第四步中获取的全局手语词级特征f
′
full
分别经过一个全连接层,得到全连接层输出特征fc
full
、fc
face
、fc
hand
和fc
gloss
,全连接层输出特征的大小为词汇量大小1296,通过全连接层表达为如下公式(24)~(27)所示;
[0087][0088][0089][0090][0091]
公式(24)~(27)中,fc(
·
)表示全连接层,和分别表示全连接层输出特征fc
full
、fc
face
、fc
hand
和fc
gloss
中的第t个向量,fc
full
、fc
face
、fc
hand
和fc
gloss
的维度均为(t
′
,1296);
[0092]
将全连接层输出特征fc
full
、fc
face
、fc
hand
和fc
gloss
分别通过softmax激活函数获得全局分类概率矩阵
full
、脸部分类概率矩阵y
face
、手部分类概率矩阵y
hand
和全局手语词级分类概率矩阵y
gloss
;softmax激活函数将特征中的每个向量转换为概率分布,每个向量对应的概率值和为1,获得分类概率矩阵表达为如下公式(28)~(31)所示;
[0093][0094][0095][0096][0097]
公式(28)~(31)中,softmax(
·
)表示激活函数,和分别表示全局分类概率矩阵y
full
、脸部分类概率矩阵y
face
、手部分类概率矩阵y
hand
和全局手语词级分类概率矩阵y
gloss
中的第t个向量;其中,全局分类概率矩阵y
full
中第t个向量的第m个概率值的计算过程表达为如下公式(32)所示;
[0098][0099]
公式(32)中,exp(
·
)表示以自然常数e为底的指数函数,表示全连接层输出
特征fc
full
中第t个向量的第m个概率值,m表示概率值的数量;
[0100]
第七步:构建总损失函数,训练神经网络,包括残差网络resnet50、残差网络resnet18、一维卷积模块和串联的两层双向门控循环单元;
[0101]
该步骤构建的总损失函数共包含三部分,分别为链接时序分类损失函数多线索相互蒸馏损失和自蒸馏损失具体操作如下:
[0102]
第7.1步,构建链接时序分类损失函数
[0103]
将第六步获得的全局分类概率矩阵y
full
、脸部分类概率矩阵y
face
、手部分类概率矩阵y
hand
和全局手语词级分类概率矩阵y
gloss
分别与手语对应的真实标签l输入到各自的链接时序分类网络(connectionist temporal classification,ctc)中,链接时序分类网络引入一个空标签《blank》作为辅助标记,通过加和所有可能路径的条件概率,得到预测概率;输入为全局分类概率矩阵y
full
的预测概率p(l|y
full
)、输入为脸部分类概率矩阵y
face
的预测概率p(l|y
face
)、输入为手部分类概率矩阵y
hand
的预测概率p(l|y
hand
)和输入为全局手语词级分类概率矩阵y
gloss
的预测概率p(l|y
gloss
)表达为如下公式(33)~(36)所示;
[0104][0105][0106][0107][0108]
公式(33)~(36)中,π=(π1,
…
,πi,
…
πs)表示所有可能路径的合集,p(π|y
full
)、p(π|y
face
)、p(π|y
hand
)和p(π|y
gloss
)分别表示输入为y
full
、y
head
、y
hand
和y
gloss
时输出路径π的概率,b是一种多对一的映射,用于去除路径π中的空标签和重复标签;
[0109]
为了最大化预测概率,链接时序分类网络使用预测概率的对数的负数作为损失函数,则链接时序全局分类损失链接时序脸部分类损失链接时序手部分类损失和链接时序全局手语词级分类损失表达为如下公式(37)~(40)所示;
[0110][0111][0112][0113][0114]
公式(37)~(40)中,log(
·
)表示以自然数e为底数的对数函数;
[0115]
综上,链接时序分类网络损失函数共包含四部分的损失,表达为如下公式(41)
所示;
[0116][0117]
第7.2步,构建多线索相互蒸馏损失
[0118]
利用第六步中获得的全局分类概率矩阵y
full
、脸部分类概率矩阵y
face
和手部分类概率矩阵y
hand
构建kl散度(kullback-leibler divergence)损失d
kl
,表达为如下公式(42)~(47)所示;
[0119][0120][0121][0122][0123][0124][0125]
公式(42)~(47)中,和分别表示全局分类概率矩阵y
full
、脸部分类概率矩阵y
face
和手部分类概率矩阵y
hand
中的第t个向量对应概率分布中的第m个概率值,m表示概率值数量,即全连接层输出特征大小;
[0126]
综上,多线索相互蒸馏损失表达为如下公式(48)所示;
[0127][0128]
第7.3步,构建自蒸馏损失
[0129]
利用第六步中获得的全局分类概率矩阵y
full
和全局手语词级分类概率矩阵y
gloss
构建自蒸馏损失自蒸馏损失表达为如下公式(49)所示;
[0130][0131]
公式(49)中,d
kl
(p
full
||p
gloss
)和d
kl
(p
gloss
||p
full
)均为kl散度损失,表示全局手语词级分类概率矩阵y
gloss
中的第t个向量对应概率分布中的第m个概率值;
[0132]
因此,整个神经网络的总损失函数为三个部分损失之和,表达为如下公式(50)所示;
[0133][0134]
公式(50)中,α和β表示用于调整损失比例的超参数;
[0135]
第八步,将训练后的神经网络用于预测手语,并输出手语标签g;
[0136]
利用第七步训练后的神经网络,采用束搜索解码(beam)对第六步获得的全局分类概率矩阵y
full
进行解码,完成从分类概率矩阵到手语序列的映射,得到手语标签g,表达为如下公式(51)所示,
[0137]
g=beam(y
full
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(51)
[0138]
公式(51)中,beam(
·
)表示束搜索解码函数;
[0139]
至此,完成基于多线索相互蒸馏和自蒸馏的连续手语识别。
[0140]
本发明中一共利用三条线索,即全局空间特征、脸部空间特征和手部空间特征。
[0141]
本发明未述及之处适用于现有技术。