I have been trying to understand t-SNE for a while now and I have this very basic question on the comparison of PCA and t-SNE, on which I would really appreciate some help. In case of PCA suppose the Eigen vectors (say first $m$ PCs are retained) are $U_{n\times m}$ and your data matrix is $X_{n\times p}$ with covariance matrix $C_{n\times n}=XX^T$, then the reduced data set is obtained by performing a projection $X_r=U^TX$. From this $X_r$ one can get back $X$ by simply multiplying $X_r$ with $U$. Thus $U$ acts as the basis functions on which the data is projected. I was wondering what would be the basis function for t-SNE type dimensionality reduction algorithm. I know it's non-linear so such a linear projection would not be available, but is there a way to get back the original data set from the reduced data set as obtained as the output of t-SNE algorithm? Apologies if this is too intuitive or fundamental and is simply because of my lack of understanding t-SNE. Any links to material related to this would be appreciated
1 Answer
There is no closed form.
It is a local embedding, and you really cannot expect to find a good inverse mapping.
It's doable, but not very good. Use gradient descent in the input domain. Just like tSNE but with the t-distribution and the Gaussian reversed. However, the original Gaussian has a sigma parameter that you also need to find. So you need to also optimize this to have the desired perplexity. You'll need to do the math for this optimization problem yourself.