Unified multi-space indexing method for high-dimensional multi-modal search

By unifying the multi-space indexing method and using lossless acceleration technology, and integrating the neighbor relationships of multi-vector objects, the spatial mismatch and resource explosion problems in multimodal data search are solved, realizing efficient and scalable multi-vector search, which is suitable for vector database management systems in multimodal applications.

CN121996820APending Publication Date: 2026-05-08ZHEJIANG UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZHEJIANG UNIV
Filing Date
2026-04-09
Publication Date
2026-05-08

AI Technical Summary

Technical Problem

Existing technologies suffer from spatial mismatch, resource explosion, insensitivity to dynamic weights, and redundant computation when processing multimodal data, resulting in low search efficiency and limited accuracy.

Method used

A unified multi-space indexing method is adopted to integrate the neighbor relationships of multi-vector objects into a single graph structure. Lossless acceleration techniques are used to optimize the index building and querying process, including the reuse of distance calculation, importance-aware approximate calculation and accurate calculation based on inner product transformation, and median difference encoding is used to compress the neighbor list.

Benefits of technology

It achieves efficient and scalable multi-vector search, solves the problems of space mismatch and resource explosion, improves search efficiency and accuracy, and is suitable for vector database management systems in multimodal applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121996820A_ABST
    Figure CN121996820A_ABST
Patent Text Reader

Abstract

The invention discloses a high-dimensional multi-modal search-oriented unified multi-space indexing method, which comprises the following steps of: acquiring a multi-vector object set, and representing each object by a plurality of vectors from different semantic spaces; constructing a unified multi-space graph index, and integrating all possible neighborhood relationships of vector combination spaces into a single graph structure; in the index construction process, objects to be inserted are used as different multi-vector queries to be processed respectively, each vector combination space is searched, and neighbor nodes are selected; optimizing an index construction process by applying a lossless acceleration technology; carrying out lossless compression on the constructed neighbor list to reduce the storage overhead; and receiving a multi-vector query, executing adaptive navigation search according to a vector combination and a weight of the query, and returning a most similar object. According to the method, the space mismatching problem and the resource explosion dilemma of an existing method can be solved, the index construction time and the storage overhead are remarkably reduced, and the efficiency and the accuracy of multi-vector query are effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of database systems and information retrieval technology, specifically relating to a unified multi-space indexing method for high-dimensional multimodal search. Background Technology

[0002] With the rapid development of artificial intelligence technology, especially the widespread application of visual language models and large language models, high-dimensional vector embedding has become a key technology for processing unstructured data. In application scenarios such as retrieval enhancement and generation, vector search serves as the core engine, providing external knowledge support for generative models. However, existing vector search techniques are almost all based on a fundamental assumption: each object is represented by a single vector. While this single-vector paradigm is widely used, it faces the problem of insufficient expressive power when dealing with complex multimodal data.

[0003] To fully capture the rich information of multimodal objects, multivector representation is emerging as a more expressive and flexible alternative. In this model, an object is described by a set of distinct vectors, each capturing a different aspect, perspective, or modality. For example, in a multimodal chat application, a user might provide a daytime photo of Big Ben and the text prompt "Please find me a nighttime photo of Big Ben taken from the same perspective." The backend system encodes the text prompt into a semantic vector and fuses the reference image and text into another vector using a multimodal encoder, forming a two-vector query to perform a search in the vector database. This method achieves higher accuracy in complex retrieval scenarios by preserving different information channels rather than forcibly fusing them into a single vector. However, this superior expressive power brings a significant system challenge—the need for efficient multivector search, specifically including the following aspects: First, existing systems primarily employ an "independent index" strategy to handle multi-vector search problems. Leading vector databases such as Milvus and VBase construct independent single-space HNSW (Hierarchical Navigable Small World) indexes for each modality, then merge the search results during querying. This approach suffers from a critical architectural flaw: the "space mismatch" problem. Multi-vector queries do not reside in any single modality space but rather in a new composite vector space defined by specific vector combinations, with their precise location determined by both the vector data and assigned weights. The neighbor relationships pre-computed and stored in the single-modality HNSW graph serve as poor proxies for the actual neighbor relationships in the queried composite space, leading to low search efficiency and limited accuracy.

