一句話描述整個(gè)框架:
用一種新穎的方式把文本對(duì)表示成一個(gè)“概念交互圖(Concept Interaction Graph,CIG)”,然后使用GCN來進(jìn)行表示,然后訓(xùn)練一個(gè)分類器去判斷兩個(gè)文本是否匹配。
論文亮點(diǎn):
- CIG這種表示方法很有意思,值得借鑒
- 文章慷慨的開放了一個(gè)中文文本匹配數(shù)據(jù)集,供研究者使用
兩個(gè)數(shù)據(jù)集:
①兩條新聞是否描述同一個(gè)熱點(diǎn)(細(xì))
②兩條新聞是否屬于同一個(gè)事件/故事(粗)
CIG:
把文檔表示成一個(gè)無向有權(quán)圖,每個(gè)文檔被分割成一個(gè)個(gè)句子的集合,而每一個(gè)集合都對(duì)應(yīng)著一個(gè)文檔的重要概念(concept)。
到底什么是所謂的“概念”?
概念,在這里就是指文章的關(guān)鍵詞,或者一組關(guān)系緊密的關(guān)鍵詞。
怎么得到這些關(guān)鍵詞?
沒什么特別的,就用常見的關(guān)鍵詞抽取算法,比如TextRank。
關(guān)鍵詞怎么組成概念?
通過聚類,具體的方式是采用圖數(shù)據(jù)中的community detection。
文檔構(gòu)建CIG的例子:
構(gòu)建CIG的步驟:
構(gòu)建關(guān)鍵詞網(wǎng)絡(luò)
提取出關(guān)鍵詞后,采用詞與詞之間的共現(xiàn)關(guān)系來構(gòu)建關(guān)鍵詞網(wǎng)絡(luò)。概念發(fā)掘(可選)
通過社區(qū)發(fā)掘的方法來將關(guān)鍵詞聚類,得到概念。
實(shí)際上可以直接使用關(guān)鍵詞作為概念。句子關(guān)聯(lián)
在得到概念之后,需要把文檔的一個(gè)個(gè)句子關(guān)聯(lián)到對(duì)應(yīng)的概念上。具體的方式是計(jì)算句子和概念之間的余弦相似度,向量就用TF-IDF表示即可。構(gòu)建概念之間的邊
現(xiàn)在網(wǎng)絡(luò)的node即概念,概念之間的邊表示二者之間的相似度。這里使用每個(gè)概念所對(duì)應(yīng)的句子的整體的TF-IDF作為該概念的表示,從而計(jì)算概念之間的相似度。
通過GCN進(jìn)行文本匹配
一個(gè)文本對(duì)包含兩個(gè)文本A,B。二者合起來,構(gòu)建一個(gè)CIG_{AB}。
通過一種“分而治之”的方式來匹配A和B中的各個(gè)概念,然后再統(tǒng)一起來。
-
局部匹配
用一個(gè)encoder,來把CIG_{AB}中的每一個(gè)concept中的A和B的部分,進(jìn)行編碼,得到該concept的一個(gè)匹配向量。
例如,使用Siamese Encoder可以這樣處理:
這里,在Siamese進(jìn)行匹配的時(shí)候,不是簡(jiǎn)單地將兩個(gè)向量相減,而是使用這個(gè)公式:
- 使用GCN聚合局部匹配信息
上一步我們得到了每一個(gè)concept的兩個(gè)文本之間的匹配向量,這個(gè)可以當(dāng)做是節(jié)點(diǎn)的特征。于是我們可以直接使用GCN來將各個(gè)concept的匹配情況進(jìn)行聚合。
最后使用GCN輸出的向量作為特征,接一個(gè)分類器,來判斷文本對(duì)是否匹配。