



[摘要] 目的 為精準、有效、直觀地為不同人群提供營養和飲食建議,構建包含食物、營養、人群、疾病等實體的多模態營養知識圖譜。方法 利用爬蟲等技術手段獲取營養領域數據集,借鑒OneRel模型完成中文實體關系聯合抽取,構建文本庫。使用RoBERTa和ResNet模型分別學習文本和圖像數據特征,實現圖像與文本的鏈接,構建多模態知識圖譜。結果 實體關系聯合抽取模型的F1值為0.703,構建的多模態知識圖譜中包含3312個文本實體、11 259條關系、1000張圖像實體。結論 本研究構建的多模態營養知識圖譜可達到較好的效果,該圖譜不僅能系統整合營養領域多模態知識,實現良好可視化查詢,也能完成智能問答、營養推薦系統等下游任務的底層支撐。
[關鍵詞] 多模態知識圖譜;知識表達;健康飲食
[中圖分類號] R151;TP391.1" """"[文獻標識碼] A""" [DOI] 10.3969/j.issn.1673-9701.2025.17.004
Construction of multi-modal nutritional knowledge graph
CHE Meiling, NAN Jiale, LIN Jianhai, GAO Dongping
Institute of Medical Information, Chinese Academy of Medical Sciences, Peking Union Medical College, Beijing 100020, China
[Abstract] Objective To provide precise, effective, and intuitive nutritional and dietary recommendations for different population groups, a multi-modal nutritional knowledge graph was constructed, which includes entities such as food, nutrition, population, and diseases. Methods Data sets in the field of nutrition were obtained using web crawling and other technical means. The OneRel model was referenced to complete the joint extraction of Chinese entity relationships and construct a text library. The RoBERTa-ResNet model were used to learn the features of text and image data separately, to align images with text, and to construct a multi-modal knowledge graph. Results The F1 value of the joint entity relationship extraction model was 0.703. The constructed multi-modal knowledge graph contains 3312 textual entities, 11 259 relationships, and 1000 image entities. Conclusion The algorithms used in this study to construct the multi-modal nutritional knowledge graph achieve good results. This knowledge graph not only systematically integrates multi-modal knowledge in the field of nutrition and enables good visual query capabilities, but also serves as the underlying support for downstream tasks such as intelligent question answering and nutritional recommendation systems.
[Key words] Multi-modal knowledge graph; Knowledge representation; Healthy diet
飲食是人們生活中的關鍵一環,與人體的健康狀況息息相關。《中國國民營養與慢性病狀況報告(2020年)》[1]指出中國營養改善和慢性病防控工作雖已取得積極進展和明顯成效,但膳食不合理問題仍十分突出,營養不足、營養過剩等問題仍需引起關注。健康飲食已成為廣大民眾追求的目標,但中國注冊營養師的數量仍不容樂觀,網絡中的營養學知識通常是海量且分散的,高質量的營養學知識較難獲取,而構建營養領域知識圖譜是解決這一問題的有效途徑。
知識圖譜使用基于圖的數據模型,從多元、多結構、多模態的數據中獲取并表達知識,可用于知識解釋、判斷和推理[2-3];目前已成功應用于智能搜索、智能問答、推薦系統和預測等領域[4-8]。
傳統知識圖譜大多僅包含文本信息,這種單一模態極大限制機器理解、解釋和展示現實世界的能力。事實上,圖片、視頻、音頻等數據也可納入知識圖譜。多模態知識圖譜構建方法主要有兩種:基于特征的方法和基于實體的方法[9]。前者將模態信息作為實體的輔助特征或屬性,要求圖譜中每個實體都具備多模態信息;后者則將不同模態信息視為關系三元組,而非輔助特征。目前,基于實體的方法已成為主流構建方法。
1 "資料與方法
1.1" 數據獲取與預處理
本研究的營養領域文本數據獲取主要來自《中國食物成分表》《營養與食品衛生》和百度百科網站,圖像數據利用食物實體在搜索引擎中進行爬取。
文本數據的預處理包括語料清洗、中文分詞、詞性標注等步驟。對從百度百科網站獲取的網絡信息則需特別注意驗證信息的準確性和權威性,避免引入不準確或誤導性的知識,污染知識圖譜。圖像數據的預處理主要是圖像篩選和屬性標注。由于下載的圖像數據中可能包含大量重復或相似度過高的圖像,這些圖像對后續的圖譜構建無益且會對計算造成負擔,因此應進行過濾。本文利用感知哈希算法[10]對圖像進行過濾。
1.2" 實體關系聯合抽取
本研究借鑒OneRel模型,將其應用到中文實體關系聯合抽取任務中。對于文本標記,使用“BIE”策略指示token在實體中的位置信息,如在“充足的蛋白質供應對胃癌患者十分重要”句子中,通過運用BIE標記策略產生4種類型的標記,分別是""" ①HB-TB:表示頭實體開頭和尾實體開頭。“蛋白質”和“胃癌”這兩個實體之間存在“宜用”的關系,因此(“胃”“宜用”“蛋”)的分類標簽即為“HB-TB”;②HB-TE表示頭實體開頭和尾實體結尾。(“胃”“宜用”“質”)的分類標簽即為“HB-TE”;③HE-TE表示頭實體結尾和尾實體結尾。(“癌”“宜用”“質”)的分類標簽即為“HE-TE”;④上述3種情況之外的所有情況被標記為“–”。中文數據集中,DUIE 1.0[11]是一個較為常用的訓練實體–關系聯合抽取模型使用的數據集。在此基礎上,本文針對性地加入本領域標注的7種關系屬性和7種關系類型近千條標注數據,與DUIE 1.0數據集一起轉置成模型訓練所需的數據格式,使得訓練的模型即擁有如預訓練模型一樣的通用實體–關系聯合抽取能力,又能提升模型在營養知識領域的表現,見表1。采用Python 3.6和PyCharm 2022。在實體關系抽取任務中,常用精確度、召回率和F1值進行評價。
1.3" 文本圖像實體鏈接
本研究采用雙流模型的思想,使用圖像編碼器殘差神經網絡(residual neural network,ResNet)[12]處理圖像數據,使用文本編碼器RoBERTa(robustly optimized BERT pretraining approach,RoBERTa)[13]處理文本數據,然后將兩個輸出映射到一個公共空間中,計算它們間的相似度得分,獲得最終的分類或預測結果。利用ResNet50和RoBERTa獲得圖像嵌入和文本嵌入后,采用對比學習的思想采用交叉熵損失進行訓練。本研究采用網絡下載的食物實體圖像進行標簽標注和圖像篩選過濾,形成擁有1000張不重復的圖像描述數據集。本研究使用K召回率(recall at K,Recall@K)作為評估指標,表示在最接近查詢的K個結果中,正確項目被檢索到的比例。
2" 結果
2.1" 營養知識圖譜模式層構建
參考相關研究,并圍繞營養領域推薦的概念,為營養知識圖譜定義食物種類、食物、食物圖像、營養素、人群、疾病、癥狀7個實體,見表2。“實體–屬性–屬性值”三元組是知識圖譜中的重要組成部分,本研究對實體的屬性特征進行具體的刻畫和描述,對后續推薦系統的實現提供重要支撐,見表3。知識圖譜的實體之間通過關系連接成網狀結構,從而實現知識推理。圍繞知識圖譜面向的任務,為實體之間定義7種關系:“分類”“富含”“宜搭配”“有圖像”“忌用”“宜用”“限制”。實體間的具體關系見圖1。
2.2" 實體關系聯合抽取
本研究F1值為0.706,表明該模型有良好的可用性,可在營養領域的實體關系抽取場景使用。完成實體關系抽取后,最終獲得文本實體3312條,關系11 259條。
2.3" 文本圖像實體鏈接
本研究從圖像查詢文本的Recall@1、Recall@5、Recall@10分別為0.657、0.822、0.951,從文本查詢圖像的Recall@1、Recall@5、Recall@10分別為0.630、0.792、0.859,表明該模型對食物圖像和營養相關文本的特征提取效果較好,模型經訓練后可獲得良好的實體鏈接效果,本研究圖譜中包含3312個文本實體、11 259條關系、1000張圖像實體。
3" 討論
對實體關系聯合抽取實驗結果進行觀察,發現抽取的實體類型的多樣性,驗證所用算法可全面覆蓋營養領域所需的關鍵實體,確保抽取數據的豐富性。同時豐富的關系也揭示實體間存在復雜的相互作用。這些關系不僅包括食物與營養素間的關系,還涵蓋食物、營養素與疾病、人群間的關聯,證明實驗方法可深入挖掘和理解實體間的廣泛聯系。
從文本數據中抽取的實體關系三元組是構建知識圖譜的基礎。傳統的流水線方法將該任務分為命名實體識別和關系抽取兩個子任務,這種方法簡單但易導致錯誤累積,且缺少子任務間的信息交互[14];面對多元重疊關系問題存在局限性。為增強子任務間的交互性,實體關系的聯合抽取方法應運而生,其中,基于深度學習的端到端模型在該領域表現出極大優勢[15]。基于深度學習的實體關系聯合抽取方法可分為多模塊–多步驟方法、多模塊–單步驟方法和單模塊–單步驟方法[16]。OneRel模型是一種基于細粒度的三重分類模型,有效緩解錯誤累積和實體冗余等問題,在公開數據集上取得超越前人的性能[17]。文本與圖像的實體鏈接通過學習文本及對應圖像特征的關系,推斷它們間的對齊關系,從而實現圖文匹配。根據使用Transformer模型的模式不同,可將多模態預訓練模型分為單流模型和雙流模型[18]。本文借鑒OneRel模型,將其應用到中文實體關系聯合抽取任務中。本研究采用雙流模型思想,使用圖像編碼器ResNet[19]處理圖像數據,使用文本編碼器RoBERTa[13]處理文本數據,然后將兩個輸出映射到一個公共空間中,計算它們間的相似度得分,獲得最終的分類或預測結果。
本研究文本圖像實體鏈接的實驗結果表明該模型對食物圖像和營養相關文本的特征提取效果較好,模型經訓練后可獲得良好的實體鏈接效果。知識圖譜的存儲方式主要有RDF格式存儲和圖數據庫[20]兩種。RDF格式存儲通過三元組的形式存儲數據,如Freebase知識圖譜。圖數據庫的方法比RDF數據庫更加通用。目前典型的開源圖數據庫是Neo4j,本文采用該圖數據庫存儲多模態數據。
本研究存在一定不足:①本文研究依賴單一數據集,存在在研究中引入偏見的可能性,限制結果的普遍性。②本研究對食物屬性的表達范圍有限,可能導致某些建議出現偏差;③知識圖譜目前尚未考慮用戶的特殊情況(體質量管理目標、食物耐受等),納入這些因素有助于提供更定制化和個性化的建議,進而提高用戶滿意度和參與度。綜上,本研究提出一套構建多模態營養知識圖譜的方案。本研究結合營養學書籍、百度百科等相關網站獲取營養領域的文本及圖像數據,借鑒OneRel模型實現中文實體和關系聯合抽取,并構建基于ResNet模型和RoBERTa模型的圖像文本實體鏈接模型,將圖像數據加入到文本知識子圖,最終實現構建多模態營養知識圖譜的任務。在后續工作中,將考慮納入更多實體類型,進一步細化實體間的關系類型,豐富知識圖譜內容,增強圖譜的推理能力。
利益沖突:所有作者均聲明不存在利益沖突。
[參考文獻]
(收稿日期:2025–05–23)
(修回日期:2025–05–29)
基金項目:科技創新2030“新一代人工智能”重大專項(2020AAA0104905)
通信作者:高東平,電子信箱:gaodp_gaodp@126.com