Spec-Zone.ru › TensorFlow C++

tensorflow::ops::Substr

#include <string_ops.h>

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

Сводка

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

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

Отрицательное значение pos указывает расстояние в обратном направлении от конца строки.

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

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

ПРИМЕЧАНИЕ: Substr поддерживает broadcasting размерностью до двух. Подробнее о broadcasting — здесь

Примеры

Использование скалярных 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']]

Broadcasting 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']]

Broadcasting 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" (для кодовых точек Unicode в кодировке 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/api_docs/cc/class/tensorflow/ops/substr

Spec-Zone.ru

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