没有合适的资源?快使用搜索试试~ 我知道了~
18029100040吴程锴-第四次上机作业1
需积分: 0 0 下载量 198 浏览量
2022-08-03
12:05:46
上传
评论
收藏 367KB PDF 举报
温馨提示
试读
12页
1.1 代码 1.2 结果 2.1 代码 2.2 结果 3.1 代码 3.2 结果 4.1 代码
资源详情
资源评论
资源推荐
第三次上机作业
18029100040
吴程锴
一、作业 26:PCA 实现高维数据可视化:
1.1
代码
1. import matplotlib.pyplot as plt
2. from sklearn.decomposition import PCA
3. from sklearn.datasets import load_iris
4. data = load_iris()
5. y = data.target
6. x = data.data
7. pca = PCA(n_components = 2)
8. reduced_x = pca.fit_transform(x)
9. red_x,red_y = [],[]
10. blue_x,blue_y = [],[]
11. green_x,green_y = [],[]
12. for i in range(len(reduced_x)):
13. if y[i] == 0:
14. red_x.append(reduced_x[i][0])
15. red_y.append(reduced_x[i][1])
16. elif y[i] == 1:
17. blue_x.append(reduced_x[i][0])
18. blue_y.append(reduced_x[i][1])
19. else:
20. green_x.append(reduced_x[i][0])
21. green_y.append(reduced_x[i][1])
22. plt.scatter(red_x,red_y, c = 'r',marker = 'x')
23. plt.scatter(blue_x,blue_y, c = 'b',marker = 'D')
24. plt.scatter(green_x,green_y, c = 'g',marker = '.')
25. plt.show()
1.2 结果
二、作业 27:降维之 NMF
2.1
代码
1. import matplotlib.pyplot as plt
2. from sklearn import decomposition
3. from sklearn.datasets import fetch_olivetti_faces
4. from numpy.random import RandomState
5.
6.
7.
8. n_row, n_col = 2, 3
9.
10. n_components = n_row = n_col
11.
12. image_shape = (64, 64)
13. dataset = fetch_olivetti_faces(shuffle=True, random_state=RandomState(0))
14. faces = dataset.data
15. def plot_gallery(title, images, n_col=n_col, n_row=n_row):
16. plt.figure(figsize=(2. * n_col, 2.26 * n_row))
17. plt.suptitle(title, size=16)
18. for i, comp in enumerate(images):
19. plt.subplot(n_row, n_col, i + 1)
20. vmax = max(comp.max(), -comp.min())
21. plt.imshow(comp.reshape(image_shape), cmap=plt.cm.gray, interpolation='neare
st', vmin=-vmax,
22. vmax=vmax)
23. plt.xticks(())
24. plt.yticks(())
25. plt.subplots_adjust(0.01, 0.05, 0.99, 0.93, 0.04, 0.)
26.
27.
28. # 创建特征提取的对象 NMF,使用 PCA 作为对
29. estimators = [('Eigenfaces - PCA using randomized SVD', decomposition.PCA(n_componen
ts=6, whiten=True)),
30. ('Non-negative components - NMF', decomposition.NMF(n_components=6, in
it='nndsvda', tol=5e-3))]
31. # NMF 和 PCA 实例,将它们放在一个列表中
32.
33. # 降维后数据点的可视化
34. for name, estimators in estimators:
35. estimators.fit(faces)
36. components_ = estimators.components_
37. plot_gallery(name, components_[:n_components])
38. plt.show() # 可视化
2.2 结果
剩余11页未读,继续阅读
张景淇
- 粉丝: 39
- 资源: 276
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0