探索 LED 数字数据集
在接下来的练习中,您将使用 NMF 将灰度图像分解为常见的局部模式。首先,请先探索图像数据集,并了解它是如何编码为数组的。给定一个包含 100 张图像的二维数组 samples,其中每一行代表一张 13x8 的图像。该数据集中的图像是 LED 数码显示的照片。
本练习是课程的一部分
Python 中的无监督学习
练习说明
- 将
matplotlib.pyplot以plt的别名导入。 - 选择
samples的第0行,并将结果赋值给digit。例如,要选择数组a的第2列,可以使用a[:,2]。请注意,由于samples是一个 NumPy 数组,无法使用.loc[]或iloc[]访问器选择特定的行或列。 - 打印
digit。这一步已为您完成。请注意它是一个由 0 和 1 组成的一维数组。 - 使用
digit的.reshape()方法得到一个形状为(13, 8)的二维数组。将结果赋值给bitmap。 - 打印
bitmap,您会发现其中的 1 构成了数字 7! - 使用
plt.imshow()函数将bitmap以图像形式显示出来。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Import pyplot
from matplotlib import pyplot as plt
# Select the 0th row: digit
digit = ____
# Print digit
print(digit)
# Reshape digit to a 13x8 array: bitmap
bitmap = ____
# Print bitmap
print(bitmap)
# Use plt.imshow to display bitmap
plt.____(____, cmap='gray', interpolation='nearest')
plt.colorbar()
plt.show()