关于TensorFlow官方教程imdb电影评价实例中报错AssertionError: Unrecognized instruction format: NamedSplit的问题

Grace ·
更新时间:2024-09-20
· 543 次阅读

笔者也是刚刚接触TensorFlow,在学习按照官方教程的过程中有一个很简单的电影评价例子。

其导入数据的代码为: train_validation_split = tfds.Split.TRAIN.subsplit([6, 4]) (train_data, validation_data), test_data = tfds.load( name="imdb_reviews", split=(train_validation_split, tfds.Split.TEST), as_supervised=True)

这个代码其实本身不难理解,就是导入数据然后将训练集合分割。然而运行会报错:

AssertionError: Unrecognized instruction format: NamedSplit('train')(tfds.percent[0:60])

笔者找了很久类似的错误,查阅了很多文档也没有找到相应的解决方法与问题来源,而且遇到这种错误的人是少之又少,几乎找不到什么材料。但是笔者猜测应该是和Python版本、Tensorflow版本以及tensorflow-datasets版本相关。

于是我用了另外一种分割方法来代替原来的写法,具体代码为: (train_data, validation_data, test_data) = tfds.load( name="imdb_reviews", split=('train[:60%]', 'train[60%:]', 'test'), as_supervised=True)

这个样子就不会报错,并且成功引入数据,希望可以帮到大家。
如果有疑问,可以加笔者QQ:1574143668一起交流。
完整的报错指示为:

Traceback (most recent call last): File "D:/pythontest/Pycharm/TensorFlowTest/TestFromGoogleForText.py", line 24, in as_supervised=True) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\api_utils.py", line 52, in disallow_positional_args_dec return fn(*args, **kwargs) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\registered.py", line 318, in load ds = dbuilder.as_dataset(**as_dataset_kwargs) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\api_utils.py", line 52, in disallow_positional_args_dec return fn(*args, **kwargs) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\dataset_builder.py", line 476, in as_dataset datasets = utils.map_nested(build_single_dataset, split, map_tuple=True) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 153, in map_nested for v in data_struct] File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 153, in for v in data_struct] File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 153, in map_nested for v in data_struct] File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 153, in for v in data_struct] File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 159, in map_nested return function(data_struct) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\dataset_builder.py", line 544, in _build_single_dataset read_config=read_config, File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\dataset_builder.py", line 901, in _as_dataset shuffle_files=shuffle_files, File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\tfrecords_reader.py", line 246, in read datasets = utils.map_nested(read_instruction, instructions, map_tuple=True) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\utils\py_utils.py", line 159, in map_nested return function(data_struct) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\tfrecords_reader.py", line 140, in _read_single_instruction instruction = ReadInstruction.from_spec(instruction) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\tfrecords_reader.py", line 438, in from_spec instruction = _str_to_relative_instruction(subs[0]) File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\site-packages\tensorflow_datasets\core\tfrecords_reader.py", line 279, in _str_to_relative_instruction raise AssertionError('Unrecognized instruction format: %s' % spec) AssertionError: Unrecognized instruction format: NamedSplit('train')(tfds.percent[0:60])
作者:夜流歌



format tensorflow

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章