[0004] Secondly, the theoretically correct solution is for all While pre-indexing all possible vector combinations guarantees a perfectly aligned index for any query combination, it presents a serious practical challenge. To achieve high performance, each index must employ an optimized memory layout, storing the vector data and neighbor list contiguously to ensure data locality and avoid performance penalties from cache misses. However, this necessary optimization necessitates extensive copying of vector data across numerous indexes, resulting in exponentially and impractically unfeasible costs in terms of build time and memory.

[0005] Third, existing multi-vector search methods are insensitive to dynamic weights. In practical applications, users may assign different importance to different modalities (e.g., "find images that look like this picture but are mainly about this text"), and these preferences are expressed through dynamic weights; however, existing single-space indexes and their search strategies cannot effectively utilize this weight information to guide the search path, limiting the accuracy and efficiency of the search.

[0006] Fourth, for an object represented by m vectors, the number of potential vector combinations grows exponentially. Although m is usually small in real-world applications, as m increases, any method designed to provide comprehensive search capabilities faces inherent computational and storage challenges.

[0007] Finally, existing methods lack specific optimizations for the characteristics of multi-vector search problems. Multi-vector distance calculations involve a large amount of redundant computation, but existing systems have failed to effectively utilize these computational patterns to accelerate index building and query processing. At the same time, there is a lack of effective compression schemes for the exponentially increasing storage overhead of the neighbor list. Summary of the Invention

[0008] In view of the above, the present invention provides a unified multi-space indexing method for high-dimensional multimodal search, which can natively support arbitrary multi-vector queries, fundamentally overcoming the "space mismatch" limitation and "resource explosion" dilemma of existing methods, and providing an efficient and scalable vector search solution for multimodal applications.

[0009] A unified multi-space indexing method for high-dimensional multimodal search includes the following steps: (1) Obtain a collection of multi-vector objects, where each object is represented by multiple vectors from different semantic spaces; (2) Construct a unified multi-space graph index to integrate the neighbor relationships of all possible vector combination spaces of an object into a single graph structure. The vector data of each object is stored only once, and an independent neighbor list is maintained for each vector combination space. (3) During the construction of the graph index, the objects to be inserted are treated as different multi-vector queries, and a search is performed on each vector combination space and neighbor nodes are selected; (4) Apply lossless acceleration techniques to optimize the graph index construction process, including the reuse of distance calculation, approximate calculation based on importance awareness, and accurate calculation based on inner product transformation; (5) After the neighbor list is aggregated and sorted, lossless compression is performed, and the median-based difference coding compression method is used to reduce storage overhead; (6) Receive multi-vector queries and perform adaptive navigation search in the graph index based on the vector combination and weight of the query, and return the top-k (first k) most similar objects using weighted aggregation distance.

[0010] Furthermore, the specific implementation of step (2) is as follows: S21: The multi-space graph index adopts a hierarchical graph structure, initializes an empty graph and sets the initial number of layers; S22: Assign the maximum level in the graph to the object to be inserted; S23: Store the vector data and pre-calculated information of objects in the graph; S24: Perform the neighbor construction process for the object at each level not exceeding the maximum number of levels, i.e., steps S25~S27; S25: Perform a greedy search for each vector combination space of the object to obtain its set of candidate neighbors; S26: Use the HNSW heuristic to select neighbors from the candidate neighbor set, prioritizing neighbors that are close to the query and far from each other; S27: After integrating and compressing the neighbor lists of all vector combination spaces, store them in the graph in association with the vertices of the objects.

