试图理解keras优化器()中的优化代码。在get_updates模块中,我们有:
# momentum
shapes = [K.int_shape(p) for p in params]
moments = [K.zeros(shape) for shape in shapes]
self.weights = [self.iterations] + moments
for p, g, m in zip(params, grads, moments):
v = self.momentum * m - lr * g # velocity
self.updates.append(
我是tensorflow的新手。我有一个张量score,我试图用形状score.shape[0]创建一个张量变量。
score = tf.constant(np.array([[10, 0, -5], [4, 3, 0], [-3, 0, 11]]),
dtype=tf.float32)
v = tf.Variable(tf.zeros(tf.shape(score)[0]))
但是我得到了一个错误:ValueError: Shape must be rank 1 but is rank 0 for 'zeros_2' (op: 'Fill') with in
我想从其他张量中分配张量。我将给出如下的简单演示:
import tensorflow as tf
input = tf.constant([1.,2.,3.],dtype=tf.float32)
test = tf.zeros(shape=(3,),dtype = tf.float32)
test[0] = input[0]
#tf.assign(test[0],input[0])
with tf.Session() as sess:
sess.run(test)
我希望第一个测试元素的结果可以等于输入‘
错误是Tensor object does not support
假设我有一个形状为600,11的TensorFlow张量,最后(第11)列的所有元素都是零。我想像这样迭代张量的值:对于每一行,我检查该行的前10个元素的最大值是否大于值X。如果为True,则保持该行不变,如果为False,则将行的前10个元素设置为等于0,并使第11个元素等于1。如何做到这一点?我的张量的结构如下所示: import tensorflow as tf
a = tf.zeros([600, 1], dtype=tf.float32)
b = tf.random.uniform([600,10], minval=0, maxval=1, dtype=tf.float32)
c
对于在python中使用tensorflow的softmax回归程序,我想将我的1000 jpeg图像文件作为2D张量x:图像索引,像素索引。"image index“是图像,像素索引是该图像的特定图像像素。模型方程是:
y = tf.nn.softmax(tf.matmul(x, W) + b)
where:
x = tf.placeholder(tf.float32, [None, image_size])
W = tf.Variable(tf.zeros([image_size, classes]))
b = tf.Variable(tf.zeros([classes]))
图像
所以基本上,我的问题和Concatenating empty array in Numpy是一样的,除了Tensorflow。 主要的动机是以一种比使用if语句更漂亮的方式来处理初始数组。我目前的伪代码是: E = None
for a in A:
if E is None:
E = a
else:
E = tf.concat([E, a], axis=0) 这种技术是有效的,但我想让它变得更漂亮,也许只使用tf.Tensor。这是一个自定义层的代码,所以我对在模型内部工作的代码感兴趣。 我想要一个更接近可接受的响应的解决方案,将E初始化为:E
我正在尝试将用TensorFlow1.13编写的现有代码(使用估计器)迁移到TensorFlow2.0,但我在尝试找到等效的API来冻结和输出图形以及输出.pb文件时遇到了问题。
在TensorFlow1.13中,estimator类有一个函数export_savedmodel,它接受一个模型路径和一个serving_input_receiver_fn。我在设置serving_input_receiver_fn时遇到了麻烦,因为它似乎接受占位符。但是,当迁移到TensorFlow2.0时,尽管存在相同的API,但由于将急切执行模型设置为默认值,占位符不能在急切执行模式下工作。
def e