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

Xây dựng công cụ hỗ trợ tra cứu tài liệu có nội dung tương tự nhau: 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.74 MB, 71 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC LẠC HỒNG

LÊ TRỌNG VŨ

XÂY DỰNG CÔNG CỤ HỖ TRỢ
TRA CỨU TÀI LIỆU CÓ NỘI DUNG
TƯƠNG TỰ NHAU

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Đồng Nai, năm 2016


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC LẠC HỒNG

LÊ TRỌNG VŨ

XÂY DỰNG CÔNG CỤ HỖ TRỢ
TRA CỨU TÀI LIỆU CÓ NỘI DUNG
TƯƠNG TỰ NHAU
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Mã số: 60.48.02.01

NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. ĐỖ PHÚC

Đồng Nai, năm 2016



LỜI CẢM ƠN
Đầu tiên, tôi xin chân thành cảm ơn sâu sắc đến Thầy PGS. TS Đỗ Phúc là người
nhiệt tình hướng dẫn tôi hoàn thành luận văn này. Trong thời gian hướng dẫn Thầy
luôn quan tâm, chỉ bảo kịp thời là nguồn động viên quý báu đối với tôi để xây dựng
hoàn thành luận văn này.
Tiếp theo, tôi chân thành gửi đến các Thầy cô công tác tại khoa Công nghệ
thông tin và khoa Sau Đại học, các Thầy trực tiếp giảng dạy lớp CNTT cao học khóa 6
đã cung cấp kiến thức nền tảng để tôi áp dụng vào luận văn.
Cuối cùng cảm ơn gia đình, đồng nghiệp, bạn bè và Ban Giám hiệu trường Đại
học Đồng Nai đã giúp đỡ và tạo điều kiện thuận lợi cho tôi học tập, nghiên cứu để hoàn
thành luận văn này.
Đồng Nai, Ngày 26 tháng 09 năm 2016
Học viên

Lê Trọng Vũ


LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này do cá nhân tôi hoàn toàn thực hiện được, các tài
liệu tham khảo đều trích dẫn rõ ràng về nguồn gốc khoa học và mang tính hợp pháp.
Tôi xin hoàn toàn chịu trách nhiệm các hình thức kỷ luật theo quy định theo lời
cam đoan trên.
Đồng Nai, Ngày 26 tháng 09 năm 2016
Học viên

Lê Trọng Vũ


TÓM TẮT LUẬN VĂN
Sự bùng nổ thông tin trong thời đại ngày nay khiến thông tin tìm kiếm tài liệu bị

trùng lặp, dễ lẫn lộn khiến ta khó có thể phân loại được tài liệu có nội dung tương tự
hay tài liệu thuộc một chủ đề nào đó. Thực tiễn tại trung tâm thông tin thư viện trường
đại học Đồng Nai có hàng ngàn tài liệu chưa được khai phá hay phân loại mà chưa có
một biện pháp nào thực hiện công việc đó. Vấn đề do nhu cầu cấp bách đặt ra cần có
một công cụ để hỗ trợ tra cứu tài liệu có nội dung tương tự nhanh chóng.
Luận văn này tôi tập trung xây dựng công cụ hỗ trợ tra cứu tài liệu có nội dung
tương tự dựa trên thuật toán mạng Kohonen để giải quyết vấn đề.
Trên cơ sở sử dụng dữ liệu văn bản dạng text tóm tắt các tài liệu tại trung tâm
thông tin thư viện trường đại học Đồng Nai, tôi có sử dụng một số công cụ tách từ văn
bản đã được kiểm nghiệm thực tế như phần mềm vnTokenizer [6], thuật toán huấn
luyện mạng Kohonen, truy vấn thông tin lớp ra Kohonen, phụ lục các tài liệu, phụ lục
từ dừng trong tiếng việt, phục lục các từ phân biệt có trong hệ thống.
Tác giả đã thực hiện một số thực nghiệm thực tế, sử dụng một số chỉ số đánh giá
như Precision, Recall và F-measure giữa hai cụm trong hệ thống để đánh giá thử
nghiệm hệ thống.


MỤC LỤC
LỜI CẢM ƠN .............................................................................................................3
LỜI CAM ĐOAN........................................................................................................4
DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT ..........................................................9
MỞ ĐẦU .....................................................................................................................1
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI ..................................................................5
1.1.1 Khai phá dữ liệu và khám phá tri thức............................................................5
1.1.2 Quy trình khám phá tri thức ............................................................................5
1.1.3 Các phương pháp áp dụng trong khai phá dữ liệu ..........................................7
1.1.4

Tổng quan các kỹ thuật khai phá dữ liệu ....................................................8


