Spec-Zone.ru › TensorFlow C++ 2.4

tensorflow::ops::UnicodeTranscode

#include <string_ops.h>

Транскодировать входной текст из исходной кодировки в кодировку назначения.

Summary

Входной параметр — тензор строк любой формы. Выходной параметр — тензор строк той же формы, содержащий транскодированные строки. Выходные строки всегда являются допустимым Юникодом. Если вход содержит недопустимые позиции кодировки, атрибут errors устанавливает политику обработки этих ошибок. Если используется политика обработки ошибок по умолчанию, недопустимый формат в выводе будет заменен на replacement_char. Если политика обработки ошибок — ignore, все недопустимые позиции кодировки ввода будут пропущены и не включены в вывод. Если политика установлена в strict, любой недопустимый формат приведёт к ошибке InvalidArgument.

Эта операция может быть использована с output_encoding = input_encoding для обеспечения правильного формата входных данных, даже если они уже находятся в желаемой кодировке.

Если входная строка начинается с символа порядка байтов (BOM), необходимого для определения кодировки (например, если кодировка UTF-16, а BOM указывает на большой порядок байт), то этот BOM будет прочитан и не будет включён в вывод. Если кодировка входа помечена явным указанием порядка байт (например, UTF-16-BE), то BOM интерпретируется как пробел и сохраняется в выводе (всегда для UTF-8).

В итоге, если вход помечен явным указанием порядка байт, транскодирование будет верным для всех кодовых точек источника. Если вход не помечен явным указанием порядка байт, BOM не рассматривается как часть самой строки, а как метаданные, и поэтому не сохраняется в выводе.

Примеры:

tf.strings.unicode_transcode(["Hello", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE") tf.strings.unicode_transcode(["A", "B", "C"], "US ASCII", "UTF-8").numpy() array([b'A', b'B', b'C'], dtype=object)

Аргументы:

  • scope: Объект Scope
  • input: Текст для обработки. Может иметь любую форму.
  • input_encoding: Кодировка текста входных строк. Это любая из кодировок, поддерживаемых алгоритмическими конвертерами ICU ucnv. Примеры: "UTF-16", "US ASCII", "UTF-8".
  • output_encoding: Кодировка Юникода для использования в выводе. Должна быть одной из "UTF-8", "UTF-16-BE", "UTF-32-BE". Многобайтовые кодировки будут иметь порядок байт big-endian.

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

  • errors: Политика обработки ошибок при обнаружении недопустимого формата ввода. Значение 'strict' заставит операцию выдавать ошибку InvalidArgument при любом недопустимом формате входных данных. Значение 'replace' (по умолчанию) заставит операцию заменить любой недопустимый формат ввода на replacement_char код символа. Значение 'ignore' заставит операцию пропустить любой недопустимый формат ввода и не генерировать соответствующий выходной символ.
  • replacement_char: Код символа замены, используемый для замены любого недопустимого формата ввода при errors='replace'. Любой допустимый Юникод-символ может быть использован. Значение по умолчанию — символ замены Юникода по умолчанию — 0xFFFD или U+65533.)

Обратите внимание, что для UTF-8, передача символа замены, выражаемого одним байтом, такого как ' ', сохранит выравнивание строки со стороной источника, поскольку недопустимые байты будут заменены символом замены длиной в один байт. Для UTF-16-BE и UTF-16-LE любой символ замены длиной в 1 или 2 байта сохранит выравнивание байтов со стороной источника.

  • replace_control_characters: Заменять ли управляющие символы C0 (00-1F) на replacement_char. По умолчанию — false.

Возвращает:

  • Output: Тензор строк, содержащий текст Юникода, закодированный с использованием output_encoding.
Конструкторы и деструкторы
UnicodeTranscode(const ::tensorflow::Scope & scope, ::tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding)
UnicodeTranscode(const ::tensorflow::Scope & scope, ::tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding, const UnicodeTranscode::Attrs & attrs)
Публичные атрибуты
operation
Operation
output
::tensorflow::Output
Публичные функции
node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const
Публичные статические функции
Errors(StringPiece x)
Attrs
ReplaceControlCharacters(bool x)
Attrs
ReplacementChar(int64 x)
Attrs
Структуры
tensorflow::ops::UnicodeTranscode::Attrs

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

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

operation

Operation operation

output

::tensorflow::Output output

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

UnicodeTranscode

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding
)

UnicodeTranscode

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding,
  const UnicodeTranscode::Attrs & attrs
)

node

::tensorflow::Node * node() const 

operator::tensorflow::Input

operator::tensorflow::Input() const 

operator::tensorflow::Output

operator::tensorflow::Output() const 

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

Errors

Attrs Errors(
  StringPiece x
)

ReplaceControlCharacters

Attrs ReplaceControlCharacters(
  bool x
)

ReplacementChar

Attrs ReplacementChar(
  int64 x
)

© 2020 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.4/api_docs/cc/class/tensorflow/ops/unicode-transcode

Spec-Zone.ru

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