将参差不齐的元素批量转换为 tf.sparse.SparseTensor
的转换。
用法
tf.data.experimental.dense_to_sparse_batch(
batch_size, row_shape
)
参数
-
batch_size
tf.int64
标量tf.Tensor
,表示要在单个批次中组合的此数据集的连续元素的数量。 -
row_shape
一个tf.TensorShape
或tf.int64
向量 tensor-like 对象,表示生成的tf.sparse.SparseTensor
中一行的等效密集形状。此数据集的每个元素必须具有与row_shape
相同的等级,并且在每个维度中的大小必须小于或等于row_shape
。
返回
-
一个
Dataset
转换函数,可以传递给tf.data.Dataset.apply
。
与 Dataset.padded_batch()
一样,此转换将数据集的多个连续元素(可能具有不同的形状)组合成一个元素。生成的元素具有三个分量(indices
, values
和 dense_shape
),它们包含表示相同数据的 tf.sparse.SparseTensor
。 row_shape
表示生成的 tf.sparse.SparseTensor
中每一行的密集形状,有效批量大小被预先设置。例如:
# NOTE:The following examples use `{ ... }` to represent the
# contents of a dataset.
a = { ['a', 'b', 'c'], ['a', 'b'], ['a', 'b', 'c', 'd'] }
a.apply(tf.data.experimental.dense_to_sparse_batch(
batch_size=2, row_shape=[6])) ==
{
([[0, 0], [0, 1], [0, 2], [1, 0], [1, 1]], # indices
['a', 'b', 'c', 'a', 'b'], # values
[2, 6]), # dense_shape
([[0, 0], [0, 1], [0, 2], [0, 3]],
['a', 'b', 'c', 'd'],
[1, 6])
}
相关用法
- Python tf.data.experimental.dense_to_ragged_batch用法及代码示例
- Python tf.data.experimental.RandomDataset.group_by_window用法及代码示例
- Python tf.data.experimental.SqlDataset.enumerate用法及代码示例
- Python tf.data.experimental.make_saveable_from_iterator用法及代码示例
- Python tf.data.experimental.SqlDataset.zip用法及代码示例
- Python tf.data.experimental.Counter用法及代码示例
- Python tf.data.experimental.SqlDataset.shard用法及代码示例
- Python tf.data.experimental.CsvDataset.window用法及代码示例
- Python tf.data.experimental.RandomDataset.cache用法及代码示例
- Python tf.data.experimental.SqlDataset.snapshot用法及代码示例
- Python tf.data.experimental.CsvDataset.apply用法及代码示例
- Python tf.data.experimental.DatasetInitializer用法及代码示例
- Python tf.data.experimental.ignore_errors用法及代码示例
- Python tf.data.experimental.unbatch用法及代码示例
- Python tf.data.experimental.RandomDataset.map用法及代码示例
- Python tf.data.experimental.CsvDataset.flat_map用法及代码示例
- Python tf.data.experimental.assert_cardinality用法及代码示例
- Python tf.data.experimental.CsvDataset.random用法及代码示例
- Python tf.data.experimental.save用法及代码示例
- Python tf.data.experimental.CsvDataset.cardinality用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.data.experimental.dense_to_sparse_batch。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。