1.2 Gom cụm trong khai phá dữ liệu...........................................................................9
1.2.1 Khái niệm và mục tiêu của gom cụm dữ liệu .................................................9
1.2.1.1 Gom cụm dữ liệu: .....................................................................................9
1.2.1.2 Các mục tiêu của gom cụm dữ liệu ........................................................10
1.2.2 Các ứng dụng của gom cụm dữ liệu .............................................................12
CHƯƠNG 2: GOM CỤM VĂN BẢN ......................................................................13
2.1 Tổng quan bài toán ..............................................................................................13
2.2 Đặc điểm ngôn ngữ tiếng Việt ............................................................................17
2.2.1 Cấu tạo từ tiếng Việt .....................................................................................17
2.2.2 Đặc điểm chính tả .........................................................................................18
2.2.3 Tách từ ..........................................................................................................19
2.3 Hướng tiếp cận cho bài toán ...............................................................................22
2.3.1 Tiền xử lý văn bản tiếng Việt .......................................................................22
2.3.1.2 Loại bỏ hư từ - từ dừng...........................................................................22
2.3.1.3 Loại bỏ từ có tần số thấp ........................................................................22
2.3.2 Tính độ tương đồng giữa các văn bản...........................................................23
2.3.3 Hướng giải quyết bài toán .............................................................................23
2.4 Độ tương đồng.....................................................................................................24
2.4.1 Khái niệm độ tương đồng .............................................................................24
2.4.2 Độ tương đồng ..............................................................................................25


2.4.3 Các phương pháp tính độ tương đồng ..........................................................25
2.4.3.1 Phương pháp tính độ tương đồng sử dụng độ đo Cosine .......................25
2.4.3.2 Phương pháp tính độ tương đồng dựa vào độ đo khoảng cách Euclide .26
2.5 Gom cụm bằng mạng Kohonen...........................................................................26
2.5.1 Kiến trúc cụm phẳng .....................................................................................27
2.5.2 Mạng Kohonen..............................................................................................27
2.5.3 Gom cụm từ lớp ra Kohonen ........................................................................27
2.5.4 Thuật giải huấn luyện mạng Kohonen ..........................................................28

2.5.5.1 Dựa trên vùng lân cận nơron chiến thắng..............................................28
2.5.5.2 Đặc trưng các cụm trên lớp ra Kohonen.................................................29
CHƯƠNG 3: KHẢO SÁT NGUỒN THÔNG TIN TẠI THƯ VIỆN TRƯỜNG ĐẠI
HỌC ĐỒNG NAI VÀ PHÂN TÍCH HỆ THỐNG TRA CỨU NỘI DUNG TƯƠNG
TỰ .............................................................................................................................31
3.1 Giới thiệu về thư viện trường Đại học Đồng Nai................................................31
3.2 Phân tích hệ thống, công cụ để xây dựng phần mềm tra cứu .............................32
3.2.1 Xử lý dữ liệu .................................................................................................33
3.2.1.1 Tách từ tiếng Việt tập tin đầu vào ..........................................................33
3.2.1.2 Loại bỏ từ dừng, hư từ ............................................................................33
3.2.1.3 Đặc trưng văn bản...................................................................................33
3.2.1.4 Biểu diễn văn bản ...................................................................................34
3.2.2 Huấn luyện mạng Kohonen – Gom cụm tài liệu ..........................................34
3.2.3 Truy vấn tương tự qua lớp ra Kohonen ........................................................35
CHƯƠNG 4: CÀI ĐẶT, THỬ NGHIỆM, SO SÁNH..............................................37
4.1 Kết quả thực nghiệm ...........................................................................................37
4.1.1 Môi trường thực nghiệm ...............................................................................37
4.1.2 Công cụ .........................................................................................................37
4.1.3 Dữ liệu...........................................................................................................38
4.2 Kết quả thực nghiệm ...........................................................................................39
4.2.1 Chức năng 1: Hiện thị tập tin ........................................................................39
4.2.2 Chức năng 2: Huấn luyện Kohonen ..............................................................45
4.2.3 Chức năng 3: Truy vấn Lớp ra Kohonen ......................................................48


4.3 Đánh giá kết quả gom cụm..................................................................................51
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..........................................54
5.1 Kết quả đạt được của luận văn ............................................................................54
5.2 Hướng phát triển của luận văn ............................................................................54
TÀI LIỆU THAM KHẢO .........................................................................................56

PHỤ LỤC TỪ DỪNG ..............................................................................................58
PHỤ LỤC TỪ PHÂN BIỆT .....................................................................................59


DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT
Từ hoặc cụm từ

Từ viết tắt

Từ tiếng Anh

Cơ sở dữ liệu

CSDL

Database

Gom cụm dữ liệu

GCDL

Data Clustering

Khai phá dữ liệu

KPDL

Data mining

Khai phá tri thức


KPTT

Knowledge Mining

Khai phá tri thức trong KDD

Knowledge Discovery

cơ sở dữ liệu

In database


DANH MỤC BẢNG
Bảng 1.1 Nguồn lực thông tin tài liệu .............................................................................. 2
Bảng 4.1 Cấu hình hệ thống ........................................................................................... 37
Bảng 4.2 Công cụ vnTokenizer ...................................................................................... 37
Bảng 4.3 Kết quả của F-measure ................................................................................... 53


