Spec-Zone.ru › TensorFlow 2.3

tf.raw_ops.Substr

Возвращает подстроки из Tensor строк.

Просмотр псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.raw_ops.Substr

tf.raw_ops.Substr(
    input, pos, len, unit='BYTE', name=None
)

Для каждой строки в входном Tensor, создается подстрока, начинающаяся с индекса pos с общей длиной len.

Если len определяет подстроку, которая выходила бы за пределы длины входной строки, или если len отрицательно, то используются как можно больше символов.

Отрицательный pos указывает на расстояние внутри строки назад от конца.

Если pos указывает на индекс, который выходит за пределы диапазона для любой из входных строк, то будет выброшено InvalidArgumentError.

pos и len должны иметь одинаковую форму, в противном случае при создании операции будет выброшено ValueError.

Примечание: Substr поддерживает вещание до двух измерений. Дополнительная информация о вещании здесь

Примеры

Использование скалярного pos и len:

input = [b'Hello', b'World']
position = 1
length = 3

output = [b'ell', b'orl']

Использование pos и len с той же формой, что и input:

input = [[b'ten', b'eleven', b'twelve'],
         [b'thirteen', b'fourteen', b'fifteen'],
         [b'sixteen', b'seventeen', b'eighteen']]
position = [[1, 2, 3],
            [1, 2, 3],
            [1, 2, 3]]
length =   [[2, 3, 4],
            [4, 3, 2],
            [5, 5, 5]]

output = [[b'en', b'eve', b'lve'],
          [b'hirt', b'urt', b'te'],
          [b'ixtee', b'vente', b'hteen']]

Вещание pos и len на input:

input = [[b'ten', b'eleven', b'twelve'],
         [b'thirteen', b'fourteen', b'fifteen'],
         [b'sixteen', b'seventeen', b'eighteen'],
         [b'nineteen', b'twenty', b'twentyone']]
position = [1, 2, 3]
length =   [1, 2, 3]

output = [[b'e', b'ev', b'lve'],
          [b'h', b'ur', b'tee'],
          [b'i', b've', b'hte'],
          [b'i', b'en', b'nty']]

Вещание input на pos и len:

input = b'thirteen'
position = [1, 5, 7]
length =   [3, 2, 1]

output = [b'hir', b'ee', b'n']
Исключения
  • ValueError: Если первый аргумент не может быть преобразован в тензор типа dtype string.
  • InvalidArgumentError: Если индексы выходят за пределы диапазона.
  • ValueError: Если pos и len не имеют одинаковой формы.
Аргументы
input A Tensor типа string. Тензор строк
pos A Tensor. Должен быть одного из следующих типов: int32, int64. Скаляр, определяющий позицию первого символа в каждой подстроке
len A Tensor. Должен иметь тот же тип, что и pos. Скаляр, определяющий количество символов для включения в каждую подстроку
unit Необязательный string из: "BYTE", "UTF8_CHAR". По умолчанию "BYTE". Единица, используемая для создания подстроки. Один из: "BYTE" (для определения позиции и длины по байтам) или "UTF8_CHAR" (для UTF-8 кодированных точек кода Юникода). По умолчанию "BYTE". Результаты не определены, если unit=UTF8_CHAR и строки input не содержат структурно допустимого UTF-8.
name Имя операции (необязательно).
Возвращаемое значение
A Tensor типа string.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/raw_ops/Substr

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API