Tải bản đầy đủ (.pdf) (57 trang)

Tổng hợp ý kiến phản hồi của độc giả theo sự kiện phản ánh bởi báo chí (Luận văn thạc sĩ)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.32 MB, 57 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
----------------------------------

Trần Minh Hùng

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

HÀ NỘI – 2019


HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
----------------------------------

Trần Minh Hùng

TỔNG HỢP Ý KIẾN PHẢN HỒI CỦA ĐỘC GIẢ THEO
SỰ KIỆN PHẢN ÁNH BỞI BÁO CHÍ

Chuyên ngành:

Hệ thống thông tin

Mã số:

08.48.01.04

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN MẠNH HÙNG



HÀ NỘI - 2019


i

LỜI CAM ĐOAN

Tôi cam đoan đề tài: “Tổng hợp ý kiến phản hồi của độc giả theo sự kiện phản
ánh bởi báo chí” là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của TS.
Nguyễn Mạnh Hùng.
Các kết quả, phân tích, kết luận trong luận văn thạc sỹ này (ngoài phần được
trích dẫn) đều là kết quả làm việc của tác giả, các số liệu nêu trong luận văn là trung
thực và chưa từng được công bố trong bất kỳ công trình nào khác.

Nếu sai tôi xin hoàn toàn chịu trách nhiệm.

Hà Nội, ngày

tháng

năm 2019

Tác giả

Trần Minh Hùng


ii


LỜI CẢM ƠN
Lời đầu tiên cho em xin gửi lời cảm ơn chân thành đến các thầy, cô giáo
thuộc Khoa CNTT, Khoa QT&ĐT sau đại học thuộc Học viện Công nghệ Bưu
chính viễn thông đã tận tình giảng dạy, truyền đạt các nội dung kiến thức, kinh
nghiệm quý báu trong suốt quá trình em theo học tại Học viện. Với những bài học
quý giá, sự kèm cặp, chỉ bảo và truyền thụ tâm huyết của các thầy, cô đã giúp cá
nhân em hoàn thiện hơn nữa hệ thống kiến thức chuyên ngành, phục vụ tốt hơn yêu
cầu công tác của đơn vị đồng thời nâng cao hơn vốn tri thức của bản thân.
Đặc biệt, em xin gửi lời cảm ơn trân thành tới thầy hướng dẫn khoa học TS.
Nguyễn Mạnh Hùng, Khoa Công nghệ thông tin đã tận tình chỉ bảo, hướng dẫn,
cung cấp tài liệu và các nội dung kiến thức quý báu, đồng thời có sự định hướng
đúng đắn giúp em hoàn thành được luận văn này.
Em cũng xin được bày tỏ sự cảm ơn sâu sắc tới gia đình, đồng nghiệp đã tạo điều
kiện, dành sự ủng hộ đối với bản thân em để có nhiều thời gian cho khóa học, đạt
được những kết quả khả quan trong quá trình học tập. Đồng thời xin chân thành
cảm ơn tập thể lớp Cao học Hệ thống thông tin – Đợt 1 năm 2016 đã đồng hành,
khích lệ và chia sẻ trong suốt quá trình học tập.
Em rất mong nhận được sự chỉ dạy, đóng góp tận tình của các thầy, cô để
luận văn của em được hoàn thiện hơn nữa và có tính ứng dụng cao hơn trong thực
tiễn.
Xin trân trọng cảm ơn!
Hà Nội, ngày

tháng

năm 2019

Học viên

Trần Minh Hùng



iii

MỤC LỤC
LỜI CAM ĐOAN ............................................................................................ i
LỜI CẢM ƠN ................................................................................................. ii
MỤC LỤC ...................................................................................................... iii
DANH MỤC CÁC HÌNH ................................................................................v
DANH MỤC CÁC BẢNG ............................................................................ vi
THUẬT NGỮ TIẾNG ANH......................................................................... vii
MỞ ĐẦU ..........................................................................................................1
Chương 1 TỔNG QUAN VỀ PHÂN LOẠI NỘI DUNG VĂN BẢN ..........3
1.1.

Tổng quan về bài toán phân loại nội dung văn bản .........................3

1.1.1. Giới thiệu về bài toán phân loại văn bản ......................................3
1.1.2. Ứng dụng bài toán phân loại văn bản ...........................................5
1.2.

Mô hình cho bài toán phân loại văn bản ..........................................6

1.2.1. Yêu cầu đối với bài toán phân loại văn bản ..................................6
1.2.2. Giai đoạn huấn luyện ....................................................................7
1.2.3. Giai đoạn phân lớp ........................................................................8
1.3.

Tiền xử lý văn bản ...........................................................................8


1.3.1. Tách từ trong văn bản ...................................................................8
1.3.2. Trọng số của từ trong văn bản ....................................................13
1.3.3. Trích chọn đặc trưng văn bản .....................................................16
1.3.4. Các mô hình biểu diễn văn bản ...................................................18
1.4.

Đặc trưng văn bản Tiếng Việt ........................................................21

1.4.1. Đặc trưng của tiếng Việt .............................................................21


iv

1.4.2. Đặc trưng văn bản tin tức ............................................................22
1.4.3. Xử lý tiếng Việt trong phân loại văn bản ....................................22
1.5.

Kết luận ..........................................................................................23