DANH MỤC HÌNH
Hình 1.1 Quy trình khám phá tri thức .............................................................................. 6
Hình 1.2 Gom cụm dữ liệu dựa trên khoảng cách ........................................................ 10
Hình 1.3 Ví dụ gom cụm văn bản theo chủ đề .............................................................. 11
Hình 2.1 Quy trình gom cụm văn bản ............................................................................ 16
Hình 2.2 Sơ đồ khái quát hệ thống từ loại tiếng Việt .................................................... 17
Hình 2. 3 Cấu trúc của mạng Kohonen hai chiều ......................................................... 27
Hình 2.4 Vùng lân cận nơron chiến thắng..................................................................... 29
Hình 3.1 Biểu diễn vector văn bản trong không gian 2 chiều ....................................... 34

Hình 3.2 Các cụm từ phổ biến đặc trưng cho một cụm trên lớp ra Kohonen ............... 35
Hình 3.3 Các văn bản trong một cụm trên lớp ra Kohonen .......................................... 36
Hình 4.1 Danh sách tập tin tài liệu huấn luyện .............................................................. 38
Hình 4.2 Giao diện chương trình hệ thống .................................................................... 39
Hình 4.3 Hiển thị tập tin ................................................................................................ 41
Hình 4.4 Danh sách các từ mới sau khi tách ................................................................. 42
Hình 4.5 Danh sách các tập tin đã huấn luyện Kohonen .............................................. 43
Hình 4.6 Chuyển văn bản sang vector........................................................................... 44
Hình 4.7 Vector các văn bản ......................................................................................... 44
Hình 4.8 Giao diện gom cụm bằng Kohonen ................................................................ 45
Hình 4.9 InputtoKohonen .............................................................................................. 45
Hình 4.10 Kết quả lớp ra Kohonen ............................................................................... 46
Hình 4.11 Lọc từ đặc trưng ........................................................................................... 47
Hình 4.12 Gom cụm với ngưỡng đặc trưng .................................................................. 47
Hình 4.13 Giao diện lớp ra Kohonen ............................................................................ 48
Hình 4.14 Vẽ lớp ra Kohonen ....................................................................................... 49
Hình 4.15 Cụm Kohonen .............................................................................................. 50
Hình 4.16 Hiển thị cụm file tương tự ............................................................................ 50
Hình 4.17 Quan hệ giữa hai cụm................................................................................... 51


1

MỞ ĐẦU
1.Lý do thực hiện đề tài
Hiện nay với sự phát triển của công nghệ thông tin, cơ sở dữ liệu văn
bản cũng đang phát triển chóng mặt với số lượng khổng lồ, nhất là nguồn thông tin
ở dạng số hóa, ví dụ tài liệu điện tử, email, các trang web….
Vấn đề đặt ra là với số lượng lớn dữ liệu được số hóa hàng ngày hàng giờ như
vậy, ta làm sao phân loại tìm kiếm và khai phá dữ liệu đó nhanh chóng và hiệu quả,

giảm thiểu chi phí và thời gian tìm kiếm của người sử dụng. Để đáp ứng phần nào
yêu cầu này, cần xây dựng các công cụ hỗ trợ tìm kiếm và xử lý thông tin nhằm
giúp người dùng tìm kiếm được các thông tin cần thiết.
Với các phương pháp khai phá cơ sở dữ liệu truyền thống chưa đáp ứng được
các yêu cầu đó. Để giải quyết vấn đề này, một hướng đi mới đó là nghiên cứu và áp
dụng kỹ thuật khai phá dữ liệu và khám phá tri thức trong môi trường tài liệu văn
bản điện tử. Do đó việc nghiên cứu các mô hình dữ liệu mới và áp dụng các phương
pháp khai phá dữ liệu trong khai phá tài nguyên văn bản điện tử là một xu thế vừa
có ý nghĩa khoa học vừa mang ý nghĩa thực tiễn cao.
Để đi sâu vào thực tế, bằng kiến thức đã học được trong thời gian vừa qua, tôi
muốn áp dụng những kiến thức đó để xây dựng một công cụ hỗ trợ tìm kiếm tài liệu
có nội dung tương tự tại trung tâm thông tin thư viện trường Đại học Đồng Nai.
Bản thân tác giả đang công tác tại trung tâm thông tin thư viện đại học Đồng
Nai, nơi chứa rất nhiều tài liệu văn bản điện tử - tài liệu số chưa được khai phá và
chưa có một công cụ phần mềm nào đáp ứng nhu cầu tra cứu những tài liệu có nội
dung tương tự nhau. Tôi cảm thấy cấp bách cần một công cụ tra cứu tài liệu áp
dụng ngay tại nơi làm việc của mình. Do đó, tôi đã chọn đề tài “Xây dựng công cụ
hỗ trợ tra cứu tài liệu có nội dung tương tự nhau’.
Sơ lược tình hình thực trạng của Trung tâm thông tin thư viện trường Đại học
Đồng Nai với nguồn lực thông tin được tham khảo như sau:
(nguồn tại trang web thư viện Đại học Đồng Nai )


2

STT Tài liệu

Số lượng

1


Tài liệu tiếng Việt

208.355 ản

2

Tài liệu Ngoại văn

>16.000 bản

3

Báo và tạp chí

13000 biểu ghi

4

Tài liệu đa phương tiện

12500 tên

5

Bộ sưu tập số GreenStone và Dspace

>12000 tài liệu

6


Luận án, luận văn

>100

