999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于《同義詞詞林》的商品搜索排序算法實現

2020-09-26 11:43:52余立毅
電腦知識與技術 2020年24期
關鍵詞:排序

余立毅

摘要:在基于Lucene全文檢索技術的商品搜索系統中,利用文本相似度算法來計算商品信息和關鍵詞的相似程度,并以此對商品搜索結果排序,但是排序結果往往不盡如人意。通過分析商品信息數據的結構特點以及商品詞條存在同義詞的情況,在部分文本相似度算法的基礎上,結合同義詞詞林的原子詞群分類,設計一個適合于計算商品信息相似度的算法,用于提高商品搜索排序結果的準確性。

關鍵詞:Lucene;商品搜索;相似度算法;原子詞群;排序

中圖分類號:TP311.13 ? ? ?文獻標識碼:A

文章編號:1009-3044(2020)24-0069-03

Abstract: In the commodity search system based on Lucene full-text retrieval technology, the text-similarity algorithm is used to calculate the similarity of commodity information and keywords, and the commodity search results are ranked based on this, but the ranking results are often unsatisfactory. By analyzing the structural characteristics of commodity information data and the existence of synonyms in commodity entries, based on the partial text similarity algorithm, combined with the atomic word group classification of the CiLin, design an algorithm suitable for calculating the similarity of commodity information. It is used to improve the accuracy of commodity search ranking results.

Key words: Lucene; commodity search; similarity algorithm; atomic word group; ranking

1 背景

近些年來,人們的消費習慣更多是網上購物,從而促使了更多的商業化購物平臺的誕生。這些平臺通過對外提供商品搜索、商品瀏覽、商品排序等服務來提升用戶的使用體驗,其中商品搜索結果的精確程度取決于搜索引擎的相似度算法。而目前文本相似度算法[1]大致分為四類,分別是基于字符串方法、基于語料庫方法、基于世界知識方法和基于句法分析方法。在Lucene全文檢索技術[2-3]中,使用語料庫方法中的VSM方法來計算文本相似度[4],其核心思想是將每篇文檔表示成一個基于詞頻或者詞頻–逆文檔頻率(Term Frequency-Inverse Document Frequency, TF-IDF)權重的實值向量,之后采用BM25算法[5]替代。這類方法都是需要計算詞頻、文檔頻率和文檔長度等因素,但是這些因素并不能很準確地決定搜索關鍵詞和商品信息的匹配程度。基于世界知識方法中,利用WordNet、《知網》(HowNet)和《同義詞詞林》[6-7]等通用詞典來計算文本相似度,這些詞典能夠準確地表示概念含義并能反映出概念之間的相似性和相關性。

通過對商品名稱數據結構的分析,發現商家會把同義詞堆疊在標題中,以期望獲取到更多的流量,而且商品信息基本是名詞組成。有研究證明,對詞義進行有效擴展,或者對關鍵詞做同義詞替換可以明顯改善信息檢索的性能。本文經過以上研究分析之后,在原有BM25方法計算相似度的基礎上,結合世界知識方法中的《同義詞詞林》,設計出一個基于相同關鍵詞詞頻和同義詞詞頻的相似度算法。

2 關鍵技術

2.1 Lucene全文檢索技術

Lucene是apache軟件基金會的一個子項目,是一個開放源代碼的全文檢索引擎工具包,提供了完整的查詢引擎和索引引擎。Lucene的目的是為軟件開發人員提供一個簡單易用的工具包,以方便在目標系統中實現全文檢索的功能,或者是以此為基礎建立起完整的全文檢索引擎。索引技術是Lucene全文檢索的核心功能之一,是一種稱為反向索引[8](inverted index)的機制,通過預先將數據構建成索引庫,在后續的搜索過程中讀取索引庫,實現快速檢索。索引庫內部的數據由兩部分組成——詞典和倒排表,詞典是文本數據經過分詞以后得到的所有不重復的詞條,倒排表則是記錄了存在詞條的所有文件形成的鏈表結構。構建索引庫就是將原文本數據進行分詞處理,得到若干詞條以及對應的文件信息,包括該詞條在文件中出現的頻率和詞條在文件中出現的位置信息,這些詞條以詞典的形式保存,對應的文件信息以倒排表的形式保存。搜索關鍵詞就是搜索索引庫的過程,先在詞典中找到對應的關鍵詞,然后通過詞典和倒排表之間的映射,找到出現該關鍵詞的某個文件或一組文件的集合。

2.2 HanLP中文分詞器

中文分詞[9]是中文文本處理的一個基礎步驟,也是全文搜索技術的核心關鍵之一,分詞效果的好壞以及效率直接關系到搜索引擎的綜合表現。HanLP中文分詞器具備功能完善、性能高效、架構清晰、語料時新、可自定義的特點。默認模型訓練自全世界最大規模的中文語料庫,同時自帶一些語料處理工具,幫助用戶訓練自己的模型。目前支持包括Solr(7.x)在內的任何基于Lucene(7.x)的系統。

2.3 BM25算法

