tf.raw_ops.UnicodeDecodeWithOffsets
Декодирует каждую строку в input в последовательность кодов Юникода.
tf.raw_ops.UnicodeDecodeWithOffsets(
input, input_encoding, errors='replace', replacement_char=65533,
replace_control_characters=False, Tsplits=tf.dtypes.int64, name=None
)
Код символов для всех строк возвращается с помощью одного вектора char_values, где строки расширяются до символов в порядке следования строк. Аналогично, смещения начальных байтов символов возвращаются с помощью одного вектора char_to_byte_starts, где строки расширяются в порядке следования строк.
Тензор row_splits указывает, где начинаются и заканчиваются коды символов и начальные смещения для каждой входной строки в тензорах char_values и char_to_byte_starts. В частности, значения для i-й строки (в порядке следования строк) хранятся в срезе [row_splits[i]:row_splits[i+1]]. Таким образом:
-
char_values[row_splits[i]+j]— это код Юникода дляj-го символа вi-й строке (в порядке следования строк). -
char_to_bytes_starts[row_splits[i]+j]— это начальное смещение байта дляj-го символа вi-й строке (в порядке следования строк). -
row_splits[i+1] - row_splits[i]— это количество символов вi-й строке (в порядке следования строк).
| Аргументы | |
|---|---|
input | A Tensor типа string. Текст для декодирования. Может иметь любую форму. Обратите внимание, что вывод выравнивается в вектор значений символов. |
input_encoding | A string. Кодировка текста входных строк. Это любая из кодировок, поддерживаемых алгоритмическими преобразователями ICU ucnv. Примеры: "UTF-16", "US ASCII", "UTF-8". |
errors | Необязательный string из: "strict", "replace", "ignore". По умолчанию "replace". Политика обработки ошибок при обнаружении неправильного форматирования ввода. Значение 'strict' приведет к тому, что операция сгенерирует ошибку InvalidArgument при любом неправильном форматировании входных данных. Значение 'replace' (по умолчанию) заставит операцию заменить любое некорректное форматирование ввода кодом символа replacement_char. Значение 'ignore' пропустит любое некорректное форматирование ввода и не сгенерирует соответствующий выходной символ. |
replacement_char | Необязательный int. По умолчанию 65533. Код символа-заменителя, который необходимо использовать вместо любого некорректного форматирования ввода при errors='replace'. Можно использовать любой допустимый код Юникода. Значение по умолчанию — стандартный символ замены Юникода 0xFFFD или U+65533. |
replace_control_characters | Необязательный bool. По умолчанию False. Следует ли заменить управляющие символы C0 (00-1F) на replacement_char. По умолчанию false. |
Tsplits | Необязательный tf.DType из: tf.int32, tf.int64. По умолчанию tf.int64. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Кортеж из объектов Tensor (row_splits, char_values, char_to_byte_starts). | |
row_splits | A Tensor типа Tsplits. |
char_values | A Tensor типа int32. |
char_to_byte_starts | A Tensor типа int64. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/raw_ops/UnicodeDecodeWithOffsets