Bảng 1.1 Nguồn lực thông tin tài liệu
Mô tả tình huống tường minh:
Input: Tập dữ liệu văn bản text
Output: Xuất ra danh sách các tập tin văn bản của từng cụm, các tập tin có
nội dung tương tự. Mỗi tập tin chỉ xuất hiện trong duy nhất một cụm.

2. Mục tiêu của luận văn
- Luận văn đề xuất giải pháp vận dụng phương pháp tính độ tương tự giữa từ
với từ để tính được độ tương đồng giữa các văn bản.
- Công cụ hỗ trợ tìm kiếm được những tài liệu có nội dung tương tự thành
từng cụm trong nguồn thông tin tại trung tâm thông tin thư viện trường đại học
Đồng Nai.
- Giảm thiểu số lượng đối tượng trong việc phân loại tài liệu.
- Tạo tiền đề phát triển các ứng dụng khác.

3. Phạm vi và đối tượng nghiên cứu
- Nguồn tài liệu số tại trung tâm thư viện Đại học Đồng Nai.
- Tài liệu số có định dạng file text chuẩn tiếng tiếng Việt, không chứa hình
ảnh, âm thanh,…
- Các thuật toán dùng để gom cụm nội dung; mạng Kohonen.

4. Nội dung thực hiện


3


Tìm hiểu về các phương pháp gom cụm rồi chọn phương pháp tốt. Cụ thể ta

-

chọn thuật toán gom cụm mạng Kohonen để thực hiện chương trình vì không cần
chỉ định số cụm và giao diện truy vấn trực quan.
Nghiên cứu lý thuyết về độ tương đồng, cách tính độ tương đồng giữa từ với

từ.
-

Tìm hiểu cách tách từ trong văn bản Tiếng Việt. Phần mềm VnTokenizer.
Dựa trên những hiểu biết và các công cụ liên quan xây dựng các thuật toán

cần thiết để chuẩn bị xây dựng chương trình.
-

Dùng ngôn ngữ Visual studio C# 2012 để thiết kế và xây dựng chương trình.

-

Ứng dụng thực tế tại thư viện trường Đại học Đồng Nai.

-

Đề ra hướng phát triển cho tương lai.

5. Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu
- Công cụ được sử dụng tra cứu tài liệu và liệt kê những tài liệu có nội dung

tương tự nhau trong thư viện trường đại học Đồng Nai.

6. Bố cục của luận văn
- Ngoài các phần Mở đầu, Mục lục, Danh mục hình, Danh mục bảng, Tài liệu
tham khảo. Luận văn chia là 5 chương:
Chương 1: Tổng quan về đề tài
- Phần này giới thiệu một cách tổng quát về quy trình khám phá tri thức nói
chung và khai phá dữ liệu văn bản nói riêng.
- Các phương pháp, lĩnh vực và các hướng tiếp cận trong khai phá dữ liệu.
Chương 2: Gom cụm văn bản
- Trong phần này trình bày tổng quan bài toán.
- Một số vấn đề biểu diễn và xử lý dữ liệu văn bản áp dụng dụng trong khai
phá văn bản.
- Độ tương đồng của các văn bản.
- Thuật giải huấn luyện mạng Kohonen.
Chương 3: Khảo sát thư viện trường Đại học Đồng Nai và phân tích hệ thống tra
cứu nội dung tương tự


4

Các chức năng của hệ thống truy vấn tài liệu tương tự
-

Xử lý văn bản: phần mềm Vntokenizer

-

Huấn luyện Kohonen.


-

Truy vấn ra lớp Kohonen.

Chương 4: Cài đặt và thử nghiệm
- Chuẩn bị dữ liệu có ở trung tâm thư viện.
- Huấn luyện dữ liệu bằng mạng Kohonen
- Truy vấn nội dung tương tự của các tài liệu cho sẵn tại trung tâm Thông tin
Thư viện Đại học Đồng Nai.
Chương 5: Kết luận và hướng phát triển


5

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Giới thiệu
1.1.1 Khai phá dữ liệu và khám phá tri thức
Sự bùng nổ thông tin là một một cuộc cách mạng khoa học kỹ thuật, khiến cho
lượng thông tin mà con người lưu trữ và tìm kiếm ngày càng khổng lồ, kích thước
cơ sở dữ liệu tăng. Trong cơ sở dữ liệu đó tiềm ẩn rất nhiều tri thức mà con người
chưa khám phá được và tìm kiếm thông tin trở nên khó khăn. Chính vì lý do đó nhu
cầu tìm kiếm tri thức trong khối CSDL lớn đã hình thành, nhu cầu này ngày một
cấp thiết dẫn tới sự ra đời một lĩnh vực mới- lĩnh vực khai phá dữ liệu.
Thông thường, chúng ta coi dữ liệu như là một chuỗi các bits, hoặc các số và
các ký hiệu hay là các “đối tượng” với một ý nghĩa nào đó khi được gửi cho một
chương trình dưới một dạng nhất định. Các bits thường được sử dụng để đo thông
tin, và xem nó như là dữ liệu đã được loại bỏ phần tử thừa, lặp lại, và rút gọn tới
mức tối thiểu để đặc trưng một cách cơ bản cho dữ liệu.
Tri thức được xem như là các thông tin tích hợp, bao gồm các sự kiện và mối
quan hệ giữa chúng, đã được nhận thức, khám phá, hoặc nghiên cứu. Nói cách

