3
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)
ここで出力形状は5x3x10
であることが判明しました。入力形状は5x3x11
です。私はこの操作のソースコードを見て、重み行列の形状が11x10
であることを発見しました。私はまた、操作がres = np.tensordot(input,weights,axes=([2],[0]))
に似ていることを理解しています。私が理解できないことは、これがどのように起こっているかです。ニューラルネットワークでこの操作をどのように視覚化するのですか?高密度層は10ニューロンの単層であるため、重み行列はどのようにして11x10
になりますか?テンソルフロー稠密層操作
各ニューロンはどのように入力チャンネルに接続されていますか?あなたはそれぞれのニューロンが '5x3'マトリックスによって共有されていると言っていますか?もしそうなら、何が起こっているのですか? –
「5x3」グループの各々は、「10」出力ニューロンを含む。入力には、「11x」入力ニューロンの「5x3」グループがある。したがって、これらの '5x3'グループのそれぞれでは、' 11'のセットに行列が乗算されて '10'の集合が得られます。 –