Chương 2 Thuật toán phân loại nội dung văn bản.......................................24
2.1

Thuật toán Naive Bayes .................................................................24

2.2

Thuật toán Long Short Term Memory networks ...........................26

2.2.1 Ý tưởng cốt lõi của LSTM ...........................................................27
2.2.2 Bên trong LSTM ..........................................................................28

2.3

Thuật toán phân loại văn bản dựa trên từ đại diện .........................30

2.3.1 Mô tả thuật toán chọn từ đại diện ................................................30
2.3.2 Phân loại văn bản dựa trên độ tương đồng văn bản .....................32
2.4

Kết luận ..........................................................................................35

Chương 3 Cài Đặt Thuật Toán và Đánh giá kết quả ...................................36
3.1

Mô tả cài đặt thuật toán ..................................................................36

3.1.1 Bộ dữ liệu kiểm thử .....................................................................37
3.1.2 Xây dựng kịch bản kiểm thử ........................................................38
3.2

Kết quả thực nghiệm và đánh giá...................................................40

3.2.1 Môi trường thực nghiệm ..............................................................40
3.2.2 Kết quả thực nghiệm ....................................................................41
3.2.3 Đánh giá kết quả thuật toán .........................................................44
3.3

Kết luận ..........................................................................................45

KẾT LUẬN ....................................................................................................46
TÀI LIỆU THAM KHẢO..............................................................................47



v

DANH MỤC CÁC HÌNH
Hình 1. 1 Mô tả bài toán phân loại nội dung văn bản . ...............................................4
Hình 1. 2 Mô hình thực hiện bài toán phân loại văn bản . .........................................6
Hình 1. 3 Chi tiết giai đoạn huấn luyện .....................................................................7
Hình 1. 4 Biểu diễn văn bản theo mô hình xác suất..................................................19
Hình 2. 1 The repeating module in a standard RNN contains a single layer ............26
Hình 2. 2 The repeating module in an LSTM contains four interacting layers ........27
Hình 2. 3 các ký hiệu sử dụng trong mô hình LSTM ...............................................27
Hình 2. 4 Mô tả thuật toán LSTM .............................................................................28
Hình 2. 5 Mô tả thuật toán LSTM .............................................................................29
Hình 2. 6 Mô tả thuật toán LSTM .............................................................................29
Hình 2. 7 Mô tả thuật toán LSTM .............................................................................30
Hình 3. 1 Mô hình xử lý và cài đặt thuật toán ..........................................................36


vi

DANH MỤC CÁC BẢNG
Bảng 3. 1 Tổng quan về tập dữ liệu training cho thuật toán .....................................38
Bảng 3. 2 Contingency Table ....................................................................................42
Bảng 3. 3 Kết quả thực nghiệm thu được từ thuật toán phân loại ............................43
Bảng 3. 4 Kết quả thực nghiệm thu được từ thuật toán Naive Bayes .......................43
Bảng 3. 5 Kết quả thực nghiệm thu được từ thuật toán LSTM .................................44
Bảng 3. 6 Bảng tổng hợp kết quả của 3 thuật toán ...................................................44



vii

THUẬT NGỮ TIẾNG ANH

Từ viết tắt

Tiếng Anh

Tiếng Việt

NB

Naïve Bayes

Thuật toán Naïve Bayes

WFST

Weighted Finite State Transducer

Máy chuyển đổi trạng thái
hữu hạn có trọng số

TBL

Transformation-Based Learning

Giải thuật học cải biến

TF


Term Frequency

Tần suất xuất hiện của từ

IDF

Inverse Document Frequency

Tần số nghịch của 1 từ trong
tập văn bản

LSTM

Long Short Term Memory networks

Mạng bộ nhớ dài-ngắn

RNN

Recurrent Neural Network

Mạng nơ-ron hồi quy


1

MỞ ĐẦU
Hiện nay với sự phát triển mạnh mẽ của công nghệ thông tin, sự phổ biến của
mạng Internet là môi trường phổ biến dùng để lưu trữ các thông tin. Một lượng lớn

tri thức đã được sản sinh và chia sẻ trên mạng Internet. Ngoài ra, hàng ngày có rất
nhiều bài báo, sách được chia sẻ hàng ngày trên mạng Internet để cập nhật thông
tin về cuộc sống quanh chúng ta. Cùng với đó là nhu cầu tiếp thu kiến thức, lượng
thông tin, tri thức trên mạng Internet của con người ngày càng tăng lên do vậy khi
chúng ta tiếp thu, chắt lọc nội dung bằng phương pháp thông thường sẽ mất rất
nhiều thời gian. Ứng dụng phân loại nội dung của một văn bản tiếng Việt cung cấp
thêm một phương pháp tiếp cận thông tin dựa trên nội dung đã được phân phân loại
chủ đề giúp người đọc dễ dàng tiếp cận thông tin mình mong muốn.
Phân loại nội dung của của một văn bản đó là xử lý, phân tích , trích xuất và
tổng hợp nội dung của một văn bản tiếng Việt, từ đó phân loại nội dung văn bản
theo các chủ đề khác nhau, giúp người đọc dễ dàng nắm bắt được các văn bản có
nội dung theo chủ đề mà người dùng quan tâm. Đây là một đề tài có tính ứng dụng
cao trong thực tiễn nên được nghiên cứu và giải quyết bằng nhiều phương pháp
khác nhau trên toàn thế giới. Trong phạm vi của luận văn này chỉ làm việc trên văn
bản bằng tiếng Việt, cụ thể là các bài báo trên mạng Internet
Vì vậy, Học viên xin chọn đề tài “Tổng hợp ý kiến phản hồi của độc giả
theo sự kiện phản ánh bởi báo chí” nhằm phân loại nội của một bài báo trên mạng
Internet theo các thuật toán phân loại văn bản và từ đó chọn ra thuật toán phân loại
nội dung bài báo tiếng Việt tốt nhất trong khuôn khổ nghiên cứu. Dựa vào việc cài
đặt thuật toán và kết quả thu được về bài báo để phân loại bài toán và đưa ra kết quả
đánh giá về các thuật toán thực hiện phân loại văn bản.
Luận văn sẽ trình bày tổng quan về bài toán phân loại nội dung văn bản và
các thuật toán xử lý phân loại nội dung văn bản. Cài đặt thuật toán phân loại nội
dung văn bản Tiếng việt được mô tả trong luận văn với dữ liệu đầu vào là các bài
báo trên mạng Internet và đưa ra kết quả đánh giá nhận được.


