如何在 Python 中使用 TensorFlow 執行 Unicode 操作?
Unicode 操作可以透過首先獲取字串的長度,並將其設定為其他值來執行(預設值為“byte”)。“encode”方法用於將程式碼點向量轉換為編碼的字串標量。這是為了確定每個編碼字串中的 Unicode 程式碼點。
閱讀更多: 什麼是 TensorFlow 以及 Keras 如何與 TensorFlow 一起建立神經網路?
處理自然語言的模型處理具有不同字元集的不同語言。Unicode 被認為是標準編碼系統,用於表示幾乎所有語言的字元。每個字元都使用唯一的整數程式碼點進行編碼,該程式碼點介於 0 和 0x10FFFF 之間。Unicode 字串是零個或多個程式碼值的序列。
讓我們瞭解如何使用 Python 表示 Unicode 字串,並使用 Unicode 等效項來操作它們。首先,我們使用 Unicode 等效的標準字串操作,根據指令碼檢測將 Unicode 字串分成標記。
我們使用 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 操作有一個引數 unit,它指示需要計算長度的方法。
- unit 預設值為“BYTE”,但可以設定為其他值,例如“UTF8_CHAR”或“UTF16_CHAR”。
- 這樣做是為了查詢每個編碼字串中的 Unicode 程式碼點數。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP