基于食品图像的菜谱检索技术
在CVPR 2021会议上,研究人员提出了一种创新的跨模态图像-菜谱检索方法。该方法通过结合Transformer架构和自监督学习,在标准基准测试中达到了最先进的性能水平。
技术架构
双编码器设计
该方法采用两个独立的编码函数:一个用于处理菜谱文本,另一个用于处理食品图像。文本编码器采用基于Transformer的架构,对多句输入(如配料和制作步骤)使用分层处理,对单句输入(如菜谱标题)使用非分层处理。图像编码器则采用成熟的ResNet和Vision Transformer模型。
损失函数设计
模型训练使用两种损失函数:
- 监督损失函数Lpair:计算菜谱文本和食品图像表征之间的距离,确保匹配的图文对在共享空间中靠近
- 自监督损失函数Lrec:仅在菜谱组件之间计算,使同一菜谱的标题、配料等组件在表征空间中相互靠近
技术创新点
自监督学习优势
自监督损失函数允许模型利用大量无图像标注的菜谱数据进行训练(训练集中66%为纯文本样本)。实验表明,即使仅应用于图文训练对,该损失函数也能显著提升检索性能。
跨模态检索效果
在Recipe1M数据集上的测试显示:
- 图像到菜谱检索的Recall@10达到92.9%
- 能够实现细粒度配料级别的匹配(如准确识别"面包"、“大蒜"等食材)
实际应用
该方法可帮助用户通过拍摄食品照片快速找到对应菜谱,解决了传统基于文本搜索的局限性。相关代码和模型权重已公开提供。