Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tensorflow와 Python을 사용하여 길이가 같은 여러 문자열을 인코딩하는 방법은 무엇입니까?

<시간/>

동일한 길이의 여러 문자열은 'tf.Tensor'를 입력 값으로 사용하여 인코딩할 수 있습니다. 다양한 길이의 여러 문자열을 인코딩해야 하는 경우 tf.RaggedTensor를 입력으로 사용해야 합니다. 텐서에 패딩/희소 형식의 여러 문자열이 포함되어 있으면 tf.RaggedTensor로 변환해야 합니다. 그런 다음 unicode_encode 메서드를 호출해야 합니다.

자세히 알아보기: TensorFlow란 무엇이며 Keras가 TensorFlow와 함께 신경망을 생성하는 방법은 무엇입니까?

파이썬을 사용하여 유니코드 문자열을 표현하는 방법과 이에 상응하는 유니코드를 사용하여 조작하는 방법을 이해합시다. 먼저, 표준 문자열 연산에 해당하는 유니코드를 사용하여 스크립트 감지를 기반으로 유니코드 문자열을 토큰으로 분리합니다.

Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook을 기반으로 구축되었습니다.

print("When encoding multiple strings of   same lengths, tf.Tensor is used as input")
tf.strings.unicode_encode([[99, 97, 116], [100, 111, 103], [ 99, 111, 119]],output_encoding='UTF-8')
print("When encoding multiple strings with varying length, a tf.RaggedTensor should be used as input:")
tf.strings.unicode_encode(batch_chars_ragged, output_encoding='UTF-8')
print("If there is a tensor with multiple strings in padded/sparse format, convert it to a tf.RaggedTensor before calling unicode_encode")
tf.strings.unicode_encode(
   tf.RaggedTensor.from_sparse(batch_chars_sparse),
   output_encoding='UTF-8')
tf.strings.unicode_encode(
   tf.RaggedTensor.from_tensor(batch_chars_padded, padding=-1),
   output_encoding='UTF-8')

코드 크레딧:https://www.tensorflow.org/tutorials/load_data/unicode

출력

When encoding multiple strings of   same lengths, tf.Tensor is used as input
When encoding multiple strings with varying length, a tf.RaggedTensor should be used as input:
If there is a tensor with multiple strings in padded/sparse format, convert it to a tf.RaggedTensor before calling unicode_encode

설명

  • 길이가 같은 여러 문자열을 인코딩할 때 tf.Tensor를 입력으로 사용할 수 있습니다.
  • 길이가 다양한 여러 문자열을 인코딩할 때 tf.RaggedTensor를 입력으로 사용할 수 있습니다.
  • 패디드/스파스 형식의 여러 문자열이 있는 텐서가 있는 경우 unicode_encode를 호출하기 전에 tf.RaggedTensor로 변환해야 합니다.