亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

使用多嵌套排序來改善排序結(jié)果的制作方法

文檔序號(hào):6569881閱讀:211來源:國知局
專利名稱:使用多嵌套排序來改善排序結(jié)果的制作方法
使用多嵌套排序來改善排序結(jié)果
背景
搜索對(duì)計(jì)算機(jī)用戶而言已經(jīng)變?yōu)閼?yīng)用程序和操作系統(tǒng)的重要特征。甚至,
它成為計(jì)算機(jī)市場(chǎng)上高度有利可圖的部分。 一方面,廣告客戶購買關(guān)鍵詞和/ 或當(dāng)遇到某些搜索項(xiàng)時(shí)對(duì)期望的列出位置支付額外費(fèi)用。另一方面,消費(fèi)者主 要關(guān)注搜索的質(zhì)量,且通常基于其以往的性能和聲譽(yù)來選擇搜索應(yīng)用程序或引 擎。
更通常地,用戶啟動(dòng)文本搜索來在因特網(wǎng)、其網(wǎng)絡(luò)或其本地PC上査找特
定內(nèi)容。搜索請(qǐng)求可按照各種格式提交。取決于他/她正在尋找的內(nèi)容和搜索的 位置,用戶可使用關(guān)鍵詞、短語或詞語的任何組合。搜索引擎的任務(wù)是檢索與 用戶査詢相關(guān)的文檔。當(dāng)存在與相同或類似項(xiàng)相關(guān)的若干文檔時(shí),必須有某種 適當(dāng)?shù)募夹g(shù)來以反映其與查詢和用戶的相關(guān)性程度的次序?qū)⑵涑尸F(xiàn)給用戶。因 此,對(duì)檢索出的文檔排序可能是信息檢索中最有挑戰(zhàn)性的任務(wù)。由于大多數(shù)用 戶一般僅査看列表(由搜索引擎返回)頂部的前幾個(gè)結(jié)果,因此對(duì)這些結(jié)果實(shí) 現(xiàn)高準(zhǔn)確度變?yōu)槿找嬷匾?br> 常規(guī)排序系統(tǒng)繼續(xù)努力來產(chǎn)生良好的排序但仍有問題。這部分是由于可響 應(yīng)于查詢而返回的文檔的巨大數(shù)目。為了正確地看待這個(gè)問題,當(dāng)前在因特網(wǎng)
或Web上大約有250億個(gè)文檔(例如,網(wǎng)站、圖像、URL)。因此,響應(yīng)于 任何一個(gè)査詢返回?cái)?shù)千(如果不是數(shù)百萬)文檔上可行的。盡管當(dāng)前的排序系 統(tǒng)作出了對(duì)這樣大量文檔準(zhǔn)確排序的嘗試,但頂部的幾個(gè)結(jié)果仍可能不是與查 詢和/或用戶最相關(guān)的。這是由于若干原因產(chǎn)生的。 一個(gè)原因可能是因?yàn)檫@樣的 常規(guī)排序系統(tǒng)可能嘗試以排序較高的結(jié)果為代價(jià)來提高低排序結(jié)果,可能會(huì)降 低頂部返回的結(jié)果的相關(guān)性。第二個(gè)可能的原因可能是使用單個(gè)排序算法來解 決整個(gè)問題(對(duì)所有可能的查詢)可能限制過多。因此,仍需要改善檢索出的 項(xiàng)目的排序同時(shí)最小化排序系統(tǒng)性能的花費(fèi)。概述
以下呈現(xiàn)了簡化概述,以提供對(duì)此處所述的系統(tǒng)和/或方法的某些方面的 基本理解。本概述不是對(duì)此處所述的系統(tǒng)和/或方法的概觀。它并非旨在標(biāo)識(shí)關(guān) 鍵/重要元素,也非旨在描繪這樣的系統(tǒng)和/或方法的范圍。其概述的唯一目的 是以一種簡化的形式來介紹一些概念,作為稍后呈現(xiàn)的更為詳細(xì)的描述的序
本申請(qǐng)涉及一種便于改善排序結(jié)果的系統(tǒng)和/或方法。具體地,該系統(tǒng)和 方法應(yīng)用多個(gè)嵌套級(jí)的排序技術(shù)以對(duì)之前排序的項(xiàng)目的子集重新排序??砂创?方式采用不同的排序技術(shù),但是為了討論并為簡明起見,此處將討論一種排序 技術(shù)。
本系統(tǒng)和方法涉及將排序任務(wù)分成多級(jí),其中對(duì)高或較高排序的項(xiàng)目的遞 減子集應(yīng)用排序技術(shù)。假定排序技術(shù)采用被訓(xùn)練來對(duì)項(xiàng)目排序的神經(jīng)網(wǎng)絡(luò)。可 對(duì)信息的較小集合訓(xùn)練多個(gè)網(wǎng)絡(luò)以產(chǎn)生向用戶呈現(xiàn)的更相關(guān)的前幾個(gè)項(xiàng)目。例 如,想象用戶向搜索組件提交了查詢。搜索組件可針對(duì)給定查詢檢索超過一百
萬個(gè)項(xiàng)目,其中項(xiàng)目可對(duì)應(yīng)于文檔、文件、圖像或URL。可訓(xùn)練第一神經(jīng)網(wǎng)絡(luò) 來對(duì)該項(xiàng)目的初始集定序或排序。從排序項(xiàng)目的初始集中取前幾個(gè)(例如,前 2500個(gè))結(jié)果,并訓(xùn)練可用于對(duì)其重新定序的第二神經(jīng)網(wǎng)絡(luò)??墒褂眯薷暮蟮?項(xiàng)目集合——在此示例中為前2500個(gè)項(xiàng)目——訓(xùn)練第二神經(jīng)網(wǎng)絡(luò)。之后,可 經(jīng)由第二神經(jīng)網(wǎng)絡(luò)對(duì)這2500個(gè)項(xiàng)目重新排序。從這重新排序的2500個(gè)項(xiàng)目中, 取得高排序項(xiàng)目(例如,前1000個(gè))的更小的子集,并訓(xùn)練第三神經(jīng)網(wǎng)絡(luò)以 隨后對(duì)其重新定序。在前1000個(gè)被重新排序之后,可使用排序在頂部的項(xiàng)目 的更小的子集以訓(xùn)練另一網(wǎng)絡(luò)——例如前100個(gè)。前100個(gè)可按類似方式重新 排序,以產(chǎn)生前10個(gè)項(xiàng)目,這前10個(gè)項(xiàng)目也可被重新排序。總的效果是在分 開的級(jí)中對(duì)前2500個(gè)結(jié)果重新排序,這有效地提高了搜索組件的總體排序性 能。大多數(shù)用戶僅審閱針對(duì)給定查詢發(fā)回的前幾個(gè)結(jié)果。通過使用以上系統(tǒng)和 方法,可對(duì)前幾個(gè)結(jié)果重復(fù)地重新排序以改善其相關(guān)性和排序次序。因使用這 樣的分級(jí)系統(tǒng)而得到的改善可部分地源自在每一級(jí),在該級(jí)使用的學(xué)習(xí)機(jī)器僅 必須學(xué)習(xí)正在解決的總排序問題的小的子問題的事實(shí)。分級(jí)系統(tǒng)的第二個(gè)優(yōu)點(diǎn) 是由于對(duì)某些應(yīng)用(諸如,Web搜索)結(jié)果必須實(shí)時(shí)返回的事實(shí)。因此,如果僅使用單個(gè)算法來執(zhí)行排序,則該算法必須非??臁H欢?,在分級(jí)方法中,每 一問題涉及少得多的數(shù)據(jù),且因此可在每一級(jí)應(yīng)用更復(fù)雜(且更慢)的排序方 法。
為了實(shí)現(xiàn)前述及相關(guān)目的,在這里結(jié)合下列描述及附圖來描述本發(fā)明的某 些說明性方面。然而,這些方面僅指示了可采用本發(fā)明的原理的各種方法中的 幾種,且本發(fā)明旨在包括所有這些方面及其等效方面。通過結(jié)合附圖對(duì)本發(fā)明 的下列詳細(xì)描述,本發(fā)明的其它優(yōu)點(diǎn)以及新穎特征將是顯而易見的。
附圖簡述


