[发明专利]基于注意力转移机制的细粒度图像分类方法有效
申请号: | 201910844259.7 | 申请日: | 2019-09-06 |
公开(公告)号: | CN110598029B | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 牛毅;焦阳;李甫;石光明 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F16/55 | 分类号: | G06F16/55;G06K9/62;G06N3/08 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 陈宏社;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 注意力 转移 机制 细粒度 图像 分类 方法 | ||
1.一种基于注意力转移机制的细粒度图像分类方法,其特征在于,包括如下步骤:
(1)获取训练样本集和测试样本集:
(1a)选取包含C类细粒度类别且每个类别的幅数为H的自然图像,并对所有自然图像进行尺寸归一化,归一化后的自然图像的像素大小为h×w,C≥2,H≥20,h≥2,w≥2;
(1b)对随机选取的50%以上的每类归一化后的自然图像进行标记,并将标记过的每类归一化后的自然图像及其标签组成训练样本集,将剩余每类归一化后的自然图像组成测试样本集;
(2)构建全局感知网络GNet模型:
(2a)构建全局感知网络GNet结构:
构建包括M个并行排列的全局特征提取网络GNet1及与M个GNet1相连的全局特征融合网络GNet2的全局感知网络结构,其中:
全局特征提取网络GNet1包括输入层、多个卷积层、多个池化层、多个激活层、多个全连接层、自动编码层和Softmax层,用于生成M个全局预测概率和M个全局特征图其中m为全局特征图标号索引,且m∈[1,M];
全局特征融合网络GNet2包括输入层、多个卷积层、多个池化层、多个激活层、级联层、多个全连接层和一个Softmax层,用于生成全局特征向量fglb和全局融合概率yGNet2;
(2b)定义全局感知网络GNet的损失函数:
定义M个全局特征提取网络GNet1中第m个GNet1的损失函数及全局特征融合网络GNet2的损失函数LGNet2:
其中,表示交叉熵损失函数,是经过独热编码后的训练图像真实类别标签,c是图像类别标号索引,是中第c个类别的概率值,是全局预测概率中第c个类别的概率值,且c∈[1,C],α为在中所占的权重;表示分离损失函数,j是全局特征图标号索引,且j∈[1,M],(x,y)是的像素坐标,mrg是阈值,β为在中所占的权重;是距离损失函数,(txm,tym)是中像素最大值的位置坐标,γ为在中所占的权重;是yGNet2中第c个类别的概率值;
(3)构建注意力转移网络ANet模型:
(3a)构建注意力转移网络ANet结构:
构建包括N个并行排列的注意力提取网络ANet1及与N个ANet1相连的注意力解码网络ANet2的注意力转移网络结构,其中:
注意力提取网络ANet1包括输入层、多个卷积层、多个池化层、多个激活层、自动编码层和循环神经网络、多个全连接层和一个Softmax层,用于生成N个注意力特征图和注意力预测概率其中n为注意力特征图标号索引,且n∈[1,N];
注意力解码网络ANet2包括输入层、多个卷积层、多个池化层、多个激活层、循环神经网络、全连接层和Softmax层,用于生成注意力解码概率yANet2;
(3b)定义注意力转移网络ANet的损失函数:
定义N个注意力提取网络ANet1中第n个ANet1的损失函数及注意力解码网络ANet2的损失函数LANet2:
其中是yANet2中第c个类别的概率值;
(4)对全局感知网络GNet模型进行训练:
(4a)初始化M个全局特征提取网络GNet1的参数及与M个GNet1相连的全局特征融合网络GNet2的参数,并设置训练最大迭代次数TG,当前迭代次数tG=1;
(4b)从训练样本集中随机选取BS幅自然图像IG分别作为每个GNnet1的输入,BS≥8,并进行前向传播,得到M个全局特征图和全局预测概率并通过和计算GNet1的损失函数
(4c)判断tG≥TG/2是否成立,若是,则得到训练好的GNet1,并执行步骤(4d);否则,利用反向传播方法并根据计算每个GNet1的网络参数梯度,并利用网络参数梯度对GNet1的网络参数进行更新后,令tG=tG+1,执行步骤(4b);
(4d)计算每个全局特征图对应的全局判别区域并将M个作为全局特征融合网络GNet2的输入,进行前向传播,得到全局特征向量fglb和全局融合概率yGNet2,并根据yGNet2计算损失函数LGNet2;
(4e)判断tG≥TG是否成立,若是,得到训练好的GNet2;否则,采用反向传播方法并通过LGNet2计算GNet2的网络参数梯度,再利用该网络参数梯度对GNet2的网络参数进行更新后,令tG=tG+1,执行步骤(4b);
(5)对注意力转移网络ANet进行训练:
(5a)初始化N个注意力提取网络ANet1的参数及与N个ANet1相连的注意力解码网络ANet2的参数,并设置训练最大迭代次数TA,当前迭代次数tA=1;
(5b)从训练样本集中随机选取BS幅自然图像IA作为每个ANnet1的输入,并进行前向传播,得到N个注意力特征图和注意力预测概率并通过和计算ANet1的损失函数
(5c)判断tA≥TA/2是否成立,若是,则得到训练好的ANet1,并执行步骤(5d);否则,利用反向传播方法并根据计算N个ANet1的网络参数梯度,并利用网络参数梯度对ANet1网络参数进行更新后,令tA=tA+1,执行步骤(5b);
(5d)计算每个注意力特征图对应的注意力判别区域并将fglb和N个作为注意力解码网络ANet2的输入,进行前向传播,得到注意力解码概率yANet2,并根据yANet2计算损失函数LANet2;
(5e)判断tA≥TA是否成立,若是,得到训练好的ANet2;否则,采用反向传播方法并通过LANet2计算ANet2的网络参数梯度,再利用该网络参数梯度ANet2的网络参数进行更新后,令tA=tA+1,执行步骤(5b);
(6)获取图像分类结果:
(6a)将测试样本集分别作为每个训练好的全局特征提取网络GNet1和每个训练好的注意力提取网络ANet1的输入,进行前向传播,分别得到M个全局特征图和N个注意力特征图并计算每个对应的全局判别区域及每个对应的注意力判别区域
(6b)将M个作为训练好的全局融合网络GNet2的输入,进行前向传播,得到全局特征fglb和全局融合概率yGNet2;
(6c)通过迭代贝叶斯路径,将fglb和N个作为训练好的注意力解码网络ANet2的输入,进行前向传播,得到注意力解码概率yANet2;
(6d)采用最大化投票方法对yGNet2和yANet2进行决策级融合,得到最终预测概率p:
p=max(yGNet2,yANet2);
(6i)计算概率p中最大值对应的下标索引idx,并通过查找索引表,得到idx对应的细粒度图像分类类别。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910844259.7/1.html,转载请声明来源钻瓜专利网。