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

Python을 사용하여 Tensorflow에서 유니코드 작업을 어떻게 수행할 수 있습니까?

<시간/>

유니코드 연산은 먼저 문자열의 길이를 가져와서 다른 값으로 설정하여 수행할 수 있습니다(기본값은 'byte'). 'encode' 방법은 코드 포인트의 벡터를 인코딩된 문자열 스칼라로 변환하는 데 사용됩니다. 이것은 모든 인코딩된 문자열에서 유니코드 코드 포인트를 결정하기 위해 수행됩니다.

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

자연어를 처리하는 모델은 다른 문자 집합을 가진 다른 언어를 처리합니다. 유니코드는 거의 모든 언어의 문자를 나타내는 데 사용되는 표준 인코딩 시스템으로 간주됩니다. 모든 문자는 0에서 0x10FFFF 사이의 고유 정수 코드 포인트를 사용하여 인코딩됩니다. 유니코드 문자열은 0개 이상의 코드 값 시퀀스입니다.

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

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

print("The final character takes about 4 bytes in UTF-8 encoding")
thanks = u'Hello 😊'.encode('UTF-8')
num_bytes = tf.strings.length(thanks).numpy()
num_chars = tf.strings.length(thanks, unit='UTF8_CHAR').numpy()
print('{} bytes; {} UTF-8 characters'.format(num_bytes, num_chars))

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

출력

The final character takes about 4 bytes in UTF-8 encoding
10 bytes; 7 UTF-8 characters

설명

  • tf.strings.length 연산에는 길이를 계산해야 하는 방법을 나타내는 매개변수 단위가 있습니다.
  • 기본값은 "BYTE"이지만 "UTF8_CHAR" 또는 "UTF16_CHAR"와 같은 다른 값으로 설정할 수 있습니다.
  • 이는 모든 인코딩된 문자열에서 유니코드 코드포인트의 수를 찾기 위해 수행됩니다.