The Omni-Family of All-Purpose Access Methods: a Simple and Effective Way to Make Similarity Search More Efficient
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Lecture 04 Linear Structures Sort
Algorithmics (6EAP) MTAT.03.238 Linear structures, sorting, searching, etc Jaak Vilo 2018 Fall Jaak Vilo 1 Big-Oh notation classes Class Informal Intuition Analogy f(n) ∈ ο ( g(n) ) f is dominated by g Strictly below < f(n) ∈ O( g(n) ) Bounded from above Upper bound ≤ f(n) ∈ Θ( g(n) ) Bounded from “equal to” = above and below f(n) ∈ Ω( g(n) ) Bounded from below Lower bound ≥ f(n) ∈ ω( g(n) ) f dominates g Strictly above > Conclusions • Algorithm complexity deals with the behavior in the long-term – worst case -- typical – average case -- quite hard – best case -- bogus, cheating • In practice, long-term sometimes not necessary – E.g. for sorting 20 elements, you dont need fancy algorithms… Linear, sequential, ordered, list … Memory, disk, tape etc – is an ordered sequentially addressed media. Physical ordered list ~ array • Memory /address/ – Garbage collection • Files (character/byte list/lines in text file,…) • Disk – Disk fragmentation Linear data structures: Arrays • Array • Hashed array tree • Bidirectional map • Heightmap • Bit array • Lookup table • Bit field • Matrix • Bitboard • Parallel array • Bitmap • Sorted array • Circular buffer • Sparse array • Control table • Sparse matrix • Image • Iliffe vector • Dynamic array • Variable-length array • Gap buffer Linear data structures: Lists • Doubly linked list • Array list • Xor linked list • Linked list • Zipper • Self-organizing list • Doubly connected edge • Skip list list • Unrolled linked list • Difference list • VList Lists: Array 0 1 size MAX_SIZE-1 3 6 7 5 2 L = int[MAX_SIZE] -
The Fractal Dimension Making Similarity Queries More Efficient
The Fractal Dimension Making Similarity Queries More Efficient Adriano S. Arantes, Marcos R. Vieira, Agma J. M. Traina, Caetano Traina Jr. Computer Science Department - ICMC University of Sao Paulo at Sao Carlos Avenida do Trabalhador Sao-Carlense, 400 13560-970 - Sao Carlos, SP - Brazil Phone: +55 16-273-9693 {arantes | mrvieira | agma | caetano}@icmc.usp.br ABSTRACT time series, among others, are not useful, and the simila- This paper presents a new algorithm to answer k-nearest rity between pairs of elements is the most important pro- neighbor queries called the Fractal k-Nearest Neighbor (k- perty in such domains [5]. Thus, a new class of queries, ba- NNF ()). This algorithm takes advantage of the fractal di- sed on algorithms that search for similarity among elements mension of the dataset under scan to estimate a suitable emerged as more adequate to manipulate these data. To radius to shrinks a query that retrieves the k-nearest neigh- be able to apply similarity queries over elements of a data bors of a query object. k-NN() algorithms starts searching domain, a dissimilarity function, or a “distance function”, for elements at any distance from the query center, progres- must be defined on the domain. A distance function δ() ta- sively reducing the allowed distance used to consider ele- kes pairs of elements of the domain, quantifying the dissimi- ments as worth to analyze. If a proper radius can be set larity among them. If δ() satisfies the following properties: to start the process, a significant reduction in the number for any elements x, y and z of the data domain, δ(x, x) = 0 of distance calculations can be achieved. -
Pivot Selection Method for Optimizing Both Pruning and Balancing in Metric Space Indexes
Pivot Selection Method for Optimizing both Pruning and Balancing in Metric Space Indexes Hisashi Kurasawa1, Daiji Fukagawa2, Atsuhiro Takasu3, and Jun Adachi3 1 The University of Tokyo, 2-1-2 Hitotsubashi, Chiyoda-ku, Tokyo, Japan 2 Doshisha University, 1-3 Tatara Miyakodani, Kyotanabe-shi, Kyoto, Japan 3 National Institute of Informatics, 2-1-2 Hitotsubashi, Chiyoda-ku, Tokyo, Japan Abstract. We researched to try to find a way to reduce the cost of nearest neighbor searches in metric spaces. Many similarity search indexes recur- sively divide a region into subregions by using pivots, and construct a tree structure index. A problem in the existing indexes is that they only focus on the pruning objects and do not take into consideration the tree balanc- ing. The balance of the indexes depends on the data distribution and the indexes don’t reduce the search cost for all data. We propose a similar- ity search index called the Partitioning Capacity Tree (PCTree). PCTree automatically optimizes the pivot selection based on both the balance of the regions partitioned by a pivot and the estimated effectiveness of the search pruning by the pivot. As a result, PCTree reduces the search cost for various data distributions. Our evaluations comparing it with four in- dexes on three real datasets showed that PCTree successfully reduces the search cost and is good at handling various data distributions. Keywords: Similarity Search, Metric Space, Indexing. 1 Introduction Finding similar objects in a large dataset is a fundamental process of many applications, such as image completion [7]. These applications can be speeded up by reducing the query execution cost of a similarity search. -
Peer-To-Peer Similarity Search Based on M-Tree Indexing
Peer-to-Peer Similarity Search based on M-Tree Indexing Akrivi Vlachou1?, Christos Doulkeridis1?, and Yannis Kotidis2 1Dept.of Computer and Information Science, Norwegian University of Science and Technology 2Dept.of Informatics, Athens University of Economics and Business fvlachou,[email protected], [email protected] Abstract. Similarity search in metric spaces has several important applications both in centralized and distributed environments. In centralized applications, such as similarity-based image retrieval, usually a server indexes its data with a state- of-the-art centralized metric indexing technique, such as the M-Tree. In this pa- per, we propose a framework for distributed similarity search, where each par- ticipating peer stores its own data autonomously, under the assumption that data is indexed locally by peers using M-Trees. In order to support scalability and efficiency of search, we adopt a super-peer architecture, where super-peers are responsible for query routing. We propose the construction of metric routing in- dices suitable for distributed similarity search in metric spaces. We study the performance of the proposed framework using both synthetic and real data. 1 Introduction Similarity search in metric spaces has received significant attention in centralized set- tings [1, 6], but also recently in decentralized environments [3, 5, 8]. A prominent appli- cation is distributed search for multimedia content, such as images, video or plain text. Existing approaches for P2P metric-based similarity search mainly rely on a structured P2P overlay, which is used to intentionally store objects to peers [5, 8]. The aim is to achieve high parallelism and share the high processing cost over a set of cooperative computers. -
Similarity Searching in Peer-To-Peer Environment
Masaryk University in Brno Faculty of Informatics ^TIS ftp Similarity Searching in Peer-to-Peer Environment Dissertation Proposal Mgr. David Novák Supervisor: Prof. Ing. Pavel Zezula, CSc. In Brno, January 2006 Supervisor Contents 1 Introduction 1 2 Metrie Space Indexing 2 2.1 Metrie Space Model 2 2.1.1 Metrie Space 2 2.1.2 Similarity Queries 2 2.1.3 Metrie Distance Measures 3 2.2 Metrie Partitioning Principles 5 2.2.1 Ball Partitioning 5 2.2.2 Excluded Middle Partitioning 5 2.2.3 Generalized Hyperplane Partitioning 6 2.2.4 Voronoi-like Partitioning 6 2.3 Search Space Pruning Policies 6 2.3.1 Object-Pivot Distance Constraint 6 2.3.2 Range-Pivot Distance Constraint 7 2.3.3 Double-Pivot Distance Constraint 7 2.3.4 Pivot Filtering 7 2.4 Metric Data Structures 7 2.4.1 Vantage Point Tree 8 2.4.2 Generalized Hyperplane Tree 8 2.4.3 M-Tree 8 2.4.4 D-Index 8 3 Peer-to-Peer Structures 9 3.1 Distributed Hash Tables 9 3.1.1 Chord 9 3.1.2 CAN 10 3.2 One-Dimensional Range Queries 10 3.2.1 P-Grid 10 3.2.2 Skip Graphs & SkipNet 11 3.2.3 P-Tree 12 3.3 Range Queries over Multiple Attributes 12 3.3.1 SCRAP & HSFC-based 12 3.3.2 ZNet 12 3.3.3 MAAN 12 3.3.4 Mercury 13 3.3.5 MURK 13 3.4 Nearest Neighbors Queries 13 3.4.1 pSearch 13 3.4.2 Distributed Quadtree 14 3.4.3 SWAM 14 3.5 Metric Space Structures 14 3.5.1 GHT* 15 3.5.2 MCAN 16 4 Thesis Plan 16 4.1 Overview 16 4.2 Objectives 17 4.3 System Structure Proposal 17 4.4 Future Plans 19 References 20 1 Introduction The diffusion of computer technology into a wide spectrum of human activities leads to formation of a variety of new complex data types. -
Prefix Hash Tree an Indexing Data Structure Over Distributed Hash
Prefix Hash Tree An Indexing Data Structure over Distributed Hash Tables Sriram Ramabhadran ∗ Sylvia Ratnasamy University of California, San Diego Intel Research, Berkeley Joseph M. Hellerstein Scott Shenker University of California, Berkeley International Comp. Science Institute, Berkeley and and Intel Research, Berkeley University of California, Berkeley ABSTRACT this lookup interface has allowed a wide variety of Distributed Hash Tables are scalable, robust, and system to be built on top DHTs, including file sys- self-organizing peer-to-peer systems that support tems [9, 27], indirection services [30], event notifi- exact match lookups. This paper describes the de- cation [6], content distribution networks [10] and sign and implementation of a Prefix Hash Tree - many others. a distributed data structure that enables more so- phisticated queries over a DHT. The Prefix Hash DHTs were designed in the Internet style: scala- Tree uses the lookup interface of a DHT to con- bility and ease of deployment triumph over strict struct a trie-based structure that is both efficient semantics. In particular, DHTs are self-organizing, (updates are doubly logarithmic in the size of the requiring no centralized authority or manual con- domain being indexed), and resilient (the failure figuration. They are robust against node failures of any given node in the Prefix Hash Tree does and easily accommodate new nodes. Most impor- not affect the availability of data stored at other tantly, they are scalable in the sense that both la- nodes). tency (in terms of the number of hops per lookup) and the local state required typically grow loga- Categories and Subject Descriptors rithmically in the number of nodes; this is crucial since many of the envisioned scenarios for DHTs C.2.4 [Comp. -
Efficient Nearest-Neighbor Computation for GPU-Based Motion
Efficient Nearest-Neighbor Computation for GPU-based Motion Planning Jia Pan and Christian Lauterbach and Dinesh Manocha Department of Computer Science, UNC Chapel Hill http://gamma.cs.unc.edu/gplanner Abstract— We present a novel k-nearest neighbor search nearest neighbor computation, local planning and graph algorithm (KNNS) for proximity computation in motion search using parallel algorithms. In practice, the overall planning algorithm that exploits the computational capa- planning can be one or two orders of magnitude faster bilities of many-core GPUs. Our approach uses locality sen- sitive hashing and cuckoo hashing to construct an efficient than current CPU-based planners. KNNS algorithm that has linear space and time complexity We present a novel algorithm for GPU-based nearest and exploits the multiple cores and data parallelism effec- neighbors computation. Our formulation is based on tively. In practice, we see magnitude improvement in speed locality sensitive hashing (LSH) and cuckoo hashing and scalability over prior GPU-based KNNS algorithm. techniques, which can compute approximate k-nearest On some benchmarks, our KNNS algorithm improves the performance of overall planner by 20 − 40 times for CPU- neighbors in higher dimensions. We present parallel based planner and up to 2 times for GPU-based planner. algorithms for LSH computation as well KNN compu- tation that exploit the high number of cores and data parallelism of the GPUs. Our approach can perform the I. INTRODUCTION computation using Euclidean as well as non-Euclidean Sampling-based motion planning algorithms are distance metrics. Furthermore, it is memory efficient widely used in robotics and related areas to compute and can handle millions of sample points within 1GB collision-free motion for the robots. -
Distributed Computation of the Knn Graph for Large High-Dimensional Point Sets
J of Parallel and Distributed Computing, 2007, vol. 67(3), pp. 346–359 Distributed Computation of the knn Graph for Large High-Dimensional Point Sets Erion Plaku a, Lydia E. Kavraki a,∗ aRice University, Department of Computer Science, Houston, Texas 77005, USA Abstract High-dimensional problems arising from robot motion planning, biology, data mining, and geographic information systems often require the computation of k nearest neighbor (knn) graphs. The knn graph of a data set is obtained by connecting each point to its k closest points. As the research in the above- mentioned fields progressively addresses problems of unprecedented complexity, the demand for com- puting knn graphs based on arbitrary distance metrics and large high-dimensional data sets increases, exceeding resources available to a single machine. In this work we efficiently distribute the computation of knn graphs for clusters of processors with message passing. Extensions to our distributed framework include the computation of graphs based on other proximity queries, such as approximate knn or range queries. Our experiments show nearly linear speedup with over one hundred processors and indicate that similar speedup can be obtained with several hundred processors. Key words: Nearest neighbors; Approximate nearest neighbors; knn graphs; Range queries; Metric spaces; Robotics; Distributed and Parallel Algorithms 1 Introduction The computation of proximity graphs for large high-dimensional data sets in arbitrary metric spaces is often necessary for solving problems arising from robot motion planning [14,31,35,40,45, 46,56], biology [3,17,33,39,42,50,52], pattern recognition [21], data mining [18,51], multimedia systems [13], geographic information systems [34, 43, 49], and other research fields. -
An Investigation of Practical Approximate Nearest Neighbor Algorithms
An Investigation of Practical Approximate Nearest Neighbor Algorithms Ting Liu, Andrew W. Moore, Alexander Gray and Ke Yang School of Computer Science Carnegie-Mellon University Pittsburgh, PA 15213 USA ftingliu, awm, agray, [email protected] Abstract This paper concerns approximate nearest neighbor searching algorithms, which have become increasingly important, especially in high dimen- sional perception areas such as computer vision, with dozens of publica- tions in recent years. Much of this enthusiasm is due to a successful new approximate nearest neighbor approach called Locality Sensitive Hash- ing (LSH). In this paper we ask the question: can earlier spatial data structure approaches to exact nearest neighbor, such as metric trees, be altered to provide approximate answers to proximity queries and if so, how? We introduce a new kind of metric tree that allows overlap: certain datapoints may appear in both the children of a parent. We also intro- duce new approximate k-NN search algorithms on this structure. We show why these structures should be able to exploit the same random- projection-based approximations that LSH enjoys, but with a simpler al- gorithm and perhaps with greater efficiency. We then provide a detailed empirical evaluation on five large, high dimensional datasets which show up to 31-fold accelerations over LSH. This result holds true throughout the spectrum of approximation levels. 1 Introduction The k-nearest-neighbor searching problem is to find the k nearest points in a dataset X ⊂ RD containing n points to a query point q 2 RD, usually under the Euclidean distance. It has applications in a wide range of real-world settings, in particular pattern recognition, machine learning [7] and database querying [11]. -
Search Trees
The Annals of Applied Probability 2014, Vol. 24, No. 3, 1269–1297 DOI: 10.1214/13-AAP948 c Institute of Mathematical Statistics, 2014 SEARCH TREES: METRIC ASPECTS AND STRONG LIMIT THEOREMS By Rudolf Grubel¨ Leibniz Universit¨at Hannover We consider random binary trees that appear as the output of certain standard algorithms for sorting and searching if the input is random. We introduce the subtree size metric on search trees and show that the resulting metric spaces converge with probability 1. This is then used to obtain almost sure convergence for various tree functionals, together with representations of the respective limit ran- dom variables as functions of the limit tree. 1. Introduction. A sequential algorithm transforms an input sequence t1,t2,... into an output sequence x1,x2,... where, for all n ∈ N, xn+1 de- pends on xn and tn+1 only. Typically, the output variables are elements of some combinatorial family F, each x ∈ F has a size parameter φ(x) ∈ N and xn is an element of the set Fn := {x ∈ F : φ(x)= n} of objects of size n. In the probabilistic analysis of such algorithms, one starts with a stochastic model for the input sequence and is interested in certain aspects of the out- put sequence. The standard input model assumes that the ti’s are the values of a sequence η1, η2,... of independent and identically distributed random variables. For random input of this type, the output sequence then is the path of a Markov chain X = (Xn)n∈N that is adapted to the family F in the sense that (1) P (Xn ∈ Fn) = 1 for all n ∈ N. -
Indexing the Fully Evolvement of Spatiotemporal Objects
WSEAS TRANSACTIONS on INFORMATION SCIENCE and APPLICATIONS Hung-Yi Lin Indexing the Fully Evolvement of Spatiotemporal Objects HUNG-YI LIN Department of Distribution Management National Taichung Institute of Technology 129, Sanmin Rd., Sec. 3, Taichung TAIWAN, R.O.C. [email protected] Abstract: -This paper proposes a novel economic and efficient framework of indexing spatiotemporal objects based on compressed B+-trees. Our new index technique can compress data records in leaves and in turn reduce index size to improve update and query efficiencies. The contribution of our framework is threefold. First, the proposed index structures are more succinct to resident in the main memory. Second, sufficient data with high similarity inside all indexing pages for the high retrieval quality of cache fetches are attainable. Third, in addition to process multi-dimensional spatial information, our framework is typically appropriate to model the valid- and transaction-time of a fact. We present the index efficiency analyses and experimental results which show that our technique outperforms others. Key-Words: - Spatio-temporal databases, Compressed B+-trees, Trajectories, Data aggregation, Storage utilization. 1 Introduction objects occupy). Spatial information varies from Data management applications are rapidly time to time. Both point and region objects are developing that enables tracking of the locations of handled in this paper. moving objects. Many applications create such Spatio-temporal databases [19] attempt to mobile data, including traffic surveillance or real- achieve an appropriate kind of interaction between time navigation systems, the positioning of users spatial and temporal data and support an efficient with wireless devices, and multimedia application and feasible solution to users’queries. -
K-NN Search in Non-Clustered Case Using K-P-Tree
IDEA GROUP PUBLISHING ITP4547 701 E. Chocolate Avenue, Suite 200, Hershey PA 17033, USA Tel: 717/533-8845; Fax 717/533-8661; URL-http://www.idea-group.com 694 Information Technology and Organizations K-NN Search in Non-Clustered Case Using K-P-tree Yang Zhi-rong and Li Lei Software Institute, Sun Yat-Sen University, Guangzhou, 510275, China Tel: 8620-83836474, or 8620-84110658-100, Fax: 8620-84037785 [email protected] ABSTRACT Although it has been shown that all current indexing techniques degrade 2. NON-CLUSTERED CASE to linear search for sufficiently high dimensions, exact answers are still Most current approaches attempt to develop a universally appli- essential for many applications. A concept of “non-clustered” case is cable system and they overlook the peculiarity of the pattern distribu- proposed in this paper. And aiming at the characteristics of such case, a tion. Actually, to differentiate the density level is very important in this new index structure named K-P-tree and a K-NN searching algorithm process. based on it is presented. By starting with the Self-Organized Mapping A critical concept to describe distribution density is method, the partition procedure of K-P-tree does not depend on the cluster dimensionality. Furthermore, the partition locating and pruning also which usually refers to a subset of the patterns, where the distances benefit from the fact that only the inner borders between the partitions are between its members are far less than those between its members and recorded merely via some hyper planes. The query experiments indicate other patterns.