圖1是便于通過重新排序高排序項(xiàng)目來改善針對(duì)給定査詢返回的項(xiàng)目的 排序的排序系統(tǒng)的框圖。
圖2是便于通過使用多嵌套排序方法來重新排序高排序項(xiàng)目以改善針對(duì)
給定查詢返回的項(xiàng)目的排序的排序系統(tǒng)的框圖。
圖3是示出使用多嵌套排序方法來便于將針對(duì)給定査詢的最相關(guān)項(xiàng)目放 置在搜索結(jié)果列表頂部或其附近的項(xiàng)目排序的框圖。
圖4是示出對(duì)項(xiàng)目進(jìn)行排序的伸縮式(telescoping)方法的框圖,具體是 高排序項(xiàng)目的遞減子集之間的關(guān)系和其在嵌套神經(jīng)網(wǎng)絡(luò)的訓(xùn)練及與其的交互 中的使用。
圖5是示出便于通過重新排序高排序項(xiàng)目來改善針對(duì)給定查詢返回的項(xiàng) 目的排序的示例性方法的流程圖。
圖6是示出便于通過使用多嵌套排序方法來重新排序高排序項(xiàng)目以改善 針對(duì)給定查詢返回的項(xiàng)目的排序的示例性方法的流程圖。
圖7是示出便于通過修剪或修改個(gè)別或連續(xù)用于訓(xùn)練相應(yīng)的排序組件的 訓(xùn)練集來改善針對(duì)給定查詢返回的項(xiàng)目的排序的示例性方法的流程圖。
圖8是示出便于通過使用多嵌套排序方法來重新排序高排序項(xiàng)目的遞減 子集以改善針對(duì)給定查詢返回的項(xiàng)目的排序的示例性方法的流程圖。
圖9是極小規(guī)模地示出根據(jù)由搜索組件檢索出的一組項(xiàng)目對(duì)高排序項(xiàng)目 重新定序的示意圖。
圖10是示出如響應(yīng)于査詢向用戶呈現(xiàn)的修改后搜索結(jié)果的示例性用戶界面。
圖11示出了用于實(shí)現(xiàn)本發(fā)明各方面的示例性環(huán)境。 詳細(xì)描述
現(xiàn)在參考附圖詳細(xì)描述本系統(tǒng)和/或方法,在整個(gè)描述中相同的參考標(biāo)號(hào) 表示相同的元素。在以下描述中,為說明起見,闡明了眾多具體細(xì)節(jié)以提供對(duì) 本系統(tǒng)和/或方法的徹底理解。然而,顯然,本系統(tǒng)和/或方法可以在沒有這些 具體細(xì)節(jié)的情況下實(shí)施。在其它情況下,以框圖形式示出了公知的結(jié)構(gòu)和設(shè)備 以便于描述它們。
如此處所使用的,術(shù)語"組件"和"系統(tǒng)"指的是計(jì)算機(jī)相關(guān)實(shí)體,它可 以是硬件、硬件和軟件的結(jié)合、軟件、或者執(zhí)行中的軟件。例如,組件可以但 不限于是,運(yùn)行在處理器上運(yùn)行的進(jìn)程、處理器、對(duì)象、可執(zhí)行代碼、執(zhí)行的 線程、程序、和計(jì)算機(jī)。作為說明,運(yùn)行在服務(wù)器上的應(yīng)用程序和服務(wù)器本身 都可以是組件。 一個(gè)或多個(gè)組件可以駐留在進(jìn)程和/或執(zhí)行的線程中,且組件可 以位于一臺(tái)計(jì)算機(jī)上和/或分布在兩臺(tái)或更多臺(tái)計(jì)算機(jī)之間。
本系統(tǒng)和/或方法可在每一級(jí)結(jié)合與識(shí)別和標(biāo)識(shí)高排序項(xiàng)目的最佳子集相 關(guān)的各種推斷方案和/或技術(shù),以使用多嵌套排序方法進(jìn)行重新排序。具體地, 針對(duì)重新排序選擇的高排序項(xiàng)目的最佳子集可基于所檢索項(xiàng)目的數(shù)目而對(duì)用 戶提交的每一査詢改變。例如, 一開始可在第一級(jí)重新排序前1500個(gè)項(xiàng)目,
而在第二級(jí),可從前面重新排序的項(xiàng)目中選擇前250個(gè)項(xiàng)目以進(jìn)行另一次重新 排序。在其它查詢中,系統(tǒng)可確定項(xiàng)目的遞減子集的不同分割是更適當(dāng)?shù)?。艮P, 這樣的推斷方案或人工智能可用來自動(dòng)使這些判斷基于所檢索的項(xiàng)目的數(shù)目 和/或結(jié)合用戶偏好。所檢索的項(xiàng)目的表面相關(guān)性也可在判定過程中予以考慮。 例如,可根據(jù)賦予項(xiàng)目的值來評(píng)估相關(guān)性。該值可用于根據(jù)哪些項(xiàng)目應(yīng)被認(rèn)為 是高排序項(xiàng)目來確定閾值。因此,推斷方案可確定例如在給定査詢的特定級(jí), 是對(duì)1000個(gè)經(jīng)排序項(xiàng)目中的前100個(gè)還是前50個(gè)重新排序。在后續(xù)一級(jí)中, 可選擇項(xiàng)目的更小子集來進(jìn)行進(jìn)一步的重新排序(例如,100個(gè)項(xiàng)目中的前10 個(gè))。這可重復(fù)直到給用戶留下最高排序的項(xiàng)目。也可通過利用一個(gè)或多個(gè)各 種推斷方案來便于選擇進(jìn)行重新排序的級(jí)的數(shù)目。然而,應(yīng)注意,對(duì)要重新排序的子集的大小的每一選擇,必須離線訓(xùn)練排序算法。
如在此處使用時(shí),術(shù)語"推斷"通常指的是根據(jù)經(jīng)由事件和/或數(shù)據(jù)捕捉 的一組觀察來推出或推斷系統(tǒng)、環(huán)境、和/或用戶狀態(tài)的過程。例如,推斷可用 于標(biāo)識(shí)特定的上下文或動(dòng)作,或可生成狀態(tài)上的概率分布。推斷可以是概率性 的,即是說,基于對(duì)數(shù)據(jù)和事件的考慮計(jì)算所關(guān)注狀態(tài)上的概率分布。推斷也 可以指用于從一組事件和/或數(shù)據(jù)合成更高級(jí)事件的技術(shù)。這樣的推斷導(dǎo)致從一 組觀察到的事件和/或儲(chǔ)存的事件數(shù)據(jù)構(gòu)造新的事件或動(dòng)作,無論事件是否在時(shí) 間上緊密相關(guān),也無論事件和數(shù)據(jù)是來自一個(gè)還是若干個(gè)事件和數(shù)據(jù)源。
對(duì)響應(yīng)于用戶査詢檢索到的項(xiàng)目排序使得與用戶最相關(guān)的項(xiàng)目出現(xiàn)在結(jié) 果列表的頂部,對(duì)大多數(shù)常規(guī)搜索引擎而言仍是相對(duì)成問題的任務(wù)。提出了解 決該問題的涉及機(jī)器學(xué)習(xí)算法的各種解決方案,然而大多數(shù)方案應(yīng)用于每個(gè)查 詢結(jié)果的全集來學(xué)習(xí)其排序。不幸的是,學(xué)習(xí)如何針對(duì)任何可能的查詢來排序 大量文檔是非常困難的任務(wù)。
如以下圖l-8描述的本申請(qǐng)使用機(jī)器學(xué)習(xí)方法來學(xué)習(xí)以相對(duì)于結(jié)果列表的 頂部的高度準(zhǔn)確性進(jìn)行排序。更具體地,可采用多嵌套排序方法來分級(jí)地(例 如, 一個(gè)或多個(gè))執(zhí)行重新排序,每一級(jí)生成結(jié)果的新分布。創(chuàng)建新分布的方 式可基于獲取排序列表的最頂部處的少數(shù)文檔或項(xiàng)目的良好排序。每一后續(xù)級(jí) 的訓(xùn)練集被修剪以僅包括前一排序器排序較高的結(jié)果。這將問題分成較小且較 容易的子任務(wù),且分開學(xué)習(xí)每一級(jí)的排序。此外,由于子任務(wù)較小,因此可應(yīng) 用更復(fù)雜(且更慢)的排序算法。假定基本排序器已經(jīng)產(chǎn)生相關(guān)文檔被置于排 序列表的頂部附近的良好排序。因此,每一以下排序器的目的在于僅學(xué)習(xí)高分 值結(jié)果的重新排序。
而且,假定置于排序列表底部的相關(guān)文檔更難以學(xué)習(xí)且因此排序算法或模 塊不太可能顯著改善其排序是合理的。從而,每一訓(xùn)練集可被修剪以從訓(xùn)練集 中排除這樣的困難的相關(guān)項(xiàng)目,使得學(xué)習(xí)可集中于對(duì)列表頂部處的項(xiàng)目的排序 (或重新排序)。
存在可用于實(shí)現(xiàn)分級(jí)重新排序高排序項(xiàng)目的眾多不同的排序模型。為簡明 和易于討論起見,將結(jié)合在Burges等人于2005年波恩在關(guān)于機(jī)器學(xué)習(xí)的第22 屆國際會(huì)議的期刊上發(fā)表的"Learning to Rank Using Gradient Descent (學(xué)習(xí)使用梯度下降來排序)"中所述的神經(jīng)網(wǎng)絡(luò)算法描述本申請(qǐng)。該算法將被稱為
RankNet (排序網(wǎng)絡(luò))。在常規(guī)實(shí)踐中,可通過對(duì)輸入提供帶標(biāo)簽示例、通過 網(wǎng)絡(luò)正向傳播、基于網(wǎng)絡(luò)的輸出和從帶標(biāo)簽數(shù)據(jù)獲取的期望輸出計(jì)算誤差函數(shù) 的值,并最終遞增地調(diào)節(jié)權(quán)重以減少誤差函數(shù)的值(例如,當(dāng)對(duì)所有訓(xùn)練數(shù)據(jù) 平均時(shí))來訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
此處所討論的神經(jīng)網(wǎng)絡(luò)算法(例如參見如上所述的序列號(hào)為11/066,514 的美國申請(qǐng))涉及學(xué)習(xí)排序數(shù)據(jù)集以最小化作為示例對(duì)的函數(shù)的成本。具體地, 該神經(jīng)網(wǎng)絡(luò)可通過使用示例對(duì)學(xué)習(xí)一組數(shù)據(jù)點(diǎn)的排序并學(xué)習(xí)對(duì)具有較高相關(guān) 性分值的示例賦予較高值的有關(guān)對(duì)的函數(shù)。該神經(jīng)網(wǎng)絡(luò)排序算法可在多嵌套排 序器的每一級(jí)(例如, 一個(gè)或多個(gè)級(jí))應(yīng)用。該算法對(duì)示例進(jìn)行訓(xùn)練,且其輸 出用于產(chǎn)生數(shù)據(jù)點(diǎn)的最終排序。反向傳播階段可調(diào)整成適合基于成對(duì)誤差的成 本函數(shù)。對(duì)多嵌套排序器的每一級(jí)處完成的訓(xùn)練集的修改可被視為將關(guān)于文檔 在排序列表中的位置的信息引入訓(xùn)練過程并對(duì)學(xué)習(xí)高分值結(jié)果的定序施加更 大權(quán)重的嘗試。
此處提供的多嵌套排序器便于將排序問題分成更小且更可管理的任務(wù)。 即,代替一次處理檢索到的百萬個(gè)項(xiàng)目,集中于這數(shù)百萬個(gè)的頂部的子集以僅 改善該頂部子集的排序。因此,在每一級(jí)之后,可生成結(jié)果的一種新分布,使 得學(xué)習(xí)算法集中于對(duì)頂部結(jié)果重新排序。使用排序列表頂部處的結(jié)果集而非成 對(duì)的準(zhǔn)確性來測(cè)量排序器的性能。從而,該方法也可通過更強(qiáng)調(diào)學(xué)習(xí)如何對(duì)高 分值文檔重新排序來橋接訓(xùn)練期間所使用的成本函數(shù)與評(píng)估測(cè)量值之間的間 隙。參考圖l-8進(jìn)一步描述多嵌套排序方法。
現(xiàn)在參考圖1,這是便于通過重新排序高排序項(xiàng)目來改善針對(duì)給定查詢返 回的項(xiàng)目的排序的排序系統(tǒng)100的一般框圖。系統(tǒng)100包括針對(duì)給定査詢檢索 初始項(xiàng)目集的搜索組件110。例如,假定用戶執(zhí)行了對(duì)"兒童疾病和抗生素" 的搜索。搜索組件110可檢索與這些搜索詞相關(guān)的多個(gè)項(xiàng)目。檢索出的項(xiàng)目然 后可被用作多嵌套排序組件120的第一訓(xùn)練集。該多嵌套排序組件120可對(duì)高 排序項(xiàng)目的一個(gè)或多個(gè)遞減子集排序或重新排序,以便于獲取搜索結(jié)果列表頂 部處的最相關(guān)項(xiàng)目。
多嵌套排序組件120可包括多個(gè)神經(jīng)網(wǎng)絡(luò)。使用訓(xùn)練項(xiàng)目集來單獨(dú)訓(xùn)練每一神經(jīng)網(wǎng)絡(luò)以學(xué)習(xí)排序。更具體地,在如上所引用的RankNet中,每一神經(jīng)網(wǎng) 絡(luò)可學(xué)習(xí)使用基于示例對(duì)的概率性成本函數(shù)來進(jìn)行排序。在訓(xùn)練期間,神經(jīng)網(wǎng)
絡(luò)按照以下次序示出一對(duì)示例例如,期望所示的第一示例的排序比第二示例 高;且用于更新網(wǎng)絡(luò)的成本函數(shù)取決于對(duì)這兩個(gè)示例的網(wǎng)絡(luò)輸出。例如,假定 樣本A被給予網(wǎng)絡(luò)輸入,接著是樣本B;并假定期望使網(wǎng)絡(luò)將樣本A排序成 高于樣本B。如果網(wǎng)絡(luò)對(duì)A輸出了比B低的數(shù),則成本較大,且網(wǎng)絡(luò)相應(yīng)地 更新其權(quán)重——以減少成本。而且,在訓(xùn)練階段期間,可假定第一示例總是或 幾乎總是排序成高于第二示例。然而,在測(cè)試階段期間,神經(jīng)網(wǎng)絡(luò)可將單個(gè)示 例映射到然后用于排序數(shù)據(jù)的數(shù)。
響應(yīng)于査詢檢索到的初始項(xiàng)目集可按此方式排序。根據(jù)該排序的項(xiàng)目列 表,高排序項(xiàng)目的子集可通過使用該項(xiàng)目子集來訓(xùn)練另一神經(jīng)網(wǎng)絡(luò)來重新排 序。實(shí)際上,例如想象在100,000個(gè)(經(jīng)排序的)結(jié)果中,系統(tǒng)取得前2500 個(gè)項(xiàng)目,并對(duì)該2500個(gè)項(xiàng)目的遞減子集執(zhí)行多次重新排序迭代。結(jié)果,可取 決于所執(zhí)行的重新排序的級(jí)數(shù)對(duì)前10個(gè)項(xiàng)目(來自前2500個(gè)項(xiàng)目)重新排序 和/重新混洗一次或多次。因而,比較在級(jí)=0 (重新排序前)和級(jí)=3 (在3 次嵌套迭代后)時(shí)列表中頂部位置的項(xiàng)目可產(chǎn)生或可以不產(chǎn)生不同的項(xiàng)目。然 而,在某些情況中,頂部位置中的項(xiàng)目可至少改變一次。
現(xiàn)在參考圖2,這是便于通過使用多嵌套排序方法來重新排序高排序項(xiàng)目 以改善針對(duì)給定査詢返回的項(xiàng)目的排序的排序系統(tǒng)200的框圖。具體地,系統(tǒng) 200包括接收初始訓(xùn)練數(shù)據(jù)集(例如,響應(yīng)于査詢檢索到的項(xiàng)目)的排序組件 210。排序組件210可學(xué)習(xí)使用基于樣本對(duì)的概率成本函數(shù)來排序。更具體地, 排序組件210可采用一種學(xué)習(xí)算法,對(duì)該算法給定i^中的一組樣本對(duì)[A,B]以 及樣本A的排序高于樣本B的目標(biāo)概率。采用以下形式的模型/: ^ ^ ^ ,
一組樣本的排序次序由y所取的實(shí)值所指定,更具體地,假定y(xi)〉z(mì)(x2)意
味著該模型使^的排序高于x2。—使用邏輯函數(shù)'7 l + ,來對(duì)輸出到概率的映 射建模,其中^/s/")-k)且^^prob(xi的排序高于xj)。也可對(duì)神經(jīng)網(wǎng)絡(luò)采
用成本函數(shù)以學(xué)習(xí)排序。成本函數(shù)可變?yōu)閮蓚€(gè)連續(xù)訓(xùn)練樣本的輸出的差的函 數(shù)/(52-5,),假定第一樣本具有比第二樣本高或相同的排序。
因此,排序組件210可提供經(jīng)排序項(xiàng)目220,借此可將經(jīng)排序項(xiàng)目的子集用作新的或修改后的訓(xùn)練集230。可將該新的訓(xùn)練集提供給多嵌套排序組件 240,其中在每一級(jí)處可通過訓(xùn)練集修改組件250遞減地修改訓(xùn)練集。當(dāng)創(chuàng)建 了新的或修改后的訓(xùn)練集時(shí),它可用于神經(jīng)網(wǎng)絡(luò)訓(xùn)練260以在特定級(jí)針對(duì)給定 項(xiàng)目子集創(chuàng)建神經(jīng)網(wǎng)絡(luò)。
圖3示意性地示出了通過在各級(jí)處對(duì)項(xiàng)目子集應(yīng)用排序函數(shù)或模型以便 于將針對(duì)給定査詢的最相關(guān)項(xiàng)目置于搜索結(jié)果列表頂部或附近的高排序項(xiàng)目 的重新排序。用戶或搜索和檢索系統(tǒng)可確定級(jí)數(shù)和/或要在每一級(jí)重新排序的 (高排序)項(xiàng)目的數(shù)目。如圖3中所示,所選高排序項(xiàng)目可在一個(gè)或多個(gè)級(jí)處 重新排序,借此在每個(gè)連續(xù)級(jí)處,從前一項(xiàng)目子集減少經(jīng)重新排序的項(xiàng)目的子 集。實(shí)際上,例如想象有一訓(xùn)練查詢集2 = (^,...,《iei>),且針對(duì)每一査詢仏, 有由在搜索引擎中使用的基本排序器排序在前及/個(gè)結(jié)果(在所檢索的及7個(gè)項(xiàng) 目中)之中的一組文檔A =問7, 關(guān)于這些項(xiàng)目的排序的信息(例如其
分值)可用作后續(xù)排序級(jí)的輸入。
多嵌套排序方法應(yīng)用排序算法(例如,圖1和2中的排序組件)來在一個(gè) 或多個(gè)級(jí)處重新排序頂部的結(jié)果。在每一級(jí)處,向排序組件/算法/函數(shù)提供包 含高排序項(xiàng)目的遞減子集的每個(gè)査詢結(jié)果的新分布。因此,在每一級(jí)后,以以 下方式修剪訓(xùn)練集在第一級(jí)300處,對(duì)前7 /個(gè)結(jié)果的整個(gè)集合應(yīng)用排序函 數(shù)(305),其中例如仗1 =每個(gè)査詢2500個(gè)文檔(例如,對(duì)象、文件、URL、 圖像等)。訓(xùn)練過程計(jì)算第一網(wǎng)絡(luò),Ne^ (310)??筛鶕?jù)使用Net,計(jì)算出的 遞減分值來對(duì)結(jié)果排序(315)。之后,修改訓(xùn)練集,使得僅對(duì)每一查詢保留 根據(jù)Net,收到最高分值的前及2個(gè)文檔。
第二級(jí)320產(chǎn)生Net2,且僅對(duì)下一訓(xùn)練集保留前及3得分的文檔。該修剪 過程可被稱為伸縮式,相當(dāng)于在第一級(jí)后固定排序從/ /到(R2-l)的文檔的Neti 排序,用Net2重新排序前及2個(gè)文檔,在第二級(jí)之后再次固定排序置于從i 2 到(R3-1)的文檔的排序,用Net3重新排序前iU個(gè)結(jié)果,并依此類推(例如, 級(jí)3、級(jí)4等)。因此,在多嵌套排序的每一級(jí)之后,產(chǎn)生可供評(píng)估的每個(gè)査 詢所有及/個(gè)結(jié)果的排序列表。級(jí)的數(shù)目和每一級(jí)中項(xiàng)目的數(shù)目可變化。從而, 對(duì)一個(gè)査詢,可使用四級(jí),其中及7=2500,及2=1000,及3=100, i^=10,而在 另一查詢中,可使用三級(jí),其中及7=2500,及2=100,及3=10。應(yīng)理解,每一級(jí)處項(xiàng)目的數(shù)目可不同于在之前示例中所使用的數(shù)目,只要它們出現(xiàn)在遞減的子 集中即可??蓪?duì)確認(rèn)和測(cè)試集合應(yīng)用類似或相同的伸縮式過程。
如在以上示例性場(chǎng)景中所述,該方法將問題分成小片,使得每一網(wǎng)絡(luò)具有 較小和較簡單的任務(wù)要執(zhí)行。此外,數(shù)據(jù)集的修剪將排序列表底部的假定困難 的相關(guān)文檔從訓(xùn)練集中移除,并使算法關(guān)注于高得分相關(guān)文檔的排序。
回想起為示例性目的所描述的排序算法的成本函數(shù)依賴于兩個(gè)連續(xù)訓(xùn)練 樣本的輸出的差。如此處所述,樣本為響應(yīng)于特定査詢由搜索引擎返回的文檔 或其它項(xiàng)目。隨后,在每一迭代之后,訓(xùn)練樣本網(wǎng)絡(luò)的輸出生成其相對(duì)于査詢 的排序。由于成本函數(shù)的當(dāng)前形式,排序算法試圖學(xué)習(xí)文檔的正確成對(duì)次序而 不考慮其在排序列表中的位置。因此,在訓(xùn)練期間網(wǎng)絡(luò)有可能通過即使以稍微 下移列表頂部的某些相關(guān)結(jié)果為代價(jià)也顯著上移處于列表底部的文檔來改善 成對(duì)錯(cuò)誤。實(shí)驗(yàn)數(shù)據(jù)示出這的確可能在訓(xùn)練期間發(fā)生。
現(xiàn)在轉(zhuǎn)向圖4,這是示出對(duì)項(xiàng)目進(jìn)行排序的伸縮式方法的框圖,更具體地 是高排序項(xiàng)目遞減子集之間的關(guān)系與其在訓(xùn)練嵌套神經(jīng)網(wǎng)絡(luò)及與其的交互中 的使用。該示意圖示出了取得高排序項(xiàng)目的初始集并然后修剪其每一連續(xù)子集 的伸縮式方面。用于對(duì)項(xiàng)目排序的神經(jīng)網(wǎng)絡(luò)也可基于這樣的子集來連續(xù)修改。 作為排序的伸縮式本質(zhì)的結(jié)果,重新排序搜索結(jié)果列表中更相關(guān)的項(xiàng)目以便于 在列表的頂部獲得最相關(guān)的項(xiàng)目。
如圖中所示,高排序項(xiàng)目的初始集410 (從由搜索組件檢索到并隨后排序 的項(xiàng)目的列表中取得)可用于訓(xùn)練第一神經(jīng)網(wǎng)絡(luò)420。經(jīng)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)420 然后可用于項(xiàng)目410以便獲得連續(xù)的高排序項(xiàng)目子集430。這可對(duì)用戶期望的 進(jìn)行的多次迭代繼續(xù),以便于精細(xì)調(diào)節(jié)搜索結(jié)果列表頂部的項(xiàng)目。這在圖4中 示出,其中神經(jīng)網(wǎng)絡(luò)netcj (G是大于等于1的整數(shù))可由相應(yīng)的修改后的訓(xùn)練 集訓(xùn)練。
現(xiàn)在將通過一連串動(dòng)作描述各個(gè)方法。可以理解和領(lǐng)會(huì),本系統(tǒng)和/或方 法不受動(dòng)作次序的限制,根據(jù)本申請(qǐng),某些動(dòng)作可按不同次序發(fā)生和/或與此處 所示和所述的其它動(dòng)作并發(fā)。例如,本領(lǐng)域技術(shù)人員將會(huì)理解并明白,可以將 方法替換表示為一連串相互關(guān)聯(lián)的狀態(tài)或事件,諸如狀態(tài)圖中。而且,并不是 所有示出的動(dòng)作都是執(zhí)行根據(jù)本申請(qǐng)的方法所必需的?,F(xiàn)在參考圖5,這是示出便于通過重新排序高排序項(xiàng)目來改善針對(duì)給定查
詢返回的項(xiàng)目的排序的示例性方法500的流程圖。方法500涉及在510由搜索 組件針對(duì)給定査詢檢索項(xiàng)目初始集??墒褂萌魏闻判蚝瘮?shù)或算法來對(duì)該項(xiàng)目集 排序以獲得項(xiàng)目的初始排序。隨后在520,方法500可重新排序高排序項(xiàng)目的 一個(gè)或多個(gè)遞減子集以便于將對(duì)査詢最相關(guān)的項(xiàng)目置于搜索結(jié)果列表的頂部。 一旦執(zhí)行了所期望的項(xiàng)目重新排序,就可向用戶呈現(xiàn)搜索結(jié)果列表。因此,想 象響應(yīng)于用戶査詢返回了 500,000個(gè)項(xiàng)目。代替試圖提高較低排序項(xiàng)目(例如, 列表底部附近或低于閾值)的排序,該方法將其精力集中于高排序項(xiàng)目。因此, 可選擇列表上的前3000個(gè)項(xiàng)目。作為結(jié)果,以連續(xù)方式重新排序前3000個(gè)項(xiàng) 目的嵌套組,使得項(xiàng)目的當(dāng)前排序可部分由之前的排序確定。
轉(zhuǎn)向圖6,這是示出便于通過使用多嵌套排序方法來重新排序高排序項(xiàng)目 以改善針對(duì)給定查詢返回的項(xiàng)目的排序的示例性方法600的流程圖。方法600 涉及在610處響應(yīng)于查詢檢索多個(gè)項(xiàng)目。在620,可使用任何期望的排序函數(shù) 或模型來對(duì)項(xiàng)目排序。為了改善較高排序項(xiàng)目(例如,前r個(gè)項(xiàng)目,其中V 是大于l的整數(shù))的排序,可在630使用多嵌套排序方法來對(duì)較高排序項(xiàng)目重 新排序。即,可在各級(jí)處對(duì)較高排序的項(xiàng)目應(yīng)用相同或相似的排序函數(shù)(例如, 在項(xiàng)目的遞減子集中),而非一次對(duì)整個(gè)項(xiàng)目組應(yīng)用該排序函數(shù)。例如,可取 得前2500個(gè)項(xiàng)目并重新排序以產(chǎn)生前2500個(gè)項(xiàng)目的新次序。隨后,可取得前 100個(gè)項(xiàng)目并重新排序以產(chǎn)生前100個(gè)項(xiàng)目的新次序——同時(shí),其余2400個(gè)項(xiàng) 目的排序(排序低于前100)保持不變。如果需要,可例如對(duì)前IO個(gè)項(xiàng)目執(zhí)行 另一級(jí)的重新排序。在640,可向用戶呈現(xiàn)由搜索組件檢索出的重新排序項(xiàng)目 和其余項(xiàng)目。
在以下的圖7和8中,應(yīng)理解所述的方法(700、 800)可適用于任何定序 問題,其中頂部項(xiàng)目(或更一般地,項(xiàng)目的某個(gè)子集)的排序的準(zhǔn)確性比其它 地方的排序重要。搜索引擎是這個(gè)成立的應(yīng)用的眾多示例之一,且不必是所涉 及的查詢。
現(xiàn)在參考圖7,這是示出便于通過修剪或修改個(gè)別和連續(xù)用于訓(xùn)練相應(yīng)的 排序組件的訓(xùn)練集來改善針對(duì)給定查詢返回的項(xiàng)目的排序的示例性方法700的 流程圖。方法700涉及在710處經(jīng)由搜索組件或引擎響應(yīng)于查詢而檢索項(xiàng)目。在720,可使用訓(xùn)練集計(jì)算或訓(xùn)練排序組件。在730,可使用排序組件對(duì)搜索 組件檢索到的項(xiàng)目排序。在740,可通過排除較低排序的項(xiàng)目(例如,其相關(guān) 性更難確定的低分值項(xiàng)目)來修改或修剪訓(xùn)練集。結(jié)果,排序組件可關(guān)注于對(duì) 更相關(guān)的高分值項(xiàng)目的排序。在750,可使用修改后的訓(xùn)練集來訓(xùn)練新的或修 改后的排序組件。在760,其余項(xiàng)目(例如,未被排除的那些)可由修改后的 排序組件再次排序。在740到760發(fā)生的過程可按需重復(fù),借此由其相應(yīng)的修 改后的訓(xùn)練集對(duì)高排序項(xiàng)目的遞減子集重新排序。
在圖8中,這是示出便于通過使用多嵌套排序方法來對(duì)高排序項(xiàng)目的遞減 子集重新排序以改善針對(duì)給定査詢返回的項(xiàng)目的排序的示例性方法800的流程 圖。方法800涉及在810從針對(duì)給定査詢檢索出的排序項(xiàng)目列表中提取高排序 項(xiàng)目。例如,想象取得檢索出的二百萬個(gè)文檔中的前1000個(gè)文檔。在820,可 基于(提取出的)高排序項(xiàng)目訓(xùn)練排序組件(例如,機(jī)器學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò))。 因此,可將前IOOO個(gè)項(xiàng)目用作訓(xùn)練集。在830,這些項(xiàng)目可由最近訓(xùn)練的排序 組件重新排序。這意味著,在該重新排序過程中不考慮來自經(jīng)由搜索組件檢索 到的二百萬個(gè)文檔的任何信息。在840,可提取重新排序的高排序項(xiàng)目的子集 以再次修改排序組件的訓(xùn)練。因此現(xiàn)在想象從重新排序的IOOO個(gè)項(xiàng)目的列表 中取得前IOO個(gè)項(xiàng)目,并使用該前IOO個(gè)項(xiàng)目作為新的或修改后的訓(xùn)練集以重 新訓(xùn)練排序組件。然后在850,可由修改后的排序組件對(duì)這100個(gè)項(xiàng)目重新排 序。這可通過現(xiàn)在從這100個(gè)項(xiàng)目列表中取得前10個(gè)項(xiàng)目并按類似的方式對(duì) 其重新排序來再次重復(fù)。如可見地,列表上的前10個(gè)項(xiàng)目可在每一級(jí)中重復(fù) 地重新定序。
現(xiàn)在轉(zhuǎn)向圖9,圖示小規(guī)模地示出了對(duì)搜索結(jié)果的重新排序,更具體地是 對(duì)高排序項(xiàng)目的重新排序。想象用戶輸入了 Web查詢"stroller (手推車)", 且返回了眾多項(xiàng)目并對(duì)其排序??蛎?提供了從這種排序中得到的前5個(gè)項(xiàng)目 的列表。為了獲取對(duì)前5個(gè)項(xiàng)目(例如,URL)的改善的定序,可采用多嵌套 方法來在各級(jí)中(例如, 一個(gè)或多個(gè)級(jí))對(duì)項(xiàng)目重新定序。在更實(shí)際的規(guī)模上, 系統(tǒng)可處理針對(duì)該査詢檢索到的二百五十萬個(gè)項(xiàng)目,并因此對(duì)前5000個(gè)項(xiàng)目 進(jìn)行重新定序以最終改善前10個(gè)項(xiàng)目的定序和/或頂部項(xiàng)目可對(duì)用戶相當(dāng)有 利。因此,在對(duì)項(xiàng)目重新排序之后,獲得5個(gè)項(xiàng)目的新次序(910)。最終結(jié)果列表可如圖10所示向用戶呈現(xiàn)。多嵌套排序組件所消耗的處理時(shí)間是可忽 略不計(jì)的,且基本上不會(huì)引起用戶注意;且在結(jié)果列表的頂部提供最相關(guān)項(xiàng)目 時(shí)改善的準(zhǔn)確性極大地增加了用戶對(duì)搜索組件的滿意程度。
為了提供有關(guān)本發(fā)明的各個(gè)方面的附加上下文,圖11以及下列論述旨在 對(duì)可在其中實(shí)現(xiàn)本申請(qǐng)的各個(gè)方面的合適的操作環(huán)境iiio提供簡要、 一般描
述。當(dāng)在由一個(gè)或多個(gè)計(jì)算機(jī)或其它設(shè)備執(zhí)行的諸如程序模塊等的計(jì)算機(jī)可執(zhí) 行指令的一般上下文對(duì)本系統(tǒng)和/或方法進(jìn)行描述時(shí),本領(lǐng)域技術(shù)人員將認(rèn)識(shí) 到,本發(fā)明還能夠結(jié)合其它程序模塊和/或作為硬件和軟件的組合來實(shí)施。
然而,通常,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定數(shù)據(jù)類型的例程、程 序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。操作環(huán)境1110只是合適操作環(huán)境的一個(gè)示例, 并不旨在對(duì)本系統(tǒng)和/或方法的使用范圍或功能提出限制。其它適于與本發(fā)明一 起使用的公知的計(jì)算機(jī)系統(tǒng)、環(huán)境、和/或配置,包括但不限于個(gè)人計(jì)算機(jī)、 手持式或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程的消費(fèi)者 電子產(chǎn)品、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括上述系統(tǒng)或設(shè)備的分布 式計(jì)算環(huán)境等等。
參考圖11,用于實(shí)現(xiàn)本系統(tǒng)和/或方法各方面的示例性環(huán)境1110包括計(jì)算 機(jī)1112。計(jì)算機(jī)1112包括處理單元1114、系統(tǒng)存儲(chǔ)器1116和系統(tǒng)總線1118。 系統(tǒng)總線1118將包括但不限于系統(tǒng)存儲(chǔ)器1116的系統(tǒng)組件耦合至處理單元 1114。處理單元1114可以是任何各種可用的處理器。也可以使用雙微處理器 和其它多處理器體系結(jié)構(gòu)作為處理單元1114。
系統(tǒng)總線1118可以是若干類型的總線結(jié)構(gòu)中的任一種,包括存儲(chǔ)器總線 或存儲(chǔ)器控制器、外圍總線和/或使用各種可用的總線體系結(jié)構(gòu)中的任一種的局 部總線,可用的總線體系結(jié)構(gòu)包括,但不限于,ll位總線、工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu) (ISA)、微通道體系結(jié)構(gòu)(MCA)、擴(kuò)展的ISA (EISA)、智能驅(qū)動(dòng)器電子 接口 (IDE) 、 VESA局部總線(VLB)、外圍部件互連(PCI)、通用串行總 線(USB)、高級(jí)圖形接口 (AGP)、個(gè)人計(jì)算機(jī)存儲(chǔ)卡國際協(xié)會(huì)總線(PCMCIA) 以及小型計(jì)算機(jī)系統(tǒng)接口 (SCSI)。
系統(tǒng)存儲(chǔ)器1116包括易失性存儲(chǔ)器1120和非易失性存儲(chǔ)器1122?;?輸入/輸出系統(tǒng)(BIOS)包含有助于諸如啟動(dòng)時(shí)在計(jì)算機(jī)1112中元件之間傳遞信息的基本例程,它通常存儲(chǔ)在非易失性存儲(chǔ)器1122中。作為說明,而非限 制,非易失性存儲(chǔ)器1122可以包括只讀存儲(chǔ)器(ROM)、可編程ROM(PROM)、 電可編程ROM (EPROM)、電可擦除ROM (EEPROM)或閃存。易失性存 儲(chǔ)器1120可以包括用作外部高速緩存的隨機(jī)存取存儲(chǔ)器(RAM)。作為說明, 而非限制,RAM以多種形式可用,諸如同步RAM (SRAM)、動(dòng)態(tài)RAM (DRAM)、同步DRAM (SDRAM)、雙倍數(shù)據(jù)速率SDRAM (DDR SDRAM)、 增強(qiáng)型SDRAM (ESDRAM)、同步鏈路DRAM (SLDRAM)以及直接Rambus RAM (DRRAM)。
計(jì)算機(jī)1112也包括可移動(dòng)/不可以移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲(chǔ)介 質(zhì)。例如,圖11示出盤片存儲(chǔ)1124。盤片存儲(chǔ)1124包括,但不限于,如磁盤 驅(qū)動(dòng)器、軟盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、Jaz驅(qū)動(dòng)器、Zip驅(qū)動(dòng)器、Ls-100驅(qū)動(dòng)器、 閃存卡或記憶棒的設(shè)備。另外,盤片存儲(chǔ)1124可以包括獨(dú)立或與其它存儲(chǔ)介 質(zhì)結(jié)合的存儲(chǔ)介質(zhì),包括但不限于,諸如光盤ROM設(shè)備(CD-ROM) 、 CD 可記錄驅(qū)動(dòng)器(CD-R驅(qū)動(dòng)器)、CD可重寫驅(qū)動(dòng)器(CD-RW驅(qū)動(dòng)器)或數(shù)字 多功能盤ROM驅(qū)動(dòng)器(DVD-ROM)等的光盤驅(qū)動(dòng)器。為了便于將盤片存儲(chǔ) 設(shè)備1124連接至系統(tǒng)總線1118, 一般使用諸如接口 1126等可移動(dòng)或不可移動(dòng) 接口。
可以理解,圖11描述了作為用戶和在合適的操作環(huán)境1110中描述的基本 計(jì)算機(jī)資源之間的中介的軟件。這樣的軟件包括操作系統(tǒng)1128??杀淮鎯?chǔ)在盤 片存儲(chǔ)1124上的操作系統(tǒng)1128用來控制和分配計(jì)算機(jī)系統(tǒng)1112的資源。系 統(tǒng)應(yīng)用程序1130通過存儲(chǔ)在系統(tǒng)存儲(chǔ)器1116或者盤片存儲(chǔ)1124上的程序模 塊1132和程序數(shù)據(jù)1134利用了操作系統(tǒng)1128執(zhí)行的資源管理??梢岳斫?, 本系統(tǒng)和/或方法可以使用各種操作系統(tǒng)或操作系統(tǒng)的組合來實(shí)現(xiàn)。
用戶通過輸入設(shè)備1136向計(jì)算機(jī)1112輸入命令或信息。輸入設(shè)備1136 包括,但不限于,諸如鼠標(biāo)、跟蹤球、指示筆等定點(diǎn)設(shè)備、觸摸墊、鍵盤、麥 克風(fēng)、操縱桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀、TV調(diào)諧器卡、數(shù)碼相 機(jī)、數(shù)碼攝像機(jī)、網(wǎng)絡(luò)攝像頭等。這些和其它輸入設(shè)備經(jīng)由接口端口 1138通 過系統(tǒng)總線1118連接至處理單元1114。接口端口1138包括,例如串行端口、 并行端口、游戲端口和通用串行總線(USB)。輸出設(shè)備1140使用某些與輸入設(shè)備1136相同類型的端口。從而,例如,USB端口可以用于向計(jì)算機(jī)1112 提供輸入,并向輸出設(shè)備1140提供來自計(jì)算機(jī)1112的輸出信息。提供輸出適 配器1142來示出,存在類似監(jiān)視器、揚(yáng)聲器和打印機(jī)以及其它需要專用適配 器的輸出設(shè)備1140的某些輸出設(shè)備1140。作為說明而非限制,輸出適配器1142 包括提供輸出設(shè)備1140和系統(tǒng)總線1118之間的連接手段的顯卡和聲卡。應(yīng)該 注意,諸如遠(yuǎn)程計(jì)算機(jī)1144等其它設(shè)備和/或設(shè)備系統(tǒng)同時(shí)提供輸入和輸出能 力兩者。
計(jì)算機(jī)1112可使用至一臺(tái)或多臺(tái)遠(yuǎn)程計(jì)算機(jī),諸如遠(yuǎn)程計(jì)算機(jī)1144的邏 輯連接在網(wǎng)絡(luò)化環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)1144可以是個(gè)人計(jì)算機(jī)、服務(wù)器、 路由器、網(wǎng)絡(luò)PC、工作站、基于微處理器的裝置、對(duì)等設(shè)備或其它常見網(wǎng)絡(luò) 節(jié)點(diǎn)等,且通常包括上文相對(duì)于計(jì)算機(jī)1112描述的許多或所有元件。為簡明 起見,對(duì)于遠(yuǎn)程計(jì)算機(jī)1144僅示出存儲(chǔ)器存儲(chǔ)設(shè)備1146。遠(yuǎn)程計(jì)算機(jī)1144 通過網(wǎng)絡(luò)接口 1148被邏輯連接至計(jì)算機(jī)1112,并且然后通過通信連接1150 被物理地連接。網(wǎng)絡(luò)接口 1148包括諸如局域網(wǎng)(LAN)和廣域網(wǎng)(WAN)的 通信網(wǎng)絡(luò)。LAN技術(shù)包括光纖分布式數(shù)據(jù)接口 (FDDI)、銅線分布式數(shù)據(jù)接 口 (CDDI)、以太網(wǎng)/IEEE 1102.3、令牌環(huán)/IEEE 1102.5等。WAN技術(shù)包括, 但不限于,點(diǎn)對(duì)點(diǎn)鏈路、類似綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)及其變體的電路交換 網(wǎng)絡(luò)、分組交換網(wǎng)絡(luò)和數(shù)字用戶線(DSL)。
通信連接1150指的是用來將網(wǎng)絡(luò)接口 1148連接至總線1118的硬件/軟件。 盡管為說明清楚,將通信連接1150示為位于計(jì)算機(jī)1112內(nèi),然而通信連接1150 也可以在計(jì)算機(jī)1112外部。僅為示例的目的,連接至網(wǎng)絡(luò)接口 1148所必需的 硬件/軟件包括內(nèi)部和外部技術(shù),諸如包括常規(guī)電話級(jí)調(diào)制解調(diào)器、線纜調(diào)制解 調(diào)器和DSL調(diào)制解調(diào)器等的調(diào)制解調(diào)器、ISDN適配器以及以太網(wǎng)卡。
以上描述的包括本發(fā)明的示例。當(dāng)然,不可能為描述本系統(tǒng)和/或方法而 描述每個(gè)可想象的組件或方法的組合,但是本領(lǐng)域的普通技術(shù)人員可以認(rèn)識(shí) 到,本系統(tǒng)和/或方法的眾多其它組合和排列是可能的。從而,本系統(tǒng)和/或旨 在包括落入所附權(quán)利要求書精神和范圍內(nèi)的所有這樣的變更、修改和變化。而 且,就在詳細(xì)描述和權(quán)利要求書中都使用的術(shù)語"包括"而言,當(dāng)被用作權(quán)利 要求書中的過渡詞時(shí),這樣的術(shù)語旨在類似于解釋術(shù)語"包含"的方式是包含性的。
權(quán)利要求
1.一種向針對(duì)給定查詢返回的項(xiàng)目提供改善排序的排序系統(tǒng),包括項(xiàng)目的初始集,所述項(xiàng)目的初始集的定序是所期望的;以及多嵌套排序組件(120),它對(duì)高排序項(xiàng)目的一個(gè)或多個(gè)遞減子集重新排序以便于獲取項(xiàng)目的最相關(guān)定序。
2. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述多嵌套排序組件包括經(jīng) 由機(jī)器學(xué)習(xí)或統(tǒng)計(jì)方法訓(xùn)練的多個(gè)排序算法。
3. 如權(quán)利要求2所述的系統(tǒng),其特征在于,所述多個(gè)排序算法包括訓(xùn)練成對(duì)項(xiàng)目的初始集排序的至少一種初始排序算法(NETQ);以及 后續(xù)對(duì)從之前重新排序的項(xiàng)目子集中取得的經(jīng)排序項(xiàng)目訓(xùn)練的一個(gè)或多 個(gè)后續(xù)排序算法。
4. 如權(quán)利要求3所述的系統(tǒng),其特征在于,第一項(xiàng)目子集包括位于列表 上最高次序位置的項(xiàng)目。
5. 如權(quán)利要求2所述的系統(tǒng),其特征在于,還包括訓(xùn)練集修改組件,它 部分通過從每一訓(xùn)練集中排除一個(gè)或多個(gè)項(xiàng)目來連續(xù)修剪每一個(gè)之前的訓(xùn)練 集以形成新的訓(xùn)練集,每一新訓(xùn)練集包括來自之前訓(xùn)練集的項(xiàng)目的子集。
6. 如權(quán)利要求5所述的系統(tǒng),其特征在于,所述多個(gè)排序算法使用相應(yīng) 的訓(xùn)練集以連續(xù)方式訓(xùn)練。
7. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述多嵌套排序組件在一個(gè) 或多個(gè)分開的級(jí)中對(duì)由所述搜索組件檢索到的所述項(xiàng)目的初始集的子集重新 定序,以將最相關(guān)高分值項(xiàng)目置于所述列表的頂部。
8. 如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括顯示組件,它向所述 用戶呈現(xiàn)搜索結(jié)果列表,所述搜索結(jié)果列表至少包括使用多個(gè)分開訓(xùn)練的神經(jīng) 網(wǎng)絡(luò)重新定序的項(xiàng)目的子集。
9. 一種向針對(duì)給定査詢返回的項(xiàng)目提供改善排序的方法,包括 檢索項(xiàng)目的初始有序集;以及對(duì)排序項(xiàng)目的一個(gè)或多個(gè)遞減的子集重新排序以便于獲得所述項(xiàng)目的最 相關(guān)定序。
10. 如權(quán)利要求9所述的方法,其特征在于,還包括對(duì)項(xiàng)目的初始集排序 以及從中選擇頂部項(xiàng)目子集以重新排序。
11. 如權(quán)利要求IO所述的方法,其特征在于,所述對(duì)頂部項(xiàng)目子集的重 新排序是在一個(gè)或多個(gè)分開的級(jí)中進(jìn)行的。
12. 如權(quán)利要求9所述的方法,其特征在于,所述重新排序包括-選擇高排序項(xiàng)目的遞減頂部子集; 修改用于訓(xùn)練經(jīng)修改排序算法的訓(xùn)練集;以及對(duì)高排序項(xiàng)目的頂部子集重新定序。
13. 如權(quán)利要求12所述的方法,其特征在于,修改訓(xùn)練集包括 通過排除多個(gè)低排序項(xiàng)目并在其中至少保留高排序項(xiàng)目的頂部子集來修剪至少第一訓(xùn)練集以形成至少一個(gè)經(jīng)修改訓(xùn)練集;以及對(duì)所述至少一個(gè)經(jīng)修改訓(xùn)練集訓(xùn)練至少一個(gè)經(jīng)修改排序算法。
14. 如權(quán)利要求9所述的方法,其特征在于,所述重新排序是經(jīng)由至少一 個(gè)經(jīng)訓(xùn)練的排序算法進(jìn)行的。
15. 如權(quán)利要求9所述的方法,其特征在于,還包括向所述用戶呈現(xiàn)列表, 所述列表包括已經(jīng)重新排序的項(xiàng)目的子集。
16. 如權(quán)利要求9所述的方法,其特征在于,還包括對(duì)來自所述項(xiàng)目初始 集的項(xiàng)目的子集重新定序。
17. 如權(quán)利要求9所述的方法,其特征在于,所述重新排序采用對(duì)數(shù)據(jù)集 訓(xùn)練的一個(gè)或多個(gè)排序算法,其中對(duì)較小數(shù)據(jù)集訓(xùn)練的所述排序算法與對(duì)較大 數(shù)據(jù)集訓(xùn)練的那些排序算法相比是更復(fù)雜的學(xué)習(xí)算法。
18. —種向針對(duì)給定查詢返回的項(xiàng)目提供改善排序的排序系統(tǒng),包括 用于針對(duì)所述給定查詢檢索項(xiàng)目的初始有序集的裝置;以及 用于對(duì)高排序項(xiàng)目的一個(gè)或多個(gè)遞減子集重新排序以便于獲得所述項(xiàng)目的最相關(guān)定序的裝置。
19. 如權(quán)利要求18所述的系統(tǒng),其特征在于,還包括用于修改訓(xùn)練集以 便于分開訓(xùn)練多個(gè)排序算法的裝置。
20. 如權(quán)利要求18所述的系統(tǒng),其特征在于,還包括用于呈現(xiàn)有序項(xiàng)目 的列表的裝置,所述列表至少包括一個(gè)已經(jīng)重新排序的項(xiàng)目的子集。
全文摘要
提供了一種便于改善項(xiàng)目的排序的獨(dú)特的系統(tǒng)和方法。該系統(tǒng)和方法涉及在分開的級(jí)中對(duì)高排序項(xiàng)目的遞減子集重新排序。具體地,基本排序組件可對(duì)項(xiàng)目集排序??扇〉庙敳炕蚋吲判蝽?xiàng)目的子集,并用作新訓(xùn)練集以訓(xùn)練用于改善這些高排序文檔之間的排序的組件。該過程可對(duì)任意數(shù)目的連續(xù)的高排序子集重復(fù)。因此,可通過關(guān)注于較高排序項(xiàng)目在分開的級(jí)中對(duì)高排序項(xiàng)目重新定序以便于將最相關(guān)項(xiàng)目置于搜索結(jié)果列表的頂部。
文檔編號(hào)G06Q90/00GK101322125SQ200680045523
公開日2008年12月10日 申請(qǐng)日期2006年11月17日 優(yōu)先權(quán)日2005年12月5日
發(fā)明者A·S·拉魯夏斯, C·J·博格斯, I·瑪特維娃, L·W·翁, T·伯卡德 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1