39 research outputs found
Optimized Cartesian -Means
Product quantization-based approaches are effective to encode
high-dimensional data points for approximate nearest neighbor search. The space
is decomposed into a Cartesian product of low-dimensional subspaces, each of
which generates a sub codebook. Data points are encoded as compact binary codes
using these sub codebooks, and the distance between two data points can be
approximated efficiently from their codes by the precomputed lookup tables.
Traditionally, to encode a subvector of a data point in a subspace, only one
sub codeword in the corresponding sub codebook is selected, which may impose
strict restrictions on the search accuracy. In this paper, we propose a novel
approach, named Optimized Cartesian -Means (OCKM), to better encode the data
points for more accurate approximate nearest neighbor search. In OCKM, multiple
sub codewords are used to encode the subvector of a data point in a subspace.
Each sub codeword stems from different sub codebooks in each subspace, which
are optimally generated with regards to the minimization of the distortion
errors. The high-dimensional data point is then encoded as the concatenation of
the indices of multiple sub codewords from all the subspaces. This can provide
more flexibility and lower distortion errors than traditional methods.
Experimental results on the standard real-life datasets demonstrate the
superiority over state-of-the-art approaches for approximate nearest neighbor
search.Comment: to appear in IEEE TKDE, accepted in Apr. 201
Survey of Vector Database Management Systems
There are now over 20 commercial vector database management systems (VDBMSs),
all produced within the past five years. But embedding-based retrieval has been
studied for over ten years, and similarity search a staggering half century and
more. Driving this shift from algorithms to systems are new data intensive
applications, notably large language models, that demand vast stores of
unstructured data coupled with reliable, secure, fast, and scalable query
processing capability. A variety of new data management techniques now exist
for addressing these needs, however there is no comprehensive survey to
thoroughly review these techniques and systems. We start by identifying five
main obstacles to vector data management, namely vagueness of semantic
similarity, large size of vectors, high cost of similarity comparison, lack of
natural partitioning that can be used for indexing, and difficulty of
efficiently answering hybrid queries that require both attributes and vectors.
Overcoming these obstacles has led to new approaches to query processing,
storage and indexing, and query optimization and execution. For query
processing, a variety of similarity scores and query types are now well
understood; for storage and indexing, techniques include vector compression,
namely quantization, and partitioning based on randomization, learning
partitioning, and navigable partitioning; for query optimization and execution,
we describe new operators for hybrid queries, as well as techniques for plan
enumeration, plan selection, and hardware accelerated execution. These
techniques lead to a variety of VDBMSs across a spectrum of design and runtime
characteristics, including native systems specialized for vectors and extended
systems that incorporate vector capabilities into existing systems. We then
discuss benchmarks, and finally we outline research challenges and point the
direction for future work.Comment: 25 page
Relative NN-Descent: A Fast Index Construction for Graph-Based Approximate Nearest Neighbor Search
Approximate Nearest Neighbor Search (ANNS) is the task of finding the
database vector that is closest to a given query vector. Graph-based ANNS is
the family of methods with the best balance of accuracy and speed for
million-scale datasets. However, graph-based methods have the disadvantage of
long index construction time. Recently, many researchers have improved the
tradeoff between accuracy and speed during a search. However, there is little
research on accelerating index construction. We propose a fast graph
construction algorithm, Relative NN-Descent (RNN-Descent). RNN-Descent combines
NN-Descent, an algorithm for constructing approximate K-nearest neighbor graphs
(K-NN graphs), and RNG Strategy, an algorithm for selecting edges effective for
search. This algorithm allows the direct construction of graph-based indexes
without ANNS. Experimental results demonstrated that the proposed method had
the fastest index construction speed, while its search performance is
comparable to existing state-of-the-art methods such as NSG. For example, in
experiments on the GIST1M dataset, the construction of the proposed method is
2x faster than NSG. Additionally, it was even faster than the construction
speed of NN-Descent.Comment: Accepted by ACMMM 202
Fast Neighbor Search By Using Revised K-D Tree
We present two new neighbor query algorithms, including range query (RNN) and nearest neighbor (NN) query, based on revised k-d tree by using two techniques. The first technique is proposed for decreasing unnecessary distance computations by checking whether the cell of a node is inside or outside the specified neighborhood of query point, and the other is used to reduce redundant visiting nodes by saving the indices of descendant points. We also implement the proposed algorithms in Matlab and C. The Matlab version is to improve original RNN and NN which are based on k-d tree, C version is to improve k-Nearest neighbor query (kNN) which is based on buffer k-d tree. Theoretical and experimental analysis have shown that the proposed algorithms significantly improve the original RNN, NN and kNN in low dimension, respectively. The tradeoff is that the additional space cost of the revised k-d tree is approximately O(Ξ±nlogβ(n))
Vector Quantization Techniques for Approximate Nearest Neighbor Search on Large-Scale Datasets
The technological developments of the last twenty years are leading the world to a new era. The invention of the internet, mobile phones and smart devices are resulting in an exponential increase in data. As the data is growing every day, finding similar patterns or matching samples to a query is no longer a simple task because of its computational costs and storage limitations. Special signal processing techniques are required in order to handle the growth in data, as simply adding more and more computers cannot keep up.Nearest neighbor search, or similarity search, proximity search or near item search is the problem of finding an item that is nearest or most similar to a query according to a distance or similarity measure. When the reference set is very large, or the distance or similarity calculation is complex, performing the nearest neighbor search can be computationally demanding. Considering todayβs ever-growing datasets, where the cardinality of samples also keep increasing, a growing interest towards approximate methods has emerged in the research community.Vector Quantization for Approximate Nearest Neighbor Search (VQ for ANN) has proven to be one of the most efficient and successful methods targeting the aforementioned problem. It proposes to compress vectors into binary strings and approximate the distances between vectors using look-up tables. With this approach, the approximation of distances is very fast, while the storage space requirement of the dataset is minimized thanks to the extreme compression levels. The distance approximation performance of VQ for ANN has been shown to be sufficiently well for retrieval and classification tasks demonstrating that VQ for ANN techniques can be a good replacement for exact distance calculation methods.This thesis contributes to VQ for ANN literature by proposing five advanced techniques, which aim to provide fast and efficient approximate nearest neighbor search on very large-scale datasets. The proposed methods can be divided into two groups. The first group consists of two techniques, which propose to introduce subspace clustering to VQ for ANN. These methods are shown to give the state-of-the-art performance according to tests on prevalent large-scale benchmarks. The second group consists of three methods, which propose improvements on residual vector quantization. These methods are also shown to outperform their predecessors. Apart from these, a sixth contribution in this thesis is a demonstration of VQ for ANN in an application of image classification on large-scale datasets. It is shown that a k-NN classifier based on VQ for ANN performs on par with the k-NN classifiers, but requires much less storage space and computations
λμ©λ λ°μ΄ν° νμμ μν μ μ§μ μκ°ν μμ€ν μ€κ³
νμλ
Όλ¬Έ(λ°μ¬)--μμΈλνκ΅ λνμ :곡과λν μ»΄ν¨ν°κ³΅νλΆ,2020. 2. μμ§μ±.Understanding data through interactive visualization, also known as visual analytics, is a common and necessary practice in modern data science. However, as data sizes have increased at unprecedented rates, the computation latency of visualization systems becomes a significant hurdle to visual analytics. The goal of this dissertation is to design a series of systems for progressive visual analytics (PVA)βa visual analytics paradigm that can provide intermediate results during computation and allow visual exploration of these resultsβto address the scalability hurdle. To support the interactive exploration of data with billions of records, we first introduce SwiftTuna, an interactive visualization system with scalable visualization and computation components. Our performance benchmark demonstrates that it can handle data with four billion records, giving responsive feedback every few seconds without precomputation. Second, we present PANENE, a progressive algorithm for the Approximate k-Nearest Neighbor (AKNN) problem. PANENE brings useful machine learning methods into visual analytics, which has been challenging due to their long initial latency resulting from AKNN computation. In particular, we accelerate t-Distributed Stochastic Neighbor Embedding (t-SNE), a popular non-linear dimensionality reduction technique, which enables the responsive visualization of data with a few hundred columns. Each of these two contributions aims to address the scalability issues stemming from a large number of rows or columns in data, respectively. Third, from the users' perspective, we focus on improving the trustworthiness of intermediate knowledge gained from uncertain results in PVA. We propose a novel PVA concept, Progressive Visual Analytics with Safeguards, and introduce PVA-Guards, safeguards people can leave on uncertain intermediate knowledge that needs to be verified. We also present a proof-of-concept system, ProReveal, designed and developed to integrate seven safeguards into progressive data exploration. Our user study demonstrates that people not only successfully created PVA-Guards on ProReveal but also voluntarily used PVA-Guards to manage the uncertainty of their knowledge. Finally, summarizing the three studies, we discuss design challenges for progressive systems as well as future research agendas for PVA.νλ λ°μ΄ν° μ¬μ΄μΈμ€μμ μΈν°λν°λΈν μκ°νλ₯Ό ν΅ν΄ λ°μ΄ν°λ₯Ό μ΄ν΄νλ κ²μ νμμ μΈ λΆμ λ°©λ² μ€ νλμ΄λ€. κ·Έλ¬λ, μ΅κ·Ό λ°μ΄ν°μ ν¬κΈ°κ° νλ°μ μΌλ‘ μ¦κ°νλ©΄μ λ°μ΄ν° ν¬κΈ°λ‘ μΈν΄ λ°μνλ μ§μ° μκ°μ΄ μΈν°λν°λΈν μκ°μ λΆμμ ν° κ±Έλ¦Όλμ΄ λμλ€. λ³Έ μ°κ΅¬μμλ μ΄λ¬ν νμ₯μ± λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ μ μ§μ μκ°μ λΆμ(Progressive Visual Analytics)μ μ§μνλ μΌλ ¨μ μμ€ν
μ λμμΈνκ³ κ°λ°νλ€. μ΄λ¬ν μ μ§μ μκ°μ λΆμ μμ€ν
μ λ°μ΄ν° μ²λ¦¬κ° μμ ν λλμ§ μλλΌλ μ€κ° λΆμ κ²°κ³Όλ₯Ό μ¬μ©μμκ² μ 곡ν¨μΌλ‘μ¨ λ°μ΄ν°μ ν¬κΈ°λ‘ μΈν΄ λ°μνλ μ§μ° μκ° λ¬Έμ λ₯Ό μνν μ μλ€. 첫째λ‘, μμμ΅ κ±΄μ νμ κ°μ§λ λ°μ΄ν°λ₯Ό μκ°μ μΌλ‘ νμν μ μλ SwiftTuna μμ€ν
μ μ μνλ€. λ°μ΄ν° μ²λ¦¬ λ° μκ°μ ννμ νμ₯μ±μ λͺ©νλ‘ κ°λ°λ μ΄ μμ€ν
μ, μ½ 40μ΅ κ±΄μ νμ κ°μ§ λ°μ΄ν°μ λν μκ°νλ₯Ό μ μ²λ¦¬ μμ΄ μ μ΄λ§λ€ μ
λ°μ΄νΈν μ μλ κ²μΌλ‘ λνλ¬λ€. λμ§Έλ‘, κ·Όμ¬μ k-μ΅κ·Όμ μ (Approximate k-Nearest Neighbor) λ¬Έμ λ₯Ό μ μ§μ μΌλ‘ κ³μ°νλ PANENE μκ³ λ¦¬μ¦μ μ μνλ€. κ·Όμ¬μ k-μ΅κ·Όμ μ λ¬Έμ λ μ¬λ¬ κΈ°κ³ νμ΅ κΈ°λ²μμ μ°μμλ λΆκ΅¬νκ³ μ΄κΈ° κ³μ° μκ°μ΄ κΈΈμ΄μ μΈν°λν°λΈν μμ€ν
μ μ μ©νκΈ° νλ νκ³κ° μμλ€. PANENE μκ³ λ¦¬μ¦μ μ΄λ¬ν κΈ΄ μ΄κΈ° κ³μ° μκ°μ νκΈ°μ μΌλ‘ κ°μ νμ¬ λ€μν κΈ°κ³ νμ΅ κΈ°λ²μ μκ°μ λΆμμ νμ©ν μ μλλ‘ νλ€. νΉν, μ μ©ν λΉμ νμ μ°¨μ κ°μ κΈ°λ²μΈ t-λΆν¬ νλ₯ μ μλ² λ©(t-Distributed Stochastic Neighbor Embedding)μ κ°μνμ¬ μλ°± κ°μ μ°¨μμ κ°μ§λ λ°μ΄ν°λ₯Ό λΉ λ₯Έ μκ° λ΄μ μ¬μν μ μλ€. μμ λ μμ€ν
κ³Ό μκ³ λ¦¬μ¦μ΄ λ°μ΄ν°μ ν λλ μ΄μ κ°μλ‘ μΈν νμ₯μ± λ¬Έμ λ₯Ό ν΄κ²°νκ³ μ νλ€λ©΄, μΈ λ²μ§Έ μμ€ν
μμλ μ μ§μ μκ°μ λΆμμ μ λ’°λ λ¬Έμ λ₯Ό κ°μ νκ³ μ νλ€. μ μ§μ μκ°μ λΆμμμ μ¬μ©μμκ² μ£Όμ΄μ§λ μ€κ° κ³μ° κ²°κ³Όλ μ΅μ’
κ²°κ³Όμ κ·Όμ¬μΉμ΄λ―λ‘ λΆνμ€μ±μ΄ μ‘΄μ¬νλ€. λ³Έ μ°κ΅¬μμλ μΈμ΄νκ°λλ₯Ό μ΄μ©ν μ μ§μ μκ°μ λΆμ(Progressive Visual Analytics with Safeguards)μ΄λΌλ μλ‘μ΄ κ°λ
μ μ μνλ€. μ΄ κ°λ
μ μ¬μ©μκ° μ μ§μ νμμμ λ§μ£Όνλ λΆνμ€ν μ€κ° μ§μμ μΈμ΄νκ°λλ₯Ό λ¨κΈΈ μ μλλ‘ νμ¬ νμμμ μ»μ μ§μμ μ νλλ₯Ό μΆν κ²μ¦ν μ μλλ‘ νλ€. λν, μ΄λ¬ν κ°λ
μ μ€μ λ‘ κ΅¬ννμ¬ νμ¬ν ProReveal μμ€ν
μ μκ°νλ€. ProRevealλ₯Ό μ΄μ©ν μ¬μ©μ μ€νμμ μ¬μ©μλ€μ μΈμ΄νκ°λλ₯Ό μ±κ³΅μ μΌλ‘ λ§λ€ μ μμμ λΏλ§ μλλΌ, μ€κ° μ§μμ λΆνμ€μ±μ λ€λ£¨κΈ° μν΄ μΈμ΄νκ°λλ₯Ό μλ°μ μΌλ‘ μ΄μ©νλ€λ κ²μ μ μ μμλ€. λ§μ§λ§μΌλ‘, μ μΈ κ°μ§ μ°κ΅¬μ κ²°κ³Όλ₯Ό μ’
ν©νμ¬ μ μ§μ μκ°μ λΆμ μμ€ν
μ ꡬνν λμ λμμΈμ λμ μ ν₯ν μ°κ΅¬ λ°©ν₯μ λͺ¨μνλ€.CHAPTER1. Introduction 2
1.1 Background and Motivation 2
1.2 Thesis Statement and Research Questions 5
1.3 Thesis Contributions 5
1.3.1 Responsive and Incremental Visual Exploration of Large-scale Multidimensional Data 6
1.3.2 ProgressiveComputation of Approximate k-Nearest Neighbors and Responsive t-SNE 7
1.3.3 Progressive Visual Analytics with Safeguards 8
1.4 Structure of Dissertation 9
CHAPTER2. Related Work 11
2.1 Progressive Visual Analytics 11
2.1.1 Definitions 11
2.1.2 System Latency and Human Factors 13
2.1.3 Users, Tasks, and Models 15
2.1.4 Techniques, Algorithms, and Systems. 17
2.1.5 Uncertainty Visualization 19
2.2 Approaches for Scalable Visualization Systems 20
2.3 The k-Nearest Neighbor (KNN) Problem 22
2.4 t-Distributed Stochastic Neighbor Embedding 26
CHAPTER3. SwiTuna: Responsive and Incremental Visual Exploration of Large-scale Multidimensional Data 28
3.1 The SwiTuna Design 31
3.1.1 Design Considerations 32
3.1.2 System Overview 33
3.1.3 Scalable Visualization Components 36
3.1.4 Visualization Cards 40
3.1.5 User Interface and Interaction 42
3.2 Responsive Querying 44
3.2.1 Querying Pipeline 44
3.2.2 Prompt Responses 47
3.2.3 Incremental Processing 47
3.3 Evaluation: Performance Benchmark 49
3.3.1 Study Design 49
3.3.2 Results and Discussion 52
3.4 Implementation 56
3.5 Summary 56
CHAPTER4. PANENE:AProgressive Algorithm for IndexingandQuerying Approximate k-Nearest Neighbors 58
4.1 Approximate k-Nearest Neighbor 61
4.1.1 A Sequential Algorithm 62
4.1.2 An Online Algorithm 63
4.1.3 A Progressive Algorithm 66
4.1.4 Filtered AKNN Search 71
4.2 k-Nearest Neighbor Lookup Table 72
4.3 Benchmark. 78
4.3.1 Online and Progressive k-d Trees 78
4.3.2 k-Nearest Neighbor Lookup Tables 83
4.4 Applications 85
4.4.1 Progressive Regression and Density Estimation 85
4.4.2 Responsive t-SNE 87
4.5 Implementation 92
4.6 Discussion 92
4.7 Summary 93
CHAPTER5. ProReveal: Progressive Visual Analytics with Safeguards 95
5.1 Progressive Visual Analytics with Safeguards 98
5.1.1 Definition 98
5.1.2 Examples 101
5.1.3 Design Considerations 103
5.2 ProReveal 105
5.3 Evaluation 121
5.4 Discussion 127
5.5 Summary 130
CHAPTER6. Discussion 132
6.1 Lessons Learned 132
6.2 Limitations 135
CHAPTER7. Conclusion 137
7.1 Thesis Contributions Revisited 137
7.2 Future Research Agenda 139
7.3 Final Remarks 141
Abstract (Korean) 155
Acknowledgments (Korean) 157Docto