khác, tri thức có thể được coi là dữ liệu ở mức độ cao của sự trừu tượng và tổng
quát.
Khám phá tri thức hay phát hiện tri thức trong cơ sở dữ liệu là một quy trình
nhận biết các mẫu hoặc các mô hình trong dữ liệu với các tính năng: Phân tích, tổng
hợp, hợp thức, khả ích và có thể hiểu được.
Khai phá dữ liệu là một bước trong quy trình khám phá tri thức, gồm các
thuật toán khai phá dữ liệu chuyên dùng dưới một số quy định về hiệu quả tính
toán chấp nhận được để tìm ra các mẫu hoặc các mô hình trong dữ liệu. Nói cách
khác, mục tiêu của khai phá dữ liệu là tìm kiếm các mẫu hoặc mô hình tồn tại trong
cơ sở dữ liệu nhưng ẩn trong khối lượng lớn dữ liệu.

1.1.2 Quy trình khám phá tri thức
Quy trình khám phá tri thức tiến hành thường qua các giai đoạn [1]:


6

Hình 1.1 Quy trình khám phá tri thức
Bắt đầu của quy trình là kho dữ liệu thô và kết thúc với tri thức được chiết
xuất ra. Về lý thuyết thì có vẻ rất đơn giản nhưng thực sự đây là một quy trình rất
khó khăn gặp phải rất nhiều vướng mắc như: quản lý các tập dữ liệu, phải lặp đi
lặp lại toàn bộ quy trình. Hình 1.1 là quy trình khai phá tri thức gồm các bước sau:
- Trích lọc dữ liệu: Giai đoạn này là trích chọn những tập dữ liệu cần
được khai phá từ các tập dữ liệu lớn ban đầu theo một tiêu chí nhất định. Ví
dụ chọn tất cả những tài liệu tiếng anh ngành công nghệ thông tin xuất bản
năm 2008...
- Tiền xử lý dữ liệu: đây là bước làm sạch dữ liệu (xử lý những dữ liệu
không đầy đủ, nhiễu, không nhất quán…), rút gọn dữ liệu, rời rạc hóa dữ liệu.
Giai đoạn này là giai đoạn hay bị sao lãng, nhưng thực tế nó là một bước rất
quan trọng trong quy trình khai phá dữ liệu. Một số lỗi thường mắc phải trong

khi gom dữ liệu là tính không đủ chặt chẽ, logíc. Vì vậy, dữ liệu thường chứa
các giá trị vô nghĩa và không có khả năng kết nối dữ liệu. Bởi vậy, đây là một
quy trình rất quan trọng vì dữ liệu này nếu không được “làm sạch – tiền xử lý
– chuẩn bị trước” thì sẽ gây nên những kết quả sai lệch nghiêm trọng.
- Biến đổi dữ liệu: Tiếp theo là giai đoạn biến đổi dữ liệu, dữ liệu được
chuẩn hóa và làm mịn, tức là dữ liệu sẽ được chuyển đổi về dạng phù hợp,
thuận lợi cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập
hợp.


7

- Khai phá dữ liệu: Đây là bước mang tính tư duy trong khai phá dữ
liệu, áp dụng những kỹ thuật phân tích (như các kỹ thuật của máy học) nhằm
để khai phá dữ liệu, trích chọn được những mẫu thông tin, những mối liên hệ
đặc biệt trong dữ liệu. Quy trình này được xem là bước quan trọng và tốn
nhiều thời gian nhất của quy trình KDD.
- Đánh giá các luật và biểu diễn tri thức: Ở giai đoạn này, các mẫu dữ
liệu được chiết xuất ra bởi phần mềm khai phá dữ liệu. Không phải bất cứ
mẫu dữ liệu nào cũng đều hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải
ưu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức cần chiết xuất
ra. Đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa trên một số phép
đo. Sau đó sử dụng các kỹ thuật trình diễn và trực quan hoá dữ liệu để biểu
diễn tri thức khai phá được cho người sử dụng.
Trên đây là các giai đoạn của quy trình khám phá tri thức, trong đó giai đoạn
4 - khai phá dữ liệu là giai đoạn được quan tâm nhiều nhất.

1.1.3 Các phương pháp áp dụng trong khai phá dữ liệu
Với hai mục đích khai phá dữ liệu là mô tả và dự đoán, người ta thường sử
dụng các phương pháp sau cho khai phá dữ liệu [2]:

- Luật kết hợp: là dạng biểu diễn tri thức ở dạng khá đơn giản
- Phân lớp và dự đoán: xếp đối tượng vào một trong những lớp đã biết trước.
Phân lớp và dự đoán còn được gọi là học có giám sát.
- Hồi quy
- Trực quan hóa
- Gom cụm: Xếp các đối tượng theo từng cụm dữ liệu tự nhiên.
Gom cụm còn được gọi là học không có giám sát.
- Tổng hợp
- Mô hình ràng buộc
- Biểu diễn mô hình
- Phân tích sự phát triển và độ lệch
- Phương pháp tìm kiếm


