codecamp

TensorFlow函数:tf.sparse_reset_shape

tf.sparse_reset_shape 函数

sparse_reset_shape(
    sp_input,
    new_shape=None
)

定义在:tensorflow/python/ops/sparse_ops.py.

参见指南:稀疏张量>操纵

将带有索引和值的 SparseTensor 的形状重置为未更改.

如果 new_shape 是 None,则返回 sp_input 的副本, 其形状重置为 sp_input 的紧边界框.如果 sp_input 没有值,则这将是一个由全零组成的形状.

如果提供 new_shape,则它在所有维度中必须大于或等于 sp_input 的形状.当满足这个条件时,返回的 SparseTensor 将其形状重置为 new_shape,并将其索引和值与 sp_input 保持不变.

例如:

考虑一个形状为 [2,3,5] 的 sp_input,如下所示:

[0, 0, 1]: a
[0, 1, 0]: b
[0, 2, 2]: c
[1, 0, 3]: d
  • 将 new_shape 设置为 [3,7] 是错误的,因为这代表了秩为2的张量,而 sp_input 的秩为3.这可能是图形构造期间的 ValueError(如果两个形状都已知)或运行时 OpError.
  • 将 new_shape 设置为 [2,3,6] 会很好,因为与原始形状 [2,3,5] 相比,每个维度的形状都较大或相等.
  • 另一方面,将 new_shape 设置为 [2,3,4] 也是一个错误:第三个维度小于原始形状 [2,3,5](并且 InvalidArgumentError 将会提高).
  • 如果 new_shape 是 None,则返回的 SparseTensor 将具有一个形状 [2,3,4],这是 sp_input 的一个紧密的边界框.

函数参数:

  • sp_input:输入的 SparseTensor.
  • new_shape:无或表示返回的 SparseTensor的新形状的矢量.

函数返回:

该函数返回一个从 input_sp 中未做更改的 SparseTensor 指数和值.如果设置的话,它的形状是 new_shape.否则,它是 input_sp 的紧密边界框.

可能引发的异常:

  • TypeError:如果 sp_input 不是 SparseTensor.
  • ValueError:如果 new_shape 表示的张量与 sp_input 的秩不同(如果在构建图形时已知形状).
  • ValueError:如果 new_shape 在图形构建过程中确定维度太小.
  • OpError:如果 new_shape 的维度太小.如果在图形构建期间未知形状,并且在运行期间发现秩不匹配.
TensorFlow函数:tf.sparse_reorder
TensorFlow函数:tf.sparse_reshape
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

TensorFlow 函数介绍

TensorFlow 函数模块:tf

TensorFlow的image模块

TensorFlow使用之tf.io

TensorFlow使用之tf.keras

TensorFlow函数教程:tf.keras.applications

TensorFlow函数教程:tf.keras.backend

TensorFlow使用之tf.metrics

TensorFlow使用之tf.nn

TensorFlow使用之tf.python_io

TensorFlow 功能函数

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }