我试图将.npy文件从我的Google云存储中加载到我的模型中我按照此示例Load numpy array in google-cloud-ml job 但是我得到了这个错误
你可以帮帮我吗? 这是代码中的示例' UTF-8'编解码器不能解码字节0x93 位置0:无效的起始字节
with file_io.FileIO(metadata_filename, 'r') as f:
self._metadata = [line.strip().split('|') for line in f]
if self._offset >= len(self._metadata):
self._offset = 0
random.shuffle(self._metadata)
meta = self._metadata[self._offset]
self._offset += 1
text = meta[3]
if self._cmudict and random.random() < _p_cmudict:
text = ' '.join([self._maybe_get_arpabet(word) for word in text.split(' ')])
input_data = np.asarray(text_to_sequence(text, self._cleaner_names), dtype=np.int32)
f = StringIO(file_io.read_file_to_string(
os.path.join('gs://path',meta[0]))
linear_target = tf.Variable(initial_value=np.load(f), name='linear_target')
s = StringIO(file_io.read_file_to_string(
os.path.join('gs://path',meta[1])))
mel_target = tf.Variable(initial_value=np.load(s), name='mel_target')
return (input_data, mel_target, linear_target, len(linear_target))
答案 0 :(得分:2)
这可能是因为您的文件不包含utf-8编码文本。
可能,您可能需要使用mode ='rb'将file_io.FileIO实例初始化为二进制文件,或者在调用read_file_to_string时设置binary_mode = True。
这将导致读取的数据作为字节序列而不是字符串返回。