我正在使用代码here by the keras team使用LSTM生成文本,但是我使用了自己的文本数据。在GPU上运行时出现此错误。
我认为我们需要使用'utf-8',但是从文本文件中读取时已经指定了它。
path = 'path/to/mytxt.txt'
with io.open(path, encoding='utf-8') as f:
text = f.read().lower()
我不明白问题出在哪里,其余代码完全相同。出现错误的部分:
def on_epoch_end(epoch, _):
# Function invoked at end of each epoch. Prints generated text.
start_index = random.randint(0, len(text) - maxlen - 1)
for diversity in [0.2, 0.5, 1.0, 1.2]:
generated = ''
sentence = text[start_index: start_index + maxlen]
generated += sentence
print('----- Generating with seed: "' + sentence + '"')
错误:
on_epoch_end中第77行的文件“ txt_gen.py”
print('-----用种子生成:“'+句子+'”')
UnicodeEncodeError:'ascii'编解码器无法在位置65编码字符'\ u201c':序数不在范围(128)中
更新:
尝试print('----- Generating with seed: "' + sentence.encoded('utf-8') + '"')
,现在错误更改为
TypeError:无法将“字节”对象隐式转换为str