專利名稱:對于包含非編碼字符的查詢使用統(tǒng)一資源定位符來增強搜索結果相關性排序的制作方法
對于包含非編碼字符的查詢使用統(tǒng)一資源定位符來增強搜
索結果相關性排序
背景技術:
與網頁相對應的統(tǒng)一資源定位符(URL)已顯示為包含用于測量網頁對于搜索查詢的相關性的有用信息。已執(zhí)行了大量的解決利用URL來改善搜索結果相關性排序的質量的問題的工作。這種工作傳統(tǒng)上集中于西方語言網頁,其字母集合例如能夠通過編碼諸如ASCII字符之類的字符來表示,這是因為URL由US-ASCII字符集(在這里稱為編碼字符)中的字符的字符串組成。對于包括不允許在URL中使用的字符(即,“非編碼字符”(NEC),例如,其可以包括中文、日文,韓文和其他的類似語言)的語言而言,由于URL利用編碼字符來表示,所以將查詢與URL匹配往往是困難的。為了更有效地將URL用于NEC語言市場中的相關性排序,所希望的是以相同的格式來表示搜索查詢和相應的URL。能夠采用兩種方式之一來實現(xiàn)一致的格式。第一種方式是在在線服務時間改變查詢,其中NEC查詢基于映射表被變換為英文單詞、拼音表示(即,中文字符的發(fā)音)、數(shù)字字符或這些的組合,其中映射表根據(jù)NEC字與其對應的編碼語言形式之間類似的含義或發(fā)音的規(guī)則離線建立。另一種更堅固的方案是將URL中的有意義部分轉換成NEC字,并在索引生成期間將轉換的URL內置到網頁索引中。
發(fā)明內容
這個概述部分用于以簡化形式介紹下面在詳細描述部分中進一步描述的概念的選擇。這個概述部分不打算標識所請求保護的主題的關鍵特征或基本特征,也不打算被孤立用作輔助手段來確定所請求保護的主題的范圍。本發(fā)明的實施例用于執(zhí)行離線程序,其中這些離線程序通過包括URL與相應NEC字的配對來有助于增強網頁索引,以便于NEC語言搜索的搜索結果相關性排序。在實施例中,網頁的URL被接收。URL子串從URL中進行提取,并與消除歧義信息進行比較,以推斷出該URL的恰當?shù)南鄳狽EC表示。在實施例中,例如,諸如標題、錨(anchor )、層次結構中的字符串等之類的元素從網頁中進行提取。每一個元素被斷字(word-broken)為NEC字的序列。參考NEC-編碼語言映射表來標識元素中的每個NEC字的所有可能的編碼語言表示。在實施例中,代表斷字元素的格被生成,其中每一個節(jié)點對應于NEC字的可能的編碼語言表示。使用這些格,能夠采用遍歷這些格的算法,其定義能夠與所提取的URL子串進行比較的格路徑,以標識匹配。連同與相應匹配相關聯(lián)的置信度分數(shù)(confidence score) —起,與URL子串相匹配的格路徑被添加到潛在的候選字符串列表。這些潛在的候選字符串能夠與相應URL子串進行配對,并被并入網頁索引中,以便于在線采用的NEC語言搜索結果相關性排序。
下面參考附圖詳細描述本發(fā)明的實施例,其中
圖1是適合于實施本發(fā)明的實施例的示例性計算設備的框圖;圖2是適合于用于實施本發(fā)明的實施例的示例性網絡環(huán)境的框圖;圖3描述用于根據(jù)本發(fā)明的實施例利用NEC語言/編碼語言配對來增強網頁索引的處理組件的說明性的實施方式;
圖4描述根據(jù)本發(fā)明的實施例的說明性的映射表;圖5描述根據(jù)本發(fā)明的實施例的顯示其各子串的說明性的URL ;圖6描述根據(jù)本發(fā)明的實施例的說明性的中文語言網頁;圖7描述根據(jù)本發(fā)明的實施例的代表網頁元素的說明性的格集合;圖8描述根據(jù)本發(fā)明的實施例的說明性的URL候選字符串匹配處理;圖9描述根據(jù)本發(fā)明的實施例的說明性的修剪格;
圖10是說明根據(jù)本發(fā)明的實施例、利用URL/NEC字對來增強網頁索引以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序的示例性方法的流程圖;和
圖11是說明根據(jù)本發(fā)明的實施例、利用URL/NEC字對來增強網頁索引以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序的示例性方法的另一流程圖。
具體實施例方式在這里披露的本發(fā)明的實施例的主題利用特異性來描述,以滿足法定要求。但是,該描述本身并不打算來限制這個專利的范圍。相反,發(fā)明人已考慮配合其他的當前或未來的技術,所請求保護的主題也可能以其他的方式來實現(xiàn),以包括不同的步驟或與這個文獻中所描述的相類似的步驟的組合。此外,雖然在這里可能使用術語“步驟”和/或“方框”來暗示所采用的方法的不同元素,但是除非且除了明確地描述各步驟的順序之外,這些術語不應被解釋為暗指在這里所公開的各種步驟之中或之間任何特定的順序。在這里所描述的本發(fā)明的實施例包括計算設備和計算機可讀媒體,用于使得計算設備執(zhí)行利用URL/NEC字對來增強網頁索引的方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序。在實施例中,該說明性方法包括接收與網頁相對應的統(tǒng)一資源定位符(URL),其中URL包括編碼字符的第一字符串。在實施例中,該說明性方法也包括將編碼字符的第一字符串變換為一個或多個NEC字;以及將NEC字的集合包括在網頁索引中。在第二說明性的實施例中,計算機可執(zhí)行指令使得計算設備執(zhí)行利用URL/NEC字對來增強網頁索引的方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序。在實施例中,該說明性方法包括創(chuàng)建包括NEC語言與字符編碼語言之間的映射的映射表。接收與網頁相對應的統(tǒng)一資源定位符(URL)字符串。該方法的實施例也包括參考來自網頁的多個元素,并且基于這些元素,將URL字符串轉換成NEC字的序列。在實施例中,該說明性方法也包括構建包括NEC字集合的網頁索引。在第三說明性的實施例中,計算機可執(zhí)行指令集提供利用URL/NEC字對來增強網頁索引的示例性方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序。在實施例中,該方法包括接收與網頁相對應的統(tǒng)一資源定位符(URL),以及從該URL中提取URL子串。從網頁中接收元素,其中該元素利用NEC語言來表示,并且參考映射表來標識該元素的可能的編碼字符表示。在實施例中,該說明性方法進一步包括確定該元素的多個可能的編碼字符表示之一與URL子串相匹配;以及將所選擇的編碼字符表示和相應NEC字包括在網頁索引中。本發(fā)明的實施例的各方面可以在計算機程序產品的一般語境中進行描述,其中計算機程序產品包括計算機代碼或機器可用指令,這些指令包括由計算機或諸如個人數(shù)據(jù)助理或其他手持設備之類的其他機器執(zhí)行的計算機可執(zhí)行指令,諸如程序模塊。一般,包括例程、程序、對象、組件、數(shù)據(jù)結構等等的程序模塊指的是執(zhí)行特定任務或實施特定的抽象數(shù)據(jù)類型的代碼。本發(fā)明的實施例可以在各種系統(tǒng)配置中進行實踐,其中系統(tǒng)配置包括專用服務器、通用計算機、膝上型計算機、更專業(yè)計算設備等等。本發(fā)明也可以在分布式計算環(huán)境中進行實踐,其中任務由通過通信網絡鏈接的遠程處理設備來執(zhí)行。計算機可讀媒體包括易失性和非易失性媒體、可拆卸和不可拆卸媒體二者,并考慮可由數(shù)據(jù)庫、處理器和各種其他聯(lián)網的計算設備讀取的媒體。利用示例并且不是限制,計算機可讀媒體包括以用于存儲信息的任何方法或技術來實施的媒體。存儲信息的示例包括計算機可執(zhí)行指令、數(shù)據(jù)結構、程序模塊和其他的數(shù)據(jù)表示。媒體示例包括但不限于RAM、ROM、EEPR0M、閃存和其他的存儲技術、⑶-ROM、數(shù)字多功能盤(DVD)、全息媒體和其他的光盤存貯器、磁帶盒、磁帶、磁盤存貯器以及其他的磁存儲設備。這些技術能夠瞬間、暫時或永久存儲數(shù)據(jù)。下面描述其中可以實施本發(fā)明的各方面的示例性操作環(huán)境,以便提供對于本發(fā)明的各方面的一般背景。特別地,最初參見圖1,用于實施本發(fā)明的實施例的示例性操作環(huán)境被顯示,并一般被指定為計算設備100。計算設備100只是適當?shù)挠嬎悱h(huán)境的一個示例,并且不打算暗示針對本發(fā)明的使用或功能的范圍的任何限制。計算設備100也不應該被解釋為具有與所說明的任一組件或組件的組合有關的任何依賴或要求。計算設備100包括直接或間接耦合下列設備的總線110 存儲器112,一個或多個處理器114,一個或多個演示組件116,輸入/輸出端口 118,輸入/輸出組件120,以及說明性的電源122??偩€110代表的可能是一條或多條總線(例如,地址總線、數(shù)據(jù)總線或其組合)。雖然為了清晰起見而利用線條來顯示圖1的各個方塊,但在現(xiàn)實中,劃定各個組件并不是如此清晰的,并且用比喻而言,這些線條將更準確地是灰色和模糊的。例如,可以考慮諸如顯示設備之類的演示組件是I/O組件。同樣,處理器具有存儲器。我們認識到,這是本領域的特性,并且重申圖1的框圖僅僅說明能夠與本發(fā)明的一個或多個實施例結合使用的示例性計算設備。不區(qū)分諸如“工作站”、“服務器”、“膝上型計算機”、“手持設備”等之類的類別,因為所有這些被考慮在圖1的范圍之內并稱為“計算設備”。存儲器112包括存儲在易失性和/或非易失性存儲器中的計算機可執(zhí)行指令113。該存儲器可以是可拆卸的、不可拆卸的或其組合。示例性硬件設備包括固態(tài)存儲器、硬盤驅動器、光盤驅動器等等。計算設備100包括與系統(tǒng)總線110耦合的一個或多個處理器114,其中處理器從諸如存儲器112或I/O組件120之類的各種實體中讀取數(shù)據(jù)。在實施例中,一個或多個處理器114執(zhí)行計算機可執(zhí)行指令113,以執(zhí)行由計算機可執(zhí)行指令115定義的各種任務和方法。一個或多個演示組件116被耦合到系統(tǒng)總線110,并且向用戶或其他設備呈現(xiàn)數(shù)據(jù)指示。示例性演示組件116包括顯示設備、揚聲器、打印組件等。I/O端口 118允許將計算設備110邏輯耦合到包括I/O組件120的其他設備,其中的一些設備可以被內置。說明性組件包括麥克風、操縱桿、游戲手柄、衛(wèi)星天線、掃描儀、打印機、無線設備、鍵盤、筆、語音輸入設備、觸摸輸入設備、觸摸屏設備、交互式顯示設備或鼠標。I/O組件120也能夠包括通信連接121,其能夠有助于將計算設備100通信連接到遠程設備,例如,諸如其他的計算設備、服務器、路由器等等。由于URL通常由編碼語言字符(例如,ASCII字符)組成,所以例如在中文網頁設計者創(chuàng)建新的頁面時,他往往使用英文單詞、拼音、數(shù)字字符串或這些的組合來表示其中文名稱。例如,如果該網頁包括在線游戲(注意用于“online games (在線游戲)”的相應斷字中文是“網絡游戲”),則網頁所有者可能例如為該URL選擇以下ACSII名稱^onlinegames'\"wangluoyouxi"(全拼音表示)或“wlyx”(縮寫拼音)。因而,為了便于搜索結果相關性排序,搜索查詢和網頁索引信息應以類似方式來表示。雖然將查詢變更為其ASCII格式是將URL用于NEC (中文、日文和韓文語言)頁面的相關性改進的一種解決方案,但是其往往是相對無效的和低效的。本發(fā)明的實施例反而便于將URL變換處理移到脫機(離線)環(huán)境,其中URL的有意義部分被轉換為NEC字。在這種處理中,諸如標題和錨之類的重要頁面內容能夠用于決定或消除候選NEC字之間的歧義。這些NEC字能夠被內置到網頁索引中作為備用元流(metastream),以替換或補充用于NEC頁面排序的原始URL元流?,F(xiàn)在轉到圖2,顯示適合于用于實施本發(fā)明的實施例的示例性網絡環(huán)境200的框圖。網絡環(huán)境200包括用戶設備210、網絡211、搜索引擎212、網頁索引216 (這包括與網頁218和220相關聯(lián)的可搜索的索引的信息,其能夠由web服務器提供)以及NEC索引服務222。用戶設備210通過網絡211與搜索引擎212通信,其中所述網絡可以包括任何數(shù)量的網絡,例如,諸如局域網(LAN)、廣域網(WAN)、因特網、蜂窩網絡、對等(P2P)網絡、移動網絡或網絡的組合。圖2中所示的示例性網絡環(huán)境200是一個合適的網絡環(huán)境200的示例,并且不打算暗指對于在這個文獻中公開的本發(fā)明的實施例的使用或功能的范圍的任何限制。示例性網絡環(huán)境200也不應被解釋為具有與在這里說明的任何單個組件或組件的組合相關的任何依賴或要求。用戶設備210可以是能夠允許用戶向搜索引擎212提交搜索查詢以及響應于搜索查詢而從搜索引擎212接收搜索結果頁面的任何類型的計算設備。例如,在實施例中,用戶設備210可以是計算設備,諸如在上面參考圖1所描述的計算設備100。在實施例中,用戶設備210可以是個人計算機(PC)、膝上型計算機、工作站、移動計算設備、PDA、蜂窩電話等寸。搜索引擎212以及索引216和NEC索引服務222能夠被實施為服務器系統(tǒng)、程序模塊、虛擬機、一個或多個服務器的組件、網絡等等。在一個實施例中,例如,組件212、216和222之中的每一個被實施為單獨的服務器。在另一個實施例中,所有的組件212、216和222在單個服務器或服務器組上進行實施。在一個實施例中,用戶設備210與搜索引擎212和/或圖2所示的其他組件相分離并且有別于這些組件。在另一個實施例中,用戶設備210與搜索引擎212相集成。為了解釋清楚,我們應描述其中用戶設備210以及組件212、216和222之中的每一個是分開的實施例,同時明白在本發(fā)明內考慮的各種配置中,可能并非如此。如圖2所示,用戶設備210與搜索引擎212通信。搜索引擎212接收由用戶經由用戶設備210提交的搜索查詢,S卩,搜索請求。從用戶接收的搜索查詢能夠包括由用戶手動或口頭輸入的搜索查詢、向用戶建議并由用戶選擇的查詢以及由搜索引擎212接收的被用戶以某種方式認可的任何其他的搜索查詢。在實施例中,搜索查詢包括一個或多個NEC字。由于在這里使用術語,所以“NEC字”指的是與NEC語言(例如,中文、日文、韓文等等)相關聯(lián)的任何類型的符號、字符、標記、圖畫等等?!癗EC字”也能夠包括符號、字符、標記、圖畫等等的序列。也就是說,遍及目前披露的內容,“NEC字”能夠指字、字的一部分、短語、縮寫詞或者書面或口頭NEC語言的任何其他部分。在一些實施例中,搜索查詢能夠僅包括NEC字,而在其他實施例中,例如,搜索查詢能夠包括NEC字和某些其他類型的字或字符諸如編碼字符的組合。例如,搜索引擎212可以是或者包括搜索引擎、履帶(crawler)等等。在一些實施例中,搜索引擎212被配置成使用通過用戶設備210提交的查詢來執(zhí)行搜索。在各種實施例中,搜索引擎212能夠為與用戶設備210進行通信的用戶提供用戶界面,以有助于搜索體驗。在一個實施例中,搜索引擎212監(jiān)視搜索活動,并且能夠產生一個或多個記錄或日志,其表示搜索活動、所提交的先前查詢、所獲得的搜索結果等。這些服務能夠進行杠桿作用(leverage),以便以許多不同的方式來改善搜索體驗。根據(jù)本發(fā)明的不同實施例,搜索引擎212參考相關聯(lián)的網頁索引216來標識與從用戶接收的搜索查詢相關的搜索結果。如圖2所示,搜索引擎212與NEC索引服務222通信。在本發(fā)明的一個實施例中,索引服務222有助于利用URL/NEC字對來增強網頁索引216,以便在網頁索引216中標識的搜索結果的相關性排序中使用。在實施例中,NEC索引服務222脫機執(zhí)行這樣的增強,并提供最終得到的URL/NEC字對給網頁索引216。在一個實施例中,搜索引擎212被配置成接收所提交的查詢,并且使用該查詢來執(zhí)行搜索。在一個實施例中,一旦標識滿足搜索查詢的搜索結果,搜索引擎212就利用諸如搜索結果頁面之類的圖形界面返回一組搜索結果給用戶設備210。一組搜索結果包括被認為與用戶定義的搜索查詢相關的內容或內容網站(例如,包含內容的網頁、數(shù)據(jù)庫等等)的表示。例如,搜索結果可以被呈現(xiàn)為內容鏈接、片段、縮略圖、概要等等。內容鏈接指的是與相關聯(lián)內容的地址相對應的內容或內容網站的可選擇的表示。例如,內容鏈接可以是與統(tǒng)一資源定位符(URL)、IP地址或其他類型的地址相對應的可選擇的表示。這樣,內容鏈接的選擇能夠導致用戶的瀏覽器重定向至相應地址,由此用戶能夠訪問相關聯(lián)的內容。內容鏈接的一個常用示例是超鏈接(在這里可以互換地稱為錨)。如圖2所示,搜索引擎212參考索引216。本領域普通技術人員應明白索引216是可縮放的,并且實際上可能具有許多的與搜索引擎212相關聯(lián)的索引模塊。索引216能夠駐留在與搜索引擎212相同的機器上。在另一個實施例中,索引216遠離搜索引擎212,并且在任一種情況中,搜索引擎212與索引216通信,以執(zhí)行搜索和檢索存儲在索引216或未在圖2中示出的某一其他存儲模塊上的內容、索引項等等。繼續(xù)參考圖2,NEC索引服務222包括URL字符串管道226、候選字符串管道2 和匹配組件230。URL字符串管道2 包括用于處理從網頁218和220接收的URL的軟件、組件、模塊等等。在實施例中,URL字符串管道從URL中提取子串,以便在相對于從相應網頁的元素中提取的候選字符串進行匹配中使用。在一些實施例中,例如,URL字符串管道從網頁218或220接收URL、根據(jù)特殊字符(例如,“/”、“. ”、“&”等等)來分割URL并且從分離的URL中提取子串(例如,子域、基域、路徑等等)。URL子串隨后能夠被提供給匹配組件230,以便相對于候選字符串(或者,互換地,候選路徑)進行匹配。
候選字符串管道2 接收來自網頁218和220的元素、從這些元素中提取NEC字,并且從這些NEC字中生成候選字符串,以便與所提取的URL子串進行匹配。在實施例中,元素能夠包括任何類型的對象、文本、HTML元素等等,例如,諸如網頁標題、錨、層次結構中的字符串以及來自網頁主體的文本。例如,在一個實施例中,候選字符串管道2 從網頁218或220中提取網頁的標題以及網頁218或220的層次結構中的字符串。在一些實施例中,如圖2所示,網頁220能夠包括以另一個網頁218為目標的錨221。由于在這里使用術語,所以“錨”指的是以網頁為目標的一組超文本。在實施例中,錨221能夠從網頁220中進行提取,并與網頁218相關聯(lián)。每當接收到具有與錨221相同的超文本的錨時,能夠更新與錨221的特定超文本相對應的頻率指示,以反映該錨的頻率,其中所述頻率指的是在語法分析其他網頁期間遭遇到具有以特定網頁為目標的特定超文本集合的錨的次數(shù)。候選字符串管道2 將所提取的元素分為NEC字的序列。對于每一個NEC字,候選字符串管道在映射表232中查找NEC-編碼字符映射,以找到所有其可能的編碼表示,其中所述映射表例如可以保持在與NEC索引服務222相關聯(lián)的存貯器234中。暫時轉到圖4,描繪說明性的映射表400。圖4中所示的說明性映射表是一個適當?shù)挠成浔?00的示例,并且不打算暗指任何的對于在這個文獻中公開的本發(fā)明的實施例的使用或功能的范圍的限制。該說明性映射表400也不應被解釋為具有與在這里說明的任何單個組件或組件的組合相關聯(lián)的任何依賴或要求。如圖4所示,例如,說明性映射表400包括NEC語言410與諸如ASCII字符、UTF-8字符等等的編碼語言字符412之間的映射。在所說明的實施例中,映射表400包括中文字410與中文字的全拼音表示414之間的映射、中文字410與中文字的縮寫拼音表示416之間的映射以及中文字410與相應的英文翻譯418之間的映射。在實施例中,例如,映射表400可以從三個源中生成漢一英詞典(其包含446,908個翻譯對);中文一拼音映射表(其包含60,878個中文字及其相應的拼音發(fā)音);以及一組各種不規(guī)則的但是流行的中文-ASCII映射對,諸如“sina<->新浪”和“el0ng<->藝龍”。在映射表400的各實施例中能夠包括任何數(shù)量的其他源、NEC語言、映射等等。返回到圖2,并且根據(jù)本發(fā)明的實施例,候選字符串管道2 生成與每一個處理的元素相對應的格。在實施例中,格的每個節(jié)點是與NEC字相對應的編碼表示(例如,拼音或英文單詞),并且通過該格的每條路徑是該元素的候選編碼字符串。因為網頁218或220的主體通常包含大量的字,其中的大多數(shù)與URL字符串是無關的,因此,在一些實施例中,在這里描述的匹配處理中不使用該主體。然而,在一些實施例中,網頁218或220的主體可以用于提供額外的信息,從中能夠推斷出URL子串的可能的NEC翻譯。根據(jù)本發(fā)明的實施例,NEC索引服務222利用URL字符串管道226、候選字符串管道228以及匹配組件230來標識URL子串與匹配NEC字的配對。相關領域的技術人員應該意識到因為NEC語言的特性以及NEC語言與諸如編碼字符(例如,拼音、英文等等)之類的西方語言之間翻譯的特性,特定URL子串可能與許多不同的NEC字相匹配。在實施例中,NEC索引服務222也計算與匹配的配對相關聯(lián)的置信度分數(shù),其中這些分數(shù)可以與這些配對一起被提供給網頁索引216,以便在搜索結果相關性排序程序中使用,如本領域中所公知的?,F(xiàn)在轉到圖3,描繪本發(fā)明的實施例的示例性實施方式300。示例性實施方式300包括具有相應URL 312以及一組元素314的網頁310。如圖3中所示,URL字符串管道316從網頁310接收URL 312。候選字符串管道318從網頁310接收元素314,并將這些元素變換為NEC字的序列,以便由匹配組件320使用。一旦接收到URL 312,URL字符串管道從URL 312中提取URL子串324。在實施例中,構成URL 312的每一個子串能夠被提取,而在其他的實施例中,僅提取特定類型的子串。暫時轉到圖5,描繪示例性URL 500。如圖5中所示,URL 500具有三個主要部分方案512、域514和路徑516。該方案代表與URL 500相關聯(lián)的HTML文件所使用的協(xié)議。該域包括三個不同的子串子域518、基域520和頂級域522?;?20通常是主辦(host)網頁310的網站的注冊名稱,而子域518通常代表網站的通道。頂級域522通常包含網站的類型和位置信息。路徑516對主機網站上的網頁410的目錄和文件名進行編碼(為了清楚起見而沒有示出)?;谏厦娴腢RL結構分析,有意義的信息應一般在子域518、基域520和路徑516中找到?;?20和子域518名稱通常是導航查詢的目標,而路徑516能夠提供有關網頁310內容和類別的有用信息。返回到圖3,由于站點的官方名稱經常出現(xiàn)在站點的頁面標題、主體內容以及指向該站點的主頁的錨文本等等中,所以這些類型的元素能夠被杠桿作用,以推斷出至從網頁310中提取的URL 312的基域和子域部分的中文名稱映射。此外,在URL的路徑部分中的最后斜杠(或文件名稱部分)之后的最后部分通常與頁面標題以及可見標題具有密切相關性。在最后斜杠之前的路徑部分有時也能夠映射到該頁面中的層次結構中的字符串。繼續(xù)參考圖3,在URL字符串管道316中,例如,URL 312字符串被諸如“/”、“.,,、“&”等之類的特殊字符分割。在實施例中,由URL字符串管道316提取URL子串324。例如,所提取的子串3M能夠包括子域、基域、路徑等等。這些URL子串3M是將與從元素314(例如,頁面標題、錨、層次結構中的字符串等等)變換的候選編碼字符串進行匹配的候選字符串。如圖3所示,候選字符串管道318包括將元素315分成NEC字328的序列的斷字器(word breaker)326。每一個NEC字3 被提供給變換器330,其中變換器330參考映射表322來確定每一個NEC字328的所有可能的編碼語言表示。在實施例中,映射表322能夠包括NEC語言與編碼字符之間的映射。例如,在一個實施例中,映射表322包括中文字與英語表示之間的映射以及中文字與那些字的拼音表示之間的映射。一旦獲得NEC字328的可能的編碼語言表示,候選字符串管道3 生成與每一個處理的元素相對應的格。在實施例中,格的每一個節(jié)點是與NEC字相對應的編碼表示(例如,拼音或英文單詞),并且通過該格的每一條路徑是該元素的候選編碼字符串。候選字符串格322被提供給匹配組件320。匹配組件320接收每個提取的URL子串324,并將這些(子串)與從元素314中變換的每一個候選編碼字符串進行匹配。根據(jù)一些實施例,在匹配之前,使用啟發(fā)式規(guī)則來修剪該格,以使得匹配處理是有效的。例如,在一些實施例中,匹配處理開始于具有與URL子串相同的初始編碼字符的格節(jié)點,其中所述格節(jié)點將與所述URL子串進行匹配。此外,在實施例中,因為觀察顯示與少于三個字符的英文單詞的匹配往往是不可靠的,所以對于該格中的英文單詞節(jié)點來說,如果由該英文單詞的前三個字母字符構成的子串沒有出現(xiàn)在任何的URL子串中,那么能夠從該格中剪除該節(jié)點。進一步,在一些實施例中,能夠假定URL—般包括標題、錨和/或層次結構中的字符串的縮寫,并因而應該在長度上短于這些元素。因此,在實施例中,當在該格的候選編碼字符串中包含的拼音或英文項的數(shù)量超過將要匹配的URL子串的長度時,匹配組件320能夠停止匹配處理。 根據(jù)實施例,由匹配組件320執(zhí)行的候選匹配對搜索算法能夠被描述為如下 在上面的算法中,稱為“MatchURLSubMringWithLattice”的函數(shù)將輸入URL子串與每一個可能的格路徑進行匹配,并輸出匹配的格路徑及其各自的置信度分數(shù)。在實施例中,這個函數(shù)能夠被描述為如下 在這個函數(shù)中,從具有與URL子串相同的初始字母或數(shù)字字符的格節(jié)點開始生成路徑。首先,具有一個格節(jié)點的路徑(即,長度=1)將與URL子串進行匹配,隨后將匹配長度=2、長度=3等等的路徑。匹配函數(shù)“MatchingTermlnitialCharactersWithURL”被設計成將每一個項的初始子串與URL子串進行匹配。例如,如果候選路徑是包含三個項“ zhang”、“bo”、“zhi”的“zhang bo zhi”并且URL子串是“zbozh”,那么匹配處理能夠如圖8中所
暫時轉到圖8,說明示例性的格路徑810 “zhang bo zhi”和示例性的URL子串812“zb0zh”。因而,例如,如利用箭頭814所示,URL子串中的第一字符“ζ”能夠匹配“zhang”的開頭。類似地,如利用箭頭816所示,由URL中的第二和第三字符組成的字符串“bo”能夠匹配“bo”的開頭。此外,如利用箭頭818所示,由URL中的第四和第五字符組成的字符串“zh”能夠匹配“zhi”的開頭。因此,這將是有效的匹配,并因而導致候選匹配對的標識。隨后,所有匹配的格路徑將被添加到候選路徑列表,并且能夠為其中的每條格路徑計算置信度分數(shù)。在實施例中,例如,置信度分數(shù)可以基于路徑長度、匹配部分長度、跳過的節(jié)點號等等。在一些實施例中,可以采用各種量度來使得該算法是更堅固的。例如,在一些實施例中,能夠使用人工智能、用戶反饋、統(tǒng)計評估等等來調節(jié)在這里描述的NEC索引處理和算法的方面。在一個實施例中,匹配處理能夠被配置成跳過一定數(shù)量的格節(jié)點,從而允許一些部分匹配進入最后的候選路徑列表。返回到圖3,匹配組件20將最終得到的URL/NEC字對334 (并且,在一些實施例中,相應的置信度分數(shù))提供給映射表322。這樣,在每次執(zhí)行匹配處理時,能夠更新映射表322,從而增加能夠從映射表322中參考的可用映射的數(shù)量。此外,在實施例中,最終得到的URL/NEC字對334被包括在網頁索引336中。在一些實施方式中,最終得到的URL/NEC字對334能夠被添加到現(xiàn)有網頁索引336。在其他的實施方式中,最終得到的URL/NEC字對334能夠在創(chuàng)建網頁索引336時被并入網頁索引336中。在進一步實施例中,最終得到的URL/NEC字對334可以被保持在與網頁索引336分離但是相關聯(lián)的數(shù)據(jù)結構(例如,表格,數(shù)據(jù)庫
絕絕、由
寸寸夕T °為了說明操作中的本發(fā)明的實施例,參考圖6-9。在圖6中說明示例性的中文網頁600。示例性的中文網頁包括標題610和層次結構中的字符串612。此外,如圖2所示,來自以網頁600為目標的其他網頁的錨221能夠被提取,并且頻率指示與之相關聯(lián)。在實施例中,三個最常發(fā)生的超文本集合(例如,作為其他網頁上的錨)被選擇(并且在這里可以被稱為“前三位錨”)。對于圖6中描繪的示例性網頁600,假定基于目標網頁600的頻率,前三位錨是“張柏芝NSN首頁”、“張柏芝”以及“女明星張柏芝”。如圖6所示,網頁600的標題是“張柏芝_明星主頁_娛樂_資訊與娛樂_MSN中國”。在斷字之后,前三位錨可以被表示成“張柏芝msn首頁”、“張柏芝”以及“女明星張柏芝”。類似地,斷字的標題是“張柏芝明星主頁娛樂資訊與娛樂 msn 中國”。為了本示例的目的,假設對應于這些字的中文-編碼語言(在這種情況中,利用拼音和英文表示來表征的ASCII)映射表類似于表1。表1.字的拼音和英文映射
中文字拼音英文張柏芝zhangbozhiCecilia首頁shouyehomepage女ηνfemale明星mingxingstar主頁zhuyehomepage娛樂yuleentertainment資訊zixunnews與yuand
權利要求
1.一種或多種計算機可讀媒體,其中在所述計算機可讀媒體上已包括有計算機可執(zhí)行指令,所述計算機可執(zhí)行指令當由與搜索服務相關聯(lián)的計算設備中的處理器執(zhí)行時使得所述計算設備執(zhí)行利用統(tǒng)一資源定位符(URL) /非編碼字符(NEC)字對來增強網頁索引的方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序,所述方法包括接收(1010)與網頁相對應的統(tǒng)一資源定位符(URL),其中所述URL包括編碼字符的第一字符串;將編碼字符的第一字符串變換(1020)成一個或多個NEC字,其中所述變換包括基于來自所述網頁的內容來推斷出變換;以及將NEC字的集合包括(1030)在網頁索引中。
2.權利要求1的媒體,其中所述編碼字符的第一字符串包括一個或多個英文字符。
3.權利要求1的媒體,其中所述編碼字符的第一字符串包括中文字的一個或多個拼音表不。
4.權利要求1的媒體,其中將編碼字符的第一字符串變換成一個或多個NEC字包括利用一對或多對URL子串和相應NEC字來表示所述編碼字符的第一字符串,其中所述表示包括參考來自所述網頁的多個元素;將所述URL字符串轉換成NEC字的序列,其中所述轉換部分地基于所述多個元素;參考映射表,所述映射表包括多個NEC字符與相應編碼字符之間的映射;借助于所述映射表,標識所述元素的多個可能的編碼字符表示;以及選擇所述元素的多個可能的編碼字符表示之一。
5.權利要求1的媒體,其中所述NEC字包括中文字、日文字或韓文字。
6.權利要求1的媒體,其中將NEC字的集合包括在網頁索引中包括在生成所述網頁索引時,將NEC字的集合并入所述網頁索引中。
7.權利要求1的媒體,其中將NEC字的集合包括在網頁索引中包括將NEC字的集合并入現(xiàn)有網頁索引中。
8.一種或多種計算機可讀媒體,其中在所述計算機可讀媒體上已包括有計算機可執(zhí)行指令,所述計算機可執(zhí)行指令當由與搜索服務相關聯(lián)的計算設備中的處理器執(zhí)行時使得所述計算設備執(zhí)行利用統(tǒng)一資源定位符(URL) /非編碼字符(NEC)字對來增強網頁索引的方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序,所述方法包括創(chuàng)建(1110)包括NEC語言與編碼字符語言之間的映射的映射表;接收(1120)與網頁相對應的統(tǒng)一資源定位符(URL)字符串,其中所述URL字符串以編碼字符語言來表示;參考(1140)來自所述網頁的多個元素;將所述URL字符串轉換(1020)成NEC字的序列,其中所述轉換部分地基于所述多個元素;以及構建(1030)網頁索引,所述網頁索引包括NEC字的集合。
9.權利要求8的設備,其中所述多個元素包括錨、標題和層次結構中的字符串。
10.權利要求9的設備,其中將所述URL字符串轉換成NEC字的序列包括參考映射表,所述映射表包括多個NEC字與相應編碼字符之間的映射;借助于所述映射表,標識所述元素的多個可能的編碼字符表示;以及選擇所述元素的多個可能的編碼字符表示之一,其中所述選擇包括確定所選擇的編碼字符表示匹配從所述URL字符串中提取的子串,以及其中所述提取的子串包括子域。
11.權利要求8的設備,其中所述NEC字包括中文字、日文字或韓文字。
12.—種或多種計算機可讀媒體,其中在所述計算機可讀媒體上已包括有計算機可執(zhí)行指令,所述計算機可執(zhí)行指令當由計算設備中的處理器執(zhí)行時使得所述計算設備執(zhí)行利用統(tǒng)一資源定位符(URL)/非編碼字符(NEC)字對來增強網頁索引的方法,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序,所述方法包括接收(1120)與所述網頁相對應的統(tǒng)一資源定位符(URL),所述URL包括編碼字符的第一字符串;從所述URL中提取(1130) URL子串,所述URL子串包括編碼字符的第一序列;接收(1140)來自所述網頁的元素,其中所述元素利用NEC語言來表示;參考(1150)映射表,所述映射表包括多個NEC字與相應編碼字符之間的映射;借助于所述映射表,標識(1150)所述元素的多個可能的編碼字符表示;確定(1160)所述元素的多個可能的編碼字符表示之一與所述URL子串相匹配;以及將所選擇的編碼字符表示和相應NEC字包括(1180)在網頁索引中。
13.權利要求12的媒體,其中第一元素是所述網頁的標題、錨或層次結構中的字符串。
14.權利要求12的媒體,其中標識所述元素的多個可能的編碼字符表示包括將NEC字的第一字符串分成NEC子串的序列;以及從所述映射表中檢索每一個NEC子串的多個可能的編碼字符表示。
15.權利要求14的媒體,進一步包括創(chuàng)建與所述元素相關聯(lián)的格,所述格包括多個節(jié)點,其中所述多個節(jié)點中的每一個節(jié)點對應于NEC子串的多個可能的編碼字符表示之一;定義候選字符串,其中所述候選字符串包括格路徑;確定所述候選字符串與所述URL子串相匹配;以及確定與所述候選字符串相關聯(lián)的路徑置信度分數(shù),其中所述選擇所述元素的多個可能的編碼字符表示之一至少部分地基于所述路徑置信度分數(shù)。
全文摘要
計算機可讀媒體、計算機系統(tǒng)以及計算設備有助于利用統(tǒng)一資源定位符(URL)/非編碼字符(NEC)字對來增強網頁索引,以便于響應于包括NEC字的搜索查詢而提供的搜索結果的相關性排序。URL從網頁中接收,并從URL中提取子串。附加的元素從網頁中接收、被斷字成NEC字序列并被轉換成編碼語言表示,其中編碼語言表示相對于URL子串進行匹配,以標識候選URL/NEC對,以便在相關性排序中使用。
文檔編號G06F17/30GK102385609SQ20111025229
公開日2012年3月21日 申請日期2011年8月30日 優(yōu)先權日2010年8月30日
發(fā)明者姚 Q., 宋睿華, 陳俊燕 申請人:微軟公司