Lucene全文檢索的另一個核心功能就是搜索排序,排序是依據各個文本和搜索關鍵詞之間的相似度分值,計算相似度得分的算法是BM25檢索算法,它是一種用來評價搜索詞和文檔之間相關性的算法,基于概率檢索模型提出的算法。BM25模型在二元獨立模型基礎上,在對查詢結果的評分計算中,考慮了IDF因子、文檔長度因子、文檔詞頻和查詢詞頻, 并利用2個自由調節因子 (k1和b) 對各種因子的權值進行調整組合。算法公式如下:

其中Q為Query,d標識搜索結果的文檔,qi表示Query中的一個語素(分詞),Wi表示qi的權重,R(qi,d)表示語素qi與文檔d的相關性得分。N為索引中的全部文檔數,n(qi)為包含了qi的文檔數,k1、b為調節因子,通常根據經驗設置,一般k1=2,b=0.75。fi為qi在d中出現的頻率,dl為文檔d的長度,avgdl為所有文檔的平均長度。

2.4 同義詞詞林

《哈工大信息檢索研究室同義詞詞林擴展版》是在《同義詞詞林》的基礎上剔除不常見詞并擴展,最終的詞表包含 77,343 條詞語,以下簡稱《詞林》。

《詞林》按照樹狀的層次結構把所有收錄的詞條組織到一起,把詞 匯分成大、中、小三類,大類有 12 個,中類有 97 個,小類有 1,400 個。每個小 類里都有很多的詞,這些詞有根據詞義的遠近和相關性分成了若干個詞群(段落)。每個段落中的詞語有進一步分成了若干個行,同一行的詞語要么詞義相同 (有的詞義十分接近),要么詞義有很強的相關性。

大類用大寫英文字母表示,中類用小寫英文字母表示,小類用二位十進制整數表示。第四級用大寫英文字母表示,第五級用二位十進制整數表示。具體的標記參見表1。

表中的編碼位是按照從左到右的順序排列。第八位的標記有3種,分別是“=”“#”“@”,“=”代表“相等”“同義”。末尾的“#”代表“不等”“同類”,屬于相關詞語。末尾的“@”代表“自我封閉”“獨立”,它在詞典中既沒有同義詞,也沒有相關詞。

在《詞林》的編碼體系中,前面四層結點都代表抽象的類別,只有第五層的葉子結點才是具體的詞語,同一個詞語可能有多個不同的義項,即同一詞語可能在不同的原子詞群中同時存在。其中第一層級的大類代碼含義如表2所示。

其中 A、B、C 類多為名詞,D 類多為數詞和量詞,E 類多為形容詞,F、G、H、I、J 類多為動詞,K 類多為虛詞,L 類是難以被分到上述類別中的一些詞語。

3 系統設計

3.1 索引庫字段設計

商品表products結構如下表3所示,索引庫字段為id、prod_pname、prod_catalog_name、prod_price、prod_description和prod_picture。

3.2 相似度算法設計

相似度計算[10-11]只是為了對商品信息和搜索語句之間相關程度進行排序,不需要準確的相似度分值,因此可以簡化BM25算法。去掉wi項,因為wi項在同一查詢語句下對于各商品記錄來說都是固定值。此外文檔長度項dl和avgdl,也就是商品名稱信息的長度,并不能決定商品排序,而應該根據搜索詞和同義詞在文檔中出現的詞頻,來決定商品信息和搜索語句之間的相關程度。綜上所述,BM25算法簡化如下,

3.3 同義詞設計

考慮到商品名稱中的關鍵信息都是名詞構成,對《詞林》進行篩選,保留B類,還要對第2級分類進行篩選,過濾掉Bb擬狀物、Bd天體、Be地貌和Bf氣候,并且去掉@、#結尾的記錄。

4 實驗結果

為了分析對比基于Lucene原有BM25算法和基于同義詞的改進BM25算法在商品排序結果方面的差異,從《詞庫》中選取“拐棍”關鍵詞作為搜索詞,采用淘寶網站關于“拐棍”商品的9條信息作為測試數據集,這里原有BM25算法稱為O方法,本文采用的同義詞改進BM25算法稱為N方法,前后方法排序結果如下表4所示的實驗數據。

從兩者排序結果來看,發現兩者的差別較大。首先,對比商品1或8和商品9的商品信息,三個商品都用到了“拐棍”的三個同義詞來描述商品,因此它們三個商品的排序應該相同,而商品9的信息長度較其他兩者短,導致在O方法中排序相對靠前,在N方法中三者排序一致,類似的有商品2、6和7之間的排序對比,驗證了商品信息長度不能決定商品的排序。

其次,對比商品1和商品5的商品信息,商品5用了8個同義詞來描述商品,相較商品1的3個同義詞要描述得更為全面,因此按照理解,商品5的相關性更高,排序更應該靠前,符合在N方法中的排序結果,驗證了商品同義詞數量決定商品的排序。

總的來說,基于同義詞的改進BM25算法在排序結果方面更加符合人們對于商品信息與搜索關鍵詞之間相關程度的理解。

5 結束語

