[發明專利]一種基于倒排索引的評估類文檔不定長詞句的查詢方法有效
| 申請號: | 201811153438.8 | 申請日: | 2018-09-30 |
| 公開(公告)號: | CN109284352B | 公開(公告)日: | 2022-02-08 |
| 發明(設計)人: | 沈毅;趙虹博;楊朔;王宏志;張淼 | 申請(專利權)人: | 哈爾濱工業大學 |
| 主分類號: | G06F16/31 | 分類號: | G06F16/31;G06F40/289;G06F40/242 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 150001 黑*** | 國省代碼: | 黑龍江;23 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 索引 評估 文檔 定長 詞句 查詢 方法 | ||
1.一種基于倒排索引的評估類文檔不定長詞句的查詢方法,其特征在于它包括以下步驟:
步驟一:將待查詢文檔進行數據預處理,統一轉換為純文本格式存儲,并添加自定義詞典和停用詞表,利用jieba分詞方法,采用Tire樹結構存儲單詞,生成DAG圖并基于DP算法計算最優切分方案,并通過中文詞匯BMES狀態表記法來進行分詞處理,得到單詞詞典與詞頻信息;
步驟二:基于完全重建策略的倒排索引原理,通過調整存儲結構、強化單詞位置信息、壓縮存儲空間,建立自適應倒排表和倒排生成文件,實現快速提取單詞位置、頻率信息;
步驟三:結合所需要查找不定長詞句的信息,通過倒排表索引詞句中各個分詞位置信息,基于字符串匹配方法識別不定長詞句位置信息并索引其所在段落,來完成評估類文檔不定長詞句的查詢功能。
2.根據權利要求1所述的基于倒排索引的評估類文檔不定長詞句的查詢方法,其特征在于所述的步驟一具體包括:
將待查詢文檔數據預處理為純文本格式,存儲在同一目錄下,記為數據集D;在進行jieba分詞前,須添加自定義詞典和停用詞表,設jieba分詞詞典為S0,自定義詞典包含專業領域術語記為U;則自定義單詞詞典集合S′可表示為:
S′=S0∪U;
其中S0為jieba分詞詞典中所有單詞構成的集合,U代表評估類文檔中專業領域術語所構成的集合;
停用詞表包含常用詞庫,記為C1;數字,記為C2;字母,記為C3,停用詞表C可表示為:
C=C1∪C2∪C3;
其中C1為包含日常用語常用詞匯的單詞所構成的集合;C2為數字0至9所構成的集合;C3為英文字母所構成的集合;
在得到自定義詞典S′和停用詞表C后,最終單詞詞典SD可以表示為:
SD=(S′-C)∪C′;
C′={c′1,c′2,...,c′n};
其中C′表示具有特殊含義的字母與數字組合而成的集合,在自定義詞典S′與停用詞表C做差集后,與C′做并集運算得到單詞詞典SD;
在精確模式下對待處理文檔數據進行改進的jieba分詞,得到分詞結果以及詞頻統計信息并保存,改進的jieba分詞具體步驟如下:
1)依據單詞詞典SD對數據集D中的所有句子進行切分,將所有可以切分成詞的單詞存儲到Trie樹中,同時將每個詞的出現次數轉換為頻率,通過快速詞圖掃描,將所有可能的分詞情況生成DAG圖(Directed Acyclic Graph,有向無環圖);
2)在得到了多種情況下的切分方案后,采用DP算法(Dynamic Programming,動態規劃算法)來查找最大概率路徑Rmax,對于DAG中的每個節點,其權重為對應詞語的詞頻,記為wi,計算方法如下:
由DAG圖構成切分路徑Route集合,包含k個切分方案:
Route={R1,R2,...,Rk};
其中任意一個切分方案Ri是由m個具有順序結構關系的單詞構成的序列:
Ri=[word1,word2,...,wordm]i∈[1,k];
對于DAG中k個切分方案所包含的全部n個節點單詞,其出現的概率為對應單詞詞頻在所有單詞詞頻之和中的占比,可表示為:
為了選取最大概率路徑Rmax,須使其路徑上的單詞權重概率之和W最大:
對于整個句子的最優路徑Rmax和一個末端節點wx,對于其可能存在的多個前驅節點wi,wj,wk,…,wz,設達到wi,wj,wk,wz的最大路徑分別為Rmaxi,Rmaxj,Rmaxk,Rmaxz有:
Rmax=max(Rmaxi,Rmaxj,Rmaxk,...,Rmaxz)+Weight(wx)Rmax∈Route;
于是問題轉化為求Rmaxi,Rmaxj,Rmaxk,…,Rmaxz組成的最優路徑,其中的最優解是全局的最優解的一部分,因此狀態轉移方程為:
Rmax=max{max(Rmaxi,Rmaxj,Rmaxk,...,Rmaxz)+Weight(wx)}Rmax∈Route;
3)對于單詞詞典SD中未登錄的詞,通過建立HMM,即Hidden Markov Model,隱馬爾科夫模型,用于描述一個含有隱含未知參數的馬爾可夫過程,采用Viterbi路徑方法來尋找分詞結果,其方法描述如下:
給定HMM模型狀態空間,共有k個狀態,初始狀態i的概率為πi,從狀態i到狀態j的轉移概率為ai,j;設觀察到的輸出為y1,...,yT;產生觀察結果的最有可能的狀態序列x1,...,xT由遞推關系給出:
其中Vt,k是前t個最終狀態為k的觀測結果最有可能對應的狀態序列的概率,通過保存向后指針記錄在上式中用到的狀態x可以獲得Viterbi路徑,聲明一個函數Ptr(k,t),若它返回t>1時計算Vt,k用到的x值,或若t=1時的k,則有:
通過對中文詞匯按照BMES四個狀態來進行標記,B是begin開始位置,M是middle中間位置,E是end結束位置,S是single單獨成詞的位置;通過構建的HMM模型對大量語料進行訓練后,依靠Viterbi路徑方法就可以得到一個概率最大的BMES序列,基于這個序列對句子結構進行重新組合,即可得到分詞結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于哈爾濱工業大學,未經哈爾濱工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811153438.8/1.html,轉載請聲明來源鉆瓜專利網。





