用于海量文本匹配的方法
【專利摘要】本發(fā)明提出了用于海量文本匹配的方法。其中,所述方法包括:分別將數(shù)據(jù)庫(kù)文檔和外部文檔分組,并確定數(shù)據(jù)庫(kù)文檔的分組數(shù)s;分別計(jì)算數(shù)據(jù)庫(kù)文檔的總數(shù)目n和外部文檔的總數(shù)目m,并用k個(gè)實(shí)矩陣M表示所述數(shù)據(jù)庫(kù)文檔的向量空間,以及用k2個(gè)稀疏矩陣P表示所述外部文檔的向量空間;取未針對(duì)其進(jìn)行相應(yīng)的計(jì)算操作的稀疏矩陣P作為當(dāng)前目標(biāo)稀疏矩陣P,并針對(duì)所述當(dāng)前目標(biāo)稀疏矩陣P執(zhí)行相應(yīng)的計(jì)算操作以獲得相似度矩陣S,以及隨后基于所述相似度矩陣S確定與所述當(dāng)前目標(biāo)稀疏矩陣P所代表的各個(gè)外部文檔最佳匹配的數(shù)據(jù)庫(kù)文檔。本發(fā)明所公開的用于海量文本匹配的方法節(jié)省存儲(chǔ)空間、時(shí)間消耗較小并且能夠進(jìn)行并行處理。
【專利說明】用于海量文本匹配的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及文本匹配的方法,更具體地,涉及用于海量文本匹配的方法。
【背景技術(shù)】
[0002] 目前,隨著信息數(shù)據(jù)處理需求的日益增長(zhǎng)以及不同領(lǐng)域的業(yè)務(wù)種類的日益豐富, 將外部文檔與海量的數(shù)據(jù)庫(kù)文檔進(jìn)行匹配變得越來越重要。
[0003] 在現(xiàn)有的用于文檔匹配的方法中,通常采用如下方式:建立外部文檔和數(shù)據(jù)庫(kù)文 檔的向量空間模型;逐個(gè)地計(jì)算每個(gè)外部文檔對(duì)應(yīng)的向量與數(shù)據(jù)庫(kù)文檔對(duì)應(yīng)的向量的相似 度;選取針對(duì)特定的一個(gè)外部文檔具有最大相似度的數(shù)據(jù)庫(kù)文檔作為與該外部文檔最佳匹 配的數(shù)據(jù)庫(kù)文檔,以此循環(huán)直至得到與每個(gè)外部文檔最佳匹配的數(shù)據(jù)庫(kù)文檔。
[0004] 然而,現(xiàn)有的用于文檔匹配的方法存在如下問題:(1)由于通常向量化后的外部 文檔是稀疏的,故采用向量的方式存儲(chǔ)外部文檔會(huì)占用較大的存儲(chǔ)空間;(2)由于需要逐 步地計(jì)算每?jī)蓚€(gè)向量之間的點(diǎn)積,故計(jì)算點(diǎn)積的次數(shù)非常多,從而導(dǎo)致計(jì)算過程所花費(fèi)的 時(shí)間消耗較大;(3)難以進(jìn)行并行計(jì)算。
[0005] 因此,存在如下需求:提供節(jié)省存儲(chǔ)空間、時(shí)間消耗較小并且能夠進(jìn)行并行處理的 用于海量文本匹配的方法。
【發(fā)明內(nèi)容】
[0006] 為了解決上述現(xiàn)有技術(shù)方案中所存在的問題,本發(fā)明提出了節(jié)省存儲(chǔ)空間、時(shí)間 消耗較小并且能夠進(jìn)行并行處理的用于海量文本匹配的方法。
[0007] 本發(fā)明的目的是通過以下技術(shù)方案實(shí)現(xiàn)的:
[0008] -種用于海量文本匹配的方法,所述用于海量文本匹配的方法包括下列步驟:
[0009] (Al)分別將數(shù)據(jù)庫(kù)文檔和外部文檔分組,并確定數(shù)據(jù)庫(kù)文檔的分組數(shù)s ;
[0010] (A2)分別計(jì)算數(shù)據(jù)庫(kù)文檔的總數(shù)目η和外部文檔的總數(shù)目m,并用k個(gè)實(shí)矩陣M 表示所述數(shù)據(jù)庫(kù)文檔的向量空間,以及用k2個(gè)稀疏矩陣P表示所述外部文檔的向量空間;
[0011] (A3)判斷是否存在未針對(duì)其進(jìn)行相應(yīng)的計(jì)算操作的稀疏矩陣P,并且如果不存在 未針對(duì)其進(jìn)行匹配操作的稀疏矩陣P,則終止匹配過程,而如果存在未針對(duì)其進(jìn)行匹配操作 的稀疏矩陣P,則進(jìn)入步驟(A4);
[0012] (A4)取下一個(gè)未針對(duì)其進(jìn)行匹配操作的稀疏矩陣P作為當(dāng)前目標(biāo)稀疏矩陣P,并 針對(duì)所述當(dāng)前目標(biāo)稀疏矩陣P執(zhí)行相應(yīng)的計(jì)算操作以獲得相似度矩陣S,以及隨后基于所 述相似度矩陣S確定與所述當(dāng)前目標(biāo)稀疏矩陣P所代表的各個(gè)外部文檔最佳匹配的數(shù)據(jù)庫(kù) 文檔并返回步驟(A3)。
[0013] 在上面所公開的方案中,優(yōu)選地,所述外部文檔的分組數(shù)t是所述數(shù)據(jù)庫(kù)文檔的 分組數(shù)s的倍數(shù)。
[0014] 在上面所公開的方案中,優(yōu)選地,所述步驟(A2)進(jìn)一步包括:通過分詞和/或統(tǒng)計(jì) 詞頻得到數(shù)據(jù)庫(kù)文檔的詞包W及其詞條個(gè)數(shù)w ;用k個(gè)實(shí)矩陣M表示所述數(shù)據(jù)庫(kù)文檔的向 量空間,其中k=n/s,并且每個(gè)實(shí)矩陣M由s個(gè)文檔向量組成,其中,每個(gè)實(shí)矩陣M具有s行 w列,并且每一行表不一個(gè)文檔向量;將每個(gè)實(shí)矩陣M編號(hào)并存儲(chǔ)。
[0015] 在上面所公開的方案中,優(yōu)選地,所述步驟(A2)進(jìn)一步包括:對(duì)外部文檔進(jìn)行分 詞操作后剔除不在所述數(shù)據(jù)庫(kù)文檔的詞包W之內(nèi)的詞條;將剔除不在所述數(shù)據(jù)庫(kù)文檔的詞 包W之內(nèi)的詞條后詞條數(shù)為0的外部文檔丟棄;用k2個(gè)稀疏矩陣P表示所述外部文檔的向 量空間,其中k2=m/t,并且每個(gè)稀疏矩陣P由t個(gè)文檔向量組成;將每個(gè)稀疏矩陣P編號(hào)并 存儲(chǔ)。
[0016] 在上面所公開的方案中,優(yōu)選地,所述稀疏矩陣P包括下列項(xiàng):行數(shù)、列數(shù)、行號(hào)向 量、列號(hào)向量、非零值向量。
[0017] 在上面所公開的方案中,優(yōu)選地,所述步驟(A4)進(jìn)一步包括:將所述當(dāng)前目標(biāo)稀 疏矩陣P與k個(gè)實(shí)矩陣M的匹配任務(wù)分配到z個(gè)工作站中,其中z是k的整除數(shù)。
[0018] 在上面所公開的方案中,優(yōu)選地,所述步驟(A4)進(jìn)一步包括:所述z個(gè)工作站中的 每個(gè)計(jì)算所述當(dāng)前目標(biāo)稀疏矩陣P與所分配的實(shí)矩陣M之間的相似度以得到相應(yīng)的相似度 矩陣S,其中,所述相似度矩陣S具有t行s列,并且其第i行是所述當(dāng)前目標(biāo)稀疏矩陣P的 第i個(gè)文檔與實(shí)矩陣M的s個(gè)文檔的相似度。
[0019] 在上面所公開的方案中,優(yōu)選地,以下式計(jì)算所述相似度矩陣S :S=SC/PM,并且其 中,以如下方式確定所述?厘:設(shè)〈^|>=〈^1|,^2|,……|MsI>,其中〈ImI>是由S個(gè)數(shù)據(jù)庫(kù) 文檔向量長(zhǎng)度組成的向量,則所述PM是t行S列的矩陣,其第i行的元素是所述當(dāng)前目標(biāo) 稀疏矩陣P的第i個(gè)文檔向量的長(zhǎng)度與〈I Mi I >的乘積,并且以如下方式確定所述SC :
【權(quán)利要求】
1. 一種用于海量文本匹配的方法,所述用于海量文本匹配的方法包括下列步驟: (Al)分別將數(shù)據(jù)庫(kù)文檔和外部文檔分組,并確定數(shù)據(jù)庫(kù)文檔的分組數(shù)s; (A2)分別計(jì)算數(shù)據(jù)庫(kù)文檔的總數(shù)目η和外部文檔的總數(shù)目m,并用k個(gè)實(shí)矩陣M表示 所述數(shù)據(jù)庫(kù)文檔的向量空間,以及用k2個(gè)稀疏矩陣P表示所述外部文檔的向量空間; (A3)判斷是否存在未針對(duì)其進(jìn)行相應(yīng)的計(jì)算操作的稀疏矩陣P,并且如果不存在未針 對(duì)其進(jìn)行相應(yīng)的計(jì)算操作的稀疏矩陣P,則終止匹配過程,而如果存在未針對(duì)其進(jìn)行相應(yīng)的 計(jì)算操作的稀疏矩陣P,則進(jìn)入步驟(A4); (A4)取下一個(gè)未針對(duì)其進(jìn)行相應(yīng)的計(jì)算操作的稀疏矩陣P作為當(dāng)前目標(biāo)稀疏矩陣P, 并針對(duì)所述當(dāng)前目標(biāo)稀疏矩陣P執(zhí)行相應(yīng)的計(jì)算操作以獲得相似度矩陣S,以及隨后基于 所述相似度矩陣S確定與所述當(dāng)前目標(biāo)稀疏矩陣P所代表的各個(gè)外部文檔最佳匹配的數(shù)據(jù) 庫(kù)文檔并返回步驟(A3)。
2. 根據(jù)權(quán)利要求1所述的用于海量文本匹配的方法,其特征在于,所述外部文檔的分 組數(shù)t是所述數(shù)據(jù)庫(kù)文檔的分組數(shù)s的倍數(shù)。
3. 根據(jù)權(quán)利要求2所述的用于海量文本匹配的方法,其特征在于,所述步驟(A2)進(jìn)一 步包括:通過分詞和/或統(tǒng)計(jì)詞頻得到數(shù)據(jù)庫(kù)文檔的詞包W及其詞條個(gè)數(shù)w;用k個(gè)實(shí)矩陣 M表示所述數(shù)據(jù)庫(kù)文檔的向量空間,其中k=n/s,并且每個(gè)實(shí)矩陣M由s個(gè)文檔向量組成,其 中,每個(gè)實(shí)矩陣M具有s行w列,并且每一行表示一個(gè)文檔向量;將每個(gè)實(shí)矩陣M編號(hào)并存 儲(chǔ)。
4. 根據(jù)權(quán)利要求3所述的用于海量文本匹配的方法,其特征在于,所述步驟(A2)進(jìn)一 步包括:對(duì)外部文檔進(jìn)行分詞操作后剔除不在所述數(shù)據(jù)庫(kù)文檔的詞包W之內(nèi)的詞條;將剔 除不在所述數(shù)據(jù)庫(kù)文檔的詞包W之內(nèi)的詞條后詞條數(shù)為O的外部文檔丟棄;用k2個(gè)稀疏矩 陣P表示所述外部文檔的向量空間,其中k2=m/t,并且每個(gè)稀疏矩陣P由t個(gè)文檔向量組 成;將每個(gè)稀疏矩陣P編號(hào)并存儲(chǔ)。
5. 根據(jù)權(quán)利要求4所述的用于海量文本匹配的方法,其特征在于,所述稀疏矩陣P包括 下列項(xiàng):行數(shù)、列數(shù)、行號(hào)向量、列號(hào)向量、非零值向量。
6. 根據(jù)權(quán)利要求5所述的用于海量文本匹配的方法,其特征在于,所述步驟(A4)進(jìn)一 步包括:將所述當(dāng)前目標(biāo)稀疏矩陣P與k個(gè)實(shí)矩陣M的匹配任務(wù)分配到z個(gè)工作站中,其中 z是k的整除數(shù)。
7. 根據(jù)權(quán)利要求6所述的用于海量文本匹配的方法,其特征在于,所述步驟(A4)進(jìn)一 步包括:所述z個(gè)工作站中的每個(gè)計(jì)算所述當(dāng)前目標(biāo)稀疏矩陣P與所分配的實(shí)矩陣M之間 的相似度以得到相應(yīng)的相似度矩陣S,其中,所述相似度矩陣S具有t行s列,并且其第i行 是所述當(dāng)前目標(biāo)稀疏矩陣P的第i個(gè)文檔與實(shí)矩陣M的s個(gè)文檔的相似度。
8. 根據(jù)權(quán)利要求7所述的用于海量文本匹配的方法,其特征在于,以下式計(jì)算所述 相似度矩陣3:5=5(:^^,并且其中,以如下方式確定所述?1 :設(shè)〈_>=〈^1|,^2|,…… |Ms|>,其中<|M|>是由s個(gè)數(shù)據(jù)庫(kù)文檔向量長(zhǎng)度組成的向量,則所述PM是t行s列的矩陣, 其第i行的元素是所述當(dāng)前目標(biāo)稀疏矩陣P的第i個(gè)文檔向量的長(zhǎng)度與〈|MiI>的乘積,并 且以如下方式確定所述SC:
其中,所述SC是t行S列的矩陣,其第i行的元素是所述當(dāng)前目標(biāo)稀疏矩陣P的第i個(gè)文檔向量與實(shí)矩陣M的s個(gè)文檔向量的點(diǎn)乘結(jié)果值。
9. 根據(jù)權(quán)利要求8所述的用于海量文本匹配的方法,其特征在于,以如下迭代方法求 解所述SC: (1)將SC初始化為t行s列的零矩陣;(2)遍歷所述當(dāng)前目標(biāo)稀疏矩陣P的非 零值向量,從而迭代更新所述SC,即設(shè)所述當(dāng)前目標(biāo)稀疏矩陣P在值V時(shí)對(duì)應(yīng)的行號(hào)為i、 列號(hào)為j,則以如下方式更新SC的第i行:將V乘以實(shí)矩陣M的第j列的值并加上SC的第 i行的原值作為SC第i行的新值。
10. 根據(jù)權(quán)利要求9所述的用于海量文本匹配的方法,其特征在于,所述步驟(A4)進(jìn)一 步包括:收集所有工作站輸出的相似度矩陣S,并對(duì)所收集的相似度矩陣S按行求最大值, 以確定與所述當(dāng)前目標(biāo)稀疏矩陣P所代表的各個(gè)外部文檔最佳匹配的數(shù)據(jù)庫(kù)文檔。
【文檔編號(hào)】G06F17/30GK104462088SQ201310418114
【公開日】2015年3月25日 申請(qǐng)日期:2013年9月13日 優(yōu)先權(quán)日:2013年9月13日
【發(fā)明者】劉軍, 馮興 申請(qǐng)人:中國(guó)銀聯(lián)股份有限公司