[0011] Furthermore, the specific implementation of step (3) is as follows: S31: Generate a space of all vector combinations of the object to be inserted; S32: For any vector combination space, construct the corresponding query based on the definition of aggregate distance; S33: Perform a greedy search in the graph structure of the current layer, progressively visiting nodes that are closer to the query. S34: During the search process, for each node visited, calculate its aggregation distance in the vector combination space, and maintain the candidate node set based on the aggregation distance; S35: Sort the nodes by distance from the query and select candidate neighbors for the vector combination space from the candidate node set; S36: For all candidate neighbors in the vector combination space, perform HNSW heuristic neighbor selection.

[0012] Furthermore, the specific implementation of step (4) is as follows: S41: Aggregate and reuse the single vector distance results shared by multiple vector combination spaces to avoid redundant calculations; S42: During the vector combination space search, vectors with low distance contribution are approximated using importance-aware calculations to reduce overhead while ensuring the lossless nature of the final aggregated distance. S43: When the number of nodes in the candidate node set is insufficient, a precise distance calculation method based on inner product transformation is adopted to determine whether to add the node to the set, so as to accelerate the calculation process of precise aggregation distance.

[0013] Furthermore, the specific implementation of step (5) is as follows: S51: For each object, gather all the neighbor IDs (identifiers) of its vector combination space into a single list and sort them by neighbor ID; S52: The median ID encoding method is used to incrementally encode and compress the aggregated and sorted neighbor list for storage.

[0014] Furthermore, the specific implementation of step (6) is as follows: S61: Determine the vector combination space to which the multi-vector query belongs and select the corresponding neighbor list as the access object; S62: During the adaptive navigation search process, the relevance between nodes and multi-vector queries is evaluated based on the weighted aggregate distance, guiding the search path to prioritize visiting nodes with smaller distances; S63: During the node access process, maintain the candidate set and the result set, cyclically extract the point closest to the multi-vector query from the candidate set and expand its neighbors, update the result set according to the weighted aggregate distance, and finally return the top-k objects with the smallest weighted aggregate distance from the result set as the search results.

[0015] A computer device includes a memory and a processor, wherein the memory stores a computer program and the processor executes the computer program to implement the above-described unified multi-space indexing method for high-dimensional multimodal search.

[0016] A computer-readable storage medium storing a computer program, which, when executed by a processor, implements the aforementioned unified multi-space indexing method for high-dimensional multimodal search.

[0017] This invention proposes a novel unified indexing paradigm for high-dimensional multi-vector search problems, integrating the neighbor relationships of all possible vector space combinations into a single structure, fundamentally solving the "space mismatch" and "resource explosion" dilemmas of existing methods. This invention designs three lossless acceleration techniques specifically for multi-vector search, fully utilizing the unique characteristics of multi-spatial distance calculation to significantly reduce index construction time. Simultaneously, it proposes a well-structured index layout and a lossless neighbor compression algorithm, significantly reducing storage overhead while maintaining high-performance search capabilities. This invention implements an adaptive navigation strategy, capable of efficiently processing arbitrary multi-vector queries based on dynamic vector combinations and weights, significantly outperforming state-of-the-art methods on real datasets, and is particularly suitable for vector database management systems in multimodal applications. Attached Figure Description

[0018] Figure 1 This is a schematic diagram of the unified multi-space indexing method for high-dimensional multimodal search according to the present invention.

[0019] Figure 2 This is a schematic diagram of the overall structure of the index layout in this invention. Detailed Implementation

[0020] To describe the present invention in more detail, the technical solution of the present invention will be described in detail below with reference to the accompanying drawings and specific embodiments.

[0021] like Figure 1 As shown, this embodiment provides a unified multi-space indexing method for high-dimensional multimodal search, specifically including the following steps: (1) Obtain a collection of multi-vector objects, where each object is represented by multiple vectors from different semantic spaces.

