本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種搜索方法和一種搜索裝置。
背景技術(shù):
隨著社會的進步,娛樂領(lǐng)域的消費在迅速發(fā)展,體育行業(yè)(包括傳統(tǒng)體育及電競行業(yè))也得到前所未有的進步。越來越多的體育愛好者對數(shù)據(jù)有了更高的要求,
目前,體育賽事數(shù)據(jù)的展現(xiàn)方式是將整場賽事的數(shù)據(jù)統(tǒng)計后,以列表的形式展現(xiàn)出來。通常用戶意圖只是想查看整場比賽的一部分?jǐn)?shù)據(jù),而現(xiàn)有的這種展現(xiàn)方法將大量的數(shù)據(jù)都展現(xiàn)給用戶,使得用戶仍需要從大量的數(shù)據(jù)中進一步查找,不夠簡便。
技術(shù)實現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明實施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種搜索方法和相應(yīng)的一種搜索裝置。
為了解決上述問題,本發(fā)明實施例公開了一種搜索方法,包括:
接收從前端頁面輸入的文本數(shù)據(jù);
采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù);
識別所述用戶意圖數(shù)據(jù)中的命名實體;
采用所述命名實體進行搜索。
優(yōu)選的,還包括:
獲取針對所述命名實體的搜索結(jié)果;
將所述搜索結(jié)果返回所述前端頁面進行展現(xiàn)。
優(yōu)選的,所述接收從前端頁面輸入的文本數(shù)據(jù)的步驟包括:
接收從前端頁面輸入的語音數(shù)據(jù);
將所述語音數(shù)據(jù)識別為文本數(shù)據(jù)。
優(yōu)選的,所述識別所述用戶意圖數(shù)據(jù)中的命名實體的步驟包括:
將所述用戶意圖數(shù)據(jù)輸入預(yù)先建立的命名實體模型進行詞性標(biāo)注,獲得命名實體。
優(yōu)選的,在采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)的步驟之前,還包括:
確定文本數(shù)據(jù)中的目標(biāo)詞;
確定與所述目標(biāo)詞對應(yīng)的轉(zhuǎn)換詞;
采用所述轉(zhuǎn)換詞替換所述目標(biāo)詞,得到新的文本數(shù)據(jù)。
優(yōu)選的,在采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)的步驟之前,還包括:
對所述文本數(shù)據(jù)進行糾錯處理。
優(yōu)選的,還包括:
若所述命名實體的詞性不包括目標(biāo)詞性,則對所述用戶意圖數(shù)據(jù)進行模糊匹配處理,獲得新的用戶意圖數(shù)據(jù)。
優(yōu)選的,還包括:
獲取與所述命名實體關(guān)聯(lián)的關(guān)聯(lián)詞;
采用所述關(guān)聯(lián)詞進行搜索。
優(yōu)選的,所述采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)的步驟包括:
對所述文本數(shù)據(jù)進行分詞處理,得到多個一元分詞和二元分詞;
計算所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值;
采用所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值,生成特征向量;
將所述特征向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
優(yōu)選的,所述采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)的步驟包括:
對所述文本數(shù)據(jù)進行分詞處理,得到多個分詞;
計算各個分詞的詞向量;
累加所述各個分詞的詞向量得到語義向量;
將所述語義向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
本發(fā)明實施例還公開了一種搜索裝置,包括:
文本數(shù)據(jù)接收模塊,用于接收從前端頁面輸入的文本數(shù)據(jù);
用戶意圖數(shù)據(jù)生成模塊,用于采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù);
命名實體識別模塊,用于識別所述用戶意圖數(shù)據(jù)中的命名實體;
命名實體搜索模塊,用于采用所述命名實體進行搜索。
優(yōu)選的,還包括:
搜索結(jié)果獲取模塊,用于獲取針對所述命名實體的搜索結(jié)果;
搜索結(jié)果展現(xiàn)模塊,用于將所述搜索結(jié)果返回所述前端頁面進行展現(xiàn)。
優(yōu)選的,所述文本數(shù)據(jù)接收模塊包括:
語音數(shù)據(jù)接收子模塊,用于接收從前端頁面輸入的語音數(shù)據(jù);
文本數(shù)據(jù)識別子模塊,用于將所述語音數(shù)據(jù)識別為文本數(shù)據(jù)。
優(yōu)選的,所述命名實體識別模塊包括:
模型標(biāo)注模塊,用于將所述用戶意圖數(shù)據(jù)輸入預(yù)先建立的命名實體模型進行詞性標(biāo)注,獲得命名實體。
優(yōu)選的,還包括:
目標(biāo)詞確定模塊,用于在用戶意圖數(shù)據(jù)生成模塊,采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)之前,確定文本數(shù)據(jù)中的目標(biāo)詞;
轉(zhuǎn)換詞確定模塊,用于確定與所述目標(biāo)詞對應(yīng)的轉(zhuǎn)換詞;
替換模塊,用于采用所述轉(zhuǎn)換詞替換所述目標(biāo)詞,得到新的文本數(shù)據(jù)。
優(yōu)選的,還包括:
糾錯模塊,用于在用戶意圖數(shù)據(jù)生成模塊,采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)之前,對所述文本數(shù)據(jù)進行糾錯處理。
優(yōu)選的,還包括:
模糊匹配模塊,用于若所述命名實體的詞性不包括目標(biāo)詞性,則對所述用戶意圖數(shù)據(jù)進行模糊匹配處理,獲得新的用戶意圖數(shù)據(jù)。
優(yōu)選的,還包括:
關(guān)聯(lián)詞獲取模塊,用于獲取與所述命名實體關(guān)聯(lián)的關(guān)聯(lián)詞;
關(guān)聯(lián)詞搜索模塊,用于采用所述關(guān)聯(lián)詞進行搜索。
優(yōu)選的,所述用戶意圖數(shù)據(jù)生成模塊包括:
第一分詞子模塊,用于對所述文本數(shù)據(jù)進行分詞處理,得到多個一元分詞和二元分詞;
頻率值計算子模塊,用于計算所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值;
第一特征向量生成子模塊,用于采用所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值,生成特征向量;
第一模型分類子模塊,用于將所述特征向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
優(yōu)選的,所述用戶意圖數(shù)據(jù)生成模塊包括:
第二分詞子模塊,用于對所述文本數(shù)據(jù)進行分詞處理,得到多個分詞;
詞向量計算子模塊,用于計算各個分詞的詞向量;
語義向量生成子模塊,用于累加所述各個分詞的詞向量得到語義向量;
第二模型分類子模塊,用于將所述語義向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
本發(fā)明實施例包括以下優(yōu)點:
本發(fā)明實施例提供了一種搜索方法,由服務(wù)器接收從前端頁面輸入的文本數(shù)據(jù),并根據(jù)文本數(shù)據(jù)生成用戶意圖數(shù)據(jù)。服務(wù)器識別用戶意圖數(shù)據(jù)中的命名實體,并采用命名實體進行搜索。本發(fā)明實施例中的服務(wù)器能夠根據(jù)用戶輸入的文本數(shù)據(jù),精準(zhǔn)的提取用戶意圖數(shù)據(jù),確定用戶需求,并對用戶意圖數(shù)據(jù)中的命名實體進行搜索,更精確的查找用戶需要的數(shù)據(jù),簡化了用戶查找數(shù)據(jù)的操作,提高了用戶體驗。
附圖說明
圖1是本發(fā)明的一種搜索方法實施例1的步驟流程圖;
圖2是本發(fā)明的一種搜索方法實施例2的步驟流程圖;
圖3是本發(fā)明實施例中一種對文本數(shù)據(jù)進行糾錯處理的示意圖;
圖4是本發(fā)明實施例中一種采用雙向-長短期記憶網(wǎng)絡(luò)模型blstm對文本數(shù)據(jù)進行標(biāo)注的示意圖;
圖5是本發(fā)明的一種搜索裝置實施例的結(jié)構(gòu)框圖。
具體實施方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。
參照圖1,示出了本發(fā)明的一種搜索方法實施例1的步驟流程圖,具體可以包括如下步驟:
步驟101,接收從前端頁面輸入的文本數(shù)據(jù);
在本發(fā)明實施例中,前端頁面可以是指應(yīng)用程序app中的頁面,也可以是瀏覽器打開的網(wǎng)頁頁面。
當(dāng)用戶想搜索某些體育數(shù)據(jù)時,用戶可以在前端頁面輸入文本數(shù)據(jù)。前端頁面將文本數(shù)據(jù)上傳到后端服務(wù)器。
在本發(fā)明實施例中,在獲得文本數(shù)據(jù)之后,還可以對文本數(shù)據(jù)進行糾錯處理。
步驟102,采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù);
服務(wù)器根據(jù)文本數(shù)據(jù),生成用戶意圖數(shù)據(jù),用戶意圖數(shù)據(jù)表征了用戶可能的意圖。
步驟103,識別所述用戶意圖數(shù)據(jù)中的命名實體;
命名實體是指人名、機構(gòu)名、地名以及其他所有以名稱為標(biāo)識的實體。更廣泛的實體還包括數(shù)字、日期、時間、動作等等。
步驟104,采用所述命名實體進行搜索。
服務(wù)器采用用戶意圖數(shù)據(jù)中的一個或多個命名實體進行搜索。
例如,若用戶意圖數(shù)據(jù)為“科比命中率”,其中命名實體包括:科比、命中率,則可以對“科比”,“科比命中率”,“命中率”進行搜索。
本發(fā)明實施例提供了一種搜索方法,由服務(wù)器接收從前端頁面輸入的文本數(shù)據(jù),并根據(jù)文本數(shù)據(jù)生成用戶意圖數(shù)據(jù)。服務(wù)器識別用戶意圖數(shù)據(jù)中的命名實體,并采用命名實體進行搜索。本發(fā)明實施例中的服務(wù)器能夠根據(jù)用戶輸入的文本數(shù)據(jù),精準(zhǔn)的提取用戶意圖數(shù)據(jù),確定用戶需求,并對用戶意圖數(shù)據(jù)中的命名實體進行搜索,更精確的查找用戶需要的數(shù)據(jù),簡化了用戶查找數(shù)據(jù)的操作,提高了用戶體驗。
參照圖2,示出了本發(fā)明的一種搜索方法實施例2的步驟流程圖,具體可以包括如下步驟:
步驟201,接收從前端頁面輸入的文本數(shù)據(jù);
在本發(fā)明實施例中,前端頁面可以是指應(yīng)用程序app中的頁面,也可以是瀏覽器打開的網(wǎng)頁頁面。
在本發(fā)明實施例中,所述步驟201可以包括如下子步驟:
子步驟s11,接收從前端頁面輸入的語音數(shù)據(jù);
子步驟s12,將所述語音數(shù)據(jù)識別為文本數(shù)據(jù)。
當(dāng)用戶想搜索某些體育數(shù)據(jù)時,用戶可以在前端頁面輸入語音數(shù)據(jù)。前端頁面將語音數(shù)據(jù)上傳到后端服務(wù)器,服務(wù)器將語音數(shù)據(jù)識別為文本數(shù)據(jù)。
當(dāng)然,語音數(shù)據(jù)的識別也可以由前端頁面復(fù)制。前端頁面接收用戶輸入的語音數(shù)據(jù)后,將語音數(shù)據(jù)轉(zhuǎn)換為文本數(shù)據(jù)再上傳至服務(wù)器。
步驟202,確定文本數(shù)據(jù)中的目標(biāo)詞;
由于文本數(shù)據(jù)中的某些詞語可能會存在中文-英文轉(zhuǎn)換詞,或中文-拼音轉(zhuǎn)換詞等等。在對文本數(shù)據(jù)進行處理時,可以將文本數(shù)據(jù)中的目標(biāo)詞篩選出來,并用相應(yīng)的轉(zhuǎn)換詞進行替換。
在服務(wù)器中可以設(shè)置一個映射表來存儲目標(biāo)詞和對應(yīng)的轉(zhuǎn)換詞。服務(wù)器將文本數(shù)據(jù)中的詞語與在映射表中進行查找,從而確定文本數(shù)據(jù)中的目標(biāo)詞。
例如,文本數(shù)據(jù)為“科比命中率”,其中的目標(biāo)詞為“科比”,對應(yīng)的英文轉(zhuǎn)換詞為“kobe”,對應(yīng)的拼音轉(zhuǎn)換詞為“kebi”。替換后的新文本數(shù)據(jù)可以為:“kobe命中率”、“kebi命中率”。
步驟203,確定與所述目標(biāo)詞對應(yīng)的轉(zhuǎn)換詞;
步驟204,采用所述轉(zhuǎn)換詞替換所述目標(biāo)詞,得到新的文本數(shù)據(jù)。
在本發(fā)明實施例中,在得到新的文本數(shù)據(jù)之后,還可以對新的文本數(shù)據(jù)進行糾錯處理。
參照圖3所示為本發(fā)明實施例中一種對文本數(shù)據(jù)進行糾錯處理的示意圖。首先,建立文本數(shù)據(jù)的trie樹(字典樹)。除根節(jié)點root外,每一個節(jié)點表示一個字詞,字詞后的數(shù)字表示從父親節(jié)點到這個路徑的詞頻之和。
假如輸入的文本數(shù)據(jù)是“中山市”,順著trie樹的路徑,找到“中山”的節(jié)點,該節(jié)點下面沒有“市”這個路徑(也就是沒有“中山市”這個節(jié)點),則在“中山”這個節(jié)點之下的節(jié)點:“中山路”、“中山陵”中選擇詞頻最大的詞作為糾錯詞來代替原來的文本數(shù)據(jù),也就是選擇“中山路”替換“中山市”。
除了可以采用基于trie樹的糾錯方法外,本領(lǐng)域技術(shù)人員還可以采用其他方式對文本數(shù)據(jù)進行糾錯除了,本發(fā)明實施例對此不作限定。
步驟205,采用所述新的文本數(shù)據(jù),生成用戶意圖數(shù)據(jù);
在本發(fā)明實施例的一種示例中,所述步驟205可以包括如下子步驟:
子步驟s21,對所述文本數(shù)據(jù)進行分詞處理,得到多個一元分詞和二元分詞;
一元分詞是指由單個字的分詞,將文本數(shù)據(jù)按單字進行切分得到一元分詞。
二元分詞是指兩個字組詞的分詞,將文本數(shù)據(jù)按兩個字進行切分得到各個二元分詞。例如,文本數(shù)據(jù)為“我們吃飯”,分詞處理得到的一元分詞包括:“我”“們”“吃”“飯”,二元分詞包括:“我們”“們吃”“吃飯”。
子步驟s22,計算所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值;
tf-idf(termfrequency–inversedocumentfrequency,詞頻-逆文檔頻率)是一種用于資訊檢索與資訊探勘的常用加權(quán)技術(shù)。tf-idf用以評估一字詞對于一個文件集或一個語料庫中的其中一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時會隨著它在語料庫中出現(xiàn)的頻率成反比下降。
tf-idf值的計算公式為:
tf-idf值=詞頻tf*逆文檔頻率idf
詞頻tf=某個詞在文章中的出現(xiàn)次數(shù)/該文章出現(xiàn)次數(shù)最多的詞的出現(xiàn)次數(shù)
逆文檔頻率idf=log(語料庫的文檔總數(shù)/包含該詞的文檔數(shù)+1)。語料庫的文檔總數(shù)可以是服務(wù)器中所有文檔的總數(shù)。
子步驟s23,采用所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值,生成特征向量;
特征向量z=(z1,z2,……,zn);zi∈r。zi就是每個一元分詞或者二元分詞的tf-idf值。
子步驟s24,將所述特征向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
具體的,意圖識別模型可以為線性核的svm(supportvectormachine,支持向量機),svm是一個有監(jiān)督的學(xué)習(xí)模型,可以用來進行分類。
在本發(fā)明實施例中,可以預(yù)先采用包含體育數(shù)據(jù)的訓(xùn)練樣本進行機器訓(xùn)練,以生成可以對體育數(shù)據(jù)進行分類的意圖識別模型。
意圖識別模型生成后,可以將特征向量輸入到模型中,由意圖識別模型對特征向量進行分類,分類得到的結(jié)果就是用戶意圖數(shù)據(jù)。
在本發(fā)明實施例的另一種示例中,所述步驟205可以包括如下子步驟:
子步驟s31,對所述文本數(shù)據(jù)進行分詞處理,得到多個分詞;
將文本數(shù)據(jù)切分得到多個分詞。
子步驟s32,計算各個分詞的詞向量;
要將自然語言交給機器學(xué)習(xí)中的算法來處理,通常需要首先將語言數(shù)學(xué)化,詞向量就是用來將語言中的詞進行數(shù)學(xué)化的一種方式。通過訓(xùn)練將某種語言中的每一個詞映射成一個固定長度的向量。
子步驟s33,累加所述各個分詞的詞向量得到語義向量;
例如,假設(shè)文本數(shù)據(jù)轉(zhuǎn)換成了3個詞向量,每個詞向量維度為2,則詞向量分別為[0.1,04],[0.3,0.1],[0.5,0.5]那么這個句子的文檔向量就是[0.1,0.4]+[0.3,0.1]+[0.5,0.5]=[0.9,1.0]。
子步驟s34,將所述語義向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
具體可以采用作為訓(xùn)練樣本的體育數(shù)據(jù)進行訓(xùn)練,以生成可以對體育數(shù)據(jù)進行分類的意圖識別模型。
意圖識別模型生成后,可以將特征向量輸入到模型中,由意圖識別模型對特征向量進行分類,分類得到的結(jié)果就是用戶意圖數(shù)據(jù)。
步驟206,識別所述用戶意圖數(shù)據(jù)中的命名實體;
在自然語言處理技術(shù)中,命名實體識別的本質(zhì)可以認為是一個序列標(biāo)注問題。
所謂序列標(biāo)注是指對一個輸入序列(x=x1,x2,x3,……,xn)中的每個元素打上標(biāo)注集合中的某個標(biāo)注,得到標(biāo)注序列(y=y(tǒng)1,y2,y3,……,yn)。
例如,假設(shè)標(biāo)注集合包括4種(b:人名開始;m:人名中間;e:人名結(jié)束;n:不是人名)。輸入序列為“張三和李四去吃飯”對應(yīng)的標(biāo)注序列為:benbennn。
在得到標(biāo)注序列后,可以根據(jù)各個字的標(biāo)注,切分得到各個詞性的命名實體。例如,be的標(biāo)注組合對應(yīng)的是人名的命名實體,當(dāng)出現(xiàn)be時進行切分,出現(xiàn)n時進行切分。則切分的標(biāo)注序列為:be/n/be/n/n/n。對應(yīng)的輸入序列切分為:張三/和/李四/去/吃/飯。
在對輸入序列進行分詞后,可以按照得到各個詞性的命名實體。
本領(lǐng)域技術(shù)人員應(yīng)該可以理解,上述的命名實體識別方法僅僅是本發(fā)明的示例,本領(lǐng)域技術(shù)人員可以命名實體識別方法,本發(fā)明在此不作限制。如,在標(biāo)注集合中可以設(shè)定更多的標(biāo)注類型。選擇命名實體時,可以采用其他標(biāo)注類型作為命名實體。
在本發(fā)明實施例中,所述步驟206可以包括:將所述用戶意圖數(shù)據(jù)輸入預(yù)先建立的命名實體模型進行詞性標(biāo)注,獲得命名實體。
具體的,可以采用預(yù)先建立的blstm(bidirectionallongshort-termmemory,雙向-長短期記憶網(wǎng)絡(luò))模型對文本數(shù)據(jù)進行標(biāo)注。
參照圖4所示,為本發(fā)明實施例中一種采用雙向-長短期記憶網(wǎng)絡(luò)模型blstm對文本數(shù)據(jù)進行標(biāo)注的示意圖。其中雙向lstm模型包括多對雙向的節(jié)點,在向blstm模型輸入文本數(shù)據(jù)“科比命中率”后,blstm模型中的每一對節(jié)點分別對一個字進行標(biāo)注。例如,標(biāo)注集合包括:(bn:球員名稱開始;en:球員名稱結(jié)束;bp:籃球術(shù)語開始;mp:籃球術(shù)語中間;ep:籃球術(shù)語結(jié)束)。
圖中,對“科”標(biāo)注為bn,對“比”標(biāo)注為en,對“命”標(biāo)注為bp,對“中”標(biāo)注為mp,對“率”標(biāo)注為ep。
根據(jù)對各個字的標(biāo)注可以確定文本中的命名實體。如根據(jù)bn,en的組合可以確定球員名稱“科比”。根據(jù)bp,mp,ep的組合可以確定籃球術(shù)語“命中率”。
步驟207,采用所述命名實體進行搜索。
采用用戶意圖數(shù)據(jù)中的一個或多個命名實體進行搜索。例如,只對詞性為人名的命名實體進行搜索。
在本發(fā)明實施例中,所述的方法還可以包括:
獲取與所述命名實體關(guān)聯(lián)的關(guān)聯(lián)詞;
采用所述關(guān)聯(lián)詞進行搜索。
具體的,在服務(wù)器中預(yù)置有關(guān)聯(lián)映射表。關(guān)聯(lián)映射表中存儲有詞語與其關(guān)聯(lián)詞的映射關(guān)系。如,關(guān)聯(lián)映射表存儲了詞語與其反義詞的映射關(guān)系。
服務(wù)器將命名實體在關(guān)聯(lián)映射表中進行查找,若命名實體具有對應(yīng)的關(guān)聯(lián)詞,則獲取對應(yīng)的關(guān)聯(lián)詞進行搜索。
在本發(fā)明實施例中,所述的方法還可以包括:
若所述命名實體的詞性不包括目標(biāo)詞性,則對所述用戶意圖數(shù)據(jù)進行模糊匹配處理,獲得新的用戶意圖數(shù)據(jù);
將所述新的用戶意圖數(shù)據(jù)輸入預(yù)先建立的命名實體模型進行詞性標(biāo)注,獲得命名實體。
具體的,在服務(wù)器中預(yù)置有模糊映射表。模糊映射表中存儲有詞語和與其具有映射關(guān)系的模糊詞。
當(dāng)用戶意圖數(shù)據(jù)中的不包含目標(biāo)詞性的命名實體時,對用戶意圖數(shù)據(jù)進行模糊匹配處理。模糊匹配處理是指將用戶意圖數(shù)據(jù)中的命名實體在模糊映射表中進行查找,若命名實體具有對應(yīng)的模糊詞,則獲取對應(yīng)的模糊詞替換用戶意圖數(shù)據(jù)中對應(yīng)命名實體,得到新的用戶意圖數(shù)據(jù)。之后,服務(wù)器對新的用戶意圖數(shù)據(jù)進行標(biāo)注,以獲得新的命名實體。
步驟208,獲取針對所述命名實體的搜索結(jié)果;
服務(wù)器獲取采用命名實體進行搜索后得到的搜索結(jié)果。
步驟209,將所述搜索結(jié)果返回所述前端頁面進行展現(xiàn)。
前端頁面可以是指應(yīng)用程序app中的頁面,或者瀏覽器打開的網(wǎng)頁頁面等。用戶可以在前端頁面查看搜索結(jié)果。
需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實施例并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。
參照圖5,示出了本發(fā)明的一種搜索裝置實施例的結(jié)構(gòu)框圖,具體可以包括如下模塊:
文本數(shù)據(jù)接收模塊301,用于接收從前端頁面輸入的文本數(shù)據(jù);
用戶意圖數(shù)據(jù)生成模塊302,用于采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù);
命名實體識別模塊303,用于識別所述用戶意圖數(shù)據(jù)中的命名實體;
命名實體搜索模塊304,用于采用所述命名實體進行搜索。
在本發(fā)明實施例中,所述的裝置還可以包括:
搜索結(jié)果獲取模塊,用于獲取針對所述命名實體的搜索結(jié)果;
搜索結(jié)果展現(xiàn)模塊,用于將所述搜索結(jié)果返回所述前端頁面進行展現(xiàn)。
在本發(fā)明實施例中,所述文本數(shù)據(jù)接收模塊301可以包括:
語音數(shù)據(jù)接收子模塊,用于接收從前端頁面輸入的語音數(shù)據(jù);
文本數(shù)據(jù)識別子模塊,用于將所述語音數(shù)據(jù)識別為文本數(shù)據(jù)。
在本發(fā)明實施例中,所述命名實體識別模塊303可以包括:
模型標(biāo)注模塊,用于將所述用戶意圖數(shù)據(jù)輸入預(yù)先建立的命名實體模型進行詞性標(biāo)注,獲得命名實體。
在本發(fā)明實施例中,所述的裝置還可以包括:
目標(biāo)詞確定模塊,用于在用戶意圖數(shù)據(jù)生成模塊,采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)之前,確定文本數(shù)據(jù)中的目標(biāo)詞;
轉(zhuǎn)換詞確定模塊,用于確定與所述目標(biāo)詞對應(yīng)的轉(zhuǎn)換詞;
替換模塊,用于采用所述轉(zhuǎn)換詞替換所述目標(biāo)詞,得到新的文本數(shù)據(jù)。
在本發(fā)明實施例中,所述的裝置還可以包括:
糾錯模塊,用于在用戶意圖數(shù)據(jù)生成模塊,采用所述文本數(shù)據(jù),生成用戶意圖數(shù)據(jù)之前,對所述文本數(shù)據(jù)進行糾錯處理。
在本發(fā)明實施例中,所述的裝置還可以包括:
模糊匹配模塊,用于若所述命名實體的詞性不包括目標(biāo)詞性,則對所述用戶意圖數(shù)據(jù)進行模糊匹配處理,獲得新的用戶意圖數(shù)據(jù)。
在本發(fā)明實施例中,所述的裝置還可以包括:
關(guān)聯(lián)詞獲取模塊,用于獲取與所述命名實體關(guān)聯(lián)的關(guān)聯(lián)詞;
關(guān)聯(lián)詞搜索模塊,用于采用所述關(guān)聯(lián)詞進行搜索。
在本發(fā)明實施例中,所述用戶意圖數(shù)據(jù)生成模塊302可以包括:
第一分詞子模塊,用于對所述文本數(shù)據(jù)進行分詞處理,得到多個一元分詞和二元分詞;
頻率值計算子模塊,用于計算所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值;
第一特征向量生成子模塊,用于采用所述一元分詞和二元分詞的詞頻-逆文檔頻率tf-idf值,生成特征向量;
第一模型分類子模塊,用于將所述特征向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
在本發(fā)明實施例中,所述用戶意圖數(shù)據(jù)生成模塊302可以包括:
第二分詞子模塊,用于對所述文本數(shù)據(jù)進行分詞處理,得到多個分詞;
詞向量計算子模塊,用于計算各個分詞的詞向量;
語義向量生成子模塊,用于累加所述各個分詞的詞向量得到語義向量;
第二模型分類子模塊,用于將所述語義向量輸入預(yù)先建立的意圖識別模型進行分類,獲得用戶意圖數(shù)據(jù)。
對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明實施例的實施例可提供為方法、裝置、或計算機程序產(chǎn)品。因此,本發(fā)明實施例可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明實施例可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、cd-rom、光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明實施例是參照根據(jù)本發(fā)明實施例的方法、終端設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理終端設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理終端設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理終端設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理終端設(shè)備上,使得在計算機或其他可編程終端設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程終端設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明實施例的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明實施例范圍的所有變更和修改。
最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設(shè)備中還存在另外的相同要素。
以上對本發(fā)明所提供的一種搜索方法和一種搜索裝置,進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。