ageron / handson-ml2

A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2.
Apache License 2.0
27.79k stars 12.73k forks source link

[BUG] 'my_mnist.data' #617

Open MarwanAshraf22 opened 1 year ago

MarwanAshraf22 commented 1 year ago

OSError: [Errno 22] Invalid argument: 'my_mnist.data' Does anyone know how to fix this error?

Preet-Sojitra commented 1 year ago

This is the code that worked for me:

filename="my_mnist.data"
m, n = X_train.shape # Make sure you have loaded MNIST dataset, for loading refer the code snippet below

X_mm = np.memmap(filename, dtype='float32', mode="write", shape=(m, n))
X_mm[:] = X_train

del X_mm

X_mm = np.memmap(filename, dtype='float32', mode="readonly", shape=(m, n))
batch_size = m // n_batches
inc_pca = IncrementalPCA(n_components=154, batch_size=batch_size)
inc_pca.fit(X_mm)
# Fetching MNIST data
from sklearn.datasets import fetch_openml
from sklearn.model_selection import train_test_split

mnist = fetch_openml('mnist_784', version=1, as_frame=False)
mnist.target = mnist.target.astype(np.uint8)

X = mnist["data"]
y = mnist["target"]

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)