2

Luận văn có bố cục gồm: Phần mở đầu, 3 chương chính, phần kết luận, tài

liệu tham khảo và phụ lục. Được bố trí theo thứ tự:
- Mở đầu.
- Chương 1: Tổng quan về phân loại nội dung văn bản
Trong chương này, luận văn sẽ trình bày tổng quan về xử lý và phân loại nội
dung, đặc trưng của một văn bản tiếng Việt , phương pháp tiếp cận bài toán phân
loại văn bản và các bước trong giai đoạn tiền xử lý văn bản trước khi thực hiện phân
loại văn bản. Các thuật toán sử dụng để phân loại văn bản sẽ được giới thiệu ở
chương 2.
- Chương 2: Thuật toán phân loại nội dung văn bản
Trong chương này, luận văn sẽ trình bày một số thuật toán hay dùng để phân
loại văn bản. Luận văn cũng sẽ trình bày chi tiết các thuật toán sử dụng để phân loại
nội dung văn bản tiếng Việt. Việc cài đặt thuật toán và đánh giá kết quả nhận được
sẽ được thực hiện trong chương 3.
- Chương 3: Cài đặt thuật toán và đánh giá kết quả
Trong chương này, luận văn sẽ trình bày các bước cài đặt thuật toán phân
loại nội dung văn bản, kết quả thực nghiệm thu được từ việc cài đặt và sử dụng
thuật toán. Từ đó đưa ra kết luận và đánh giá về thuật toán sử dụng để phân loại nội
dung văn bản.
- Kết luận luận văn.
- Tài liệu tham khảo


3

CHƯƠNG 1 TỔNG QUAN VỀ PHÂN LOẠI
NỘI DUNG VĂN BẢN
Trong chương này, luận văn sẽ trình bày tổng quan về xử lý và phân loại nội
dung của một văn bản tiếng Việt, các phương pháp tiếp cận bài toán phân loại văn
bản và các bước hay dùng trong giai đoạn tiền xử lý văn bản.


1.1. Tổng quan về bài toán phân loại nội dung văn bản
Trong thực tế ứng dụng quan trọng nhất của bài toán phân loại văn bản là
xây dựng công cụ tìm kiếm thông tin nhanh hơn. Bài toán phân loại văn bản giúp
giới hạn phạm vi tìm kiếm thông tin bằng việc phân loại được nội dung của các bài
viết có liên quan đến một chủ đề nhất định, từ đó đưa ra các gợi ý đúng với mục
đích tìm kiếm. Phân loại văn bản góp phần quan trọng trong việc tổ chức và quản lý
hiệu quả thông tin, tri thức. Ứng dụng phổ biến nhất của phân loại văn bản là trợ
giúp cho việc tìm kiếm và lọc văn bản do đó tăng tốc độ truy cập thông tin, tối ưa
hóa các kết quả đưa ra phù hợp với yêu cầu tìm kiếm. Phân loại văn bản cũng đóng
vai trò quan trọng trong việc xây dựng hiệu quả các công việc quản lí thông tin như
là sắp xếp loại thư điện tử, các file trong các hệ thống, phân loại nội dung các tin
tức điện tử, xác minh chủ đề của thông tin để trợ giúp cho các tiến trình xử lí, duyệt,
tìm kiếm các thông tin cấu trúc, các loại tài liệu mà người dùng quan tâm.
Trong chương này, luận văn trình bày các khái niệm cơ bản về phân loại văn
bản tự động, một vài thuật toán hay được sử dụng cho bài toán phân loại nội dung
văn bản, từ đó giới thiệu một số các phương pháp nghiên cứu liên quan dựa trên
cách tiếp cận học máy và một số phương pháp đánh giá hiệu năng của hệ thống
phân loại văn bản tự động

1.1.1. Giới thiệu về bài toán phân loại văn bản
Các nghiên cứu về khai phá dữ liệu, học máy dạng văn bản đang được quan
tâm hơn trong thời gian gần đây vì số lượng các tài liệu, thông tin điện tử chứa tri
thức tăng rất nhanh với rất nhiều nguồn khác nhau như mạng Internet,.... Bao gồm


