关于算法:Python用稀疏高斯随机投影和主成分分析PCA对MNIST手写数字数据进行降维可视化

42次阅读

共计 1515 个字符,预计需要花费 4 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=23599 

降维是在咱们解决蕴含过多特色数据的大型数据集时应用的,进步计算速度,缩小模型大小,并以更好的形式将微小的数据集可视化。这种办法的目标是保留最重要的数据,同时删除大部分的特色数据。

在这个教程中,咱们将简要地学习如何用 Python 中的稠密和高斯随机投影以及 PCA 办法来缩小数据维度。读完本教程后,你将学会如何通过应用这些办法来升高数据集的维度。本教程包含。

  1. 筹备数据
  2. 高斯随机投影
  3. 稠密随机投影
  4. PCA 投影
  5. 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 个成分进行 PCA
PCA(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)

正文完
 0