原文链接:http://tecdat.cn/?p=23599
降维是在咱们解决蕴含过多特色数据的大型数据集时应用的,进步计算速度,缩小模型大小,并以更好的形式将微小的数据集可视化。这种办法的目标是保留最重要的数据,同时删除大部分的特色数据。
在这个教程中,咱们将简要地学习如何用Python中的稠密和高斯随机投影以及PCA办法来缩小数据维度。读完本教程后,你将学会如何通过应用这些办法来升高数据集的维度。本教程包含。
- 筹备数据
- 高斯随机投影
- 稠密随机投影
- PCA投影
- MNIST数据投射
咱们将从加载所需的库和函数开始。
筹备数据
首先,咱们将为本教程生成简略的随机数据。在这里,咱们应用具备1000个特色的数据集。为了将维度办法利用于实在数据集,咱们还应用Keras API的MNIST手写数字数据库。MNIST是三维数据集,这里咱们将把它重塑为二维的。
print(x.shape)
mnist.load_data()print(x_train.shape)
reshape(x_train,)print(x_mnist.shape)
高斯随机投影
高斯随机法将原始输出空间投射到一个随机生成的矩阵上升高维度。咱们通过设置重量数字来定义该模型。在这里,咱们将把特色数据从1000缩减到200。
grp.fit_transform(x) print(gshape)
依据你的剖析和指标数据,你能够设置你的指标成分。
稠密随机投影
稠密随机办法应用稠密随机矩阵投影原始输出空间以缩小维度。咱们定义模型,设置成分的数量。在这里,咱们将把特色数据从1000缩减到200。
srp\_data = srp.fit\_transform(x) print(srp_data.shape)
依据你的剖析和指标数据,你能够设置你的指标成分。
PCA投影
咱们将应用PCA合成,通过设置成分数来定义模型。在这里,咱们将把特色数据从1000缩减到200。
pca.fit_transform(x) print(pca_data.shape)
依据你的剖析和指标数据,你能够设置你的指标成分。
MNIST数据的投影
在应用高斯、稠密随机和PCA办法学习降维后,当初咱们能够将这些办法利用于MNIST数据集。为测试目标,咱们将设置2个成分并利用投影。
#对2个成分的稠密随机投影srp.fit\_transform(x\_mnist)df_srp\["comp1"\] = z\[:,0)df_srp\["comp2"\] = z\[:,1\] 。# 高斯随机投射在2个成分上fit\_transform(x\_mnist)# 对2个成分进行PCAPCA(n=2)
咱们将通过可视化的形式在图中查看对于预测的后果。``````sns.scatterplot(x="comp-1", y="comp-2")
该图显示了MNIST数据的变动维度。色彩定义了指标数字和它们的特色数据在图中的地位。
在本教程中,咱们曾经简略理解了如何用稠密和高斯随机投影办法以及Python中的PCA办法来缩小数据维度。
最受欢迎的见解
1.matlab偏最小二乘回归(PLSR)和主成分回归(PCR)
2.R语言高维数据的主成分pca、 t-SNE算法降维与可视化剖析
3.主成分剖析(PCA)基本原理及剖析实例
4.基于R语言实现LASSO回归剖析
5.应用LASSO回归预测股票收益数据分析
6.r语言中对lasso回归,ridge岭回归和elastic-net模型
7.r语言中的偏最小二乘回归pls-da数据分析
8.r语言中的偏最小二乘pls回归算法
9.R语言线性判别分析(LDA),二次判别分析(QDA)和正则判别分析(RDA)