劉 琦 李 翔(共同第一作者)
(知識產權出版社有限責任公司- 知識挖掘與服務重點實驗室,北京100081)
對于專利查新檢索來說,其最終的目的便是依照檢索人員給出的查詢返回與此查詢相關的專利文本集合,并將這個文本集合按照相關性降序排序后返回給用戶使用。在此過程中,排序這一環節對于決定一個搜索引擎的效果來說是至關重要而又意義重大,它直接能夠影響搜索引擎的效果以及審查員用戶的滿意程度。目前,越來越多的人工智能技術運用于專利檢索技術,其形成的智能檢索引擎相對于傳統的全文文本檢索引擎,更能模仿檢索人員的檢索理念,通過對待檢專利的理解,抽取關鍵信息,并進行語義擴展,從而一定程度上提高了專利文獻的檢準率和檢全率,然而單一智能引擎的局限性較大,通過研究評測,發現不同的引擎對于特定的檢索案例會有較好的表現,但是對于另一批案例卻未必如此。每個引擎很難做到覆蓋全面,在所有領域超出其他引擎。因此,本文研究了多個智能引擎整合的策略,使用多引擎結果的互相補充、確定和重調序,可以使得結果更為準確,整體效果在單一的引擎基礎上穩定提升。
多引擎策略整體分為兩個階段:第一階段,是使用多個相對簡單的常用專利檢索模型對用戶query 從索引中快速檢索出Top-k 候選結果集。常用檢索模型主要有向量空間模型(Vector Space Model)、布爾模型(Boolean Model)、概率檢索模型BM25等,通常Top-k 的候選集選取還結合離線計算質量分高的文檔以排除掉文本相關但質量分太低的文檔;第二階段,則使用計算相對復雜的機器學習排序模型對Top-k 候選結果集進行精確的重排序,因為Top-K 的候選結果集數據量級一般不會很大,這一步計算可控。多引擎的整合算法,將會是本文的核心,本文中將從結果合集、排序評估,重調序策略等方面對多引擎整合算法的構建與優化過程中的進行說明。
多引擎結果合集需要有一個前提,即單引擎必須經過詳細嚴格的召回率的評測,由于篇幅問題,評測方法不在這里詳細描述。評測的目的是對引擎有明確的了解,需確認如下信息:
1.1 引擎達到相對最優召回率,所需的檢索結果集合數量。理論來說,常規智能搜索引擎,結果條數選取越多,則召回率越高,但是當結果條數突破一定數量之后,召回率的提升速度將會大幅度放緩。多引擎整合策略中,不可能無限制的從各個引擎選取太多的結果進行整合。因此需要通過評測,尋找到召回率相對最佳的臨界點,在多引擎整合的時候,使用該臨界點提取結果集。
1.2 引擎擅長的領域或者檢索方面。不同的引擎有不同的側重方面。有些引擎可能擅長于生物領域,有些可能擅長于機械領域。有些引擎在跨語言智能檢索方面有優勢,有些可能擅長與中文檢索。有些引擎可能在X 類對比文獻的召回方面有優勢,有些引擎則擅長尋找Y 類對文獻。因此需要通過評測,定位各個引擎的優勢點,為多引擎整合提供依據。
多引擎結果合集,也需要對各引擎的輸出進行規范化約定:a.各引擎輸出自己的前N 個結果。這里的N,就是在評測中得到的最優召回率臨界點。b.每個引擎在自己的結果提交中,使用專利申請號作為關聯標識進行結果提交。c.每個引擎需提交結果的申請號單,以及結果集中每件專利的相似度排序以及相似度值(相似度值需是數字,并且做歸一化處理);多引擎結果合集最終選擇各個引擎的結果集的并集,去重后作為多引擎整合調序的對象集合。
本次實驗中,針對多引擎結果合集的整合和重新調序,提出了三種調序策略,以及一套調序策略綜合方案。
該調序策略的主要思路是,充分利用各個引擎的結果及排序,使用各結果集的相關度排序結果進行多重確定,將其結果的相似度數值進行線性加合,得到多重確定的專利結果集。首先是“主- 副”引擎的選定,之所以需要進行這個操作,基本原因在于兩點。單引擎評測時,多個引擎的評測水平可能出現較大差異,我們需要定下線性整合時的權重,權重需更加偏向于效果最好的引擎,從而保證可以得到在最好的單引擎基礎上的更好的檢索結果。而不至于讓相對質量較差的引擎“拖后腿”。“主-副”引擎的模式,可以在不同的檢索側重領域靈活變化,以適應各個引擎的優勢。在“主- 副”引擎選定的基礎上,可以進行如下的調序操作:a.主副引擎檢索結果求并集。假設并集數量為M(本課題實驗環境下,雙引擎結果并集數量為總結果合集的10%左右);b. 將并集結果作為新結果集的前M件專利結果,使用這M件專利在主引擎中的排序作為最終排序;c. 剩余集合,采用A*主引擎相似度+(b1*副引擎1 相似度+ b2*副引擎2相似度+……+ bn*副引擎n 相似度)的方式,加權多引擎相似度,并按照加權相似度進行重新排序(注意,a 要遠大于sumb);該策略屬于保守型策略,優點在于排序計算快(其計算速度相對于智能檢索環節幾乎可以忽略不計),提升穩定(肯定可以比最好的引擎提升一點)。缺點在于提升不大,可能會丟棄一些副引擎挑選出來的好專利。
多級文本聚類策略,完全摒棄了單引擎提供的相似度排序信息,而使用獨立策略進行重新整合調蓄。它的基本操作如下:
a.對多引擎檢索結果合集進行特征抽取(可以使用智能檢索環節的抽取結果);b.將待檢專利加入結果合集;c.對步驟2 的集合進行多次控制類別數量的文本聚類,聚類的類別(轉下頁)數量從2 開始,成等差數列,至結果集專利數/5 為止(等差數列的間隔可以自行選擇,本課題實驗環境下為10);d.記錄每一次聚類的結果。在每一次結果中,與待檢專利聚為一類的專利記分為1,否則記0。e.多級聚類完畢后,累加每一件專利的積分;f.使用積分進行重新排序(若專利重分,可以使用多引擎相似度線性加成進行細排序)多級聚類策略的優點,在于進行了重新的語義抽取和排序,完全不受前一個環節檢索結果的影響。它的智能抽取細化程度可以遠遠超出智能檢索環節。例如智能檢索環節的語義要素抽取,最多至50 個就會影響檢索策略了,但聚類環節可以到數千個。這樣,語義特征就更加細致,其聚類結果可能能夠更準確的表征語義相關度。該策略的缺點,在于多重聚類的耗時非常的長,有可能大幅度降低智能檢索的效率。
“神經網絡”分類策略是將排序問題轉化成為了分類問題,使用一個訓練過的神經網絡分類器,對專利進行二元分類(是X類文獻,不是X 類文獻),將其分類結果,按照分類傾向性進行排序。其基本操作流程是:a.使用審查員歷史審查數據中的X 類對比文獻和待檢專利,作為訓練數據,對一個神經網絡模型進行訓練(本課題使用的為CNN 卷積神經網絡);b.將待檢專利作為輸入,輸入到訓練好的神經網絡模型中,輸出它的分類結果。c.使用分類結果進行排序(X 類文獻在前)。
“神經網絡”分類策略的優點在于:a.速度快。雖然神經網絡模型的訓練需要耗費大量時間,但是一旦訓練完成,在實際檢索運算中,計算速度是非常快的。b.帶有自學習能力。神經網絡模型可以通過過往檢索人員的檢索結果,學習訓練自己的分類模型。這使得整個系統是在不斷改進提升。c.對歷史數據的擬合非常的好。在訓練集合足夠大的基礎上,對以前檢索人員檢索結果的擬合可以達到其他智能引擎不能比擬的程度。但是在本次實驗研究有限時間內,神經網絡分類策略的結果并不好,究其原因在于:a.訓練集合嚴重不足。本研究時間有限,僅使用了數千篇專利作為訓練集,遠遠不夠。但即便是2010 年以后公布的所有帶X 類對比文獻的專利,總量也僅有數十萬。該數量對于深度訓練是有些不足的。b.分類任務的描述設定存在局限性。本次研究之所以將分類任務設定為二元分類(是X 類對比文獻,不是X 類對比文獻),是因為X 類文獻相對于非對比文獻,有著較為明確的差異,而且所需訓練集少,工作量可以接受。但這個任務假設過于簡單,對于專利查詢結果的各類情況考慮不足,可能導致訓練集合永遠無法擬合。
本節提出了三種整合調序策略,其實隨著研究的深入,還會有更多的可用調序策略。每個策略都會有其優點和局限性。又會引發一個“老”問題:我們是在這些策略中選擇一個?還是有辦法綜合評價?從本次實驗研究的結果來看,顯然還是綜合評價會得到較好的結果。但由于時間有限,沒能在這個基礎上再進行進一步的研究。不過可以提出一個思路,給后續的研究者。a.將調序算法n 得到的排序,進行排序的歸一化處理,某一件專利在調序算法n 下的排序分值為Xn=(集合總數- 排名)/集合總數。b.設定權重值A1、A2、……An;c.求Y=A1×X1+ A2×X2+…..+ An×Xn;d.使用Y 值做最終的排序。可見,這仍然延續了多引擎策略的思路,多策略結果整合。