Mã thông báo là bước đầu tiên bạn nên thực hiện sau khi thu thập tập dữ liệu văn bản trong mọi vấn đề dựa trên Xử lý ngôn ngữ tự nhiên. Mã hóa câu và từ là hai chiến lược mã hóa khác nhau mà bạn nên biết. Trong bài viết này, tôi sẽ giới thiệu cho bạn về mã thông báo Câu và Từ và cách triển khai chúng bằng Python
Token hóa là gì?
Tokenization là quá trình chia nhỏ một đoạn văn bản thành các câu hoặc từ. Khi chúng tôi chia nhỏ dữ liệu văn bản thành các câu hoặc từ, đầu ra chúng tôi nhận được được gọi là mã thông báo. Có hai chiến lược để mã hóa tập dữ liệu văn bản
- Mã thông báo câu. Nó có nghĩa là chia một đoạn văn bản thành các câu. Ví dụ: khi bạn mã hóa một đoạn văn, nó sẽ chia đoạn văn đó thành các câu được gọi là mã thông báo. Trong nhiều bài toán xử lý ngôn ngữ tự nhiên, việc tách dữ liệu văn bản thành các câu rất hữu ích. Các câu được phân tách bằng dấu chấm, vì vậy quá trình mã hóa câu sẽ tìm thấy tất cả các dấu chấm trong một đoạn văn bản để chia dữ liệu thành các câu
- Mã thông báo từ. Mã thông báo từ là cách mã thông báo phổ biến nhất. Nó có nghĩa là chia dữ liệu văn bản hoàn chỉnh thành các từ. Ví dụ: khi bạn mã hóa một đoạn văn, nó sẽ chia đoạn văn đó thành các từ được gọi là mã thông báo. Các từ được phân tách bằng khoảng trắng, vì vậy quá trình mã hóa từ sẽ tìm tất cả các khoảng trắng trong một đoạn văn bản để chia dữ liệu thành các từ
Tôi hy vọng bây giờ bạn đã hiểu mã thông báo câu và từ. Bây giờ trong phần bên dưới, tôi sẽ hướng dẫn bạn cách triển khai mã thông báo từ và câu bằng Python
Mã hóa câu và từ bằng Python
Mã thông báo câu có nghĩa là chia dữ liệu văn bản thành các câu. Đây là cách triển khai mã thông báo câu bằng Python
import nltk nltk.download['punkt'] from nltk.tokenize import sent_tokenize sentence = "Hi, My name is Aman, I hope you like my work. You can follow me on Instagram for more resources. My username is 'the.clever.programmer'." print[sent_tokenize[sentence]]
['Hi, My name is Aman, I hope you like my work.', 'You can follow me on Instagram for more resources.', "My username is 'the.clever.programmer'."]
Mã thông báo từ có nghĩa là chia dữ liệu văn bản thành các từ. Đây là cách triển khai mã thông báo từ bằng Python
from nltk.tokenize import TreebankWordTokenizer word_token = TreebankWordTokenizer[] print[word_token.tokenize[sentence]]
['Hi', ',', 'My', 'name', 'is', 'Aman', ',', 'I', 'hope', 'you', 'like', 'my', 'work.', 'You', 'can', 'follow', 'me', 'on', 'Instagram', 'for', 'more', 'resources.', 'My', 'username', 'is', "'the.clever.programmer", "'", '.']
Tóm lược
Mã hóa câu và từ là hai chiến lược khác nhau mà bạn nên biết. Mã hóa câu có nghĩa là chia dữ liệu văn bản thành câu và mã hóa từ có nghĩa là chia dữ liệu văn bản thành từ. Tôi hy vọng bạn thích bài viết này về mã hóa câu và từ bằng Python. Xin vui lòng đặt câu hỏi có giá trị trong phần ý kiến dưới đây
Trong ví dụ dưới đây, chúng tôi chia một văn bản đã cho thành các dòng khác nhau bằng cách sử dụng hàm send_tokenize
import nltk sentence_data = "The First sentence is about Python. The Second: about Django. You can learn Python,Django and Data Ananlysis here. " nltk_tokens = nltk.sent_tokenize[sentence_data] print [nltk_tokens]
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
['The First sentence is about Python.', 'The Second: about Django.', 'You can learn Python,Django and Data Ananlysis here.']
Mã thông báo không phải tiếng Anh
Trong ví dụ dưới đây, chúng tôi mã hóa văn bản tiếng Đức
import nltk german_tokenizer = nltk.data.load['tokenizers/punkt/german.pickle'] german_tokens=german_tokenizer.tokenize['Wie geht es Ihnen? Gut, danke.'] print[german_tokens]
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
['Wie geht es Ihnen?', 'Gut, danke.']
Từ Tokenzitaion
Chúng tôi mã hóa các từ bằng chức năng word_tokenize có sẵn như một phần của nltk
________số 8_______Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
['It', 'originated', 'from', 'the', 'idea', 'that', 'there', 'are', 'readers', 'who', 'prefer', 'learning', 'new', 'skills', 'from', 'the', 'comforts', 'of', 'their', 'drawing', 'rooms']
Đây là một phiên bản ngắn hơn. Điều này sẽ cung cấp cho bạn cấu trúc dữ liệu với từng câu riêng lẻ và từng mã thông báo trong câu. Tôi thích TweetTokenizer hơn cho ngôn ngữ lộn xộn trong thế giới thực. Trình mã hóa câu được coi là khá, nhưng hãy cẩn thận không viết thường từ của bạn cho đến sau bước này, vì nó có thể ảnh hưởng đến độ chính xác của việc phát hiện ranh giới của văn bản lộn xộn
from nltk.tokenize import TweetTokenizer, sent_tokenize
tokenizer_words = TweetTokenizer[]
tokens_sentences = [tokenizer_words.tokenize[t] for t in
nltk.sent_tokenize[input_text]]
print[tokens_sentences]
Đây là kết quả đầu ra trông như thế nào, mà tôi đã dọn dẹp để cấu trúc nổi bật
[
['This', 'thing', 'seemed', 'to', 'overpower', 'and', 'astonish', 'the', 'little', 'dark-brown', 'dog', ',', 'and', 'wounded', 'him', 'to', 'the', 'heart', '.'],
['He', 'sank', 'down', 'in', 'despair', 'at', 'the', "child's", 'feet', '.'],
['When', 'the', 'blow', 'was', 'repeated', ',', 'together', 'with', 'an', 'admonition', 'in', 'childish', 'sentences', ',', 'he', 'turned', 'over', 'upon', 'his', 'back', ',', 'and', 'held', 'his', 'paws', 'in', 'a', 'peculiar', 'manner', '.'],
['At', 'the', 'same', 'time', 'with', 'his', 'ears', 'and', 'his', 'eyes', 'he', 'offered', 'a', 'small', 'prayer', 'to', 'the', 'child', '.']
]