在Tensorflow中调用tf.data.Dataset.from_generator(generator_function,args=(values1,values2))(generator_function是自定义的生成器函数,args是生成器的输入参数) 时报出这个错误,找了一晚上,它实际是在这个位置报出的错误:
在tensor_util.py里的make_tensor_proto()函数的如下位置:
其中图片中的nparray = np.array(values, dtype=np_dt),这个values是生成器的输入参数values1,values2(有多少个参数会做多少次判断,values=values1,values=values2),上图中 _GetDenseDimensions(values) 函数的定义如下:
通过前后分析就可以发现,这个args里面的参数不能是列表的列表,可以是列表,也可以是字符串等,但是一旦是列表里面包含列表的参数就会报错。
解决ValueError: Argument must be a dense tensor: 0 - got shape [198602], but wanted [198602, 16].
最新推荐文章于 2022-12-13 18:45:16 发布