欧美激情综合一区二区三区,青柠影院免费观看电视剧高清8,无码人妻精品一区二区蜜桃老年人,亚洲最大成人网站,亚洲中文字幕无码一区在线

新聞中心

EEPW首頁 > 智能計算 > 設計應用 > 如何建立KG節點間的重要連結

如何建立KG節點間的重要連結

作者:高煥堂 時間:2025-08-20 來源:EEPW

1   前言

在建構KG(知識圖)的初期,通常會先從有關的數據集中,擷取候選實體(Entity),并由LLM 萃取語意關系并建構初步三元組(Triple)圖譜,大幅提升初建KG的在地性與語義密度。然后,進行與有關的專家智慧進行融合,確認核心的節點,以及核心節點之間的重要連結,又稱為:邊(Edge)。例如,在上一期里所提到的基因醫學KG:

1755667178967587.png

圖1

一旦確認核心實體(即節點)了,就需要思考如何建構這些節點之間的重要連結(即邊)。一般而言,其中的可能連結是很多樣化的,所以常常需要依據應用情境和目標來挑選,并建立于KG里,成為KG的重要邊(Edge)。

本文就已大家比較熟悉的餐酒搭配(food-wine pairing)為例,其典型的KG 架構如下:

1755667234486940.png

圖2

茲以葡萄酒為例,葡萄酒與食物(餐)的搭配方法是很多樣化的,其中最典型的是:協調搭配(Congruent pairing)。在協調搭配中,所選食物和葡萄酒會有多種相同的化合物或風味。例如,甜酒搭配甜食,帶有黃油余味的紅葡萄酒搭配黃油意面。在打造協調搭配時,重要的一點是確保葡萄酒的風味不會被食物的風味所掩蓋。

協調搭配的好處在于,葡萄酒和食物能夠相互增強,并互相補充。想要打造協調搭配,紅酒是理想之選。紅酒的香氣和風味從櫻桃味到煙熏味,種類繁多,易于與類似的食物搭配。喝一杯酒體飽滿的西拉葡萄酒,它會具有與您最喜歡的一些烤肉相似的風味,使其成為絕佳的搭配。

于是,就來說明如何把這種協調搭配關聯,納入KG里,建構成為KG的核心邊。

2   以餐酒搭配(food-wine pairing)為例

一般而言,濃郁的食物搭配濃郁的酒,清淡的食物搭配清淡的酒。高酸度的食物搭配高酸度的酒,例如搭配色拉、醋漬料理等。甜味食物搭配甜度至少和其相同的酒,例如搭配甜點或甜酒。避免單寧較重的紅酒搭配油脂較多的魚類,可以選擇白酒或氣泡酒。適量鹽分有助于軟化紅酒的單寧,使口感更佳。高酸度的白酒可以搭配油炸食物或咸味料理。如下列的基本原則:

●   葡萄酒的酸度(Acidity)與油膩和甜食完美搭配。

●   苦味(Bitter)葡萄酒可以與甜食平衡。

●   甜味(Sweet)葡萄酒或食物需要少量酸度。

●   酒精可以用來中和油膩食物或平衡甜食。

收集數據

于是,就從//github.com/Rashik333網頁下載兩個CSV數據檔案:food_data.csv和wine_data.csv。其中,food_data.csv 的內涵是5 種食物的風味特征。如下:

1755667397260144.png

而wine_data.csv的內容則是19種酒品的風味特征:

1755667429880686.png

有了這兩個數據表格,就能找出食物與酒之關聯,來建立KG(圖2)的節點重要邊了。

計算相似度:建立food-wine 節點間的邊由于協調搭配(Congruent pairing)是指所選食物和葡萄酒會有多種相同的化合物或風味。亦即,食物和葡萄酒在某些關鍵風味特性(如甜、酸、咸、油脂、苦味等)上有明顯的相似性。于是,就使用Python 撰寫簡單的程序,來計算出食物與酒之間的余旋相似度(Cosine Similarity)矩陣。余弦相似度是基于兩個向量的夾角來度量的。其計算兩個向量之間夾角的余弦值,來衡量它們之間的相似度。然后,從這個相似度矩陣,Python 程序就能找出食物與酒之間的最相似的配對,并輸出如下:

1755667497614489.png

這是從food和wine的風味(酸、甜、苦、咸)來找出相似性最高的配對。例如,第2 和第3 項食物的風味都與第0項酒品的風味是很相近(似)的。基于這樣的配對關系(關聯),就能建立KG里的食物(food)與酒(wine)節點間的連接邊了。

納入客人口味偏好:建立user-wine節點間的邊

接著,就來把人的食物氣味偏好納入KG 里。例如,有一位客人,名叫:”Mike”。在這5 項食物之中,他最喜歡的是:檸檬(Lemon)和鮭魚(Salmon)。就可以從這兩種食物的氣味值,來計算出平均值,如下:

1755667544262543.png

計算相似度:建立user-wine節點間的邊

剛才已經計算出客人對食物氣味的偏好度了。于是,就使用Python 撰寫簡單的程序,來計算出Mike 偏好食物與酒之間的余旋相似度(Cosine Similarity)矩陣。然后,從這個相似度矩陣,Python 程序就能找出與Mike 偏好食物風味相似度最高的前3 項(Top-3)酒品,并輸出如下:

1755667576848840.png

基于這樣的配對關系(關聯),就能建立KG 里的客人(user)與酒(wine)節點間的連接邊了。于是,為KG增添建構了重要的邊,如下圖:

1755667605563629.png

圖3

這個KG含有4種節點型態:food、wine、flavor 和user節點型態。它也含有3 種邊型態:< 偏好>、< 協調搭配> 和< 協調偏好>。

3   結語

依循本文所示范的方法和技巧,可以繼續增添各種有意義的邊。例如,上述的餐酒KG 含有的節點型態(Node type) 有四:food、wine、flavor 和user。目前所含有的基本氣味有四:酸(Acidity)、甜(Sweet)、苦(Bitter)、咸(Salty)。于是,上圖里的KG 就可以增添< 具有風味> 新邊來表達這項< 含有> 關聯,通常這是有意義的邊。

此外,這KG 里還可以增添< 對比偏好> 新邊。其讓這KG 的user-wine 間具有兩種邊:

●   <協調(congruent) 偏好> 邊。例如,Mike顯然喜歡酸味的食物,就配對出較具酸味的葡萄酒。

●   <對比(contrasting)偏好>邊。例如,Mike顯然喜歡酸味的食物,就配對出較< 不具> 酸味的葡萄酒。

于是,這KG 就日漸成長壯大了。如下圖-4:

1755667671466005.png

圖3

以上說明了,KG會持續更新、日益茁壯。當我們進一步拿KG 來訓練GNN模型時,GNN也能探索出反事實連結(Counterfactual Link),來日漸充實、優化KG,讓KG 生生不息、無盡繁榮。

(本文來源于《EEPW》

評論


技術專區

關閉