Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jupyter Notebook (only) Memory Error, same code run in a conventional .py and works

I have an assignment for a Deep Learning class, and they provide a Jupyter notebook as a base code, the thing is that after running the data import and reshape, jupyter notebook through a "Memory Error", after some analysis y tried to compile the same code in a normal .py file, and everything runs well.

The thing is that I'm required (preferably) to use the Jupyter notebook as the base for development, since is more interactive for the kind of task.

<ipython-input-2-846f80a40ce2> in <module>()
  2 # Load the raw CIFAR-10 data
  3 cifar10_dir = 'datasets\\'
----> 4 X, y = load_CIFAR10(cifar10_dir)

C:\path\data_utils.pyc in load_CIFAR10(ROOT)
     18     f = os.path.join(ROOT, 'cifar10_train.p')
     19     print('Path:  ' + f );
---> 20     Xtr, Ytr = load_CIFAR_batch(f)
     21     return Xtr, Ytr
     22 

C:\path\data_utils.pyc in load_CIFAR_batch(filename)
     10         X = np.array(datadict['data'])
     11         Y = np.array(datadict['labels'])
---> 12         X = X.reshape(-1, 3, 32, 32).transpose(0,2,3,1).astype("float")
     13         return X, Y
     14 

MemoryError: 

The error occurs in the line 12, i know is a memory consuming assignment, but that doesn't mean that 4 GB of RAM wont suffice, and that was confirmed when the code run without problems outside Jupyter.

My Guess is it has something to do with the memory limit either by Jupyter or by Chrome, but I'm not sure and also dont know how to solve it.

By the way:

  • I have a Windows 10 laptop with 4GB of RAM
  • and Chrome Version 57.0.2987.133 (64-bit)
like image 350
Danfoa Avatar asked May 09 '17 09:05

Danfoa


2 Answers

Apparently this happens when the python installation is not the best.

As a matter of fact before solving the problem, I had installed on windows manually python 2.7 and the packages that I needed, after messing almost two days trying to figure out what was the problem, I reinstalled everything with Conda and the problem was solved.

I guess Conda is installing better memory management packages and that was the main reason.

like image 161
Danfoa Avatar answered Oct 01 '22 10:10

Danfoa


Try running with Administrator privileges. Worked for me.

like image 37
Andriy Stolyar Avatar answered Oct 01 '22 11:10

Andriy Stolyar