Autoencoder降维可视化
2022-03-15 本文已影响0人
刘小白DOER
关于高维度数据降维,以前都是使用PCA线性降维或者直接使用pandas的corr函数来找到相关性,但是这种方式的降维都是线性的。Autoencoder可以完成线性的、非线性的降维,提取有效的数据表征。下面是笔者收集展示的三个案例。
案例1:3D dataset数据集
1、创建3D数据集

2、创建模型并训练,2个神经元的编码器隐藏层,3个神经元的解码器隐藏层

3、encoder编码器预测实例完成降维

案例2:mnist手写数字
1、定义函数load_mnist导入本地mnist数据集

2、Autoencoder降低到二维

3、AutoEncoder编码器预测新实例得到二维数据,并绘制图形


以上绘制的图形有重叠部分,不便于区分。笔者再次修改模型使用Autoencoder来降低为对应的10维。

使用TNSE再次完成数据降低到二维,这也就可以展开数据集便于可视化。

案例3:fashion_mnist图像
此案例基于Autoencoder神经网络完成异常检测(样本重构),前期的操作就不再展示了。下面是在编码器预测数据之后再次使用t-SNE,能够将高维空间中的数据映射到低维空间中,并保留数据集的局部特性。
