本申請涉及搜索技術領域,尤其涉及查詢改寫方法及裝置。
背景技術:
用戶在諸多場景下都需要使用搜索功能。在執行搜索操作時,用戶可以輸入任意搜索關鍵詞,并由搜索引擎提供對應的搜索結果。
然而,用戶輸入的搜索關鍵詞往往比較隨意,并不能夠直接體現出用戶的實際意圖,導致搜索結果無法符合用戶的實際需求。
技術實現要素:
有鑒于此,本申請提供一種查詢改寫方法及裝置,可以結合語義實現查詢改寫,有助于提升推詞覆蓋率和改寫準確度。
為實現上述目的,本申請提供技術方案如下:
根據本申請的第一方面,提出了一種查詢改寫方法,包括:
接收用戶輸入的搜索關鍵詞;
選取對應于所述搜索關鍵詞的擴展詞,所述擴展詞與所述搜索關鍵詞在預設維度的語義向量空間中分別對應的語義向量之間的相似度達到預設相似度;
將所述搜索關鍵詞改寫為被選中的擴展詞。
根據本申請的第二方面,提出了一種查詢改寫裝置,包括:
接收單元,接收用戶輸入的搜索關鍵詞;
選取單元,選取對應于所述搜索關鍵詞的擴展詞,所述擴展詞與所述搜 索關鍵詞在預設維度的語義向量空間中分別對應的語義向量之間的相似度達到預設相似度;
改寫單元,將所述搜索關鍵詞改寫為被選中的擴展詞。
由以上技術方案可見,本申請通過將搜索關鍵詞和擴展詞映射為語義向量空間中的語義向量,可以由語義向量之間的相似度來體現搜索關鍵詞與擴展詞之間的語義相關程度,從而簡化了語義比較過程,提升了查詢改寫的準確度。同時,通過對語義相關程度的確定,消除了搜索關鍵詞與擴展詞之間的文本相似度需求,有助于提升推詞覆蓋率。
附圖說明
圖1是本申請一示例性實施例的一種查詢改寫方法的流程圖;
圖2是本申請一示例性實施例的一種查詢改寫的示意圖;
圖3是本申請一示例性實施例的另一種查詢改寫的示意圖;
圖4是本申請一示例性實施例的另一種查詢改寫方法的流程圖;
圖5是本申請一示例性實施例的一種用于實現查詢改寫的樣本訓練過程的流程圖;
圖6是本申請一示例性實施例的又一種查詢改寫的示意圖;
圖7是本申請一示例性實施例的一種電子設備的結構示意圖;
圖8是本申請一示例性實施例的一種查詢改寫裝置的框圖。
具體實施方式
正如背景技術部分所描述的,由于用戶輸入的搜索關鍵詞比較隨意,往往并不能夠體現其真實意圖,從而導致搜索結果不符合用戶的實際需求。為了解決該技術問題,相關技術中提出了QR(query rewrite,查詢改寫)處理手段,可以通過對用戶輸入的搜索關鍵詞進行分析,并自動替換為能夠體現用戶實際意圖的擴展詞。
在相關技術中,提出了很多種實現QR的技術手段,主要包括:
(1)基于文本相似度。具體的,通過諸如TF-IDF(term frequency–inverse document frequency)等方式計算搜索關鍵詞與擴展詞之間的文本相似度,確定搜索關鍵詞對應的擴展詞。但是,這種方式無法計算沒有共現詞的搜索關鍵詞與擴展詞之間的相似度(如無法確定“蘋果”與iphone之間的相似度),并且當同一個詞存在多種解釋時,很容易出現不良(不符合用戶的實際需求)的擴展詞(如“蘋果水果籃”與“蘋果手機”)。
(2)基于語義規則。具體的,通過建立語義規則,選取符合語義規則的擴展詞。需要說明的是,語義規則的建立并不能夠真正獲取,比較搜索關鍵詞與擴展詞的語義,只是基于開發者當前的理解進行判定,具有很大的局限性,推詞的準確度和覆蓋率都很低,且需要后期不斷維護已有規則、開發新規則,成本很高而實際效果并不理想。
因此,本申請通過改進相關技術中的查詢改寫方式,以解決相關技術中存在的技術問題。為對本申請進行進一步說明,提供下列實施例:
圖1是本申請一示例性實施例的一種查詢改寫方法的流程圖,如圖1所示,該方法可以包括以下步驟:
步驟102,接收用戶輸入的搜索關鍵詞。
步驟104,選取對應于所述搜索關鍵詞的擴展詞,所述擴展詞與所述搜索關鍵詞在預設維度的語義向量空間中分別對應的語義向量之間的相似度達到預設相似度。
在本實施例中,通過將搜索關鍵詞與擴展詞分別映射至語義向量空間,可以實現搜索關鍵詞與擴展詞之間的實際語義比較,而不限于相關技術中僅在字面上進行文本相似度比較,有助于提升推詞的準確度;同時,由于是各個詞語的實際語義,因而不限于開發者對語義規則的理解和設置的準確度,且不需要后期維護。
步驟106,將所述搜索關鍵詞改寫為被選中的擴展詞。
由上述實施例可知,本申請通過將搜索關鍵詞和擴展詞映射為語義向量空間中的語義向量,可以由語義向量之間的相似度來體現搜索關鍵詞與擴展 詞之間的語義相關程度,從而簡化了語義比較過程,提升了查詢改寫的準確度。同時,通過對語義相關程度的確定,消除了搜索關鍵詞與擴展詞之間的文本相似度需求,有助于提升推詞覆蓋率。
1、QR原理
由圖1所示的實施例可知,在本申請的技術方案中,QR過程的實現依賴于將搜索關鍵詞和擴展詞分別映射為語義向量空間中的語義向量,以便通過語義向量的對比來確定搜索關鍵詞和擴展詞之間的語義相關度。
為了實現上述的映射過程,如圖2所示,可以通過神經網絡算法將搜索關鍵詞或擴展詞映射至語義向量空間中,以得到對應的語義向量。舉例而言,比如當用戶輸入的搜索關鍵詞為“蘋果手機”時,若將“蘋果手機”映射至語義向量空間,則可以得到對應的語義向量1,比如該語義向量1為X;而當存在一個備選詞語為“iphone6”時,假定該“iphone6”映射至語義向量空間得到對應的語義向量2,比如該語義向量2為Y,則如果向量X與向量Y之間具有預設相似度,則認為該備選詞語“iphone6”與搜索關鍵詞“蘋果手機”之間具有較高的語義相關度,因而可以將該備選詞語“iphone6”作為搜索關鍵詞“蘋果手機”對應的擴展詞,因而將搜索關鍵詞“蘋果手機”改寫為“iphone6”。
其中,在將搜索關鍵詞或擴展詞映射至語義向量空間并得到對應的語義向量時,作為一示例性實施例,可以直接將搜索關鍵詞或擴展詞映射為對應的語義向量。而作為另一示例性實施例,如圖3所示,該實現過程可以包括:通過神經網絡算法將構成搜索關鍵詞或擴展詞的所有分詞分別映射至語義向量空間,得到對應的分詞向量;按照預設策略將構成搜索關鍵詞或擴展詞的所有分詞分別對應的分詞向量進行組合,并將得到的整詞向量作為上述的語義向量;通過將每個分詞分別映射為對應的分詞向量,有助于降低處理過程的復雜度。
舉例而言,比如當用戶輸入的搜索關鍵詞為“蘋果手機”時,通過對該搜索關鍵詞的分詞處理,假定對應的分詞包括分詞11為“蘋果”和分詞12 “手機”等,則通過將所有分詞分別映射至語義向量空間,分別得到對應的分詞向量31為對應于分詞“蘋果”的X1、分詞向量32為對應于分詞“手機”的X2等。類似地,假定存在備選詞語“iphone6”,對該備選詞語進行分詞處理,得到對應的分詞包括分詞21“iphone”和分詞22“6”等,則通過將所有分詞分別映射至語義向量空間,分別得到對應的分詞向量41為對應于分詞“iphone”的Y1、分詞向量42為對應于分詞“6”的Y2等。
然后,按照預設策略對搜索關鍵詞“蘋果手機”對應的所有分詞向量(即分詞向量31“X1”和分詞向量32“X2”等)進行組合,得到對應的整詞向量1,比如該整詞向量1為X;并且,按照預設策略對備選詞語“iphone6”對應的所有分詞向量(即分詞向量41“Y1”和分詞向量42“Y2”等)進行組合,得到對應的整詞向量2,比如該整詞向量2為Y。那么,搜索關鍵詞“蘋果手機”和備選詞語“iphone6”之間的語義相關度分析,即可轉換為對整詞向量1“X”與整詞向量2“Y”之間的相似度分析。
顯然地,在搜索關鍵詞“蘋果手機”與詞語“iphone6”之間完全不存在字面上的文本相似度,并且兩者之間的語義規則設置難度很大,通過相關技術中的技術方案時,很難準確地實現類似的QR處理。而本申請中,通過將搜索關鍵詞和備選詞語分別映射為語義向量空間中的整詞向量1(該整詞向量1可以作為搜索關鍵詞的語義向量)和整詞向量2(該整詞向量2可以作為備選詞語的語義向量),可以將搜索關鍵詞與備選詞語之間實現較為困難的語義相關度,轉換為實現較為簡單的整詞向量1與整詞向量2之間的相似度比較,可以實現更為準確、便捷的QR處理操作,確定搜索關鍵詞對應的擴展詞。
2、基于樣本訓練的QR實現過程
為了使每個詞語都能夠正確地映射至語義向量空間中,即每個分詞均能夠正確地映射為語義向量空間中的分詞向量,并進而組合為相應的詞語對應的整詞向量(該整詞向量可以被作為相應詞語的語義向量),可以通過樣本訓練來預先得到所有可能的分詞在語義向量空間中對應的分詞向量。下面按 照樣本訓練和QR處理的執行順序,對本申請的技術方案進行詳細說明。
圖4是本申請一示例性實施例的另一種查詢改寫方法的流程圖,如圖4所示,該方法可以包括以下步驟:
步驟402,提取訓練樣本。
一種情況下,用戶的歷史行為可以在很大程度上體現出搜索關鍵詞與擴展詞之間的語義相關度,因而可以基于用戶的歷史行為,選取合適的訓練樣本。舉例而言,訓練樣本可以包括:歷史搜索點擊日志中提取的歷史搜索關鍵詞和被點擊的業務對象對應的歷史擴展詞;比如當用戶歷史上輸入了搜索關鍵詞“蘋果手機”時,在搜索結果中點擊了某個業務對象,比如該業務對象對應的歷史擴展詞為“iphone6”時,可以將歷史搜索關鍵詞“蘋果手機”作為樣本搜索關鍵詞、將歷史擴展詞“iphone6”作為樣本擴展詞。
另一種情況下,可以基于與被點擊的業務對象相關的數據或信息,得到對應的訓練樣本。舉例而言,訓練樣本可以來自:
1)歷史搜索點擊日志中提取的歷史搜索關鍵詞和從被點擊的業務對象的展示內容中提取的預測擴展詞;舉例而言,當歷史搜索關鍵詞為“蘋果手機”時,在被點擊的業務對象的展示內容中還包括“iphone6P”,且該詞語“iphone6P”被認為與歷史搜索關鍵詞“蘋果手機”之間具有較高的語義相關度,因而將該詞語“iphone6P”作為預測擴展詞。其中,可以將歷史搜索關鍵詞“蘋果手機”作為樣本搜索關鍵詞、將預測擴展詞“iphone6P”作為樣本擴展詞。
2)歷史搜索點擊日志中提取的歷史擴展詞和從被點擊的業務對象的展示內容中提取的預測搜索關鍵詞;舉例而言,當歷史擴展詞為“iphone6”時,在被點擊的業務對象的展示內容中還包括“蘋果最新款”,且該詞語“蘋果最新款”被認為與歷史擴展詞“iphone6”之間具有較高的語義相關度,因而將該詞語“蘋果最新款”作為預測搜索關鍵詞。其中,可以將預測搜索關鍵詞“蘋果最新款”作為樣本搜索關鍵詞、將歷史擴展詞“iphone6”作為樣本擴展詞。
3)從所述被點擊的業務對象的展示內容中提取的預測搜索關鍵詞和預測擴展詞;舉例而言,當歷史搜索關鍵詞為“蘋果手機”、被點擊的業務對象對應的歷史擴展詞為“iphone6”時,若該被點擊的業務對象的展示內容中還包括“蘋果最新款”和“iphone6P”,且該詞語“蘋果最新款”被認為與詞語“iphone6P”之間具有較高的語義相關度,因而將該詞語“蘋果最新款”作為預測搜索關鍵詞、將該詞語“iphone6P”作為預測擴展詞。其中,可以將預測搜索關鍵詞“蘋果最新款”作為樣本搜索關鍵詞、將預測擴展詞“iphone6P”作為樣本擴展詞。
在又一種情況下,基于用戶自身的認知和判斷,可以主動創建搜索關鍵詞和對應的擴展詞,并認為兩者之間具有較高的語義相關度;其中,可以分別將用戶創建的搜索關鍵詞作為樣本搜索關鍵詞、將用戶創建的擴展詞作為樣本擴展詞。
當然,對于上述的三種情況以及第二種情況下的三種具體實現方式,可以認為具體列舉出了訓練樣本的五種來源;相應的,可以選取其中的任意一種或多種實現方式,作為本申請的技術方案中的訓練樣本的來源。或者,也可以將其中的部分實現方式作為必要的實現方式,而另一部分作為可選的補足方式,比如將上述第一種情況作為必要的實現方式,而將其他四種實現方式作為可選的補足方式。
步驟404,訓練分詞向量。
下面結合圖5和圖6,對該步驟中的分詞向量的訓練過程進行詳細描述。其中,圖5是本申請一示例性實施例的一種用于實現查詢改寫的樣本訓練過程的流程圖;圖6是本申請一示例性實施例的又一種查詢改寫的示意圖。如圖5所示,該樣本訓練過程可以包括以下步驟:
步驟502,獲取樣本特征詞組。
在本實施例中,由于在步驟402中提取訓練樣本時,樣本搜索關鍵詞與樣本擴展詞之間一一對應,因而將相互對應的一個樣本搜索關鍵詞與一個樣本擴展詞作為一個樣本特征詞組,而其中的樣本搜索關鍵詞或樣本擴展詞分 別作為該樣本特征詞組中的一個樣本特征詞。
步驟504A,對樣本特征詞組中的樣本搜索關鍵詞進行分詞處理,得到該樣本搜索關鍵詞的所有分詞。
如圖6所示,比如對樣本搜索關鍵詞進行分詞處理后,分別得到樣本分詞11’和樣本分詞12’等;那么,假定該樣本搜索關鍵詞為“蘋果手機”,則樣本分詞11’可以為“蘋果”、樣本分詞12’可以為“手機”。
步驟506A,生成樣本分詞向量。
在本實施例中,針對上述的樣本分詞11’和樣本分詞12’等,分別生成對應的樣本分詞向量31’和樣本分詞向量32’等。舉例而言,假定樣本分詞向量31’為X1、樣本分析向量32’為X2,則當語義向量空間為n維時,向量X1、向量X2等均為n維向量,比如向量X1={x11,x12,x13,…,x1n},向量X2={x21,x22,x23,…,x2n}等。
其中,由于后續還需要完成對每個樣本分詞向量的訓練操作,因而此處對于每個樣本分詞向量在每一維度上的具體數值并沒有要求,只要確保每個樣本分詞向量為n維即可。舉例而言,比如可以通過隨機初始化的方式,生成每一維度均為隨機數值的各個樣本分詞向量,即任一樣本分詞向量Xi在各個維度上的數值xi1、xi2、……、xin等均為隨機值。
步驟508A,生成樣本整詞向量。
在本實施例中,樣本搜索關鍵詞的所有分詞分別對應于樣本分詞向量31’和樣本分詞向量32’等,而按照預設策略對上述的所有樣本分詞向量進行組合,即可得到該樣本搜索關鍵詞對應的樣本整詞向量1’。其中,本申請并不對該預設策略進行限制,只要該預設策略具有可重復執行性,且生成的樣本整詞向量1’與樣本分詞向量的維度一致,比如均為上述的n維向量,即可應用于本申請的技術方案中。
舉例而言,可以將樣本搜索關鍵詞對應的所有樣本分詞向量在每一維度上的數值分別按照對應于上述預設策略的預設算法進行計算,得到樣本整詞向量1’在各個維度上對應的數值。其中,該預設算法可以為:平均算法、加 權平均算法等,本申請并不對此進行限制。
比如,當樣本搜索關鍵詞對應于樣本分詞向量31’和樣本分詞向量32’時,即向量X1和向量X2,假定預設算法為平均算法,則分別對樣本分詞向量31’和樣本分詞向量32’在各個維度上的數值進行平均計算,得到對應的樣本整詞向量1’為X’={x1’,x2’,…,xn’},其中x1’=(x11+x21)/2、x2’=(x12+x22)/2,……,xn’=(x1n+x2n)/2。
當然,也可以通過下述方式,使得上述對于樣本整詞向量1’的生成方式更容易操作:當所述語義向量空間為n維時,將構成所述任一特征詞的所有m個分詞分別在所述語義向量空間中對應的n維分詞向量組成m×n規格的特征矩陣;分別將所述特征矩陣中的每列m個元素按照預設算法進行計算,以得到所述任一特征詞對應的整詞向量在相應維度上的數值;將各列的計算結果組合為所述任一特征詞對應的n維整詞向量。
比如,當樣本搜索關鍵詞對應于樣本分詞向量31’和樣本分詞向量32’,且每個樣本分詞向量均為9維時,即m=2、n=9,則由樣本分詞向量31’和樣本分詞向量32’構成的特征矩陣為:
然后,分別將該特征矩陣Wx中的每列上的2(m=2)個元素按照預設算法進行計算,即可得到樣本整詞向量1’,即X’={x1’,x2’,…,x9’}。
其中,若預設算法為平均算法,則x1’=(x11+x21)/2、x2’=(x12+x22)/2,……,x9’=(x19+x29)/2。若預設算法為加權平均算法,則可以計算樣本整詞向量1’在各個維度上的數值為:x1’=x11×a1+x21×a2,x2’=x12×b1+x22×b2,……,x9’=x19×i1+x29×i2,其中a1、a2等分別為相應元素的權重值;其中,在加權平均算法中,同一列中每一元素的權重可以與該元素對應分詞的出現詞頻正相關,比如可以根據TF-IDF算法獲取上述的權重值,當然本申請并不對此進行限制。
與步驟504A~步驟508A相類似地,在步驟504B、步驟506B和步驟508B 中,可以針對樣本擴展詞對應的所有分詞(比如圖6所示的樣本分詞21’和樣本分詞22’等),分別生成對應的樣本分詞向量(比如圖6所示的樣本分詞向量41’和樣本分詞向量42’等),并按照上述的預設策略,將所有的樣本分詞向量組合為對應的樣本整詞向量2’,比如該樣本整詞向量2’為Y’。
步驟510,訓練樣本。
在本實施例中,計算樣本整詞向量1’與樣本整詞向量2’之間的相似度,假定此時該相似度為初始相似度Z1。而在步驟502中獲取樣本特征詞組時,每個樣本特征詞組中的樣本搜索關鍵詞與樣本擴展詞之間均具有預設關聯度Z,該預設關聯度Z體現了樣本搜索關鍵詞與該樣本擴展詞之間的實際語義相關度。而由于步驟506A和步驟506B中分別生成每個樣本分詞向量時,每個樣本分詞向量在各個維度上的數值為任意值,因而樣本整詞向量1’與樣本整詞向量2’之間的初始相似度Z1往往并不符合預設關聯度Z。
因此,可以將預設關聯度Z作為目標,通過神經網絡算法對與樣本特征詞組中的樣本搜索關鍵詞和樣本擴展詞分別對應的樣本整詞向量相應的每一樣本分詞向量進行訓練,即對圖6所示的樣本分詞向量31’、樣本分詞向量32’、樣本分詞向量41’和樣本分詞向量42’等進行訓練,通過每個樣本分詞向量在各個維度上的數值變化,使得對應的樣本整詞向量1’和樣本整詞向量2’分別在各個維度上的數值、以及兩者之間的相似度均產生相應的變化,從而將樣本整詞向量1’與樣本整詞向量2’之間的相似度由初始相似度Z1逐步變化至盡可能地接近于預設關聯度Z,直至匹配于(相等或者差值小于預設數值)該預設關聯度Z,則認為訓練完成。
基于上述原理,在執行訓練操作時,可以建立如下的損失函數:
其中,為訓練目標,target為上述的預設關聯度Z,output為樣本整詞向量1’與樣本整詞向量2’之間的相似度,且output的初始值為上述的初始相似度Z1。
那么,通過反射傳播方法不斷的更新神經網絡的各層隱變量和激活層參數以及詞向量,最終使得損失函數最小化,則樣本整詞向量1’與樣本整詞向量2’之間的相似度將匹配于預設關聯度Z。
其中,預設關聯度Z可以根據相應的樣本特征詞組對應的點擊數、瀏覽數、點擊比例、瀏覽比例等得到,比如當點擊數/比例、瀏覽數/比例越高時,對應的預設關聯度Z的數值越大,表明相應的樣本搜索關鍵詞與樣本擴展詞之間具有更高的語義相關度。當然,也可以根據其他參數來確定預設關聯度Z,本申請并不對此進行限制。
步驟512A,得到分詞向量。
在本實施例中,如圖6所示,在完成對樣本整詞向量1’與樣本整詞向量2’之間的相似度訓練后,確定已經將樣本搜索關鍵詞對應的樣本分詞向量訓練為對應的分詞向量,比如樣本分詞向量31’被訓練為分詞向量31(圖中未示出)、樣本分詞向量32’被訓練為分詞向量32(圖中未示出)。相應地,樣本整詞向量1’與樣本整詞向量2’經過訓練后,分別變化為圖6所示的整詞向量1和整詞向量2。
步驟512B,得到分詞向量。
在本實施例中,如圖6所示,在完成對樣本整詞向量1’與樣本整詞向量2’之間的相似度訓練后,確定已經將樣本擴展詞對應的樣本分詞向量訓練為對應的分詞向量,比如樣本分詞向量41’被訓練為分詞向量41(圖中未示出)、樣本分詞向量42’被訓練為分詞向量42(圖中未示出)。相應地,樣本整詞向量1’與樣本整詞向量2’經過訓練后,分別變化為圖6所示的整詞向量1和整詞向量2。
步驟406,組合整詞向量,作為相應詞的語義向量。
在本實施例中,步驟402提取的訓練樣本中包括很多樣本特征詞組,各個樣本特征詞組均通過上述圖5所示的實施例進行處理,可以得到所有樣本特征詞對應的樣本分詞構成的分詞結果集合,且該分詞結果集合中的每個樣本分詞對應的樣本分詞向量均被訓練為對應的分詞向量。
而在步驟406中組合整詞向量時,不僅是組合得到樣本特征詞對應的整詞向量,還在分詞結果集合中的樣本分詞可以任意組合為非樣本特征詞時,由對應的分詞向量組合得到該非樣本特征詞對應的整詞向量。其中,非樣本特征詞可以為備選詞語,比如商家購買的競價詞(Bidword)等,或者用戶可能輸入的搜索關鍵詞。
舉例而言,假定樣本搜索關鍵詞“蘋果手機”和樣本擴展詞“iphone6”的樣本分詞、樣本分詞向量和訓練得到的分詞向量如下表1所示,則除了由分詞向量P1和分詞向量P2組合得到樣本搜索關鍵詞“蘋果手機”對應的語義向量,以及由分詞向量Q1和分詞向量Q2組合得到樣本擴展詞“iphone6”對應的語義向量,還可以通過對各個樣本分詞的任意組合,得到諸如“蘋果iphone”等對應的語義向量。
表1
需要指出的是:
在對分詞向量進行組合得到整詞向量時,應當采用與步驟404的訓練過程中的“預設策略”一致,即具體為步驟508A、步驟508B中對樣本分詞向量進行組合得到樣本整詞向量時的“預設策略”一致,比如對所有分詞向量在同一維度上的數值進行平均計算或加權平均計算等。
而在計算兩個向量之間的相似度時,實際上存在多種計算方式。舉例而言,可以直接計算兩個向量本身的相似度,比如余弦(cosine)距離,皮爾遜相關系數等;或者,也可以通過映射至神經網絡層,比較對應的搜索關鍵詞與擴展詞之間的關聯度;或者,還可以采用其他方式,本申請并不對此進行限制。
步驟408,生成QR列表。
步驟410,執行QR處理。
在本實施例中,QR列表中記載了預定義的搜索關鍵詞與擴展詞之間的對應關系,該對應關系中記載的每對搜索關鍵詞和擴展詞在語義向量空間中分別對應的語義向量之間的相似度均達到預設相似度。
因此,根據用戶實際輸入的搜索關鍵詞,只需要從該QR列表中查找并提取對應的詞語,即可將該詞語作為該搜索關鍵詞對應的擴展詞,且該擴展詞必然與搜索關鍵詞之間存在較高的語義相關度,可以實現準確的QR處理并滿足用戶的搜索需求。
當然,用戶輸入的搜索關鍵詞可能并未存在于QR列表中,或者可能并未事先建立QR列表,則可以通過將搜索關鍵詞進行分詞處理,并根據得到的分詞在上述的分詞結果集合中對應的樣本分詞,將這些樣本分詞對應的分詞向量組合為該搜索關鍵詞對應的語義向量,并進一步將該搜索關鍵詞與備選詞語的語義向量進行比較,選取語義向量之間的相似度達到預設相似度的備選詞語,作為該搜索關鍵詞對應的擴展詞。
進一步地,在步驟410中,可以確保QR處理得到的擴展詞均與搜索關鍵詞屬于相同的業務對象類別。比如當用戶輸入“蘋果手機”時,主動識別出該搜索關鍵詞所屬的業務對象類別為“電子產品”,并QR處理為該“電子產品”類別下的“iphone6”等擴展詞,而非“工藝品”類別的“蘋果手機模型”等擴展詞。其中,可以通過獲取用戶的歷史行為數據,并根據該歷史行為數據確定搜索關鍵詞所屬的業務對象類別;比如,該歷史行為數據可以包括該用戶的歷史搜索、歷史瀏覽、歷史點擊、歷史收藏、歷史購買等各種數據。
圖7示出了根據本申請的一示例性實施例的電子設備的示意結構圖。請參考圖7,在硬件層面,該電子設備包括處理器、內部總線、網絡接口、內存以及非易失性存儲器,當然還可能包括其他業務所需要的硬件。處理器從非易失性存儲器中讀取對應的計算機程序到內存中然后運行,在邏輯層面上 形成查詢改寫裝置。當然,除了軟件實現方式之外,本申請并不排除其他實現方式,比如邏輯器件抑或軟硬件結合的方式等等,也就是說以下處理流程的執行主體并不限定于各個邏輯單元,也可以是硬件或邏輯器件。
請參考圖8,在軟件實施方式中,該查詢改寫裝置可以包括接收單元、選取單元和改寫單元。其中:
接收單元,接收用戶輸入的搜索關鍵詞;
選取單元,選取對應于所述搜索關鍵詞的擴展詞,所述擴展詞與所述搜索關鍵詞在預設維度的語義向量空間中分別對應的語義向量之間的相似度達到預設相似度;
改寫單元,將所述搜索關鍵詞改寫為被選中的擴展詞。
可選的,所述選取單元具體用于:
調取預定義的搜索關鍵詞與擴展詞之間的對應關系,所述對應關系中記載的每對搜索關鍵詞和擴展詞在所述語義向量空間中分別對應的語義向量之間的相似度均達到預設相似度;
獲取所述對應關系中記載的與所述搜索關鍵詞對應的擴展詞。
可選的,所述語義向量是通過神經網絡算法將對應的搜索關鍵詞或擴展詞映射至所述語義向量空間而得到。
可選的,通過下述方式將搜索關鍵詞或擴展詞映射至所述語義向量空間并得到對應的所述語義向量:
通過神經網絡算法將構成搜索關鍵詞或擴展詞的所有分詞分別映射至所述語義向量空間,得到對應的分詞向量;按照預設策略將構成搜索關鍵詞或擴展詞的所有分詞分別對應的分詞向量進行組合,并將得到的整詞向量作為所述語義向量。
可選的,所述分詞向量對應的分詞屬于作為訓練樣本的所有樣本特征詞對應的分詞結果集合,其中所述樣本特征詞為樣本搜索關鍵詞或樣本擴展詞,且每一樣本搜索關鍵詞分別與相關聯的每一樣本擴展詞構成具有預設關聯度的一樣本特征詞組;
以及,當所述分詞結果集合中的每個分詞分別對應于所述語義向量空間中各維度數值均為任意初始值的樣本分詞向量時,由構成任一樣本特征詞的所有分詞分別對應的樣本分詞向量按照所述預設策略組合為所述任一樣本特征詞對應的樣本整詞向量,且任一樣本特征詞組中的樣本搜索關鍵詞和樣本擴展詞分別對應的樣本整詞向量之間存在對應的初始相似度;
其中,當以所述任一樣本特征詞組對應的預設關聯度為目標、通過所述神經網絡算法對與所述任一樣本特征詞組中的樣本搜索關鍵詞和樣本擴展詞分別對應的樣本整詞向量相應的每一樣本分詞向量進行訓練時,若訓練結果使得所述初始相似度變化至匹配于所述預設關聯度,則確定所述任一樣本特征詞組對應的所有分詞被映射至所述語義向量空間,且與所述任一樣本特征詞組中的樣本搜索關鍵詞和樣本擴展詞分別對應的樣本整詞向量相應的每一樣本分詞向量被訓練為相應分詞對應的分詞向量。
可選的,所述訓練樣本來自以下至少之一:
歷史搜索點擊日志中提取的歷史搜索關鍵詞和被點擊的業務對象對應的歷史擴展詞;
所述歷史搜索關鍵詞和從所述被點擊的業務對象的展示內容中提取的預測擴展詞;
所述歷史擴展詞和從所述被點擊的業務對象的展示內容中提取的預測搜索關鍵詞;
從所述被點擊的業務對象的展示內容中提取的預測搜索關鍵詞和預測擴展詞;
用戶創建的搜索關鍵詞和用戶創建的擴展詞;
其中,所述歷史搜索關鍵詞、所述預測搜索關鍵詞和用戶創建的搜索關鍵詞被作為樣本搜索關鍵詞,所述歷史擴展詞、所述預測擴展詞和用戶創建的擴展詞被作為樣本擴展詞。
可選的,所述預設策略包括:
當所述語義向量空間為n維時,將構成任一詞的所有m個分詞分別在所 述語義向量空間中對應的n維分詞向量組成m×n規格的特征矩陣;
分別將所述特征矩陣中的每列m個元素按照預設算法進行計算,以得到所述任一詞對應的整詞向量在相應維度上的數值;
將各列的計算結果組合為n維整詞向量,以作為所述任一詞在所述語義向量空間中對應的語義向量。
可選的,所述預設算法包括以下任一:
平均算法;
加權平均算法,且同一列中每一元素的權重與該元素對應分詞的出現詞頻正相關。
可選的,所述擴展詞與所述搜索關鍵詞屬于相同的業務對象類別。
可選的,還包括:
獲取單元,獲取用戶的歷史行為數據;
確定單元,根據所述歷史行為數據,確定所述搜索關鍵詞所屬的業務對象類別。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出接口、網絡接口和內存。
內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內存是計算機可讀介質的示例。
計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現信息存儲。信息可以是計算機可讀指令、數據結構、程序的模塊或其他數據。計算機的存儲介質的例子包括,但不限于相變內存(PRAM)、靜態隨機存取存儲器(SRAM)、動態隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內存技術、只讀光盤只讀存儲器(CD-ROM)、數字多功能光盤(DVD)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質,可用于存儲可以被計 算設備訪問的信息。按照本文中的界定,計算機可讀介質不包括暫存電腦可讀媒體(transitory media),如調制的數據信號和載波。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
以上所述僅為本申請的較佳實施例而已,并不用以限制本申請,凡在本申請的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本申請保護的范圍之內。