欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

文本數(shù)據(jù)定向搜索方法與流程

文檔序號:11830589閱讀:752來源:國知局
本發(fā)明涉及數(shù)據(jù)搜索,特別涉及一種文本數(shù)據(jù)定向搜索方法。
背景技術(shù)
:隨著互聯(lián)網(wǎng)的發(fā)展,搜索引擎要處理的數(shù)據(jù)量越來越大,對搜索引擎的性能要求越來越高。高效的針對用戶的搜索詞,可以挖掘出一些潛在的用戶意圖,其中根據(jù)搜索詞的分類可以得知用戶想搜索到哪個領(lǐng)域的結(jié)果,針對用戶意圖及這個領(lǐng)域的特點可以給用戶推薦滿足用戶需求的應用,來優(yōu)化搜索結(jié)果。為了提高信息檢索效率,信息檢索系統(tǒng)一般都采用基于云的并行計算平臺和索引技術(shù)。索引的結(jié)構(gòu)設計、存儲方式、檢索操作和動態(tài)更新算法對信息檢索的效率有很大的影響。然而,現(xiàn)有技術(shù)的搜索引擎對搜索詞的處理不夠完善,沒有特別對用戶意圖進行有效預測。并且在索引處理上,索引的添加需要將新增的記錄與原有的索引的相同項合并。在HDFS中這項操作需要重新創(chuàng)建塊。每個DataNode上的副本信息也需要更新。而且在索引中的刪除內(nèi)容只能刪除整個塊,并產(chǎn)生大量的I/O通信,浪費大量的時間和資源。技術(shù)實現(xiàn)要素:為解決上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明提出了一種文本數(shù)據(jù)定向搜索方法,包括:使用預先訓練的分類器對用戶輸入的檢索詞的擴充文本進行分類,將分類結(jié)果發(fā)送給應用系統(tǒng),通過反饋訓練來調(diào)整分類器,識別檢索詞的屬性和用戶意圖并將檢索結(jié)果呈現(xiàn)到搜索引擎中。優(yōu)選地,所述應用系統(tǒng)包括:Web服務器,調(diào)用各個服務,將數(shù)據(jù)進行聚集,最終與頁面樣式進行整合;緩存服務器,將更新頻率低的信息存儲在緩存服務器中;屬性識別服務,識別出子類別及用戶意圖,選擇適合于用戶需求的應用模板;分領(lǐng)域資源庫,根據(jù)不同的領(lǐng)域,建立自己的資源庫;數(shù)據(jù)庫:采用主庫和從庫的結(jié)構(gòu),主庫負責寫入,從庫負責讀取,實現(xiàn)讀寫分離,主庫之間需要同步,從庫也要與主庫的數(shù)據(jù)保持同步;檢索服務器:當檢索是帶有一定條件,或有排序的需求時,使用索引根據(jù)檢索條件得到結(jié)果。優(yōu)選地,所述對用戶輸入的檢索詞的擴充文本進行分類,進一步包括,將檢索詞擴充為搜索引擎結(jié)果中的前k條摘要信息,k為擴充后的詞條數(shù),將擴充文本的分類結(jié)果作為原搜索文本的分類結(jié)果;在檢索詞預處理階段,用向量的形式存儲詞條,丟棄廣告、圖片、Web應用結(jié)果,過濾網(wǎng)頁標簽,提取前k條摘要為文本的擴充結(jié)果,然后對擴充文本進行預處理,預處理包括分詞、丟棄停用詞,每個摘要作為一個文檔,包含特征項集合;在訓練階段,根據(jù)訓練集中的文本的擴充信息,進行特征選擇、特征加權(quán)、建立分類器,具體包括將訓練集中的檢索詞擴充為在檢索詞預處理階段中獲取到的該檢索詞的擴充文本;利用特征選擇方法選擇代表性特征項,將特征項進行降維,使用逆向詞頻方法進行特征加權(quán),最后使用文本分類的方法建立分類器;得到的結(jié)果為該檢索詞的分類;其中分類器通過反饋訓練來調(diào)整,分類器判斷一個文本屬于哪個分類的同時,給出一個可信度,如果該值低于閾值,則記錄到反饋訓練的數(shù)據(jù)文本集;通過分析用戶行為日志,獲取點擊量小于預定點擊量閾值的Web應用對應的檢索詞,將這些詞也記錄到反饋訓練的數(shù)據(jù)文本集中,然后人工進行篩選、標注,將一部分高訪問量的檢索詞直接放入高頻詞表中,下一次搜索的時候先與高頻詞表中的詞進行匹配,一部分作為學習反饋的最終數(shù)據(jù);依次對比訓練分類器中的向量與原分類器中向量的近似度,如果相似,就刪除原分類器中的這條向量,用新向量替代,如果沒有找到相似的向量,就添加到新的分類器向量中。本發(fā)明相比現(xiàn)有技術(shù),具有以下優(yōu)點:本發(fā)明提出了一種文本數(shù)據(jù)定向搜索方法,利用搜索詞的特征表示理解用戶意圖,并通過改進的索引機制提高了搜索引擎的效率,增強了用戶體驗。附圖說明圖1是根據(jù)本發(fā)明實施例的文本數(shù)據(jù)定向搜索方法的流程圖。具體實施方式下文與圖示本發(fā)明原理的附圖一起提供對本發(fā)明一個或者多個實施例的詳細描述。結(jié)合這樣的實施例描述本發(fā)明,但是本發(fā)明不限于任何實施例。本發(fā)明的范圍僅由權(quán)利要求書限定,并且本發(fā)明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節(jié)以便提供對本發(fā)明的透徹理解。出于示例的目的而提供這些細節(jié),并且無這些具體細節(jié)中的一些或者所有細節(jié)也可以根據(jù)權(quán)利要求書實現(xiàn)本發(fā)明。本發(fā)明的一方面提供了一種文本數(shù)據(jù)定向搜索方法。圖1是根據(jù)本發(fā)明實施例的文本數(shù)據(jù)定向搜索方法流程圖。本發(fā)明根據(jù)用戶輸入的檢索詞,使用預先訓練好的分類器對檢索詞的擴充文本進行分類,將分類結(jié)果發(fā)送給應用系統(tǒng),識別檢索詞的屬性和用戶意圖,獲得模板和數(shù)據(jù),再以Web應用的形式呈現(xiàn)到搜索引擎中。所述應用系統(tǒng)包括:代理服務器,保護內(nèi)部系統(tǒng)端口不對外暴露,并且支持高并發(fā)、負載均衡,也有助于提高訪問速度。Web服務器:采用MVC的架構(gòu),調(diào)用各個服務,將數(shù)據(jù)進行聚集,最終與頁面樣式進行整合。緩存服務器:將一些更新頻率低的信息存儲在緩存服務器中,而不需要反復檢索數(shù)據(jù)庫,緩解數(shù)據(jù)庫的壓力。屬性識別服務:識別出子類別及用戶意圖,來選擇適合于用戶需求的應用模板。分領(lǐng)域資源庫:根據(jù)不同的領(lǐng)域,建立自己的資源庫。數(shù)據(jù)庫:采用主庫和從庫的結(jié)構(gòu),主庫負責寫入,從庫負責讀取,實現(xiàn)讀寫分離。另外主庫之間需要同步,從庫也要與主庫的數(shù)據(jù)保持同步。檢索服務器:當檢索是帶有一定條件,或有排序的需求時,使用索引的技術(shù)來快速根據(jù)檢索條件得到結(jié)果。針對檢索詞的分類,本發(fā)明利用搜索引擎對檢索詞進行文本擴充,將檢索詞擴充為搜索引擎結(jié)果中的前k條摘要信息,k為擴充后的詞條數(shù),將擴充文本的分類結(jié)果作為原搜索文本的分類結(jié)果。在檢索詞預處理階段,是將檢索詞進行擴充,用向量的形式存儲,丟棄廣告、圖片、Web應用等信息量較少的結(jié)果,過濾網(wǎng)頁標簽,提取前k條摘要為文本的擴充結(jié)果,然后對擴充文本進行預處理,預處理分為分詞、丟棄停用詞。每個摘要,即一個文檔,里面包含的是特征項集合,將它用向量來表示。然后在訓練階段,根據(jù)訓練集中的文本的擴充信息,進行特征選擇、特征加權(quán)、建立分類器。具體包括將訓練集中的檢索詞擴充為在檢索詞預處理階段中獲取到的該檢索詞的擴充文本。利用特征選擇方法選擇代表性特征項,將大數(shù)量級的特征項降維,使用本發(fā)明改進的適用于文本分類的改進逆向詞頻方法進行特征加權(quán),最后使用文本分類的方法建立分類器,供測試階段使用。在分類階段,將待分類的檢索詞進行分類。具體包括先將待分類檢索詞擴充為擴充文本,然后利用在訓練階段提取出來的特征進行降維,用特征加權(quán)方法將特征用向量表示,最后利用訓練階段優(yōu)化好的分類器對擴充信息的特征向量進行分類,得到的結(jié)果為該檢索詞的分類。通過反饋訓練的算法調(diào)整分類器模型。分類器判斷一個文本屬于哪個分類的同時,給出一個可信度,如果該值低于閾值,則判定它的可信度不高,會記錄到反饋訓練的數(shù)據(jù)文本集。通過大數(shù)據(jù)平臺離線分析用戶行為日志,獲取點擊量小于預定點擊量閾值的Web應用對應的檢索詞,將這些詞也記錄到反饋訓練的數(shù)據(jù)文本集當中。然后人工進行篩選、標注,將一部分高訪問量的檢索詞直接放入高頻詞表中,下一次搜索的時候會先與高頻詞表中的詞進行匹配,一部分作為學習反饋的最終數(shù)據(jù)。依次對比訓練分類器中的向量與原分類器中向量的近似度,如果相似,就刪除原分類器中的這條向量,用新向量替代,如果沒有找到相似的向量,就添加到新的分類器向量中。其中利用訓練階段優(yōu)化好的分類器對擴充信息的特征向量進行文本分類,進一步分為文本向量逆向詞頻建立和計算近似度矩陣。本發(fā)明結(jié)合分詞特性與結(jié)合領(lǐng)域知識的語義權(quán)值,在所有的DataNode均部署分詞工具包,在分詞后獲得文本的檢索詞以及該檢索詞在本文檔的出現(xiàn)次數(shù),以統(tǒng)計詞頻,掃描領(lǐng)域知識庫,計算出該詞的位置權(quán)值和語義跨度權(quán)值,再在第一個Map階段調(diào)用語義近似度函數(shù)進行統(tǒng)計。然后,在Reduce階段計算每個詞的逆向詞頻,將這些信息輸出為第二個MapReduce的輸入。在第二個Map階段,計算語義近似度結(jié)果,如果近似度大于預設語義閾值,則返回語義權(quán)值,否則不加權(quán),再組合所有的權(quán)值,得到最終語義權(quán)值。第二個Reduce階段,對向量規(guī)格化處理。對于每一個文本,只需要計算編號大于自己文本的近似度,即可計算出整個矩陣。MapReduce環(huán)境下并行化設計方案如下:Map階段:首先進行數(shù)據(jù)分割,將分割的數(shù)據(jù)由NameNode分配給DataNode,同時給DataNode編號,同時計算文本的近似度,當Map階段結(jié)束后,將中間結(jié)果輸出到本地作為Reduce階段的輸入;Reduce階段:收集每一行的數(shù)據(jù),并且匯總輸出矩陣。然后采用優(yōu)化劃片的輸入方式,將高維矩陣分塊成小矩陣運算。Map階段進行數(shù)據(jù)劃片,根據(jù)劃片偏移信息讀取子矩陣A和B在本地做乘法,結(jié)果為矩陣C的一個子矩陣,輸出到指定偏移位置。Reduce階段計算矩陣C=AB。將對稱矩陣通過正交相似變換表示成對稱三對角矩陣。求解對稱三對角矩陣的前K個最小特征向量,將對稱三對角矩陣的運算最終轉(zhuǎn)化為拉普拉斯矩陣與向量的相乘運算。得到矩陣的最小特征值和特征向量后,計算每個文本到某一集合的近似度。在索引結(jié)構(gòu)的改進方面,本發(fā)明的索引結(jié)構(gòu)包括基本索引、增量索引、差分索引和詞庫。根據(jù)上述結(jié)構(gòu),采用基于詞頻大小和詞頻排序的文件存儲策略,以及項中數(shù)據(jù)的壓縮編碼。針對上述索引結(jié)構(gòu),設計了在云平臺下進行相應的索引建立、更新、刪除和檢索。索引結(jié)構(gòu)由運行在HDFS的NameNode上的增量索引、差分索引以及詞庫和運行于DataNode上的基本索引構(gòu)成。基本索引由多個文檔組成。文檔由多個索引項構(gòu)成。每個索引項包含一個檢索詞和多個文件列表。文件列表由文件ID和該檢索詞在這個文檔中出現(xiàn)的次數(shù)和位置信息構(gòu)成。文件保存在HDFS中,被分塊后存儲于集群中不同的DataNode。差分索引保存在HDFS的NameNode上。無效文檔列表記錄所有文檔庫中要被刪除的文檔ID,響應檢索請求時,系統(tǒng)根據(jù)該列表,從檢索結(jié)果中過濾掉該列表中的所有ID對應的文件。差分索引在文檔庫中有文件被刪除時生成。到差分索引文件達到一定閾值時,系統(tǒng)根據(jù)該索引文件更新基本索引。增量索引運行在HDFS的各個DataNode上,用于保存新增的索引項。當文件庫中有新增文件時,由該文件生成一條獨立索引。獨立索引用于記錄一個文檔中出現(xiàn)的所有檢索詞在該文檔中出現(xiàn)的信息。當獨立索引的數(shù)量到達一定的閾值,會觸發(fā)合并過程,將所有獨立索引合并為一個整體,即一個增量索引。當增量索引的數(shù)量達到一定閾值時,也會觸發(fā)合并操作,將多個增量索引合并到基本索引中。索引結(jié)構(gòu)中,將詞庫中的詞按頻率劃分為高頻詞和低頻詞,對不同頻率的詞采用不同的方式存儲在HDFS的NameNode內(nèi)存中,以散列表的形式組織。對于高頻詞,每個詞用一個獨立的文件保存其索引,對于低頻詞,將多個檢索詞的表保存到同一個文件中。通過散列函數(shù)將每一個高頻詞的索引信息映射到獨立的文件中,并將多個低頻詞的索引信息映射到一個文件中。檢索時,根據(jù)詞的頻率屬性,采用不同的方式進行分布式檢索。索引項的結(jié)構(gòu)如下:<wordid,docnum,<docid,freq,<p1,p2,...,pn>>,...,<docid,freq,<p1,p2,...pn>>>Wordid表示檢索詞,docnum代表檢索詞wordid在docnum個文檔中出現(xiàn)過。后面為docnum個Doclist,每個Doclist表示wordid在一個文件中出現(xiàn)的次數(shù)和位置信息。Docid代表該檢索詞出現(xiàn)的一個文件編號,freq表示檢索詞在這個文件中出現(xiàn)的次數(shù),隨后是一個長度為freq的列表,表示檢索詞每次出現(xiàn)的位置信息。上述結(jié)構(gòu)中存在兩個遞增的列表:遞增的文檔ID號:(doc1,doc2,doc3,...,docn)。遞增的位置信息序列:(p1,p2,p3,...,pn)。保留序列中的第一項,后面的每一項用它與前一項的差值來代替。處理之后的序列如下:文檔ID差值序列:(doc1,doc2-doc1,doc3-doc2...,docn-docn-1)?!獋€文件中位置差值序列:(p1,p2-p1,p3-p2...,pn-pn-1)。變換處理后的序列,樣本空間縮小并能使用更高效的壓縮方法。當搜索引擎抓取到一定數(shù)量的網(wǎng)頁本地文本庫之后,需要建立初始索引。建立索引前,需要對抓取的文本文件進行預處理,最重要的一步即是分詞處理。建立索引的基本過程描述如下:步驟l.首先對抓取到的文本進行分詞,然后將分詞后的文件存放到HDFS的各個DataNode中。步驟2.接著創(chuàng)建一個MapReduce的作業(yè)處理器,負責控制建立作業(yè)的執(zhí)行。步驟3.作業(yè)處理器根據(jù)情況創(chuàng)建map任務,map任務運行在DataNode上,每個分塊中的文檔分別進行處理,產(chǎn)生中間文件。步驟4.map任務執(zhí)行完后,多個reduce任務開始執(zhí)行,將map任務產(chǎn)生的中間文件合并,生成索引文件。步驟5.根據(jù)檢索詞的頻率屬性和在詞庫中的詞頻排序,采用以下散列函數(shù),將不同的檢索詞的索引保存到不同文件。所述散列函數(shù)表示為SHA1(f(r)),將低頻詞的頻率排序作為函數(shù)的輸入,輸出保存該詞索引的文件名。r是該檢索詞在詞庫中詞頻排序,f(r)將多個檢索詞根據(jù)詞頻排序映射到一個正整數(shù)值,表達為:f(r)=r-r%(10*α)N<r≤10Nr-r%(20*α)10N<r≤50Nr-r%(40*α)50N<r]]>N是一個閾值,表示在詞庫中,排序大于N的檢索詞屬于低頻詞,排序小于或等于N的詞是高頻詞。其中α為預定義正實數(shù)參數(shù)。在搜索引擎不斷爬取互聯(lián)網(wǎng)信息時,索引更新過程如下:當文本庫中的新增文本達到一定數(shù)量時,觸發(fā)系統(tǒng)調(diào)用對文本分析生成一定數(shù)量的獨立增量索引,獨立增量索引保存于內(nèi)存中。當內(nèi)存中的獨立增量索引增加到一定數(shù)量時,觸發(fā)獨立增量索引合并程序,將相同檢索詞的多項索引合并為一項,保存到相應的增量索引文件中去。當增量索引文件達到一定的數(shù)量,觸發(fā)主文件合并程序。其中,生成單一增量索引的操作由網(wǎng)絡爬蟲觸發(fā),對網(wǎng)絡爬蟲系統(tǒng)新添加的文本進行分析,生成該文本中所有檢索詞的項。該操作以MapReduce的方式運行在HDFS中的不同DataNode上,盡量滿足數(shù)據(jù)本地化,生成的單一增量索引分布在不同的DataNode上。增量索引合并操作由生成單一增量索引的操作觸發(fā)。當一個DataNode內(nèi)存上的數(shù)據(jù)達到閾值,該操作會將單一增量索引合并到HDFS中的增量索引文件。檢索詞與增量索引文件名的映射關(guān)系同樣由上述散列函數(shù)來完成。增量索引與基本索引的合并操作由單一增量索引和增量索引合并操作觸發(fā)。本發(fā)明進行信息刪除的策略是基于差分索引的。增量索引合并時觸發(fā)刪除操作的閾值P1定義如下:P1=N1/N2N1表示增量索引含有的被刪除文檔個數(shù),N2為差分索引中無效文檔列表中元素個數(shù)。增量索引與基本索引的合并時觸發(fā)刪除操作的閾值P2定義如下:P2=N1/N3N1同樣是差分索引中無效文檔列表中元素個數(shù)。N3是文檔集中所有文檔數(shù)。當增量索引合并操作發(fā)生時,先判斷是否達到閾值P1。如果達到,首先從差分索引文件中讀取所有的差分索引,將增量索引中所有包含這些差分索引的信息刪除,然后再合并到基本索引。如果沒有達到閾值,就直接合并到基本索引。合并到基本索引以后,再判斷是否達到閾值P2。如果達到,就將基本索引信息中刪除所有差分索引中的信息。這樣,系統(tǒng)響應檢索請求時,先從基本索引和增量索引信息獲取檢索結(jié)果,再根據(jù)刪除文檔中的無效文檔列表過濾掉已經(jīng)被刪除了的文檔信息。當某個時間段的差分索引用來更新了增量索引和基本索引中的所有信息后,就將該時間段的差分索引從文件中刪掉并將該事件段刪除的所有文檔ID從無效文檔列表中刪除。索引的檢索是搜索引擎系統(tǒng)響應檢索請求的關(guān)鍵操作。搜索引擎收到檢索請求后,對輸入的檢索詞信息進行分析處理,然后用處理后的檢索詞來對索引進行檢索。操作步驟描述如下:步驟l.用檢索詞檢索詞庫。先根據(jù)散列函數(shù)獲取到該檢索詞基本信息在內(nèi)存中的位置,然后讀取到基本信息。判斷詞庫中基本信息的高低頻字段。如果是高頻詞,轉(zhuǎn)到步驟2,如果是低頻詞,則轉(zhuǎn)到步驟3。步驟2.調(diào)用散列函數(shù)將檢索詞作為輸入,得到保存該檢索詞索引的文件名。步驟3.調(diào)用散列函數(shù),將檢索詞的詞頻排序信息作為函數(shù)輸入,得到保存該檢索詞索引的文件名。步驟4.根據(jù)得到的HDFS的文件名,對基本索引進行檢索。首先創(chuàng)建任務管理器,執(zhí)行MapReduce任務,在系統(tǒng)的各個DataNode上分別運行一定數(shù)量的Map任務和Reduce任務。Map任務處理文件在本地的分塊數(shù)據(jù),從中獲取到數(shù)據(jù)項,保存為中間數(shù)據(jù)。然后傳遞給Reduce任務進行合并處理。Reduce任務的輸出即為檢索的初始結(jié)果。步驟5.用與步驟4相同的方法,對增量索引文件進行MapReduce檢索,查到的結(jié)果與上一步得到的初始結(jié)果合并。步驟6.從內(nèi)存中檢索獨立增量索引,檢索結(jié)果與上一步得到的結(jié)果合并。步驟7.檢索NameNode中的差分索引,根據(jù)無效文檔列表,對上一步得到的結(jié)果進行過濾處理。步驟8.將得到的所有文檔列表通過預定義算法進行排序。步驟9.返回排序后的結(jié)果。綜上所述,本發(fā)明提出了一種文本數(shù)據(jù)定向搜索方法,利用搜索詞的特征表示理解用戶意圖,并通過改進的索引機制提高了搜索引擎的效率,增強了用戶體驗。顯然,本領(lǐng)域的技術(shù)人員應該理解,上述的本發(fā)明的各模塊或各步驟可以用通用的計算系統(tǒng)來實現(xiàn),它們可以集中在單個的計算系統(tǒng)上,或者分布在多個計算系統(tǒng)所組成的網(wǎng)絡上,可選地,它們可以用計算系統(tǒng)可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲系統(tǒng)中由計算系統(tǒng)來執(zhí)行。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。應當理解的是,本發(fā)明的上述具體實施方式僅僅用于示例性說明或解釋本發(fā)明的原理,而不構(gòu)成對本發(fā)明的限制。因此,在不偏離本發(fā)明的精神和范圍的情況下所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。此外,本發(fā)明所附權(quán)利要求旨在涵蓋落入所附權(quán)利要求范圍和邊界、或者這種范圍和邊界的等同形式內(nèi)的全部變化和修改例。當前第1頁1 2 3 
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
海盐县| 康乐县| 隆化县| 湘西| 洛扎县| 永德县| 介休市| 北安市| 岑巩县| 望都县| 青海省| 内江市| 麻栗坡县| 新兴县| 吉木萨尔县| 独山县| 晋中市| 永新县| 栖霞市| 汉中市| 利津县| 花垣县| 剑阁县| 南安市| 武陟县| 西贡区| 永城市| 隆尧县| 贡觉县| 益阳市| 罗定市| 元氏县| 宁明县| 徐州市| 祁门县| 平昌县| 天门市| 松原市| 石城县| 息烽县| 广汉市|