Với bài tốn phát hiện bài viết, bình luận cĩ nội dung phản động trên MXH Facebook, nhiệm vụ quan trọng hàng đầu đặt ra là trích chọn được các đặc trưng tiêu biểu của dữ liệu đầu vào. Trong mục này, tơi sẽ trình bày các phương pháp tiếp cận để trích chọn đặc trưng nội dung phản động của văn bản đầu vào, tập trung chính là các văn bản trên MXH Facebook. Ngồi những đặc trưng của văn bản nĩi chung, văn bản trên Facebook cũng như các phương tiện truyền thơng xã hội khác cĩ những đặc trưng khác biệt so với văn bản chính quy như: Phi hình thức, sử dụng nhiều từ lĩng, từ viết tắt, từ cách điệu khơng cĩ trong từ điển, câu khơng hồn chỉnh hoặc khơng đúng ngữ pháp… Tất cả những đặc trưng này cần được khai thác nhằm đem lại hiệu quả tốt trong phát hiện nội dung phản động. Trước khi xác định các đặc trưng cụ thể, tơi đi vào tìm hiểu trích chọn đặc trưng trong cơng nghệ NLP; tìm hiểu các đặc trưng ngơn ngữ tiếng Việt. Tiếp đến, tơi tìm hiểu các đặc trưng ngơn ngữ trong kiểm duyệt bài viết, bình luận phản động (gồm: blacklist word, các đặc trưng hình thái). Tiếp theo tơi tìm hiểu về các phương pháp biểu diễn từ trong trích chọn đặc trưng; phương pháp trích chọn đặc trưng (n-gram; BERT/PhoBERT). Cuối cùng, tơi tìm hiểu các mơ hình, thuật tốn phân loại văn bản phổ biến. Dưới đây là chi tiết các tìm hiểu của tơi:
2.2.1.1. Ứng dụng cơng nghệ xử lý ngơn ngữ tự nhiên
Ứng dụng cơng nghệ NLP là một nhánh của Trí tuệ nhân tạo, được xem là một quy trình phức tạp với các cơng nghệ, quy trình giúp máy tính hiểu, giải thích và mơ phỏng ngơn ngữ con người bằng cách học hỏi từ cả ngơn ngữ học máy tính và ngơn ngữ học tính tốn. Ngày nay, nhu cầu ứng dụng cơng nghệ NLP ngày một tăng cao, phát triển với nhiều ứng dụng thực tiễn trong đời sống như robot, chat-bot, call-bot, sửa lỗi chính tả, sửa lỗi cú pháp, dịch tự động, phân loại văn bản, phân tích sắc thái văn bản, suy luận ngơn ngữ tự nhiên, tĩm tắt trích rút văn bản.
Quy trình xử lý ứng dụng ngơn ngữ tự nhiên cĩ thể được khái quát như sau: Thu thập, gán nhãn dữ liệu; xử lý tiền huấn luyện; sử dụng các kiến trúc, mơ hình, thuật tốn học máy/học sâu; ứng dụng vào bài tốn/nhu cầu thực tế.
Hình 2.1: Quy trình NLP
Trong các phương pháp học máy, thơng thường số lượng đặc trưng (features) càng nhiều thì độ chính xác càng cao. Tuy nhiên, khi số lượng đặc trưng quá nhiều sẽ khiến cho quá trình huấn luyện, quá trình phân loại mất nhiều thời gian hơn. Ngồi ra, điều này cịn dẫn đến tình trạng chương trình chiếm nhiều dung lượng bộ nhớ lưu trữ và bộ nhớ tạm thời. Do đĩ, đối với phương pháp học máy, rất cần thiết phải lựa chọn từ tập các đặc trưng ra một tập con nhỏ hơn mà vẫn đảm bảo độ chính xác của quá trình phân loại. Việc lựa chọn đĩ, gọi là trích chọn đặc trưng (Feature Selection, hay cịn các tên khác như Variable Selection, Feature Reduction, Attribute Selection hoặc Variable Subset Selection). Từng phương pháp học máy sẽ cĩ hiệu quả riêng, từng bài tốn cụ thể cũng sẽ cĩ những phương pháp trích chọn đặc trưng mang lại hiệu quả riêng biệt.
Trích chọn đặc trưng là một phần quan trọng trong quá trình xử lý dữ liệu tiền huấn luyện, thường được đi kèm với một số kỹ thuật mơ hình hĩa, biểu diễn các từ tiếng Việt lên khơng gian vector. Dữ liệu văn bản cĩ thể đến từ nhiều nguồn và cĩ nhiều định dạng khác nhau (kí tự thường, kí tự hoa, kí tự đặc biệt…). Do đĩ sẽ cĩ nhiều phương pháp xử lý dữ liệu phù hợp với từng bài tốn cụ thể. Tuy nhiên, phương pháp phổ biến nhất là sử dụng kỹ thuật tokenization sẽ giúp ta thực hiện điều này. Mã hĩa đơn giản là việc chúng ta chia đoạn văn thành các câu văn, các câu văn thành các từ. Trong mã hĩa thì từ là đơn vị cơ sở. Chúng ta cần một bộ tokenizer cĩ kích thước bằng tồn bộ các từ xuất hiện trong văn bản hoặc bằng tồn bộ các từ cĩ trong từ điển. Một câu văn sẽ được biểu diễn bằng một sparse vector (vector cĩ nhiều phần tử bằng 0) mà mỗi một phần tử đại diện cho một từ, giá trị của nĩ bằng 0 hoặc 1 tương ứng với từ khơng xuất
hiện hoặc cĩ xuất hiện. Các bộ tokernizer sẽ khác nhau cho mỗi một ngơn ngữ khác nhau.
2.2.1.2. Đặc trưng ngơn ngữ tiếng Việt 2.2.1.2.1. Đặc trưng hình thái
Tiếng Việt khơng sử dụng các hình thái (morpheme) để tạo ra các ý nghĩa của từ và tạo ra các sắc thái ý nghĩa khác nhau, tiếng Việt phụ thuộc vào trật tự của từ chứ khơng thay đổi hình thái của từ (như trong tiếng Anh, class → classes thì ‘es’ là hình thái số nhiều).
Ví dụ: với năm âm tiết (năm từ đơn): “sao, nĩ, bảo, khơng, đến” khi sắp xếp theo các trật tự khác nhau sẽ cho ra các nghĩa khác nhau: Nĩ bảo sao khơng đến? Nĩ bảo khơng đến sao? Nĩ đến, sao khơng bảo? Nĩ đến, khơng bảo sao? Nĩ đến, sao bảo khơng? Nĩ đến bảo khơng sao! Nĩ đến, bảo sao khơng?…
Mặt khác, dấu cách (space) trong tiếng Việt khơng cĩ tác dụng phân tách các từ như tiếng Anh mà chỉ cĩ tác dụng phân tách các tiếng (âm tiết) mà thơi. Vì thế việc phân tách từ trong tiếng Việt là một việc khơng thể thiếu.
2.2.1.2.2. Đặc trưng cấu tạo từ tiếng Việt
Theo thống kê từ Vietnam Lexicography Center (Vietlex) [11], tiếng Việt sử dụng nhiều và rộng rãi dựa trên 40.181 từ, với 7.729 âm tiết, trong đĩ 81,55% các âm tiết đồng thời là từ đơn, 70,72% các từ ghép cĩ 2 âm tiết, 13,59% các từ ghép cĩ 3, 4 âm tiết, và 1,04% các từ ghép cĩ từ 5 âm tiết trở lên.
Các phương thức cấu tạo từ tiếng Việt:
- Từ đơn: Từ cĩ ý nghĩa từ vựng; từ cĩ ý nghĩa ngữ pháp (từ cơng cụ); từ tượng thanh; từ cảm thán.
- Từ phức: Từ ghép; từ ghép đẳng lập (tổng hợp); từ ghép chính phụ; từ ghép phụ gia (yếu tố ghép trước hay ghép sau để tạo từ hàng loạt); từ láy; dạng lặp.
- Ngữ cố định: Thành ngữ, tục ngữ; quán ngữ (nĩi tĩm lại, đáng chú ý là, mặt khác thì…).
- Ngồi ra, trong văn bản cịn cĩ các thành phần sau: Tên riêng (tên người, địa danh, tổ chức); các dạng ngày - tháng - năm; các dạng số - chữ số - kí hiệu; dấu câu, dấu ngoặc; từ tiếng nước ngồi; chữ viết tắt.
2.2.1.3. Đặc trưng nội dung phản động 2.2.1.3.1. Blacklist word
Trong nhiều nghiên cứu về phát hiện ngơn ngữ bạo hành trực tuyến, lời nĩi căm thù…, các tác giả thường sử dụng một danh sách đen (blacklist) các từ/cụm từ cĩ đánh trọng số về nội dung nghiên cứu. Các blacklist này được sử dụng một
cách rộng rãi và gần như trở thành một danh sách quy chuẩn, từ đĩ chỉ việc áp dụng các phương pháp học máy vào để nhận dạng nội dung bạo hành trực tuyến. Tương tự, trong luận văn này, tơi sử dụng một blacklist các từ/cụm từ phản động cĩ đánh trọng số để xác định nội dung phản động. Tuy nhiên, blacklist word phản động hiện tại trong luận văn được xác định và đánh trọng số bằng phương pháp thủ cơng. Việc làm thủ cơng như hiện tại mặc dù sẽ thiếu sự chính xác hồn tồn và cịn phụ thuộc vào ý kiến chủ quan của tác giả. Tuy nhiên, trong giới hạn luận văn này, tơi chỉ trình bày về phương pháp để phát hiện nội dung phản động, khơng đi sâu phân tích phương pháp trích chọn và đánh trọng số cho các blacklist word phản động. Một số quy định chính trong việc xác định các blacklist word phản động như sau:
- Blacklist word là một danh sách các từ tiếng Việt (từ đơn hoặc từ ghép) liên quan đến nội dung phản động được gán trọng số trong khoảng (0, 1]. Ví dụ: “Tổng Trọng”, “Trọng Lú”, “Thủ tướng Fuck”, “Fuck Niễng”, “Phúc Niễng Nổ”, “độc đảng”, “ngày quốc hận”, “độc tài cộng sản”…
- Blacklist word cĩ thể chứa tên (đã bị các đối tượng xấu biến tướng) của những lãnh đạo cấp cao của Đảng, Nhà nước.
- Blacklist word cĩ thể chứa tên của các đối tượng phản động trong và ngồi nước, các đối tượng CH-CĐCT, “tù nhân lương tâm”, như: Thanh Hiếu Bùi; Lê Nguyễn Hương Trà; Cấn Thị Thêu; Trịnh Bá Tư; Nguyễn Văn Đài; Huỳnh Ngọc Chênh, Nguyễn Thúy Hạnh...
2.2.1.3.2. Đặc trưng hình thái
Đối với các đặc trưng hình thái trong kiểm duyệt bài viết, bình luận cĩ nội dung phản động, ta xét các đặc trưng cụ thể sau:
- Độ dài của bài viết.
- Số ký tự viết hoa/tổng số ký tự của câu hoặc bài viết.
- Số các ký tự khơng phải alphabet xuất hiện trong câu hoặc bài viết. - Số các dấu câu xuất hiện trong câu hoặc bài viết.
- Số từ khơng cĩ trong từ điển tiếng Việt xuất hiện trong bài viết (từ lĩng, từ viết tắt).
- Độ dài trung bình của các từ. - Độ dài trung bình của các câu.
2.2.1.4. Các phương pháp biểu diễn từ
Thực tế khi NLP phát sinh nhu cầu khơng chỉ biểu diễn cho dữ liệu ở cấp độ từ mà cịn ở mức độ câu văn, đoạn văn. Ví dụ, đối với bài tốn kiểm duyệt
bài viết, bình luận cĩ nội dung phản động được đề cập đến trong nghiên cứu này, nếu chỉ dựa trên một số từ ngữ hay một số câu văn riêng lẻ, khơng cĩ trong ngữ cảnh nhất định, sẽ khơng thể đưa ra nhận định, đánh giá chính xác nội dung của tồn bộ bài viết.
Một số phương pháp biểu diễn từ tiêu biểu, gồm:
2.2.1.4.1. Word embedding
Word embedding là một nhĩm các kỹ thuật đặc biệt trong NLP, cĩ nhiệm vụ ánh xạ một từ hoặc một cụm từ trong bộ từ vựng tới một vector số thực. Từ khơng gian một chiều cho mỗi từ tới khơng gian các vector liên tục. Các vector từ được biểu diễn theo phương pháp word embedding thể hiện được ngữ nghĩa của các từ, từ đĩ ta cĩ thể nhận ra được mối quan hệ giữa các từ với nhau (tương đồng, trái nghịch,...).
Các phương pháp thường được sử dụng trong word embedding bao gồm: Giảm kích thước của ma trận đồng xuất hiện; mạng nơ-ron (Word2vec, Glove [19],...); sử dụng các mơ hình xác suất,…
2.2.1.4.2. Tf-idf
Những từ hiếm khi được tìm thấy trong tập văn bản (corpus) nhưng cĩ mặt trong một văn bản cụ thể cĩ thể quan trọng hơn. Do đĩ, cần tăng trọng số của các nhĩm từ ngữ để tách chúng ra khỏi các từ phổ biến. Cách tiếp cận này được gọi là Tf-idf (Term Frequency - Inverse Document Frequency), thường được sử dụng như một trọng số trong việc khai phá dữ liệu văn bản. Tf-idf chuyển đổi dạng biểu diễn văn bản thành dạng khơng gian vector (VSM), hoặc thành những vector thưa thớt.
TF (Term Frequency): Là tần suất xuất hiện của một từ trong một đoạn văn bản. Với những đoạn văn bản cĩ độ dài khác nhau, sẽ cĩ những từ xuất hiện nhiều ở những đoạn văn bản dài thay vì những đoạn văn bản ngắn. Vì thế, tần suất này thường được chia cho độ dài của đoạn văn bản như một phương thức chuẩn hĩa (normalization). TF được tính bởi cơng thức:
(1)
(với t là một từ trong đoạn văn bản; f(t,d) là tần suất xuất hiện của t trong đoạn văn bản d; T là tổng số từ trong đoạn văn bản).
IDF (Inverse Document Frequency): Tính tốn độ quan trọng của một từ. Khi tính tốn TF, mỗi từ đều quan trọng như nhau, nhưng cĩ một số từ trong tiếng Việt như “và”, “thì”, “là”, “mà”... xuất hiện khá nhiều nhưng lại rất ít quan trọng. Vì vậy, chúng ta cần một phương thức bù trừ những từ xuất hiện nhiều lần
và tăng độ quan trọng của những từ ít xuất hiện những cĩ ý nghĩa đặc biệt cho một số đoạn văn bản hơn bằng cách tính IDF:
(2) (trong đĩ, N là tổng số đoạn văn bản; tập |{ }| là số văn bản chứa từ t).
Một từ càng phổ biến khi IDF càng nhỏ và Tf-idf càng lớn. Đặc biệt, Tf-idf được sử dụng rộng rãi trong hệ thống tìm kiếm. Hệ thống sẽ xác định được từ nào mà người dùng quan tâm nhất, từ đĩ sẽ trả ra kết quả đáp ứng mong muốn của người dùng. Ví dụ khi tiến hành tìm kiếm: “làm thế nào để học AI” thì AI cĩ Tf-idf cao nhất. Hệ thống sẽ xác định và trả ra một loạt các kết quả cĩ AI trước rồi sau đĩ mới đối chiếu với văn bản cần tìm kiếm.
2.2.1.4.3. Mơ hình ngơn ngữ n-gram
Mơ hình ngơn ngữ là một phân bố xác suất trên các tập văn bản. Nĩi đơn giản, mơ hình ngơn ngữ cĩ thể cho biết xác suất một câu (hoặc cụm từ) thuộc một ngơn ngữ là bao nhiêu.
Ví dụ: khi áp dụng mơ hình ngơn ngữ cho tiếng Việt: P[“hơm nay là thứ hai”] = 0,001
P[“hai thứ hơm là nay”] = 0
Mơ hình ngơn ngữ được áp dụng trong rất nhiều lĩnh vực của NLP, như: Kiểm lỗi chính tả, dịch máy hay phân đoạn từ... Chính vì vậy, nghiên cứu mơ hình ngơn ngữ chính là tiền đề để nghiên cứu các lĩnh vực tiếp theo. Mơ hình ngơn ngữ cĩ nhiều hướng tiếp cận, nhưng chủ yếu được xây dựng theo mơ hình n-gram. Nhiệm vụ của mơ hình ngơn ngữ là cho biết xác suất của một câu w1w2
...wm là bao nhiêu. Theo cơng thức Bayes: P(AB) = P(B|A) * P(A),thì:
P(w1w2…wm) = P(w1) * P(w2|w1) * P(w3|w1w2) *…* P(wm|w1w2…wm-1) (3) Theo cơng thức này, mơ hình ngơn ngữ cần phải cĩ một lượng bộ nhớ vơ cùng lớn để cĩ thể lưu hết xác suất của tất cả các chuỗi độ dài nhỏ hơn m. Rõ ràng, điều này là khơng thể khi m là độ dài của các văn bản ngơn ngữ tự nhiên (m cĩ thể tiến tới vơ cùng). Để cĩ thể tính được xác suất của văn bản với lượng bộ nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n:
P(wm|w1,w2,…, w ) = P(wm|wm-n,wn-m+1, …,wm-1) (4) Nếu áp dụng xấp xỉ Markov, xác suất xuất hiện của một từ (wm) được coi như chỉ phụ thuộc vào n từ đứng liền trước nĩ (wm-nwm-n+1…wm-1) chứ khơng
phải phụ thuộc vào tồn bộ dãy từ đứng trước (w1w2…wm-1). Như vậy, cơng thức tính xác suất văn bản được tính lại theo cơng thức:
P(w1w2…wm) = P(w1) * P(w2|w1) * P(w3|w1w2) *…* P(wm-1|wm-n-1wm-n
…wm-2)* P(wm|wm-nwm-n+1…wm-1) (5) Với cơng thức này, ta cĩ thể xây dựng mơ hình ngơn ngữ dựa trên việc thống kê các cụm cĩ ít hơn n+1 từ. Mơ hình ngơn ngữ này gọi là mơ hình ngơn ngữ n-gram.
2.2.1.5. Phương pháp trích chọn đặc trưng 2.2.1.5.1. Mơ hình n-gram
N-gram là tần suất xuất hiện của n kí tự (hoặc từ) liên tiếp nhau cĩ trong dữ liệu của nghiên cứu. N-gram được sử dụng dưới 2 dạng là word n-gram (n-gram cấp độ từ) và character n-gram (n-gram cấp độ ký tự) với các kiểu phổ biến là:
- Unigram với n = 1 và tính trên kí tự, ta cĩ thơng tin về tần suất xuất hiện nhiều nhất của các chữ cái. Ví dụ ‘b’, ‘t’, ‘m’.
- Bigram với n = 2. Ví dụ với các chữ cái tiếng Việt, bigram ta cĩ ‘th’, ‘iê’, ‘ch’, ‘au’, ‘mi’.
Bigram được sử dụng nhiều trong việc phân tích hình thái (từ, cụm từ, từ loại) cho các ngơn ngữ khĩ phân tích như tiếng Việt [20], tiếng Nhật [21,22], tiếng Trung [23,24],… Dựa vào tần suất xuất hiện cạnh nhau của các từ, người ta sẽ tính cách chia một câu thành các từ sao cho tổng bigram là cao nhất cĩ thể. Với thuật giải phân tích hình thái dựa vào trọng số nhỏ nhất, người ta sử dụng n = 1 để xác định tần suất xuất hiện của các từ và tính trọng số.
- Trigram với n = 3. Ví dụ ‘đản’, ‘cộn’, ‘sản’.
Để xây dựng một mơ hình n-gram, ban đầu người ta dựa trên một tập dữ liệu huấn luyện (training set). Sau khi mơ hình được xây dựng sẽ tiến hành kiểm tra mơ hình dựa trên một tập dữ liệu test. Việc kiểm tra tốt nhất là sử dụng một tập dữ liệu khơng cĩ trong tập huấn luyện. Dựa vào việc kiểm tra này mà ta cĩ thể biết được mơ hình cĩ tốt hay khơng.
Theo kết quả nghiên cứu được cơng bố của nhĩm Underthesea [12] đối với bài tốn phân loại văn bản tiếng Việt cho thấy, kết quả sử dụng mơ hình Tf-idf với unigram, bigram cho kết quả tốt hơn mơ hình CountVectorizer với unigram, bigram và trigram.
Hình 2.2. Kết quả thử nghiệm các mơ hình phân loại văn bản tiếng Việt của