Welkom bij deze tutorial over het MNIST-dataset. In deze tutorial zullen we leren wat het MNIST-dataset is, hoe het in Python te importeren en hoe het te plotten met behulp van matplotlib.
Wat is het MNIST-dataset?
Het MNIST-dataset is een grote verzameling handgeschreven cijfers. Het is een zeer populair dataset op het gebied van beeldverwerking en wordt vaak gebruikt voor het benchmarken van machine learning-algoritmen.
MNIST staat voor Modified National Institute of Standards and Technology-database.
MNIST bevat een verzameling van 70.000, 28 x 28 afbeeldingen van handgeschreven cijfers van 0 tot 9.
De dataset is al verdeeld in trainings- en testsets. We zullen dit later in de tutorial zien.
Voor meer informatie over MNIST, raadpleeg de Wikipedia-pagina. We gaan het dataset importeren vanuit Keras.
Laten we beginnen met het laden van het dataset in onze Python-notebook.
MNIST laden vanuit Keras
We moeten eerst de MNIST-dataset importeren uit de Keras-module.
Dit kunnen we doen met de volgende regel code:
from keras.datasets import mnist
Nu zullen we de trainings- en testsets in aparte variabelen laden.
(train_X, train_y), (test_X, test_y) = mnist.load_data()
Laten we eens kijken hoeveel afbeeldingen er in de trainings- en testsets zitten. Met andere woorden, laten we proberen de verhouding van deze dataset te vinden.
Om meer te leren over de verhouding, kun je deze tutorial bekijken over hoe je gegevens in trainings- en testsets verdeelt.
Om de verhouding te vinden, gaan we de vormen van alle vectoren afdrukken.
print('X_train: ' + str(train_X.shape))
print('Y_train: ' + str(train_y.shape))
print('X_test: ' + str(test_X.shape))
print('Y_test: ' + str(test_y.shape))
Output:
X_train: (60000, 28, 28)
Y_train: (60000,)
X_test: (10000, 28, 28)
Y_test: (10000,)
We kunnen zien dat er 60k afbeeldingen in de trainingsset zijn en 10k afbeeldingen in de testset.
De dimensie van onze trainingsvector is (60000, 28, 28), dit komt doordat er 60.000 grijswaarde-afbeeldingen zijn met de dimensie 28×28.
Complete Code voor het Laden van de MNIST Dataset
Hier is de volledige code uit dit gedeelte:
from keras.datasets import mnist
#het laden van de dataset
(train_X, train_y), (test_X, test_y) = mnist.load_data()
#het printen van de vormen van de vectoren
print('X_train: ' + str(train_X.shape))
print('Y_train: ' + str(train_y.shape))
print('X_test: ' + str(test_X.shape))
print('Y_test: ' + str(test_y.shape))
Laten we leren hoe we deze dataset kunnen plotten.
Het plotten van de MNIST-dataset met behulp van matplotlib
Het is altijd een goed idee om de dataset waar je aan werkt te plotten. Het geeft je een goed idee over het soort gegevens waarmee je te maken hebt.
Als verantwoordelijke datawetenschapper zou het uw taak moeten zijn om altijd de dataset te plotten als stap nul.
Om de dataset te plotten, gebruik de volgende code:
from matplotlib import pyplot
for i in range(9):
pyplot.subplot(330 + 1 + i)
pyplot.imshow(train_X[i], cmap=pyplot.get_cmap('gray'))
pyplot.show()
Uitvoer:

Dit is hoe onze gegevens eruit zien!
Stel je 70.000 afbeeldingen voor, net als deze. Dat is wat er in de dataset zit. Het feit dat het zo omvangrijk is, is een van de redenen voor de populariteit van de dataset.
Het probleem van handschriftherkenning, hoe triviaal ook, is nu verouderd. Er was behoefte aan een uitdagendere versie van de MNSIT-dataset die als vervanging kon dienen.
Is er een meer uitdagende versie van de MNIST-dataset beschikbaar?
Ja, die is er. De Fashion MNIST-dataset.
Fashion MNIST dataset
Het Fashion MNIST-dataset is een uitdagender vervanging voor het oude MNIST-dataset.
Deze dataset bevat 70.000 kleine vierkante 28×28 pixel grijswaardige afbeeldingen van items van 10 soorten kleding, zoals schoenen, t-shirts, jurken, en meer.
Om te leren hoe je het Fashion MNIST-dataset importeert en plotten, lees deze handleiding.
Conclusie
Deze handleiding ging over het importeren en plotten van het MNIST-dataset in Python. We hebben ook een meer uitdagende vervanging van deze dataset besproken, de Fashion MNIST-set. Hopelijk heb je met ons plezier gehad tijdens het leren!
Source:
https://www.digitalocean.com/community/tutorials/mnist-dataset-in-python