Spec-Zone.ru › TensorFlow

tf.strings.unicode_split_with_offsets

Разбивает каждую строку на последовательность кодовых точек с начальными смещениями.

Посмотреть псевдонимы

Псевдонимы совместимости для миграции

Подробнее см. в руководстве по миграции.

tf.compat.v1.strings.unicode_split_with_offsets

tf.strings.unicode_split_with_offsets(
    input,
    input_encoding,
    errors='replace',
    replacement_char=65533,
    name=None
)

Эта операция похожа на tf.strings.decode(...), но также возвращает начальное смещение каждого символа в соответствующей строке. Эти сведения можно использовать для сопоставления символов с исходной последовательностью байтов.

Возвращает кортеж (chars, start_offsets), где:

  • chars[i1...iN, j] — подстрока input[i1...iN], кодирующая j-й символ при декодировании с помощью input_encoding.
  • start_offsets[i1...iN, j] — начальное смещение в байтах для j-го символа в input[i1...iN] при декодировании с помощью input_encoding.
Аргументы
input Потенциально нерегулярный тензор string с числом измерений N и формой [D1...DN]. N должно быть известно статически.
input_encoding Строковое имя кодировки Unicode, которая должна использоваться для декодирования каждой строки.
errors Задает реакцию на случай, если входную строку невозможно преобразовать с помощью указанной кодировки. Одно из значений:
  • 'strict': вызвать исключение для любых недопустимых подстрок.
  • 'replace': заменить недопустимые подстроки на replacement_char.
  • 'ignore': пропустить недопустимые подстроки.
replacement_char Заменяющая кодовая точка, используемая вместо недопустимых подстрок в input при значении errors='replace'.
name Имя операции (необязательно).
Возвращает
Кортеж тензоров с числом измерений N+1 и формой (codepoints, start_offsets).
  • codepoints — тензор int32 с формой [D1...DN, (num_chars)].
  • offsets — тензор int64 с формой [D1...DN, (num_chars)].

Возвращаемые тензоры являются tf.Tensor, если input — скаляр, и tf.RaggedTensor в противном случае.

Пример:

input = [s.encode('utf8') for s in (u'G\xf6\xf6dnight', u'\U0001f60a')]
result = tf.strings.unicode_split_with_offsets(input, 'UTF-8')
result[0].to_list()  # character substrings
[[b'G', b'\xc3\xb6', b'\xc3\xb6', b'd', b'n', b'i', b'g', b'h', b't'],
 [b'\xf0\x9f\x98\x8a']]
result[1].to_list()  # offsets
[[0, 1, 3, 5, 6, 7, 8, 9, 10], [0]]

© 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/python/tf/strings/unicode_split_with_offsets

Spec-Zone.ru

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