NLP – Part of Speech (POS)


Danh sách các bài viết về NLP:

  1. Part of Speech
  2. Word Segmentation
  3. Stemming và Lemmatization

Đây là bài mở đầu cho loạt bài về các kiến thức và kỹ thuật được sử dụng trong xử lý ngôn ngữ tự nhiên (NLP). Lý do mình viết loạt bài này là vì nhận thấy kiến thức cơ bản về NLP bằng tiếng Anh thì rất nhiều, nhưng bằng tiếng Việt thì không có bao nhiêu. Mặc dù biết rằng tiếng Anh là điều bắt buộc khi nghiên cứu nhưng những bài viết tiếng Việt sẽ giúp ích cho các bạn trẻ mới bắt đầu tìm hiểu về NLP. Hơn nữa, viết bài luôn là một cách gìn giữ kiến thức tuyệt vời, bằng cách ghi lại những gì đã tìm hiểu được, mình không chỉ giúp cho mọi người mà còn giúp chính bản thân không quên đi những kiến thức đó. 

Part of Speech

Bài đầu tiên hôm nay mình sẽ nói về 1 khái niệm cực kỳ cơ bản trong NLP, đó là Part of Speech (thường hay ghi tắt là POS). Nói một cách ngắn gọn, POS là việc phân loại các từ trong một câu (danh từ, trạng từ, tính từ hay động từ, v.v..). Ví dụ một câu sau đây:

He is a good man

Câu này sẽ được gắn nhãn POS như sau (người ta thường ghi POS ngay sau từ mà nó phân loại):

He/PRP is/VBZ a/DT good/JJ man/NN

Các từ viết tắt như PRP, VBZ, DT… chính là các POS, ý nghĩa của những từ viết tắt này các bạn có thể tham khảo tại https://www.ling.upenn.edu/courses/Fall_2003/ling001/penn_treebank_pos.html

Việc phân loại từ như thế này sẽ góp phần giúp cho các chương trình xử lý ngôn ngữ tự nhiên nắm được thêm ý nghĩa của câu thay vì chỉ xem nó như là tập hợp của các ký tự. Ví dụ như cùng là một từ “can” nhưng nó có thể có nghĩa là “có thể” hoặc nghĩa là “cái lon“, như vậy POS có thể giúp máy tính phân biệt được điều này một cách dễ dàng tùy vào nội dung của câu. Trong các kỹ thuật xử lý NLP thì đây được xem là một trong những kỹ thuật cơ bản nhất vì nó được sử dụng bởi các kỹ thuật khác, vì vậy đa số các tool liên quan tới NLP thì đều có POS parser.

POS parser

Để gán nhãn POS cho các từ trong câu thì người ta sẽ sử dụng một bộ phân tích gọi là “POS parser” hay còn gọi là “POS tagger”. Các bộ parser này thường sẽ tuân theo những quy tắc nào đó hoặc là sử dụng machine learning để phân loại từ một cách hợp lý nhất dựa trên những dữ liệu training đã được gán nhãn bằng tay. Ví dụ: bằng cách cho máy tính học thật nhiều các dữ liệu mà trong đó từ “can” nếu đứng sau một danh từ thì thường có nhãn là MD (modal verb) rồi sau đó cho máy tính gãn nhãn một câu mới, nó sẽ có khả năng gán nhãn MD cho một từ can ở vị trí tương tự như dữ liệu training.

Một số bộ POS parser phổ biết là:

Ví dụ ứng dụng

Để đưa ra một ứng dụng chỉ sử dụng POS thì khá khó vì kỹ thuật này chủ yếu làm nền tảng cho các kỹ thuật khác mà thôi. Nhưng dù sao thì cũng nên đưa ra một ví dụ gì đó để các bạn dễ hình dung được ứng dụng của nó. Ví dụ như các bạn đang muốn làm một chương trình dịch từ tiếng Anh sang tiếng Việt bằng cách đơn giản nhất là dịch từng từ riêng lẽ (chắc chả ai làm như vậy). Giả sử các bạn có câu sau:

I fish a fish

Nếu không biết POS của các từ, chúng ta sẽ dịch như sau:

Tôi con cá một con cá

Nhưng nếu như dùng POS, chúng ta sẽ nhận được phân loại từ như sau:

I/PRP fish/VBZ a/DT fish/NN
Rõ ràng từ fish đầu tiên là động từ còn từ fish thứ hai là danh từ, vì thế chúng ta có thể dịch chính xác hơn từ fish đầu tiên bằng cách tra từ điển và chọn chỉ phần dịch là động từ mà thôi. Khi đó kết quả dịch của chúng ta sẽ là:
Tôi câu một con cá
Rõ ràng chất lượng câu dịch đã khác chỉ nhờ vào POS. Đây chỉ là một ví dụ cực kỳ đơn giản, khi các bạn tìm hiểu thêm thì sẽ thấy rất nhiều ứng dụng của POS trong NLP. Hy vọng trong các bài sau khi chúng ta tìm hiểu thêm nhiều các kỹ thuật khác thì chúng ta sẽ hiểu rõ hơn về điều này.

Tác giả: xuanchien

Tran Xuan Chien. Japan Advanced Institute of Science and Technology - Japan. Senior Developer - NUS Technology.

3 thoughts on “NLP – Part of Speech (POS)”

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s