본문 바로가기

Computer Vision

t-SNE implementation code (pytorch)

반응형

이전에 classification 결과 분석 때문에 사용했던 t-SNE 분석 및 plot 코드입니다.

test_features 에 network의 마지막단 feature를 대입해주면 됩니다. 

# TSNE requirements
from sklearn.manifold import TSNE
import seaborn as sns

 #extract last features only
test_features = test_features.data[:,-1,:]
tsne = TSNE(n_components=2, perplexity=10, n_iter=300)
tsne_ref = tsne.fit_transform(test_features)
df = pd.DataFrame(tsne_ref, index=tsne_ref[0:,1])
df['x'] = tsne_ref[:,0]
df['y'] = tsne_ref[:,1]
df['Label'] = y[:]
#sns.scatterplot(x="x", y="y", hue="y", palette=sns.color_palette("hls", 10), data=df)
sns.lmplot(x="x", y="y", data=df, fit_reg=False, legend=True, size=9, hue='Label', scatter_kws={"s":200, "alpha":0.5})
plt.title('t-SNE result', weight='bold').set_fontsize('14')
plt.xlabel('x', weight='bold').set_fontsize('10')
plt.ylabel('y', weight='bold').set_fontsize('10')
plt.show()

 

반응형