首先求助了一下
在深度网络绘制 t-SNE 图时,通常最常用的是导出网络的倒数第二层(即倒数第二层的隐藏层)的输出。这是因为倒数第二层隐藏层的特征表示通常可以很好地捕捉数据的高级特征,同时避免了过于原始或过于抽象的特征。
在predict中的evaluate后面,加入
tsne_model = Model(inputs=model.inputs, outputs=model.get_layer('flatten').output)
dense_output = tsne_model.predict(X_test)
然后画图,tsne的代码网上可以找到
# 画图
from visualize import plot_tsne
plot_tsne(dense_output, y_test, log_path)