8

Có nhiều phương pháp khai phá dữ liệu được nghiên cứu ở trên, trong đó có
ba phương pháp được các nhà nghiên cứu sử dụng nhiều nhất đó là: Luật kết hợp,
Phân lớp dữ liệu và Gom cụm dữ liệu. Phương pháp gom cụm dữ liệu được sử dụng
được đi sâu trong luận văn này và được trình bày ở những phần sau.

1.1.4 Tổng quan các kỹ thuật khai phá dữ liệu
Vấn đề khai phá dữ liệu có thể được phân chia theo lớp các kỹ thuật khai phá
chính sau:
- Phân lớp và dự đoán: Là quy trình xếp một đối tượng vào một trong những
lớp đã biết trước (ví dụ: phân lớp các bệnh nhân theo dữ liệu hồ sơ bệnh án, phân
lớp vùng địa lý theo dữ liệu thời tiết...). Đối với hướng tiếp cận này thường sử
dụng một số kỹ thuật của học máy như cây quyết định, mạng nơron nhân tạo,...
hay lớp bài toán này còn đươc gọi là học có giám sát - Học có thầy.
- Gom cụm: Sắp xếp các đối tượng theo từng cụm dữ liệu tự nhiên, tức là số

lượng và tên cụm chưa được biết trước. Các đối tượng được gom cụm sao cho
mức độ tương tự giữa các đối tượng trong cùng một cụm là lớn nhất và mức độ
tương tự giữa các đối tượng nằm trong các cụm khác nhau là nhỏ nhất. Lớp bài
toán này còn được gọi là học không giám sát - Học không thầy. Luận văn chủ yếu
tập trung vào phần này.
- Luật kết hợp: Là dạng luật biểu diễn tri thức ở dạng khá đơn giản (Ví dụ:
80% sinh viên đăng ký học Cơ sở dữ liệu thì có tới 60% trong số họ đăng ký học
Phân tích thiết kế hệ thống thông tin). Hướng tiếp cận này được ứng dụng nhiều
trong lĩnh vực kinh doanh, y học, tin sinh học, giáo dục, viễn thông, tài chính và
thị trường chứng khoán,...
- Phân tích chuỗi theo thời gian: Cũng tưng tự như khai phá dữ liệu bằng luật
kết hợp nhưng có thêm tính thứ tự và tính thời gian. Một luật mô tả mẫu tuần tự có
dạng tiêu biểu X -> Y, phản ánh sự xuất hiện của biến cố X sẽ dẫn đến việc xuất
hiện biến cố Y. Hướng tiếp cận này được ứng dụng nhiều trong lĩnh vực tài chính
và thị trường chứng khoán bởi chúng có tính dự báo cao.
- Mô tả khái niệm: Lớp bài toán này thiên về mô tả, tổng hợp và tóm tắt khái
niệm (Ví dụ: tóm tắt văn bản).


9

1.2 Gom cụm trong khai phá dữ liệu
1.2.1 Khái niệm và mục tiêu của gom cụm dữ liệu
1.2.1.1 Gom cụm dữ liệu:
Gom cụm dữ liệu là một kỹ thuật trong khai phá dữ liệu nhằm tìm kiếm, phát
hiện các cụm, các mẫu dữ liệu tự nhiên tiềm ẩn và quan trọng trong tập dữ liệu lớn
để từ đó cung cấp thông tin, tri thức cho việc ra quyết định. [1]
Gom cụm dữ liệu là sự phân chia một cơ sở dữ liệu lớn thành các nhóm dữ
liệu với trong đó các đối tượng tương tự như nhau. Trong mỗi nhóm, một số chi
tiết có thể không quan tâm đến để đổi lấy dữ liệu đơn giản hóa. Hay ta có thể hiểu

“Gom cụm dữ liệu là quy trình tổ chức các đối tượng thành từng nhóm mà các đối
tượng ở mỗi nhóm đều tương tự nhau theo một tính chất nào đó, những đối tượng
không tương tự tính chất sẽ ở nhóm khác”.
Gom cụm dữ liệu là quy trình nhóm một tập các đối tượng tương tự nhau
trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương
đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng. Gom cụm
dữ liệu là một ví dụ của phương pháp học không có thầy. Không giống như phân
lớp dữ liệu, gom cụm dữ liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu
huấn luyện. Vì thế, có thể coi gom cụm dữ liệu là một cách học bằng quan sát,
trong khi phân lớp dữ liệu là học bằng ví dụ . . . Ngoài ra gom cụm dữ liệu còn có
thể được sử dụng như một bước tiền xử lí cho các thuật toán khai phá dữ liệu khác
như là phân loại và mô tả đặc điểm, có tác dụng trong việc phát hiện ra các cụm.
[2]
Như vậy, gom cụm dữ liệu là quy trình phân chia một tập dữ liệu ban đầu
thành các cụm dữ liệu sao cho các đối tượng trong một cụm “tương tự” với nhau
và các đối tượng trong các cụm khác nhau sẽ “ không tương tự ” với nhau. Số các
cụm dữ liệu được phân ở đây có thể được xác định trước theo kinh nghiệm hoặc có
thể được tự động xác định.
Ví dụ đơn giản như sau:


