[发明专利]一种基于转换模块的行为识别方法有效
申请号: | 202011383635.6 | 申请日: | 2020-12-01 |
公开(公告)号: | CN113033276B | 公开(公告)日: | 2022-05-17 |
发明(设计)人: | 高朋;刘辰飞;陈英鹏;于鹏 | 申请(专利权)人: | 神思电子技术股份有限公司 |
主分类号: | G06V40/20 | 分类号: | G06V40/20;G06V10/32;G06V10/40;G06V10/774;G06V10/82;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 济南智本知识产权代理事务所(普通合伙) 37301 | 代理人: | 张平平 |
地址: | 250101 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 转换 模块 行为 识别 方法 | ||
1.一种基于转换模块的行为识别方法,其特征在于,包括以下步骤:
步骤一,读取连续帧图像及构建掩码;
步骤二,构建转换模块输入数据,包括获取转换模块输入数据和位置掩码矩阵mask操作;
步骤三,转换模块动作识别,包括数据预处理操作,经过连续编码模块后的数据处理,获得动作检测结果,数据预处理操作包括以下过程:
构建随机可训练参数矩阵,pos_embedding,维度为pos_embedding∈R17×1024,与输入数据in_data相加,并进行神经元激活层操作,输出结果x表示为式(9):
x=Dropout(pos_embedding+in_data,dropout=0.1),x∈R17×1024 (9)
其中,Dropout(·)表示激活层操作,激活层因子dropout=0.1;
连续编码模块有depth=6个结构相同的基础编码模块串联组成,基础编码模块的计算过程为:
基础编码模块的基本设计参数为,输入数据通道数dim=1024,中间层数据通道数mlp_dim=2048,并行深度heads=8,激活层系数prodout=0.1;
1)数据归一化处理
对输入数据x进行归一化处理,获取的新数据表示为式(10):
x_out=Norml(x_in),x_out∈R17×1024 (10)
其中,Norml(·)表示归一化处理;为方便符号标记,用x_in,x_out代表处理前后的输入、输出数据;
2)并行关注操作
a.线性链接层数据通道扩充:
输入数据通道dim=1024,扩充后数据通道out_dim=dim×3=3072,其变换过程表示为式(11):
x_out1=Linear(x_in,dim=1024,out_dim=3072) (11)
其中,Linear(·)为线性链接操作,x_in,x_out1代表处理前后的输入、输出数据,数据维度变化表示为式(12):
b.构建q,k,v数据:
矩阵变形则为式(13):
矩阵q,k相乘得到式(14):
其中,T表示矩阵转至操作;
掩码替换操作:
根据输入掩码矩阵in_mask∈R17×17,矩阵q,k相乘后结果x_out∈R8×17×17中,掩码结果为0的位置用value=1e-9进行替换,计算过程表示为式(15):
x_out5=softmax(Mask(x_out4,value=1e-9)),x_out5∈R8×17×17 (15)
其中,Mask(·)表示掩码操作,softmax(·)为神经网络中softmax激活层;
将输出结果x_out5与数据v相乘,并进数据变形后获取输出,为式(16)所示:
x_out6=Tranf(x_out5·v),x_out5∈R8×17×17,v∈R8×17×128,x_out6∈R17×1024 (16)
其中,Tranf(·)表示矩阵维度变换;
c.数据线性变换及激活处理:
x_out7=Dropout(Linear(x_out6,dim=1024,dim=1024),dropout=0.1),x_out7∈R17×1024
其中Linear(·)表示线性变换,输入通道dim=1024,输出通道dim=1024;Droput(·)表示神经元激活层处理,激活因子dropout=0.1;
经过并行关注操作后,经过残差操作,获取的模块输出为式(17):
x_out=x_in+x_out7,x_in∈R17×1024,x_out7∈R17×1024,x_out∈R17×1024 (17);
3)前馈网络数据处理
前馈网络数据处理,针对并行关注操作后获得的数据进行相关操作,该部分输入数据为x_in∈R17×1024,经过下列数序处理过程:
线性处理成式(18):
x_out1=Linear(x_in,dim=1024,mlp_dim=2048),x_out1∈R17×1024 (18)
其中,Linear(·)表示线性变换,输入通道dim=1024,输出通道mlp_dim=2048;
激活函数层为式(19)所示:
x_out2=GELU(x_out1),x_out2∈R17×1024 (19)
其中,GELU(·)表示GELU激活函数;
神经元激活层操作为式(20)所示:
x_out3=Dropout(x_out2,dropout=0.1),x_out3∈R17×1024 (20)
其中,Droput(·)表示激活层处理,激活因子dropout=0.1;
线性处理成式(21)所示:
x_out4=Linear(x_out3,mlp_dim=2048,dim=1024),x_out4∈R17×1024 (21)
其中,Linear(·)表示线性变换,输入通道mlp_dim=2048,输出通道dim=1024;
神经元激活层操作为式(22)所示:
x_out5=Dropout(x_out4,dropout=0.1),x_out5∈R17×1024 (22)
其中,Droput(·)表示激活层处理,激活因子dropout=0.1;
经过前馈网络数据处理后,采用残差操作,获得的最终输出数据为式(23)所示:
x_out=x_in+x_out5,x_in∈R17×1024,x_out7∈R17×1024,x_out∈R17×1024 (23);
经过连续编码模块后的数据,进行数据处理,获得动作检测结果,该过程表示为式(24):
x_out=x_in[0],x_in∈R17×1024,x_out∈R1×1024 (24)
对上述输出数据,进行如式(25)顺序操作:
归一化:
x_out1=Norml(x_out),x_out1∈R1×1024 (25)
其中,Norml(·)表示归一化处理;
线性处理成如式(26):
x_out2=Linear(x_out1,dim=1024,mlp_dim=2048,),x_out2∈R17×1024 (26)
其中Linear(·)表示线性变换,输入通道dim=1024,输出通道mlp_dim=2048;
激活函数层为式(27)所示:
x_out3=GELU(x_out2),x_out3∈R1×2048 (27)
其中,GELU(·)表示GELU激活函数;
神经元激活层操作如式(28):
x_out4=Dropout(x_out3,dropout=0.1),x_out4∈R1×2048 (28)
其中,Droput(·)表示激活层处理,激活因子dropout=0.1;
线性处理成式(29):
x_out5=Linear(x_out4,mlp_dim=2048,num_class),x_out5∈R17×num_class (29)
其中,Linear(·)表示线性变换,输入通道mlp_dim=2048,输出通道num_class为类别数;
激活函数层为式(30):
x_out6=softmax(x_out5),x_out6∈R1×num_class (30)
其中,softmax(·)表示softmax激活函数,获取最终的动作识别结果;
步骤四,将动作检测结果,与类别标签target1计算交叉熵损失,优化网络参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于神思电子技术股份有限公司,未经神思电子技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011383635.6/1.html,转载请声明来源钻瓜专利网。