JP7006966B2 - ベクトル量子化の混合に基づく符号化方法及びこれを用いた最近傍探索(nns)方法 - Google Patents
ベクトル量子化の混合に基づく符号化方法及びこれを用いた最近傍探索(nns)方法 Download PDFInfo
- Publication number
- JP7006966B2 JP7006966B2 JP2019554379A JP2019554379A JP7006966B2 JP 7006966 B2 JP7006966 B2 JP 7006966B2 JP 2019554379 A JP2019554379 A JP 2019554379A JP 2019554379 A JP2019554379 A JP 2019554379A JP 7006966 B2 JP7006966 B2 JP 7006966B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- order
- query
- residual
- codeword
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
Description
複数のベクトルの合成によってベクトルを近似化するアイデアは、“2段階残差ベクトル量子化”の設計に遡ることができる。この方法において、入力ベクトルは量子化器によって符号化され、それの残差(量子誤差)は他の量子化器によって順次に符号化される。この手法は、以前の量子化段階で残された残差ベクトルが再帰的に量子化される複数の次数(段階)に拡張された。
一つの量子化段階で使用可能なコードワードの数が制限されているため、各段階における残余空間が正しく量子化されないことがある。これは残差のエネルギーが広い範囲にわたっている時に特にそうである。この問題を解決するために、本発明の一実施例によれば、量子化に提供する前に残差ベクトルをl2-正規化することが好ましい。言い換えると、ベクトルのエネルギーとその単位長ベクトルは別々に量子化されるので、量子化が容易となる。
RNQの場合、符号化誤りはRVQに比べて非常に小さいが、各次数に4ビットがさらに必要である。一般に、速いNNSのために、RNQ/RVQコードの初めの2つの次数で逆インデクシングキーを生成する。結果的に、逆変換されたキーはRVQよりも8ビット長くなる。インデクシングキーがRVQよりも明確であるが、キースペースキーのボリュームは、ベクトル空間を不要に低い密度に分けるRVQに比べて256倍さらに大きい。この理由から、速いNNSにおいて本発明に係る装置は、与えられたベクトルに対する混合符号化を選好する。一般に、RVQは符号化の初めの2つの次数に用いられ、インデクシングキーを生成するために用いられる。
図8を参照して、等級剪定に基づくオンライン検索戦略について説明する。候補データセットからクエリqの最近傍を検索するために、段階1000において逆リストのインデックスキーとクエリとの間の距離を計算する。このとき、インデックスキー値IをC1とC2とに分割できる。C1とC2は第1次コードブックのベクトル(第1コードワード
上記の式9において、計算速度を上げるために、クエリqと第1コードワード
(付記1)
候補データセットからクエリの最近傍を検索するための候補ベクトルの符号化方法であって、
入力ベクトル(この時、最初の入力ベクトルは前記候補ベクトル)を正規化して方向ベクトル及びベクトルエネルギーを取得する正規化段階と、
前記方向ベクトルを量子化してコードワード及び残差ベクトルを取得する量子化段階と、
前記残差ベクトルを前記入力ベクトルとして、前記正規化段階及び前記量子化段階を予め設定された符号化次数だけ反復する段階と、
前記反復による一つ以上のコードワード及び一つ以上のベクトルのエネルギーを用いて前記候補ベクトルを符号化する段階と、
を含むベクトル符号化方法。
前記量子化段階は、前記方向ベクトルの次数に対応するコードブックで前記方向ベクトルに最近接したワードを前記コードワードとして返還する段階を含む、付記1に記載のベクトル符号化方法。
前記符号化する段階は、
前記符号化次数を予め設定された基準によって低次数と高次数とに分類する段階と、
前記低次数の入力ベクトルに対応するコードワードを用いて逆リストのインデクシングキーを生成する段階と、
前記高次数の入力ベクトルに対応するコードワード及び低次数の入力ベクトルに対応するベクトルエネルギーを用いてRNQコードを生成する段階とを含み、
符号化された候補ベクトルは、前記インデクシングキーと前記RNQコードとの組合せであり、前記符号化次数は、前記低次数と前記高次数との和である、
付記1に記載のベクトル符号化方法。
前記RNQコードは、前記逆リストにおいて前記インデクシングキーに対応する連結リストに保存され、前記連結リストの各項目は、候補ベクトルの識別情報及びRNQコードを含むことを特徴とする、付記3に記載のベクトル符号化方法。
前記符号化次数を分類する段階は、前記候補データセットのサイズが大きくなるほど、前記低次数に分類される値のサイズを増加させる段階をさらに含む、付記3に記載のベクトル符号化方法。
前記符号化次数を4、前記低次数iを2、前記高次数jを2に設定した場合、前記候補ベクトルは下記の式のように近似化され、
インデクシングキー:C1C2
前記RNQコードは、前記e0に対応するh0及び前記e1に対応するh1及び前記
RNQコード:C3h0C4h1
e0:第3残差ベクトルのエネルギー(スカラー値)
e1:第4残差ベクトルのエネルギー(スカラー値)
p1:
p2:
付記1~6のいずれかに記載の方法を実行させるためにコンピュータ読取り可能媒体に格納されたベクトル符号化応用プログラム。
候補データセットからクエリの最近傍を検索する方法であって、
前記クエリを正規化及び量子化して取得した一つ以上のコードワードを含む逆リストのインデクシングキーと前記クエリ間の距離を計算する段階と、
前記計算された距離を昇順に整列し、整列された距離が上位の特定百分位数以内である逆リストを候補連結リストに設定する段階と、
前記候補連結リストに含まれた候補ベクトルと前記クエリ間の距離を計算して前記最近傍を取得する段階と、
を含む最近傍探索方法。
前記距離を計算する段階は、
1次コードブックに含まれる第1コードワード
前記距離を計算する段階は、
前記クエリと第1コードワード間の距離を計算して昇順に整列する段階と、
前記クエリと第2コードワード間の距離を計算して昇順に整列する段階と、
前記整列された距離が上位の特定百分位数以内である第1コードワード及び第2コードワードを用いて前記合成ベクトルIとクエリq間の距離を計算する段階と、
を含む、付記10に記載の最近傍探索方法。
付記8~12のいずれかに記載の方法を実行させるためにコンピュータ読取り可能媒体に格納された最近傍探索応用プログラム。
Claims (13)
- 候補データセットからクエリの最近傍を検索するための候補ベクトルの符号化方法であって、
入力ベクトル(この時、最初の入力ベクトルは前記候補ベクトル)を正規化して方向ベクトル及びベクトルエネルギーを取得する正規化段階と、
前記方向ベクトルを量子化してコードワード及び残差ベクトルを取得する量子化段階と、
前記残差ベクトルを前記入力ベクトルとして、前記正規化段階及び前記量子化段階を予め設定された符号化次数だけ反復する段階と、
前記反復による前記符号化次数を予め設定された基準に沿って低次数と高次数とに分類し、前記低次数の入力ベクトルに対応する一つ以上のコードワード及び前記高次数の入力ベクトルに対応する一つ以上のベクトルのエネルギーを用いて前記候補ベクトルを符号化する段階と、
を含むベクトル符号化方法。 - 前記量子化段階は、前記方向ベクトルの次数に対応するコードブックで前記方向ベクトルに最近接したワードを前記コードワードとして返還する段階を含む、請求項1に記載のベクトル符号化方法。
- 前記符号化する段階は、
前記符号化次数を予め設定された基準によって低次数と高次数とに分類する段階と、
前記低次数の入力ベクトルに対応するコードワードを用いて逆リストのインデクシングキーを生成する段階と、
前記高次数の入力ベクトルに対応するコードワード及び低次数の入力ベクトルに対応するベクトルエネルギーを用いてRNQコードを生成する段階とを含み、
符号化された候補ベクトルは、前記インデクシングキーと前記RNQコードとの組合せであり、前記符号化次数は、前記低次数と前記高次数との和である、
請求項1に記載のベクトル符号化方法。 - 前記RNQコードは、前記逆リストにおいて前記インデクシングキーに対応する連結リストに保存され、前記連結リストの各項目は、候補ベクトルの識別情報及びRNQコードを含むことを特徴とする、請求項3に記載のベクトル符号化方法。
- 前記符号化次数を分類する段階は、前記候補データセットのサイズが大きくなるほど、前記低次数に分類される値のサイズを増加させる段階をさらに含む、請求項3に記載のベクトル符号化方法。
- 前記符号化次数を4、前記低次数iを2、前記高次数jを2に設定した場合、前記候補ベクトルは下記の式のように近似化され、
インデクシングキー:C1C2
前記RNQコードは、前記e0に対応するh0及び前記e1に対応するh1及び前記
RNQコード:C3h0C4h1
e0:第3残差ベクトルのエネルギー(スカラー値)
e1:第4残差ベクトルのエネルギー(スカラー値)
p1:
p2:
- 請求項1~6のいずれかに記載の方法を実行させるためにコンピュータ読取り可能媒体に格納されたベクトル符号化応用プログラム。
- 候補データセットからクエリの最近傍を検索する方法であって、
前記クエリを正規化及び量子化して取得した一つ以上のコードワードを含む逆リストのインデクシングキーと前記クエリ間の距離を計算する段階と、
前記計算された距離を昇順に整列し、整列された距離が上位の特定百分位数以内である逆リストを候補連結リストに設定する段階と、
前記候補連結リストに含まれた候補ベクトルと前記クエリ間の距離を計算して前記最近傍を取得する段階と、
を含む最近傍探索方法。 - 前記距離を計算する段階は、
前記クエリと第1コードワード間の距離を計算して昇順に整列する段階と、
前記クエリと第2コードワード間の距離を計算して昇順に整列する段階と、
前記整列された距離が上位の特定百分位数以内である第1コードワード及び第2コードワードを用いて前記合成ベクトルIとクエリq間の距離を計算する段階と、
を含む、請求項10に記載の最近傍探索方法。 - 前記最近傍を取得する段階は、前記候補ベクトルvと前記クエリq間の距離を下記の式を用いて計算する段階を含む、請求項8に記載の最近傍探索方法。
q t :クエリベクトルの残差
v:候補ベクトル
v t :候補ベクトルの残差
I:逆リストのインデクシングキー
e 0 :第3残差ベクトルのエネルギー(スカラー値)
e 1 :第4残差ベクトルのエネルギー(スカラー値)
p 1 :
p 2 :
- 請求項8~12のいずれかに記載の方法を実行させるためにコンピュータ読取り可能媒体に格納された最近傍探索応用プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170041017A KR101958939B1 (ko) | 2017-03-30 | 2017-03-30 | 벡터 양자화의 혼합에 기초한 부호화 방법 및 이를 이용한 최근접 이웃 검색(nns) 방법 |
KR10-2017-0041017 | 2017-03-30 | ||
PCT/KR2017/006450 WO2018182093A1 (ko) | 2017-03-30 | 2017-06-20 | 벡터 양자화의 혼합에 기초한 부호화 방법 및 이를 이용한 최근접 이웃 검색(nns) 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020515986A JP2020515986A (ja) | 2020-05-28 |
JP7006966B2 true JP7006966B2 (ja) | 2022-01-24 |
Family
ID=63678276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019554379A Active JP7006966B2 (ja) | 2017-03-30 | 2017-06-20 | ベクトル量子化の混合に基づく符号化方法及びこれを用いた最近傍探索(nns)方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11436228B2 (ja) |
JP (1) | JP7006966B2 (ja) |
KR (1) | KR101958939B1 (ja) |
WO (1) | WO2018182093A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11308152B2 (en) * | 2018-06-07 | 2022-04-19 | Canon Kabushiki Kaisha | Quantization method for feature vector, search method, apparatus and storage medium |
CN110727769B (zh) * | 2018-06-29 | 2024-04-19 | 阿里巴巴(中国)有限公司 | 语料库生成方法及装置、人机交互处理方法及装置 |
CN109325240A (zh) * | 2018-12-03 | 2019-02-12 | 中国移动通信集团福建有限公司 | 指标查询的方法、装置、设备和介质 |
CN112800268B (zh) * | 2021-03-02 | 2022-08-26 | 安庆师范大学 | 图像视觉特征的量化与近似最近邻搜索方法 |
CN117037913B (zh) * | 2023-10-07 | 2024-01-26 | 之江实验室 | 一种蛋白质多序列比对方法、装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163272A (ja) | 2000-11-15 | 2002-06-07 | Samsung Electronics Co Ltd | 特徴ベクトル空間のインデクシング方法及び検索方法 |
JP2009020769A (ja) | 2007-07-13 | 2009-01-29 | Toshiba Corp | パターン探索装置及びその方法 |
JP5637939B2 (ja) | 2011-06-28 | 2014-12-10 | Kddi株式会社 | 少ないコードブックの情報量によって高次元の特徴ベクトルを検索する検索装置及びプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100429792B1 (ko) * | 2000-11-15 | 2004-05-03 | 삼성전자주식회사 | 특징 벡터 공간의 인덱싱 방법 및 검색 방법 |
KR101116663B1 (ko) * | 2010-04-15 | 2012-03-07 | 성균관대학교산학협력단 | 고차원 데이터의 유사도 검색을 위한 데이터 분할방법 |
US9263053B2 (en) * | 2012-04-04 | 2016-02-16 | Google Technology Holdings LLC | Method and apparatus for generating a candidate code-vector to code an informational signal |
CN103269429B (zh) * | 2012-11-01 | 2016-05-25 | 重庆邮电大学 | 一种超光谱信号快速矢量量化编码方法 |
CN107193938A (zh) * | 2017-05-19 | 2017-09-22 | 厦门大学 | 基于混合向量量化的最近邻搜索方法 |
-
2017
- 2017-03-30 KR KR1020170041017A patent/KR101958939B1/ko active IP Right Grant
- 2017-06-20 WO PCT/KR2017/006450 patent/WO2018182093A1/ko active Application Filing
- 2017-06-20 JP JP2019554379A patent/JP7006966B2/ja active Active
- 2017-06-20 US US16/499,789 patent/US11436228B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163272A (ja) | 2000-11-15 | 2002-06-07 | Samsung Electronics Co Ltd | 特徴ベクトル空間のインデクシング方法及び検索方法 |
JP2009020769A (ja) | 2007-07-13 | 2009-01-29 | Toshiba Corp | パターン探索装置及びその方法 |
JP5637939B2 (ja) | 2011-06-28 | 2014-12-10 | Kddi株式会社 | 少ないコードブックの情報量によって高次元の特徴ベクトルを検索する検索装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2020515986A (ja) | 2020-05-28 |
WO2018182093A1 (ko) | 2018-10-04 |
US20200226137A1 (en) | 2020-07-16 |
KR20180110959A (ko) | 2018-10-11 |
US11436228B2 (en) | 2022-09-06 |
KR101958939B1 (ko) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7006966B2 (ja) | ベクトル量子化の混合に基づく符号化方法及びこれを用いた最近傍探索(nns)方法 | |
Baranchuk et al. | Revisiting the inverted indices for billion-scale approximate nearest neighbors | |
Wu et al. | Multiscale quantization for fast similarity search | |
CN105912611B (zh) | 一种基于cnn的快速图像检索方法 | |
Ai et al. | Optimized residual vector quantization for efficient approximate nearest neighbor search | |
Wei et al. | Projected residual vector quantization for ANN search | |
Pan et al. | Product quantization with dual codebooks for approximate nearest neighbor search | |
US11874866B2 (en) | Multiscale quantization for fast similarity search | |
EP3115908A1 (en) | Method and apparatus for multimedia content indexing and retrieval based on product quantization | |
Ozan et al. | K-subspaces quantization for approximate nearest neighbor search | |
Chen et al. | Robustiq: A robust ann search method for billion-scale similarity search on gpus | |
Gao et al. | Squish: Near-optimal compression for archival of relational datasets | |
Jain et al. | Approximate search with quantized sparse representations | |
JP2011525728A (ja) | 数値データの処理方法 | |
Wang et al. | A new cell-level search based non-exhaustive approximate nearest neighbor (ann) search algorithm in the framework of product quantization | |
Hong et al. | Asymmetric mapping quantization for nearest neighbor search | |
Yuan et al. | Product tree quantization for approximate nearest neighbor search | |
Sun et al. | A novel fractal coding method based on MJ sets | |
Fan et al. | Codebook-softened product quantization for high accuracy approximate nearest neighbor search | |
Liu et al. | Generalized residual vector quantization and aggregating tree for large scale search | |
Zhao et al. | Scalable nearest neighbor search based on KNN graph | |
Chen et al. | Hierarchical quantization for billion-scale similarity retrieval on gpus | |
JP2013140494A (ja) | 高次元の特徴ベクトルを検索する検索装置及びプログラム | |
André et al. | Derived codebooks for high-accuracy nearest neighbor search | |
Song et al. | SqueezeBlock: A Transparent Weight Compression Scheme for Deep Neural Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191001 |
|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20200106 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210420 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20210719 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210818 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20211221 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211224 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7006966 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |