获取输出层 Tensorflow 1.14
Get output layer Tensorflow 1.14
我想使用 TLSTM 为时变数据创建多模式机器学习模型。
为了连接时变数据和非时变数据,我需要获取 TLSTM 的输出向量。
我正在使用这个 TLSTM 模型:https://github.com/illidanlab/T-LSTM
我更新了 repo 以与 Tensorflow 1.14 和 Python 3.7.12.
兼容
我假设您可以在 get_output 函数中对输出向量进行反应:
def get_output(self, state):
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
output = tf.nn.dropout(output, self.keep_prob)
output = tf.matmul(output, self.W_softmax) + self.b_softmax
return output
如果我打印输出,我得到一个张量:
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
print(output)
-> Tensor("map_5/while/Relu:0", shape=(?, 64), dtype=float32)
print(output[0])
-> Tensor("map_5/while/strided_slice:0", shape=(64,), dtype=float32)
print(output[0, 0])
-> Tensor("map_5/while/strided_slice_1:0", shape=(), dtype=float32)
64 维似乎是我正在寻找的输出,我如何访问它?
解法:tf.print()
请注意,在会话内部它必须被称为 control_dependence:
def get_output(self, state):
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
print_op = tf.print(
output,
summarize=-1,
output_stream="file://C:/Users/my_path/T-LSTM-master/features/foo.out")
with tf.control_dependencies([print_op]):
output = tf.nn.dropout(output, self.keep_prob)
output = tf.matmul(output, self.W_softmax) + self.b_softmax
return output
本例直接将要素保存为文件。 Summarize=-1 到 save/print 整个张量。
如果您只想打印 output
张量,大多数时候 tf.print(output)
会给出所需的结果。
我想使用 TLSTM 为时变数据创建多模式机器学习模型。
为了连接时变数据和非时变数据,我需要获取 TLSTM 的输出向量。
我正在使用这个 TLSTM 模型:https://github.com/illidanlab/T-LSTM
我更新了 repo 以与 Tensorflow 1.14 和 Python 3.7.12.
我假设您可以在 get_output 函数中对输出向量进行反应:
def get_output(self, state):
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
output = tf.nn.dropout(output, self.keep_prob)
output = tf.matmul(output, self.W_softmax) + self.b_softmax
return output
如果我打印输出,我得到一个张量:
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
print(output)
-> Tensor("map_5/while/Relu:0", shape=(?, 64), dtype=float32)
print(output[0])
-> Tensor("map_5/while/strided_slice:0", shape=(64,), dtype=float32)
print(output[0, 0])
-> Tensor("map_5/while/strided_slice_1:0", shape=(), dtype=float32)
64 维似乎是我正在寻找的输出,我如何访问它?
解法:tf.print()
请注意,在会话内部它必须被称为 control_dependence:
def get_output(self, state):
output = tf.nn.relu(tf.matmul(state, self.Wo) + self.bo)
print_op = tf.print(
output,
summarize=-1,
output_stream="file://C:/Users/my_path/T-LSTM-master/features/foo.out")
with tf.control_dependencies([print_op]):
output = tf.nn.dropout(output, self.keep_prob)
output = tf.matmul(output, self.W_softmax) + self.b_softmax
return output
本例直接将要素保存为文件。 Summarize=-1 到 save/print 整个张量。
如果您只想打印 output
张量,大多数时候 tf.print(output)
会给出所需的结果。