劉 偉,楊尚偉,林晨煒,萬昀燁,陳善雄
(1.重慶摩托車(汽車)知識產權信息中心,重慶 400023;2.西南大學 計算機與信息科學學院,重慶 400715)
近年來,專利數量增長幅度較大,一個可以高效挖掘研究人員所感興趣信息的推薦算法能節省研究人員大量的時間。目前,在工業領域,專利推薦算法主要分為以下幾類:(1)基于內容的推薦[1],該推薦算法雖然易于理解,但也有無法充分利用專利文本內容的缺點。(2)基于協同過濾的算法[2],其優點為能夠挖掘出有相同偏好的數據集[3],但在數據不足的情況下時會面臨著精準度較低的問題。(3)基于模型的推薦算法,它能夠較為有效的解決數據稀疏的問題,但卻無法對廣泛的用戶需求做出實時且動態的分析處理。
為了解決上述推薦算法中的問題,本文提出了一種基于主題分類與語義相似度的專利推薦算法:通過神經網絡Bert和DBSCAN聚類方法根據專利標題和摘要獲取專利主題類別集;再結合SimNet網絡結構構建語義相似度匹配模型,并進行訓練構建模型,查找專利間的相關關系;最后在構建的模型中輸入所述興趣標簽,獲取專利文本與所述興趣標簽的相似度,并進行TOP-K推薦。整體來看,該算法充分利用專利內容和專利間的關系,提高了專利文本相似度的準確性,從而做出更為合理的專利推薦。
Bert(Bidirectional Encoder Representation from Transformers)網絡模型是谷歌于2018年10月提出的一種預訓練語言表示方法,該模型的架構是多項雙層的 Transformer編碼器,從而更好地關聯字左右兩側的上下文,并通過所有層的左、右語境預訓練深度雙向特征。Bert作為第一個用在預訓練自然語言處理上的無監督、深度雙向系統,在自然語言處理的多項任務中表現卓越。與傳統的詞向量表示模型word2vec,ELMo相比,BRT詞向量能夠根據上下文信息獲取更為豐富的詞語語義特征,能獲得更好的詞向量表示,較大地提高了如自然語言處理、機器學習、深度學習等技術任務的效果。
TF-IDF(Term Frequency-inverse Document Frequency)是一種針對關鍵詞的統計分析方法,其目的在于評估一個詞對一個文件集或者一個語料庫的重要程度[4]。TF-IDF的值與單詞在文本中出現的次數成正比,與被包含該單詞的語料庫數量成反比。這種計算方式能有效避免常用詞對關鍵詞的影響[5],TF-IDF由詞語頻率和逆文檔頻率兩個統計量組成。
其中,詞語頻率tf(t,d)和逆文檔頻率idf(t,D)表示為:

其中tft,d為詞語t在文檔d中出現的次數,D為語料庫整體,nt為語料庫D中詞語t出現的文檔的個數,N為語料庫中的文檔總數。
TF-IDF定義為詞語頻率和逆文檔頻率的乘積:

由此看出,TF-IDF值越高,代表此詞越能反映該專利文本的特性。
SimNet是一個計算短文本相似度的模型,它可以根據用戶輸入的兩個文本,計算出相似度得分。其中,SimNet框架由三部分構成:
(1)輸入層。將輸入樣本轉化為模型可以處理的向量表示法。
(2)表示層。主要目的在于將孤立的詞向量轉換為一個富有全局信息的句子向量。
(3)匹配層。根據表示層輸出的兩個句子向量,通過計算余弦相似度,產出匹配得分。
SimNet在深度學習框架下對語義匹配問題實現了端到端的網絡建模。在語義表示上使用分散式連續向量的表示方法,實現將詞語的詞向量表示與句篇的語義表示、語義的向量表示與匹配度計算、文本對的匹配度計算全部統一在一個整體框架內,實現了可完全取代基于字面匹配的策略,其效果往往能顯著超越主題模型類的算法效果。
本文提出了一種基于主題分類和語義相似度的專利推薦算法。該算法通過自建專利詞典與分詞技術獲取專利摘要及標題的核心詞,并將分詞后的專利數據放入訓練好的網絡模型中進行分類及相似度計算,最后通過專利領域主題數獲取每個主題的核心詞分布及排序,在此之下構建主題召回列表,以同類下文本相似度進行專利推薦,算法的具體流程如下:
(1)通過用戶的歷史搜索記錄、點擊記錄或設定的興趣領域構建用戶的興趣標簽。
(2)通過詞頻-逆向文件頻率算法對專利數據集中的專利文件提取關鍵詞,獲取專利關鍵詞數據庫。使用TF-IDF算法來處理專利文本,對于任何一個專利文本,首先分別統計所述專利說明書摘要和發明名稱中所有詞語在各個專利文本中出現的次數,作為模型的輸入參數;其次通過TF-IDF算法,使用公式(1),(2)進行詞語的權值計算,權值越大,證明該詞越能反映專利文本的特性的程度越高;最后根據權值由大到小對詞語進行排序,將排序在前列的詞語認定為關鍵詞,即可形成該專利文檔專利關鍵詞數據集。
(3)構建專利主題類別集需要將專利文檔中關鍵詞轉換為詞向量。Bert作為一種無監督方法,在無人工參與的情況下,利用開源庫可對多個專利關鍵詞進行詞向量轉換,轉換內容包括利用所述開源詞向量庫査詢每個專利關鍵詞對應的詞向量,構建關鍵詞ID映射表、專利關鍵詞列表和關鍵詞詞向量映射表。
(4)對專利關鍵詞進行DBSCAN聚類算法分析處理,構建專利主題類別集。在使用Bert模型獲取所有專利關鍵詞對應的詞向量樣本后,使用DBSCAN聚類算法對專利文本類別進行分析。
(5)采用SimNet網絡解決文本匹配任務。SimNet是一個計算短文本相似度的模型,可以根據用戶輸入的兩個文本,計算出相似度得分,其中,SimNet網絡結構采用余弦相似度計算興趣標簽與所述專利主題類別中的所有專利文本的相似度,余弦相似度的計算公式為:

