python - Tensorflow:创建一个以变量为元素的矩阵
问题描述
在 Tensorflow 中,我正在尝试创建以下矩阵:
A = [[a, 0], [0,b]]
我要解决的参数在哪里a
以及在哪里。b
这是我到目前为止所拥有的:
a = tf.Variable((1,), name="a", dtype = tf.float64)
b = tf.Variable((1,), name="b", dtype = tf.float64)
const = tf.constant(0,dtype = tf.float64, shape = (1,))
A0 = tf.transpose(tf.stack([a,const]))
A1 = tf.transpose(tf.stack([const,b]))
A = tf.stack([A0,A1])
然而,A 的形状最终是 (2,1,2),这是错误的(因为 A0 和 B0 都具有形状 (1,2))
有没有一种更简单的方法可以在 Tensorflow 中创建矩阵对象 A,或者有人知道为什么形状会与我正在做的事情混淆吗?
解决方案
好吧,您可以创建一个变量向量params = tf.Variable((2,), name="ab")
,然后与单位矩阵相乘tf.eye(2)
:
A = tf.matmul(tf.expand_dims(params,0), tf.eye(2))
推荐阅读
- vb.net - Linq 异常:对象引用未设置为对象的实例
- python - Tensorflow 2.1 - make_csv_dataset - ValueError: Received a feature column from TensorFlow v1, but this is a TensorFlow v2 Estimator
- php - WooCommerce:仅针对特定用户角色显示我的帐户链接
- rest - 如何为 Spring RestDocs 即 MockMvc 的嵌套订单对象指定 FieldDescriptors
- java - 如何在 log4j2 中增量重新配置?
- laravel - laravel artisan 命令的混乱
- java - 如何点击 reCaptcha 复选框
- javascript - 禁用点击并重置它(Javascript Vanilla)
- flutter - 使用 Custom Painter 在 Flutter 中遮盖两个图像
- python - 如何降级使用 tensorflow-gpu 安装的 hdf5