国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種索引生成方法、數(shù)據(jù)檢索方法和裝置與流程

      文檔序號:12465702閱讀:218來源:國知局
      一種索引生成方法、數(shù)據(jù)檢索方法和裝置與流程

      本發(fā)明涉及計算機技術領域,特別涉及一種索引生成方法、數(shù)據(jù)檢索方法和裝置。



      背景技術:

      數(shù)據(jù)檢索一般是指根據(jù)外部輸入的檢索信息,檢索出與檢索信息相匹配的多種模態(tài)的數(shù)據(jù)。如根據(jù)外部輸入的一段文字或者一段視頻等,檢索出與該段文字或者視頻相關的文檔、視頻、音頻以及圖像等。隨著以多媒體數(shù)據(jù)(如圖像、視頻和音頻等)為代表的非結(jié)構(gòu)化數(shù)據(jù)已成為大數(shù)據(jù)的主體,基于海量多媒體數(shù)據(jù)的檢索備受關注。

      一般來說,在進行數(shù)據(jù)檢索之前,提取每一個樣本數(shù)據(jù)的樣本特征向量,并將每一個樣本特征向量存儲到數(shù)據(jù)庫。在數(shù)據(jù)檢索的過程中,提取出檢索信息的檢索特征向量,通過遍歷數(shù)據(jù)庫中所有的樣本特征向量,查找檢索特征向量對應的近鄰樣本特征向量。例如:數(shù)據(jù)庫中存儲有1012個樣本特征向量,對檢索信息A進行檢索時,需要遍歷這1012個樣本特征向量,才能查找出檢索信息A對應的近鄰樣本特征向量,然后,基于查找到的近鄰樣本特征向量,輸出檢索結(jié)果。

      對于現(xiàn)有的這種數(shù)據(jù)檢索方式來說,由于查找近鄰樣本特征向量的過程,會有大量無關的樣本特征向量干擾,造成檢索效率較低。



      技術實現(xiàn)要素:

      本發(fā)明實施例提供了一種索引生成方法、數(shù)據(jù)檢索方法和裝置,能夠有效地提高檢索效率。

      第一方面,一種索引生成方法,還包括:

      提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;

      為每一個所述樣本特征向量生成對應的近鄰圖索引;

      隨機生成至少一個映射向量;

      針對每一個所述映射向量,執(zhí)行:

      根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;

      將每一個所述樣本特征向量映射到所述映射向量;

      根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引。

      可選地,當所述映射向量的個數(shù)為至少兩個時,所述至少兩個映射向量滿足標準正態(tài)分布。

      可選地,所述為每一個所述區(qū)間分配對應的區(qū)間標識,包括:

      從所述映射向量的起始位置,為每一個所述區(qū)間進行順序編號;

      確定每一個所述區(qū)間的編號為對應的所述區(qū)間標識。

      可選地,所述為每一個所述樣本特征向量生成對應的近鄰圖索引,包括:

      針對每一個所述樣本特征向量,執(zhí)行:

      為所述樣本特征向量查找至少一個近鄰樣本特征向量;

      從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。

      可選地,上述方法進一步包括:構(gòu)建數(shù)據(jù)空間;

      所述將每一個所述樣本特征向量映射到所述映射向量,根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,包括:

      將每一個所述樣本數(shù)據(jù)元對應的樣本特征向量和至少一個映射向量加載到所述數(shù)據(jù)空間;

      將每一個所述樣本特征向量抽象為所述數(shù)據(jù)空間中的一個數(shù)據(jù)點,并將每一個所述映射向量抽象為所述數(shù)據(jù)空間中的一條有向線段;

      針對每一個所述樣本特征向量對應的數(shù)據(jù)點,執(zhí)行:

      將所述樣本特征向量對應的數(shù)據(jù)點投影到每一個所述映射向量對應的有向線段上,并確定所述數(shù)據(jù)點在每一個所述映射向量對應的有向線段的投影位置;

      將所述樣本特征向量對應的所述樣本標識分配給所述投影位置所屬區(qū)間。

      可選地,所述將每一個所述樣本特征向量映射到所述映射向量,根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,包括:

      基于所述映射向量,計算每一個所述樣本特征向量的哈希值;

      針對每一個所述樣本標識,執(zhí)行:

      當所述樣本標識對應的所述樣本特征向量的哈希值與當前區(qū)間標識一致時,將所述樣本標識分配給所述當前區(qū)間標識。

      可選地,所述基于所述映射向量,計算每一個所述樣本特征向量的哈希值,包括:

      根據(jù)下述計算公式(1),計算每一個所述樣本特征向量的哈希值;

      其中,h(x)表征哈希值;a表征所述映射向量;x表征樣本特征向量;w表征所述預設的區(qū)間寬度;b表征預設的偏移量且b∈[0,w)。

      第二方面,一種數(shù)據(jù)檢索方法,利用上述任一所述的方法為至少兩個樣本數(shù)據(jù)元生成至少一個近鄰圖索引和至少一個倒排文檔索引,還包括:

      當接收到檢索信息時,提取所述檢索信息包含的檢索特征向量;

      針對每一個所述倒排文檔索引,執(zhí)行:

      基于所述倒排文檔索引,計算所述檢索特征向量對應的哈希值;

      利用所述檢索特征向量對應的哈希值、所述倒排文檔索引以及所述至少一個近鄰圖索引,進行檢索。

      可選地,所述基于所述倒排文檔索引,計算所述檢索特征向量對應的哈希值,包括:

      根據(jù)下述計算公式(2),計算所述檢索特征向量對應的哈希值;

      其中,f(y)表征所述檢索特征向量對應的哈希值;βi表征倒排文檔索引i對應的映射向量;y表征所述檢索特征向量;w表征所述倒排文檔索引對應的區(qū)間寬度;δ表征為所述檢索特征向量預設的偏移量。

      可選地,上述方法進一步包括:為每一個所述樣本數(shù)據(jù)元設置碰撞計數(shù)器,并設置所述碰撞計數(shù)器初始值為零;

      在所述提取所述檢索信息包含的檢索特征向量之后,進一步包括:

      根據(jù)所述檢索特征向量,從所述至少兩個樣本數(shù)據(jù)元中,篩選出候選集,其中,所述候選集包括至少一個樣本數(shù)據(jù)元;

      所述利用所述檢索特征向量對應的哈希值、所述倒排文檔索引以及所述至少一個近鄰圖索引,包括:

      在所述倒排文檔索引中,篩選出與所述哈希值一致的目標區(qū)間標識;

      提取所述目標區(qū)間標識對應的至少一個目標樣本數(shù)據(jù)元;

      利用所述至少一個目標樣本數(shù)據(jù)元,更新所述候選集,并通過所述碰撞計數(shù)器為每一個所述目標樣本數(shù)據(jù)元進行計數(shù)加一;

      根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的近鄰圖索引以及更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元;

      計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;

      根據(jù)每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,輸出檢索結(jié)果。

      可選地,所述根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的近鄰圖索引以及更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元,進一步包括:

      針對更新后的候選集中每一個樣本數(shù)據(jù)元,執(zhí)行N1至N3:

      N1:利用近鄰圖索引,查找所述樣本數(shù)據(jù)元的至少一個初始近鄰樣本數(shù)據(jù)元;

      N2:按照計數(shù)的由大到小,從所述至少一個初始近鄰樣本數(shù)據(jù)元中,篩選出預設個數(shù)的初始近鄰樣本數(shù)據(jù)元;

      N3:將篩選出的預設個數(shù)的初始近鄰樣本數(shù)據(jù)元對應的計數(shù)累加到所述樣本數(shù)據(jù)元的計數(shù)上,統(tǒng)計所述樣本數(shù)據(jù)元的計數(shù)累加結(jié)果;

      按照所述更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)累加結(jié)果由大到小的順序,選定預設近鄰個數(shù)的樣本數(shù)據(jù)元為所述目標近鄰樣本數(shù)據(jù)元。

      可選地,所述根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元,包括:

      根據(jù)每一個樣本數(shù)據(jù)元的更新后的計數(shù)從大到小的順序,選取預設的近鄰個數(shù)的目標近鄰樣本數(shù)據(jù)元。

      可選地,所述計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,包括:

      根據(jù)下述計算公式(3),計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;

      其中,d表征所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;表征所述檢索信息對應的檢索特征向量中的第i個分向量;γi表征所述目標近鄰樣本數(shù)據(jù)元對應的樣本特征向量中的第i個分向量。

      第三方面,一種索引生成裝置,包括:

      樣本提取單元,用于提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;

      映射向量生成單元,用于隨機生成至少一個映射向量;

      索引生成單元,用于為所述樣本提取單元提取出的每一個所述樣本特征向量生成對應的近鄰圖索引,并針對所述映射向量生成單元生成的每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;將所述樣本提取單元提取出的每一個所述樣本特征向量映射到所述映射向量;根據(jù)映射的結(jié)果,將所述樣本提取單元提取出的每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引。

      第四方面,一種數(shù)據(jù)檢索裝置,包括:索引生成單元、檢索特征提取單元和數(shù)據(jù)檢索單元,其中,

      所述索引生成單元,用于利用上述任一所述的索引生成方法為至少兩個樣本數(shù)據(jù)元生成至少一個近鄰圖索引和至少一個倒排文檔索引;

      所述檢索特征提取單元,用于當接收到檢索信息時,提取所述檢索信息包含的檢索特征向量;

      所述數(shù)據(jù)檢索單元,用于針對所述索引生成單元生成的每一個所述倒排文檔索引,執(zhí)行:基于所述倒排文檔索引,計算所述檢索特征提取單元提取出的檢索特征向量對應的哈希值;根據(jù)所述檢索特征向量對應的哈希值和所述倒排文檔索引,進行檢索。

      可選地,所述數(shù)據(jù)檢索單元,用于:

      根據(jù)下述計算公式(2),計算所述檢索特征向量對應的哈希值;

      其中,f(y)表征所述檢索特征向量對應的哈希值;βi表征倒排文檔索引i對應的映射向量;y表征所述檢索特征向量;w表征所述倒排文檔索引對應的區(qū)間寬度;δ表征為所述檢索特征向量預設的偏移量。

      可選地,所述索引生成單元,進一步用于針對每一個所述樣本特征向量,執(zhí)行:為所述樣本特征向量查找至少一個近鄰樣本特征向量;從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。

      可選地,上述檢索裝置,進一步包括:設置單元和候選集篩選單元,其中,

      所述設置單元,用于為每一個所述樣本數(shù)據(jù)元設置碰撞計數(shù)器,并設置所述碰撞計數(shù)器初始值為零;

      所述候選集篩選單元,用于根據(jù)所述檢索特征提取單元提取出的檢索特征向量,從所述至少兩個樣本數(shù)據(jù)元中,篩選出候選集,其中,所述候選集包括至少一個樣本數(shù)據(jù)元;

      所述數(shù)據(jù)檢索單元,用于在所述倒排文檔索引中,篩選出與所述哈希值一致的目標區(qū)間標識;提取所述目標區(qū)間標識對應的至少一個目標樣本數(shù)據(jù)元;利用所述至少一個目標樣本數(shù)據(jù)元,更新所述候選集,并通過所述碰撞計數(shù)器為每一個所述目標樣本數(shù)據(jù)元進行計數(shù)加一;根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的近鄰圖索引以及更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元;計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;根據(jù)每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,輸出檢索結(jié)果。

      可選地,所述數(shù)據(jù)檢索單元,用于根據(jù)下述計算公式(3),計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;

      其中,d表征所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;表征所述檢索信息對應的檢索特征向量中的第i個分向量;γi表征所述目標近鄰樣本數(shù)據(jù)元對應的樣本特征向量中的第i個分向量。

      本發(fā)明實施例提供了一種索引生成方法、數(shù)據(jù)檢索方法和裝置,通過提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;為每一個所述樣本特征向量生成對應的近鄰圖索引,隨機生成至少一個映射向量;針對每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;將每一個所述樣本特征向量映射到所述映射向量;根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引,通過上述生成倒排文檔索引的過程,相當于利用倒排文檔索引對樣本數(shù)據(jù)元進行了分類,在進行數(shù)據(jù)檢索過程中,基于倒排文檔索引和近鄰圖索引進行數(shù)據(jù)檢索的過程,是利用倒排文檔索引給出的區(qū)間標識和近鄰圖索引直接獲得與檢索信息相關性比較大的樣本數(shù)據(jù)元,從而能夠有效地提高檢索效率。

      附圖說明

      為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

      圖1是本發(fā)明一個實施例提供的一種索引生成方法的流程圖;

      圖2是本發(fā)明一個實施例提供的一種映射到映射向量的示意圖;

      圖3是本發(fā)明另一個實施例提供的一種索引生成方法的流程圖;

      圖4是本發(fā)明一個實施例提供的一種映射向量劃分區(qū)間的示意圖;

      圖5是本發(fā)明一個實施例提供的一種倒排文檔索引的示意圖;

      圖6是本發(fā)明一個實施例提供的一種近鄰圖索引的示意圖;

      圖7是本發(fā)明一個實施例提供的一種數(shù)據(jù)檢索方法的流程圖;

      圖8是本發(fā)明另一個實施例提供的一種數(shù)據(jù)檢索方法的流程圖;

      圖9是本發(fā)明一個實施例提供的一種候選集合并索引集的結(jié)構(gòu)示意圖;

      圖10是本發(fā)明一個實施例提供的一種索引生成裝置的結(jié)構(gòu)示意圖;

      圖11是本發(fā)明一個實施例提供的一種數(shù)據(jù)檢索裝置的結(jié)構(gòu)示意圖。

      具體實施方式

      為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

      基本概念說明

      本發(fā)明提及的樣本數(shù)據(jù)元可以為數(shù)據(jù)庫存儲的單個數(shù)據(jù)元素如一個圖像、一段視頻、一段音頻以及一個詞組等。

      樣本特征向量是由表征樣本數(shù)據(jù)元特征的參數(shù)組成多維向量,而向量的維度一般與參數(shù)的個數(shù)相關,例如:對于一個圖像來說,其樣本特征向量由色彩、灰度、紋理、邊緣、梯度等參數(shù)組成,對于一個詞組來說,其樣本特征向量則可由詞組在文本中出現(xiàn)的頻次等表示。一般來說,樣本數(shù)據(jù)元與樣本特征向量具有關聯(lián)性,即通過樣本特征向量能夠直接找到對應的樣本數(shù)據(jù)元。

      本發(fā)明提及的映射向量的維度與樣本數(shù)據(jù)元的樣本特征向量的維度相同,一般來說,在隨機生成至少一個映射向量的過程中,可以使同一類型的樣本數(shù)據(jù)元可以對應同樣的映射向量,而不同類型的樣本數(shù)據(jù)元一般對應不同的映射向量。

      如圖1所示,本發(fā)明實施例提供了一種索引生成方法,該方法可以包括以下步驟:

      步驟101:提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;

      步驟102:為每一個所述樣本特征向量生成對應的近鄰圖索引;

      步驟103:隨機生成至少一個映射向量;

      步驟104:針對每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;

      步驟105:將每一個所述樣本特征向量映射到所述映射向量;

      步驟106:根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引。

      在圖1所示的實施例中,通過提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;為每一個所述樣本特征向量生成對應的近鄰圖索引,隨機生成至少一個映射向量;針對每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;將每一個所述樣本特征向量映射到所述映射向量;根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引,通過上述生成倒排文檔索引的過程,相當于利用倒排文檔索引對樣本數(shù)據(jù)元進行了分類,在進行數(shù)據(jù)檢索過程中,基于倒排文檔索引和近鄰圖索引進行數(shù)據(jù)檢索的過程,是利用倒排文檔索引和近鄰圖索引給出的區(qū)間標識直接獲得與檢索信息相關性比較大的樣本數(shù)據(jù)元,從而能夠有效地提高檢索效率。

      上述步驟102生成近鄰圖索引的過程與步驟103至106生成倒排文檔索引的過程沒有嚴格的先后順序。

      在本發(fā)明一個實施例中,為了能夠使區(qū)間標識簡單易得,同時方便后續(xù)在對倒排文檔索引檢索,上述步驟103中為每一個所述區(qū)間分配對應的區(qū)間標識的一種實現(xiàn)方式可以包括:從所述映射向量的起始位置,為每一個所述區(qū)間進行順序編號;確定每一個所述區(qū)間的編號為對應的所述區(qū)間標識。由于映射向量具有方向性,為了在后續(xù)檢索過程中,使區(qū)間標識與檢索過程計算出的哈希值一致,本發(fā)明選擇以映射向量的起始位置,從0開始順序為每個區(qū)間編號,即每一個映射向量均包含有區(qū)間標識分別為0,1,2,…,i,…等的區(qū)間,由于為每一個映射向量預設的區(qū)間寬度一致,那么,不管是同一向量中的各個區(qū)間,還是不同向量間的各個區(qū)間,其區(qū)間對應的寬度一致。而預設的區(qū)間寬度可以是用戶根據(jù)實際需求進行設定。

      在本發(fā)明一個實施例中,為了能夠滿足在檢索的過程中,對每一個樣本數(shù)據(jù)元的近鄰樣本數(shù)據(jù)元的快速定位,從而進一步提高檢索的效率和檢索的準確性,在上述步驟102的一種實施方式可包括,針對每一個所述樣本特征向量,執(zhí)行:為所述樣本特征向量查找至少一個近鄰樣本特征向量;從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。即在索引生成過程中,除了為樣本數(shù)據(jù)元生成倒排文檔索引,還基于每一個樣本數(shù)據(jù)元的樣本特征向量形成近鄰圖索引,由于該近鄰圖索引通過有向邊將樣本特征向量與近鄰樣本特征向量連接,那么,沿著該近鄰圖索引的有向邊可以快速的定位出每一個樣本數(shù)據(jù)元對應的近鄰樣本數(shù)據(jù)元。

      在本發(fā)明一個實施例中,為了使映射向量分布更加合理,當上述步驟103中隨機生成的映射向量個數(shù)為至少兩個時,該至少兩個映射向量滿足標準正態(tài)分布。

      在本發(fā)明一個實施例中,為了能夠?qū)颖緮?shù)據(jù)元與每一個映射向量構(gòu)建關聯(lián)關系,同時,使不同的樣本數(shù)據(jù)元能夠在同一個映射向量下按照區(qū)間完成分類,上述步驟105和106的具體實施方式可以分為兩種:

      方式一:構(gòu)建數(shù)據(jù)空間,該數(shù)據(jù)空間可以通過構(gòu)建二維或者多維坐標系實現(xiàn),將各個樣本數(shù)據(jù)元對應的樣本特征向量和至少一個映射向量加載到數(shù)據(jù)空間,那么一個樣本特征向量則抽象為數(shù)據(jù)空間中的一個數(shù)據(jù)點,而映射向量則為空間中的一條有向線段,針對每一個所述樣本特征向量對應的數(shù)據(jù)點,執(zhí)行:將所述樣本特征向量對應的數(shù)據(jù)點投影到每一個所述映射向量對應的有向線段上,并確定所述數(shù)據(jù)點在每一個所述映射向量對應的有向線段的投影位置;可以通過將數(shù)據(jù)點向有向線段作垂線,相交的點落在映射向量中的一個區(qū)間內(nèi),則將該數(shù)據(jù)點(樣本特征向量)分配給該區(qū)間,如圖2所示,映射向量P包含有區(qū)間標識為0,1,…,i,…的各個區(qū)間,通過空間中的數(shù)據(jù)點1,2,3向映射向量P做垂線,其中,數(shù)據(jù)點1落在區(qū)間0內(nèi),則將數(shù)據(jù)點1對應的樣本數(shù)據(jù)元分配給區(qū)間0;數(shù)據(jù)點2落在區(qū)間1內(nèi),則將數(shù)據(jù)點2對應的樣本數(shù)據(jù)元分配給區(qū)間1;數(shù)據(jù)點3落在區(qū)間i內(nèi),則將數(shù)據(jù)點3對應的樣本數(shù)據(jù)元分配給區(qū)間i;該分配的過程主要是將樣本數(shù)據(jù)元對應的樣本標識存儲到對應的區(qū)間桶內(nèi),這樣使倒排文檔索引占用存儲空間較小,在檢索過程中,方便倒排文檔索引的加載。

      方式二:基于所述映射向量,計算每一個所述樣本特征向量的哈希值;針對每一個所述樣本標識,執(zhí)行:當所述樣本標識對應的所述樣本特征向量的哈希值與當前區(qū)間標識一致時,將所述樣本標識分配給所述當前區(qū)間標識。例如:樣本特征向量1計算得到的哈希值為0,則直接將該樣本特征向量1對應的樣本標識存儲到區(qū)間標識為0的區(qū)間內(nèi)。

      另外,不管是方式一,還是方式二,對于同一個映射向量來說,一個樣本標識只存在于一個區(qū)間內(nèi);而對于不同的映射向量來說,一個樣本標識對應的區(qū)間標識可以不同,例如:對于映射向量P來說,樣本標識1存在于區(qū)間標識為0的區(qū)間;而對于映射向量Q來說,樣本標識1存在于區(qū)間標識為1的區(qū)間。

      通過上述過程可知,一個映射向量對應一個倒排文檔索引,當步驟103隨機生成多個映射向量,則可相應的生成多個倒排文檔索引,以從不同的角度對樣本數(shù)據(jù)元進行分類,從而在檢索的過程中,可以從不同的角度進行檢索,保證檢索的完整性。

      對于上述方式二來說,所述基于所述映射向量,計算每一個所述樣本特征向量的哈希值的具體實施方式,可以包括:根據(jù)下述計算公式(1),計算每一個所述樣本特征向量的哈希值;

      其中,h(x)表征哈希值;a表征所述映射向量;x表征樣本特征向量;w表征所述預設的區(qū)間寬度;b表征預設的偏移量且b∈[0,w)。

      在本發(fā)明一個實施例中,上述生成索引的過程可以是針對于數(shù)據(jù)庫來完成的。

      下面以利用計算的哈希值,為一個圖像數(shù)據(jù)庫生成倒排文檔索引,同時為圖像數(shù)據(jù)庫生成近鄰圖索引為例,進一步說明索引生成方法,該方法可以包括如下步驟:

      步驟301:從圖像數(shù)據(jù)庫中提取各個圖像樣本元的樣本特征向量和樣本標識;

      該步驟提取的圖像樣本元的樣本特征向量可以為色彩、灰度、邊緣、紋理以及梯度等參數(shù)組成的多維向量矩陣,該樣本標識可以是圖像樣本元在圖像數(shù)據(jù)庫中存儲的順序編碼。

      步驟302:將各個圖像樣本元的樣本特征向量和樣本標識組合成原始數(shù)據(jù)集;

      該步驟的組成的原始數(shù)據(jù)集可以是想對于圖像數(shù)據(jù)庫來說的,其包含的內(nèi)容如下所示:

      {(樣本標識1),(樣本標識2),…,(樣本標識i),…}。

      在后續(xù)步驟中可以直接針對該原始數(shù)據(jù)集完成索引生成。

      步驟303:隨機生成n個映射向量;

      該步驟中的n不為0,另外,當n不為1時,該步驟隨機生成的n個映射向量滿足標準正態(tài)分布。

      該步驟隨機生成的映射向量的維度與上述步驟提取的樣本特征向量維度相同。如果將上述步驟提取的各個樣本特征向量看作空間中的各個數(shù)據(jù)點,則該步驟生成的映射向量則為空間中的有向線段。上述圖2已經(jīng)進行了相應的描述,在此不再贅述。

      步驟304:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間;

      步驟305:從所述映射向量的起始位置,為每一個所述區(qū)間進行順序編號,確定每一個所述區(qū)間的編號為對應的所述區(qū)間標識;

      步驟304和步驟305為一個映射向量a劃分出的區(qū)間如圖4所示,從圖中可以看出每一個區(qū)間的寬度一致均為w,區(qū)間標識則是從所述映射向量的起始位置,為每一個所述區(qū)間進行順序編號,該編號從0開始。對于步驟302生成的n個映射向量來說,每一個映射向量均包括區(qū)間標識為0,1,2,…,i,…的區(qū)間。

      步驟306:針對每一個映射向量,執(zhí)行:基于所述映射向量,計算每一個所述樣本特征向量的哈希值;

      該步驟的計算哈希值可以通過下述計算公式(1)得到:

      其中,h(x)表征哈希值;a表征所述映射向量;x表征樣本特征向量;w表征所述預設的區(qū)間寬度;b表征預設的偏移量且b∈[0,w)。

      例如:當a表征的是映射向量P時,則該步驟計算得到的各個樣本特征向量哈希值是針對映射向量P來說的;當a表征的是映射向量Q時,則該步驟計算得到的各個樣本特征向量哈希值是針對映射向量Q來說的。

      步驟307:針對每一個所述樣本標識,執(zhí)行:當所述樣本標識對應的所述樣本特征向量的哈希值與當前區(qū)間標識一致時,將所述樣本標識分配給所述當前區(qū)間標識;

      例如:基于映射向量P,計算各個樣本特征向量的哈希值,其中,計算出的樣本特征向量1的哈希值為0,則將樣本特征向量1對應的樣本標識1分配給映射向量P中區(qū)間標識0的區(qū)間,通過計算每一個樣本特征向量的哈希值,則可以使每一個樣本標識分配給對應的區(qū)間標識,則可為映射向量P生成對應的倒排文檔索引如圖5所示。從圖5中可以看出,一個倒排文檔索引由一個映射向量對應的多個具有區(qū)間標識的區(qū)間以及存儲于區(qū)間桶中的樣本標識所組成,該倒排文檔索引結(jié)構(gòu)比較簡單。

      步驟308:為每一個映射向量生成對應的倒排文檔索引;

      步驟302生成的n個映射向量則對應n個倒排文檔索引,而每個映射向量的方向有所差異,使得,同一個樣本特征向量,相對于不同的映射向量,其哈希值可能不同,即同一個樣本標識,在不同的映射向量中可以在不同的區(qū)間標識下。通過為每一個映射向量生成對應的倒排文檔索引,使在后續(xù)檢索過程中,能夠從不同的角度進行檢索,使檢索更加完整。

      步驟309:針對每一個所述樣本特征向量,執(zhí)行:為所述樣本特征向量查找至少一個近鄰樣本特征向量;

      步驟310:從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。

      步驟309和步驟310為每一個樣本特征向量形成對應的近鄰圖索引,以方便后續(xù)檢索過程中能夠直接通過該近鄰圖索引檢索到近鄰樣本數(shù)據(jù)元。該步驟309和步驟310形成的近鄰圖索引如圖6所示,從圖中可以看出,樣本特征向量1通過有向邊指向近鄰樣本特征向量分別為10,20,30,40,50等,那么,在后續(xù)檢索的過程中,可以通過該有向邊直接檢索到樣本特征向量1的近鄰樣本特征向量分別為10,20,30,40,50等。

      除了上述實施例提及的圖像數(shù)據(jù)元之外,本發(fā)明實施例提供的索引生成方法還可以為音頻數(shù)據(jù)元、視頻數(shù)據(jù)元等多媒體數(shù)據(jù)以及文檔數(shù)據(jù)元單獨生成對應的索引,另外,還可以為多種模態(tài)的數(shù)據(jù)生成混用的索引。也就是說,本發(fā)明實施例提供的索引生成方法可以為具有音頻數(shù)據(jù)的數(shù)據(jù)庫生成索引,也可以為具有視頻數(shù)據(jù)的數(shù)據(jù)庫生成索引,還可以為文檔數(shù)據(jù)的數(shù)據(jù)庫生成對應的索引。還可以為即具有音頻數(shù)據(jù)、視頻數(shù)據(jù)等多媒體數(shù)據(jù),又具有文檔數(shù)據(jù)的數(shù)據(jù)庫生成對應的索引。本發(fā)明實施例生成的索引可通過索引標識以及近鄰圖索引的有向邊進行檢索,而無須直接對比數(shù)據(jù)間的特征向量,則不僅可以實現(xiàn)同一模態(tài)數(shù)據(jù)檢索,還可實現(xiàn)跨模態(tài)數(shù)據(jù)檢索。

      上述步驟303至步驟308是倒排文檔索引生成過程,步驟309和步驟310為近鄰圖索引形成過程,該兩個過程并沒有嚴格的先后順序,即步驟309和步驟310可以在步驟303至步驟308中任意步驟之前或之后完成。

      如圖7所示,本發(fā)明實施例提供一種數(shù)據(jù)檢索方法,該方法可以包括如下步驟:

      步驟701:為至少兩個樣本數(shù)據(jù)元生成至少一個近鄰圖索引和至少一個倒排文檔索引;

      步驟702:當接收到檢索信息時,提取所述檢索信息包含的檢索特征向量;

      步驟703:針對每一個所述倒排文檔索引,執(zhí)行:基于所述倒排文檔索引,計算所述檢索特征向量對應的哈希值;利用所述檢索特征向量對應的哈希值、所述倒排文檔索引以及所述至少一個近鄰圖索引,進行檢索。

      上述步驟701可以通過上述實施例給出的索引生成方法實現(xiàn)。

      在本發(fā)明一個實施例中,為了使檢索過程比較準確,上述步驟703中計算所述檢索特征向量對應的哈希值的具體實施方式可以包括:根據(jù)下述計算公式(2),計算所述檢索特征向量對應的哈希值;

      其中,f(y)表征所述檢索特征向量對應的哈希值;βi表征倒排文檔索引i對應的映射向量;y表征所述檢索特征向量;w表征所述倒排文檔索引對應的區(qū)間寬度;δ表征為所述檢索特征向量預設的偏移量。該計算公式(2)中各個參數(shù)可以與上述索引生成過程中計算公式(1)中的各個參數(shù)一致,使索引生成與檢索過程一致,從而使檢索更加準確。

      在本發(fā)明一個實施例中,為了能夠使檢索結(jié)果更加準確,上述檢索方法可進一步包括:為每一個所述樣本數(shù)據(jù)元設置碰撞計數(shù)器,并設置所述碰撞計數(shù)器初始值為零;在步驟702之后可進一步包括:根據(jù)所述檢索特征向量,從所述至少兩個樣本數(shù)據(jù)元中,篩選出候選集,其中,所述候選集包括至少一個樣本數(shù)據(jù)元;步驟703的一種可選的實施方式可以包括:在所述倒排文檔索引中,篩選出與所述哈希值一致的目標區(qū)間標識;提取所述目標區(qū)間標識對應的至少一個目標樣本數(shù)據(jù)元;利用所述至少一個目標樣本數(shù)據(jù)元,更新所述候選集,并通過所述碰撞計數(shù)器為每一個所述目標樣本數(shù)據(jù)元進行計數(shù)加一;根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的近鄰圖索引以及更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元;計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;根據(jù)每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,輸出檢索結(jié)果。

      例如:為檢索信息S檢索相關數(shù)據(jù),則:

      首選,為檢索信息S初步篩選出候選集C,該候選集是為檢索信息初步篩選的一些數(shù)據(jù)的樣本特征向量和樣本標識,以初步縮小檢索范圍;

      其次,針對每一個映射向量,通過檢索信息S的檢索特征向量計算哈希值如計算出檢索信息S相對于映射向量P的哈希值為1,則在映射向量對應的倒排文檔索引中查找區(qū)間標識為1的區(qū)間內(nèi)存儲的樣本標識,由于樣本標識與樣本數(shù)據(jù)元具有直接的對應關系,則查找到區(qū)間標識為1的區(qū)間內(nèi)存儲的樣本標識相當于查找到樣本數(shù)據(jù)元例如區(qū)間標識1下的樣本數(shù)據(jù)元組合成為索引集Ci

      再次,針對每一個映射向量對應的索引集,執(zhí)行:將候選集C與索引集Ci合并即C∪Ci,并將索引集Ci中的每一個樣本數(shù)據(jù)元對應的計數(shù)器進行加1。由于對于每一個映射向量對應一個索引集Ci,上述候選集C與索引集Ci合并的次數(shù)與映射向量個數(shù)相同,每進行一次合并相應的樣本數(shù)據(jù)元對應的計數(shù)器都會進行計數(shù)加1。例如:2個映射向量分別對應的索引集為C1和C2,其中,C1中包含的樣本數(shù)據(jù)元為{Y1,Y2,Y3,Y4},C2中包含的樣本數(shù)據(jù)元為{Y1,Y2,Y4,Y6},則在將C1與C合并成為D時,為Y1,Y2,Y3,Y4分別進行計數(shù)加1,在將C2與D合并時,再次為Y1,Y2,Y4,Y6分別進行計數(shù)加1;則經(jīng)過上述C1與C合并成為D和將C2與D合并之后,樣本數(shù)據(jù)元Y1,Y2和Y4計數(shù)結(jié)果為2,Y3和Y6的計數(shù)結(jié)果為1。

      在本發(fā)明一個實施例中,上述步驟703的一種實施方式可包括:

      針對更新后的候選集中每一個樣本數(shù)據(jù)元,執(zhí)行N1至N3:

      N1:利用近鄰圖索引,查找所述樣本數(shù)據(jù)元的至少一個初始近鄰樣本數(shù)據(jù)元;

      N2:按照計數(shù)的由大到小,從所述至少一個初始近鄰樣本數(shù)據(jù)元中,篩選出預設個數(shù)的初始近鄰樣本數(shù)據(jù)元;

      N3:將篩選出的預設個數(shù)的初始近鄰樣本數(shù)據(jù)元對應的計數(shù)累加到所述樣本數(shù)據(jù)元的計數(shù)上,統(tǒng)計所述樣本數(shù)據(jù)元的計數(shù)累加結(jié)果;

      按照所述更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)累加結(jié)果由大到小的順序,選定預設近鄰個數(shù)的樣本數(shù)據(jù)元為所述目標近鄰樣本數(shù)據(jù)元。

      例如:更新后的候選集中包含有樣本數(shù)據(jù)元{Y1,Y2,Y3,Y4,Y6,Y8,Y9,Y10},其中,樣本數(shù)據(jù)元Y1,Y2及Y4的計數(shù)為2,樣本數(shù)據(jù)元Y3,Y6,Y8和Y9計數(shù)為1,Y10計數(shù)為0;通過上述索引生成方法生成的近鄰圖索引,查找到樣本數(shù)據(jù)元Y1的近鄰樣本數(shù)據(jù)元為Y2,Y3和Y4,則將Y2,Y3和Y4對應的計數(shù)累加到Y(jié)1的計數(shù)上即2+2+1+2=7,然后依次將Y2,Y3,Y4,Y6,Y8,Y9及Y10各自對應的近鄰樣本數(shù)據(jù)元的計數(shù)累加到自身計數(shù)上,則計數(shù)結(jié)果為經(jīng)過近鄰樣本數(shù)據(jù)元計數(shù)累加后的結(jié)果,從而進一步增大更新后的候選集中各個樣本數(shù)據(jù)元計數(shù)結(jié)果的差異。

      則根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元的一種實施方式可以包括:按照計數(shù)結(jié)果由大到小的順序,選擇計數(shù)最大的G個樣本數(shù)據(jù)元為目標近鄰樣本數(shù)據(jù)元,該G可以由用戶設定。

      在本發(fā)明一個實施例中,上述計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離的過程可以通過下述計算公式(3)實現(xiàn):

      其中,d表征所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;表征所述檢索信息對應的檢索特征向量中的第i個分向量;γi表征所述目標近鄰樣本數(shù)據(jù)元對應的樣本特征向量中的第i個分向量。

      在本發(fā)明一個實施例中,根據(jù)每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,輸出檢索結(jié)果的一種實現(xiàn)方式可以為:選取歐式距離最小的k個樣本數(shù)據(jù)元為最終的輸出結(jié)果,該k可以是用戶設定值。

      下面以為檢索信息A檢索相關的圖像為例,進一步說明數(shù)據(jù)檢索方法,該方法可以不包括如下步驟:

      步驟801:為至少兩個樣本數(shù)據(jù)元生成至少一個倒排文檔索引和近鄰圖索引;

      該步驟生成倒排文檔索引和近鄰圖索引的過程可以為預先完成的,其具體生成過程可以通過上述實施例提供的索引生成方法實現(xiàn)。

      步驟802:確定檢索信息A檢索的數(shù)據(jù)庫,并為數(shù)據(jù)庫中的每一個樣本數(shù)據(jù)元設置碰撞計數(shù)器,并設置所述碰撞計數(shù)器初始值為零;

      例如:在該步驟中,為檢索信息A確定出要從數(shù)據(jù)庫1和數(shù)據(jù)庫2中檢索相關的圖像,則為數(shù)據(jù)庫1和數(shù)據(jù)庫2中的各個數(shù)據(jù)元設置碰撞計數(shù)器,同時初始化計數(shù)器初始值為零。

      步驟803:當接收到檢索信息A時,提取所述檢索信息包含的檢索特征向量f;

      步驟804:根據(jù)檢索特征向量f,從所述至少兩個樣本數(shù)據(jù)元中,篩選出候選集,其中,所述候選集包括至少一個樣本數(shù)據(jù)元;

      該過程主要是進行一個初步的篩選,即為檢索信息A在數(shù)據(jù)庫1和數(shù)據(jù)庫2中初步篩選出比較大范圍的相關的圖像,該篩選出來的圖像組成一個候選集如圖9所示,候選集C中有從數(shù)據(jù)庫1和數(shù)據(jù)庫2中初步篩選出比較大范圍的相關的圖像樣本數(shù)據(jù)元即圖9中位于候選集C中的點。

      步驟805:針對每一個所述倒排文檔索引,執(zhí)行:基于所述倒排文檔索引,計算所述檢索特征向量對應的哈希值;

      該步驟的計算過程可以通過計算公式(2)實現(xiàn):

      其中,f(y)表征所述檢索特征向量對應的哈希值;βi表征倒排文檔索引i對應的映射向量;y表征所述檢索特征向量;w表征所述倒排文檔索引對應的區(qū)間寬度;δ表征為所述檢索特征向量預設的偏移量。

      在上述實施例中已經(jīng)提及一個數(shù)據(jù)庫可以對應多個倒排文檔索引,該步驟針對每一個倒排文檔索引計算哈希值,可以從不同角度完成檢索,從而保證檢索的完整性。

      步驟806:在倒排文檔索引中,篩選出與所述哈希值一致的目標區(qū)間標識;

      步驟807:提取所述目標區(qū)間標識對應的至少一個目標樣本數(shù)據(jù)元;

      由于上述索引生成過程已經(jīng)提及在每一個區(qū)間標識對應的區(qū)間存儲有樣本標識,而通過樣本標識可以直接查找到數(shù)據(jù)庫中對應的樣本數(shù)據(jù)元,例如:通過步驟806和步驟807,在倒排文檔索引a中篩選出與哈希值1一致的區(qū)間標識1,而在該區(qū)間標識1下存儲的所有樣本標識對應的樣本數(shù)據(jù)元則為步驟807提及的目標樣本數(shù)據(jù)元。

      步驟808:利用至少一個目標樣本數(shù)據(jù)元,更新候選集,并通過碰撞計數(shù)器為每一個目標樣本數(shù)據(jù)元進行計數(shù)加一;

      該步驟的更新過程為每一個倒排文檔索引對應的至少一個目標樣本數(shù)據(jù)元順序并入到候選集中,如圖9所示,通過倒排文檔索引a選出的至少一個目標樣本數(shù)據(jù)元可以組合成索引集C1,該更新候選集的過程則是新的候選集D=C∪C1的過程,則對C1中的樣本數(shù)據(jù)元進行計數(shù)加1;然后,倒排文檔索引h選出的至少一個目標樣本數(shù)據(jù)元可以組合成索引集C2,該更新候選集的過程則是新的候選集F=D∪C2的過程,則對C2中的樣本數(shù)據(jù)元進行計數(shù)加1;依此類推,直至所有的倒排文檔索引對應的至少一個目標樣本數(shù)據(jù)元均順序并入到候選集中。當一個樣本數(shù)據(jù)元出現(xiàn)在多個索引集中時,該樣本數(shù)據(jù)元的計數(shù)則較大。

      步驟809:通過近鄰圖索引,查找更新后的候選集中每一個樣本數(shù)據(jù)元的g個近鄰樣本數(shù)據(jù)元;

      該步驟主要是通過近鄰圖索引中的有向邊直接搜索到近鄰樣本數(shù)據(jù)元,而該g個可以是用戶設定的。

      步驟810:將g個近鄰樣本數(shù)據(jù)元的計數(shù)累加到對應的樣本數(shù)據(jù)元的計數(shù)上;

      例如:通過上述實施例提及的索引生成方法生成的近鄰圖索引,查找到樣本數(shù)據(jù)元Y1的近鄰樣本數(shù)據(jù)元為Y2,Y3和Y4,其中,Y2,Y3和Y4的計數(shù)分別為2,1,2,則將Y2,Y3和Y4對應的計數(shù)累加到Y(jié)1的計數(shù)上即2+2+1+2=7。

      步驟811:按照累加計數(shù)由大到小的順序,選取N個目標近鄰樣本數(shù)據(jù)元;

      步驟812:計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;

      該步驟的計算可以通過下述計算公式(3)實現(xiàn):

      其中,d表征所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;表征所述檢索信息對應的檢索特征向量中的第i個分向量;γi表征所述目標近鄰樣本數(shù)據(jù)元對應的樣本特征向量中的第i個分向量。

      步驟813:選取歐式距離最小的k個目標近鄰樣本數(shù)據(jù)元為檢索信息A的檢索結(jié)果,并輸出。

      該步驟的k也可以為用戶根據(jù)需求設定。

      除了上述實施例提及的檢索圖像之外,本發(fā)明實施例提供的檢索方法還可以用來檢索音頻、視頻等多媒體數(shù)據(jù)以及文本文檔數(shù)據(jù)等,另外,檢索的過程還可以進行跨模態(tài)檢索。

      另外,在進行數(shù)據(jù)檢索過程中,上述索引生成過程可以是預先完成的,那么,在每次檢索時,直接查詢索引即可即直接執(zhí)行步驟702或步驟802;還可以是每次進行數(shù)據(jù)檢索時生成,即在每次數(shù)據(jù)檢索時,均需要先執(zhí)行上述步驟101至步驟105或者步驟301至步驟310,然后執(zhí)行步驟701至步驟703或者執(zhí)行步驟801至步驟813。

      如圖10所示,本發(fā)明實施例提供一種索引生成裝置,包括:

      樣本提取單元1001,用于提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;

      映射向量生成單元1002,用于隨機生成至少一個映射向量;

      索引生成單元1003,用于為所述樣本提取單元提取出的每一個所述樣本特征向量生成對應的近鄰圖索引,并針對所述映射向量生成單元生成的每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;將所述樣本提取單元提取出的每一個所述樣本特征向量映射到所述映射向量;根據(jù)映射的結(jié)果,將所述樣本提取單元提取出的每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引。

      在本發(fā)明另一實施例中,索引生成單元1003,進一步用于針對樣本提取單元1001提取出的每一個所述樣本特征向量,執(zhí)行:為所述樣本特征向量查找至少一個近鄰樣本特征向量;從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。

      如圖11所示,本發(fā)明實施例提供一種數(shù)據(jù)檢索裝置,包括:索引生成單元1101、檢索特征提取單元1102和數(shù)據(jù)檢索單元1103,其中,

      所述索引生成單元1101,用于利用上述任一所述的索引生成方法為至少兩個樣本數(shù)據(jù)元生成至少一個近鄰圖索引和至少一個倒排文檔索引;

      所述檢索特征提取單元1102,用于當接收到檢索信息時,提取所述檢索信息包含的檢索特征向量;

      所述數(shù)據(jù)檢索單元1103,用于針對所述索引生成單元1101生成的每一個所述倒排文檔索引,執(zhí)行:基于所述倒排文檔索引,計算所述檢索特征提取單元1102提取出的檢索特征向量對應的哈希值;根據(jù)所述檢索特征向量對應的哈希值和所述倒排文檔索引,進行檢索。

      在本發(fā)明另一實施例中,所述數(shù)據(jù)檢索單元,用于根據(jù)下述計算公式(2),計算所述檢索特征向量對應的哈希值;

      其中,f(y)表征所述檢索特征向量對應的哈希值;βi表征倒排文檔索引i對應的映射向量;y表征所述檢索特征向量;w表征所述倒排文檔索引對應的區(qū)間寬度;δ表征為所述檢索特征向量預設的偏移量。

      在本發(fā)明又一實施例中,所述索引生成單元,進一步用于針對每一個所述樣本特征向量,執(zhí)行:為所述樣本特征向量查找至少一個近鄰樣本特征向量;從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引。

      在本發(fā)明又一實施例中,上述檢索裝置,進一步包括:設置單元和候選集篩選單元(圖中未示出),其中,

      所述設置單元,用于為每一個所述樣本數(shù)據(jù)元設置碰撞計數(shù)器,并設置所述碰撞計數(shù)器初始值為零;

      所述候選集篩選單元,用于根據(jù)所述檢索特征提取單元提取出的檢索特征向量,從所述至少兩個樣本數(shù)據(jù)元中,篩選出候選集,其中,所述候選集包括至少一個樣本數(shù)據(jù)元;

      所述數(shù)據(jù)檢索單元1003,用于在所述倒排文檔索引中,篩選出與所述哈希值一致的目標區(qū)間標識;提取所述目標區(qū)間標識對應的至少一個目標樣本數(shù)據(jù)元;利用所述至少一個目標樣本數(shù)據(jù)元,更新所述候選集,并通過所述碰撞計數(shù)器為每一個所述目標樣本數(shù)據(jù)元進行計數(shù)加一;根據(jù)更新后的候選集中每一個樣本數(shù)據(jù)元的近鄰圖索引以及更新后的候選集中每一個樣本數(shù)據(jù)元的計數(shù)結(jié)果,確定至少一個目標近鄰樣本數(shù)據(jù)元;計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;根據(jù)每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離,輸出檢索結(jié)果。

      在本發(fā)明又一實施例中,所述數(shù)據(jù)檢索單元,用于根據(jù)下述計算公式(3),計算每一個所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;

      其中,d表征所述目標近鄰樣本數(shù)據(jù)元與所述檢索信息的歐式距離;表征所述檢索信息對應的檢索特征向量中的第i個分向量;γi表征所述目標近鄰樣本數(shù)據(jù)元對應的樣本特征向量中的第i個分向量。

      上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。

      本發(fā)明還提供了一種計算機存儲介質(zhì),存儲用于使一機器執(zhí)行如本文所述的程序代碼的審核方法的指令。具體地,可以提供配有存儲介質(zhì)的系統(tǒng)或者裝置,在該存儲介質(zhì)上存儲著實現(xiàn)上述實施例中任一實施例的功能的軟件程序代碼,且使該系統(tǒng)或者裝置的計算機(或CPU或MPU)讀出并執(zhí)行存儲在存儲介質(zhì)中的程序代碼。

      在這種情況下,從存儲介質(zhì)讀取的程序代碼本身可實現(xiàn)上述實施例中任何一項實施例的功能,因此程序代碼和存儲程序代碼的存儲介質(zhì)構(gòu)成了本發(fā)明的一部分。

      用于提供程序代碼的存儲介質(zhì)實施例包括軟盤、硬盤、磁光盤、光盤(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁帶、非易失性存儲卡和ROM??蛇x擇地,可以由通信網(wǎng)絡從服務器計算機上下載程序代碼。

      此外,應該清楚的是,不僅可以通過執(zhí)行計算機所讀出的程序代碼,而且可以通過基于程序代碼的指令使計算機上操作的操作系統(tǒng)等來完成部分或者全部的實際操作,從而實現(xiàn)上述實施例中任意一項實施例的功能。

      此外,可以理解的是,將由存儲介質(zhì)讀出的程序代碼寫到插入計算機內(nèi)的擴展板中所設置的存儲器中或者寫到與計算機相連接的擴展單元中設置的存儲器中,隨后基于程序代碼的指令使安裝在擴展板或者擴展單元上的CPU等來執(zhí)行部分和全部實際操作,從而實現(xiàn)上述實施例中任一實施例的功能。

      根據(jù)上述方案,本發(fā)明的各實施例,至少具有如下有益效果:

      1.通過提取每一個樣本數(shù)據(jù)元的樣本特征信息,所述樣本特征信息,包括:樣本特征向量和樣本標識;隨機生成至少一個映射向量;針對每一個所述映射向量,執(zhí)行:根據(jù)預設的區(qū)間寬度,將所述映射向量劃分為至少兩個區(qū)間,并為每一個所述區(qū)間分配對應的區(qū)間標識;將每一個所述樣本特征向量映射到所述映射向量;根據(jù)映射的結(jié)果,將每一個所述樣本標識分配給相關的所述區(qū)間標識,生成倒排文檔索引,通過上述生成倒排文檔索引的過程,相當于利用倒排文檔索引對樣本數(shù)據(jù)元進行了分類,在進行數(shù)據(jù)檢索過程中,基于倒排文檔索引進行數(shù)據(jù)檢索的過程,是利用倒排文檔索引給出的區(qū)間標識直接獲得與檢索信息相關性比較大的樣本數(shù)據(jù)元,從而能夠有效地提高檢索效率。

      2.通過為每一個樣本特征向量查找至少一個近鄰樣本特征向量;從所述樣本特征向量開始,向每一個所述近鄰樣本特征向量繪制對應的有向邊,形成所述樣本特征向量的近鄰圖索引,那么,在進行檢索時,可以直接根據(jù)該近鄰圖索引的有向邊查找到近鄰樣本數(shù)據(jù)元,進一步提高檢索的效率。

      3.通過基于所述映射向量,計算每一個所述樣本特征向量的哈希值;針對每一個所述樣本標識,執(zhí)行:當所述樣本標識對應的所述樣本特征向量的哈希值與當前區(qū)間標識一致時,將所述樣本標識分配給所述當前區(qū)間標識,即哈希值與區(qū)間標識一致,使得在檢索過程中能夠快速的從倒排文檔索引中檢索到有用的樣本數(shù)據(jù)元,而避免了一些無關的樣本數(shù)據(jù)元的干擾。

      4.通過隨機生成多個映射向量,可以從不同的角度生成對應的倒排文檔索引,那么,在檢索的過程中通過檢索不同的角度倒排文檔索引,使檢索結(jié)果更加完整。

      5.通過為檢索信息預篩選出候選集,并將從每一個倒排文檔索引篩選出來的索引集合并入候選集,并以合并后的候選集為基礎進行檢索,進一步保證了檢索的完整性。

      6.通過計算每一個目標近鄰樣本數(shù)據(jù)元與檢索信息的歐式距離,選取歐式距離較小的一些作為輸出結(jié)果,保證了檢索結(jié)果的準確性。

      需要說明的是,在本文中,諸如第一和第二之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同因素。

      本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)中。

      最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。

      當前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1