I used t-SNE to reduce the dimensionality of my data set from 18 to 2, then I used kmeans to cluster the 2D data points.
Using this, print(kmeans.cluster_centers_)
I now have an array of the 2D centroids of the clusters, but I want to get the 18D original data points that these centroids corresponds.
Is there a way to work t-SNE backwards? Thanks!
Unfortunately the answer is no, there is not.
t-SNE computes a nonlinear mapping of each point individually, based on probability theory. It does not provide a continuously defined function nor its inverse.
You could try to interpolate the 18D coordinates based on the cluster members.
In general you might revisit how much sense it really makes to run k-means on a t-SNE result.