[0022] In modern information retrieval systems, represented by multimodal AI applications, each object is typically represented by multiple vectors to fully capture its rich information, with each vector coming from a different encoder or representing different modal features.

[0023] This implementation uses a multimodal e-commerce search system as an example. In this system, product objects are represented by multiple vectors to fully capture information from different dimensions: product images are encoded into image vectors by a visual encoder to capture appearance features; product titles and descriptions are encoded into semantic vectors by a text encoder to capture textual information; and product attribute tags are encoded into attribute vectors by an attribute encoder to capture structured features. When a user queries, they may provide reference images, text descriptions, or a combination of both. The system needs to quickly retrieve the most matching result from all product objects. Formally, the multi-vector object set S contains n objects, each object... Depend on A vector representation, denoted as ,in This represents the i-th vector representation of object o. This represents the dimension of the i-th vector. This represents the total dimension of object o. According to the principles of combinatorics, an object containing m vectors has... The exponential growth of non-empty vector combinations is the core challenge of multi-vector search.

[0024] (2) Construct a unified multi-space graph index, integrate the neighbor relationships of all possible vector combination spaces into a single graph structure, store the vector data of each object only once, and maintain an independent neighbor list for each vector combination space.

[0025] Multi-space graph index construction is an incremental process. Its core goal is to integrate the neighbor relationships of all possible vector combination spaces using a single, unified graph structure, constructing a unique graph vertex for each object, with each vertex storing only one copy of the vector data, but simultaneously providing a unified graph structure for all vectors. Each vector combination space maintains a neighbor list, thereby simultaneously resolving the space mismatch problem and the resource explosion dilemma. The specific implementation process of this step includes the following sub-steps: S21: Initialize the empty graph and set the initial number of layers.

[0026] The index uses a hierarchical graph structure, and the graph is initialized during initialization. It contains no vertices or edges, and the top level is [number of layers]. The graph is shown as empty. The hierarchical structure allows the search to quickly locate the target region from the sparse connections at the higher levels and then perform a precise search in the dense connections at the lower levels.

[0027] S22: Assign the maximum number of layers in the graph to the object to be inserted.

[0028] Following the HNSW method, an exponentially decaying probability distribution is used to assign a maximum number of layers to each newly inserted object. If the calculated If it is greater than the current global top-level L, then update. This probability distribution ensures that most objects are located at the bottom layer and a few objects can cross multiple layers as highway nodes.

[0029] S23: Store the vector data and pre-calculated information of the objects in the graph.

[0030] like Figure 2 As shown, the index adopts a vertex-centric memory layout. In a contiguous memory block, m vectors of object o are stored first, followed by m pre-computed L2 norm squared values. These pre-computed norm values ​​will be used to accelerate distance calculation by converting Euclidean distance calculation into faster inner product operation through algebraic identities.

[0031] S24: Perform the neighbor construction process for the object at each level not exceeding the maximum number of levels, i.e., sub-steps S25~S27.

[0032] The index is built from top to bottom, starting from the maximum level for each object o. Start by going down layer by layer until the base layer. At each level, it is necessary to provide for all Neighbor relationships are established for each vector combination space.

[0033] S25: Perform a greedy search on each vector combination space to obtain a set of candidate neighbors.

[0034] For each vector combination space From object Extract the vectors contained in the combination to construct the query. Then from the top layer Get the set of entry points E in the current layer. The greedy search algorithm is executed. During the search process, the result set R, candidate set C, and visited set V are all initialized as the entry point set E. The distance is then iteratively taken from the candidate set C. The nearest point p, find p in the vector combination space. Neighbor list ,right For each unvisited neighbor e, calculate its destination. Aggregation distance Update the result set R and candidate set C based on the distance, repeating until a match is found. One candidate neighbor.

[0035] S26: Use the HNSW heuristic to select neighbors from the candidate neighbor set, prioritizing neighbors that are close to the query and far from each other.

