Spec-Zone.ru › TensorFlow C++ 2.9

tensorflow::ops::Substr

#include <string_ops.h>

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

Summary

Для каждой строки в входном 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: Если первый аргумент нельзя преобразовать в Tensor типа dtype string.
  • InvalidArgumentError: Если индексы выходят за пределы диапазона.
  • ValueError: Если pos и len имеют разную форму.

Аргументы:

  • scope: Объект Scope
  • input: Tensor строк
  • pos: Скаляр, определяющий позицию первого символа в каждой подстроке
  • len: Скаляр, определяющий количество символов в каждой подстроке

Дополнительные атрибуты (см. Attrs):

  • unit: Единица, используемая для создания подстроки. Один из: "BYTE" (для определения позиции и длины по байтам) или "UTF8_CHAR" (для кодовых точек Юникода в кодировке UTF-8). По умолчанию "BYTE". Результаты не определены, если unit=UTF8_CHAR и строки input не содержат структурно корректного UTF-8.

Возвращаемое значение:

  • Output: Tensor подстрок
Конструкторы и деструкторы
Substr(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input pos, ::tensorflow::Input len)
Substr(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input pos, ::tensorflow::Input len, const Substr::Attrs & attrs)
Публичные атрибуты
operation
Operation
output
::tensorflow::Output
Публичные функции
node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const
Публичные статические функции
Unit(StringPiece x)
Attrs
Структуры
tensorflow::ops::Substr::Attrs

Дополнительные параметры для Substr.

Публичные атрибуты

operation

Operation operation

output

::tensorflow::Output output

Публичные функции

Substr

 Substr(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input pos,
  ::tensorflow::Input len
)

Substr

 Substr(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input pos,
  ::tensorflow::Input len,
  const Substr::Attrs & attrs
)

node

::tensorflow::Node * node() const 

operator::tensorflow::Input

operator::tensorflow::Input() const 

operator::tensorflow::Output

operator::tensorflow::Output() const 

Публичные статические функции

Unit

Attrs Unit(
  StringPiece x
)

© 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/versions/r2.9/api_docs/cc/class/tensorflow/ops/substr

Spec-Zone.ru

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