Numpy 张量流密层操作

Numpy 张量流密层操作,numpy,tensorflow,neural-network,tensor,Numpy,Tensorflow,Neural Network,Tensor,这里的输出形状原来是5x3x10。输入形状为5x3x11。我看过这个操作的源代码,发现权重矩阵的形状是11x10。我还了解到该操作类似于res=np.tensordot(输入、权重、轴=([2],[0]))。我不明白这是怎么发生的。如何在神经网络中可视化此操作?因为密集层只是一个有10个神经元的单层,权重矩阵怎么可能是11x10?对于密集层,每个输入通道都通过权重连接到每个输出神经元。因此这里的输入通道=11和输出通道=10,因此权重数11x10 a = tf.random_uniform([5

这里的输出形状原来是
5x3x10
。输入形状为
5x3x11
。我看过这个操作的源代码,发现权重矩阵的形状是
11x10
。我还了解到该操作类似于
res=np.tensordot(输入、权重、轴=([2],[0]))
。我不明白这是怎么发生的。如何在神经网络中可视化此操作?因为密集层只是一个有10个神经元的单层,权重矩阵怎么可能是
11x10

对于密集层,每个输入通道都通过权重连接到每个输出神经元。因此这里的
输入通道=11
输出通道=10
,因此权重数
11x10

a = tf.random_uniform([5, 3, 5])
b = tf.random_uniform([5, 1, 6])

tiled_b = tf.tile(b, [1, 3, 1])
c = tf.concat([a, tiled_b], 2)
d = tf.layers.dense(c, 10, activation=tf.nn.relu)

每个神经元是如何连接到输入通道的?你是说每个神经元都由
5x3
矩阵共享吗?如果是,正在进行的操作是什么?每个
5x3
组都包含
10
输出神经元。在输入中,有
5x3
11
输入神经元。因此,在每个
5x3
组中,该组
11
乘以一个矩阵,得到一组
10
# input 5x3x11, here last dimension is the input channel
dense_layer_weight_shape = [input_channel, output_channel]