[0036] from The HNSW heuristic neighbor selection rule is used to select r neighbors from the candidate neighbors. This rule initializes an empty set of selected neighbors N, traverses the candidate set C in order of distance from nearest to farthest, and checks whether each candidate e satisfies the rule. If the condition is met, e is added to N. This process is repeated until r neighbors are selected. This heuristic ensures that the selected neighbors are both close to the query point and dispersed from each other.

[0037] S27: After integrating and compressing the neighbor lists of all vector combination spaces, store them in the graph in association with the vertices of the objects.

[0038] Complete all After selecting neighbors for each vector combination space, the neighbor IDs of all vector combination spaces are aggregated into a single list. Each neighbor ID is appended with a combination identifier to identify its source vector combination space. After sorting by neighbor ID, incremental encoding compression is applied. Finally, the compressed neighbor data is stored in a fixed position in the vertex memory block of object o at that layer. Since the neighbor data of each layer occupies a fixed amount of space, the system can quickly locate the starting address of the neighbor data of any layer through simple offset calculation.

[0039] (3) During the index construction process, the objects to be inserted are treated as different multi-vector queries, and a search is performed on each vector combination space and neighbor nodes are selected.

[0040] For each newly inserted object In each of its layers All need to be for The key to finding suitable neighbors in each vector combination space lies in treating the same object 'o' as different queries in different vector spaces, thereby establishing correct neighbor relationships in the corresponding vector combination spaces. This involves performing a greedy search on each vector combination space to find candidate neighbors and using heuristic rules to select neighbor nodes from the candidate set. Therefore, the specific implementation process of this step includes the following sub-steps: S31: Generate a space of all vector combinations of the object to be inserted.

[0041] Enumerate all non-empty vector subsets of object o using the bitmasking method, by traversing from 1 to... The system generates all possible vector combinations by taking all integers and determining which vectors are included in the combination based on their binary representations.

[0042] S32: For each vector combination space, construct the corresponding query representation based on the defined aggregate distance after combination.

[0043] For each generated vector combination space Extract the corresponding vector from object o to construct a multi-vector query. The aggregate distance of the query is defined as the weighted sum of the distances of the vectors in the combination, where the weights are set to be evenly distributed during construction.

[0044] S33: In the graph structure of the current layer, perform a greedy search, progressively visiting nodes that are closer to the query.

[0045] After obtaining the entry point set E from the previous layer, a greedy search is performed in the current layer l. The result set R, candidate set C, and visited set V are initialized as the entry point set. The distance query is then retrieved from the candidate set C in a loop. The nearest point p, find p in the vector combination space. Neighbor list ,right Calculate the destination of each unvisited neighbor. The aggregated distance is calculated and the result set and candidate set are updated.

[0046] S34: Maintain a candidate set of nodes during the search process, and calculate the aggregation distance of the visited node in the current vector combination space.

[0047] During the greedy search process, for each visited node e, its position in the current vector combination space is calculated. Go to query The aggregation distance is calculated by considering only the vector dimensions contained in the combination. Based on the calculation result, it is determined whether to add node e to the candidate set C and the result set R.

[0048] S35: Sort the nodes in the candidate set according to their distance from the query, and select candidate neighbors.

[0049] When the greedy search terminates, retrieve the results from the result set R according to... Sort by aggregation distance from smallest to largest, and select the top... The nearest node is selected as the candidate neighbor set for this vector combination space.

[0050] S36: Provide the candidate set of all combination spaces to the neighbor selection module for subsequent heuristic neighbor filtering; Complete all After searching for candidate neighbors in each vector combination space, the candidate set of each combination space is passed to the HNSW heuristic neighbor selection module to perform neighbor filtering independently for each combination space. Finally, the neighbor lists obtained from filtering all vector combination spaces are integrated and compressed for storage.

[0051] (4) Apply lossless acceleration techniques to optimize the index building process, including the reuse of distance calculation, approximate calculation based on importance awareness, and accurate calculation based on inner product transformation.

