蔣國芝,左劼,孫頻捷
(1.四川大學計算機學院,成都610065;2.上海政法學院,上海200000)
隨著人們生活水平的不斷提高,人們對健康以及飲食的關注度也日益增長。由于美食網站的涌現,如下廚房,美食杰等,食物相關的研究也受到了越來越多人的重視。由于這類美食網站是對任何注冊用戶開放的,對于食譜描述以及食物圖像都沒有要求與限制,所以這類網站的食譜描述不一定準確詳盡,食物圖像也不一定和食譜描述最后生成的一致。因此食物計算(Food Computing)[1]中的一個重要子領域就是跨模態檢索(Cross-Modal retrieval)。跨模態檢索是以一種模態的數據檢索得到另外一種模態的數據,這兩種模態的數據是異質,在跨模態檢索在食物計算里面,是以食物圖像檢索烹飪食譜或者以烹飪食譜檢索食物圖像。
食物計算對生活、日常行為、健康、文化、農業都有深遠影響。食物計算從不同的數據源(如社交網絡、食譜網站、相機等)以不同的方式獲取并分析異質食物數據,以進行食物的感知、識別、檢索、推薦、監控等任務。食物相關的數據類型可以分為美食照片、食譜標題、食物成份、烹飪指示、食物類別、食物風味,食物日志、餐館相關的食物信息等[1]。食物計算的總體框架如圖1 所示。

圖1 食物計算總體框架[1]
隨著多媒體數據的快速增長,食物相關的搜索引擎對于獲得所需的食物信息是必要的。跨模態檢索是食物計算里面的一個重要子領域。該領域任務用到食物數據類型有食物圖像以及食譜(食譜包含了標題、成份、烹飪指示、類別),該任務的目的是用食物圖像檢索得到菜譜信息或者使用菜譜檢索得到食物圖像,目前跨模態菜譜的方法有JE[2]、ACME[3]、DUCP[4]、AdaMine[5]、SAN[6]等。
跨模態檢索問題是以一種類型的數據作為查詢來檢索另一種類型的相關數據,例如使用圖像和視頻之間進行相互檢索,圖像和文字之間進行相互檢索等。跨模態檢索中大多使用成對的數據,跨模態檢索由于檢索的數據是異質,特征難以對齊,因此該領域需要解決數據對齊和相似性度量問題。數據對齊分為全局對齊和局部對齊,全局對齊的典型代表的方法有CCA[7],DCCA[8]、KCCA[9],局部對齊的現有方法有:C2MLR[10]、DFE[11]、HM-LSTM[12],相似性度量是通過學習得到可以使得異質的數據模態分布一致的公共子空間,計算相似性判斷他們之間的距離,最后通過排序得到檢索結果。在度量相似性時,常用的損失函數有排序損失(Ranking Loss)、對比損失(Contrastive Loss)、三元組損失(Triplet Loss)等。

圖2 跨模態檢索通用框架[13]
2014 年Google Mind 在團隊在使用Attention 機制進行圖像分類[14],Attention 機制基于一個假設,人類只關注整個感知空間的特定部分,即觀察一個事物或者圖像的時候,會對不同的區域投入不一樣的關注度。在食物計算領域使用Attention 機制的進行跨模態菜譜檢索的方法有DUCP[4]、SCAN[6]、MCEN[15]、PROTEIN[16]、SAM[17]等。DUCP 認為食品準備過程涉及到原料成份、器皿、切割和烹飪操作,烹飪過程的描述是隱式的,因此提出使用層次化的注意力機制對食譜中的標題、成份以及烹飪指示進行建模。SCAN 和SAM 均使用自注意力機制對菜譜文本部分進行建模。不同的是SCAN使用LSTM 對菜譜文本進行特征提取,在特征提取之后使用自注意力機制學習文本中的顯著特征,并且用KL 損失函數改善圖像食譜的匹配度并使不同分類器預測的概率保持一致;SAM 使用基于Transformer 網絡的食譜文本編碼器,改進了傳統方法注意力機制的環境向量選取方式。MCEN 結合隨機潛在變量顯式地捕獲文本和視覺特征之間的相關性來得到模態一致性的embedding,使用層次化的注意力機制對食譜進行特征提取,利用潛在變量在訓練過程中將跨模式注意機制納入檢索任務。PROTEIN 中首先利用并行注意力網絡來獨立學習圖像和食譜中的注意力權重,再使用跨注意力網絡學習圖像和食譜之間的相互作用。
PROTEIN 是基于parallel-and cross-attention 的一種方法,該方法認為食物成份對跨模態食譜檢索任務的貢獻均不相同,且圖像和文本是作為獨立通道em?bedding 到公共子空間的,不足以捕獲圖像圖像和食譜之間細微的相互作響,圖像和食譜的embedding 由于獨立的建模在,因此如何有效地發現不同embdding 的重要性成為了要解決的問題。為了解決以上問題,使用parallel-attention 網絡分別調整圖像和食譜中各組分的注意權重。使用cross-attention 網絡發現圖像區域和單詞之間的對齊方式,并進一步推斷圖像和食譜之間的相互作用。使用pair-ranking loss 連接并優化來自parallel-attention 和cross-attention 網絡的圖像和食譜的embdding。
(1)Parallel-attention 網絡
圖像區域隱藏狀態和背景信息作為輸入數據計算image-channel 的注意力權重αj,n為:

