使用google colab运行RNN网络代码报告错误"ValueError: Object arrays cannot be loaded when allow_pickle=False"

2019-04-28

使用RNN网络训练IMDB数据集,因本地机器运算速度过慢而选择google colab,

代码(train_data,train_labels),(test_data,test_labels) = imdb.load_data(num_words = 10000)时出现错误

错误名为:ValueError: Object arrays cannot be loaded when allow_pickle=False

经过排查,应是numpy版本不符合当前代码,colab似乎加载最新Numpy版本(1.16.3),导致加载数据过程中出错,

在colab中添加代码:!pip install numpy==1.16.2

等待安装完成后点击restart按钮,可添加代码:

import numpy as np

print(np.__version__)

检查numpy版本是否回退到1.16.2

再次运行RNN可解决ValueError异常

博客发布于19年4月28日,numpy在不断更新,若出现所报告的异常,请注意回滚numpy版本的时效性

[autoreload of cs231n.data_utils failed: Traceback (most recent call last): File "E:\anaconda\lib\site-packages\IPython\extensions\autoreload.py", line 245, in check superreload(m, reload, self.old_objects) File "E:\anaconda\lib\site-packages\IPython\extensions\autoreload.py", line 394, in superreload module = reload(module) File "E:\anaconda\lib\imp.py", line 314, in reload return importlib.reload(module) File "E:\anaconda\lib\importlib\__init__.py", line 169, in reload _bootstrap._exec(spec, module) File "<frozen importlib._bootstrap>", line 613, in _exec File "<frozen importlib._bootstrap_external>", line 846, in exec_module File "<frozen importlib._bootstrap_external>", line 983, in get_code File "<frozen importlib._bootstrap_external>", line 913, in source_to_code File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed File "E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py", line 268 except ValueError: ^ SyntaxError: invalid syntax ]--------------------------------------------------------------------------- ValueError Traceback (most recent call last) ~\AppData\Local\Temp\ipykernel_13852\1831897785.py in <module> 1 from cs231n.data_utils import load_imagenet_val ----> 2 X, y, class_names = load_imagenet_val(num=5) 3 4 plt.figure(figsize=(12, 6)) 5 for i in range(5): E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in load_imagenet_val(num) 263 264 # 安全地加载文件,避免多次设置 allow_pickle --> 265 with np.load(imagenet_fn) as data: 266 X = data['X'] 267 y = data['y'] ~\AppData\Roaming\Python\Python39\site-packages\numpy\lib\npyio.py in load(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size) 460 # Try a pickle 461 if not allow_pickle: --> 462 raise ValueError("Cannot load file containing pickled data " 463 "when allow_pickle=False") 464 try: ValueError: Cannot load file containing pickled data when allow_pickle=False
08-15
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in load_imagenet_val(num) 247 try: --> 248 with np.load(imagenet_fn) as data: 249 X = data['X'] ~\AppData\Roaming\Python\Python39\site-packages\numpy\lib\npyio.py in load(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size) 461 if not allow_pickle: --> 462 raise ValueError("Cannot load file containing pickled data " 463 "when allow_pickle=False") ValueError: Cannot load file containing pickled data when allow_pickle=False During handling of the above exception, another exception occurred: UnpicklingError Traceback (most recent call last) ~\AppData\Roaming\Python\Python39\site-packages\numpy\lib\npyio.py in load(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size) 464 try: --> 465 return pickle.load(fid, **pickle_kwargs) 466 except Exception as e: UnpicklingError: invalid load key, '<'. The above exception was the direct cause of the following exception: UnpicklingError Traceback (most recent call last) ~\AppData\Local\Temp\ipykernel_13852\1831897785.py in <module> 1 from cs231n.data_utils import load_imagenet_val ----> 2 X, y, class_names = load_imagenet_val(num=5) 3 4 plt.figure(figsize=(12, 6)) 5 for i in range(5): E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in load_imagenet_val(num) 250 y = data['y'] 251 except ValueError: --> 252 with np.load(imagenet_fn, allow_pickle=True) as data: 253 X = data['X'] 254 y = data['y'] ~\AppData\Roaming\Python\Python39\site-packages\numpy\lib\npyio.py in load(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size) 465 return pickle.load(fid, **pickle_kwargs) 466 except Exception as e: --> 467 raise pickle.UnpicklingError( 468 f"Failed to interpret file {file!r} as a pickle") from e 469 UnpicklingError: Failed to interpret file 'cs231n/datasets/imagenet_val_25.npz' as a pickle
最新发布
08-15
Downloading imagenet_val_25.npz... Download complete. --------------------------------------------------------------------------- TypeError Traceback (most recent call last) ~\AppData\Local\Temp\ipykernel_9876\1831897785.py in <module> 1 from cs231n.data_utils import load_imagenet_val ----> 2 X, y, class_names = load_imagenet_val(num=5) 3 4 plt.figure(figsize=(12, 6)) 5 for i in range(5): E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in load_imagenet_val(num) 263 np_load_old = np.load 264 np.load = lambda *a,**k: np_load_old(*a, allow_pickle=True, **k) --> 265 f = np.load(imagenet_fn) 266 np.load = np_load_old 267 X = f["X"] E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in <lambda>(*a, **k) 262 # https://stackoverflow.com/questions/55890813/how-to-fix-object-arrays-cannot-be-loaded-when-allow-pickle-false-for-imdb-loa 263 np_load_old = np.load --> 264 np.load = lambda *a,**k: np_load_old(*a, allow_pickle=True, **k) 265 f = np.load(imagenet_fn) 266 np.load = np_load_old E:\下载\cs231n.github.io-master\cs231n.github.io-master\assignments\2021\assignment3-colab\assignment3\cs231n\data_utils.py in <lambda>(*a, **k) 262 # https://stackoverflow.com/questions/55890813/how-to-fix-object-arrays-cannot-be-loaded-when-allow-pickle-false-for-imdb-loa 263 np_load_old = np.load --> 264 np.load = lambda *a,**k: np_load_old(*a, allow_pickle=True, **k) 265 f = np.load(imagenet_fn) 266 np.load = np_load_old TypeError: numpy.load() got multiple values for keyword argument 'allow_pickle'
08-15
评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值