假设我有y个全部的嵌入,它们都是用这段代码检索的
embeds = tf.nn.embedding_lookup(embeddings, train_dataset)
所以数据应该是这样的
^{pr2}$假设,我要取3个嵌入组的平均值。所以有点像
averaged_embeds = [ averageOf(embed45, embed2, embed939) , averageOf(embed3, embed32, embed2), . . . . etc]
所以当评估的时候会像这样
averaged_embeds = [ averagedEmbeds1, averagedEmbeds2, averagedEmbeds3, . . . etc]
最好的办法是什么?在
我的第一个想法是tf.段平均值但据我所知,它只能取每个嵌入中的平均值,而不是一堆嵌入的平均值(如果这是错误的,请告诉我)。在
还有tf.reduce_平均值它可以沿着一个指定的维度求平均值,但它将取所有嵌入项的平均值,而不是某个特定数量的束。在
实际上tf.段平均值可用于平均嵌入,下面是一个示例
不幸的是,如果嵌入张量有两个以上的维,我还没有找到一个平均值的方法。我尝试过使用}张量。在
segments
具有多个维度,但似乎不起作用。到目前为止,我在tf.segment_mean
操作前后重塑embed
和{您可以使用^{} ,但这意味着,如果参数} 也是一样)。更好的方法是在不适用这些限制的情况下使用
num_or_size_splits
是标量,那么它应该是输入长度的倍数,或者沿着拆分维度的维数之和应该与输入的长度匹配(对于^{tf.extract_image_patches
:对于三维段,代码更改为:
^{pr2}$相关问题 更多 >
编程相关推荐