tensorflow :: operaciones :: UnicodeTranscode

#include <string_ops.h>

Transcodifica el texto de entrada de una codificación de origen a una codificación de destino.

Resumen

La entrada es un tensor de cuerda de cualquier forma. La salida es un tensor de cadena de la misma forma que contiene las cadenas transcodificadas. Las cadenas de salida son siempre unicode válido. Si la entrada contiene posiciones de codificación no válidas, el atributo de errors establece la política sobre cómo tratar con ellos. Si se utiliza la política de manejo de errores predeterminada, el formato no válido será sustituido en la salida por replacement_char . Si se ignore política de errores, las posiciones de codificación no válidas en la entrada se omiten y no se incluyen en la salida. Si se establece en strict , cualquier formato no válido dará como resultado un error de argumento no válido.

Esta operación se puede utilizar con output_encoding = input_encoding para imponer el formato correcto para las entradas, incluso si ya están en la codificación deseada.

Si la entrada tiene como prefijo una marca de orden de bytes necesaria para determinar la codificación (por ejemplo, si la codificación es UTF-16 y la lista de materiales indica big-endian), esa lista de materiales se consumirá y no se emitirá en la salida. Si la codificación de entrada está marcada con un endianness explícito (por ejemplo, UTF-16-BE), entonces la lista de materiales se interpreta como un espacio sin ruptura y se conserva en la salida (incluido siempre para UTF-8).

El resultado final es que si la entrada se marca como un endianness explícito, la transcodificación es fiel a todos los puntos de código en la fuente. Si no está marcado con un endianness explícito, la lista de materiales no se considera parte de la cadena en sí, sino como metadatos, por lo que no se conserva en la salida.

Ejemplos:

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

Argumentos:

  • alcance: un objeto de alcance
  • entrada: el texto que se va a procesar. Puede tener cualquier forma.
  • input_encoding: codificación de texto de las cadenas de entrada. Esta es cualquiera de las codificaciones admitidas por los convertidores algorítmicos ucnv de ICU. Ejemplos: "UTF-16", "US ASCII", "UTF-8" .
  • output_encoding: la codificación Unicode que se utilizará en la salida. Debe ser uno de "UTF-8", "UTF-16-BE", "UTF-32-BE" . Las codificaciones de varios bytes serán big-endian.

Atributos opcionales (consulte Attrs ):

  • errores: Política de manejo de errores cuando se encuentra un formato no válido en la entrada. El valor de 'estricto' hará que la operación produzca un error de argumento no válido en cualquier formato de entrada no válido. Un valor de 'reemplazar' (el predeterminado) hará que la operación reemplace cualquier formato no válido en la entrada con el punto de código replacement_char . Un valor de 'ignorar' hará que la operación omita cualquier formato no válido en la entrada y no produzca ningún carácter de salida correspondiente.
  • replacement_char: el punto de código del carácter de reemplazo que se utilizará en lugar de cualquier formato no válido en la entrada cuando los errors='replace' . Se puede utilizar cualquier punto de código Unicode válido. El valor predeterminado es el carácter de reemplazo Unicode predeterminado es 0xFFFD o U + 65533.)

Tenga en cuenta que para UTF-8, pasar un carácter de reemplazo expresable en 1 byte, como '', conservará la alineación de la cadena con la fuente, ya que los bytes no válidos se reemplazarán con un reemplazo de 1 byte. Para UTF-16-BE y UTF-16-LE, cualquier carácter de reemplazo de 1 o 2 bytes conservará la alineación de bytes con la fuente.

  • replace_control_characters: si se deben reemplazar los caracteres de control C0 (00-1F) con replacement_char . El valor predeterminado es falso.

Devoluciones:

  • Output : un tensor de cadena que contiene texto Unicode codificado mediante output_encoding .

Constructores y Destructores

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)

Atributos públicos

operation
output

Funciones publicas

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Funciones estáticas públicas

Errors (StringPiece x)
ReplaceControlCharacters (bool x)
ReplacementChar (int64 x)

Estructuras

tensorflow :: ops :: UnicodeTranscode :: Attrs

Establecedores de atributos opcionales para UnicodeTranscode .

Atributos públicos

operación

Operation operation

producción

::tensorflow::Output output

Funciones publicas

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
)

nodo

::tensorflow::Node * node() const 

operador :: tensorflow :: Entrada

 operator::tensorflow::Input() const 

operador :: tensorflow :: Salida

 operator::tensorflow::Output() const 

Funciones estáticas públicas

Errores

Attrs Errors(
  StringPiece x
)

ReemplazarControlCaracteres

Attrs ReplaceControlCharacters(
  bool x
)

Reemplazo Char

Attrs ReplacementChar(
  int64 x
)