4

tất cả những văn bản có cấu trúc, các văn bản không cấu trúc cũng tăng lên rất lớn.
Mục đích chính của việc khai phá dữ liệu văn bản là cho phép người dùng trích
xuất, rút gọn thông tin của các nguồn văn bản và sử dụng các thông tin đó để xây

dựng các công cụ như: tra cứu, hỏi đáp, phân loại và tóm tắt sử dụng ngôn ngữ tự
nhiên. Phân loại văn bản là một trong những bài toán quan trọng của việc khai phá
dữ liệu văn bản, rất nhiều các hệ thống phân loại văn bản sử dụng kỹ thuật dựa trên
tri thức (knowledge based) hoặc dựa trên các luật được xây dựng sẵn để tạo thành
một tập hợp các quy tắc logic để hiểu và phân loại văn bản. Mỗi lớp (class) tương
đương với một chủ đề được định nghĩa ví dụ “pháp luật”, “đời sống” ,“thể thao”.
Nhiệm vụ phân loại được bắt đầu xây dựng từ một tập các văn bản D =
{d1,d2,..,dn} được gọi là tập huấn luyện và trong đó các tài liệu di được gán nhãn cj
với cj thuộc tập các chủ đề C={c1,c2,...,cm}. Nhiệm vụ tiếp theo đó là xác định
được mô hình phân loại mà có thể gán đúng lớp để một tài liệu bất kỳ có thể phân
loại chính xác vào một trong những chủ đề của tập chủ đề.

Hình 1. 1 Mô tả bài toán phân loại nội dung văn bản [12].
Vậy phân loại văn bản là quá trình phân loại, gán nhãn (lớp) cho các tài liệu
văn bản bao gồm các văn bản có cấu trúc hoặc không cấu trúc vào một tập hợp của
một hay nhiều chủ đề đã được định nghĩa trước đó.


5

1.1.2. Ứng dụng bài toán phân loại văn bản
Lọc thư rác
Thư rác được gửi với các mục đích chính như sau:
- Các thông tin sai lệch, các hình thức kiếm tiền trực tuyến không đúng sự
thật nhằm lừa gạt người dùng.
- Quảng cáo sản phẩm, dịch vụ của một tổ chức, công ty trên mạng
- Gửi kèm virus trong tập tin kèm theo của thư điện tử, từ đó đưa virus vào
vào hệ thống mạng và lấy cắp các thông tin quan trọng.
- Nói xấu, xuyên tạc, tuyên truyền những điều sai trái về chính trị.
Việc phân loại được nội dung thư rác sẽ giúp chúng ta loại trừ được những

thư chứa các nội dung mà chúng ta không muốn tiếp cận. Ngoài ra chúng ta có thể
tránh được các nguy cơ tiềm ẩn như virus, trojan... xâm nhập vào máy tính cá nhân,
hệ thống chúng ta đang sử dụng
Phân loại tin tức điện tử
- Ngày nay sự phát triển của mạng Internet, các tin tức điện tử có chứa thông
tin, tri thức ngày càng nhiều.
- Người dùng muốn tìm hiểu các tin tức điện tử liên quan đến chủ đề mà
người dùng quan tâm, các hệ thống muốn phân loại các tin tức điện tử để dễ
dàng quản lý.
- Ứng dụng thành công bài toán phân loại điện tử giúp giải quyết được nhu
cầu của người dùng cũng như các hệ thống muốn tiếp cận nhanh, chính xác
cả tin tức điện tử liên quan đến chủ đề.
Xây dựng các cỗ máy tìm kiếm
- Đây là ứng dụng quan trọng nhất của bài toán phân loại văn bản.
- Việc phân loại văn bản sẽ giúp hệ thống tìm kiếm thông tin tổ chức, xếp
xếp, quản lý thông tin do đó tăng tốc độ truy cập thông tin của hệ thống.


6

- Các văn bản đã được phân loại (gán nhãn) sẽ giúp cho hệ thống tìm kiếm
dễ dàng tiếp cận, xử lý, lọc thông tin và trả lại các kết quả chính xác hơn với yêu
cầu của người dùng.

1.2. Mô hình cho bài toán phân loại văn bản
Chúng ta có thể tưởng tượng bài toán phân loại văn bản như sau : Cho một
tập gồm nn văn bản - document đầu vào kí hiệu D={𝑑1 , 𝑑2 ,..., 𝑑𝑛 } bằng các kĩ
thuật xử lý, thuật toán nào đó chúng ta sẽ phân tập văn bản trên vào một tập gồm
mm phân lớp - categories kí hiệu là C={𝑐1 , 𝑐2 ,..., 𝑐𝑚 }.
Trong phần này, luận văn sẽ giới thiệu mô hình để thực hiện phân loại văn

bản vào các lớp.

Hình 1. 2 Mô hình thực hiện bài toán phân loại văn bản [9] .

1.2.1. Yêu cầu đối với bài toán phân loại văn bản
Minh họa trực quan nhất cho việc phân loại văn bản đó chính là việc sắp xếp
các tin tức trên báo vào các danh mục tương ứng như thể thao, giải trí, xã hội... như
các tờ báo điện tử thường làm. Việc này có thể được thực hiện thủ công bởi các


7

