我正试图遵循tensorflow NLP教程来训练神经网络,使用我自己编译的源代码生成类似诗歌/歌词的输出。我只知道基本的python,所以这肯定远远超出了我的能力水平。看起来教程有点过时了,因为我收到了这个错误代码:
AttributeError: 'Sequential' object has no attribute 'predict_classes'
据我所知,属性"predict_classes"已被弃用,在当前版本的tensorflow中不再使用。
这是一个答案中建议的一行代码,但我不明白如何将其包含在我的代码中:
= np.argmax(model.predict(x_test), axis=-1)
如有任何帮助,我们将不胜感激。这是给我带来麻烦的代码部分,以及错误代码。我还附上了一个完整的Jupyter笔记本的链接。
seed_text = "Vernal sunlight"
next_words = 100
for _ in range(next_words):
token_list = tokenizer.texts_to_sequences([seed_text])[0]
token_list = pad_sequences([token_list], maxlen=max_sequence_len-1, padding='pre')
predicted = model.predict_classes(token_list, verbose=0)
output_word = ""
for word, index in tokenizer.word_index.items():
if index == predicted:
output_word = word
break
seed_text += " " + output_word
print(seed_text)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-16-0539a42e927b> in <module>()
5 token_list = tokenizer.texts_to_sequences([seed_text])[0]
6 token_list = pad_sequences([token_list], maxlen=max_sequence_len-1, padding='pre')
----> 7 predicted = model.predict_classes(token_list, verbose=0)
8 output_word = ""
9 for word, index in tokenizer.word_index.items():
AttributeError: 'Sequential' object has no attribute 'predict_classes'
这是我关注的视频链接!
这是Jupyter笔记本的副本!
您可以使用以预测张量为参数的argmax
来查找预测类。定义预测如下:
predicted = np.argmax(model.predict(x), axis=-1)