[0052] This invention designs three lossless acceleration techniques for the unique computational mode of multi-vector search. These techniques fully utilize the redundancy and special structure in multi-spatial distance calculation, significantly reducing computational overhead without affecting index quality and search accuracy. Therefore, the specific implementation process in this step includes the following sub-steps: S41: Aggregate and reuse the underlying vector distance results shared by multiple vector combination spaces to avoid redundant calculations.

[0053] When processing object o, first process m unimodal spaces and cache the single vector distances of all visited vertices. When processing the composite space, directly retrieve these scalar distances from the cache and calculate the aggregate distance by simple addition. Furthermore, directly use the union of the candidate sets of each unimodal space as the candidate set of the composite space, reducing the number of greedy search times from exponential to linear.

[0054] S42: During the search in the combinatorial space, vectors with low distance contribution are approximated using importance-aware calculations to reduce overhead while ensuring the lossless nature of the final aggregated distance.

[0055] In the neighbor selection process, most distance calculations are used for comparison with a threshold. In these cases, if partial distance calculations can prove that a candidate is outside the threshold, it is unnecessary to calculate the full, precise distance. To accelerate these comparative distance calculations, this invention employs a vector transformation method based on principal component analysis. For each vector set, an orthogonal projection matrix is ​​calculated, rearranging the vector dimensions in descending order of variance, so that dimensions with higher variance are placed first. Consider the i-th vector of the object to be inserted, o. The i-th vector of the candidate neighbor x The distance between them is calculated because orthogonal transformations preserve the L2 norm. Since the vector remains unchanged before and after the transformation, incremental distance calculation can be performed on the transformed vector: Let the transformed vector be... and , and They represent and The j-th dimension component is obtained by accumulating the squared differences dimension by dimension, starting from the first dimension. When the accumulated distance The calculation is terminated immediately and the candidate is discarded when the comparison threshold T is exceeded. Since the transformed vector concentrates energy in the earlier high-variance dimensions, some distances can exceed the threshold earlier, thus terminating the comparison earlier and significantly reducing the average number of dimensions that actually need to be processed. Furthermore, due to the distance preservation property of the transformation, the final comparison result is completely lossless.

[0056] S43: When the number of elements in the candidate node set is less than k, a precise distance calculation method based on inner product transformation is adopted to accelerate the calculation process of precise aggregation distance.

[0057] When the number of elements in the candidate node set is less than k, it is necessary to calculate the precise distance value to determine whether to add the node to the candidate set. In this case, the algebraic identity is used. In step S23, the L2 norm squared values ​​of all vectors are pre-calculated and stored, and the distance calculation is converted into a faster inner product operation plus simple arithmetic, thereby accelerating the accurate distance calculation process.

[0058] (5) Perform lossless compression on the completed neighbor list and use the median-based difference encoding compression method to reduce storage overhead.

[0059] Although this invention avoids redundant storage of vector data through a unified architecture, each vertex still needs to store a neighbor list for all vector combination spaces. Therefore, this invention designs a lossless compression method based on median ID incremental encoding. Thus, the specific implementation process in this step includes the following sub-steps: S51: Aggregate and sort the multi-space neighbor list stored for each object vertex.

[0060] For a given vertex and layer, all neighbor IDs of the vector combination space are aggregated into a single list. Each neighbor ID is appended with a combination identifier to identify its source vector combination space. Then, the IDs are sorted by neighbor ID to make the ID distribution more even, thereby improving compression efficiency.