biên tập viên tuy nhiên nó rất là mất thời gian và công sức. Thay vào đó chúng ta sẽ
sử dụng một số kĩ thuật học máy để tiến hành phân loại tự động các tin tức đó.
Vậy để giải quyết được bài toán phân loại văn bản chúng ta cần phải nắm được:
- Dữ liệu đầu vào cho việc phân loại (tin tức điện tử, bài báo khoa học, nghị
luận chính trị ....)
- Mô hình thực hiện phân loại văn bản
- Thuật toán sử dụng để phân loại văn bản
- Kết quả và đánh giá.
Trong luận văn này, dữ liệu đầu vào sẽ các bài báo trên mạng Internet.

1.2.2. Giai đoạn huấn luyện
Các văn bản đầu vào được gán nhãn và được trích chọn đặc trưng để nhận
dạng và sử dụng thuật toán học để lưu trữ lại các giá trị của đặc trưng theo một mô
hình chuẩn

Hình 1. 3 Chi tiết giai đoạn huấn luyện [5].
Giai đoạn huấn luyện gồm các bước sau:
Tiền xử lý dữ liệu: là bước làm sạch dữ liệu trước khi bắt đầu bất kì xử lý

nào trên tập dữ liệu, việc này bao gồm các bước xử lý ngôn ngữ tự nhiên như loại
bỏ stop words (từ dừng), kiểm tra chính tả, tách từ ...
Tách từ: đây một bước rất quan trọng khi xử lý tiền văn bản, nhất là đối với
tiếng Việt. Bởi vì cấu trúc cũng như đặc trưng của tiếng Việt nên việc tách từ trong


8

văn bản dữ liệu đầu vào là rất quan trọng, đảm bảo tính chính xác khi thực hiện
bước tiếp theo.
Trích chọn đặc trưng: bằng các kĩ thuật, phương pháp, thuật toán, ta sẽ trích
chọn đặc trưng các từ trong bài báo để được phiên bản cô đọng của văn bản, dễ
dàng thao tác trên dữ liệu nhận được. Kết quả của bước này là dữ liệu đầu vào cho
các thuật toán phân loại văn bản.
Huấn luyện: đây là bước dựa vào thuật toán phân loại sử dụng và tập dữ liệu
mẫu để xây dựng mô hình phân loại sử dụng cho các văn bản cần phân loại.

1.2.3. Giai đoạn phân lớp
Đây là giai đoạn thực hiện phân loại cho một văn bản chưa có nhãn dựa trên
mô hình mẫu đã được xây dựng từ giai đoạn huấn luyện. Giai đoạn này gồm các
bước sau:
- Trích trọn đặc trưng: văn bản đầu vào sẽ được xử lý qua một số bước như ở
giai đoạn huấn luyện gồm tiền xử lý, tách từ, trích trọn đặc trưng...
- Biểu diễn văn bản: sau khi trích trọn được những đặc trưng của văn bản đầu
vào, chúng ta cần biểu diễn văn bản dưới các mô hình tiện cho việc thực hiện phân
loại.
- Phân loại: Dựa trên mô hình chuẩn đã được huấn luyên để phân loại nội
dung văn bản theo đúng chủ đề.
- Đưa ra kết quả.


1.3. Tiền xử lý văn bản
Trong phần này, luận văn sẽ trình bày các bước cơ bản được thực hiện trong
giai đoạn tiền xử lý văn bản và một số mô hình và phương pháp áp dụng để thực
hiện trong giai đoạn này.

1.3.1. Tách từ trong văn bản
Khi thực hiện phân loại văn bản, trong bước tiền xử lý, việc đầu tiên cần xử
lý văn bản đó chính là việc tách từ. Bời vì sự phức tạp của tiếng Việt, nên việc áp


9

dụng phương pháp phù hợp để thực hiện tách từ khi xử lý văn bản đầu vào là việc
rất quan trọng. Trong phần này luận văn giới thiệu một vài phương pháp dùng để
tách từ trong văn bản

Phương pháp khớp tối đa
Tư tưởng của phương pháp khớp tối đa (Maximum Matching) [6] là duyệt
một câu từ trái qua phải và chọn từ có nhiều tiếng nhất mà có mặt trong từ điển
tiếng Việt. Thuật toán có 2 dạng sau:
Dạng đơn giản: Giả sử có một chuỗi các tiếng trong câu là t1, t2, ..., tN. Thuật
toán kiểm tra xem t1 có mặt trong từ điển hay không, sau đó kiểm tra tiếp t1-t2 có
trong từ điển hay không. Tiếp tục như vậy cho đến khi tìm được từ có nhiều tiếng
nhất có mặt trong từ điển và đánh dấu từ đó. Sau đó tiếp tục quá trình trên với tất
các các tiếng còn lại trong câu và trong toàn bộ văn bản. Dạng này khá đơn giản,
nhưng nó gặp phải rất nhiều nhập nhằng trong tiếng Việt. Ví dụ, nó bị gặp phải lỗi
khi phân đoạn từ câu sau: “học sinh | học sinh | học”, câu đúng phải là “học sinh|
học| sinh học”.
Dạng phức tạp: Dạng này có thể tránh được một số nhập nhằng gặp phải
trong dạng đơn giản. Đầu tiên thuật toán kiểm tra xem t1 có mặt trong từ điển

