In mathematics and statistics, random projection is a technique used to
reduce the dimensionality of a set of points which lie in
Euclidean space
Euclidean space is the fundamental space of geometry, intended to represent physical space. Originally, that is, in Euclid's ''Elements'', it was the three-dimensional space of Euclidean geometry, but in modern mathematics there are Euclidean sp ...
. Random projection methods are known for their power, simplicity, and low error rates when compared to other methods. According to experimental results, random projection preserves distances well, but empirical results are sparse. They have been applied to many natural language tasks under the name
random indexing.
Dimensionality reduction
Dimensionality reduction, as the name suggests, is reducing the number of random variables using various mathematical methods from statistics and machine learning. Dimensionality reduction is often used to reduce the problem of managing and manipulating large data sets. Dimensionality reduction techniques generally use linear transformations in determining the intrinsic dimensionality of the manifold as well as extracting its principal directions. For this purpose there are various related techniques, including:
principal component analysis
Principal component analysis (PCA) is a popular technique for analyzing large datasets containing a high number of dimensions/features per observation, increasing the interpretability of data while preserving the maximum amount of information, and ...
,
linear discriminant analysis
Linear discriminant analysis (LDA), normal discriminant analysis (NDA), or discriminant function analysis is a generalization of Fisher's linear discriminant, a method used in statistics and other fields, to find a linear combination of features ...
,
canonical correlation analysis,
discrete cosine transform, random projection, etc.
Random projection is a simple and computationally efficient way to reduce the dimensionality of data by trading a controlled amount of error for faster processing times and smaller model sizes. The dimensions and distribution of random projection matrices are controlled so as to approximately preserve the pairwise distances between any two samples of the dataset.
Method
The core idea behind random projection is given in the
Johnson-Lindenstrauss lemma, which states that if points in a vector space are of sufficiently high dimension, then they may be projected into a suitable lower-dimensional space in a way which approximately preserves the distances between the points.
In random projection, the original d-dimensional data is projected to a k-dimensional (k << d) subspace, using a random
- dimensional matrix R whose columns have unit lengths. Using matrix notation: If
is the original set of N d-dimensional observations, then
is the projection of the data onto a lower k-dimensional subspace. Random projection is computationally simple: form the random matrix "R" and project the
data matrix X onto K dimensions of order
. If the data matrix X is sparse with about c nonzero entries per column, then the complexity of this operation is of order
.
Gaussian random projection
The random matrix R can be generated using a Gaussian distribution. The first row is a random unit vector uniformly chosen from
. The second row is a random unit vector from the space orthogonal to the first row, the third row is a random unit vector from the space orthogonal to the first two rows, and so on. In this way of choosing R, and the following properties are satisfied:
* Spherical symmetry: For any orthogonal matrix
, RA and R have the same distribution.
* Orthogonality: The rows of R are orthogonal to each other.
* Normality: The rows of R are unit-length vectors.
More computationally efficient random projections
Achlioptas has shown that the Gaussian distribution can be replaced by a much simpler distribution such as
:
This is efficient for database applications because the computations can be performed using integer arithmetic. More related study is conducted in.
It was later shown how to use integer arithmetic while making the distribution even sparser, having very few nonzeroes per column, in work on the Sparse JL Transform. This is advantageous since a sparse embedding matrix means being able to project the data to lower dimension even faster.
Random Projection with Quantization
Random projection can be further condensed by quantization (discretization), with 1-bit (sign random projection) or multi-bits. It is the building block of SimHash, RP tree, and other memory efficient estimation and learning methods.
Large quasiorthogonal bases
The
Johnson-Lindenstrauss lemma states that large sets of vectors in a high-dimensional space can be linearly mapped in a space of much lower (but still high) dimension ''n'' with approximate preservation of distances. One of the explanations of this effect is the exponentially high quasiorthogonal dimension of ''n''-dimensional
Euclidean space
Euclidean space is the fundamental space of geometry, intended to represent physical space. Originally, that is, in Euclid's ''Elements'', it was the three-dimensional space of Euclidean geometry, but in modern mathematics there are Euclidean sp ...
. There are exponentially large (in dimension ''n'') sets of almost
orthogonal
In mathematics, orthogonality is the generalization of the geometric notion of '' perpendicularity''.
By extension, orthogonality is also used to refer to the separation of specific features of a system. The term also has specialized meanings in ...
vectors (with small value of
inner products
In mathematics, an inner product space (or, rarely, a Hausdorff pre-Hilbert space) is a real vector space or a complex vector space with an operation called an inner product. The inner product of two vectors in the space is a scalar, often ...
) in ''n''–dimensional Euclidean space. This observation is useful in
indexing of high-dimensional data.
Quasiorthogonality of large random sets is important for methods of random approximation in
machine learning
Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence.
Machine ...
. In high dimensions, exponentially large numbers of randomly and independently chosen vectors from equidistribution on a sphere (and from many other distributions) are almost orthogonal with probability close to one.
This implies that in order to represent an element of such a high-dimensional space by linear combinations of randomly and independently chosen vectors, it may often be necessary to generate samples of exponentially large length if we use bounded coefficients in linear combinations. On the other hand, if coefficients with arbitrarily large values are allowed, the number of randomly generated elements that are sufficient for approximation is even less than dimension of the data space.
Implementations
RandPro- An R package for random projection
- A module for random projection from the
scikit-learn Python library
* Weka implementatio
See also
*
Locality-sensitive hashing
*
Random mapping For data analysis, Random mapping (RM) is a fast dimensionality reduction method categorized as feature extraction method. The RM consists in generation of a random matrix that is multiplied by each original vector and result in a reduced vector. W ...
*
Johnson-Lindenstrauss lemma
References
Further reading
*
*
* {{cite report , last1=Ramdas , first1=Aditya , citeseerx=10.1.1.377.2593 , title=A Random Introduction To Random Projections
Dimension reduction