10

Hình 1.2 Gom cụm dữ liệu dựa trên khoảng cách
Trong hình 1.2 này, chúng ta dễ dàng xác định được 3 cụm dựa vào các dữ
liệu đã cho; các tiêu chí “tương tự” để gom cụm trong trường hợp này là khoảng
cách: hai hoặc nhiều đối tượng thuộc nhóm của chúng được “đóng gói” theo một
khoảng cách nhất định. Điều này được gọi là gom cụm dựa trên khoảng cách.
Một kiểu khác của gom cụm dữ liệu là gom cụm dữ liệu dựa vào khái niệm:
hai hay nhiều đối tượng thuộc cùng nhóm nếu có một định nghĩa khái niệm chung

cho tất cả các đối tượng trong đó. Nói cách khác, đối tượng của nhóm phải phù hợp
với nhau theo miêu tả các khái niệm đã được định nghĩa, không phải theo những
biện pháp đơn giản tương tự.
1.2.1.2 Các mục tiêu của gom cụm dữ liệu
Mục tiêu của gom cụm dữ liệu là để xác định các nhóm nội tại bên trong một
bộ dữ liệu không có nhãn. Nhưng để có thể quyết định được cái gì tạo thành một
cụm tốt. Nhưng làm thế nào để quyết định cái gì đã tạo nên một gom cụm dữ liệu
tốt ? Nó có thể được hiển thị rằng không có tiêu chuẩn tuyệt đối “tốt nhất” mà sẽ là
độc lập với mục đích cuối cùng của gom cụm dữ liệu. Do đó, mà người sử dụng
phải cung cấp tiêu chuẩn, theo cách như vậy mà kết quả của gom cụm dữ liệu sẽ
phù hợp với nhu cầu của họ cần.
Ví dụ hình 1.3 chúng ta có thể quan tâm đến việc tìm kiếm đối tượng đại diện
cho các nhóm đồng nhất trong “các cụm tự nhiên” và mô tả thuộc tính không biết
của chúng trong việc tìm kiếm các nhóm hữu ích và phù hợp hoặc trong việc tìm
kiếm các đối tượng bất thường trong dữ liệu (cá biệt, ngoại lệ, nhiễu)


11

Hình 1.3 Ví dụ gom cụm văn bản theo chủ đề
Một vấn đề thường gặp trong gom cụm là hầu hết các dữ liệu cần cho gom
cụm đều có chứa dữ liệu nhiễu do quy trình thu thập thiếu chính xác hoặc thiếu đầy
đủ, vì vậy cần phải xây dựng chiến lược cho bước tiền xử lí dữ liệu nhằm khắc phục
hoặc loại bỏ nhiễu trước khi chuyển sang giai đoạn phân tích cụm dữ liệu. Nhiễu ở
đây được hiểu là các đối tượng dữ liệu không chính xác, không tường minh hoặc là
các đối tượng dữ liệu khuyết thiếu thông tin về một số thuộc tính...
Một trong các kỹ thuật xử lí nhiễu phổ biến là việc thay thế giá trị các thuộc
tính của đối tượng nhiễu bằng giá trị thuộc tính tương ứng. Ngoài ra, dò tìm đối
tượng ngoại lai cũng là một trong những hướng nghiên cứu quan trọng trong gom
cụm, chức năng của nó là xác định một nhóm nhỏ các đối tượng dữ liệu khác

thường so với các dữ liệu trong cơ sở dữ liệu, tức là các đối tượng dữ liệu không
tuân theo các hành vi hoặc mô hình dữ liệu nhằm tránh sự ảnh hưởng của chúng tới
quy trình và kết quả của gom cụm.
Theo các nghiên cứu đến thời điểm hiện nay thì chưa có một phương pháp
gom cụm tổng quát nào có thể giải quyết trọn vẹn cho tất cả các dạng cấu trúc cơ sở
dữ liệu. Hơn nữa, đối với các phương pháp gom cụm cần có cách thức biểu diễn cấu


12

trúc của cơ sở dữ liệu, với mỗi cách thức biểu diễn khác nhau sẽ có tương ứng một
thuật toán gom cụm phù hợp. Vì vậy gom cụm dữ liệu vẫn đang là một vấn đề khó
và mở, vì phải giải quyết nhiều vấn đề cơ bản một cách trọn vẹn và phù hợp với
nhiều dạng dữ liệu khác nhau, đặc biệt là đối với dữ liệu hỗn hợp đang ngày càng
tăng trong các hệ quản trị dữ liệu và đây cũng là một trong những thách thức lớn
trong lĩnh vực khai phá dữ liệu.