không, sau đó kiểm tra tiếp t1-t2 có mặt trong từ điển không. Nếu t1-t2 đều có mặt
trong từ điển, thì thuật toán thực hiện chiến thuật chọn 3-từ tốt nhất, cụ thể như sau:
- Độ dài trung bình của 3 từ là lớn nhất. Ví dụ, chuỗi “cơ quan tài chính”

được phân đoạn đúng thành “cơ quan | tài chính”, tránh được việc phân đoạn sai
thành “cơ | quan tài | chính” vì cách phân đúng phải có độ dài trung bình lớn nhất.
- Sự chênh lệch độ dài của 3 từ là ít nhất. Ví dụ, chuỗi “công nghiệp hoá

chất phát triển” được phân đoạn đúng thành “công nghiệp | hoá chất | phát triển”,
thay vì phân đoạn sai thành “công nghiệp hoá | chất | phát triển”. Cả 2 cách phân
đoạn này đều có độ dài trung bình bằng nhau, nhưng cách phân đoạn đúng có sự
chênh lệch độ dài 3 từ ít hơn.


10

Phương pháp này thực hiện tách từ đơn giản, nhanh và chỉ cần dựa vào từ
điển để thực hiện. Tuy nhiên, hạn chế của phương pháp này cũng chính là từ điển,
bởi độ chính xác khi thực hiện tách từ phụ thuộc hoàn toàn vào tính đủ, tính chính
xác của từ điển.

Mô hình tách từ bằng WFST và mạng Neural
Phương pháp WFST (Weighted Finite - State Transducer) [1] còn gọi là
phương pháp chuyển dịch trạng thái hữu hạn có trọng số. Ý tưởng chính của
phương pháp này áp dụng cho phân đoạn từ tiếng Việt là các từ được gán trọng số
bằng xác suất xuất hiện của từ đó trong dữ liệu. Sau đó duyệt qua các câu, cách
duyệt có trọng số lớn nhất được chọn là cách dùng để phân đoạn từ. Phương pháp
WFST đã được áp dụng trong công trình [9] đã được công bố của tác giả Đinh Điền
năm 2001. Trong đó, tác giả đã sử dụng WFST kèm với mạng Neural để xây dựng
hệ thống tách từ gồm hai tầng: Tầng WFST để tách từ; tầng mạng Neural dùng để

khử nhập nhằng về ngữ nghĩa (nếu có).
Tầng WFST: Gồm có ba bước
Bước 1: Xây dựng từ điển trọng số
Từ điển trọng số D được xây dựng như là một đồ thị biến đổi trạng thái hữu
hạn có trọng số. Giả sử:
- H là tập các tiếng trong tiếng Việt (hay còn gọi là các từ chính tả).
- P là tập các loại từ trong tiếng Việt.
- Mỗi cung của D có thể là:
 Từ một phần tử của H tới một phần tử của H;
 Từ phần tử  (xâu rỗng) đến một phần tử của P.
Mỗi từ trong D được biểu diễn bởi một chuỗi các cung bắt đầu bởi một cung
tương ứng với một phần tử của H, kết thúc bởi một cung có trọng số tương ứng với
một phần tử của  P.


11

Trọng số biểu diễn một chi phí ước lượng (estimated cost) cho bởi công
thức:
𝑓

𝐶 = − log ( )
𝑁

(1.1)

Trong đó, f là tần số xuất hiện của từ; N là kích thước tập mẫu.
Đối với các trường hợp từ mới chưa gặp, mô hình áp dụng xác suất có điều
kiện Goog-Turning (Baayen) để tính toán trọng số.
Bước 2: Xây dựng các khả năng tách từ

Bước này thống kê tất cả các khả năng phân đoạn của một câu. Giả sử câu có
n tiếng, thì có tới 2n-1 cách phân đoạn khác nhau. Để giảm sự bùng nổ các cách phân
đoạn, thuật toán loại bỏ ngay những nhánh phân đoạn mà chứa từ không xuất hiện
trong từ điển.
Bước 3: Lựa chọn khả năng tách tối ưu
Sau khi liệt kê tất cả các khả năng phân đoạn từ, thuật toán chọn cách tách từ
tốt nhất, đó là cách tách từ có trọng số bé nhất.
Tầng mạng Neural
Tầng này được sử dụng để khử nhập nhằng khi tách từ bằng cách kết hợp so
sánh với từ điển.
Phương pháp này có độ chính xác khá cao (>98% đối với tách từ trong lĩnh vực
khoa học - kỹ thuật; >94% đối với tiểu thuyết văn học), bằng việc kết hợp mạng
Neural với từ điển để khử các nhập nhằng có thể có khi tách ra nhiều từ từ một câu.
Khi đó tầng mạng Neural sẽ loại bỏ đi các từ không phù hợp bằng cách kết hợp với
từ điển. Tuy nhiên, việc xây dựng tập ngữ liệu học đầy đủ đáp ứng yêu cầu là rất
công phu, tốn kém về thời gian và công sức
Phương pháp học dựa vào sự biến đổi trạng thái
Học trên sự biến đổi trạng thái (TBL - Transformation-Based Learning) [9]
là một phương pháp học “hướng lỗi” (error-driven) dựa trên tập luật đã được sắp


12

