Apliquemos este algoritmo al dataset Iris considerando esta vez todas las características. Comenzamos cargando el dataset:
iris = sns.load_dataset("iris")
A continuación, importamos el algoritmo y lo instanciamos:
from sklearn.manifold import TSNE
tsne = TSNE(random_state = 0)
Lo entrenamos y transformamos los datos iniciales:
iris_t = tsne.fit_transform(iris.drop("species", axis = 1))
Por último, mostramos los datos resultantes en una gráfica:
sns.scatterplot(iris_t[:, 0], iris_t[:, 1], hue = iris.species);

Obsérvese, en todo caso, lo mucho que puede cambiar la visualización escogiendo unos parámetros diferentes:
tsne = TSNE(perplexity = 9, early_exaggeration = 11, learning_rate = 451, random_state = 0)
iris_t = tsne.fit_transform(iris.drop("species", axis = 1))
sns.scatterplot(iris_t[:, 0], iris_t[:, 1], hue = iris.species);