1.2.2 Các ứng dụng của gom cụm dữ liệu
Gom cụm dữ liệu có thể ứng dụng trong nhiều lĩnh vực như [8]:
- Thương mại: tìm kiếm nhóm các khách hàng quan trọng dựa vào các thuộc
tính đặc trưng tương đồng và những đặc tả của họ trong các bản ghi mua bán của cơ
sở dữ liệu;
- Sinh học: phân loại động, thực vật qua các chức năng gen tương đồng của
chúng;
- Thư viện : phân loại các cụm sách có nội dung và ý nghĩa tương đồng nhau
để cung cấp cho độc giả, cũng như đặt hàng với nhà cung cấp;
- Bảo hiểm : nhận dạng nhóm tham gia bảo hiểm có chi phí yêu cầu bồi
thường trung bình cao, xác định gian lận trong bảo hiểm thông qua các mẫu cá biệt;
- Quy hoạch đô thị : nhận dạng các nhóm nhà theo kiểu, vị trí địa lí, giá trị ...
nhằm cung cấp thông tin cho quy hoạch đô thị;

- Nghiên cứu địa chấn : gom cụm để theo dõi các tâm động đất nhằm cung cấp
thông tin cho việc nhận dạng các vùng nguy hiểm;
- Khai phá web: tài liệu phân loại, phân nhóm dữ liệu weblog để khám phá các
nhóm về các hình thức tiếp cận tương tự trợ giúp cho việc khai phá thông tin từ dữ
liệu.
Luận văn này tập trung xây dựng ứng dụng gom cụm tài liệu có nội dung
tương tự tại trung tâm thông tin thư viện Đại học Đồng Nai.


13

CHƯƠNG 2: GOM CỤM VĂN BẢN
2.1 Tổng quan bài toán
Hiện nay con người đang tràn ngập trong vô vàn tài liệu, nhiều khi tài liệu
trùng lặp một số nội dung tương tự hoặc tài liệu bị sao chép, tài liệu bị làm giả…
Vấn đề đặt ra làm sao xác định được độ giống nhau hay tương tự nhau về nội dung
giữa các tài liệu văn bản để người dùng phân loại và đánh giá được giá trị tài liệu
cần tìm.
Thực tế đã có một số nghiên cứu đề xuất các phương pháp khác nhau đề xác định
xem một đoạn văn bản của một tài liệu có nằm trong một tài liệu nào khác không.
Các phương pháp này chủ yếu dựa trên tìm kiếm và so khớp chuỗi, tuy nhiên so
khớp chuỗi chỉ có hiệu quả nếu việc sao chép là “nguyên văn”. Việc sao chép có
sửa đổi như thay thế một số từ bằng từ đồng nghĩa hay thay đổi thứ tự các câu trong
văn bản cần các phương pháp khác hiệu quả hơn.
Trong xử lý ngôn ngữ, phân loại nội dung tài liệu văn bản trong những năm
gần đây là lĩnh vực đang được quan tâm của cộng đồng khoa học trong và ngoài
nước. Các công trình liên quan đến vấn đề xử lý ngôn ngữ tự nhiên và phân loại dữ
liệu đã được công bố như:
Ngoài nước:
- Đề tài “Active Learning for Text Classification” [9] tạm dịch “Hoạt động

huấn luyện để phân loại văn bản” của tác giả Rong Hu, đang làm việc tại
School of Computing, Dublin Institute of Technology.
Đề tài thực hiện đưa các thông tin vào học máy dùng các thuật toán gom cụm
để tạo ra bộ dữ liệu mẫu. Đề tài tập trung vào việc tối ưu cho việc học máy tích cực.
- Bài báo “Text Categorization with Support Vector Machines:
Learning with Many Relevant Features” [10] tạm dịch “Phân loại văn bản
dùng Support Vector Manchines: Huấn luyện với nhiều tính năng liên quan” của tác
giả Thorsten Joachims, trường Đại học Dortmund, Đức.


14

Bài báo trình bày về việc sử dụng và cải tiến kỹ thuật Support Vector
Machines (SVM) cho việc học máy có hiệu quả trong việc phân loại văn bản..
- Bài báo “Text Categorization” [11] của tác giả Fabrizio Sebastiani, trường
Đại học Padova, Ý.
Bài báo trình bày 3 giai đoạn trong 1 hệ thống phân loại văn bản: lập chỉ mục
tài liệu văn bản dùng LSI, học tập phân loại văn bản dùng SVM và Boosting, và
đánh giá phân loại văn bản.
- Bài báo “Text Categorization Based on Regulazired Linear Classification
Methods” [12] tạm dịch “Phân loại văn bản dựa trên phương pháp phân loại
tuyến tính chính quy” của nhóm tác giả Tong Zhang và Franks J.
Oles, Mathematical Sciences Department, IBM T.J. Watson Research
Center, NewYork.
Bài báo trình bày phương pháp phân loại văn bản tuyến tính dựa vào các kỹ
thuật Linear Least Squares Fit, Logistic Regression, SVM.
Hầu hết các đề tài trên đều tập trung xử lý cho phần học máy là chính.
Mặt khác, các đề tài dành cho xử lý ngôn ngữ tiếng nước ngoài, cụ thể là
tiếng Anh. Để áp dụng cho các tài liệu văn bản bằng tiếng Việt thì không có được
độ chính xác như mong muốn.

Trong nước có những công trình như:
- Bài báo “Social-aware Document Similarity Compution for
Recommender System” [13] của tác giả Tran Vu Pham, Le Nguyen Thach,
Faculty of Computer Science and Engineering, Ho Chi Minh City University of
Technology, Ho Chi Minh City, Vietnam.


×