xếp. TBL được Eric Brill phát triển cho bài toán gán nhãn từ loại (Part-Of-Speech
tagging).
Mô hình học TBL bao gồm 3 thành phần quan trọng: Ngữ liệu đã gán nhãn,
heuristic cơ sở để dự đoán giá trị khởi đầu cho các thể hiện, và một tập các khung
luật được sử dụng để quyết định không gian cho các luật chuyển đổi. Các bước để
tạo mô hình học cụ thể như sau:
- Gỡ nhãn của ngữ liệu huấn luyện.

- Áp dụng heuristic cơ sở để tạo các giả thuyết ban đầu cho ngữ liệu vừa
được gỡ nhãn.
- Phát sinh các luật có thể sửa ít nhất một lỗi dựa trên khung luật. Các luật
này sau đó được kiểm tra dựa trên điểm của chúng khi áp dụng cho tập huấn luyện.
Luật có điểm cao nhất (điểm được tính bằng hiệu số giữa thay đổi đúng và thay đổi
sai) sẽ được chọn. Luật được chọn sẽ đem áp dụng lại cho ngữ liệu học.
- Toàn bộ quá trình học như trên sẽ được lặp lại trên ngữ liệu sau khi chuyển
đổi (ngữ liệu được áp dụng luật được lựa chọn ở bước trước). Quá trình này sẽ dừng
nếu điểm của luật nhỏ hơn một ngưỡng T nào đó. Kết quả là chúng ta có một dãy
các luật chuyển đổi.
Sau khi có được dãy các luật chuyển đổi, chúng ta có thể áp dụng dãy luật
này cho một văn bản mới bằng cách áp dụng heuristic cơ bản, rồi lần lượt áp dụng
từng luật trong dãy luật được rút trích trong quá trình học để xác định các tham số
(các xác suất) cần thiết cho mô hình nhận diện từ.
Đặc điểm của phương pháp này là khả năng tự rút ra quy luật của ngôn ngữ.
Nó có những ưu điểm của cách tiếp cận dựa trên luật, nhưng khắc phục được hạn
chế của việc xây dựng các luật một cách thủ công bởi các chuyên gia. Các luật được
thử nghiệm tại chỗ để đánh giá độ chính xác và hiệu quả của luật (dựa trên ngữ liệu
huấn luyện).


13

Sử dụng TBL có khả năng khử được một số nhập nhằng như: “The singer
sang a lot of a??as” thì hệ thống có thể xác định được “a??as” là “arias” (dân ca)
thay vì “areas” (khu vực). Tuy nhiên, để xây dựng được tập ngữ liệu đầy đủ, chính
xác phục vụ cho máy “học” đòi hỏi tốn kém nhiều thời gian và công sức, cài đặt
phức tạp và máy tính phải trải qua một thời gian huấn luyện khá lâu để có thể rút ra
được các luật.


1.3.2. Trọng số của từ trong văn bản
Dữ liệu văn bản là một trong những dạng dữ liệu truyền thống và quan trọng
nhất được con người sử dụng để lưu trữ thông tin. Một trong những vấn đề khó
khăn nhất của máy tính là làm thế nào để biểu diễn văn bản phản ánh đúng nội
dung. Công việc này còn gọi là đánh chỉ số văn bản. Trước đây, quá trình này được
làm thủ công với sự giúp đỡ của người dùng hoặc các chuyên gia trong một số lĩnh
vực chuyên ngành. Tuy nhiên, với số lượng lớn các văn bản ngày càng tăng, thì việc
đánh chỉ số thủ công là không khả thi, do vậy, việc đánh chỉ số một cách tự động là
cần thiết . Trong đó, việc lựa chọn các từ để đánh chỉ số, hay còn gọi là lựa chọn
đặc trưng, là một công việc rất quan trọng nhưng lại không dễ dàng. Đây cũng là
một chủ đề nghiên cứu trong học máy và trong khai phá dữ liệu nói chung.
Giả sử từ một văn bản d thuộc miền ứng dụng, sử dụng các phương pháp lựa
chọn từ ta nhận được một tập từ vựng T, được dùng để biểu diễn văn bản d. Đặc
trưng cho độ quan trọng của từ thuộc tập T trong một văn bản bất kỳ là một giá trị
số được gán cho từ đó trong văn bản d đã cho. Công việc tính trọng số của từ còn
được gọi là đánh trọng số các từ trong văn bản. Bài toán đánh trọng số được phát
biểu như sau:
Input: Cho một từ ti  T và một văn bản dj thuộc miền ứng dụng.
Output: Giá trị wij là trọng số (độ quan trọng) của từ ti trong văn bản dj.
Ta xét một số phương pháp đánh trọng số từ điển hình như sau :

Mô hình Boolean


14

Trong mô hình boolean, văn bản, vốn là tập hợp của các term ( thuật ngữ ),
được biểu diễn bởi chỉ số từng term và trọng số của chúng. Trọng số của từng term dùng để đánh giá độ quan trọng của chúng - trong mô hình này chỉ mang hai giá trị
0 và 1, tùy theo sự xuất hiện của term đó trong văn bản. Trong khi đó, câu truy vấn
bao gồm các văn bản tìm kiếm liên hệ với nhau thông qua các phép đại số quan hệ

