Spec-Zone.ru › TensorFlow 2.4

tf.strings.unicode_split_with_offsets

Просмотреть исходный код на GitHub

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

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

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

См. Руководство по миграции для получения более подробной информации.

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 с формой [D1...DN]. N должна быть статически известна.
input_encoding Имя строки для кодировки Юникод, которая должна использоваться для декодирования каждой строки.
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]]

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

Spec-Zone.ru

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