SplitToSequence

SplitToSequence - 24

版本

  • 名称: SplitToSequence (GitHub)

  • : main

  • 起始版本24

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的操作符已可用于版本 24 及以上

摘要

沿指定的“axis”将一个张量分割成一个张量序列。可以使用可选参数“split”来指定各部分的长度。如果未指定参数 split',则默认标量值 1 用作 split' 的值。 “split”必须只包含正数。“split”要么是一个标量(空形状的张量),要么是一个一维张量。如果“split”是标量,则“input”将被分割成尽可能大的块,每个块的大小为“split”。如果沿给定轴“axis”的“input”大小不能被“split”整除,则最后一个块可能小于“split”。如果“split”是一维张量,则输入张量将被分割成 `size(split)` 个块,其中沿“axis”的各部分的长度在“split”中指定。在这种情况下,“split”中的条目之和必须等于“axis”上输入张量的维度大小。

属性

  • axis - INT (默认值为 '0')

    分割所在的轴。负值表示从后往前计数维度。接受的范围是 [-rank, rank-1]。

  • keepdims - INT (默认值为 '1')

    是否保留分割的维度。默认为 1,表示保留分割维度。如果指定了输入 'split',则忽略此属性。

输入

1 到 2 个输入之间。

  • 输入 (异构) - T

    要分割的张量

  • split (可选, 异构) - I

    每个输出的长度。它可以是标量(空形状的张量),也可以是一维张量。所有值都必须 >= 0。

输出

  • output_sequence (异构) - S

    分割后形成张量序列的一个或多个输出

类型约束

  • T in ( tensor(bfloat16), tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    将输入类型限制为所有张量类型。

  • I 在 ( tensor(int32), tensor(int64) )

    将分割大小限制为整型张量。

  • S in ( seq(tensor(bfloat16)), seq(tensor(bool)), seq(tensor(complex128)), seq(tensor(complex64)), seq(tensor(double)), seq(tensor(float)), seq(tensor(float16)), seq(tensor(int16)), seq(tensor(int32)), seq(tensor(int64)), seq(tensor(int8)), seq(tensor(string)), seq(tensor(uint16)), seq(tensor(uint32)), seq(tensor(uint64)), seq(tensor(uint8)) )

    将输出类型限制为所有张量类型。

SplitToSequence - 11

版本

  • 名称: SplitToSequence (GitHub)

  • : main

  • 起始版本: 11

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的运算符自 版本 11 起可用。

摘要

沿指定的“axis”将一个张量分割成一个张量序列。可以使用可选参数“split”来指定各部分的长度。如果未指定参数 split',则默认标量值 1 用作 split' 的值。 “split”必须只包含正数。“split”要么是一个标量(空形状的张量),要么是一个一维张量。如果“split”是标量,则“input”将被分割成尽可能大的块,每个块的大小为“split”。如果沿给定轴“axis”的“input”大小不能被“split”整除,则最后一个块可能小于“split”。如果“split”是一维张量,则输入张量将被分割成 `size(split)` 个块,其中沿“axis”的各部分的长度在“split”中指定。在这种情况下,“split”中的条目之和必须等于“axis”上输入张量的维度大小。

属性

  • axis - INT (默认值为 '0')

    分割所在的轴。负值表示从后往前计数维度。接受的范围是 [-rank, rank-1]。

  • keepdims - INT (默认值为 '1')

    是否保留分割的维度。默认为 1,表示保留分割维度。如果指定了输入 'split',则忽略此属性。

输入

1 到 2 个输入之间。

  • 输入 (异构) - T

    要分割的张量

  • split (可选, 异构) - I

    每个输出的长度。它可以是标量(空形状的张量),也可以是一维张量。所有值都必须 >= 0。

输出

  • output_sequence (异构) - S

    分割后形成张量序列的一个或多个输出

类型约束

  • T in ( tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    将输入类型限制为所有张量类型。

  • I 在 ( tensor(int32), tensor(int64) )

    将分割大小限制为整型张量。

  • S in ( seq(tensor(bool)), seq(tensor(complex128)), seq(tensor(complex64)), seq(tensor(double)), seq(tensor(float)), seq(tensor(float16)), seq(tensor(int16)), seq(tensor(int32)), seq(tensor(int64)), seq(tensor(int8)), seq(tensor(string)), seq(tensor(uint16)), seq(tensor(uint32)), seq(tensor(uint64)), seq(tensor(uint8)) )

    将输出类型限制为所有张量类型。