[0061] S52: The sorted neighbor ID list is incrementally encoded and compressed for storage using the median ID encoding method; The median ID encoding method employs an incremental encoding strategy based on the median. First, the median ID is determined from the sorted list of neighbor IDs and stored in its complete form. Then, all other neighbor IDs in the list are represented as positive or negative offsets relative to the median ID. Since the absolute value of the offset is usually much smaller than the original ID value, fewer bits can be used for storage, thus achieving compression. The key advantage of this encoding method is its support for efficient random access decompression. For any neighbor ID in the list, the original ID value can be directly calculated and recovered by reading the median ID and the corresponding offset without sequentially decoding the entire list, achieving a time complexity of O(n log n). During query execution, the system determines the list of neighbors to be accessed based on the vector combination of the query. It only decompresses the neighbor IDs corresponding to the combination space as needed, and selectively reconstructs the relevant neighbor IDs by checking the combination identifier attached to each neighbor ID, thereby achieving a high compression ratio while maintaining efficient data access performance.

[0062] (6) Receive multi-vector queries and perform adaptive navigation search based on the vector combination and weight of the query. Use weighted aggregation distance for adaptive navigation search and return the top-k most similar objects.

[0063] This invention employs a hierarchical search strategy to handle dynamic multi-vector queries. A query q contains t vectors and their corresponding weights. The search process starts from the top-level global entry point of the graph and traverses downwards, checking each intermediate layer. Perform a greedy search to find a single optimal entry point as the starting point for the next layer, in the base layer. A final greedy search is performed to retrieve the top-k most similar objects. Therefore, the specific implementation process of this step includes the following sub-steps: S61: Determine the vector combination space to which the multi-vector query belongs and select the corresponding neighbor list.

[0064] According to the query Included Each vector determines its vector combination. This combination determines which neighbor lists should be visited during graph traversal, and is based on the query combination when visiting each vertex. Obtain the list of neighbors of the vertex in the corresponding combinatorial space and decompress it.

[0065] S62: During the navigational search process, the relevance of nodes to the query is evaluated based on the weighted aggregate distance, and nodes with smaller distances are visited first.

[0066] At each level of the hierarchical search, the weighted aggregation distance is calculated in real time for the visited candidate node e using the vector data and weights of query q. ,in This represents the i-th vector of candidate node e. This indicates a query for the i-th vector in q. This indicates the weight assigned to the i-th vector in the query. express and The squared Euclidean distance between them is used to dynamically guide the search path to prioritize nodes with smaller aggregation distances. Query-aware acceleration techniques are applied, including using importance-aware approximation for comparative distance calculations and introducing weighted priority ranking, while inner product transformations are used to accelerate precise distance calculations.

[0067] S63: During the node access process, maintain the candidate set and the result set, and finally return the top-k most similar objects from the result set.

[0068] During the greedy search process in the base layer, maintain a size of... Given a result set R and a candidate set C, the system iterates through the candidate set C to extract the point closest to the query and expand its neighbors. The result set R is updated based on the weighted aggregate distance. The search stops when the candidate set C is empty or the termination condition is met. Finally, the top-k objects with the smallest aggregate distance are returned from the result set R as the search results.

[0069] The above description of the embodiments is provided to enable those skilled in the art to understand and apply the present invention. Those skilled in the art can readily make various modifications to the above embodiments and apply the general principles described herein to other embodiments without creative effort. Therefore, the present invention is not limited to the above embodiments, and any improvements and modifications made to the present invention by those skilled in the art based on the disclosure thereof should be within the scope of protection of the present invention.

Claims

1. A unified multi-space indexing method for high-dimensional multimodal search, characterized in that, Includes the following steps: (1) Obtain a collection of multi-vector objects, where each object is represented by multiple vectors from different semantic spaces; (2) Construct a unified multi-space graph index to integrate the neighbor relationships of all possible vector combination spaces of an object into a single graph structure. The vector data of each object is stored only once, and an independent neighbor list is maintained for each vector combination space. (3) During the construction of the graph index, the objects to be inserted are treated as different multi-vector queries, and a search is performed on each vector combination space and neighbor nodes are selected; (4) Apply lossless acceleration techniques to optimize the graph index construction process, including the reuse of distance calculation, approximate calculation based on importance awareness, and accurate calculation based on inner product transformation; (5) After the neighbor list is aggregated and sorted, lossless compression is performed, and the median-based difference coding compression method is used to reduce storage overhead; (6) Receive multi-vector queries and perform adaptive navigation search in the graph index based on the vector combination and weight of the query, and return the top-k most similar objects using weighted aggregation distance.

