Spec-Zone.ru › TensorFlow 2.3

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 Имя строки для кодирования 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]]

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

Spec-Zone.ru

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