如果您想了解NumpyValueError:设置具有序列的数组元素。该消息可能不存在序列出现?和设置序列的有效性的知识,那么本篇文章将是您的不二之选。我们将深入剖析NumpyValueError:设置
如果您想了解Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?和设置序列的有效性的知识,那么本篇文章将是您的不二之选。我们将深入剖析Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?的各个方面,并为您解答设置序列的有效性的疑在这篇文章中,我们将为您介绍Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?的相关知识,同时也会详细的解释设置序列的有效性的运用方法,并给出实际的案例分析,希望能帮助到您!
本文目录一览:- Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?(设置序列的有效性)
- Bert 标记器因“ValueError:无法将 NumPy 数组转换为张量”而失败
- IndexError:索引过多。具有1行2列的Numpy数组
- IndexError:索引过多具有1行2列的Numpy数组
- keras ImageDataGenetor:ValueError:具有多个元素的数组的真值不明确使用 a.any() 或 a.all()
Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?(设置序列的有效性)
为什么会收到此错误消息?ValueError:设置具有序列的数组元素。谢谢
Z=np.array([1.0,1.0,1.0,1.0])def func(TempLake,Z): A=TempLake B=Z return A*BNlayers=Z.sizeN=3TempLake=np.zeros((N+1,Nlayers))kOUT=np.zeros(N+1)for i in xrange(N): kOUT[i]=func(TempLake[i],Z)
答案1
小编典典您收到错误消息
ValueError: setting an array element with a sequence.
因为您正在尝试使用序列设置数组元素。我不是在试图变得可爱,而是在显示错误消息,试图告诉您问题出在哪里。不要认为它是一个隐秘的错误,它只是一个短语。问题出在哪一行?
kOUT[i]=func(TempLake[i],Z)
该行尝试将的ith
元素设置kOUT
为任何func(TempLAke[i], Z)
返回值。看i=0
情况:
In [39]: kOUT[0]Out[39]: 0.0In [40]: func(TempLake[0], Z)Out[40]: array([ 0., 0., 0., 0.])
您正在尝试加载kOUT[0]
仅包含浮点数的4元素数组。因此,您尝试kOUT[i]
使用序列(右侧)设置数组元素(左侧func(TempLake[i],Z)
)。
可能func
不是您想要的,但是我不确定您真正想要的是什么(并且不要忘记,您通常可以使用A *B之类的矢量化操作,而不是在numpy中循环。)这应该可以解释问题,无论如何。
Bert 标记器因“ValueError:无法将 NumPy 数组转换为张量”而失败
如何解决Bert 标记器因“ValueError:无法将 NumPy 数组转换为张量”而失败?
我正在尝试使用 Bert 标记器为 ner 任务创建文本编码。我正在使用 tensorflow==2.2.0
和 transformers==4.5.1
。 texts
已经被拆分成单词。所以它是一个按单词分割的句子列表。
train_texts,val_texts,train_tags,val_tags = train_test_split(texts,tags,test_size=.2)
train_texts[0][134:150]
返回
array([''TERMS'',''CONDITIONS'',''Delayed'',''payments'',''shall'',''be'',''charged'',''interest'',''at'',''24'',''p.a'',''from'',''duc'',''Goods'',''Once'',''sold''],dtype=object)
但是,运行
tokenizer = TFBertForTokenClassification.from_pretrained(''bert-base-uncased'')
train_encodings = tokenizer(train_texts,is_split_into_words=True,return_offsets_mapping=True,padding=True,truncation=True)
因错误而失败
ValueError: 无法将 NumPy 数组转换为张量(不支持的对象类型浮点数)。
我正在按照 Token Classification with W-NUT Emerging Entities 中提到的步骤操作自定义数据集。我尝试按照其他建议的解决方案升级和降级 Tensorflow 的版本,但没有奏效。
下面提到了完整的错误日志。
All model checkpoint layers were used when initializing TFBertForTokenClassification.
Some layers of TFBertForTokenClassification were not initialized from the model checkpoint at bert-base-uncased and are newly initialized: [''classifier'']
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-26-3a20ac537a69> in <module>()
1 tokenizer = TFBertForTokenClassification.from_pretrained(''bert-base-uncased'')
----> 2 train_encodings = tokenizer(list(train_texts),truncation=True)
3 val_encodings = tokenizer(val_texts,truncation=True)
9 frames
/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base_layer.py in __call__(self,*args,**kwargs)
817 return ops.convert_to_tensor_v2(x)
818 return x
--> 819 inputs = nest.map_structure(_convert_non_tensor,inputs)
820 input_list = nest.flatten(inputs)
821
/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/nest.py in map_structure(func,*structure,**kwargs)
615
616 return pack_sequence_as(
--> 617 structure[0],[func(*x) for x in entries],618 expand_composites=expand_composites)
619
/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/nest.py in <listcomp>(.0)
615
616 return pack_sequence_as(
--> 617 structure[0],618 expand_composites=expand_composites)
619
/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/base_layer.py in _convert_non_tensor(x)
815 # `SparseTensors` can''t be converted to `Tensor`.
816 if isinstance(x,(np.ndarray,float,int)):
--> 817 return ops.convert_to_tensor_v2(x)
818 return x
819 inputs = nest.map_structure(_convert_non_tensor,inputs)
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py in convert_to_tensor_v2(value,dtype,dtype_hint,name)
1281 name=name,1282 preferred_dtype=dtype_hint,-> 1283 as_ref=False)
1284
1285
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py in convert_to_tensor(value,name,as_ref,preferred_dtype,ctx,accepted_result_types)
1339
1340 if ret is None:
-> 1341 ret = conversion_func(value,dtype=dtype,name=name,as_ref=as_ref)
1342
1343 if ret is NotImplemented:
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/tensor_conversion_registry.py in _default_conversion_function(***Failed resolving arguments***)
50 def _default_conversion_function(value,as_ref):
51 del as_ref # Unused.
---> 52 return constant_op.constant(value,name=name)
53
54
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/constant_op.py in constant(value,shape,name)
261 return _constant_impl(value,verify_shape=False,--> 262 allow_broadcast=True)
263
264
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/constant_op.py in _constant_impl(value,verify_shape,allow_broadcast)
268 ctx = context.context()
269 if ctx.executing_eagerly():
--> 270 t = convert_to_eager_tensor(value,dtype)
271 if shape is None:
272 return t
/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/constant_op.py in convert_to_eager_tensor(value,dtype)
94 dtype = dtypes.as_dtype(dtype).as_datatype_enum
95 ctx.ensure_initialized()
---> 96 return ops.EagerTensor(value,ctx.device_name,dtype)
97
98
ValueError: Failed to convert a NumPy array to a Tensor (Unsupported object type float).
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
IndexError:索引过多。具有1行2列的Numpy数组
当我尝试仅获取像这样的数组的第一个元素时
import numpya = numpy.array([1,2])a[:,0]
我得到这个错误
--------------------------------------------------------------------------- IndexError Traceback (most recent call last)<ipython-input-3-ed371621c46c> in <module>()----> 1 a[:,0]IndexError: too many indices
我想找到一种在仍然使用切片的情况下执行此操作的方法,因为完整的代码会打开,并使用numpy.loadtxt()
两列(从1到N之间不等)的所有列读取许多不同的文件。
答案1
小编典典您的数组a = numpy.array([1,2])
只有 一个 维度:其形状为(2,)
。然而,你的切片 a[:,0]
指定选择 2米
的尺寸。这导致NumPy引发错误。
要从中获取第一个元素,a
只需编写即可a[0]
(此处仅选择一个维度)。
看另一个问题,如果您想确保语法a[:,0]
始终有效,则可以确保a
始终具有两个维度。np.loadtxt
使用ndmin
参数加载数组时,例如:
np.loadtxt(F, skiprows=0, ndmin=2)
IndexError:索引过多具有1行2列的Numpy数组
当我尝试仅获取像这样的数组的第一个元素时
import numpy
a = numpy.array([1,2])
a[:,0]
我得到这个错误
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-3-ed371621c46c> in <module>()
----> 1 a[:,0]
IndexError: too many indices
我想找到一种在仍然使用切片的情况下执行此操作的方法,因为完整的代码会打开,并使用numpy.loadtxt()
两列(从1到N之间不等)的所有列读取许多不同的文件。
keras ImageDataGenetor:ValueError:具有多个元素的数组的真值不明确使用 a.any() 或 a.all()
如何解决keras ImageDataGenetor:ValueError:具有多个元素的数组的真值不明确使用 a.any() 或 a.all()?
我正在处理这个数据集: British Birdsong dataset
采用这种方法:Toward Data Science Article
但是,我收到以下错误:
ValueError:包含多个元素的数组的真值不明确。使用 a.any() 或 a.all()
我的代码如下:
''''
# Plot mel-spectrogram
N_FFT = 1024
HOP_SIZE = 1024
N_MELS = 128
WIN_SIZE = 1024
WINDOW_TYPE = ''hann''
FEATURE = ''mel''
FMIN = 1400
spectrogram = librosa.feature.melspectrogram(y = x[2],sr = samplerate[2],n_fft = N_FFT,hop_length = HOP_SIZE,n_mels = N_MELS,htk = True,fmin = FMIN,fmax = samplerate[2]/2)
plt.figure(figsize=(10,4))
librosa.display.specshow(librosa.power_to_db(spectrogram**2,ref=np.max),fmin=FMIN,y_axis=''linear'')
plt.colorbar(format=''%+2.0f dB'')
plt.show()
image_size = (224,224,3)
birds_names = dataset.iloc[:,3].unique()
path = "/content/drive/MyDrive/Colab Notebooks/701_data"
batch_size = 16
train_data_generator = ImageDataGenerator(width_shift_range = 0.2,height_shift_range = 0.2,shear_range = 0.2,zoom_range = 0.1,fill_mode = ''nearest'')
train_batches = train_data_generator.flow_from_directory(path + ''train'',classes = birds_names,target_size = image_size,class_mode = ''categorical'',shuffle = True,batch_size = batch_size)
test_data_generator = ImageDataGenerator(preprocessing_function = preprocess_input)
test_batches = valid_datagen.flow_from_directory(path + ''test'',shuffle = False,batch_size = batch_size)
''''
code''s ScreenShot
如果您能帮我解决这个问题,我将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
今天关于Numpy ValueError:设置具有序列的数组元素。该消息可能不存在序列出现?和设置序列的有效性的讲解已经结束,谢谢您的阅读,如果想了解更多关于Bert 标记器因“ValueError:无法将 NumPy 数组转换为张量”而失败、IndexError:索引过多。具有1行2列的Numpy数组、IndexError:索引过多具有1行2列的Numpy数组、keras ImageDataGenetor:ValueError:具有多个元素的数组的真值不明确使用 a.any() 或 a.all()的相关知识,请在本站搜索。
本文标签: