查詢語句的獲取方法及服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001] 本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種查詢語句的獲取方法及服務(wù)器。
【背景技術(shù)】
[0002] 在網(wǎng)頁頁面的搜索中,當(dāng)用戶通過搜索框輸入查詢信息,且該查詢信息為一個(gè)詞 語時(shí),通常需要根據(jù)該詞語與網(wǎng)頁服務(wù)器已存儲(chǔ)的詞語的關(guān)聯(lián)度,來猜測用戶想要輸入的 查詢語句,并將該猜測的查詢語句作為備選查詢語句推薦給用戶。
[0003] 詞對(duì)的關(guān)聯(lián)度計(jì)算即為在給定前η個(gè)詞的情況下,計(jì)算出現(xiàn)某個(gè)詞的概率。在關(guān) 聯(lián)度的計(jì)算中,最常用的模型是N元語言(N-gram)模型,N表示長文本中連續(xù)出現(xiàn)的N個(gè) 詞,該模型基于馬爾科夫假設(shè),其認(rèn)為:1)第η個(gè)詞出現(xiàn)的概率僅僅依賴于第n-1個(gè)詞出現(xiàn) 的概率;2)n個(gè)詞連續(xù)出現(xiàn)的概率等于這η個(gè)詞分別出現(xiàn)的概率的乘積。用公式表達(dá)如下:
[0004] P (W1W2…Wn) = P (W1) ? (W21W1) P (Wa IW1W2)…P (WnW1W2…Wa i)
[0005] 對(duì)于P (Wi IW1W2. .. Wi D可采用最大似然估計(jì)計(jì)算,計(jì)算公式如下:
[0006]
[0007] 其中,C (W1W2. .. W1)表示在訓(xùn)練語料中,W1W2. .. W1連續(xù)出現(xiàn)的頻率。在上述第一個(gè) 公式中,盡管η的取值越大,對(duì)下一個(gè)詞出現(xiàn)的約束信息更多,估計(jì)概率更有辨識(shí)度,但η值 越大,數(shù)據(jù)稀疏的情況就越明顯,零概率的產(chǎn)生就更容易,而且計(jì)算代碼也隨之增大。而對(duì) 于較小的η,由于在訓(xùn)練語料中能獲得更可靠的統(tǒng)計(jì)信息,所以估計(jì)的概率會(huì)更可靠。由上, 最常用的N-gram模型是二元語言模型(Bigram),其計(jì)算公式如下:
[0008] P (W1W2…Wn) = P (W1) P (W21W1) P (Wa IW2)…P (Wn I Wn i)
[0009]
[0010] 假如訓(xùn)練語料中有以下3個(gè)句子:
[0011] SWIMMING IS GOOD EXERCISE. TENNIS IS A GOOD FORM OF EXERCISE.
[0012] TENNIS IS BETTER THAN BADMINTON.
[0013] 則通過Bigram模型,預(yù)估句子TENNIS IS GOOD EXERCISE的概率:
[0014]
[0015] 但實(shí)際情況下,數(shù)據(jù)是不完全的,也即數(shù)據(jù)存在稀疏性,使得存在CW1 A) = 0情 況,此時(shí)P(W11W1 J的最大似然估計(jì)值P(W11W1 D = 0,即P(H··Wn) = 0。
[0016] 如,訓(xùn)練語料還是上面的3句,對(duì)于句子BADMINTON IS GOOD EXERCISE,使用 Bigram模型預(yù)估其出現(xiàn)的概率為:
[0017]
[0018] 在預(yù)估計(jì)一個(gè)句子W1WyWn出現(xiàn)的概率時(shí),只要存在一個(gè)C (Wt,t) = 0,則就會(huì)有 POV1W2…Wn) =〇。因此,為了減少零概率的出現(xiàn),需要進(jìn)行平滑計(jì)算。
[0019] 現(xiàn)有技術(shù)中,提出了一系列經(jīng)典的平滑算法,這些算法的基本思想是在保證概率 和為1的基礎(chǔ)上,降低已出現(xiàn)的N-gram條件概率分布,從而使得未出現(xiàn)的N-gram提交 概率分布非零。加一(Add-one)平滑法,也稱拉普拉斯(Laplace)平滑法、古德-圖靈 (Good-Turing)平滑法、聶氏(Kneser-Ney)平滑法、線性內(nèi)插(Linear Interpolation)平 滑法、卡茨退避(Katz Backoff)平滑法以及愚蠢退避(Stupid Backoff)平滑法等都是常 用的平滑算法。Add-one平滑法的思想很簡單,就是對(duì)于每個(gè)N-gram,C (WkWk+1…Wk+n)都執(zhí) 行加1操作,認(rèn)為它們?cè)谟?xùn)練語料中至少出現(xiàn)一次,從而有:
[0020]
[0021] 其屮V是N-gram在訓(xùn)練語科屮的個(gè)數(shù)。Good-Turing平滑法和Add-One比較相 似。然而無論是Add-one平滑法還是Good-Turing平滑法,都不是一種比較好的平滑計(jì)算, 因?yàn)樗麄儗?duì)所有未出現(xiàn)的N-gram都采取相同的操作,忽略了不同N-gram之間的概率差異 性。
[0022] 與Add-one 平滑法以及 Good-Turing平滑法不同,Linear Interpolation 平滑法、 Katz Backoff平滑法、Kneser-Ney平滑法以及Stupid Backoff平滑法都是一種基于線性 插值的平滑技術(shù),即利用低階N-gram模型與高階N-gram模型作線性組合,當(dāng)高階N-gram 模型不存在的時(shí)候,使用低階N-gram模型來提供有用的信息。其中由谷歌(Google)提出 的針對(duì)大規(guī)模N-gram模型的Stupid Backoff的計(jì)算公式如下:
[0023]
[0024] 其中,α取經(jīng)驗(yàn)值,在Google的實(shí)驗(yàn)中,α取0.4。該平滑技術(shù)是針對(duì)一句話的 關(guān)聯(lián)度進(jìn)行優(yōu)化的,并沒有對(duì)詞對(duì)的關(guān)聯(lián)度的計(jì)算方法進(jìn)行優(yōu)化,即存在將相關(guān)聯(lián)的詞對(duì) 的關(guān)聯(lián)度計(jì)算為〇的情況,從而不能有效生成參考查詢語句庫,也即不能向用戶推薦正確 的備選查詢語句。
【發(fā)明內(nèi)容】
[0025] 本申請(qǐng)實(shí)施例提供了一種查詢語句的獲取方法及服務(wù)器,以解決由于相關(guān)聯(lián)的詞 對(duì)存在關(guān)聯(lián)度為〇的情況而導(dǎo)致的不能向用戶推薦正確的備選查詢語句的問題。
[0026] 第一方面,提供了一種查詢語句的獲取方法,該方法包括:
[0027] 對(duì)語料庫中的第一關(guān)聯(lián)詞和第二關(guān)聯(lián)詞,在所述語料庫中識(shí)別并獲取所述第一關(guān) 聯(lián)詞與所述第二關(guān)聯(lián)詞連續(xù)排列的連排次數(shù),間隔排列的間列次數(shù)和所述第一關(guān)聯(lián)詞的總 次數(shù);
[0028] 根據(jù)所述連排次數(shù),所述間列次數(shù)和所述總次數(shù),獲得所述第一關(guān)聯(lián)詞與第二關(guān) 聯(lián)詞的關(guān)聯(lián)度,并按照所述關(guān)聯(lián)度,將所述第一關(guān)聯(lián)詞和所述第二關(guān)聯(lián)詞,生成參考查詢語 句庫;
[0029] 接收用戶在搜索框中輸入的查詢信息;
[0030] 根據(jù)所述查詢信息,從所述參考查詢語句庫中獲取相關(guān)聯(lián)的查詢語句,以將所述 查詢語句作為備選查詢語句推薦給用戶。
[0031] 第二方面,提供了一種服務(wù)器,所述服務(wù)器包括:處理單元、生成單元、接收單元和 獲取單元;
[0032] 所述處理單元,用于對(duì)語料庫中的第一關(guān)聯(lián)詞和第二關(guān)聯(lián)詞,在所述語料庫中識(shí) 別并獲取所述第一關(guān)聯(lián)詞與所述第二關(guān)聯(lián)詞連續(xù)排列的連排次數(shù),間隔排列的間列次數(shù)和 所述第一關(guān)聯(lián)詞的總次數(shù);
[0033] 所述生成單元,用于根據(jù)所述連排次數(shù),所述間列次數(shù)和所述總次數(shù),獲得所述第 一關(guān)聯(lián)詞與第二關(guān)聯(lián)詞的關(guān)聯(lián)度,并按照所述關(guān)聯(lián)度,將所述第一關(guān)聯(lián)詞和所述第二關(guān)聯(lián) 詞,生成參考查詢語句庫;
[0034] 所述接收單元,用于接收用戶在搜索框中輸入的查詢信息;
[0035] 所述獲取單元,用于根據(jù)所述查詢信息,從所述參考查詢語句庫中獲取相關(guān)聯(lián)的 查詢語句,以將所述查詢語句作為備選查詢語句推薦給用戶。
[0036] 本申請(qǐng)實(shí)施例提供的查詢語句的獲取方法及服務(wù)器,由于同時(shí)獲取了第一關(guān)聯(lián)詞 與所述第二關(guān)聯(lián)詞間隔排列的間列次數(shù),因此本申請(qǐng)可以提高詞對(duì)的關(guān)聯(lián)度,從而本申請(qǐng) 的方法能夠有效生成參考查詢語句庫,也即能向用戶推薦正確的備選查詢語句。
【附圖說明】
[0037] 圖1為本申請(qǐng)實(shí)施例一提供的查詢語句的獲取方法流程圖;
[0038] 圖2為本申請(qǐng)實(shí)施例二提供的服務(wù)器的示意圖。
【具體實(shí)施方式】
[0039] 下面通過附圖和實(shí)施例,對(duì)本申請(qǐng)的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
[0040] 本申請(qǐng)實(shí)施例提供的查詢語句的獲取方法及服務(wù)器,由于同時(shí)獲取了第一關(guān)聯(lián)詞 與所述第二關(guān)聯(lián)詞間隔排列的間列次數(shù),因此本申請(qǐng)可以提高詞對(duì)的關(guān)聯(lián)度,從而本申請(qǐng) 的方法能夠有效生成參考查詢語句庫,也即能向用戶推薦正確的備選查詢語句。
[0041] 圖1為本申請(qǐng)實(shí)施例一提供的查詢語句的獲取方法流程圖。所述方法的執(zhí)行主體 為服務(wù)器,