machine-learning - AttributeError:“ListWrapper”对象没有“最小化”属性
问题描述
我正在使用这个 seq2seq 模型构建一个聊天机器人,但是在我训练我的模型之前似乎存在问题,因为我遇到了这个错误。有谁知道如何解决它?
from tensorflow.keras.models import Model
from tensorflow.keras.layers import Dense, Embedding, LSTM, Input
enc_input = Input(shape=(80,))
dec_input = Input(shape=(80,))
VOCAB_SIZE = len(vocab)
embed = Embedding(VOCAB_SIZE+1, output_dim=50,input_length = 80,trainable = True)
enc_embed = embed(enc_input)
enc_lstm = LSTM(473,return_sequences=True,return_state=True)
enc_op, h, c = enc_lstm(enc_embed)
enc_states = [h,c]
dec_embed = embed(dec_input)
dec_lstm = LSTM(473,return_sequences=True,return_state=True)
dec_op,_,_ = dec_lstm(dec_embed,initial_state=enc_states)
dense = Dense(VOCAB_SIZE+1, activation='softmax')
dense_op = dense(dec_op)
model = Model([enc_input,dec_input],dense_op)
model.compile(loss = 'categorical_crossentropy',metrics=['acc'],optimizer=['adam'])
model.summary()
model.fit([encoder_input,decoder_input],decoder_final_output, epochs=40)
错误:
AttributeError: in user code:
/usr/local/lib/python3.7/dist-packages/keras/engine/training.py:853 train_function *
return step_function(self, iterator)
/usr/local/lib/python3.7/dist-packages/keras/engine/training.py:842 step_function **
outputs = model.distribute_strategy.run(run_step, args=(data,))
/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute_lib.py:1286 run
return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute_lib.py:2849 call_for_each_replica
return self._call_for_each_replica(fn, args, kwargs)
/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/distribute_lib.py:3632 _call_for_each_replica
return fn(*args, **kwargs)
/usr/local/lib/python3.7/dist-packages/keras/engine/training.py:835 run_step **
outputs = model.train_step(data)
/usr/local/lib/python3.7/dist-packages/keras/engine/training.py:791 train_step
self.optimizer.minimize(loss, self.trainable_variables, tape=tape)
AttributeError: 'ListWrapper' object has no attribute 'minimize'
此行发生错误:
model.fit([encoder_input,decoder_input],decoder_final_output, epochs=40)
解决方案
推荐阅读
- javascript - 我的 CSS 在 React 项目中被 Bootstrap 覆盖
- java - PeerListListener 不工作?它表明没有使用 PeerListListener,但是在广播类中我使用了它??所以不知道哪里错了?
- javascript - 如果赛普拉斯是端到端测试框架,为什么它有集成测试文件夹?
- javascript - 变量和标识符之间的差异(如果有)
- fluentui-react - 这些奇怪的填充值在 Microsoft 的 Fluent-react 库中意味着什么?
- python - 在只有分钟和秒数据的数据框中生成小时和天 - Python
- excel - EXCEL:计数范围;但排除空格和特定字符串
- node.js - 如何在 angularJS 中读取 Linux 系统环境变量并在 Angular9 中的 require() 中传递该值
- ruby-on-rails - 似乎无法拉出这个对象的属性
- php - 如何垂直获取数组的最大值?