TensorFlow Text có thể được sử dụng với whitespace tokenizer bằng cách gọi 'WhitespaceTokenizer', tạo ra một tokenizer, được dùng với phương thức 'tokenize' trên chuỗi.
Đọc thêm: TensorFlow là gì và Keras hoạt động như thế nào với TensorFlow để tạo mạng nơ-ron?
Chúng ta sẽ sử dụng Keras Sequential API, giúp xây dựng mô hình tuần tự dùng cho stack các layer đơn giản, nơi mỗi layer có chính xác một input tensor và một output tensor.
Một mạng nơ-ron chứa ít nhất một layer được gọi là layer tích chập. Chúng ta có thể sử dụng Mạng nơ-ron tích chập (CNN) để xây dựng mô hình học.
TensorFlow Text chứa tập hợp các lớp và ops liên quan đến văn bản có thể được sử dụng với TensorFlow 2.0. TensorFlow Text có thể được dùng để tiền xử lý sequence modelling.
Chúng ta đang sử dụng Google Colaboratory để chạy mã dưới đây. Google Colab giúp chạy mã Python trên trình duyệt và yêu cầu cấu hình zero và truy cập miễn phí GPU. Colaboratory được xây dựng dựa trên Jupyter Notebook.
Tokenization (tách từ) là phương pháp chia nhỏ một chuỗi thành các token. Các token này có thể là từ, số, hoặc dấu câu. Các interface chính bao gồm Tokenizer và TokenizerWithOffsets, mỗi cái có một phương thức đơn lẻ là tokenize và tokenize_with_offsets tương ứng. Có nhiều tokenizer, mỗi cái triển khai TokenizerWithOffsets (mở rộng lớp Tokenizer). Điều này bao gồm tùy chọn lấy byte offsets vào chuỗi gốc. Điều này giúp biết byte nào trong chuỗi gốc token được tạo ra.
N-grams là các từ tuần tự khi một cửa sổ trượt kích thước n được cho. Khi các token được kết hợp, ba cơ chế reduction được hỗ trợ. Cho văn bản, Reduction.STRING_JOIN có thể được dùng. Nó nối các chuỗi với nhau. Ký tự phân tách mặc định là space, nhưng có thể thay đổi với đối số string_separater.
Các phương pháp reduction khác được dùng với giá trị số, và chúng là Reduction.SUM và Reduction.MEAN.
Ví dụ
print("Whitespace tokenizer được gọi")
tokenizer = text.WhitespaceTokenizer()
tokens = tokenizer.tokenize(['Everything not saved will be lost.', u'Sad☹'.encode('UTF-8')])
print("Ở đây, n là 2, do đó nó là bigram")
bigrams = text.ngrams(tokens, 2, reduction_type=text.Reduction.STRING_JOIN)
print("Các bigram được chuyển thành danh sách")
print(bigrams.to_list())
Đầu ra
Whitespace tokenizer được gọi Ở đây, n là 2, do đó nó là bigram Các bigram được chuyển thành danh sách [[b'Everything not', b'not saved', b'saved will', b'will be', b'be lost.'], []]
Giải thích
- Whitespace tokenizer được gọi.
- Giá trị 'n' được đặt là 2, do đó nó được gọi là bigram.
- Các token được lưu trong danh sách và hiển thị trên console.