Eksploracja zbioru danych cyfr LED
W kolejnych ćwiczeniach wykorzystasz NMF do rozkładu obrazów w skali szarości na najczęściej powtarzające się wzorce. Na początek zapoznaj się ze zbiorem danych i sprawdź, jak obrazy są zakodowane w postaci tablicy. Do dyspozycji masz 100 obrazów zapisanych w postaci tablicy 2D samples, gdzie każdy wiersz reprezentuje jeden obraz o wymiarach 13x8 pikseli. Obrazy w zbiorze danych przedstawiają cyfrowy wyświetlacz LED.
To ćwiczenie jest częścią kursu
Uczenie nienadzorowane w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj
matplotlib.pyplotjakoplt. - Wybierz wiersz
0tablicysamplesi przypisz wynik do zmiennejdigit. Na przykład, aby wybrać kolumnę2tablicya, możesz użyća[:,2]. Pamiętaj, że ponieważsamplesjest tablicą NumPy, nie możesz korzystać z akcesorów.loc[]aniiloc[]do wybierania konkretnych wierszy lub kolumn. - Wyświetl
digit. Ta część jest już gotowa. Zwróć uwagę, że to jednowymiarowa tablica złożona z zer i jedynek. - Użyj metody
.reshape()na tablicydigit, aby uzyskać tablicę 2D o kształcie(13, 8). Przypisz wynik do zmiennejbitmap. - Wyświetl
bitmapi zauważ, że jedynki tworzą cyfrę 7! - Użyj funkcji
plt.imshow(), aby wyświetlićbitmapjako obraz.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()