在CIKM 2021上提出的DT-GCN(Data Type-aware Graph Convolutional Network)模型,是一種創(chuàng)新的知識圖譜表示學(xué)習(xí)方法,其核心在于將實體與關(guān)系映射到雙曲空間(具體為龐加萊球模型)中,并顯式地建模和處理知識圖譜中不同數(shù)據(jù)類型(如數(shù)值型、分類型、文本型等)對關(guān)系表示的影響。數(shù)據(jù)處理作為模型訓(xùn)練與評估的先決條件,其質(zhì)量與流程設(shè)計直接關(guān)系到模型的最終性能。本文將詳細闡述DT-GCN模型所需的數(shù)據(jù)處理流程。\n\n### 1. 數(shù)據(jù)來源與原始結(jié)構(gòu)\n數(shù)據(jù)處理始于原始知識圖譜數(shù)據(jù)。通常,一個知識圖譜可以形式化為一個三元組集合 \\( \\mathcal{G} = \\{ (h, r, t) \\} \\),其中 \\( h \\) 是頭實體,\\( r \\) 是關(guān)系,\\( t \\) 是尾實體。除了三元組結(jié)構(gòu)外,DT-GCN的關(guān)鍵輸入是附著在實體和/或關(guān)系上的屬性數(shù)據(jù)。這些屬性具有不同的數(shù)據(jù)類型(Data Type),例如:\n- 數(shù)值型:如人物的年齡、公司的市值(連續(xù)或離散數(shù)值)。\n- 分類型:如人物的國籍、公司的行業(yè)類別(離散標簽)。\n- 文本型:如實體的描述文本、關(guān)系的中文釋義。\n原始數(shù)據(jù)可能來源于結(jié)構(gòu)化知識庫(如Wikidata、YAGO)、領(lǐng)域特定數(shù)據(jù)庫或通過信息抽取技術(shù)從非結(jié)構(gòu)化文本中構(gòu)建。\n\n### 2. 核心數(shù)據(jù)處理步驟\nDT-GCN的數(shù)據(jù)處理旨在為模型準備兩類輸入:圖結(jié)構(gòu)數(shù)據(jù)和屬性特征數(shù)據(jù)。\n\n步驟一:圖結(jié)構(gòu)數(shù)據(jù)預(yù)處理\n1. 三元組劃分:將整個知識圖譜的三元組集合 \\( \\mathcal{G} \\) 劃分為訓(xùn)練集、驗證集和測試集。通常采用隨機劃分或按時間劃分(適用于時序圖譜),并需確保實體和關(guān)系在分割后不會完全消失在訓(xùn)練集中(即考慮連通性)。\n2. 負采樣生成:為訓(xùn)練過程中的對比學(xué)習(xí)或負采樣損失函數(shù)準備負例。對于每個訓(xùn)練正例 \\( (h, r, t) \\),通過隨機替換頭實體或尾實體(有時也替換關(guān)系)來生成負例 \\( (h', r, t) \\) 或 \\( (h, r, t') \\),確保生成的三元組不在已知的正例集合中。\n3. 圖構(gòu)建:基于訓(xùn)練集三元組,構(gòu)建實體之間的關(guān)系鄰接矩陣或鄰居列表,用于后續(xù)圖卷積操作。DT-GCN可能考慮多跳鄰居信息。\n\n步驟二:屬性特征提取與類型化編碼\n這是DT-GCN區(qū)別于傳統(tǒng)模型的關(guān)鍵步驟,旨在將不同數(shù)據(jù)類型的屬性轉(zhuǎn)化為統(tǒng)一的特征向量,同時保留其類型信息。\n1. 數(shù)據(jù)清洗與對齊:\n - 處理缺失值:對于缺失的屬性,可以采用特定值填充(如數(shù)值型用均值,分類型用特殊標簽“UNK”),或直接將其特征設(shè)為零向量。\n - 實體/關(guān)系ID與屬性對齊:確保每個實體ID和關(guān)系ID都能關(guān)聯(lián)到其對應(yīng)的屬性字典或記錄。\n2. 分類型屬性編碼:\n - 使用獨熱編碼(One-hot Encoding)或可學(xué)習(xí)的嵌入層(Embedding Layer)將每個分類標簽映射為一個稠密向量。\n - 對于具有層次結(jié)構(gòu)的分類屬性(如“地理位置:中國>北京>海淀區(qū)”),可以考慮編碼其層次信息。\n3. 數(shù)值型屬性編碼:\n - 標準化/歸一化:將連續(xù)值縮放到固定范圍(如[0, 1])或進行標準化(均值為0,方差為1),以加速模型收斂。\n - 離散化(可選):有時將連續(xù)值分桶處理為離散類別,再按分類型屬性處理。\n - 直接映射:通過一個可學(xué)習(xí)的線性或非線性層(如MLP)將標量數(shù)值映射為稠密向量。\n4. 文本型屬性編碼:\n - 使用預(yù)訓(xùn)練的語言模型(如BERT、RoBERTa的CLS token向量)或靜態(tài)詞向量模型(如Word2Vec、GloVe)獲取文本的句嵌入或詞嵌入池化后的向量表示。\n5. 特征融合與類型標識:\n - 對于一個實體或關(guān)系,可能擁有多種類型、多個屬性的特征。需要將這些特征向量進行融合,常見方法包括拼接(Concatenation)、加和(Summation)或注意力機制加權(quán)融合。\n - 關(guān)鍵步驟:為每個屬性特征向量附加一個數(shù)據(jù)類型標識符。DT-GCN模型中設(shè)計了一個類型感知的轉(zhuǎn)換模塊,該標識符用于指導(dǎo)模型對不同來源和類型的特征進行差異化的變換和處理。這可以通過為不同類型分配不同的可學(xué)習(xí)變換矩陣來實現(xiàn)。\n\n步驟三:輸入數(shù)據(jù)組裝\n為模型組裝的每批訓(xùn)練數(shù)據(jù)包含:\n- 一批正例三元組:形狀為 \\( (batch\_size, 3) \\) 的張量,包含頭實體ID、關(guān)系ID、尾實體ID。\n- 對應(yīng)的屬性特征:根據(jù)實體ID和關(guān)系ID索引得到的,已經(jīng)過類型化編碼和融合后的特征矩陣。\n- 對應(yīng)的負例三元組(用于訓(xùn)練時計算損失)。\n\n### 3. 注意事項與挑戰(zhàn)\n- 異構(gòu)性處理:知識圖譜中不同實體類型的屬性 schema 差異巨大,需要靈活的數(shù)據(jù)管道支持。\n- 特征維度統(tǒng)一:不同類型屬性編碼后的向量維度可能不同,需要在融合前通過投影層統(tǒng)一維度,或在模型設(shè)計時處理。\n- 計算效率:文本編碼(特別是使用大型LM)可能成為計算瓶頸,可以考慮離線編碼或緩存策略。\n- 數(shù)據(jù)泄露:在劃分數(shù)據(jù)集和進行特征編碼(如標準化計算均值方差)時,必須嚴格使用訓(xùn)練集數(shù)據(jù)來計算統(tǒng)計量,避免信息從驗證集/測試集泄露到訓(xùn)練過程。\n\n### 結(jié)論\nDT-GCN模型的數(shù)據(jù)處理流程是一個將異構(gòu)、多類型的知識圖譜原始數(shù)據(jù)轉(zhuǎn)化為結(jié)構(gòu)化、類型標識明確的數(shù)值化輸入的系統(tǒng)工程。它不僅僅是為模型準備“燃料”,其本身也深刻體現(xiàn)了模型“數(shù)據(jù)類型感知”的核心思想。精心設(shè)計的數(shù)據(jù)處理流程,能夠最大限度地保留原始數(shù)據(jù)中的語義和類型信息,為后續(xù)在雙曲空間中進行高效、準確的表示學(xué)習(xí)奠定堅實的基礎(chǔ)。