Tài liệu Đề tài Giới thiệu tổng quan về khai phá dữ liệu văn bản, một số định nghĩa và một số bài toán điển hình: Khóa luận tốt nghiệp Nguyễn Việt Cường
i
LỜI CẢM ƠN
Em xin bày tỏ lòng kính trọng và biết ơn sâu sắc tới thầy giáo, tiến sĩ HÀ
QUANG THỤY, Trường Đại học Công nghệ, ĐHQG Hà Nội và tiến sĩ ĐOÀN SƠN,
Đại học Tohoku, Nhật Bản đã hướng dẫn và động viên em rất nhiều trong quá trình
làm luận văn.
Em xin được gửi lời cảm ơn tới các Thầy, Cô trong Trường Đại học Công
Nghệ, Đại học Quốc Gia Hà Nội và nhóm Xeminar thuộc bộ môn Các Hệ thống
Thông tin, những người đã dạy dỗ, giúp đỡ và chỉ bảo cho em trong suốt quá trình học
tập.
Cuối cùng, con xin gửi lời biết ơn tới gia đình, nơi đã sinh thành, nuôi dưỡng
và động viên con rất nhiều trong thời gian qua.
Hà Nội ngày 20/05/2006
Sinh viên
Nguyễn Việt Cường
Khóa luận tốt nghiệp Nguyễn Việt Cường
ii
TÓM TẮT
Biểu diễn văn bản là một trong những công đoạn quan trọng nhất và được quan
tâm đầu tiên trong các vấn đề xử lý văn bản. Nó có ảnh hưởng rất lớn đến các bài toán tìm
kiếm văn bản, phân lớp, phân cụm hay t...
60 trang |
Chia sẻ: hunglv | Lượt xem: 1525 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Giới thiệu tổng quan về khai phá dữ liệu văn bản, một số định nghĩa và một số bài toán điển hình, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Khĩa luận tốt nghiệp Nguyễn Việt Cường
i
LỜI CẢM ƠN
Em xin bày tỏ lịng kính trọng và biết ơn sâu sắc tới thầy giáo, tiến sĩ HÀ
QUANG THỤY, Trường Đại học Cơng nghệ, ĐHQG Hà Nội và tiến sĩ ĐỒN SƠN,
Đại học Tohoku, Nhật Bản đã hướng dẫn và động viên em rất nhiều trong quá trình
làm luận văn.
Em xin được gửi lời cảm ơn tới các Thầy, Cơ trong Trường Đại học Cơng
Nghệ, Đại học Quốc Gia Hà Nội và nhĩm Xeminar thuộc bộ mơn Các Hệ thống
Thơng tin, những người đã dạy dỗ, giúp đỡ và chỉ bảo cho em trong suốt quá trình học
tập.
Cuối cùng, con xin gửi lời biết ơn tới gia đình, nơi đã sinh thành, nuơi dưỡng
và động viên con rất nhiều trong thời gian qua.
Hà Nội ngày 20/05/2006
Sinh viên
Nguyễn Việt Cường
Khĩa luận tốt nghiệp Nguyễn Việt Cường
ii
TĨM TẮT
Biểu diễn văn bản là một trong những cơng đoạn quan trọng nhất và được quan
tâm đầu tiên trong các vấn đề xử lý văn bản. Nĩ cĩ ảnh hưởng rất lớn đến các bài tốn tìm
kiếm văn bản, phân lớp, phân cụm hay tĩm tắt văn bản… Khĩa luận này trình bày và
nghiên cứu một phương pháp biểu diễn văn bản mới dựa trên cơ sở lý thuyết tập mờ và áp
dụng vào bài tốn phân lớp văn bản. Nội dung của khĩa luận tập trung vào các vấn đề
sau:
1. Trình bày một số phương pháp biểu diễn văn bản thơng thường, trong đĩ, khĩa
luận đi sâu vào cách biểu diễn theo mơ hình vector, tức mỗi văn bản sẽ được biểu diễn
như một vector cĩ các thành phần là các từ khĩa cĩ mặt hoặc khơng cĩ mặt trong văn bản.
Sau đĩ, khĩa luận tìm hiểu phương pháp biểu diễn văn bản trong máy tìm kiếm.
2. Trình bày về lý thuyết tập mờ, và đề cập một cách biểu diễn văn bản mới dựa
trên các khái niệm mờ. Từ đĩ đề xuất hướng giải quyết khi xuất hiện các từ đồng nghĩa
trong văn bản.
3. Tiến hành thử nghiệm cách biểu diễn mới này vào bài tốn phân lớp văn bản.
Chỉ ra một số kết quả phân lớp và so sánh với phương pháp biểu diễn theo mơ hình vector
thơng thường. Từ đĩ rút ra một số kết luận và hướng phát triển tiếp theo.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
iii
MỤC LỤC
LỜI CẢM ƠN ..........................................................................................................i
TĨM TẮT ...............................................................................................................ii
MỤC LỤC............................................................................................................. iii
MỞ ĐẦU.................................................................................................................1
Chương 1. KHAI PHÁ DỮ LIỆU VĂN BẢN........................................................3
1.1. Tổng quan về khai phá dữ liệu................................................................3
1.1.1. Khái niệm............................................................................................3
1.1.2. Các bước của quá trình khai phá dữ liệu ............................................3
1.1.3. Ứng dụng của khai phá dữ liệu...........................................................5
1.2. Một số bài tốn trong khai phá dữ liệu văn bản......................................6
1.2.1. Tìm kiếm văn bản ...............................................................................6
1.2.2. Phân lớp văn bản.................................................................................7
Chương 2. CÁC PHƯƠNG PHÁP CƠ BẢN BIỂU DIỄN VĂN BẢN ...............10
2.1. Tiền xử lý văn bản ................................................................................10
2.2. Mơ hình Logic.......................................................................................12
2.3. Mơ hình phân tích cú pháp ...................................................................14
2.4. Mơ hình khơng gian vector ...................................................................15
2.4.1. Mơ hình Boolean ..............................................................................17
2.4.2. Mơ hình tần suất ...............................................................................17
2.5. Biểu diễn văn bản trong máy tìm kiếm.................................................20
2.5.1. Giới thiệu về máy tìm kiếm..............................................................20
2.5.2. Mơ hình biểu diễn văn bản trong máy tìm kiếm ..............................21
Chương 3. BIỂU DIỄN VĂN BẢN SỬ DỤNG CÁC KHÁI NIỆM MỜ ............23
Khĩa luận tốt nghiệp Nguyễn Việt Cường
iv
3.1. Lý thuyết mờ .........................................................................................23
3.1.1. Tập mờ ..............................................................................................23
3.1.2. Các phép tốn trên tập mờ ................................................................25
3.1.3. Quan hệ mờ.......................................................................................27
3.1.4. Các phép tốn trên quan hệ mờ ........................................................27
3.2. Biểu diễn văn bản sử dụng các khái niệm mờ ......................................29
3.2.1. Khái niệm mờ ...................................................................................30
3.2.2. Biểu diễn văn bản .............................................................................32
3.2.3. Đề xuất giải pháp cho vấn đề đồng nghĩa.........................................32
Chương 4. CÁC PHƯƠNG PHÁP PHÂN LỚP VĂN BẢN................................35
4.1. Tổng quan về bài tốn phân lớp............................................................35
4.2. Các thuật tốn phân lớp ........................................................................36
4.2.1. Phân lớp dựa trên thuật tốn Naive Bayes........................................36
4.2.2. Phân lớp dựa trên thuật tốn K - Nearest Neighbor (KNN).............38
4.2.3. Phân lớp dựa vào thuật tốn cây quyết định.....................................39
4.2.4. Phân lớp sử dụng Support Vector Machines (SVM)........................41
Chương 5. MỘT SỐ KẾT QUẢ THỰC NGHIỆM ..............................................43
5.1. Tập dữ liệu và tiền xử lý .......................................................................43
5.2. Cơng cụ và phương pháp phân lớp .......................................................44
5.3. Kết quả thực nghiệm.............................................................................45
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ............................................................53
TÀI LIỆU THAM KHẢO.....................................................................................55
Khĩa luận tốt nghiệp Nguyễn Việt Cường
1
MỞ ĐẦU
Ngày nay, sự phát triển mạnh mẽ của Internet đã dẫn đến sự bùng nổ thơng tin về
nhiều mặt kể cả về nội dung lẫn số lượng. Chỉ bằng một thao tác tìm kiếm đơn giản, ta cĩ
thể nhận về một khối lượng khổng lồ các trang web cĩ chứa thơng tin liên quan tới nội
dung ta tìm kiếm. Tuy nhiên, chính sự dễ dàng này cũng mang đến cho con người rất
nhiều khĩ khăn trong việc chắt lọc ra các thơng tin cĩ ích để thu được các tri thức mới.
Phát hiện tri thức và khai phá dữ liệu là câu trả lời mới nhất cho vấn đề này nhằm phát
hiện ra các tri thức mới từ khối dữ liệu khổng lồ mà con người cĩ được.
Trong các loại dữ liệu thì văn bản là loại dữ liệu phổ biến mà con người thường
gặp phải nhất. Mơ hình biểu diễn văn bản phổ biến hiện nay là mơ hình khơng gian
vector, trong đĩ mỗi văn bản được biểu diễn bằng một vector của các từ khĩa. Tuy nhiên
bài tốn khai phá dữ liệu văn bản thường gặp phải một số khĩ khăn như tính nhiều chiều
của văn bản, tính nhập nhằng của ngơn ngữ… Trong khĩa luận này, chúng tơi xin đề cập
đến một cách biểu diễn văn bản mới: biểu diễn dựa trên các khái niệm mờ. Trong đĩ, mỗi
khái niệm sẽ được xác định bởi một tập các từ khĩa liên quan. Và mức độ liên quan của
khái niệm đến văn bản sẽ được xác định bằng hàm tích hợp mờ các từ khĩa đĩ. Sau khi đã
cĩ một tập các khái niệm liên quan đến một hay nhiều chủ đề cần phần lớp, mỗi văn bản
sẽ được xem như là một vector cĩ các thành phần là các khái niệm mờ đĩ.
Với lượng thơng tin dạng văn bản đồ sộ của Internet, một yêu cầu lớn đặt ra đối
với chúng ta là làm sao tổ chức và tìm kiếm thơng tin cĩ hiệu quả nhất. Phân lớp (phân
loại) thơng tin là một trong những giải pháp hợp lý cho yêu cầu trên. Khĩa luận sẽ trình
bày một số thuật tốn phân lớp tiêu biểu và đưa ra hướng thực nghiệm cho phương pháp
biểu diễn văn bản dựa trên các khái niêm mờ.
Chúng tơi áp dụng thuật tốn KNN (k – người láng giềng gần nhất) và phần mềm
WEKA (K-người láng giếng gần nhất) để tiến hành phân lớp. Phần thực nghiệm cho thấy
rằng phương pháp biểu diễn văn bản dựa khái niệm mờ cĩ kết quả phân lớp tốt hơn so với
phương pháp biểu diễn văn bản theo vector từ khĩa.
Ngồi phần mở đầu và kết luận, nội dung của luận văn được trình bày trong 5
chương:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
2
Chương 1, giới thiệu tổng quan về khai phá dữ liệu văn bản, một số định nghĩa và
một số bài tốn điển hình.
Chương 2, trình bày một số phương pháp biểu diễn văn bản truyền thống: mơ
hình tần suất, mơ hình phân tích cú pháp, mơ hình khơng gian vector... Đồng thời nêu ra
cách biểu diễn văn bản thường dùng trong máy tìm kiếm.
Chương 3, giới thiệu tổng quan về lý thuyết tập mờ [9][14] và một số phép tốn
trên tập mờ. Nội dung chính của chương là đề cập một cách biểu diễn văn bản mới dựa
trên các khái niệm mờ.
Chương 4, trình bày bài tốn phân lớp văn bản và một số thuật tốn phân lớp tiêu
biểu.
Chương 5, chỉ ra các kết quả thực nghiệm cĩ được khi áp dụng mơ hình biểu diễn
mới trong bài tốn phân lớp văn bản. Đánh giá và so sánh với mơ hình biểu diễn thơng
thường.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
3
Chương 1. KHAI PHÁ DỮ LIỆU VĂN BẢN
1.1. Tổng quan về khai phá dữ liệu
1.1.1. Khái niệm
Khai phá dữ liệu[1][7][13] là một khái niệm ra đời vào những năm cuối của thập
kỷ 80 của thế kỷ 20. Nĩ bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thơng tin cĩ
giá trị tiềm ẩn trong các tập dữ liệu lớn như các kho dữ liệu, các cơ sở dữ liệu (CSDL) cĩ
dung lượng rất lớn. Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu
và sử dụng các kỹ thuật để tìm ra các mẫu cĩ tính hệ thống trong tập dữ liệu.
Một số định nghĩa tiêu biểu về Data mining:
Khái niệm data mining được định nghĩa như sau: “The nontrivial extraction
of implicit, previously unknown, and potentially useful information from data” [13], tạm
dịch: “là việc trích rút một cách phức tạp các thơng tin - ẩn, khơng biết trước và cĩ khả
năng hữu ích - từ dữ liệu”.
“The science of extracting useful information from large data sets or databases”
[1], tạm dịch là: “Nghành khoa học chuyên trích chọn những thơng tin cĩ giá trị từ những
tập dữ liệu lớn hoặc các CSDL”.
Năm 1989, Fayyad, Piatestky-Shapiro và Smyth đã đưa ra khái niệm “Phát hiện
tri thức trong cơ sở dữ liệu” (Knowledge Discovery in Databases - KDD) để chỉ tồn bộ
quá trình phát hiện các tri thức cĩ ích từ các tập dữ liệu lớn [6]. Trong đĩ, khai phá dữ
liệu là một bước đặc biệt quan trọng trong tồn bộ quá trình, sử dụng các thuật tốn
chuyên dụng để chiết xuất ra các mẫu (pattern) từ dữ liệu.
1.1.2. Các bước của quá trình khai phá dữ liệu
Các thuật tốn khai phá dữ liệu thường được miêu tả như những chương trình
hoạt động trực tiếp trên tệp dữ liệu. Với các phương pháp học máy và thống kê trước đây,
thường thì bước đầu tiên của các thuật tốn là nạp tồn bộ dữ liệu vào trong bộ nhớ trong
để xử lý. Khi chuyển sang các ứng dụng cơng nghiệp liên quan đến việc khai phá các kho
dữ liệu lớn, mơ hình này khơng thể đáp ứng được. Khơng chỉ bởi vì khơng thể nạp hết dữ
liệu vào trong bộ nhớ mà cịn vì khơng thể chiết suất dữ liệu ra các tệp đơn giản để phân
tích được.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
4
Quá trình khai phá dữ liệu bắt đầu bằng cách xác định chính xác vấn đề cần giải
quyết. Sau đĩ sẽ xác định các dữ liệu liên quan dùng để xây dựng giải pháp. Bước tiếp
theo là thu thập các dữ liệu cĩ liên quan và xử lý chúng thành định dạng sao cho các thuật
tốn khai phá dữ liệu cĩ thể hiểu được. Về lý thuyết thì cĩ vẻ rất đơn giản nhưng khi thực
hiện thì đây thực sự là một quá trình rất khĩ khăn, gặp phải nhiều vướng mắc như dữ liệu
phải được sao ra nhiều bản (nếu được chiết suất vào các tệp), quản lý tập các tệp dữ liệu,
phải lặp đi lặp lại nhiều lần tồn bộ quá trình (nếu mơ hình dữ liệu thay đổi) ...
Sẽ là quá cồng kềnh với một thuật tốn khai phá dữ liệu nếu phải truy nhập vào
tồn bộ nội dung của CSDL và làm những việc như trên. Vả lại, điều này cũng khơng cần
thiết. Cĩ rất nhiều thuật tốn khai phá dữ liệu thực hiện trên những thống kê tĩm tắt khá
đơn giản của CSDL, khi mà tồn bộ thơng tin trong CSDL là quá dư thừa đối với mục
đích của việc khai phá dữ liệu.
Bước tiếp theo là chọn thuật tốn khai phá dữ liệu thích hợp và thực hiện việc
khai phá để tìm được các mẫu cĩ ý nghĩa dưới dạng biểu diễn tương ứng với các ý nghĩa
đĩ. Thơng thường các mẫu được biểu diễn dưới dạng luật phân loại, cây quyết định, luật
sản xuất, biểu thức hồi quy, ...
Hình 1: Quá trình khai phá dữ liệu
Đặc điểm của các mẫu là phải mới, ít nhất là đối với hệ thống đĩ. Độ mới cĩ thể
được đo tương ứng với độ thay đổi trong dữ liệu (bằng cách so sánh các giá trị hiện tại với
các giá trị trước đĩ hoặc các giá trị mong muốn), hoặc bằng tri thức (mối liên hệ giữa các
Khĩa luận tốt nghiệp Nguyễn Việt Cường
5
phương pháp tìm mới và phương pháp cũ như thế nào). Thường thì độ mới của mẫu được
đánh giá bằng các hàm logic hoặc hàm đo độ mới, độ bất ngờ của mẫu. Ngồi ra, mẫu
phải cĩ khả năng sử dụng tiềm tàng. Các mẫu này sau khi được xử lý và diễn giải phải
dẫn đến những hành động cĩ ích nào đĩ được đánh giá bởi một hàm lợi ích. Ví dụ như
trong dữ liệu các khoản vay, hàm lợi ích đánh giá khả năng tăng lợi nhuận từ các khoản
vay. Mẫu khai thác được phải cĩ giá trị đối với các dữ liệu mới với độ chính xác nào đĩ.
Vì khi thi hành các thuật tốn và các nhiệm vụ của khai phá dữ liệu là rất khác
nhau cho nên dạng của các mẫu chiết xuất được cũng rất đa dạng. Theo cách đơn giản
nhất, sự phân tích cho ra kết quả chiết xuất là một báo cáo về một số loại, cĩ thể bao gồm
các phép đo mang tính thống kê về độ phù hợp của mơ hình, các dữ liệu lạ... Trong thực
tế thì đầu ra phức tạp hơn nhiều. Mẫu chiết suất được cĩ thể là một mơ tả xu hướng, cĩ
thể dưới dạng văn bản, một đồ thị mơ tả các mối quan hệ trong mơ hình, cũng cĩ thể là
một hành động, ví dụ như yêu cầu của người dùng làm gì với những gì khai thác được
trong CSDL.
Như vậy cĩ thể nhận thấy rằng kỹ thuật khai phá dữ liệu thực chất là sự kế thừa,
kết hợp và mở rộng của các kỹ thuật cơ bản đã được nghiên cứu từ trước như học máy,
nhận dạng, thống kê (hồi quy, xếp loại, phân nhĩm), các mơ hình đồ thị, mạng Bayes, trí
tuệ nhân tạo, thu thập tri thức hệ chuyên gia... Tuy nhiên, với sự kết hợp hướng mục tiêu
của khai phá dữ liệu, kỹ thuật này cĩ ưu thế hơn hẳn các phương pháp trước đĩ, đem lại
nhiều triển vọng trong việc ứng dụng phát triển nghiên cứu khoa học cũng như làm tăng
mức lợi nhuận trong các hoạt động kinh doanh.
1.1.3. Ứng dụng của khai phá dữ liệu
Tuy là một hướng tiếp cận mới nhưng khai phá dữ liệu đã thu hút được rất nhiều
sự quan tâm của các nhà nghiên cứu và phát triển nhờ vào những ứng dụng thực tiễn của
nĩ [xx]. Chúng ta cĩ thể liệt kê ra đây một số ứng dụng điển hình:
Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support)
Điều trị y học (medical treatment)
Text mining & Web mining
Tin-sinh học (bio-informatics)
Tài chính và thị trường chứng khốn (finance & stock market)
Khĩa luận tốt nghiệp Nguyễn Việt Cường
6
Phần tiếp theo, chúng tơi xin trình bày khái quát về Text Mining (gọi theo tiếng
Việt là Khai phá dữ liệu văn bản), một trong những ứng dụng điển hình nêu trên của khai
phá dữ liệu.
1.2. Một số bài tốn trong khai phá dữ liệu văn bản
1.2.1. Tìm kiếm văn bản
Nội dung:
Tìm kiếm văn bản[2][10] là quá trình tìm kiếm văn bản theo yêu cầu của người
dùng. Các yêu cầu được thể hiện dưới dạng các câu hỏi (query), dạng câu hỏi đơn giản
nhất là các từ khĩa. Cĩ thể hình dung hệ tìm kiếm văn bản sắp xếp tập văn bản trong miền
tìm kiếm thành hai lớp: Một lớp được hiển thị bao gồm các văn bản thỏa mãn với câu hỏi
người dùng và một lớp khơng được hiển thị bao gồm các văn bản khơng thỏa mãn yêu
cầu. Thực tế, các hệ thống tìm kiếm điển hình hiện nay, chẳng hạn như các máy tìm kiếm
như Google, Altavista…, khơng hoạt động như vậy mà đưa ra danh sách các văn bản theo
độ liên quan của văn bản với câu hỏi người dùng
Quá trình tìm kiếm
Quá trình tìm kiếm được chia thành bốn quá trình thành phần chính :
Đánh chỉ số (indexing): Các văn bản ở dạng thơ cần được chuyển sang một dạng
biểu diễn nào đĩ để xử lý. Quá trình này cịn được gọi là quá trình biểu diễn văn bản,
dạng biểu diễn phải cĩ cấu trúc và dễ dàng khi xử lý. Một nội dung quan trọng của khĩa
luận này là nghiên cứu cách thức biểu diễn văn bản sử dụng lý thuyết tập mờ nhằm cĩ
được biểu diễn văn bản mang nhiều ngữ nghĩa hơn.
Định dạng câu hỏi: Người dùng phải mơ tả những yêu cầu về lấy thơng tin cần
thiết dưới dạng câu hỏi. Các câu hỏi này phải được biểu diễn dưới dạng phổ biến cho các
hệ tìm kiếm như nhập vào các từ khĩa cần tìm. Ngồi ra cịn cĩ các phương pháp định
dạng câu hỏi dưới dạng ngơn ngữ tự nhiên hoặc dưới dạng các ví dụ, đối với các dạng này
thì cần cĩ các kỹ thuật xử lý phức tạp hơn. Đại đa số hệ tìm kiếm hiện nay dùng câu hỏi
dưới dạng các từ khĩa.
So sánh: Hệ thống phải thực hiện việc so sánh tường minh và tồn vẹn câu hỏi
của người dùng với các văn bản được lưu trữ trong CSDL. Cuối cùng hệ thống đưa ra một
Khĩa luận tốt nghiệp Nguyễn Việt Cường
7
quyết định phân loại các văn bản theo độ liên quan gần với câu hỏi người dùng và sắp xếp
theo thứ tự giảm dần của độ liên quan. Hệ thống hoặc hiển thị tồn bộ văn bản hoặc chỉ
một phần văn bản.
Phản hồi: Trong nhiều trường hợp, kết quả được trả về lúc đầu chưa phải đã thỏa
mãn yêu cầu của người dùng, do đĩ cần phải cĩ quá trình phản hồi để người dùng cĩ thể
thay đổi lại hoặc nhập mới các yêu cầu của mình. Mặt khác, người dùng cĩ thể tương tác
với các hệ về các văn bản thỏa mãn yêu cầu của mình và hệ cĩ chức năng cập nhậu các
văn bản đĩ. Quá trình này được gọi là quá trình phản hồi liên quan (Relevance feeback).
Các cơng cụ tìm kiếm hiện nay chủ yếu tập trung nhiều vào ba quá trình con đầu
tiên, cịn phần lớn chưa cĩ quá trình phản hồi hay xử lý tương tác người dùng và máy.
Quá trình phản hồi hiện nay đang được nghiên cứu rộng rãi và riêng trong quá trình tương
tác giao diện người máy đã xuất hiện hướng nghiên cứu được gọi là tác tử giao diện
(interface agent).
1.2.2. Phân lớp văn bản
Nội dung
Phân lớp văn bản [3][5][8][11][12] được xem như là quá trình gán các văn bản
vào một hay nhiều lớp văn bản đã được xác định từ trước. Người ta cĩ thể phân lớp các
văn bản một cách thủ cơng, tức là đọc nội dung từng văn bản một và gán nĩ vào một lớp
nào đĩ. Hệ thống quản lý tập gồm rất nhiều văn bản cho nên cách này sẽ tốn rất nhiều thời
gian, cơng sức và do đĩ là khơng khả thi. Do vậy mà phải cĩ các phương pháp phân lớp
tự động. Để phân lớp tự động người ta sử dụng các phương pháp học máy trong trí tuệ
nhân tạo như Cây quyết định, Bayes, k người láng giềng gần nhất...
Một trong những ứng dụng quan trọng nhất của phân lớp văn bản tự động là ứng
dụng trong các hệ thống tìm kiếm văn bản. Từ một tập con văn bản đã phân lớp sẵn, tất cả
các văn bản trong miền tìm kiếm sẽ được gán chỉ số lớp tương ứng. Trong câu hỏi của
mình, người dùng cĩ thể xác định chủ đề hoặc lớp văn bản mà mình mong muốn tìm kiếm
để hệ thống cung cấp đúng yêu cầu của mình.
Một ứng dụng khác của phân lớp văn bản là trong lĩnh vực hiểu văn bản. Phân
lớp văn bản cĩ thể được sử dụng để lọc các văn bản hoặc một phần các văn bản chứa dữ
liệu cần tìm mà khơng làm mất đi tính phức tạp của ngơn ngữ tự nhiên.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
8
Trong phân lớp văn bản, sự tương ứng giữa một văn bản với một lớp hoặc thơng
qua việc gán giá trị đúng sai (True - văn bản thuộc lớp, hay False -văn bản khơng thuộc
lớp) hoặc thơng qua một độ phụ thuộc (đo độ phụ thuộc của văn bản vào lớp). Trong
trường hợp cĩ nhiều lớp thì phân loại đúng sai sẽ là việc xem một văn bản cĩ thuộc vào
một lớp duy nhất nào đĩ hay khơng.
Quá trình phân lớp
Quá trình phân lớp văn bản tuân theo các bước sau:
Đánh chỉ số: Quá trình đánh chỉ số văn bản cũng giống như trong quá trình đánh
chỉ số của tìm kiếm văn bản. Trong quá trình này thì tốc độ đánh chỉ số đĩng vai trị quan
trọng vì xuất hiện lượng đáng kể văn bản mới cĩ thể cần được đánh chỉ số trong thời gian
thực.
Xác định độ phân lớp: Cũng giống như trong tìm kiếm văn bản, phân lớp văn bản
yêu cầu quá trình diễn tả việc xác định văn bản đĩ thuộc lớp nào đĩ ra sao (mơ hình phân
lớp) dựa trên cấu trúc biểu diễn của nĩ. Đối với hệ phân lớp văn bản, chúng ta gọi quá
trình này là bộ phân lớp (Categorizator hoặc classifier). Nĩ đĩng vai trị như các câu hỏi
trong hệ tìm kiếm. Tuy nhiên, trong khi những câu hỏi mang tính nhất thời, thì bộ phân
lớp được sử dụng một cách ổn định và lâu dài cho quá trình phân lớp.
So sánh: Trong hầu hết các bộ phân lớp, mỗi văn bản đều được yêu cầu gán đúng
sai vào một lớp nào đĩ. Sự khác nhau lớn nhất đối với quá trình so sánh trong hệ tìm kiếm
văn bản là mỗi văn bản chỉ được so sánh với một số lượng các lớp một lần và việc chọn
quyết định phù hợp cịn phụ thuộc vào mối quan hệ giữa các lớp văn bản.
Phản hồi (Hay thích nghi): Quá trình phản hồi đĩng vai trị quan trọng trong hệ
phân lớp văn bản. Thứ nhất, khi phân lớp thì phải cĩ mơt số lượng lớn các văn bản đã
được xếp loại bằng tay trước đĩ, các văn bản này được sử dụng làm mẫu huấn luyện để
hỗ trợ xây dựng bộ phân lớp. Thứ hai, đối với việc phân lớp văn bản thì khơng dễ dàng
thay đổi các yêu cầu như trong quá trình phản hồi của tìm kiếm văn bản bởi vì người dùng
chỉ cĩ thể thơng tin cho người bảo trì hệ thống về việc xĩa bỏ, thêm vào hoặc thay đổi các
phân lớp văn bản nào đĩ mà mình yêu cầu.
Ngồi hai bài tốn thường gặp trên, cịn cĩ các bài tốn khác sau:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
9
Phân cụm văn bản: Đưa các văn bản cĩ nội dung giống nhau vào thành từng
nhĩm
Tĩm tắt văn bản: Tĩm tắt nội dung một văn bản cho trước
Dẫn đường văn bản: Đưa một văn bản cho trước vào một chủ đề hoặc một
nơi lưu trữ nhất định theo yêu cầu người dùng
Trong các bài tốn nêu trên, văn bản thường được biểu diễn thành một tập các
thuộc tính đặc trưng cho văn bản đĩ. Các quá trình xử lý và làm việc tiếp theo đều thực
hiện trên các thuộc tính này. Cĩ nhiều tiêu chuẩn chọn lựa các thuộc tính để biểu diễn, tuy
nhiên đều dựa trên việc xử lý từ khĩa một cách tự động.
Trong chương tiếp theo, khĩa luận trình bày một số phương pháp biểu diễn văn
bản truyền thống.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
10
Chương 2. CÁC PHƯƠNG PHÁP CƠ BẢN BIỂU DIỄN
VĂN BẢN
2.1. Tiền xử lý văn bản
Trước khi bắt đầu quá trình biểu diễn văn bản, người ta tiến hành bước tiền xử lý
văn bản. Đây là bước hết sức quan trọng vì nĩ cĩ nhiệm vụ làm giảm số từ cĩ trong biểu
diễn văn bản và qua đĩ sẽ làm giảm kích thước dữ liệu trong biểu diễn văn bản.
Nội dung tiền xử lý văn bản:
Phân tích từ vựng
Bước phân tích từ vựng nhằm xác định các từ cĩ trong văn bản. Kết quả của cơng
việc này là cho ra một tập các từ riêng biệt. Tuy nhiên trong nhiều trường hợp cần cĩ cách
đối xử riêng biệt đối với một số từ đặc biệt, chẳng hạn như số, dấu ngoặc, dấu chấm câu
và trường hợp chữ hoa, chữ thường. Ví dụ về cách ứng xử đặc biệt, số thường bị loại ra
trong khi phân tích vì một mình nĩ khơng mang lại một ý nghĩa nào cho tài liệu (ngoại trừ
một vài trường hợp đặc biệt, ví dụ trong thu thập thơng tin về lĩnh vực lịch sử). Dấu chấm
câu, ví dụ như “.”, “!”, “?”, “-“, v.v… cũng thường được loại ra mà khơng cĩ ảnh hưởng
gì đến nội dung của tài liệu. Tuy nhiên cần phải chú ý trong một vài trường hợp, chẳng
hạn đối với những từ ghép nối (state-of-the-art) là khơng được phép bỏ dấu “-“, vì sẽ làm
thay đổi nghĩa của từ.
Loại bỏ từ dừng
Từ dừng ( stop-words) dùng để chỉ các từ mà xuất hiện quá nhiều trong các văn
bản của tồn tập kết quả, thường thì khơng giúp ích gì trong việc phân biệt nội dung của
các tài liệu. Ví dụ, những từ “web”, “site”, “link”, “www”, v.v…[??] thường xuất hiện
hầu hết trong các văn bản thì được gọi là stop-words. Ngồi ra, trong tiếng Anh, cĩ nhiều
từ chỉ dùng để phục vụ cho biểu diễn cấu trúc chứ khơng biểu đạt nội dung của nĩ như là
“a”, “the” (mạo từ), “in” (giới từ) , “but” (liên từ), động từ phổ biến cĩ dạng “to”, “be”, và
một số trạng từ và tính từ đặc biệt cũng được xem là những từ dừng (stop-words).
Vì đặc điểm của từ dừng nên chúng được loại bỏ mà khơng ảnh hưởng đến các
cơng việc biểu diễn văn bản tiếp theo.
Bảng danh sách một số từ dừng trong tiếng Anh:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
11
Danh sách một số từ dừng trong tiếng Việt: và; hoặc; cũng; là; mỗi; bởi…
Loại bỏ từ cĩ tần số thấp
Khi quan sát văn bản, người ta để ý thấy rằng: Cĩ nhiều từ trong tập văn bản gốc
xuất hiện rất ít lần và chúng sẽ cĩ ảnh hưởng rất ít trong văn bản. Vì vậy vấn đề đặt ra là
cần loại bỏ những từ cĩ tần xuất nhỏ. Người ta áp dụng phương pháp được đưa ra bởi
Zipf năm 1949: quan sát tần xuất xuất hiện của các từ trong tập văn bản.
Gọi tần số xuất hiện của từ khĩa t trong tập hợp X là ft. Xắp xếp tất cả các
từ khĩa trong tập hợp theo chiều giảm dần của tần số f, và gọi thứ hạng của mỗi từ khĩa t
là rt. Đinh luật Zipf được phát biểu dưới dạng cơng thức sau:
ft.rt ≈ K
Trong đĩ: K là một hằng số. Nếu N là tổng số từ trong tập văn bản, thì người ta
thấy rằng
10
NK ≈ .
Như vậy, tần số xuất hiện và thứ hạng của một từ khĩa là hai đại lượng nghịch
đảo của nhau. Để thấy rõ hơn điều này, người ta đã biểu diễn lại cơng thức định luật Zipf
theo cơng thức sau:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
12
t
t f
Kr ≈
Và biểu diễn theo lược đồ:
Loại bỏ tiền tố và hậu tố
Loại bỏ tiền tố và hậu tố (tiếng Anh là Stemming) tiến hành việc loại bỏ tiền tố và
hậu tố của từ để biến đổi nĩ thành từ gốc. Vì trong thực tế một từ gốc cĩ thể cĩ nhiều hình
thái biến đổi, chẳng hạn như động từ, danh từ, tính từ, trạng từ; và giữa chúng cĩ mối
quan hệ ngữ nghĩa. Ví dụ như những từ: “clusters”, “clustering”, “clustered” là cĩ cùng
mối quan hệ với từ “cluster”. Do vậy cần phải Stemming để làm giảm được số lượng từ
mà vẫn khơng làm ảnh hưởng đến nội dung tài liệu.
Tuy nhiên tồn tại một vấn đề thiếu sĩt xảy ra khi stemming, vì thuật tốn
stemming sử dụng một tập các quy tắc đơn giản để loại bỏ tiền tố/hậu tố. Do vậy nĩ cĩ
thể sinh ra các từ khơng chính xác. Ví dụ như “computing”, “computation” sau khi
stemming sẽ cịn là “comput” trong khi đĩ từ đúng phải là “compute’.
2.2. Mơ hình Logic
Theo mơ hình này các từ cĩ nghĩa trong văn bản sẽ được đánh chỉ số và nội dung
văn bản được quản lý theo các chỉ số Index đĩ. Mỗi văn bản được đánh chỉ số theo quy
tắc liệt kê các từ cĩ nghĩa trong các văn bản với vị trí xuất hiện của nĩ trong văn bản. Từ
cĩ nghĩa là từ mang thơng tin chính về các văn bản lưu trữ, khi nhìn vào nĩ người ta cĩ
thể biết chủ đề của văn bản cần biểu diễn.
Hình 2. Lược đồ các từ theo đinh luật
Khĩa luận tốt nghiệp Nguyễn Việt Cường
13
Tiến hành Index các văn bản đưa vào theo danh sách các từ khố nĩi trên. Với
mỗi từ khĩa người ta sẽ đánh số thứ tự vị trí xuất hiện của nĩ và lưu lại chỉ số đĩ cùng với
mã văn bản chứa nĩ. Cách biểu diễn này cũng được các máy tìm kiếm ưa dùng.
Ví dụ, cĩ hai văn bản với mã tương ứng là VB1,VB2.
“Cộng hịa xã hội chủ nghĩa Việt Nam” (VB1)
“ Việt Nam dân chủ cộng hịa” (VB2)
Khi đĩ ta cĩ cách biểu diễn như sau:
Khi biểu diễn văn bản theo phương pháp này người ta đưa ra cách tìm kiếm như sau:
Câu hỏi tìm kiếm được đưa ra dưới dạng Logic, tức là gồm một tập hợp các phép
tốn (AND, OR,…) được thực hiện trên các từ hoặc cụm từ. Việc tìm kiếm sẽ dựa vào
bảng Index đã tạo ra và kết quả trả lại là các văn bản thoả mãn tồn bộ các điều kiện trên
Một số ưu điểm, nhược điểm:
Ưu điểm
Việc tìm kiếm trở nên nhanh và đơn giản.
Thực vậy, giả sử cần tìm kiếm từ “computer”. Hệ thống sẽ duyệt trên bảng Index
để trỏ đến chỉ số Index tương ứng nếu từ “computer” tồn tại trong hệ thống. Việc tìm
kiếm này là khá nhanh và đơn giản khi trước đĩ ta đã sắp xếp bảng Index theo vần chữ
Khĩa luận tốt nghiệp Nguyễn Việt Cường
14
cái. Phép tìm kiếm trên cĩ độ phức tạp cấp θ(nlog2n), với n là số từ trong bảng Index.
Tương ứng với chỉ số index trên sẽ cho ta biết các tài liệu chứa từ khĩa tìm kiếm. Như
vậy việc tìm kiếm liên quan đến k từ thì các phép tốn cần thực hiện là k*n*log2n (n là số
từ trong bảng Index)
Câu hỏi tìm kiếm linh hoạt
Người dùng cĩ thể sử dụng các kí tự đặc biệt trong câu hỏi tìm kiếm mà khơng
làm ảnh hưởng đến độ phức tạp của phép tìm kiếm. Ví dụ muốn tìm từ “ta” thì kết quả sẽ
trả lại các văn bản cĩ chứa các từ “ta”, “tao”, “tay”,…là các từ bắt đầu bằng từ “ta”
Kí tự % được gọi là kí tự đại diện (wildcard character).
Ngồi ra, bằng các phép tốn Logic các từ cần tìm cĩ thể tổ chức thành các câu
hỏi một cách linh hoạt. Ví dụ: Cần tìm từ [tơi, ta, tao], dấu “[]” sẽ thay cho nghĩa của từ
“hoặc” - thể hiện việc tìm kiếm trên một trong số nhiều từ trong nhĩm. Đây thực ra là một
cách thể hiện linh hoạt phép tốn OR trong đại số Logic thay vì phải viết là: Tìm các tài
liệu cĩ chứa từ “tơi” hoặc từ “ta” hoặc “tao”.
Nhược điểm
Địi hỏi người tìm kiếm phải cĩ kinh nghiệm và chuyên mơn trong lĩnh vực tìm
kiếm vì câu hỏi đưa vào dưới dạng Logic nên kết quả trả lại cũng cĩ giá trị Logic
(Boolean). Một số tài liệu sẽ được trả lại khi thoả mãn mọi điều kiện đưa vào. Như vậy
muốn tìm được tài liệu theo nội dung thì phải biết đích xác về tài liệu.
Việc Index các tài liệu rất phức tạp và làm tốn nhiều thời gian, đồng thời cũng tốn
khơng gian để lưu trữ các bảng Index.
Các tài liệu tìm được khơng được xắp xếp theo độ chính xác của chúng. Các bảng
Index khơng linh hoạt vì khi các từ vựng thay đổi (thêm, xĩa,…) thì dẫn tới chỉ số Index
cũng phải thay đổi theo.
2.3. Mơ hình phân tích cú pháp
Trong mơ hình này, mỗi văn bản đều phải được phân tích cú pháp và trả lại thơng
tin chi tiết về chủ đề của văn bản đĩ. Sau đĩ, người ta tiến hành Index các chủ đề của từng
Khĩa luận tốt nghiệp Nguyễn Việt Cường
15
văn bản. Cách Index trên chủ đề cũng giống như khi Index trên văn bản nhưng chỉ Index
trên các từ xuất hiện trong chủ đề.
Các văn bản được quản lý thơng qua các chủ đề này để cĩ thể tìm kiếm được khi
cĩ yêu cầu, câu hỏi tìm kiếm sẽ dựa trên các chủ đề trên.
Cách tìm kiếm:
Tiến hành tìm kiếm bằng cách dựa vào các chủ đề đã được Index ở trên. Câu hỏi
đưa vào cĩ thể được phân tích cú pháp để trả lại một chủ đề và tìm kiếm trên chủ đề đĩ.
Như vậy bộ phận xử lý chính đối với một hệ CSDL xây dựng theo mơ hình này
chính là hệ thống phân tích cú pháp và đốn nhận nội dung văn bản.
Một số ưu điểm, nhược điểm của phương pháp này
Ưu điểm
Tìm kiếm theo phương pháp này lại khá hiệu quả và đơn giản, do tìm kiếm nhanh
và chính xác.
Đối với những ngơn ngữ đơn giản về mặt ngữ pháp thì việc phân tích trên cĩ thể
đạt được mức độ chính xác cao và chấp nhận được.
Nhược điểm
Chất lượng của hệ thống theo phương pháp này hồn tồn phụ thuộc vào chất
lượng của hệ thống phân tích cú pháp và đốn nhận nội dung tài liệu. Trên thực tế, việc
xây dựng hệ thống này là rất phức tạp, phụ thuộc vào đặc điểm của từng ngơn ngữ và đa
số vẫn chưa đạt đến độ chính xác cao.
2.4. Mơ hình khơng gian vector
Cách biểu diễn văn bản thơng dụng nhất là thơng qua vector biểu diễn theo mơ
hình khơng gian vector (Vector Space Model). Đây là một cách biểu diễn tương đối đơn
giản và hiệu quả.
Theo mơ hình này, mỗi văn bản được biểu diễn thành một vector. Mỗi thành phần
của vector là một từ khĩa riêng biệt trong tập văn bản gốc và được gán một giá trị là hàm
f chỉ mật độ xuất hiện của từ khĩa trong văn bản.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
16
Hình 3: Biểu diễn các vector văn bản trong khơng gian 2 chiều
Giả sử ta cĩ một văn bản và nĩ được biểu diễn bởi vector V(v1,v2, …, vn). Trong
đĩ, vi là số lần xuất hiện của từ khĩa thứ i trong văn bản. Ta xét 2 văn bản sau:
VB1: Life is not only life
VB2: To life is to fight
Sau khi qua bước tiền xử lý văn bản, ta biểu diễn chúng như sau:
Trong các cơ sở dữ liệu văn bản, mơ hình vector là mơ hình biểu diễn văn bản
được sử dụng phổ biến nhất hiện nay. Mối quan hệ giữa các trang văn bản được thực hiện
thơng qua việc tính tốn trên các vector biểu diễn vì vậy được thi hành khá hiệu quả. Đặc
biệt, nhiều cơng trình nghiên cứu về mối quan hệ "tương tự nhau" giữa các trang web
(một trong những quan hệ điển hình nhất giữa các trang web) dựa trên mơ hình biểu diễn
vector .
Khĩa luận tốt nghiệp Nguyễn Việt Cường
17
2.4.1. Mơ hình Boolean
Một mơ hình biểu diễn vector với hàm f cho ra giá trị rời rạc với duy nhất hai giá
trị đúng và sai (true và false, hoặc 0 và 1) gọi là mơ hình Boolean. Hàm f tương ứng với
từ khĩa ti sẽ cho ra giá trị đúng nếu và chỉ nếu từ khĩa ti xuất hiện trong văn bản đĩ.
Mơ hình Boolean được xác định như sau:
Giả sử cĩ một cơ sở dữ liệu gồm m văn bản, D = {d1, d2,… dm}. Mỗi văn bản
được biểu diễn dưới dạng một vector gồm n từ khĩa T = {t1, t2,…tn}. Gọi W = {wij} là ma
trận trọng số, trong đĩ wij là giá trị trọng số của từ khĩa ti trong văn bản dj.
⎩⎨
⎧=
lai nguoc neu
trongmat co neu
0
dt1
w jiij
Trở lại với 2 văn bản trên, áp dụng mơ hình Boolean ta cĩ biểu diễn sau:
2.4.2. Mơ hình tần suất
Trong mơ hình tần suất, ma trận W = {wij} được xác định dựa trên tần số xuất
hiện của từ khĩa ti trong văn bản dj hoặc tần số xuất hiện của từ khĩa ti trong tồn bộ cơ
sở dữ liệu. Sau đây là một số phương pháp phổ biến:
a. Phương pháp dựa trên tần số từ khĩa (TF – Term Frequency)
Các giá trị wij được tính dựa trên tần số (hay số lần) xuất hiện của từ khĩa trong
văn bản. Gọi fij là số lần xuất hiện của từ khĩa ti trong văn bản dj, khi đĩ wij được tính
bởi một trong ba cơng thức:
wij = fij
wij = 1 + log(fij)
Khĩa luận tốt nghiệp Nguyễn Việt Cường
18
wij = ijf
Trong phương pháp này, trọng số wij tỷ lệ thuận với số lần xuất hiện của từ khĩa
ti trong văn bản dj. Khi số lần xuất hiện từ khĩa ti trong văn bản dj càng lớn thì điều đĩ cĩ
nghĩa là văn bản dj càng phụ thuộc vào từ khĩa ti, hay nĩi cách khác từ khĩa ti mang
nhiều thơng tin trong văn bản dj.
Ví dụ, khi văn bản xuất hiện nhiều từ khĩa máy tính, điều đĩ cĩ nghĩa là văn bản
đang xét chủ yếu liên quan đến lĩnh vực tin học.
Nhưng suy luận trên khơng phải lúc nào cũng đúng. Một ví dụ điển hình là từ
“và” xuất hiện nhiều trong hầu hết các văn bản, nhưng trên thực tế từ này lại khơng mang
nhiều ý nghĩa như tần suất xuất hiện của nĩ. Hoặc cĩ những từ khơng xuất hiện trong văn
bản này nhưng lại xuất hiện trong văn bản khác, khi đĩ ta sẽ khơng tính được giá trị của
log(fij). Một phương pháp khác ra đời khắc phục được nhược điểm của phương pháp TF,
đĩ là phương pháp IDF.
b. Phương pháp dựa trên nghịch đảo tần số văn bản (IDF – Inverse Document
Frequency)
Trong phương pháp này, giá trị wij được tính theo cơng thức sau:
⎪⎩
⎪⎨
⎧ −==
l¹i ng−ỵc nÕu
liƯu tµi trong xuÊt hiƯn khãa tõ nÕu
0
dt)hlog()mlog(
h
mlog
w jiiiij
trong đĩ m là số lượng văn bản và hi là số lượng văn bản mà từ khĩa ti xuất hiện.
Trọng số wij trong cơng thức này được tính dựa trên độ quan trọng của từ khĩa ti
trong văn bản dj. Nếu ti xuất hiện trong càng ít văn bản, điều đĩ cĩ nghĩa là khi nĩ xuất
hiện trong dj thì trọng số của nĩ đối với văn bản dj càng lớn hay nĩ là điểm quan trọng để
phân biệt văn bản dj với các văn bản khác và hàm lượng thơng tin trong nĩ càng lớn.
c. Phương pháp TF × IDF
Phương pháp này là tổng hợp của hai phương pháp TF và IDF, giá trị của ma trận
trọng số được tính như sau:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
19
⎪⎩
⎪⎨
⎧ ≥⎟⎟⎠
⎞
⎜⎜⎝
⎛+=
l¹i ng−ỵc nÕu
f nÕu1
0
1
h
mlog)]flog([
w iji
ij
ij
Đây là phương pháp kết hợp được ưu điểm của cả hai phương pháp trên. Trọng số
wij được tính bằng tần số xuất hiện của từ khĩa ti trong văn bản dj và độ hiếm của từ khĩa
ti trong tồn bộ cơ sở dữ liệu.
Cách tìm kiếm:
Các câu hỏi đưa vào sẽ được ánh xạ vector Q(q1,q2,…,qm) theo hệ số của các từ
vựng trong nĩ là khác nhau. Tức là: Khi từ vựng càng cĩ ý nghĩa với nội dung cần tìm thì
nĩ cĩ hệ số càng lớn.
qi = 0 khi từ vựng đĩ khơng thuộc danh sách những từ cần tìm.
qi 0 khi từ vựng đĩ thuộc danh sách các từ cần tìm.
Khi đĩ, cho một hệ thống các từ vựng ta sẽ xác định được các vector tương ứng
với từng tài liệu và ứng với mỗi câu hỏi đưa vào ta sẽ cĩ một vector tương với nĩ cùng
những hệ số đã được xác định từ trước. Việc tìm kiếm và quản lý sẽ được thực hiện trên
tài liệu này.
Một số ưu, nhược điểm của phương pháp biểu diễn này:
Ưu điểm:
Các tài liệu trả lại cĩ thể được sắp xếp theo mức độ liên quan đến nội dung yêu
cầu do trong phép thử mỗi tài liệu đều trả lại chỉ số đánh giá độ liên quan của nĩ đến nội
dung.
Việc đưa ra các câu hỏi tìm kiếm là dễ dàng và khơng yêu cầu người tìm kiếm cĩ
trình độ chuyên mơn cao về vấn đề đĩ.
Tiến hành lưu trữ và tìm kiếm đơn giản hơn phương pháp Logic.
Nhược điểm
Khĩa luận tốt nghiệp Nguyễn Việt Cường
20
Việc tìm kiếm tiến hành chậm khi hệ thống các từ vựng là lớn do phải tính tốn
trên tồn bộ các vector của tài liệu.
Khi biểu diễn các vector với các hệ số là số tự nhiên sẽ làm tăng mức độ chính
xác của việc tìm kiếm nhưng làm tốc độ tính tốn giảm đi rẩt nhiều do các phép nhân
vector phải tiến hành trên các số tự nhiên hoặc số thực, hơn nữa việc lưu trữ các vector sẽ
tốn kém và phức tạp.
Hệ thống khơng linh hoạt khi lưu trữ các từ khĩa. Chỉ cần một thay đổi rất nhỏ
trong bảng từ vựng sẽ kéo theo hoặc là vector hố lại tồn bộ các tài liệu lưu trữ, hoặc là
sẽ bỏ qua các từ cĩ nghĩa bổ sung trong các tài liệu được mã hĩa trước đĩ.
Một nhược điểm nữa, chiều của mỗi Vector theo cách biểu diễn này là rất lớn, bởi
vì chiều của nĩ được xác định bằng số lượng các từ khác nhau trong tập hợp văn bản. Ví
dụ số lượng các từ cĩ thể cĩ từ 103 đến 105 trong tập hợp các văn bản nhỏ, cịn trong tập
hợp các văn bản lớn thì số lượng sẽ nhiều hơn, đặc biệt trong mơi trường Web.
2.5. Biểu diễn văn bản trong máy tìm kiếm
2.5.1. Giới thiệu về máy tìm kiếm
Thơng tin trên các trang Web đa dạng về mặt nội dung cũng như hình thức. Tuy
nhiên cùng với sự đa dạng và số lượng lớn thơng tin như vậy đã nảy sinh vấn đề quá tải
thơng tin. Đối với mỗi người dùng chỉ một phần rất nhỏ thơng tin là cĩ ích, chẳng hạn cĩ
người chỉ quan tâm đến trang Thể thao, Văn hĩa mà khơng mấy khi quan tâm đến Kinh
tế. Người ta khơng thể tìm tự kiếm địa chỉ trang Web chứa thơng tin mà mình cần, do vậy
địi hỏi cần phải cĩ một trình tiện ích quản lý nội dung của các trang Web và cho phép tìm
thấy các địa chỉ trang Web cĩ nội dung giống với yêu cầu của người tìm kiếm. Hiện nay
chúng ta đã làm quen với một số các tiện ích như vậy đĩ là: Yahoo, Google, Alvista,...
Máy tìm kiếm là các hệ thống được xây dựng cĩ khả năng tiếp nhận các yêu cầu
tìm kiếm của người dùng (thường là một tập các từ khĩa), sau đĩ phân tích và tìm kiếm
trong cơ sở dữ liệu đã cĩ sẵn và đưa ra các kết quả là các trang web cho người sử dụng.
Cụ thể, người dùng gửi một truy vấn, dạng đơn giản nhất là một danh sách các từ khĩa, và
máy tìm kiếm sẽ làm việc để trả lại một danh sách các trang Web cĩ liên quan hoặc cĩ
chứa các từ khĩa đĩ. Phức tạp hơn, thì truy vấn là cả một văn bản hoặc một đoạn văn bản
hoặc nội dung tĩm tắt của văn bản.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
21
2.5.2. Mơ hình biểu diễn văn bản trong máy tìm kiếm
Như đã được giới thiệu, mơ hình vector là mơ hình biểu diễn phổ biến nhất trong
các CSDL văn bản. Tuy nhiên, cịn cĩ một các biểu diễn khác cũng thường được sử dụng,
đặc biệt trong các máy tìm kiếm, đĩ biểu diễn theo mơ hình index ngược (inverted index).
Với một từ khố trong câu hỏi của người dùng, thơng qua mơ hình index ngược hệ thống
cơ sở dữ liệu văn bản sẽ nhanh chĩng xác định được tập hợp các văn bản chứa từ khĩa đĩ
và các vị trí xuất hiện của từ khĩa đĩ trong các văn bản kết quả.
Ở dạng đơn giản nhất, mơ hình index ngược cĩ dạng như được mơ tả như hình
sau:
Hình 4. Mơ hình index ngược
Trong mơ hình này, tồn tại tập hợp V (được gọi là từ điển) gồm tất cả các từ khĩa
trong hệ thống; các từ khĩa trong V được lưu trữ theo danh sách Inverted Index. Mỗi một
từ khĩa vi trong V liên kết với một con trỏ b(vi) chỉ dẫn tới một cấu trúc dữ liệu, được gọi
là brucket, là một danh sách chứa tất cả các bản ghi mơ tả văn bản chứa từ khĩa vi và vị
trí xuất hiện của từ khĩa vi trong văn bản đĩ (hình 2). Tồn tại một số giải pháp tổ chức từ
điển V hiệu quả nhằm cho phép lưu trữ V ở bộ nhớ trong, chẳng hạn V thường được tổ
chức theo dạng bảng băm để tăng hiệu quả truy cập. Nếu như brucket được lưu ngay
trong bộ nhớ trong thì việc thay đổi chỉnh sửa các brucket được thực hiện rất dễ dàng.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
22
Tuy nhiên, điều này là khơng khả thi do kích thước của chúng thường khá lớn so với kích
thước bộ nhớ trong. Vì vậy, các brucket (cũng như nội dung các văn bản) được lưu trong
đĩa cứng. Để các cơ sở dữ liệu văn bản cĩ khả năng quản lý được một lượng lớn các trang
văn bản thì cần cĩ các thuật tốn chuyên biệt nhằm đảm bảo việc thao tác tới các brucket
trên đĩa cứng được nhanh chĩng.
CSDL văn bản sử dụng mơ hình index ngược cho khả năng tìm ra các trang
văn bản cĩ chứa từ khĩa vi cho trước là khá đơn giản. Đầu tiên, hệ thống truy cập vào
“inverted index” để lấy b(vi) và sau đĩ duyệt danh sách theo các con trỏ của b(vi) để lấy
được các trang văn bản. Trường hợp câu truy vấn cĩ dạng một biểu thức phức tạp cĩ
nhiều từ khĩa được kết nối với nhau theo các phép tốn lơgic như AND, OR, NOT thì
cơng việc tìm kiếm phức tạp hơn. Với câu truy vấn cĩ k từ khĩa, thuật tốn thực hiện việc
lấy các trang văn bản tương ứng với mỗi từ khĩa (dựa trên thuật tốn tìm kiếm theo từ
khĩa nĩi trên) và nhận được k danh sách trang văn bản. Kết quả trả lời câu truy vấn nhận
được bằng cách kết hợp k danh sách này tương ứng với biểu thức lơgic đã cho.
Trong mọi trường hợp, sử dụng biểu diễn index ngược thì tìm kiếm văn bản đáp
ứng câu hỏi thơng qua từ khố sẽ cĩ tốc độ rất nhanh.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
23
Chương 3. BIỂU DIỄN VĂN BẢN SỬ DỤNG CÁC KHÁI
NIỆM MỜ
Trong chương này chúng tơi sẽ trình bày một số khái niệm cơ bản về tập mờ, tiến
hành định nghĩa các khái niệm mờ và một số tính chất của các khái niệm mờ thơng qua
việc tích hợp các từ khĩa và mối quan hệ giữa chúng với nhau. Từ đĩ, sẽ giới thiệu
phương pháp biểu diễn văn bản theo khái niệm mờ.
3.1. Lý thuyết mờ
Cĩ thể nĩi cho đến nay, phần lớn các thành tựu của khoa học của lồi người đều
dựa trên lập luận logic rất chặt chẽ mà nền tảng của các lập luận này là đại số logic Bool.
Trong đại số logic Bool mọi tốn hạng, biểu thức chỉ cĩ giá trị 0 (false) hoặc 1 (true). Tuy
nhiên trên thực tế điều này khơng luơn luơn đúng, nhiều hiện tượng trong tự nhiên và xã
hội khơng thể biểu diễn rõ ràng như vậy. Để cĩ thể phản ánh đúng bản chất của các sự
vật, hiện tượng diễn ra trong thực tế, buộc người ta phải mở rộng đại số Bool để sao cho
các tốn hạng, các biểu thức cĩ thể nhận giá trị khơng chỉ là 0 hoặc 1 mà chúng cĩ thể
nhận giá trị nào đĩ nằm giữa 0 và 1.
Một cách tự nhiên để xây dựng lí thuyết mờ, người ta phải đi từ những khái niệm
nguyên thuỷ nhất. Giống như trong tốn học, một trong những khái niệm nguyên thuỷ của
tốn học là tập hợp, trong lí thuyết mờ người ta đi từ xây dựng tập mờ.
3.1.1. Tập mờ
Trong tốn học truyền thống khái niệm tập hợp được phát biểu như sau:
Cho tập hợp X và A ⊆ X khi đĩ ta cĩ thể xây dựng một hàm, được gọi là hàm đặc
trưng, xác định các phần tử của tập X như sau:
Xét µ : X → {0,1 } với x ∈ X thì:
µ (x) = 1 nếu x ∈ A;
µ (x) = 0 nếu x ∉ A;
Hàm đặc trưng µ(x) rõ ràng là hàm xác định các phần tử của tập A. Nhờ hàm µ(x)
ta cĩ thể nĩi tập A là tập gồm những phần tử x mà µ (x)=1. Bây giờ tập A cĩ thể biểu diễn
một cách khác qua các phần tử của tập X:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
24
A={(x, µ(x)=1)| x ∈ X}
Mở rộng khái niệm tập hợp của tốn học học cổ điển nêu trên, Lofti Zadeh xét
hàm µ trên tồn đoạn [0,1].
Định nghĩa 3.1: Tập mờ
Cho X là một tập hợp. A được gọi là một tập mờ trong X nếu: A = {(x, µA(x))|
x∈X} trong đĩ µA(x) là hàm xác định trên đoạn [0,1], µA: X → [0,1]. Hàm µA được gọi là
hàm thuộc của A cịn µA(x) là một giá trị trong đoạn [0,1] được gọi là mức độ thuộc của x
trong A.
Biểu diễn tập mờ
Khi X là tập các điểm rời rạc x1, x2, …xn thì tập mờ A cĩ thể biểu diễn bằng cách
liệt kê A = {(x1, µ A(x1)), (x2, µ A(x2)),...... (xn , µ A(xn))}
Hoặc được ký hiệu là:
A = µ A(x1)/ x1 + µ A(x2)/ x2 + … + µ A(xn)/ xn
Trường hợp X liên tục thì A được kí hiệu là:
A = ∫ ∈ µXx A x/)x(
Ví dụ:
Cho X là tập các điểm tổng kết trung bình các mơn học của sinh viên. Qua thống
kê người ta thấy rằng :
0% số người coi một sinh viên là giỏi khi điểm tổng kết đạt dưới 7.0
5% số người coi một sinh viên là giỏi khi điểm tổng kết đạt điểm từ 7.0 đến 7.5
10% số người coi một sinh viên là giỏi khi điểm tổng kết đạt đến 8.0;
20% số người coi một sinh viên là giỏi khi điểm tổng kết đạt đến 8.5;
80% số người coi một sinh viên là giỏi chỉ khi điểm tổng kết đạt từ 9 đến 9,5 .
100% số người coi một sinh viên là giỏi khi điểm tổng kết đạt đến điểm 10
Bây giờ cần biểu diễn tập các điểm trên X, được ký hiệu là tập A, để mơ tả một
"sinh viên giỏi". Với kết quả thống kê như trên, khơng thể dùng khái niệm tập hợp theo
Khĩa luận tốt nghiệp Nguyễn Việt Cường
25
quan niệm truyền thống để biểu diễn tập A. Trong trường hợp này, khái niệm tập mờ là
rất hữu dụng và A chính là một tập mờ. Nếu xét X chỉ gồm các đại lượng hữu hạn, X =
{7, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0}, thì tập mờ A được biểu diễn như sau:
A={ (7, 0.05),(7.5,0.05),(8.0,0.1), (8.5, 0.2), (9.0,0.8) (9.5,0.8),(10,1.0 ) }
Hoặc:
A= 0.05/7 + 0.05/7.5 + 0,0.1/8 + 0.2/8.5 + 0,0.8/9 + 0.8/9.5 + 1.0/10
Nếu xét X là một khoảng liên tục X = [7.0, 10] thì ta cĩ thể biểu diễn đồ thị hàm
thuộc của A như sau:
Hình 5: Đồ thị hàm phụ thuộc tập mờ A
3.1.2. Các phép tốn trên tập mờ
Giao của hai tập mờ.
Cho X là tập hợp, A, B là hai tập mờ trong X và cĩ các hàm thuộc lần luợt là µA,
µB. Giao của hai tập mờ A và B, ký hiệu A∩B, là một tập mờ cĩ hàm thuộc µA∩B xác định
như sau:
µA∩B(x) = min(µA(x), µB(x)) ∀x∈X
Hợp của hai tập mờ.
Cho X là tập hợp, A, B là hai tập mờ trong X và cĩ các hàm thuộc lần luợt là µA,
µB. Hợp của hai tập mờ A và B trong X, ký hiệu A∪B, là một tập mờ cĩ hàm thuộc µA∪B
xác định như sau:
µA∪B(x) ) = max(µA(x), µB(x)) ∀x∈X
Khĩa luận tốt nghiệp Nguyễn Việt Cường
26
Tích đại số của hai tập mờ.
Cho X là tập hợp, A, B là hai tập mờ trong X và cĩ các hàm thuộc lần lượt là
µA(x), µB(x). Tích đại số của hai tập mờ A và B trong X, ký hiệu A.B là một tập mờ cĩ
hàm thuộc được xác định như sau:
µA.B(x) = µA(x).µB(x) ∀x∈X
Tổng đại số của hai tập mờ.
Cho X là tập hợp, A, B là hai tập mờ trong X và cĩ các hàm thuộc lần lượt là µA,
µB. Tổng đại số của hai tập mờ A và B trong X, ký hiệu A+B là một tập mờ cĩ hàm thuộc
được xác định như sau:
µA+B(x) = µA(x) + µB(x) - µA(x).µB(x) ∀x∈X.
Phần bù của một tập mờ.
Cho A là tập mờ trong X cĩ hàm thuộc µA. Phần bù A của A trong X là một tập
mờ cĩ hàm thuộc xác định như sau:
)x(
A
µ = 1 - µA(x) ∀x∈X.
Tổng rời của hai tập mờ.
Cho X là tập hợp, A và B là hai tập mờ trong X. Tổng rời của hai tập mờ A và B
trong X, ký hiệu A⊕B định nghĩa như sau:
A⊕B = ( A∩B) ∪ (A∩B )
Phép trừ hai tập mờ.
Cho X là tập hợp, A, B là hai tập mờ trong X và cĩ các hàm thuộc lần lượt là µA,
µB. Phép trừ của hai tập mờ A và B trong X ký hiệu A\B được định nghĩa như sau:
A\B = A∩B .
Cho X là tập hợp, A và B là hai tập mờ trong X, cĩ các hàm thuộc lần lượt là µA,
µB. A gọi là nằm trong B, ký hiệu A⊂B nếu hàm thuộc thỏa mãn:
µA(x) ≤ µB(x) ∀x∈X.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
27
Cho X là tập hợp, A và B là hai tập mờ trong X, cĩ các hàm thuộc lần lượt là µA,
µB . A gọi là bằng B, ký hiệu A=B nếu và chỉ nếu:
µA(x) = µB(x) ∀x∈X
Tập hợp mức α của tập mờ.
Cho α ∈[0,1], X là tập hợp, A là một tập mờ trong X cĩ hàm thuộc µA. Tập hợp
Aα thoả mãn Aα={x∈X | µA(x) ≥ α} gọi là tập hợp mức α của tập mờ A.
Khoảng cách Euclid trên tập mờ
X là tập hợp cĩ hữu hạn n phần tử, A và B là hai tập mờ trên X. Khoảng cách
Euclid (trong khơng gian n chiều) trên tập mờ được tính như sau:
e(A,B) = ∑
=
µ−µn
1i
2
iBiA ))x()x((
Khoảng cách e2(A,B) được gọi là một chuẩn Euclid.
3.1.3. Quan hệ mờ
Định nghĩa 3.2: Quan hệ mờ trên tích Đề-các
Cho X,Y là hai tập và x∈X, y∈Y. Ký hiệu (x,y) là cặp thứ tự nằm trong tích Đề-
các XxY. Tập mờ R = {(x,y), µR(x,y)|(x,y) ∈ XxY} được gọi là một quan hệ mờ trên
X×Y với hàm thuộc: µR(x,y): X×Y → [0,1]
Nếu R là một tập mờ trong X = X1×X2×….×Xn thì R được gọi là một quan hệ mờ
n ngơi.
Định nghĩa 3.3: Quan hệ mờ trên tập mờ
Cho X,Y là hai tập mờ và x∈X, y∈Y. Ký hiệu (x,y) là cặp thứ tự nằm trong tích
Đề-các X×Y. R = {(x,y), µR(x,y)|(x,y) ∈ X×Y} được gọi là một quan hệ mờ trên tập mờ
A, B nếu: µR(x,y) ≤µA(x,y), ∀X×Y và µR(x,y) ≤µB(x,y) ∀X×Y
3.1.4. Các phép tốn trên quan hệ mờ
Ngồi một số phép tốn giống như trên tập mờ trong tích Đề-các: Phép hợp, giao,
tổng đại số, tích đại số…, người ta cịn đưa ra thêm một số phép tốn khác trong quan hệ
mờ như sau:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
28
Phép hợp thành max-min
Giả sử R1 là quan hệ mờ trong X×Y, R2 là quan hệ mờ trong Y×Z. Phép hợp
thành max-min của hai quan hệ mờ R1, R2 (kí hiệu R1 o R2) là một quan hệ mờ trong X×Z
thoả mãn:
µ R1oR2(x,z) = maxy(min(µR1(x,y), µR2(y,z))) ∀x∈X, ∀y∈Y, ∀z∈Z
Phép hợp thành max-tích
Giả sử R1 là quan hệ mờ trong X×Y, R2 là quan hệ mờ trong Y×Z. Phép hợp
thành max-tích của hai quan hệ mờ R1, R2 (kí hiệu R1.R2) là một quan hệ mờ trong X×Z
thoả mãn:
µ R1.R2(x,z) = maxy(µR1(x,y). µR2(y,z)) ∀x∈X, ∀y∈Y, ∀z∈Z
Phép hợp thành max-trung bình
Giả sử R1 là quan hệ mờ trong X×Y, R2 là quan hệ mờ trong Y×Z. Phép hợp
thành max-trung bình của hai quan hệ mờ R1, R2 (R1avR2) là quan hệ mờ trong X×Z thoả
mãn:
µ R1avR2(x,z) = maxy((µR1(x,y)+µR2(y,z))/2) ∀x∈X, ∀y∈Y, ∀z∈Z
Phép hợp thành max-*.(max-* composition) (* là tốn tử hai ngơi bất kỳ)
Giả sử R1 là quan hệ mờ trong X×Y, R2 là quan hệ mờ trong Y×Z. Phép hợp
thành max-* của hai quan hệ mờ R1, R2 (R1* R2) là một quan hệ mờ trong X×Z thoả mãn:
µR1*R2(x,z) = max(µR1(x,y)*µR2(y,z)) ∀x∈X, ∀y∈Y, ∀z∈Z
Hàm tích hợp mờ
Khi cĩ một tập các tập mờ và tích hợp các hàm thuộc của chúng lại, ta sẽ thu
được một tập mờ là một hàm tích hợp mờ.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
29
Một hàm tích hợp mờ được định nghĩa là một tốn tử n ngơi như sau:
F: [0,1]n → [0,1] thỏa mãn điều kiện:
Nếu 0, 1 là hai điểm cực trị thì: F(0,…,0) = 0 và F(1,…,1)=1 và ∀a trong [0,1]
thì: F(a,…,a)=a
Nếu ai’ > ai thì: F(a1,…,ai’,…,an) ≥ F(a1,…,ai,…,an) (tính đơn điệu tăng của hàm
tích hợp mờ)
Một số hàm tích hợp mờ:
1. Hàm trung bình tổng quát:
2. Hàm trung bình số học:
3. Hàm trung bình hình học:
4. Hàm min:
5. Hàm max:
3.2. Biểu diễn văn bản sử dụng các khái niệm mờ
Cách biểu diễn văn bản thơng thường là sử dụng mơ hình khơng gian vector,
trong đĩ văn bản được biểu diễn bằng một vector và mỗi thành phần của vector là một từ
khĩa. Ở chương II, khĩa luận đã nêu ra một số nhược điểm của phương pháp này: gây tốn
kém, phức tạp trong việc lưu trữ, chiều của mỗi vector là rất lớn khi văn bản cĩ nhiều từ
khĩa … Trong phần này, chúng tơi xin trình bày một phương pháp biểu diễn văn bản mà
phần nào khắc phục được nhược điểm nêu trên, đĩ là phương pháp biểu diễn văn bản sử
dụng các khái niệm mờ.
0pR,p,)(x
n
1
)x,...,F(x p
n
1i
p
1n1 ≠∈= ∑
=
)0( →= pn
1
n21n1 )...x.x(x)x,...,F(x
)(min −∞→= p)x,...,x,(x)x,...,F(x n21n1
)(max +∞→= p)x,...,x,(x)x,...,F(x n21n1
∑
=
==
n
1i
1n1 )(xn
1
)x,...,F(x )1( p
Khĩa luận tốt nghiệp Nguyễn Việt Cường
30
3.2.1. Khái niệm mờ
Cĩ một tập gồm m văn bản: D=(d1, d2, …dm).
Khí đĩ xác định được một tập p từ khĩa: K = (k1, k2, … kp)
Một khái niệm cĩ thể là một từ khĩa theo nghĩa thơng thường, trong đĩ gồm các từ cĩ liên
quan đến từ khĩa đĩ. Ví dụ với khái niệm là “bệnh viện”, nĩ cĩ thể bao gồm 1 số từ khĩa:
“bác sĩ”, “y tá”, “bệnh nhân”, “ống nghe”, “thuốc”
Gọi C là tập gồm cĩ n khái niệm liên quan đến văn bản, C được kí hiệu như sau:
C = {c1, c2, …cn}
Trong đĩ: ci là khái niệm do người dùng xác định. Giả sử một khái niệm ci sẽ bao
gồm các từ khĩa cĩ liên quan, ci = {k1, k2, …kp}, trong đĩ ki là các từ khĩa trong tập từ
điển và cĩ liên quan đến khái niệm ci. Trong ví dụ trên chúng ta cĩ “bệnh viện” = {“bác
sĩ”, “y tá”, “bệnh nhân”, “ống nghe”, “thuốc”}.
Định nghĩa 3.3: Khái niệm mờ
Một tập mờ tương ứng với khái niệm trong đĩ hàm thuộc của nĩ được xác định
bằng độ quan trọng của các từ khĩa cĩ liên quan tới khái niệm đĩ được gọi là một khái
niệm mờ, kí hiệu c* . Ta cĩ thể biểu diễn khái niệm mờ qua tập từ khĩa như sau:
))}k(,k)),...(k(,k()),k(,k{(c pcp2c21c1
* µµµ=
Trong đĩ:
Từ khái niệm mờ, ta cĩ định nghĩa sau:
Định nghĩa 3.4: Hàm tích hợp khái niệm mờ:
Một hàm tích hợp khái niệm mờ là hàm tích hợp các hàm thuộc của các khái niệm
mờ. Hàm tích hợp này được kí hiệu F: [0,1]p → [0,1], thỏa mãn các tính chất của hàm tích
hợp mờ:
⎪⎪
⎪
⎩
⎪⎪
⎪
⎨
⎧
=
c niƯm kh¸ithuéc i k nÕu)i(kc
c vµotoµn hoµnthuéc i k nÕu1
c thuéc kh«ng i k nÕu0
)
i
(k
c
µ
µ
Khĩa luận tốt nghiệp Nguyễn Việt Cường
31
1.
2.
Trong đĩ, µc(ki) biểu diễn mức độ quan trọng của các từ khĩa trong văn bản.
Ví dụ:
Giả sử ta cĩ tập từ khĩa: ‘bệnh viện’, ‘trường học’, ‘thuốc’, ‘xe máy’, ‘y tá’,
‘bệnh nhân’, ‘ống nghe’, ‘sinh viên’, ‘hoa hồng’, ‘điện thoại’, ‘bác sỹ’.
K = {‘bệnh viện’, ‘bác sỹ’, ‘trường học’, ‘thuốc’, ‘xe máy’, ‘y tá’, ‘bệnh nhân’,
‘ống nghe’, ‘sinh viên’, ‘hoa hồng’, ‘điện thoại’, ‘bác sỹ’} với độ liên quan đến văn bản
được xác định bằng một hàm đánh chỉ số tương ứng:
µK = {µ(‘bệnh viện’), µ(‘bác sỹ’), µ(‘trường học’), µ(‘thuốc’), µ(‘xe máy’), µ(‘y
tá’), µ(‘bệnh nhân’), µ(‘ống nghe’), µ(‘sinh viên’), µ(‘hoa hồng’), µ(‘điện thoại’), µ(‘bác
sỹ’)}
= {0.8, 0.7, 0.1, 0.4, 0.0, 0.3, 0.6, 0.3, 0.0, 0.1, 0.0, 0.2}
Ta tìm được một cụm từ khĩa cĩ liên quan đến nhau trong trong văn bản: {‘bệnh
viện’, ‘bác sỹ’, ‘thuốc’, ‘bệnh nhân’, ‘ống nghe’}
Chọn từ khĩa ‘bệnh viên’ làm khái niệm, thì khái niệm mờ c* = ‘bệnh viện’ được
biểu diễn như sau:
‘bệnh viện’ = {(‘bác sỹ’, 0.7), (‘thuốc’, 0.4), (‘bệnh nhân’, 0.6), (‘ống nghe’,
0.3)}
Khi đĩ, độ quan trọng trong văn bản của ‘bệnh viện’ được xác định bởi hàm tích
hợp khái niệm mờ:
µ(‘bệnh viện’) = F(µ (‘bác sỹ’), µ(‘thuốc’), µ(‘bệnh nhân’), µ(‘ống nghe’))
Nếu hàm tích hợp là hàm MAX thì:
µ(‘bệnh viện’) = MAX(0.7, 0.4, 0.6, 0.3) = 0.6
Nếu hàm tích hợp là hàm trung bình thì:
µ(‘bệnh viện’) = AVEG(0.7, 0.4, 0.6, 0.3) = 0.55
p1,...,i ),(k)(k víi
))(k),...,(k),...,(kF())(k),...,(k),...,(kF(
ic
'
ic
pcic1cpc
'
ic1c
=>
≥
µµ
µµµµµµ
[0,1]))(k),...,(kF( pc1c ∈µµ
Khĩa luận tốt nghiệp Nguyễn Việt Cường
32
3.2.2. Biểu diễn văn bản
Với cách định nghĩa khái niệm mờ như trên, ta cĩ thể biểu diễn văn bản bằng
cách xem nĩ như một vector cĩ các thành phần là các khái niệm mờ thay vì một vector
với các thành phần là các từ khĩa.
Khi đĩ, một văn bản d sẽ được biểu diễn dưới dạng sau:
d = µ(c1*)/ c1* + µ(c2*)/c2* + … + µ(cn*)/(cn*)
Trong đĩ µ(ci*) là là mức độ quan trọng của khái niệm mờ c*i của văn bản. µ(ci*)
được xác định bằng hàm tích hợp mờ của tập các từ khĩa liên quan đến khái niệm ci*.
Chú ý rằng trong phương pháp biểu diễn này, một từ khĩa cũng cĩ thể coi như là
một khái niệm mờ khi đồng nhất từ khĩa với khái niệm mờ.
Nếu trong các khái niệm, khái niệm nào cĩ các từ khĩa liên quan đến văn bản lớn
hơn thì trọng số của nĩ sẽ lớn hơn, và như vậy ngữ nghĩa của nĩ cũng sẽ rõ ràng hơn.
Một vấn đề đặt ra là tìm tập các từ khĩa biểu diễn cho một khái niệm mờ, các từ
khĩa này phải liên quan đến nhau và cĩ nghĩa tương tự nhau. Việc phát triển một thuật
tốn như vậy hiện nay cịn là một vấn đề. Thơng thường cĩ hai cách chính như sau:
1. Xác định tập các khái niệm bằng tri thức con người: Người dùng tự xác định các
từ khĩa cĩ liên quan theo cảm nhận của mỗi người, hoặc chọn các từ khĩa đại diện
cho văn bản đĩ. Việc này tuy đưa lại kết quả chính xác khá cao (Đã được thực
hiện trong các hệ lớn như Yahoo!) tuy nhiên rất mất nhiều thời gian và cơng sức.
2. Phát triển các thuật tốn tự động: Sử dụng các kỹ thuật của ngành xử lý ngơn ngữ
tự nhiên để xác định các từ khĩa cĩ liên quan với nhau. Các thuật tốn như vậy
hiện cũng đang là một chủ đề nĩng trong các bài tốn xử lý ngơn ngữ tự nhiên.
Mục đích trong nghiên cứu này là chúng tơi muốn thử nghiệm việc biểu diễn xử
dụng các khái niệm mờ trong bài tốn phân lớp văn bản. Các khái niệm mờ được xác định
trước dựa trên tập chủ đề đã được xác định trước. Chi tiết các khái niệm mờ áp dụng được
mơ tả trong phần thực nghiệm.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
33
3.2.3. Đề xuất giải pháp cho vấn đề đồng nghĩa
Trong văn bản, thường xuất hiện một số từ đồng nghĩa (hoặc cĩ nghĩa gần nhau).
Sự xuất hiện này sẽ làm cho việc biểu diễn văn bản khĩ khăn hơn vì khơng giảm được số
chiều của vector biểu diễn.
Khĩa luận này xin đề xuất một phương pháp tìm ra và xử lý các từ đồng nghĩa
trong văn bản như sau:
Tìm ra từ đồng nghĩa
Chúng tơi sử dụng sự hỗ trợ của từ điển Wordnet. Wordnet là Từ điển ngơn ngữ
học cho tiếng Anh, được giới thiệu vào năm 1985 tại phịng thí nghiệm khoa học của
trường đại học Princeton.
Wordnet sẽ cung cấp:
Nhĩm các từ tiếng Anh thành một tập những từ đồng nghĩa gọi là synsets
Cung cấp những định nghĩa ngắn, tổng quát và ghi lại nhiều quan hệ ngữ
nghĩa học giữa những tập từ đồng nghĩa này.
Phân biệt động từ, danh từ, tính từ bởi chúng đi theo những quy tắc văn phạm
khác nhau.
Mục đích: Tạo ra sự kết hợp giữa từ điển và danh sách các từ đồng nghĩa, hỗ trợ
việc phân tích văn bản và ứng dụng trong AI.
Ví dụ:
Computer: a machine for performing calculations automatically.
syn: data processor, electronic computer, information processing system.
Từ một từ khĩa trong tập các từ khĩa, kết hợp với từ điển wordnet, ta tìm ra
những từ đồng nghĩa với từ khĩa đĩ. Tìm giao của 2 tập: Tập từ khĩa và tập từ đồng
nghĩa, chúng ta sẽ tìm ra được một nhĩm các từ đồng nghĩa trong tập từ khĩa đã cĩ.
Xử lý từ đồng nghĩa:
Với tập từ đồng nghĩa xuất hiện trong văn bản mà ta vừa tìm được, bằng cách sử
Khĩa luận tốt nghiệp Nguyễn Việt Cường
34
dụng hàm tích hợp mờ, ta tích hợp chúng lại trong một khái niệm chung. Việc xử lý văn
bản thay vì việc tính tốn trên các từ khĩa, sẽ tính tốn trên một khái niệm này. Làm như
vậy, ta sẽ giảm bớt được số chiều của vector biểu diễn, giảm sự phức tạp trong tính tốn
và tránh gây nên sự khĩ hiểu cho người sử dụng khi bắt gặp các từ đồng nghĩa trong văn
bản.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
35
Chương 4. CÁC PHƯƠNG PHÁP PHÂN LỚP VĂN BẢN
Trong chương này, chúng tơi trình bày về bài tốn phân lớp văn bản và các thuật
tốn áp dụng vào bài tốn đĩ.
4.1. Tổng quan về bài tốn phân lớp
Phân lớp văn bản tự động là một lĩnh vực được chú ý nhất trong những năm gần
đây. Để phân lớp người ta sử dụng nhiều cách tiếp cận khác nhau như dựa trên từ khĩa,
dựa trên ngữ nghĩa các từ cĩ tần số xuất hiện cao, mơ hình Maximum Entropy, tập thơ,
tập mờ … Một số lượng lớn các phương pháp phân lớp đã được áp dụng thành cơng trên
ngơn ngữ này : mơ hình hồi quy , phân lớp dựa trên láng giềng gần nhất (k-nearest
neighbors), phương pháp dựa trên xác suất Nạve Bayes, cây quyết định, học luật quy nạp,
mạng nơron (neural network), học trực tuyến, và máy vector hỗ trợ (SVM-support vector
machine)
Bài tốn: Cho một tập hợp các văn bản đã được người dùng phân lớp bằng tay
vào một số chủ đề cĩ sẵn. Khi đưa vào một văn bản mới, yêu cầu hệ thống chỉ ra tên chủ
đề phù hợp nhất với văn bản đĩ.
Theo cách truyền thống, việc phân lớp văn bản cĩ thể thực hiện một cách thủ
cơng, tức là đọc từng văn bản một và gán nĩ vào nhĩm phù hợp. Cách thức này sẽ tốn
nhiều thời gian và chi phí nếu như số lượng văn bản lớn. Do vậy, cần phải xây dựng các
cơng cụ phân lớp văn bản một cách tự động.
Để xây dựng cơng cụ phận loại văn bản tự động người ta thường dùng các thuật
tốn học máy (machine learning). Tuy nhiên, cịn cĩ các thuật tốn đặc biệt hơn dùng
cho phân lớp trong các lĩnh vực đặc thù. Một ví dụ điển hình là bài tốn phân lớp cơng
văn giấy tờ. Hệ thống sẽ tìm ra đặc thù của văn bản một cách tương đối máy mĩc, cụ thể
là khi tìm thấy ở lề trên bên trái cĩ ký hiệu “NĐ” thì hệ thống sẽ phân văn bản đĩ vào
nhĩm “Nghị định”, tương tự như vậy với các ký hiệu “CV”, “QĐ” thì hệ thống sẽ phân
văn bản này vào nhĩm “Cơng văn”, và “Quyết định”. Thuật tốn này tương đối hiệu quả
song lại chỉ phù hợp cho các nhĩm dữ liệu tương đối đặc thù. Khi phải làm việc với các
Khĩa luận tốt nghiệp Nguyễn Việt Cường
36
văn bản ít đặc thù hơn thì cần phải xây dựng các thuật tốn phân lớp dựa trên nội dung
của văn bản và so sánh độ phù hợp của chúng với các văn bản đã được phân lớp bởi con
người. Đây là tư tưởng chính của thuật tốn học máy. Trong mơ hình này, các văn bản đã
được phân lớp sẵn và hệ thống của chúng ta phải tìm cách để tách ra đặc thù của các văn
bản thuộc mỗi nhĩm riêng biệt. Tập văn bản mẫu dùng để huấn luyện gọi là tập huấn
luyện (train set) hay tập mẫu (pattern set), quá trình phân lớp văn bản bằng tay gọi là quá
trình huấn luyện (training), cịn quá trình máy tự tìm đặc thù của các nhĩm gọi là quá
trình học (learning). Sau khi máy đã học xong, người dùng sẽ đưa các văn bản mới vào
và nhiệm vụ của máy là tìm ra xem văn bản đĩ phù hợp nhất với nhĩm nào mà con người
đã huấn luyện nĩ.
Trong phân lớp văn bản, sự phụ thuộc của một văn bản vào một nhĩm cĩ thể là
các giá trị rời rạc đúng và sai (true hoặc false), để hiểu rằng văn bản đĩ thuộc hay khơng
thuộc một nhĩm nào đĩ) hoặc các giá trị liên tục (một số thực, chỉ ra độ phù hợp của văn
bản với một nhĩm nào đĩ). Khi câu trả lời đưa ra bắt buộc phải là đúng hoặc sai thì giá trị
liên tục cĩ thể được rời rạc hĩa bằng cách đặt ngưỡng. Ngưỡng đặt ra tùy thuộc vào thuật
tốn và yêu cầu người dùng.
4.2. Các thuật tốn phân lớp
Cĩ rất nhiều thuật tốn khác nhau để giải quyết bài tốn phân lớp văn bản, trong
chương này chúng tơi xin trình bày một số thuật tốn sau:
4.2.1. Phân lớp dựa trên thuật tốn Naive Bayes
Naive Bayes là một trong những phương pháp phân lớp dựa vào xác suất điển
hình nhất trong khai thác dữ liệu và tri thức
Cách tiếp cận này sử dụng xác suất cĩ điều kiện giữa từ và chủ đề để dự đốn xác
suất chủ đề của một văn bản cần phân lớp. Đồng thời, giả định rằng sự xuất hiện của tất
cả các từ trong văn bản đều độc lập với nhau. Như thế, nĩ sẽ khơng sử dụng việc kết hợp
các từ để đưa ra phán đốn chủ đề như một số phương pháp khác, điều này sẽ làm cho
việc tính tốn Naive Bayes hiệu quả và nhanh chĩng hơn.
Cơng thức
Khĩa luận tốt nghiệp Nguyễn Việt Cường
37
Mục đích chính là tính được xác suất Pr(Cj, d′) , xác suất để văn bản d′ nằm trong
lớp Cj . Theo Bayes, văn bản d′ sẽ được gán vào lớp Cj nào cĩ xác suất Pr(Cj, d)′ cao nhất.
Cơng thức sau dùng để tính Pr(Cj, d′):
Trong đĩ:
- TF(wi,,d′) là số lần xuất hiện của từ wi trong văn bản d′
- |d′| là số lượng các từ trong văn bản d′
- wi là một từ trong khơng gian đặc trưng F với số chiều là |F|
- Pr(Cj): là tỷ lệ phần trăm của số văn bản mỗi lớp tương ứng trong tập dữ liệu
luyện:
Pr(wi|Cj) sử dụng phép ước lượng Laplace:
Naive Bayes là một phương pháp rất hiệu quả trong một số trường hợp. Nếu tập
dữ liệu huấn luyện nghèo nàn và các tham số dự đốn (như khơng gian đặc trưng) cĩ chất
lượng kém thì sẽ dẫn đến kết quả tồi. Tuy nhiên, nĩ được đánh giá là một thuật tốn phân
lớp tuyến tính thích hợp trong phân lớp văn bản nhiều chủ đề với một số ưu điểm: cài đặt
đơn giản, tốc độ nhanh, dễ dàng cập nhật dữ liệu huấn luyện mới và cĩ tính độc lập cao
Khĩa luận tốt nghiệp Nguyễn Việt Cường
38
với tập huấn luyện, cĩ thể sử dụng kết hợp nhiều tập huấn luyện khác nhau. Thơng
thường, người ta cịn đặt thêm một ngưỡng tối ưu để cho kết quả phân lớp khả quan.
4.2.2. Phân lớp dựa trên thuật tốn K - Nearest Neighbor (KNN)
Thuật tốn phân lớp KNN [4] là một phương pháp truyền thống và khá nổi tiếng
trong hướng tiếp cận dựa trên thống kê, đã được nghiên cứu trong nhận dạng mẫu trong
vài thập kỷ gần đây.
Nĩ được đánh giá là một trong những phương pháp tốt nhất và được sử dụng
ngay từ những thời kỳ đầu của phân lớp văn bản .
Muốn phân lớp một văn bản mới, thuật tốn KNN sẽ tính khoảng cách (Euclide,
Cosine …) của văn bản này đến các văn bản trong tập huấn luyện và chọn ra k văn bản cĩ
khoảng cách gần nhất, cịn gọi là k “láng giềng”. Dùng các khoảng cách vừa tính được
đánh trọng số cho các chủ đề đã cĩ. Trọng số của một chủ đề sẽ được tính bằng tổng các
khoảng cánh từ văn bản cần phân lớp đến các văn bản trong k láng giềng mà cĩ cùng chủ
đề đĩ. Những chủ đề khơng xuất hiện trong tập k văn bản sẽ cĩ trọng số bằng 0. Các chủ
đề được sắp xếp theo độ giảm dần của các trọng số và chủ đề nào cĩ trọng số cao sẽ là
chủ đề cho văn bản cần phân lớp.
Cơng thức
Trọng số của chủ đề cj đối văn bản x :
W( x ,cj) = ∑
∈
−
KNNd
jjii
i
b)c,d(y).d,x(sim
Trong đĩ:
- )c,d(y ji ∈ {0,1} với:
y = 0: văn bản id khơng phụ thuộc chủ đề cj
y = 1: văn bản id thuộc về chủ đề cj
- )d,xsim( i độ giống nhau giữa văn bản cần phân loại x và văn bản id . Sử
dụng độ đo cosin để tính )d,xsim( i :
Khĩa luận tốt nghiệp Nguyễn Việt Cường
39
)d,xsim( i = )d,x(cos i =
i
i
d.x
d.x
- bj là ngưỡng phân loại của chủ đề cj , được tự động học sử dụng một tập văn
bản hợp lệ chọn ra từ tập huấn luyện
Khi số văn bản trong tập văn bản láng giềng càng lớn thì thuật tốn càng ổn định
và sai sĩt thấp.
4.2.3. Phân lớp dựa vào thuật tốn cây quyết định
Cây quyết định (Decision Tree) là một trong các phương pháp được sử dụng rộng
rãi trong học quy nạp từ tập dữ liệu lớn. Đây là phương pháp học xấp xỉ các hàm mục
tiêu cĩ giá trị rời rạc. Một ưu điểm của phương pháp cây quyết định là cĩ thể chuyển dễ
dàng sang dạng cơ sở tri thức là các luật Nếu - Thì (If - Then).
Trên cây gồm các nút trong được gán nhãn bởi các khái niệm, các nhánh cây chứa
nút được gán nhãn bằng các trọng số của khái niệm tương ứng đối với tài liệu mẫu và các
lá trên cây được gán nhãn bởi các nhãn nhĩm. Một hệ thống như vậy sẽ phân loại một tài
liệu di bởi phép thử đệ quy các trọng số mà các khái niệm được gán nhãn cho các nút
trong với vector id cho đến khi với tới một nút lá, khi đĩ nhãn của nút này được gán cho
tài liệu di. Đa số các phương pháp phân loại như vậy sử dụng biểu diễn ở dạng nhị phân
và các cây cũng được biểu diễn dưới dạng nhị phân.
Ví dụ cây quyết định:
Hình 7. Cây quyết định
Khĩa luận tốt nghiệp Nguyễn Việt Cường
40
Entropy
Entropy là đại lượng đo độ đồng nhất thơng tin hay tính thuần nhất của các mẫu.
Đây là đại lượng hết sức quan trọng trong lý thuyết thơng tin.
Đại lượng Entropy được tính như sau:
∑
=
−≡
n
i
ii ppS
1
)Entropy( 2log
trong đĩ pi là phân bố của thuộc tính thứ i trong S.
Information Gain
Information Gain là đại lượng đo độ ảnh hưởng của một thuộc tính trong mẫu đĩ
trong việc phân lớp.
Information Gain của một thuộc tính A trong tập S, ký hiệu là )Gain(S, A được
xác định như sau:
∑
∈
−≡
)Values(
)Entropy()Entropy(),Gain(
Av
v
v S
S
S
SAS
trong đĩ Values(A) là tập các giá trị cĩ thể của thuộc tính A, cịn Sv là tập con cĩ
thể của tập S các phần tử cĩ thuộc tính A = v, tức là })(|{ vsASsSv =∈= .
Biểu thức đầu Entropy (S) là đại lượng entropy nguyên thủy của tập S, biểu thức
sau là giá trị kỳ vọng của entropy sau khi S được chia thành các tập con theo các giá trị
của thuộc tính A. Do đĩ Gain(S,A) thực chất là độ giảm kì vọng của entropy khi biết các
giá trị thuộc tính A. Giá trị Gain(S,A) là số bit cần lưu khi mã hĩa các giá trị mục tiêu của
một thành phần của S, khi biết các giá trị của thuộc tính A.
Thuật tốn ID3
ID3 và cải tiến của nĩ, C4.5, là các thuật tốn học cây quyết định phổ biến nhất.
Nhìn chung, thuật các bước trong thuật tốn ID3 cĩ thể được phát biểu một cách
ngắn gọn như sau:
- Xác định thuộc tính cĩ độ đo Information Gain cao nhất trong tập mẫu
Khĩa luận tốt nghiệp Nguyễn Việt Cường
41
- Sử dụng thuộc tính này làm gốc của cây, tạo một nhánh cây tương ứng với mỗi
giá trị cĩ thể của thuộc tính.
- Ứng với mỗi nhánh, ta lại lặp lại quá trình trên tương ứng với tập con của tập
mẫu (training set) được phân cho nhánh này.
4.2.4. Phân lớp sử dụng Support Vector Machines (SVM)
Máy sử dụng vector hỗ trợ (SVM)[12] được Cortess và Vapnik giới thiệu năm
1995, là phương pháp tiếp cận phân lớp hiệu quả để giải quyết vấn đề nhận dạng mẫu 2
lớp sử dụng nguyên lý Cực tiểu hĩa Rủi ro cĩ Cấu trúc (Structural Risk Minimization).
Trong khơng gian vector cho trước một tập huấn luyện được biểu diễn trong đĩ
mỗi tài liệu là một điểm, thuật tốn SVM sẽ tìm ra một siêu mặt phẳng h quyết định tốt
nhất cĩ thể chia các điểm trên khơng gian này thành hai lớp riêng biệt tương ứng lớp + và
lớp –. Chất lượng của siêu mặt phẳng phân cách này được quyết định bởi khoảng cách
(gọi là biên) của điểm dữ liệu gần nhất của mỗi lớp đến mặt phẳng này. Khoảng cách biên
càng lớn thì mặt phẳng quyết định càng tốt và việc phân lớp càng chính xác. Mục đích
thuật tốn SVM là tìm được khoảng cách biên lớn nhất. Hình sau minh họa cho thuật tốn
này:
Hình 8: Siêu mặt phẳng h phân chia dữ liệu huấn huyện thành 2 lớp + và - với khoảng cách biên
lớn nhất. Các điểm gần h nhất (được khoanh trịn) là các vector hỗ trợ - Support Vector
Khĩa luận tốt nghiệp Nguyễn Việt Cường
42
Cơng thức
Phương trình siêu mặt phẳng chứa vector id trong khơng gian:
0. =+ bwd i
Đặt
⎪⎩
⎪⎨
⎧
<+−
>++=+=
0bw.d,1
0bw.d,1
)bw.d(sign)d(h
i
i
ii
khi
khi
Từ đĩ, )( idh biễu diễn sự phân lớp của id vào hai lớp nĩi trên.
Cĩ iy = {±1}, thì với yi = +1, văn bản id ∈ lớp “+”; với yi = - 1, id ∈ lớp “-”. Lúc
này muốn cĩ siêu mặt phẳng h, ta sẽ giải bài tốn sau:
Tìm Min || w ||, trong đĩ w và b thỏa mãn điều kiện:
1)).((:,1 ≥+∈∀ bwdsignyni ii
Khi đĩ ta cĩ thể sử dụng tốn tử Lagrange biến đổi thành dạng thức để giải bài
tốn.
Ở phương pháp SVM, mặt phẳng quyết định chỉ phụ thuộc vào các điểm gần nĩ
nhất (vector hỗ trợ - support vector) mà cĩ khoảng cách đến nĩ là:
w
1 . Khi các điểm
khác bị xĩa đi thì vẫn khơng ảnh hưởng đến kết quả ban đầu.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
43
Chương 5. MỘT SỐ KẾT QUẢ THỰC NGHIỆM
5.1. Tập dữ liệu và tiền xử lý
Mơ tả dữ liệu đầu vào
Chúng tơi tiến hành thử nghiệm trên cơ sở dữ liệu là bộ phân lớp chuẩn
20newsgroup cĩ 19997 tài liệu, phân ra thành 20 lớp. Mỗi lớp cĩ khoảng 1000 tài liệu
Tuy nhiên, do số lượng văn bản của tập dữ liệu này rất lớn, nên chúng tơi chỉ
chọn ra 2 lớp để thử nghiệm. Đĩ là các lớp: rec.sport.; rec.autos .
Chúng tơi tiến hành thực nghiệm với số lượng tài liệu trong 2 lớp là: 50, 100, 500
. Trong đĩ tỷ lệ giữa tập train và tập test là: 2/1.
Biểu diễn văn bản qua các từ khĩa
Với tập dữ liệu kiểm tra, trước tiên chúng tơi thực hiện bước tiền xử lý: loại bỏ
các từ dừng. Chương trình loại bỏ từ dừng được viết bằng ngơn ngữ C/C++. Sau đĩ,
chúng tơi tạo ra tập từ khĩa của tập dữ liệu.
Sau khi hồn thành các bước trên, tiến hành biểu diễn văn bản. Các văn bản sẽ
được biểu diễn dưới dạng vector các từ khĩa. Định dạng của vector như sau:
Name_VB(id1,TS1; id2,TS2;…idn,TSn), trong đĩ: Name_VB là tên văn bản, idi là chỉ số
của từ khĩa thứ i trong tập từ khĩa ở trên; TSi là trọng số của từ khĩa thứ i. Trọng số của
từ khĩa được tính bởi cơng thức TF.IDF (chương II). Chương trình này được viết bằng
ngơn ngữ C/C++.
Biểu diễn văn bản qua các khái niệm mờ
Từ tập từ khĩa tạo được ở trên, chúng tơi tìm ra được những cụm từ khĩa cĩ liên
quan với nhau. Từ đĩ xác định các khái niệm mờ đại diện cho cụm đĩ.
Một vài ví dụ về cách biểu diễn các cụm từ khĩa liên quan và các khái niệm mờ
như sau:
“sport” = {hockey, baseball, sport, winner, finals, won, game, teams, played,
season , cup, stars, fans, newspaper, begin, goaltender, league, day, distribution, pic,
predictions, champions, scorer, power, driver, time, finished, worried, public, matter,
blow, car, miles}
Khĩa luận tốt nghiệp Nguyễn Việt Cường
44
“wood” = {hiller, wood}
“academic” = {university, academic, computer, science, school, laboratory,
college, staff, chemistry, technology, operating}
“humour” = {jokes, humour, coyote, average}
“cool” = {cool, air}
“speed” = {speed, coordination, skating, hilarious, observation, advised, ranked}
“raise” = {breakthrough, raise}
Sau khi đã xác định được các khái niệm mờ và kết hợp với tập từ khĩa trong văn
bản, chúng tơi biểu diễn văn bản theo các khái niệm mờ đĩ. Từ trọng số của các từ khĩa
trong văn bản, sử dụng hàm tích hợp mờ MAX, ta xác định được độ liên quan của các
khái niệm mờ trên đối với từng văn bản. Nếu các từ khĩa cĩ liên quan trong khái niệm mờ
khơng nằm trong văn bản đang xét, độ liên quan của khái niệm đến văn bản sẽ bằng 0.
5.2. Cơng cụ và phương pháp phân lớp
Cơng cụ phân lớp:
Chúng tơi sử dụng cơng cụ phân lớp là phần mềm Weka. Khĩa luận xin cung
cấp một số thơng tin về weka như sau:
9 Weka là một phần mềm nguồn mở về khai phá dữ liệu được phát triển bởi
đại học University of Waikato nước New Zealand. “Weka” là từ viết tắt cho
cụm từ Waikato Environment for Knowledge Analysis. Weka cĩ thể được
sử dụng ở nhiều cấp độ khác nhau. Cấp độ đơn giản của nĩ là ta cĩ thể áp
dụng các thuật tốn của Weka để xử lý dữ liệu từ dịng lệnh. Nĩ bao gồm
nhiều các cơng cụ dùng cho việc biến đổi dữ liệu, như các thuật tốn dùng
để rời rạc hĩa dữ liệu
9 Weka cung cấp tất cả các chức năng cơ bản của khai phá dữ liệu bao gồm
các thuật tốn về phân lớp (classifier), các thuật tốn về tiền xử lý dữ liệu
(filter), các thuật tốn về phân cụm (cluster), các thuật tốn về kết tập luật
(association rule).
Khĩa luận tốt nghiệp Nguyễn Việt Cường
45
Chương trình chuyển từ biểu diễn theo từ khĩa và theo khái niệm mờ sang dữ
liệu chuẩn của weka được viết bằng ngơn ngữ Java. Tập văn bản trước đĩ đã
được biểu diễn theo vector trọng số các từ khĩa trở thành Input. Sau đĩ, tiến
hành chạy chương trình và cho ra output là file dữ liệu chuẩn của weka.
Phương pháp phân lớp :
Trong chương 4, khĩa luận đã trình bày về một số thuật tốn phân lớp. Qua phân
tích, chúng tơi nhận thấy rằng: phương pháp K - Nearest Neighbor là một phương pháp
đơn giản và được đánh giá là một trong những phương pháp tốt và cho hiệu quả cao. Vì
vậy, chúng tơi chọn thuật tốn K - Nearest Neighbor trong thực nghiệm này
5.3. Kết quả thực nghiệm
Cĩ hai đại lượng thường dùng để đo hiệu suất của phân lớp văn bản, đĩ là
precision (độ chính xác) và recall (độ hồi tưởng). Ngồi ra người ta cịn xác định
thêm thơng số F1. F1 là một chỉ số cân bằng giữa độ chính xác và độ hồi tưởng,
F1 sẽ lớn khi độ chính xác và độ hồi tưởng lớn và cân bằng, F1 sẽ nhỏ khi độ
chính xác và độ hồi tưởng nhỏ hoặc khơng cân bằng. Mục tiêu trong các bài tốn
là F1 càng cao càng tốt.
Trong 1 lớp văn bản C, khi kiểm tra độ chính xác trong phân lớp, người ta
xác định 3 đại lượng: precision, recall và F1 như sau:
Trong đĩ:
9 num_of_match: là số lượng văn bản được gán nhãn đúng
9 num_of_model: là số lượng văn bản được mơ hình gán nhãn của lớp C
9 num_of_manual: là số lượng văn bản thuộc về lớp C
Khĩa luận tốt nghiệp Nguyễn Việt Cường
46
Khi phân lớp với bộ dữ liệu 50 văn bản. Trong đĩ: Traning set: 34, Test set: 16.
Sau khi thử với một số giá trị của tham số k, chúng tơi thấy k = 2, cĩ kết quả phân
lớp cao nhất.
Biểu diễn văn bản bằng tập từ khĩa:
Kết quả output như sau:
Correctly Classified Instanse: 10 62.5%
InCorrectly Classified Instances: 6 37.5%
----------------------
Precision Recall F1 Class
1 0.25 0.4 rec.autos_25
0.571 1 0.72 rec.Sport_25
----------------------
a b <---classified as
2 6 | a = rec.autos_25
0 8 | b = rec.sport_25
Khĩa luận tốt nghiệp Nguyễn Việt Cường
47
Biểu diễn bằng các khái niệm mờ:
Kết quả output như sau:
Correctly Classified Instanse: 13 81.25%
InCorrectly Classified Instances: 3 18.75%
----------------------
Precision Recall F1 Class
1 0.625 0.769 rec.autos_25
0.727 1 0.842 rec.Sport_25
----------------------
a b <---classified as
5 3 | a = rec.autos_25
0 8 | b = rec.sport_25
Khĩa luận tốt nghiệp Nguyễn Việt Cường
48
Khi phân lớp với bộ dữ liệu 100 văn bản. Trong đĩ: Traning set: 64, Test set: 32.
Cũng giống như với bộ dữ liệu gồm 50 văn bản, chúng tơi nhận thấy rằng trong
bộ dữ liệu này, k = 2 cho ta kết quả phân lớp cao nhất.
Biểu diễn văn bản bằng tập từ khĩa:
Kết quả ra như sau:
Correctly Classified Instanse: 23 71.875%
InCorrectly Classified Instances: 9 28.125%
----------------------
Precision Recall F1 Class
1 0.438 0.609 rec.autos_50
0.64 1 0.780 rec.Sport_50
----------------------
a b <---classified as
7 9 | a = rec.autos_50
0 16 | b = rec.sport_50
Khĩa luận tốt nghiệp Nguyễn Việt Cường
49
Biểu diễn văn bản bằng các khái niệm mờ:
Kết quả ra như sau:
Correctly Classified Instanse: 27 84.375%
InCorrectly Classified Instances: 5 15.625%
----------------------
Precision Recall F1 Class
1 0.688 0.815 rec.autos_50
0.762 1 0.865 rec.Sport_50
----------------------
a b <---classified as
11 5 | a = rec.autos_50
0 16 | b = rec.sport_50
Khi phân lớp với bộ dữ liệu 500 văn bản. Trong đĩ: Traning set: 334, Test
set: 166. Khơng giống với hai trường hợp trên, trong trường hợp này, k = 8 sẽ cho
kết quả phân lớp tốt nhất.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
50
Biểu diễn văn bản bằng tập từ khĩa:
Kết quả như sau:
Correctly Classified Instanse: 131 78.916%
InCorrectly Classified Instances: 35 24.084%
----------------------
Precision Recall F1 Class
0.929 0.627 0.748 rec.autos_250
0.718 0.952 0.818 rec.Sport_250
----------------------
a b <---classified as
52 31 | a = rec.autos_250
4 79 | b = rec.sport_250
Biểu diễn văn bản bằng tập các khái niệm mờ:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
51
Kết quả như sau:
Correctly Classified Instanse: 146 87.952%
InCorrectly Classified Instances: 20 12.048%
----------------------
Precision Recall F1 Class
0.957 0.795 0.868 rec.autos_250
0.825 0.964 0.889 rec.Sport_250
----------------------
a b <---classified as
66 17 | a = rec.autos_250
3 80 | b = rec.sport_250
Qua ba trường hợp trên, chúng tơi nhận thấy: khi số lượng văn bản trong tập
training và tập test nhỏ, kết quả phân lớp với thuật tốn kNN khơng cao. Khi tăng dần số
Khĩa luận tốt nghiệp Nguyễn Việt Cường
52
lượng văn bản lên, kết quả cĩ tốt hơn. Giá trị của tham số k cũng tỷ lệ thuận với số lượng
này.
Đồ thị so sánh giữa việc biểu diễn văn bản theo khái niệm mờ và việc biểu diễn
theo từ khĩa thơng thường:
Khĩa luận tốt nghiệp Nguyễn Việt Cường
53
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết quả đạt được
Dựa vào các nghiên cứu gần đây trong bài tốn xử lý văn bản, khĩa luận đã
nghiên cứu, chọn lọc cũng như phát triển một số vấn đề và đạt được những kết quả ban
đầu như sau:
Tìm hiểu và trình bày được một số phương pháp biểu diễn văn bản.
Nghiên cứu về lý thuyết tập mờ và các phép tốn liên quan. Qua đĩ giới thiệu
được một phương pháp biểu diễn văn bản dựa trên các khái niệm mờ.
Nghiên cứu và tìm hiểu về bài tốn phân lớp, trình bày một số thuật tốn
phân lớp tiêu biểu.
Cĩ được những kết quả thử nghiệm, những so ban đầu khi áp dụng cách biểu
diễn văn bản mới với cách biểu diễn thơng thường. Qua đĩ thấy được một số
ưu điểm:
9 Giảm bớt được số chiều của vector văn bản khi biểu diễn. Giảm bớt
sự phức tạp khi tính tốn.
9 Cho kết quả tốt hơn khi áp dụng vào bài tốn phân lớp với thuật
tốn kNN
Hướng phát triển
Chúng tơi xin đề xuất một phương pháp tìm ra các từ khĩa cĩ liên quan trong
văn bản: Cĩ một tập các từ khĩa trong tập văn bản đã qua bước tiền xử lý.
Trong tập từ khĩa này, lần lượt tìm những cụm từ cùng xuất hiện trong các
văn bản và đếm số lần xuất hiện đĩ. Đặt ra một ngưỡng α, nếu số lần xuất
hiện vượt qua ngưỡng này thì ta cĩ thể coi rằng các từ trong cụm đĩ cĩ liên
quan đến nhau. Cĩ nhiều cách để chọn một từ khĩa trong cụm này làm khái
niệm, chẳng hạn lấy từ cĩ trọng số cao nhất.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
54
Thời gian tới, chúng tơi sẽ tiến hành phân lớp trên các thuật tốn khác nhau:
Nạve Bayes, Cây quyêt định, SVM… để so sánh giữa các kết quả phân lớp
và tìm ra thuật tốn phân lớp tốt nhất khi áp dụng phương pháp biểu diễn
theo khái niệm mờ.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
55
TÀI LIỆU THAM KHẢO
Tiếng Việt:
[1]. Đinh Trung Hiếu, Vũ Bội Hằng, Nguyễn Cẩm Tú, Giải pháp tìm kiếm theo
lĩnh vực trong máy tìm kiếm, Báo cáo nghiên cứu khoa học Khoa Cơng Nghệ, ĐHQGHN
năm 2004.
[2]. Đồn Sơn (2002) Phương pháp biểu diễn văn bản sử dụng tập mờ và ứng
dụng trong khai phá dữ liệu văn bản Luận văn thạc sỹ Khoa Cơng Nghệ, ĐHQGHN, năm
2002.
Tiếng Anh:
[1]. D. Hand, H. Mannila, P. Smyth, Principles of Data Mining, MIT Press,
Cambridge, MA, 2001
[2]. D.Lewis, Representation and Learning in Information Retrieval, PhD Thesis,
Graduate School of the University of Massachusetts, 1991
[3]. D. Tikk, J. D. Yang, and S. L. Bang, Hierarchical text categorization using
fuzzy relational thesaurus. Kybernetika, 39(5), pp. 583–600, 2003
[4]. Eui-Hong Han, Text Categorization Using Weight Adjusted k-Nearest
Neighbor Classification. PhD thesis, University of Minnesota, October 1999
[5] F. Sebastiani, Machine learning in automated text categorization, Technical
Report IEI-B4-31-1999, Consiglio Nazionale delle Ricerche, Pisa, Italy, 1999.
[6]. G. Piatetsky Shapiro, W. Frawley (Eds), Knowledge Discovery in Databases,
MIT Cambridge, MA,1991.
[7]. Ian H.Witten, Eibe Frank, Data Mining: Practical Machine Learning Tools
and Techniques, 2nd edition, June 2005
[8]Maria-Luiza Antonie, Osmar R. Zaıane, Text Document Categorization by
Term Association, IEEE International Conference on Data Mining, pages 19--26,
December 2002.
Khĩa luận tốt nghiệp Nguyễn Việt Cường
56
[9]. M. Grabisch, S.A.Orlovski, R.R.Yager. Fuzzy aggregation of numerical
preferences, In R. Slowinski, editor, Fuzzy Sets in Decision Analysis, Operations
Research and Statistics, pages 31-68
[10]. Ricardo Baeza-Yates, Berthier Ribeiro-Neto, Modern Information Retrieval,
Addison Wesley, 1999
[11]. S. Eyheramendy, D. Lewis and D. Madigan, On the Naive Bayes Model for
Text Categorization, In Proceedings of Artificial Intelligence & Statistics 2003.
[12]. T. Joachims, Text categorization with Support Vector Machines: Learning
with many relevant features. In Machine Learning: ECML-98, Tenth European
Conference on Machine Learning, pp. 137-142
[13]. W. Frawley, G. Piatetsky-Shapiro, C. Matheus, Knowledge Discovery in
Databases: An Overview. AI Magazine, Fall 1992.
[14]. H.J. Zimmerman, Fuzzy set Theory and Its Applications, Kluwer Academic
Publishers, 1991
Các file đính kèm theo tài liệu này:
- K47_Nguyen_Viet_Cuong_Thesis.pdf