cơ bản như NOT (phủ định), AND (và) hay OR (hoặc). Thông qua mô hình dạng
chuẩn phân biệt (Disjunctive Normal Form), câu truy vấn có thể biểu diễn thành
dạng vector với các thành phần liên kết và các phép toán quan hệ cơ bản.
Độ liên quan giữa một văn bản và truy vấn được xác định thông qua các
thành phần liên kết. Độ liên quan này chỉ có thể mang hai giá trị : 0 – không phù
hợp với truy vấn và 1 – phù hợp với truy vấn.
Giả sử có một tập gồm m văn bản D = {d1, d2,..., dm}. Tập từ vựng T gồm n
từ khoá T = {t1, t2,..., tn}. Gọi W = (wij) là ma trận trọng số, với wij là trọng số của từ
khoá ti trong văn bản dj. Mô hình Boolean là mô hình đánh trọng số đơn giản nhất,
giá trị trọng số wij được tính như sau:
𝑤𝑖𝑗 = {

1
0

𝑡𝑖  𝑑𝑗
𝑡𝑖  𝑑𝑗

(1.2)

Hạn chế lớn nhất của mô hình này đó là việc đánh giá độ liên quan chỉ trả về
hai kết quả, hoặc phù hợp hoặc không, như vậy yêu cầu của hệ thống khi cần sắp
xếp và chọn lựa các văn bản theo mức độ liên quan đến truy vấn sẽ không đạt. Độ
liên quan của mô hình này không thể phân chia thành các mức khác nhau, do vậy
không phản ánh được thực tế là việc liên quan giữa văn bản và truy vấn có thể là
mờ, không chắn chắn. Hạn chế này được gỡ bỏ khi ta sử dụng một mô hình tổng
quát hơn – Mô hình không gian vector (Vector Space Model).

Phương pháp dựa trên tần số từ khoá
Trong khai phá dữ liệu văn bản (text mining) [13], thuật ngữ TF-IDF (term

frequency - inverse document frequency) là một phương thức thống kê được biết
đến rộng rãi nhất để xác định độ quan trọng của một từ trong đoạn văn bản trong


15

một tập nhiều đoạn văn bản khác nhau. Nó 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.3)

(với tt 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 toán độ quan trọng của một từ. Khi
tính toán TF, mỗi từ đều quan trọng như nhau, nhưng có một số từ trong tiếng Việt
như "là", "của", "đó",... 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:

𝑖𝑑𝑓 (𝑡 ) = 𝑙𝑜𝑔

𝑁
|𝑡∈𝐷:𝑡∈𝑑|

(1.4)

(trong đó NN là tổng số đoạn văn bản; tập |{t \in D : t \in d}| là số văn bản
chứa từ tt).
TF-IDF được tính bởi công thức:
𝑡𝑓_𝑖𝑑𝑓 (𝑡 ) = 𝑡𝑓 (𝑡 ) 𝑥 𝑖𝑑𝑓 (𝑡 )

(1.5)

Ngoài ra, giá trị của ma trận trọng số theo phương pháp này được tính như
sau:


16

[1 + log(𝑡𝑓𝑖𝑗 )] log (

𝑤𝑖𝑗 = {
0

𝑚
𝑑𝑓𝑖

) 𝑛ế𝑢 𝑡𝑓𝑖𝑗 1
𝑛ế𝑢 𝑡𝑓𝑖𝑗 = 0


(1.6)

1.3.3. Trích chọn đặc trưng văn bản
Các phương pháp rút trích thông tin cổ điển coi mỗi một văn bản như là tập
các từ khóa và gọi tập các từ khóa này là tập các term [4]. Một phần tử trong tập
term đơn giản là một từ, mà ngữ nghĩa của từ này giúp tạo nên nội dung của văn
bản. Vì vậy, tập term được sử dụng để tạo các chỉ mục và tóm lược nội dung của
văn bản.
Giả sử cho một tập term (cụm từ) của một văn bản nào đó, có thể nhận thấy
rằng không phải tất cả các từ trong tập term này đều có mức độ quan trọng như
nhau trong việc mô tả nội dung văn bản. Ví dụ, xét một tập gồm một trăm ngàn văn
bản, giả sử có một từ A nào đó xuất hiện trong một trăm ngàn văn bản này thì có thể
khẳng định rằng từ A này không quan trọng và ta sẽ không quan tâm đến nó, bởi
chắc chắn nó sẽ không cho ta biết được về nội dung của các văn bản này. Vì vậy từ
A sẽ bị loại ra khỏi tập các term, khi chúng ta xây dựng tập term cho văn bản để
miêu tả nội dung ngữ nghĩa của các văn bản này. Kết quả này có được thông qua
thao tác xác định trọng số cho mỗi một từ trong tập term của một văn bản.
Đặt ki là từ thứ i trong tập term, dj là văn bản j, và wij  0 là trọng số của từ ki
trong văn bản dj. Giá trị của trọng số này rất quan trọng trong việc miêu tả nội dung
của văn bản.
Đặt t là số lượng các từ trong tập term của hệ thống. K={k 1, k2, k3,.., kt} là
tập tất cả các từ trong tập term, trong đó ki là từ thứ i trong tập term. Trọng số wij >
0 là trọng số của từ ki trong văn bản dj. Với mỗi một từ, nếu nó không xuất hiện
trong văn bản thì wij = 0. Do đó, văn bản dj thì được biểu diễn bằng vector dj, trong
đó vector dj = {wj1, wj2, wj3, ..., wjt }.


×