TWI490712B - Search results generation method and information search system - Google Patents
Search results generation method and information search system Download PDFInfo
- Publication number
- TWI490712B TWI490712B TW099106628A TW99106628A TWI490712B TW I490712 B TWI490712 B TW I490712B TW 099106628 A TW099106628 A TW 099106628A TW 99106628 A TW99106628 A TW 99106628A TW I490712 B TWI490712 B TW I490712B
- Authority
- TW
- Taiwan
- Prior art keywords
- sorting
- matching information
- linear
- model
- information
- Prior art date
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本申請涉及電腦應用領域,特別是涉及一種搜索結果生成方法及資訊搜索系統。
資訊搜索系統是一種能夠為用戶提供資訊檢索服務的系統,以互聯網中常用的搜索引擎為例,作為應用在互聯網領域的搜索系統,搜索引擎目前已經成為用戶上網必不可少的輔助工具之一。從用戶的角度看,搜索引擎一般提供一個包含搜索框的頁面,用戶在搜索框輸入關鍵字或其他搜索條件,通過瀏覽器提交給搜索引擎後,搜索引擎就會回傳與用戶輸入的關鍵字內容相匹配的資訊。
針對同樣的用戶搜索請求(例如用戶在搜索時所輸入的搜索關鍵字),搜索引擎往往能夠檢索到多條匹配資訊,這個數量可能會達到數十至數萬。而從用戶的角度來講,往往只會重點關注在搜索結果中排序比較靠前的資訊。因此,在搜索引擎向用戶提供搜索結果時,如何對這些資訊進行排序就顯得尤為重要,搜索結果的排序是否合理將直接影響著用戶的體驗。
搜索引擎在對資訊進行排序時,會綜合考慮一種或多種因素(例如:搜索關鍵字在匹配資訊中出現的次數、搜索關鍵字在匹配資訊中所處的位置等等),構建形如y=f(x1
,x2
,...,xn
)的排序模型,根據該模型為每條匹配資訊進行評分,最後依據分數高低對每條匹配資訊進行排序。其中,上述模型的輸入參數,即函數引數x1
,x2
,...,xn
,分別表示所考慮的各種因素,稱為匹配資訊的特徵,模型的輸出即應變數y表示匹配資訊的得分數。
根據y=f(x1
,x2
,...,xn
)具體形式的不同,可以將排序模型分為線性排序模型和非線性排序模型兩大類。一般而言,相對於線性排序模型,非線性排序模型的擬合能力更強,因此使用非線性排序模型可以實現更好的搜索效果(即匹配資訊的排列順序更符合用戶的實際需求,或者與用戶期待的順序更趨於一致)。但是,由於非線性排序模型的複雜度高,因此,其處理速度較為緩慢。特別是在對大量匹配資訊進行排序處理時,需要佔用很長的時間來生成搜索結果,對用戶體驗造成了影響。
為解決上述技術問題,本申請提供一種搜索結果生成方法及資訊搜索系統,以提高對匹配資訊排序的處理速度,提升用戶體驗,技術方案如下:本申請提供一種搜索結果生成方法,包括:資訊搜索系統接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;使用線性排序模型對所述各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果,其中,N1所檢索到的匹配資訊的總數目;使用非線性排序模型對所述第一排序結果中的前N2條匹配資訊進行排序,得到第二排序結果,其中N2<N1;根據所述第二排序結果,生成搜索結果。
本申請還提供一種資訊搜索系統,包括:資訊檢索單元,用於接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;線性排序單元,用於使用線性排序模型對所述資訊檢索單元檢索獲得的各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果,其中,N1所檢索到的匹配資訊的總數目;非線性排序單元,用於使用非線性排序模型對所述線性排序單元排序得到的第一排序結果中的前N2條匹配資訊進行排序,得到第二排序結果,其中N2<N1;與現有技術相比,本申請實施例所提供的技術方案,首先使用線性排序模型對N1條匹配資訊進行排序處理,然後對排序結果的前N2條再使用非線性排序模型進行排序處理。由於線性排序模型的處理速度是能夠保證的,因此對於大量(N1條)的匹配資訊,首先利用線性排序模型進行預處理,然後通過設置N2<N1,可以有效減小使用非線性排序模型所處理的資料量,從而提高對匹配資訊排序的整體處理速度。
首先對本申請實施例的一種搜索結果生成方法進行說明,包括:資訊搜索系統接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;使用線性排序模型對所述各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果;使用非線性排序模型對所述第一排序結果中的前N2條匹配資訊進行排序,得到第二排序結果,其中N2<N1;根據所述第二排序結果,生成搜索結果。
為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本申請保護的範圍。
下面以網路搜索應用為例,對本申請所提供的技術方案進行詳細說明,圖1所示為本申請實施例的一種搜索結果生成方法的流程圖,包括以下步驟:S101,搜索引擎接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;當用戶需要在網路上搜索資訊時,會輸入一個或多個搜索條件,一般最為常用的搜索條件是搜索關鍵字,根據具體搜索應用場景的不同,有些搜索引擎還可以支援更多類型的搜索條件,例如資訊發佈時間、資訊屬性等等,本申請實施例中,將各種搜索條件統稱為搜索請求。搜索引擎接收到搜索請求之後,檢索與搜索請求相匹配的資訊。對應不同的搜索應用場景,檢索到的資訊類型也有所不同,例如:在網頁搜索中,檢索到的資訊為網頁;在電子商務搜索中,檢索到的資訊為商品;在文獻搜索中,檢索到的資訊為期刊或論文等等。其中,根據搜索請求檢索與之相匹配的資訊,其實現方法與現有技術相同,本申請實施例對此不再進行詳細說明。
S102,使用線性排序模型對所述各條匹配資訊進行排序,得到第一排序結果;本步驟中,使用線性排序模型為每條匹配資訊進行評分,然後依據分數高低對每條匹配資訊進行排序。
線性排序模型的數學運算式形式如下:
y=f(x1
,x2
,...,xn
)
=a1
x1
+a2
x2
+...+an
xn
在上述模型中,應變數y與每個引數分別構成一次函數關係,其中,模型的輸入參數x1
,x2
,...,xn
,分別表示在排序時需要考慮的各種因素,稱為匹配資訊的特徵;a1
,a2
,...,an
分別為每個特徵的加權係數,an
的大小反映xn
對應特徵對於排序的重要程度。模型的輸出y表示匹配資訊的排序分數。
根據具體的搜索應用需求,系統會根據匹配資訊的一個或多個特徵,來計算每條匹配資訊的排序分數大小。這些特徵可能涉及多個方面,舉例如下:
1)搜索關鍵字在匹配資訊中出現的次數。
一般認為,搜索關鍵字在某條匹配資訊中出現的次數越多,則該條匹配資訊應該獲得越高的排序分數。
2)搜索關鍵字在匹配資訊中所處的位置。
一般認為,如果搜索關鍵字出現在某條匹配資訊的標題、摘要等重要部分,則該條匹配資訊應該獲得較高的排序分數。
3)匹配資訊的用戶回饋量。
用戶回饋量能夠反映用戶對某條資訊關注程度,搜索引擎可以通過讀取用戶回饋日誌,獲得各條匹配資訊所對應的用戶回饋量,並根據用戶回饋量為各條匹配資訊評分,其基本原則是:用戶對某條匹配資訊的關注程度越高,則該條匹配資訊應該獲得越高的排序分數。
4)匹配資訊的來源。
匹配資訊的來源也可以作為決定其排列順序的因素,例如,對於網頁搜索來說,如果匹配資訊來源於大型入口網站或官方網站,則可獲得較高的排序分數。
以上僅僅列舉了幾種常用的匹配資訊特徵,匹配資訊還具有很多可以用來計算排序分數的特徵,這裡不再一一說明。
當一個排序模型決定以後,該模型所要使用的特徵種類以及數量也就決定了。系統在對匹配資訊進行排序時,首先要獲取每條匹配資訊的每個特徵值,然後根據排序模型計算出每條匹配資訊的排序分數,最後根據排序分數大小對每條匹配資訊進行排序。
舉例說明,假設排序模型為y=f(x1
,x2
,x3
),則其使用的特徵數量為3,待排序的匹配資訊數量為10,則系統需要分別獲取10組(x1
,X2
,x3
)的特徵值,然後分別計算出10個y值,最後根據10個y值的大小對這10條匹配資訊進行排序。
S103,使用非線性排序模型對所述第一排序結果做進一步排序,得到第二排序結果;本步驟的執行方法與S102類似,不同之處在於,本步驟所依據的排序模型為非線性排序模型。
對匹配資訊進行排序的目的,是希望最終展現給用戶的搜索結果能夠更加符合用戶的實際需求。可以想像的是,匹配資訊的各個特徵與其最終的排序分數在客觀上是存在某種對應關係的。建立排序模型的目的,就是儘量去擬合這種對應關係。本領域技術人員所公知的是,線性函數的擬合能力是有限的,而非線性函數在理論上可以擬合任何形式的關係。因此,在多數情況下,使用非線性排序模型,可以實現更好的搜索效果,即匹配資訊的排列順序更符合用戶的實際需求。
由於非線性函數的計算複雜度高於線性函數,因此,在同等條件下,使用非線性排序模型進行排序,其處理速度一般會遠遠低於線性排序模型。這裡所述的同等條件,包括:使用同樣的特徵值、處理相同數量的匹配資訊。
為了實現更高的排序速度,同時保證搜索效果,本實施例所採用的方案是:先使用線性排序模型對匹配資訊進行第一次排序,得到第一排序結果,然後再使用非線性排序模型對第一排序結果進行第二次排序。其中,第二次排序所處理的匹配資訊數量小於第一次排序所處理的匹配資訊數量。
假設第一次排序所處理的匹配資訊數量為N1,可以理解的是,從整體上看,經過第一次排序處理後,排在前面的匹配資訊基本上都是比較符合用戶需求的,但是由於線性排序模型的局限性,其具體的排列順序與用戶的實際區別需求可能還有較大的差距。那麼,對於這部分資訊,可以進一步使用非線性排序模型進行排序處理,即:對於在第一排序結果中靠前的N2條匹配資訊,使用非線性排序模型進行排序處理,得到第二排序結果。
其中,N2的取值,可以根據具體的搜索需求決定,考慮到一般用戶只會關注搜索結果的前幾頁,因此,可以根據每頁可顯示的匹配資訊條數,為N2選取一個較小的值(相對於N1),例如200、400等;或者,也可以根據N1來設定N2,例如,將N2的值取為N1的1/10、1/20等。
本領域技術人員可以理解的是,相對於線性排序模型,在非線性排序模型中,可以適當減少一些細節特徵以提高第二次排序的處理速度,或者適當增加一些細節特徵以實現更好的搜索效果。但是,為了保證第一次排序和第二次排序的結果在整體上的一致性,線性排序模型和非線性排序模型所使用的主要特徵應該是相同的,當然,線性排序模型和非線性排序模型也可以使用完全相同的特徵。
S104,根據所述第二排序結果,生成搜索結果。
搜索引擎根據使用第二次排序的結果,生成最終的搜索結果展現給用戶。
在本實施例中,首先使用線性排序模型對N1條匹配資訊進行排序處理,然後對排序結果的前N2條再使用非線性排序模型進行排序處理。由於線性排序模型的處理速度是能夠保證的,因此對於大量(N1條)的匹配資訊,首先利用線性排序模型進行預處理,然後通過設置N2<N1,可以有效減小使用非線性排序模型所處理的資料量,從而提高對匹配資訊排序的整體處理速度。
實施例二:
傳統的排序方法,是由人工設計排序模型,其局限性在於只能處理一些簡單的特徵組合。Learning to Rank(排序學習)是目前比較流行的一種排序方法,與傳統的排序方法相比,Learning to Rank方法可以把更多的特徵列入考慮。其原理是使用資料樣本對排序模型進行訓練,令模型學習用戶的實際需求,從而使得排序結果更符合用戶的實際需求。特別是對於非線性排序模型,通過訓練,可以使排序結果與用戶期待的排序結果基本趨於一致。
在本申請的優選實施方案中,可以將經訓練所決定的線性排序模型和非線性排序模型用於第一次排序和第二次排序,由於這類模型所涉及的特徵往往比較多,計算複雜度高,因此,為了保證處理速度,可以在第一次排序之前,再增加一個排序預處理的步驟。參見圖2所示,本實施例所提供的一種搜索結果生成方法包括以下步驟:
S201,搜索引擎接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;
S202,對各條匹配資訊進行排序預處理。
S203,使用線性排序模型對經過排序預處理的匹配資訊進行排序,得到第一排序結果;
S204,使用非線性排序模型對所述第一排序結果做進一步排序,得到第二排序結果;
S205,根據所述第二排序結果,生成搜索結果。
本實施例與實施例一相比,主要的區別是增加了一個預處理的步驟S202,其目的是減小使用線性排序模型所處理的資料量。所述預處理,可以是過濾操作,例如濾掉一些過期的、鏈結無效的匹配資訊;也可以是簡單的排序操作,一般是採用一些簡單傳統排序演算法,例如TF-IDF,BM25等,這些演算法所使用的排序模型由人工設計,所涉及的特徵也很少。其特點是速度快,但是相應的排序效果也比較差。
可見,從原理上講,S202對於S203的作用,相當於S203對於S204的作用。排序預處理的速度比線性排序模型要快很多,而效果也比較差。假設S201中共檢索到N0條匹配信息,S202的作用是通過預處理,從N0條資訊中選擇出N1條匹配資訊(或者將N1條匹配資訊排在前面),以供線性排序模型處理。從數量上來講,N1一般是遠小於N0的,因而可以顯著提高第一次排序的處理速度。
下面以一個簡單的示意圖,說明排序預處理、第一次排序,第二次排序的關係及效果。首先做一個假設:將所有的匹配資訊按照用戶的實際需求分為兩類:真正相關的匹配資訊和一般匹配資訊。排序的目的,就是儘量將所有真正相關的匹配資訊排在前面。如圖3所示,實心圓代表真正相關的匹配資訊,空心圓代表一般匹配資訊。
1)假設N0=100,在100條匹配資訊中共有5條真正相關的匹配資訊,經過排序預處理之後,將5條匹配資訊全部排在了前10位,如圖3a所示。
2)取N1=10,經過第一次排序處理後,排序結果如圖3b所示,可見,相對於圖3a,5條匹配資訊都排在了更為靠前的位置。
3)取N2=6,經過第二次排序處理後,排序結果如圖3c所示,可見,5條匹配資訊全部被排在了最前面。
當然,以上例子僅用於示意性說明,在實際的應用中,N值可能會達到幾十萬、幾百萬或更多。而N1和N2的值可以結合排序的模型的複雜程度和實際需求(包括總數據量、用戶習慣等)決定,例如,可以將N1設為2000-5000,N2設為100-1000,等等。
實施例三:
下面將結合一個具體的應用實例,對本申請的搜索結果生成方法進行說明。
S301,資訊搜索系統接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;
S302,對各條匹配資訊進行排序預處理。
S303,使用線性排序模型對經過排序預處理的匹配資訊進行排序,得到第一排序結果;
本實施例中,取N1=3000,即預處理結果的前3000條,使用線性排序模型進行第一次排序,所採用的線性排序模型為:
y 1
=0.15x 1
+0.1732x 2
+0.873x 3
+0.245x 4
+0.042x 5
其中x1
至x5
為第一次排序時所考慮的匹配資訊的特徵,含義如下:
x1
:考慮的特徵為:搜索關鍵字在匹配資訊文本中出現的次數,將該次數做歸一化處理後即為x1
的值。由模型可知,該值越高,則最終計算得到的排序分數越高。
x2
:考慮的特徵為:搜索關鍵字在匹配資訊標題中出現的次數,將該次數做歸一化處理後即為x2
的值。由模型可知,該值越高,則最終計算得到的排序分數越高。
x3
:考慮的特徵為:搜索關鍵字在匹配資訊標題中的距離。有時,用戶會採用多個關鍵字進行搜索,這種情況下認為,多個關鍵字在標題中的距離越小,則越符合用戶的需求。x3
值的計算方法為:
其中,搜索關鍵字的距離,是以“詞”為單位計算的。根據一定的斷詞規則,可以將任意的片語或短句劃分為若干個“詞”。舉例說明,如果某條匹配資訊的標題為“電腦主機和顯示器的選購方法”,則根據斷詞規則,可以將其劃分為:電腦/主機/和/顯示器/的/選購/方法,共7個詞。如果用戶搜索的關鍵字為“電腦”和“顯示器”,則在上述標題中,這兩個關鍵字之間隔了兩個詞,即距離為2,相應的x3
值為1-(2/7)=5/7。
可以理解的,如果搜索關鍵字與標題完全匹配,則關鍵字的距離為0,x3
值取1,如果搜索關鍵字在標題中沒有出現,則x3
值取0。
x4
:考慮的特徵為:搜索關鍵字和匹配資訊標題的編輯距離。搜索關鍵字和匹配資訊的標題的相似程度,也可以作為計算匹配資訊排序得分的一個因素。該相似程度可以以“編輯距離”來衡量。該編輯距離也是以“詞”為單位計算的。例如,用戶搜索的關鍵字為:“顯示器”,則與標題“電腦主機和顯示器的選購方法”的編輯距離為6,相應的x4
值為1-(6/7)=1/7
可以理解的是,如果搜索關鍵字與標題完全匹配,則編輯距離為0,x4
值取1,如果搜索關鍵字在標題中沒有出現,則編輯距離為∞,x4
值取0。
x5
:考慮的特徵為,搜索關鍵字在匹配資訊文本中的IDF(Inverse Document Frequency,反向文件頻率)值,將IDF做歸一化處理後即為x5
的值。
需要說明的是,為了模型計算方便,上述的x1
至x5
都是經過歸一化處理後的值(即取值在[0,1]區間內),對於歸一化處理的具體方法,本申請實施例不做限定。
S304,使用非線性排序模型對所述第一排序結果做進一步排序,得到第二排序結果;本實施例中,取N2=600,即第一排序結果的前600條,使用非線性排序模型進行第二次排序,所採用的非線性排序模型為:
其中x1
至x5
為第二次排序時所考慮的匹配資訊的特徵,與第一次排序時所考慮的匹配資訊的特徵相同。
S305,根據所述第二排序結果,生成搜索結果。
本實施例中,所採用的線性排序模型及非線性排序模型均為通過訓練所決定的模型。本實施例是基於網頁搜索或電子商務搜索等應用需求所提出。可以理解的是,這只是本申請技術方案的一種具體的實施方式。事實上,通過選擇不同的排序模型,可以將本申請技術方案應用於各類搜索需求,例如圖書資料庫搜索、文獻資料庫搜索等。並且應用範圍也不局限於互聯網領域,其他如單機、區域網路中的搜索,都可以應用本申請所提供的技術方案。
相應於上面的方法實施例,本申請還提供一種資訊搜索系統,參見圖4所示,包括:資訊檢索單元410,用於接收搜索請求,通過檢索獲得與所述搜索請求相匹配的各條匹配資訊;線性排序單元420,用於使用線性排序模型對所述資訊檢索單元410檢索獲得的各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果,其中,N1所檢索到的匹配資訊的總數目;非線性排序單元430,用於使用非線性排序模型對所述線性排序單元420排序得到的第一排序結果中的前N2條匹配資訊進行排序,得到第二排序結果,其中N2<N1;結果生成單元440,用於根據所述第二排序結果,生成搜索結果。
本申請所提供的資訊搜索,首先由線性排序單元420使用線性排序模型對N1條匹配資訊進行排序處理,然後由非線性排序單元430對排序結果的前N2條再使用非線性排序模型進行排序處理。由於線性排序模型的處理速度是能夠保證的,因此對於大量(N1條)的匹配資訊,首先利用線性排序模型進行預處理,然後通過設置N2<N1,可以有效減小使用非線性排序模型所處理的資料量,從而提高對匹配資訊排序的整體處理速度。
參見圖5所示,上述的資訊搜索系統,還可以包括:排序預處理單元411,用於在所述資訊檢索單元410獲得所述各條匹配資訊之後,對所述各條匹配資訊進行排序預處理,由所述各條匹配資訊中選取N1條匹配資訊作為所述線性排序單元420排序的物件;其中,N1小於所檢索到的匹配資訊的總數目。
使用排序預處理單元411,可以使線性排序單元420減少資料處理量,在不影響最終搜索效果的情況下,進一步提高整個系統的搜索處理速度。
以上所提供的資訊搜索系統,可以是應用於互聯網搜索的搜索引擎,也可以是應用於單機、區域網路的搜索的資訊搜索系統。
為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本申請時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。
通過以上的實施方式的描述可知,本領域的技術人員可以清楚地瞭解到本申請可借助軟體加必需的通用硬體平臺的方式來實現。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品可以儲存在儲存媒體中,如ROM/RAM、磁碟、光碟等,包括若干指令用以使得一台電腦設備(可以是個人電腦,伺服器,或者網路設備等)執行本申請各個實施例或者實施例的某些部分所述的方法。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的系統實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部模組來實現本實施例方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解並實施。
本申請可用於眾多通用或專用的計算系統環境或配置中。例如:個人電腦、伺服器電腦、手持設備或可擕式設備、平板型設備、多處理器系統、基於微處理器的系統、機頂盒、可編程的消費電子設備、網路PC、小型電腦、大型電腦、包括以上任何系統或設備的分散式計算環境等等。
本申請可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式計算環境中實踐本申請,在這些分散式計算環境中,由通過通訊網路而被連接的遠端處理設備來執行任務。在分散式計算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。
以上所述僅是本申請的具體實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護範圍。
410...資訊檢索單元
420...線性排序單元
430...非線性排序單元
440...結果生成單元
411...排序預處理單元
為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本申請實施例一的搜索結果生成方法的流程圖;
圖2為本申請實施例二的搜索結果生成方法的流程圖;
圖3為本申請實施例二的搜索效果示意圖;
圖4為本申請實施例資訊搜索系統的結構示意圖;
圖5為本申請實施例資訊搜索系統的另一種結構示意圖。
Claims (10)
- 一種搜索結果生成方法,包括:資訊搜索系統接收搜索請求,通過檢索獲得與該搜索請求相匹配的各條匹配資訊;使用線性排序模型對該各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果,其中,N1所檢索到的匹配資訊的總數目,且其中該線性排序模型為該N1條匹配資訊進行排序評分之方式為:使用對應每條匹配資訊之至少一個特徵值的加權係數,以線性方式結合每條匹配資訊之該至少一個特徵值;使用非線性排序模型對該第一排序結果中的前N2條匹配資訊進行排序,得到第二排序結果,其中N2<N1,且其中該線性排序模型為該N2條匹配資訊進行排序評分之方式為:使用對應每條匹配資訊之至少一個特徵值的加權係數,以非線性方式結合每條匹配資訊之該至少一個特徵值;及根據該第二排序結果,生成搜索結果。
- 根據申請專利範圍第1項所述的方法,其中,在通過檢索獲得與該搜索請求相匹配的各條匹配資訊之後,還包括:對該各條匹配資訊進行排序預處理,由該各條匹配資訊中選取N1條匹配資訊作為後續步驟排序的物件;其中,N1<所檢索到的匹配資訊的總數目。
- 根據申請專利範圍第1或2項所述的方法,其中, 該線性排序模型或非線性排序模型的輸入為匹配資訊的至少一個特徵值,輸出為匹配資訊的排序分數,該排序分數,係用於決定匹配資訊的排列順序。
- 根據申請專利範圍第3項所述的方法,其中,該線性排序模型所使用的特徵,與該非線性排序模型所使用的特徵完全相同或部分相同。
- 根據申請專利範圍第4項所述的方法,其中,該匹配資訊的特徵值,由匹配資訊自身所決定,或者由匹配資訊與該搜索請求共同決定。
- 根據申請專利範圍第1或2項所述的方法,其中,該線性排序模型或非線性排序模型,是通過訓練所決定的模型。
- 一種資訊搜索系統,包括:資訊檢索單元,用於接收搜索請求,通過檢索獲得與該搜索請求相匹配的各條匹配資訊;線性排序單元,用於使用線性排序模型對該資訊檢索單元檢索獲得的各條匹配資訊中的N1條匹配資訊進行排序,得到第一排序結果,其中,N1所檢索到的匹配資訊的總數目,且其中該線性排序模型為該N1條匹配資訊進行排序評分之方式為:使用對應每條匹配資訊之至少一個特徵值的加權係數,以線性方式結合每條匹配資訊之該至少一個特徵值;非線性排序單元,用於使用非線性排序模型對該線性排序單元排序得到的第一排序結果中的前N2條匹配資訊 進行排序,得到第二排序結果,其中N2<N1,且其中該線性排序模型為該N2條匹配資訊進行排序評分之方式為:使用對應每條匹配資訊之至少一個特徵值的加權係數,以非線性方式結合每條匹配資訊之該至少一個特徵值;及結果生成單元,用於根據該第二排序結果,生成搜索結果。
- 根據申請專利範圍第7項所述的系統,其中,還包括:排序預處理單元,用於在該資訊檢索單元獲得該各條匹配資訊之後,對該各條匹配資訊進行排序預處理,由該各條匹配資訊中選取N1條匹配資訊作為該線性排序單元排序的物件;其中,N1<所檢索到的匹配資訊的總數目。
- 根據申請專利範圍第7或8項所述的系統,其中,該線性排序模型或非線性排序模型的輸入為匹配資訊的至少一個特徵值,輸出為匹配資訊的排序分數,該排列分數,用於決定匹配資訊的排列順序。
- 根據申請專利範圍第7或8項所述的系統,其中,該線性排序模型或非線性排序模型,是通過訓練所決定的模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099106628A TWI490712B (zh) | 2010-03-08 | 2010-03-08 | Search results generation method and information search system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099106628A TWI490712B (zh) | 2010-03-08 | 2010-03-08 | Search results generation method and information search system |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201131391A TW201131391A (en) | 2011-09-16 |
TWI490712B true TWI490712B (zh) | 2015-07-01 |
Family
ID=50180354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099106628A TWI490712B (zh) | 2010-03-08 | 2010-03-08 | Search results generation method and information search system |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI490712B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200937237A (en) * | 2007-12-27 | 2009-09-01 | Yahoo Inc | System and method for generating expertise based search results |
US20090276421A1 (en) * | 2008-05-04 | 2009-11-05 | Gang Qiu | Method and System for Re-ranking Search Results |
US7644072B2 (en) * | 2006-01-31 | 2010-01-05 | Perfect Market, Inc. | Generating a ranked list of search results via result modeling |
-
2010
- 2010-03-08 TW TW099106628A patent/TWI490712B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644072B2 (en) * | 2006-01-31 | 2010-01-05 | Perfect Market, Inc. | Generating a ranked list of search results via result modeling |
TW200937237A (en) * | 2007-12-27 | 2009-09-01 | Yahoo Inc | System and method for generating expertise based search results |
US20090276421A1 (en) * | 2008-05-04 | 2009-11-05 | Gang Qiu | Method and System for Re-ranking Search Results |
Also Published As
Publication number | Publication date |
---|---|
TW201131391A (en) | 2011-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9471643B2 (en) | Generating ranked search results using linear and nonlinear ranking models | |
JP5540080B2 (ja) | 検索結果を生成する方法および情報検索のためのシステム | |
US9251249B2 (en) | Entity summarization and comparison | |
TWI539305B (zh) | Personalized information push method and device | |
US8290927B2 (en) | Method and apparatus for rating user generated content in search results | |
JP5679993B2 (ja) | クエリを実行する方法およびクエリシステム | |
US20150269163A1 (en) | Providing search recommendation | |
JP6346218B2 (ja) | オンライン取引プラットフォームのための検索方法、装置およびサーバ | |
US9177057B2 (en) | Re-ranking search results based on lexical and ontological concepts | |
JP2015515079A (ja) | キーワードの推薦 | |
WO2014093433A1 (en) | Analyzing commodity evaluations | |
US11874882B2 (en) | Extracting key phrase candidates from documents and producing topical authority ranking | |
JP2012009014A (ja) | ウェブサイトの影響をランク付けする方法、装置、及び製品 | |
Wu et al. | Keyword extraction for contextual advertisement | |
JP2010123036A (ja) | 文書検索装置、文書検索方法、および文書検索プログラム | |
TWI490712B (zh) | Search results generation method and information search system | |
TWI476611B (zh) | Search results generation method and information search system | |
US20140236940A1 (en) | System and method for organizing search results | |
EP3065102A1 (en) | Search engine optimization for category web pages | |
JP5903370B2 (ja) | 情報検索装置、情報検索方法、及びプログラム | |
EP2778980A1 (en) | Attribute-based document searching | |
TW201411379A (zh) | 搜索系統及方法 | |
JP2019045956A (ja) | 情報処理装置、情報処理方法及びプログラム | |
Huang et al. | Recommendations of E-commerce Seller Based on Buyer Feedbacks | |
Polpinij | E-commerce Webpage Summarization by Using Statistical Similarity Measures |