paper 13

From statwiki
Revision as of 15:15, 23 June 2009 by WikiSysop (talk | contribs) (Created page with '==Random mapping (Random Projection)== For vector <math>x \in R^{N}</math> and a Random matrix <math> R </math>, <math> Rx=y </math> is called Random map (projection) of <math>x<...')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Random mapping (Random Projection)

For vector [math]x \in R^{N}[/math] and a Random matrix [math] R [/math], [math] Rx=y [/math] is called Random map (projection) of [math]x[/math], where [math] y\in R^{M}[/math]. [math]y[/math] can be written as
[math] y= \sum_{i}x_{i}r_{i} [/math]
where [math]r_{i}'s[/math] are the columns of [math]R[/math]. In Random mapping orthogonal directions are replaced by random directions
By definition the number of columns of matrix [math]R[/math] called the Number of Random projections ([math]M[/math]) required to project a K-dimensional manifold from [math]R^{N}[/math] into [math]R^{M}[/math]
For Large [math]N[/math] applying adaptive (data dependent) algorithms like Isomap, LLE, etc are too much costly and not feasible so, it is reasonable to use random projection (non-adaptive method)to map data into lower dimension ([math]M[/math]) and then apply clustering algorithms and also other dimensionality reduction algorithms, because Random Mapping almost preserves the metric structure. Specially, If [math]R[/math] is orthonormal then similarity under random mapping is exactly preserved.
For example if Cosine of the angle made by two vectors is the measure for their similarity, suppose [math]y_{1}[/math] and [math]y_{2}[/math] are the random maps of [math]x_{1}[/math] and [math]x_{2}[/math] then we have
[math] y^{T}_{1}y_{2}=x^{T}_{1}R^{T}Rx_{2} [/math]
where [math]R[/math] can be written as
[math] R^{T}R=I+\epsilon [/math] in which

[math] \epsilon_{ij}= \left\{\begin{matrix} r^{T}_{i}r_{j} & \text{if } j \neq i \\ 0 & \text{if} i=j \end{matrix}\right.[/math]
now for special case where [math]R[/math] is orthonormal,
[math]R^{T}R=I [/math]
since [math]\epsilon_{ij}=r^{T}_{i}r_{j}=0[/math]
so
[math]y^{T}_{1}y_{2}=x^{T}_{1}x_{2}[/math]

As an interesting result about random matrix [math]R[/math] it can be shown that when [math]M[/math] (reduced dimension) is large then [math]\epsilon_{ij}[/math] are independently distributed as Normal distribution wit mean [math]0[/math] and Variance [math]1/M[/math]

Estimating The Intrinsic Dimension

Intrinsic Dimension ([math]K[/math]) is an important input for almost all metric learning algorithms. Grossberger-Proccacia (GP) algorithm can help us to estimate [math]K[/math] using [math]n[/math] sample points selected from [math]K[/math]-dimensional manifold embedded in [math]R^{N}[/math]. Define

[math] C_{n}(r)=\frac{1}{n(n-1)} \sum_{i\neq j}I \left\|x_{i}-x_{j}\right\|\lt r [/math]

which basically measures the probability of a random pairs of points havinng distances less than [math]r[/math]. Then estimate of [math]K[/math] is obtained the following formula (known as the Scale-dependent Correlation Dimension of [math]X=(x_{1},x_{2},...,x_{n})[/math]):

[math] \hat{D}_{corr}(r_{1},r_{2})=\frac{log(C_{n}(r_{1}))-log(C_{n}(r_{2}))}{log(r_{1})-log(r_{2})} [/math]

when [math]r_{1}[/math] and [math]r_{2}[/math] are selected such that they cover the biggest range of graph at which [math]C_{n}(r)[/math] is linear, GP gives the best estimate. another point is that [math]\widehat{K}[/math] obtained GP algorithm based on finite sample points is Biased estimate.

Upper and Lower Bound for estimator [math]K[/math]

Baraniuk and Wakin (2007) showed that if the number of random projection [math](M)[/math] is large we can be sure that the projection of a smooth manifold into lower dimensional space will be a near-isometric embedding. The point is that [math]M[/math] is only neede to have linear relation with [math]K[/math] and Logarithmic relationship with [math]N[/math] like
[math] M=c K log(N) [/math]
Also we mentioned that, since random mapping almost preserves metric structure so we need to estimate the ID of the projected data.
Chinmay Hedg and colleagues (2007) showed that under some conditions, for random orthoprojector [math]R[/math] (consists of [math]M[/math] orthogonalized vectors of length [math]N[/math]) and sequence of sample [math]X=\left\{x_{1},x_{2},...\right\}[/math] it can be shown that with probability [math]1-\rho[/math]

[math] (1-\delta)\hat{K}\leq \hat{K}_{R}\leq (1+\delta)\hat{K} [/math]

for fix [math]0 \lt \delta \lt 1[/math] and [math]0 \lt \rho \lt 1[/math]

Lower Bound for the number of Random Projections

We can also find the minimum number of projection needed so that, the difference between residuals obtained from applying Isomap on projected data and original data does not exceed an arbitary value.

Let [math] \Gamma=max_{1\leq i,j\leq n}d_{iso}(x_{i},x_{j})[/math] and call it Diameter of data set [math]X=\left\{x_{1},x_{2},...,x_{n}\right\}[/math] where [math]d_{iso}(x_{i},x_{j})[/math] is the Isomap estimate of geodesic distance, and also let [math]L[/math] and [math]L_{R}[/math] be the residuals obtained when Isomap generated [math]K[/math]-dimentional embeding of [math]X[/math] and its progection [math]RX[/math], respectively. then we have,

[math] L_{R}\lt L+C(n)\Gamma^{2}\epsilon[/math]

in which [math]C(n)[/math] is a function of the number of sample points.

practical algorithm to determine [math]K[/math] and [math]M[/math]

The above theorems are not able to give us the estimates without some prior information (for example about the volume and condition number of manifold) so mostly, they are called Theoretical Theorems. There is an algorithm to make it practically possible which is called ML-RP Algorithm.

let [math]M=1[/math] and select a random vector for [math]R[/math]
While residual variance [math] \gt \delta[/math] do

 [math](i)[/math] for [math]X=\left\{x_{1},x_{2},...,x_{n}\right\}[/math] estimate [math]K[/math] using GP algorithm.
[math](ii)[/math] Use Isomap to produce an embedding in to [math]\hat{K}[/math]-dimensional space.
[math](iii)[/math] let [math]M=M+1[/math] and add one row to [math]R[/math].


EndWhile
Print [math]M[/math] and [math]\hat{K}[/math]