通過對Lucene全文檢索技術和《詞庫》同義詞體系結構的研究,根據商品排序的實際需求,利用同義詞對原有的BM25排序算法進行改進,構建出商品搜索排序系統。經過實驗的對比分析,改進的排序算法得到的排序結果更為合理,說明系統的設計達到了最初的目的。

參考文獻:

[1] 王春柳, 楊永輝, 鄧霏, 等. 文本相似度計算方法研究綜述[J]. 情報科學, 2019, 37(3): 158-168.

[2] 周敬才, 胡華平, 岳虹. 基于Lucene全文檢索系統的設計與實現[J]. 計算機工程與科學, 2015, 37(2): 252-256.

[3] 徐誠皓. 基于Lucene的全文檢索的研究及實現[J]. 電腦知識與技術, 2018, 14(10): 92-94.

[4] Zhou Y, Wu X Q, Wang R Y. A semantic similarity retrieval model based on Lucene[C]//2014 IEEE 5th International Conference on Software Engineering and Service Science. 27-29 June 2014, Beijing, China. IEEE, 2014: 854-858.

[5] 范晨熙, 黃理燦, 李雪利. 基于Lucene的BM25模型的評分機制的研究[J]. 工業控制計算機, 2013, 26(3): 78-79.

[6] 梅家駒. 同義詞詞林[M]. 上海: 上海辭書出版社, 1983.

[7] 田久樂, 趙蔚. 基于同義詞詞林的詞語相似度計算方法[J]. 吉林大學學報(信息科學版), 2010, 28(6): 602-608.

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

[9] 奉國和, 鄭偉. 國內中文自動分詞技術研究綜述[J]. 圖書情報工作, 2011, 55(2): 41-45.

[10] 胡博, 蔣宗禮. 融合位置相關和概率排序的Lucene排序算法改進[J]. 計算機科學, 2016, 43(9): 247-249, 273.

[11] 蘇琴, 謝衛華. 融合詞性與位置信息改進的Lucene排序算法[J]. 電腦知識與技術, 2019, 15(17): 82-85.

【通聯編輯:謝媛媛】

猜你喜歡
排序
排排序
排序不等式
作者簡介
名家名作(2021年9期)2021-10-08 01:31:36
作者簡介
名家名作(2021年4期)2021-05-12 09:40:02
恐怖排序
律句填空排序題的備考策略
節日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
作者簡介(按文章先后排序)
名家名作(2017年2期)2017-08-30 01:34:24
按特定規律排序
兒童與健康(2012年1期)2012-04-12 00:00:00
主站蜘蛛池模板: 99久久性生片| 国产h视频在线观看视频| 蜜臀AV在线播放| 好久久免费视频高清| 久久久久久久蜜桃| 国产主播在线观看| 精品亚洲欧美中文字幕在线看| 国产视频欧美| 日韩亚洲综合在线| 国产在线精品99一区不卡| 国产一区二区三区在线观看视频| 国产精品久久国产精麻豆99网站| 亚洲精品视频免费看| 成人在线不卡| 91精品福利自产拍在线观看| 2021天堂在线亚洲精品专区 | 日韩黄色大片免费看| 欧美影院久久| 亚洲色图欧美激情| 无码内射在线| 亚洲精品手机在线| 亚洲成人黄色网址| 蜜芽一区二区国产精品| 国产精品天干天干在线观看| 精品一區二區久久久久久久網站 | 少妇高潮惨叫久久久久久| 特级aaaaaaaaa毛片免费视频| 99在线观看免费视频| 国产在线麻豆波多野结衣| 国产精品久久久精品三级| 成人精品午夜福利在线播放| 亚洲精品在线影院| 深夜福利视频一区二区| 亚洲美女一区| 四虎成人免费毛片| 国产成人高清精品免费| 影音先锋亚洲无码| 成人免费午夜视频| 国产伦精品一区二区三区视频优播 | a国产精品| 91九色视频网| 亚洲成在线观看| a级毛片网| 欧美高清国产| 女人18毛片一级毛片在线 | 国产不卡网| 欧美精品影院| 精品国产黑色丝袜高跟鞋 | 成色7777精品在线| 国产在线欧美| 色综合久久无码网| 久爱午夜精品免费视频| 日韩无码视频播放| 欧美区日韩区| 91网在线| 亚洲69视频| 国产精品美人久久久久久AV| 国产成人亚洲毛片| 日韩欧美一区在线观看| 亚洲欧洲日韩综合色天使| 一本色道久久88| 亚洲视频欧美不卡| 天堂岛国av无码免费无禁网站| 国产成人综合网| 久久九九热视频| 重口调教一区二区视频| 国产精品视频a| 人妻免费无码不卡视频| 亚洲高清资源| 欧美另类图片视频无弹跳第一页| 毛片久久久| 国产在线日本| 亚洲国产天堂久久综合226114| 久久亚洲高清国产| 久久一色本道亚洲| 激情無極限的亚洲一区免费| 免费国产福利| 在线免费无码视频| 欧美专区日韩专区| 亚洲免费三区| 91久久偷偷做嫩草影院电| av在线无码浏览|