我有一个张量,包含五个2x2矩阵-形状(1,5,2,2),张量包含5个元素-形状(5)。我想把每个2x2矩阵(前一个张量)乘以相应的值(在后一个张量中)。结果张量应为形状(1,5,2,2)。怎么做?
在运行此代码时获取以下错误
a = torch.rand(1,5,2,2)
print(a.shape)
b = torch.rand(5)
print(b.shape)
mul = a*b
RuntimeError: The size of tensor a (2) must match the size of tensor b (5) at non-singleton dimension 3
稀疏张量与自身或稠密张量的乘法在TensorFlow中似乎不起作用。下面的示例
from __future__ import print_function
import tensorflow as tf
x = tf.constant([[1.0,2.0],
[3.0,4.0]])
y = tf.SparseTensor(indices=[[0,0],[1,1]], values=[1.0,1.0], shape=[2,2])
z = tf.matmul(x,y)
sess = tf.Session()
sess.run(tf.initialize_all
我有形状的张量A (2,4,2),形状的张量B (4,4),所有的值都是int。A中的条目从0到3。
我想要创建一个形状的张量C(2,4,2)。
for循环代码类似于:
for i in range(2):
for j in range(2):
for k in range(4):
C[i][k][j] = B[k][A[i][k][j]]
我如何在tensorflow中创建这样的张量C?
谢谢。
设t是(m, n)形状的Tensorflow张量。设F是p函数的列表f_1, f_2, ...,其中这些函数的每个函数都有一个张量,并输出相同形状的张量。
我需要计算形状的张量T,(p, m, n),这样,T[i]=f_i(t)。
注意,这是映射函数的逆设置,在这里,我们将1函数应用于元素集合。在这里,我们需要将函数的集合应用到1元素。此外,我们需要在并行中这样做。
朴素的方法(非并行)是通过for循环(或列表理解)生成的这些计算结果的叠加。
T = tf.stack([
f(t) for f in F
])
Tensorflow版本: 2.0.0a。模式:急切的
我希望将我的稀疏数据批量提供给Tensorflow,所以我使用以下代码:
with graph.as_default():
global_step = tf.Variable(0, trainable=False)
# Here we use the indices and values to reproduce the input SparseTensor
sp_indice = tf.placeholder(tf.int64)
sp_value = tf.placeholder(tf.float32)
x = tf.SparseTensor(sp_