出现typeerror
来源:10-8 模型训练
慕码人537708
2020-02-21
encoding_hidden=Encoder.initiaze_hidden_state()
TypeError: initiaze_hidden_state() missing 1 required positional argument: 'self’
无法编译 找不到原因
写回答
1回答
-
正十七
2020-02-24
class Encoder(tf.keras.Model): def __init__(self, vocab_size, embedding_dim, encoding_units, batch_size): super(Encoder, self).__init__() self.batch_size = batch_size self.encoding_units = encoding_units self.embedding = keras.layers.Embedding(vocab_size, embedding_dim) self.gru = keras.layers.GRU(self.encoding_units, return_sequences=True, return_state=True, recurrent_initializer='glorot_uniform') def call(self, x, hidden): x = self.embedding(x) output, state = self.gru(x, initial_state = hidden) return output, state def initialize_hidden_state(self): return tf.zeros((self.batch_size, self.encoding_units)) encoder = Encoder(vocab_inp_size, embedding_dim, units, BATCH_SIZE) sample_hidden = encoder.initialize_hidden_state() sample_output, sample_hidden = encoder(example_input_batch, sample_hidden)
是指上面那段代码么?如果是的话,那么调用的时候不能直接用类名,而是要用构建的对象名。
平常debug可以参考我们在git里的代码,看看有什么不同。
00
相似问题