食物圖像的表示由圖像區域所有已轉換為隱藏狀態的加權總和來構造:

Recipe-channel 的注意力和image-channel 相似,表示為:

Recipe 的特征表示由所有轉換后的單詞隱藏狀態的加權總和來構造:

(2)cross-attention 網絡
cross-attention 網絡能夠對圖像區域和單詞之間的相互作用進行建模。
①單詞指導圖像
第i 個食譜說明的第m 個單詞的第j 個圖像的第n 個圖像區域的相似度表示為:

關于第i 個食譜說明的第m 個單詞的第j 個圖像的第n 個圖像區域的注意力分數表示為:

第i 個食譜說明中第m 個單詞的第j 個圖像表示形式是圖像區域所有已轉換隱藏狀態的基于注意的組合表示為:

整個圖像的矢量表示:

②圖像指導單詞
第i 個食譜說明中第m 個單詞相對于第j 個圖像的第n 個圖像區域的注意力分數表示為:

關于第j 個圖像的第n 個圖像區域的第i 個食譜描述的表示形式是單詞的所有已轉換隱藏狀態的基于注意的聚合,表示為:

多模式融合模塊首先用超參數λ平衡兩個注意力網絡的重要性,輸入是來自并行注意網絡(即和)和交叉注意網絡(即和)的學習結果的嵌入。融合策略表示為:

其中xi表示食譜,yj表示圖像,cos(? ,?)表示余弦相似度。
Ian J.Goodfellow 等人于2014 年10 月提出了一個通過對抗過程估計生成模型的新框架[18]。GAN(Gener?ative Adversarial Networks)由生成器G 和判別器D 組成,訓練生成器G 捕獲真實數據分布pdata并生成偽造的圖像,以欺騙識別器D。另一方面,識別器D 被訓練以區分真實和偽造圖像。G 和D 玩一個minmax 游戲來優化以下目標函數:

其中x為pdata數據分布的真實圖像,Z 是具有先驗分布pz的噪聲。在食物計算領域的跨模態檢索任務中,使用對抗網絡的有ACME[3]以及R2GAN[19]。在AC?ME 中使用hard-example mining 采樣策略,來決解trip?let loss 難以迅速收斂的問題,使用GAN 網絡來對齊不同模態的特征,使以使烹飪食譜和食物圖像的特征分布無法區分。在R2GAN 中,認為烹飪指示暗示著某種烹飪的因果關系并且跨模態檢索本質是無法解釋的,該文章使用GAN 網絡實現了從文本生成圖像證明了包含某種因果關系并也使食譜生成的圖像來解釋搜索結果。
在R2GAN 中,使用一個生成器,和兩個判別器來學習兼容的跨模態特征,并且可以顯示的從食譜生成圖像來解釋搜索結果。總的損失函數表示為:

其中γ和λ為權衡的超參數,Lrank兩級的triplet loss,函數表示為:

其中d(.,.) 表示測量給定查詢與候選對象相似度的距離函數,其中(Eq,Ep)表示正的embedding 對,(vq,vp)表示相應的圖像對,一對數據分別屬于不同的模態,α1和α2表示正負樣本之間的邊界,μ表示權衡的超參數。
Lrecon是考慮了特征和圖像級別的兩級損失,可以使重構圖像保留盡可能多的原始圖像信息。該函數表示為:

Φ(.) 表示輸入圖像的特征提取器,vreal表示真實的食物圖像表示從圖像和菜譜embedding 重建的圖像,Φ(v1)-Φ(v2)表示特征級別的損失,v1-v2圖像級別的損失。
Lsem表示語義損失,表示為:

Ec表示圖像或者食譜的embbding 種類。
生成器的參數是由對抗損失和重建損失來進行更新,損失函數表示為:

其中Lrecon同上面公式一樣,其中LG的公式計算如下:

其中LD1和LD2分別表示辨別器1 和辨別器2 的損失函數,EV和ER分別表示圖像和食譜的embedding特征。
本文介紹了在食物計算領域,基于Attention 機制的跨模態檢索和基于GAN 的跨模態檢索,這兩種的方法的相同點在于:他們都是實值特征學習方法,關注的點都在于提高模型的準確度。在提取圖像和食譜特征時,都使用不用的網絡分別對圖像和食譜進行特征抽取。使用Attention 機制和GAN 都是為了使特征更好的對齊。不同的點在于:基于Attention 機制的跨模態檢索使用了更細膩度的監督信息來使圖像和食譜的特征得到對齊,損失函數僅使用Pairwise ranking,而基于GAN 的跨模態檢索使用GAN 網絡,利用文本的特征來生成食物圖像,來證實了食譜包含因果關系,能夠使圖像和文本的特征更好得到對齊,也增加了網絡的可解釋性,也使用了多種損失函數來進行學習。從以上內容可以看出,跨模態檢索在食物計算領域受到了廣泛的關注,且在已發表的文獻中呈現的實驗效果也充分證明了跨模態檢索在食物計算領域的有效性和進一步的研究價值。