<big id="xhu2w"><strong id="xhu2w"></strong></big>

    1. <acronym id="xhu2w"><form id="xhu2w"><address id="xhu2w"></address></form></acronym>
      <code id="xhu2w"></code>
      論文發表 | 論文范文 | 公文范文
      最新公告:目前,本站已經取得了出版物經營許可證 、音像制品許可證,協助雜志社進行初步審稿、征稿工作。咨詢:400-675-1600
      您現在的位置: 新晨范文網 >> 專題欄目 >> 綜合材料 >> 專題綜合范文 >> 正文

      期刊論文的搜索技術研究與設計

      定制服務

      定制原創材料,由寫作老師24小時內創作完成,僅供客戶你一人參考學習,無后顧之憂。

      發表論文

      根據客戶的需要,將論文發表在指定類別的期刊,只收50%定金,確定發表通過后再付余款。

      加入會員

      申請成為本站會員,可以享受經理回訪等更17項優惠服務,更可以固定你喜歡的寫作老師。

      摘要:為了解決期刊論文的大量存儲、PDF文本解析、無法快速準確搜索等問題,文章首先使用HDFS分布式系統存儲大量期刊論文,其次采用PDF抽取技術將非純文本格式的PDF期刊轉換為純文本格式,然后分析比較主流中文分詞器,最后采用倒排索引、分布式索引和優化相關度排序算法等,分析并設計了一個面向期刊論文的搜索引擎。實驗結果表明,本文有效的解決大量論文的存儲和訪問,縮短建立索引時間,提高了搜索結果的準確性。

      關鍵詞:HDFS;信息抽取;倒排索引;分布式索引;相關度排序算法

      0引言

      隨著信息技術的發展,期刊論文的數量正在快速增長。據統計,2014年SCI數據庫收錄世界科技論文多達176萬篇。Scopus數據庫收錄的世界科技文獻多達260萬篇[1]。其他的期刊論文數據庫收錄的論文更是不計其數,如何建立一個存儲大量論文的資源庫并能快速從中獲取有用的信息變得非常困難。本文圍繞這一問題,分析設計出期刊論文的專業搜索引擎。采用HDFS存儲大量期刊論文,通過PDF文本抽取技術將期刊論文轉化為純文本信息。再使用Lucene開源技術,先對期刊論文進行數據處理,然后采用分詞和索引技術建立論文索引庫,最后通過搜索技術對索引庫進行搜索并采用優化的相關度排序算法對檢索結果進行排序。

      1搜索引擎與相關技術

      1.1Lucene系統與源碼架構

      Lucene是開源框架,具有高性能和可擴展性,提供很多功能強大的API,比如查詢分析、索引管理和檢索結果等。①lucene.analysis語言分析器,用于切詞。②lucene.document文檔結構管理,與關系型數據庫的表結構類似,在索引階段使用。Document包含索引存儲的基本單元:Document,Field等。③lucene.index索引管理,用于索引建立和刪除。index是最重要的包,用于向Lucene提供建立索引時各種操作的支持,對切分出來的詞建索引,查詢時只需查詢索引文件,不需查詢正文,索引極大的提高搜索效率。④lucene.queryParser查詢分析器,用于查詢項之間的關鍵詞間的與、或、非運算,并把查詢語句轉化成索引可以理解的語句。⑤lucene.search檢索管理,通過查詢項搜索結果。⑥lucene.store數據存儲管理,包括底層的I/0讀寫操作。⑦lucene.util公用工具類,包含公用的方法和經過優化的數據結構[3]。

      1.2HDFS分布式文件系統

      Hadoop分布式文件系統是HadoopDistributedFileSystem(簡稱HDFS),具有高度容錯性和可靠性,非常適合部署在大量廉價的機器上,用于大數據的存儲和訪問。HDFS是主從結構,包含一個名節點(Namenode)和多個數據節點(Datanode),每一個文件都會按照塊(Block)存儲在數據節點上,如圖2是HDFS的系統結構圖。Namenode:用于管理文件命名空間和客戶端對文件的訪問,同時保存文件系統樹、樹內所有文件的索引目錄、記錄文件所在具體Datanode的某個Block上的信息;Datanode:通常對應一個機器用來管理對應的文件存儲,并定時向Namenode發送Block存儲列表。Block:是數據存儲的邏輯單元,默認大小是64MB,如果一個文件大于64MB,就會被分為多個Block,一個Block也會包含多個文件。每個Block默認會拷貝3個副本分別存儲在3個不同的Datanode上,這樣保證數據高容錯性和可靠性。

      1.3搜索引擎架構

      采用技術包含:分布式存儲、PDF信息抽取、分詞器、倒排索引、分布式索引、搜索和優化的相關度排序算法。期刊論文搜索引擎的主要功能模塊如下:①HDFS存儲:對大量的期刊論文數據采用HDFS存儲,解決海量存儲和快速訪問。②論文信息抽取:對期刊論文信息進行標準化為可以直接分詞的純文本,并保存TXT和PDF的對應關系表。③分詞器:對抽取后的文本信息進行分詞,使用最適合的分詞器進行分詞,保證分詞結果更準確,分詞完成后保存到本地文件里。④索引模塊:對分詞后的本地文件通過索引模塊創建索引,生成待搜索的索引文件,由于索引時間太長,本文采用分布式索引縮短索引耗時。⑤搜索模塊:針對用戶輸入的查詢詞,通過搜索模塊對索引直接搜索,并將搜索結果通過相關度排序顯示給用戶。當顯示詳細信息,通過PDF和TXT對應表找到原始文件。⑥相關度排序:采用優化的相關度排序算法對索引結果進行排序,并將排序好的檢索結果返回給用戶。

      2搜索引擎的設計與優化

      2.1PDF信息抽取與轉化期刊論文的格式是PDF,而Luene只能處理純文本和數據,因此在使用Lucene對文檔建立索引前,需要將PDF論文提取為純文本的信息。本文采用開源工具PDFBox將PDF轉化為TXT文件,通過此方法抽取后TXT文本文件保留原PDF格式信息。建立索引時,直接對轉化后TXT文件創建索引;在搜索時,通過文件名和原PDF文件一一對應的方式關聯到源文件。

      2.2分詞器的比較與選擇

      英文等西方語言按照空格來分的,Lucene自帶的分詞器能夠很好的處理,而中文字不能通過空格來分或者簡單的單個字來分。主要的中文分詞器有StandardAnalyzer、ChineseAnalyzer、CJKAnalyzer、IK_CAnalyzer、PaodingAnalyzer。接下來分別從分詞的準確性和分詞的效率上來分析這幾個分詞器。

      2.3倒排索引

      倒排索引(Invertedindex)是文檔檢索系統中最常用的數據結構,是一種以關鍵詞作為索引關鍵字和鏈表訪問入口的索引結構,用來存儲全文檢索下某個關鍵詞在一個文檔或者一組文檔中的存儲位置的映射[5]。倒排索引文件描述了詞項(terms)集合元素和文檔(docs)集合元素及對應關系的數據結構。

      2.4索引設計

      ①從論文數據庫中獲取大量論文數據,將大量的論文數據保存在HDFS系統庫里。②通過PDF解析器把期刊論文數據解析成純文本的TXT文檔對象,并保存PDF和TXT文件的對應關系表,方便查找PDF原文。③在創建索引時,設置好索引的起始和結束位置,讀取索引的TXT列表。④對文檔進行分詞時,先用PaodingAnalyzer分詞。從文本中提取本文塊也稱為語匯單元(To-ken),然后得到項Term,由Term生成Filed的對象。⑤將Field對象添加到Document中,生成Docu-ment對象。⑥調用IndexWriter類的addDocument(),把Document對象加入索引。⑦創建Directory類的對象,把索引存儲在Di-rectory上。⑧由IndexWriter執行close()結束索引創建過程并保存本次索引的起始和結束位置。

      2.5檢索設計

      針對上面的索引,通過輸入查詢關鍵詞,直接對索引內容進行快速搜索。①對用戶輸入的查詢關鍵詞,通過查詢分析器QueryParser進行分詞處理,QueryParser將查詢表達式轉換為Lucene的查詢類型。②生成Query查詢對象,QueryParser由分詞后的查詢關鍵詞生成的,使用MultiFieldQueryParser可以支持多個關鍵詞搜索。③通過IndexSearcher的search()對Query對象讀取索引文件,并將搜索結果返回在Hits結果集中。④采用改進的相關度排序算法對Hits結果集進行排序,并顯示結果摘要信息給用戶。⑤需要查看原文時,通過PDF和TXT文件對應表找到原文PDF直接顯示。在進行一次檢索時,首先不會全部顯示所有的結果,會將與查詢關鍵詞匹配度最高的前100條結果的ID放在一個緩存里返回給用戶,如果這100條不能滿足用戶的需求,會再次檢索,這次的緩存會比上一次大一倍。Hits結果集的對象是采用延遲加載返回結果的,所以在查詢文檔時,Hits會在內部對索引又進行一次搜索,最后才將結果返回到頁面顯示。這也是搜索引擎比較精彩的地方。

      2.6相關度排序算法以及優化

      本文采用相關度排序算法,將用戶最想看到的結果優先顯示。Lucene的相關度排序算法基本公式:score(q,d)=∑tind(tf(tind)*idf(t)2*boost(t.fieldind)*lengthNorm(t.fieldind))*coord(q,d)*queryNorm(q)該分值的計算方式為查詢語句(q)中每個項(t)與文檔(d)的匹配分值之和。它是一個大于等于0的浮點數,評分越大說明文檔和用戶的查詢越匹配,將評分高的論文排在前面。其中:tf(tind)是項頻率因子,文檔(d)中出現項(t)的頻率;idf(t)表示項(t)在倒排文檔中出現的頻率,用來衡量項的“唯一”性,出現的頻率較高的項term具有較低的idf;boost(t.fieldind)是域和文檔的加權,域加權因子的默認值是1.0;lengthNorm(t.fieldind)是域的歸一化(Normalization)值,表示域中包含項的數量,對于該因子,更少的詞匯單元能獲得更大的詞匯單元;coord(q,d)是協調因子,文檔(d)中包含查詢項(q)的個數;queryNorm(q)是歸一化參數[2]。(1)針對期刊論文這個特殊的數據源,此公式有兩點不足:①對于期刊論文檢索來說,查詢詞在一篇論文中的位置至關重要。而從上述公式以及公式的各個因子解析中發現都沒有考慮到查詢項(q)在文檔(d)中的位置因素。通常情況下論文分為三個大的部分:標題、摘要、正文。查詢項出現在標題的往往比出現在正文中要重要的多,所以查詢項在文檔中的位置因素也是影響相關度排序的重要因素之一。②論文的數量更是非常龐大,魚目混雜。比如同一專業的同一論點的幾個論文,由SC、IEEI、核心期刊收錄的論文要比一般不知名的期刊的論文要重要的多,所以每一篇期刊論文,所在的期刊也是影響相關度排序的重要因素之二。

      3實驗結果的分析與比較

      基于本文的理論分析,實驗硬件環境:IntelCoreDueCPUi52.5GHz和8GB內存;軟件環境是:JDK1.8、Tomcat8.0、Myeclipse10和Win7等,基于20萬篇期刊論文進行抽取分析,創建索引,搜索等功能。(1)在論文PDF信息抽取方面,實驗選擇了4組數據進行抽取,如表5所示,本文的抽取方法具有很好的準確率,基本在99%以上,達到實驗目的。(2)使用Lucene創建索引時,隨著數據量的增加,創建索引的耗時也隨著增加,當數據大小為19M,索引耗時約為30分鐘;當數據大小為31M,索引耗時約為1個小時。為了縮短索引時間,本文采用分布式索引技術,采用Elasticsearch將索引分片存儲,每個片段都保存了兩個副本,所以通過空間換時間的方式。如表6所示,在空間上,索引文件大小卻是原來索引文件的5倍左右,在時間上,所以耗時縮短為原來的1/20。(3)衡量搜索引擎最重要的兩個指標就是準確率和召回率。準確率(PrecisionRate)又稱為“精度”、“正確率”,是檢索出的相關文檔數與檢索出的文檔總數的比率,用來衡量檢索系統的查準率;召回率(RecallRate)又稱為“查全率”,是檢索出的相關文檔數和文檔庫中所有的相關文檔數的比率,用來衡量的是檢索系統的查全率。

      4結束語

      本文先通過分布式文件系統解決大量期刊論文的存儲和訪問,接著針對論文的數據進行數據抽取和轉化為純文本信息,然后結合分詞、索引、搜索等技術設計了一個搜索引擎系統。本文的難點有兩個:一是采用HDFS解決大量期刊論文的存儲和訪問,二是采用PDFBox對期刊論文進行抽取和轉換;本文的創新點有兩個:一是針對索引時間太長,采用分布式索引技術大大縮短了創建索引的時間,二是論文優化了相關度排序算法提高檢索的準確率。本文還分析各個分詞器優缺點,從而選取最適合本系統的分詞器。實驗表明,本文有效的解決了期刊論文文本信息抽取的問題,節省創建索引時間,提高了期刊論文搜索的準確率和召回率,用戶可以更快速準確查到期刊論文。本系統還有一些待改進的地方,如搜索效率等,將進一步研究與改進。

      參考文獻:

      [1]劉佳音.國內高校數字資源利用效能綜合評價研究[D].武漢:武漢大學,2013.

      [3]唐鐵兵,陳林,祝偉華.基于Lucene的全文檢索構建的研究與實現[J].計算機應用與軟件,2010,27(2):197-230.

      [4]張文元,周世宇,談國新.基于Lucene的地名數據庫快速檢索系統[J].計算機應用研究,2017,34(6):1756-1761.

      [5]鄭榕增,林世平.基于Lucene的中文倒排索引技術的研究[J].計算機技術與發展,2010,20(3):80-83.

      [6]趙長欣.基于數字版權唯一標示符解析系統的設計與實現[D].北京:北方工業大學,2012.

      [7]郭茂盛,張宇,劉挺.文本蘊含關系識別與知識獲取研究進展及展望[J].計算機學報,2017,4(4):889-910.

      作者:郭峰;韓云鳳 單位:北方工業大學計算機學院

      期刊論文的搜索技術研究與設計責任編輯:張雨    閱讀:人次
      按欄目篩選
      十一选五计划软件