MNISTs: All MNIST-like datasets in one package
Project description
MNISTs: All MNIST-like datasets in one package
MNISTs provides an easy way to use MNIST and other MNIST-like datasets (e.g. FashionMNIST, KMNIST) in your numpy code.
MNISTs replicates the functionality of torchvision.datasets.mnist
without the need to download dozens of dependencies.
MNISTs has only one dependency - numpy
.
Usage
Each dataset stores train/test images as numpy arrays of shape (n_samples, img_height, img_width)
and train/test labels as numpy arrays of shape (n_samples,)
.
MNIST example:
>>> from mnists import MNIST
>>> mnist = MNIST()
>>> type(mnist.train_images())
<class 'numpy.ndarray'>
>>> mnist.train_images().dtype
dtype('uint8')
>>> mnist.train_images().min()
0
>>> mnist.train_images().max()
255
>>> mnist.train_images().shape
(60000, 28, 28)
>>> mnist.train_labels().shape
(60000,)
>>> mnist.test_images().shape
(10000, 28, 28)
>>> mnist.test_labels().shape
(10000,)
>>> mnist.classes[:3]
['0 - zero', '1 - one', '2 - two']
FashionMNIST example:
from mnists import FashionMNIST
import matplotlib.pyplot as plt
fmnist = FashionMNIST()
plt.imshow(fmnist.train_images()[0], cmap='gray')
plt.title(fmnist.classes[fmnist.train_labels()[0]])
plt.axis('off')
plt.show()
KMNIST example:
from mnists import KMNIST
import matplotlib.pyplot as plt
kmnist = KMNIST()
plt.imshow(
kmnist.test_images()[:256]
.reshape(16, 16, 28, 28)
.swapaxes(1, 2)
.reshape(16 * 28, -1),
cmap='gray')
plt.axis('off')
plt.show()
Installation
Install mnists
from PyPi:
pip install mnists
or from source:
pip install -U git+https://github.com/pczarnik/mnists
The only requirements for MNISTs are numpy>=1.22
and python>=3.9
.
Acknowledgments
The main inspirations for MNISTs were mnist
and torchvision.datasets.mnist
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mnists-0.2.0rc1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6072ad1b9e9d184d818339585136dd44efb708a86b0ae3b73dcd795df6f276cd |
|
MD5 | 5fc6c6483ab0a04908a88904c04e3f02 |
|
BLAKE2b-256 | 49050d263db0875ea03a0ccfb1affcbb78d0810f0733027fc623f12f0cec00f1 |