论文标题: Foodnet: multi-scale and label dependency learning-based multi-task network for food and ingredient recognition
翻译:Foodnet:基于多尺度和标签依赖学习的食品和成分识别多任务网络
代码:https://github.com/visipaper/FoodNet
摘要
基于图像的食物模式分类面临着空间分布不固定和食材遮挡等挑战,这对主流的计算机视觉算法提出了困难。然而,目前大多数方法直接通过卷积神经网络(CNN)提取整个图像的抽象特征来分类食物和食材,而忽视了食物与食材之间的关系以及食材遮挡问题。为了解决上述问题,我们提出了一种名为FoodNet的模型,用于同时进行食物和食材识别,其采用了多任务结构和多尺度关系学习模块(MSRL)以及标签依赖学习模块(LDL)。由于食材通常在图像中共同出现,我们设计了LDL以利用食材之间的依赖关系来缓解食材遮挡问题。MSRL聚合了食物和食材的多尺度信息,然后通过两个关系矩阵建模食物与食材的匹配关系,以获得更丰富的特征表示。
贡献
- 我们提出了基于图卷积网络(GCN)的标签依赖学习模块(LDL),显式探索和利用食材依赖关系以提升食材识别性能。为了实现这一思想,我们构建了一个描述食材-食材依赖关系的图,并利用一种二值化-重新加权的策略有效地过滤掉弱依赖信息,防止其误导网络。
- 我们提出了多尺度关系学习模块(MSRL),整合食物和食材的互补多尺度特征,并通过关系矩阵建模食物与食材匹配关系,以有效提升识别性能。
- 我们提出了一种基于多尺度和标签依赖学习的多任务结构,用于食物和食材识别,命名为FoodNet。FoodNet在食材识别方面取得了现状最优的识别性能。
方法
多任务学习
该多任务结构不仅允许同时训练食品和配料识别任务,而且共享两个任务的关联信息。多任务结构主要分为硬参数共享和软参数共享。硬参数共享和软参数共享分别适用于强相关和弱相关的任务。食物和食材之间的相关性很强,所以我们的多任务结构采用了硬参数共享结构。如图3所示,我们的多任务结构由一个共享层和两个子网络组成,其中食物子网络和配料子网络的结构相同。共享层用于共享两个任务之间的关联信息,子网用于学习不同任务的特殊性。多任务结构具有很大的灵活性。对于所提出的框架,任何合适的骨干网都可以被设计为用于多任务结构的子网。这里,以ResNet为例,“layer 1 - 3”可以是共享层,layer 4可以是子网。由于FoodNet使用多任务结构,我们使用LFR、LIR和LMT来表示食品识别、成分识别和FoodNet的损失函数。LFR可表示为:
标签依赖学习模块
LDL聚集图的节点信息。以获得依赖性嵌入Zgcn,并将Zgcn和Psem合并以获得Psdl。在细节部分,我们将从三个方面介绍低密度脂蛋白:图构建,去除误导信息,和特征聚合。
图构建
如下图所示,GCN图由节点嵌入Zlar和邻接矩阵D组成。节点嵌入Zlar通过对全局图像成分表示MI进行分解,将其分解为一组标签特征。具体而言,如图3所示,MI重复CI次,然后与全连接层参数θfc(属于空间RCI×N)相乘,得到Zlar(属于RCI×N)。每个θfc(属于RN)提取与CI相关的信息,并预测图像中成分的出现。然后通过以下公式得到分解后的标签相关特征:
邻接矩阵D描述了节点之间的依赖关系,d_{i,j} ∈ D通过条件概率P(i, j | j)计算,表示标签i和标签j之间的依赖关系。P(i, j | j)由以下公式计算:
其中N(j)表示训练集中第j个标签的总数。N(i,j)表示在训练集中同时出现的第i个和第j个标签的数量。根据等式(6),我们计算所有成分标签的依赖性以获得邻接矩阵D,如下所示:
消除误导性信息
当前的邻接矩阵D仍然存在大量的弱依赖信息,这可能会误导网络。因此,我们使用阈值γ来过滤掉弱依赖信息,防止网络被标签依赖信息误导。该运算可以表示为:
根据等式8,D的元素只有0或1。这种描述方法所表达的信息是有限的,所以我们提出了一种重新加权的方案,以更精确地描述依赖关系。重新加权的方案可以表示为:
其中d^ ij是重新加权的元素。通过上述方法,我们可以选择一个合适的ε来解决过平滑问题。
特征聚合
在完成节点信息Zlar和邻接矩阵D的获取之后,我们使用3层GCN来提取标签依赖映射Zgcn。LDL可以描述为:
其中,D是重新加权的邻接矩阵,l是GCN的第l层,Wl是GCN的第l层的权重,LeakyReLU是LeakyReLU激活函数。根据等式10,可以获得Z4_lar,其由Zgcn表示。最后,我们融合成分语义特征Psem和Zgcn以获得如(11)中所示计算的Pldl。
目前,有各种各样的方法进行特征融合,如元素相加和连接操作。
多尺度关系学习模块
食物和成分之间有固定的匹配关系和互补的多尺度关系。识别食物类别后,可以利用食物-成分的关系来推断可能的成分并排除不可能的。食物-成分的匹配关系是一种语义匹配关系。浅层网络学习低层特征,如颜色、几何形状等,深层网络学习高层特征,如概念和语义。基于此,他们选择了psem 和qldl 来建模食物-成分关系。psem 和qldl分别表示图像在食物类别和成分类别上的语义信息。MSRL的概述如图3所示。为了更好地利用食物信息和成分信息的互补性,他们进行了多尺度融合,得到Fcat,结合了食物和成分的语义信息,并通过元素-wise相加或拼接进行融合。由于元素-wise相加要求特征大小一致,他们选择了拼接的方法。然后,他们引入了两个可学习的矩阵WF 和WI ,来建模食物和成分之间的匹配关系。如图5所示,wij F 是可学习的参数,用于建模Fcat(包括所有成分和食物的语义信息)与食物q i 之间的匹配关系。输出的食物预测结果q^包含了食物和成分之间的匹配关系。计算过程: