我正在尝试构建一个多层感知器,其中我的数据由多对特征组成,例如:每个输入都是一个数组x_1 = [v_1,v_2]
,其中v_i
是特征向量。因此,我的输入张量大小为[None,2,50]
(每个v_i的大小为50)。现在我尝试并且未能将输入张量分成两个张量:一个包含v_1&,而另一个包含v_2' s。例如,为了获得v_1的修改张量,我尝试:
v1 = tf.squeeze(tf.slice(input, [0,0,0], [-1, 1, -1]), squeeze_dims=[1]))
我得到: 大小必须是等级3 ......在我看来,它似乎是......我做错了什么? 提前谢谢!
答案 0 :(得分:0)
分割在轴= 1上(您的第2维:[None, 2 ,50]),并且希望在两侧均等分布:[1,1],(使用[2, 0],[0,2]看看会发生什么,一个拆分什么都不会得到)
v1,v2 = tf.split(input,num_or_size_splits=[1,1],axis=1)
v1 = tf.squeeze(v1,1)
split返回一个列表,现在可以对其进行压缩