2. The unified multi-space indexing method for high-dimensional multimodal search according to claim 1, characterized in that, The specific implementation method of step (2) is as follows: S21: The multi-space graph index adopts a hierarchical graph structure, initializes an empty graph and sets the initial number of layers; S22: Assign the maximum level in the graph to the object to be inserted; S23: Store the vector data and pre-calculated information of objects in the graph; S24: Perform the neighbor construction process for the object at each level not exceeding the maximum number of levels, i.e., steps S25~S27; S25: Perform a greedy search for each vector combination space of the object to obtain its set of candidate neighbors; S26: Use the HNSW heuristic to select neighbors from the candidate neighbor set, prioritizing neighbors that are close to the query and far from each other; S27: After integrating and compressing the neighbor lists of all vector combination spaces, store them in the graph in association with the vertices of the objects.

3. The unified multi-space indexing method for high-dimensional multimodal search according to claim 1, characterized in that, The specific implementation method of step (3) is as follows: S31: Generate a space of all vector combinations of the object to be inserted; S32: For any vector combination space, construct the corresponding query based on the definition of aggregate distance; S33: Perform a greedy search in the graph structure of the current layer, progressively visiting nodes that are closer to the query. S34: During the search process, for each node visited, calculate its aggregation distance in the vector combination space, and maintain the candidate node set based on the aggregation distance; S35: Sort the nodes by distance from the query and select candidate neighbors for the vector combination space from the candidate node set; S36: For all candidate neighbors in the vector combination space, perform HNSW heuristic neighbor selection.

4. The unified multi-space indexing method for high-dimensional multimodal search according to claim 1, characterized in that, The specific implementation method of step (4) is as follows: S41: Aggregate and reuse the single vector distance results shared by multiple vector combination spaces to avoid redundant calculations; S42: During the vector combination space search, vectors with low distance contribution are approximated using importance-aware calculations to reduce overhead while ensuring the lossless nature of the final aggregated distance. S43: When the number of nodes in the candidate node set is insufficient, a precise distance calculation method based on inner product transformation is adopted to determine whether to add the node to the set, so as to accelerate the calculation process of precise aggregation distance.

5. The unified multi-space indexing method for high-dimensional multimodal search according to claim 1, characterized in that, The specific implementation method of step (5) is as follows: S51: For each object, gather the neighbor IDs of all its vector combination spaces into a single list and sort them by neighbor ID; S52: The median ID encoding method is used to incrementally encode and compress the aggregated and sorted neighbor list for storage.

6. The unified multi-space indexing method for high-dimensional multimodal search according to claim 1, characterized in that, The specific implementation method of step (6) is as follows: S61: Determine the vector combination space to which the multi-vector query belongs and select the corresponding neighbor list as the access object; S62: During the adaptive navigation search process, the relevance between nodes and multi-vector queries is evaluated based on the weighted aggregate distance, guiding the search path to prioritize visiting nodes with smaller distances; S63: During the node access process, maintain the candidate set and the result set, cyclically extract the point closest to the multi-vector query from the candidate set and expand its neighbors, update the result set according to the weighted aggregate distance, and finally return the top-k objects with the smallest weighted aggregate distance from the result set as the search results.

7. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: The processor is used to execute the computer program to implement the unified multi-space indexing method for high-dimensional multimodal search as described in any one of claims 1 to 6.

8. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by the processor, it implements the unified multi-space indexing method for high-dimensional multimodal search as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • High-dimensional space vector dynamic nearest neighbor search method based on tree-graph structure

    CN118964364A