Spec-Zone.ru › TensorFlow

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 должны иметь одинаковую форму, в противном случае при создании Op возникает 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 Tensor типа string. Тензор строк
pos Tensor. Допустимые типы: int32, int64. Скаляр, задающий позицию первого символа в каждой подстроке
len Tensor. Должен иметь тот же тип, что и pos. Скаляр, задающий количество символов в каждой подстроке
unit Необязательный string из: "BYTE", "UTF8_CHAR". По умолчанию — "BYTE". Единица измерения, используемая для создания подстроки. Возможные значения: "BYTE" (для задания позиции и длины в байтах) или "UTF8_CHAR" (для кодовых точек Unicode в кодировке UTF-8). По умолчанию используется "BYTE". Результаты не определены, если задано unit=UTF8_CHAR, а строки input не содержат структурно корректный UTF-8.
name Имя операции (необязательно).
Возвращает
Tensor типа string.

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

Spec-Zone.ru

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