returnn.tensor._tensor_extra

Backwards-compatible functions and attribs for the old Data class, or just rarely used attribs, such that we can save memory for the common case.

returnn.tensor._tensor_extra.infer_sparse_dim(*, name: str, sparse: bool | None = None, sparse_dim, dim=<class 'returnn.util.basic.NotSpecified'>, **_other_kwargs) Dim | None[source]
Parameters:
  • name

  • sparse

  • sparse_dim

  • dim

Returns:

sparse dim

returnn.tensor._tensor_extra.infer_dim_tags(*, name, batch_dim_axis=<class 'returnn.util.basic.NotSpecified'>, time_dim_axis=<class 'returnn.util.basic.NotSpecified'>, feature_dim_axis=<class 'returnn.util.basic.NotSpecified'>, dim_tags: ~typing.Sequence[~returnn.tensor.dim.Dim] | None = None, shape: ~typing.Sequence[int | None] | None = None, sparse_dim: ~returnn.tensor.dim.Dim | None = None, dim=<class 'returnn.util.basic.NotSpecified'>, size_placeholder=None, auto_create_placeholders=False, batch=None, **_other_kwargs) Tuple[Dim, ...][source]
Parameters:
  • name

  • batch_dim_axis (int|None|NotSpecified) – where we add the batch-dim. e.g. shape=(time,…), 0 -> (batch,time,…), 1 -> (time,batch,…). Default is 0. This is normally always set, and a lot of code expects this. However, you can set it to None if this Tensor does not have a batch-dim.

  • time_dim_axis (int|None|NotSpecified) – where we have the time dim axis, after we added the batch-dim. this is often 1. however, can be None if there is no time-dim.

  • feature_dim_axis (int|None|NotSpecified) – feature dim axis. by default it’s the last one

  • dim_tags

  • shape – including time-dim (can be None). excluding batch-dim. e.g. (time,feat)=(None,128)

  • sparse_dim

  • dim (int|None|NotSpecified) – feature dimension, shape[-1] if not sparse, otherwise like num_classes

  • size_placeholder

  • auto_create_placeholders

  • batch

Returns:

dims