一種基于深度語(yǔ)義特征學(xué)習(xí)的短文本聚類方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及文本特征向量化表示領(lǐng)域,特別是涉及一種基于深度語(yǔ)義特征學(xué)習(xí)的 短文本聚類方法。
【背景技術(shù)】
[0002] 隨著社交媒體的廣泛流行,短文本聚類日益成為一項(xiàng)重要的任務(wù),它的主要挑戰(zhàn) 在于文本表示的稀疏性。為了克服這個(gè)困難,一些研宄者嘗試通過(guò)維基百科或本體庫(kù)對(duì)短 文本數(shù)據(jù)進(jìn)行豐富和擴(kuò)展??墒沁@些方法需要大量的自然語(yǔ)言處理知識(shí),并且仍然采用高 維的特征表示,很容易浪費(fèi)存儲(chǔ)和計(jì)算時(shí)間。另外一些研宄者嘗試開(kāi)發(fā)復(fù)雜的模型用于聚 類短文本數(shù)據(jù)。但是如何設(shè)計(jì)一個(gè)有效的模型是一個(gè)開(kāi)放性的問(wèn)題,并且之前大多數(shù)方法 都是基于詞袋特征的潛層模型。
[0003] 隨著深度神經(jīng)網(wǎng)絡(luò)的興起,一些研宄者嘗試采用深度學(xué)習(xí)方法學(xué)習(xí)特征。如 Hinton等人利用深度自編碼模型(DAE)從原始特征數(shù)據(jù)中學(xué)習(xí)文本表示。近幾年,詞向 量化表示方法大大改善了神經(jīng)網(wǎng)絡(luò)模型的性能,如遞歸神經(jīng)網(wǎng)絡(luò)(RecNN)和循環(huán)神經(jīng)網(wǎng)絡(luò) (RNN)。然而,遞歸神經(jīng)網(wǎng)絡(luò)需要構(gòu)建額外的句法樹(shù)并具有較高的復(fù)雜度,且循環(huán)神經(jīng)網(wǎng)絡(luò) 的文本語(yǔ)義表示更偏重于最后一個(gè)詞的表示信息。近日,卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)在很多自然語(yǔ) 言處理領(lǐng)域取得多項(xiàng)突破性進(jìn)展。但目前大多數(shù)工作都致力于利用卷積神經(jīng)網(wǎng)絡(luò)做有監(jiān)督 任務(wù)學(xué)習(xí),如主題分類、關(guān)系分類等。本發(fā)明方法則著重于挖掘卷積神經(jīng)網(wǎng)絡(luò)在無(wú)監(jiān)督學(xué)習(xí) 任務(wù)的潛力,如文本聚類工作。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的主要目的在于提供一種基于深度語(yǔ)義特征學(xué)習(xí)的短文本聚類方法,從而 能夠?qū)⒑A空Z(yǔ)義相似的短文本進(jìn)行快速和準(zhǔn)確地聚類。
[0005] 為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一方面,本發(fā)明提供了一種基于深度語(yǔ)義特征 學(xué)習(xí)的短文本聚類方法,包括以下步驟:
[0006] 選取訓(xùn)練文本,通過(guò)特征降維方法在局部信息保存約束下對(duì)所述訓(xùn)練文本的原始 特征進(jìn)行降維,并對(duì)低維實(shí)值向量進(jìn)行二值化;
[0007] 從所述訓(xùn)練文本中獲取詞特征,根據(jù)所述詞特征通過(guò)查表分別獲取所述詞特征對(duì) 應(yīng)的詞向量,以此作為卷積神經(jīng)網(wǎng)絡(luò)的輸入特征學(xué)習(xí)深度語(yǔ)義表示特征;
[0008] 所述卷積神經(jīng)網(wǎng)絡(luò)的輸出節(jié)點(diǎn)通過(guò)多個(gè)邏輯斯特回歸擬合降維得到二值碼;
[0009] 通過(guò)所述卷積神經(jīng)網(wǎng)絡(luò)輸出的二值特征與所述原始特征降維后二值化特征的擬 合殘差進(jìn)行誤差反向傳播訓(xùn)練所述卷積神經(jīng)網(wǎng)絡(luò)模型;
[0010] 利用所述更新后的卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)所述訓(xùn)練文本進(jìn)行深度語(yǔ)義特征映射,然 后利用K均值聚類算法得到所述短文本的聚類結(jié)果。
[0011] 其中,所述選取訓(xùn)練文本,通過(guò)特征降維方法在局部信息保存約束下對(duì)所述訓(xùn)練 文本的原始特征進(jìn)行降維,并對(duì)低維實(shí)值向量進(jìn)行二值化的步驟包括:
[0012] 選取訓(xùn)練文本;
[0013] 根據(jù)所述訓(xùn)練文本構(gòu)造相似度矩陣;
[0014] 通過(guò)所述相似度矩陣獲取拉普拉斯特征向量;
[0015] 通過(guò)所述拉普拉斯特征向量獲取中值向量;
[0016] 通過(guò)所述中值向量對(duì)所述拉普拉斯特征向量進(jìn)行二值化,從而生成低維二值碼。
[0017] 其中,所述根據(jù)所述訓(xùn)練文本構(gòu)造相似度矩陣的步驟包括:
[0018] 根據(jù)下式計(jì)算所述相似度矩陣:
[0019]
[0020] 其中,Sij為所述相似度矩陣,。為局部縮放因子,NNk(X)為所述訓(xùn)練文本X的k 近鄰集合。
[0021] 其中,所述從訓(xùn)練文本中獲取詞特征,根據(jù)所述詞特征通過(guò)查表分別獲取詞特征 對(duì)應(yīng)的詞向量,以此作為卷積神經(jīng)網(wǎng)絡(luò)的輸入特征學(xué)習(xí)深度語(yǔ)義表示特征的步驟包括:
[0022] 從訓(xùn)練文本中獲取詞特征;
[0023] 根據(jù)所述詞特征通過(guò)查表分別獲取詞特征對(duì)應(yīng)的詞向量;
[0024] 將所述詞向量進(jìn)行一維卷積,獲取卷積后的特征矩陣;
[0025] 所述特征矩陣通過(guò)折疊操作和采樣進(jìn)行特征壓縮;
[0026] 從所述壓縮后特征中動(dòng)態(tài)選取K最大神經(jīng)單元;
[0027] 所述K最大神經(jīng)單元根據(jù)正切激活函數(shù)得到所述訓(xùn)練文本的隱式語(yǔ)義特征。
[0028] 其中,所述折疊操作和采樣操作分別為:
[0029] 折疊操作:對(duì)卷積層相鄰兩行神經(jīng)元特征按對(duì)應(yīng)所在列進(jìn)行簡(jiǎn)單求和,給定一個(gè) dw行的卷積層,通過(guò)折疊操作可以得到dw/2行特征;以及
[0030] 采樣操作:根據(jù)輸入文本長(zhǎng)度進(jìn)行動(dòng)態(tài)K最大神經(jīng)單元采樣。
[0031] 所述從所述壓縮后特征中動(dòng)態(tài)選取K最大神經(jīng)單元的步驟包括:
[0032] 給定一個(gè)頂層采樣的參數(shù)Kttjp,則第1層的采樣參數(shù)K可根據(jù)如下公式計(jì)算得到:
[0033]
[0034] 其中,L是選用卷積神經(jīng)網(wǎng)絡(luò)的層數(shù),歹為短文本的長(zhǎng)度。
[0035] 其中,所述K最大神經(jīng)單元根據(jù)正切激活函數(shù)得到所述訓(xùn)練文本的隱式語(yǔ)義特征 的步驟包括:
[0036] 根據(jù)下式計(jì)算所述訓(xùn)練文本的隱式語(yǔ)義特征:
[0037]
[0038] 其中,h為所述訓(xùn)練文本的隱式語(yǔ)義特征。
[0039] 其中,所述通過(guò)所述卷積神經(jīng)網(wǎng)絡(luò)輸出的二值特征與所述原始特征降維后二值化 特征的擬合殘差進(jìn)行誤差反向傳播訓(xùn)練所述卷積神經(jīng)網(wǎng)絡(luò)模型的步驟包括:
[0040] 將所述訓(xùn)練文本的隱式語(yǔ)義特征通過(guò)卷積神經(jīng)網(wǎng)絡(luò)模型的全連接輸出到輸出 層;
[0041] 在所述輸出層特征上添加多個(gè)邏輯斯特回歸進(jìn)行特征變換,得到最終輸出特征;
[0042] 將所述低維二值碼同所述最終輸出特征的殘差進(jìn)行誤差反向傳播得到更新的卷 積神經(jīng)網(wǎng)絡(luò)模型的參數(shù)。
[0043] 其中,所述將低維二值碼同所述最終輸出特征的殘差進(jìn)行誤差反向傳播得到更新 的卷積神經(jīng)網(wǎng)絡(luò)模型的參數(shù)的步驟中,所述卷積神經(jīng)網(wǎng)絡(luò)模型采用交叉熵作為優(yōu)化目標(biāo)函 數(shù),并利用基于梯度下降的Adagrad更新規(guī)則。
[0044] 其中,所述訓(xùn)練文本來(lái)自兩種公開(kāi)短文本數(shù)據(jù)集:
[0045] SearchSnippets:該數(shù)據(jù)集搜集了網(wǎng)絡(luò)檢索引擎的結(jié)果片段,按照事先預(yù)定的領(lǐng) 域范圍檢索詞將檢索結(jié)果劃分為8個(gè)類別;
[0046] StackOverflow:該數(shù)據(jù)集包含了從2012年7月31日至2012年8月14日的3百 多萬(wàn)條問(wèn)題,從其中20個(gè)不同類別標(biāo)簽下隨機(jī)抽取了 2萬(wàn)條文本。
[0047] 由上述技術(shù)方案可知,本發(fā)明的方法采用外部大規(guī)模語(yǔ)料無(wú)監(jiān)督訓(xùn)練詞向量,并 對(duì)文本中每個(gè)詞按詞序進(jìn)行向量化表示,做為卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的初始化輸入特征學(xué)習(xí)文 本的隱式語(yǔ)義特征。得到文本的深度語(yǔ)義特征表示之后,本發(fā)明采用傳統(tǒng)的K均值算法對(duì) 文本進(jìn)行聚類,可以得到更好的聚類結(jié)果。
[0048] 相比于基于知識(shí)庫(kù)語(yǔ)義擴(kuò)展的短文本聚類方法,本發(fā)明方法不需要額外的自然語(yǔ) 言處理等專業(yè)知識(shí)。相比于基于復(fù)雜模型語(yǔ)義抽取的短文本聚類方法,本發(fā)明方法設(shè)計(jì)簡(jiǎn) 單而且可學(xué)習(xí)深度的語(yǔ)義特征。而且與目前流型的基于語(yǔ)言模型的無(wú)監(jiān)督深度學(xué)習(xí)模型不 同,本發(fā)明方法學(xué)習(xí)到的語(yǔ)義特征具有無(wú)偏性,可更有效地達(dá)到較好的聚類性能。
【附圖說(shuō)明】
[0049] 圖1為作為本發(fā)明一個(gè)實(shí)施例的基于深度語(yǔ)義特征學(xué)習(xí)的短文本聚類方法的流 程圖;
[0050] 圖2為作為本發(fā)明一個(gè)實(shí)施例的基于深度語(yǔ)義特征學(xué)習(xí)的短文本聚類方法的框 架示意圖;
[0051] 圖3為在本發(fā)明一個(gè)實(shí)施例中采用的一種深度卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)示意圖;
[0052] 圖4為本發(fā)明一個(gè)實(shí)施例中基于深度特征表示的聚類的性能示意圖;
[0053] 圖5為本發(fā)明另一個(gè)實(shí)施例中基于深度特征表示的聚類的性能示意圖。
【具體實(shí)施方式】
[0054] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照 附圖,對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。
[0055] 本發(fā)明的總體構(gòu)思是,通過(guò)特征降維方法在局部信息保存約束下對(duì)原始特征進(jìn)行 降維,并對(duì)低維實(shí)值向量進(jìn)行二值化,以此二值化特征做為卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的監(jiān)督信息 進(jìn)行誤差反向傳播訓(xùn)練模型。利用訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對(duì)短文本集合進(jìn)行特征映 射,得到文本的深