tensorflow - 将张量从较小的形状平铺到较大的形状
问题描述
我有一个形状为 (1,4,4,1) 的张量,我想重复此操作并将形状增加到 (1,28,28,1)。我想在每个维度上重复它。
解决方案
您可以使用 tf.tile。这是一个带有一些较小张量的示例:
a = tf.constant([[[[1],[2]],[[3],[4]]]])
print(a.shape) # (1, 2, 2, 1)
b = tf.tile(a, [1,3,3,1])
print(b.shape) # (1, 6, 6, 1)
with tf.Session() as sess:
print(sess.run(b))
# [[[[1] [2] [1] [2] [1] [2]]
# [[3] [4] [3] [4] [3] [4]]
# [[1] [2] [1] [2] [1] [2]]
# [[3] [4] [3] [4] [3] [4]]
# [[1] [2] [1] [2] [1] [2]]
# [[3] [4] [3] [4] [3] [4]]]]
推荐阅读
- git - Git push 被拒绝并且 fetch 失败
- forms - Zeppelin 动态形式:z.input() 在一个笔记本中抛出“AttributeError”错误,但在另一个笔记本中没有
- java - Java 外部命令:未找到,createProcess errno=2
- python - 为什么此 api 请求仅在在线部署时才返回超时?
- facebook-graph-api - Facebook 移动应用程序如何签署对 Facebook 服务器的 API 调用以进行身份验证?
- ios - 快速执行队列
- python - 切换按钮以更改其类之外的某些东西的属性 - Kivy
- sql - 选择行序列
- nsis - NSIS 自定义页面 MessageBox 跳转到下一页
- scheme - 为什么是这样的 if 语句?