其中,A,B代表經過表示層后提取的文本向量,Ai,Bi代表向量A和B的各分量。
(6)在訓練好的語義相似度匹配模型中輸入興趣標簽,在經過表示層的訓練擬合之后,使用余弦相似度來計算短文本(用戶興趣標簽文本)—長文本(注意領域內專利文本及摘要)之間的匹配程度,并根據相似度的高低對專利文本進行TOP-K推薦。
本文通過在線檢索的方式獲得實驗所需的專利數據。在專利的在線檢索過程中,一個合適的專利檢索式是能夠準確快速的獲得相應的專利的最佳方法,針對專利檢索式的獲取,參考艾楚涵[6]中的專利獲取方法,專利領域為物流領域,采取的檢索式為:
TI=(物流 or 運輸 or 倉儲 or 庫存 or 裝卸 or 搬運 or 流通加工 or 配送 or 信息平臺 or 郵政 or 分揀 or 保管 or 鐵路 or 公路 or 水運 or 航空 or 管道 or 貨運 or 裝運 or 空運……)
在對原始數據進行數據清理,剔除不符合研究領域、重復的專利數據后,針對分詞方法的選擇,使用當下較為流行的分詞開源工具對10篇隨機選取的專利文本摘要后進行測試,其中準確率公式如公式(4),采用jieba分詞工具。

根據分析,對于DBSCAN算法中最優的算法參數的選定,參考夏云[7]等人在文中提出的確定最佳參數的算法,確定鄰域半徑ε=120 m,簇最小點數MinPts=16,Bert預訓練模型的語料文件為google提供的bert-base-chinese,SimNet網絡結構中使用余弦相似度進行計算。此外,因缺少用戶的搜索歷史,因此篩選出擁有至少10條發明專利的發明人,然后提取他們發明專利標題和摘要中的關鍵詞作為興趣標簽,構建發明人集合作為測試用戶。
在對據進行預處理后,對3種推薦算法的有效性進行了測評:方案1為使用傳統協同過濾方法計算待推薦專利和用戶間的相似度;方案2為利用LDA生成項目主題相似度的協同過濾算法LDA- item;方案3為本文提出的基于主題分類與語義相似度的專利推薦,所有方案中均使用了根據TD-IDF算法得到的詞向量信息。
本文使用了TOP-K推薦的專利中涉及的主題和用戶自身研究主題是否相同來判斷推薦結果好壞,將推薦的結果分為優質、一般和無關3個等級,并使用發明人集合作為測試用戶,推薦結果好壞判定如下:

其中,p為經過TOP-K推薦后為用戶ui推薦的專利。好的推薦結果需要用戶的興趣與推薦的專利擁有相同主題;對于處于不同主題,但是專利間的相似度大于0.1的,視為一般的推薦結果,其余的則為無關推薦(見表1)。

表1 不同方案的推薦結果
與其他方案相比,本文提出的基于主題分類與語義相似度的專利推薦算法的推薦結果在3個等級上都有明顯的進步,其中,傳統協同過濾方法的結果最差。較于LDA- item算法,相關(優質推薦與一般推薦之和)的專利推薦準確率提高了 4.2%,優質推薦占比提高了7.5個百分點,證明這些專利都能被準確地推薦給研究領域在同一類別的發明人;而無關推薦的結果僅為17.4%,在無法找到領域十分符合的發明人時,也將專利推薦給研究內容更加相近的發明人。
本文使用詞頻-逆向文件頻率算法對專利數據集中的專利文件提取關鍵詞,獲取專利關鍵詞數據庫,提高了關鍵詞與專利文本之間的相關性,并通過構建專利主題類別集,結合SimNet網絡結構構建語義相似度匹配模型,解決了專利推薦系統冷啟動及數據稀疏矩陣的問題,能夠進行專利文本內容的語義分析,提高了匹配模型的泛化能力,從而達到精準推薦的效果。