You are on page 1of 61

TIỂU LUẬN:

Phân loại văn bản tiếng Việt bằng

phương pháp phân tích cú pháp


LỜI GIỚI THIỆU

Ngày nay, cơ sở dữ liệu đã trở thành một phần không thể thiếu của xã hội loài người.
Trong kỉ nguyên thông tin này, các thông tin được lưu trữ và xử lý hiệu quả hầu hết
là thông qua cơ sở dữ liệu. Sau gần 50 năm phát triển, cơ sở dữ liệu đã có những
bước tiến vô cùng quan trọng trong lịch sử Công nghệ thông tin. Từ mô hình Cơ sở
dữ liệu quan hệ do E.Codd đề xuất từ những năm 60, các ứng dụng công nghệ thông
tin đã thực sự biến việc lưu trữ dữ liệu trở thành lưu trữ thông tin thông qua các công
cụ quản lý và xử lý cơ sở dữ liệu. Ngày nay, nhu cầu lưu trữ và xử lý thông tin có
mặt ở khắp mọi nơi. Ở bất cứ một tổ chức nào, với bất kỳ một mô hình hay quy mô
nào cũng đều có những nhu cầu về lưu trữ và khai thác thông tin. Khái niệm thông tin
ở đây bao gồm cả thông tin về nội tại của tổ chức và thông tin về môi trường và tổ
chức hoạt động.

Việc nghiên cứu lý thuyết về cơ sở dữ liêu đã trở thành một ngành khoa học ứng
dụng. Do những tiến bộ vượt bậc trong nghiên cứu lý thuyết cũng như cài đặt thực tế,
các hệ quản trị cơ sở dữ liệu đã trở thành nền tảng, là phần cốt yếu trong hoạt động
của các tổ chức. Nhờ chúng mà các tổ chức hoạt động hiệu quả hơn. Việc ứng dụng
cơ sở dữ liệu đã giúp làm giảm rất nhiều công sức lao động của con người và nhờ đó
hiệu suất lao động của họ cao hơn. Hệ quản trị cơ sở dữ liệu ngày nay không còn đơn
thuần chỉ là một cơ cấu cho phép lưu trữ số liệu mà còn kèm theo đó là các công cụ,
tiện ích hay các phương pháp luận để chuyển đổi số liệu thành thông tin. Tập tất cả
các công cụ do người dùng phát triển hoặc do các nhà cung cấp phần mềm tung ra để
phục vụ cho mục đích hoạt động của tổ chức, được tối ưu theo những yêu cầu nghiệp
vụ của tổ chức được gọi là các ứng dụng hỗ trợ xử lý tác nghiệp. Cao hơn nữa, khi
các nhu cầu sử dụng thông tin ở mức cao cấp hơn để hỗ trợ các nhu cầu phân tích của
các nhà lãnh đạo, các nhà lập chiến lược trong một tổ chức, một loại ứng dụng mới ra
đời phục vụ cho các mục đích này với tên gọi “hệ phân tích và xử lý trực tuyến”. Ở
các ứng dụng này, thông tin được lưu trữ, xử lý và kết xuất theo các mục đích cụ thể
dưới dạng hướng chủ đề. Nhờ các thông tin ở dạng này mà các phân tích, các nhà
lãnh có thể đưa ra các quyết định hoạt động một cách hiệu quả nhất.

Khi các mô hình dữ liệu phát triển ở mức độ cao hơn, các thông tin lưu trữ dưới dạng
dữ liệu phong phú đa dạng hơn, người ta nhận ra còn rất nhiều tri thức còn tiềm ẩn
trong dữ liệu mà các mức phân tích trước đó không phát hiện ra. Lý do của vấn đề
này là các phân tích trước đó chỉ mới hướng mục đích cụ thể của con người. Các mục
đích này là cố định và các phân tích này hoàn toàn do con người đưa ra trong hoàn
cảnh cụ thể. Khi các thông tin phản ánh môi trường thay đổi thì con người không
nhận ra để điều chỉnh các phân tích và đưa ra các phân tích mới. Các tri thức đó có
thể là hướng kinh doanh, các dự báo thị trường, cũng có thể là mối quan hệ giữa các
trường hay nội dung dữ liệu... mà con người không hình dung ra được khi tiến hành
mô hình hoá các hệ thống. Vì thế, ngành nghiên cứu về Phát hiện tri thức trong cơ sở
dữ liệu (Knowledge Discovery in Database) ra đời với bài toán Khai phá dữ liệu
(DataMining) làm trung tâm nghiên cứu. Các tư tưởng nghiên cứu và các thuật toán
về Trí tuệ nhân tạo và Hệ chuyên gia đã được áp dụng và thu được những kết quả rất
quan trọng như: cây quyết định, mạng nơ-ron...

Hầu hết các thuật toán nghiên cứu cho DataMining là tập trung trên các nguồn số liệu
có cấu trúc (structured data). Nhưng phần lớn thông tin mà chúng ta lưu trữ và trao
đổi hằng ngày lại được lưu trữ dưới các dạng dữ liệu bán cấu trúc (semi-structured
data) hoặc phi cấu trúc (non-structured data). Ví dụ như trong các nhà xuất bản, hệ
thống các trang web trên một website, tập các công văn, giấy tờ, báo cáo, thư tín điện
tử trong một công ty. Thậm chí ta có thể nhận thấy rằng trong một hệ quản trị cơ sở
dữ liệu (nơi mà dữ liệu được lưu trữ có cấu trúc) thì dữ liệu kiểu text vẫn chiếm một
tỷ lệ cao. Do đó một vấn đề đặt ra là làm thế nào để có thể tìm kiếm và khai thác tri
thức từ nguồn dữ liệu như vậy. Các kỹ thuật để giải quyết vấn đề này được gọi là kỹ
thuật "TextMining" hay Khai phá dữ liệu văn bản. Bài toán Khai phá dữ liệu văn bản
không chỉ tập trung vào một hay một nhóm các thông tin được lưu trữ dưới dạng văn
bản, vấn đề đặt ra là làm thế nào có thể Khai phá được các thông tin theo lịch sử, từ
quá khứ hướng dự đoán tương lai. Những tri thức tưởng trừng như vô ích trong quá
khứ nhưng có thể được phát hiện để sử dụng cho các mục đích sau này.

Một số bài toán quan trọng trong Khai phá dữ liệu văn bản hay được xét đến như là
các bài toán “Text Classification”, “Text Sumarization”, và “Text Categorization”.

Trên thế giới đã có rất nhiều thành công trong đề tài phân lớp văn bản như các nghiên
cứu của hãng IBM, trong các phòng thí nghiệm ở MIT hay ở các viện nghiên cứu của
các trường đại học ở Mỹ, Pháp, Nhật Bản, Canada. Tuy nhiên, các thành công đó chủ
yếu tập trung vào vấn đề nghiên cứu về các văn bản tiếng Anh, tiếng Pháp. Những
ngôn ngữ này là các ngôn ngữ tương đối thuận lợi khi xử lý.

Hiện nay, chưa có một công cụ nào được coi là hiệu quả trong lĩnh vực khai phá văn
bản tiếng Việt. Nền Công nghệ thông tin của nước ta được phát triển hết sức mạnh
mẽ. Do nhu cầu hội nhập, nhu cầu phát triển kinh tế, văn hoá, Xã hội ngày càng tăng,
các thông tin được xử lý thông qua văn bản điện tử, qua web, qua email phát triển với
tốc độ chóng mặt. Từ đó, nhu cầu nghiên cứu và xây dựng các công cụ Khai phá dữ
liệu văn bản tiếng Việt đang được hết sức coi trọng.

Trong đề tài thực tập này, em xin trình bày các nghiên cứu tổng quan của em về: Text
Mining và các ứng dụng của nó về thu thập thông tin từ dữ liệu văn bản và phân loại
dữ liệu văn bản. Mục đích của đề tài là hướng tới phát triển các công cụ phân loại
văn bản tiếng Việt ở các nghiên cứu sau trong đề tài luận văn tốt nghiệp.
I. Đặt vấn đề

Như chúng ta đã biết, hầu hết các thông tin được trao đổi hiện nay nằm dưới dạng tài
liệu văn bản. Các thông tin đó có thể là các bài báo, các tài liệu kinh doanh, các thông
tin kinh tế, các bài nghiên cứu khoa học. Dù áp dụng Cơ sở dữ liệu vào trong hoạt
động của tổ chức là rất phổ biến và đem lại nhiều lợi ích khi lưu trữ và xử lý, nhưng
ta không thể quên được rằng còn rất nhiều dạng thông tin khác được lưu trữ dưới
dạng văn bản. Thậm chí ngay cả trong các thông tin được lưu trong các cơ sở dữ liệu
thì phần lớn trong số chúng cũng được tổ chức dưới dạng văn bản. Hiện nay, các tổ
chức đã áp dụng công nghệ thông tin vào quản lý hệ thống công văn giấy tờ, ví dụ
các hệ thống sử dụng Lotus Node. Tuy nhiên đó chỉ thực sự là cách quản lý luồng dữ
liệu văn bản, cung cấp các công cụ kho chứa, còn dữ liệu vẫn thực sự nằm dưới dạng
văn bản. Chúng ta chưa có các giải thuật phân loại, tìm kiếm tài liệu, các công cụ
trích lọc thông tin nhằm mục đích thống kê, phát hiện tri thức, ra quyết định trực tiếp
trên các nguồn dữ liệu kiểu này.

Với thực tế đó, vấn đề đặt ra là làm thế nào chúng ta có thể khai thác được những
thông tin hữu ích từ các nguồn tài liệu văn bản nói chung. Các nguồn dữ liệu này
phải được xử lý như thế nào để người dùng có thể có những công cụ tự động hoá trợ
giúp trong việc phát hiện tri thức và khai thác thông tin. Rõ ràng, chúng ta phải hiểu
rõ bản chất của dữ liệu văn bản, hiểu rõ các đặc trưng của các dữ liệu loại này để có
thể có được những phương pháp luận cần thiết.

Việc khai thác thông tin từ các nguồn dữ liệu văn bản trong các tổ chức Việt Nam
chắc chắn phải dựa vào những kết quả nghiên cứu về văn bản nói chung, về dữ liệu
văn bản và các kỹ thuật xử lý đã được phát triển trên thế giới. Tuy nhiên, những văn
bản tiếng Việt lại có những đặc trưng riêng của nó. Ta có thể nhận thấy được ngay sự
khác biệt về mặt kí pháp, cú pháp và ngữ pháp tiếng Việt trong các văn bản so với
các ngôn ngữ phổ biến trên thế giới như tiếng Anh, tiếng Pháp. Vậy thì những đặc
trưng này ảnh hưởng thế nào đến các kỹ thuật khai phá dữ liệu văn bản, ta cần phải
có những ký thuật mới nào để có thể tận dụng được những ưu thế của tiếng Việt cũng
như giải quyết được những phức tạp trong tiếng Việt.

Để trả lời được những câu hỏi này, đồ án sẽ đi từ những bước nghiên cứu về Khai
phá dữ liệu văn bản, tìm hiểu những đặc trưng của tiếng Việt, từ đó đề ra phương
hướng giúp giải quyết bài toán phân loại văn bản tiếng Việt phức tạp ở các nghiên
cứu cao hơn. Các kết quả của nghiên cứu trong đề tài thực tập này sẽ là nhưng bước
tiến đầu tiên cho luận văn tốt nghiệp của em với đề tài “Phân loại văn bản tiếng Việt
bằng phương pháp phân tích cú pháp.”
II. Cơ sở lý thuyết

1. Khái niệm Text Mining

a. Khai phá dữ liệu (Data Mining)

Việc sử dụng cơ sở dữ liệu vào hoạt động của một tổ chức đã được phát triển trong
vòng 60 năm trở lại đây. Với dữ liệu được thu thập trong suốt quá trình hoạt động
của một tổ chức, một nhu cầu được đặt ra là tìm kiếm và khai thác tri thức từ những
dữ liệu đó. Đó chính là xuất phát điểm của bài toán Phát hiện tri thức từ cơ sở dữ
liệu. Người ta nhận thấy rằng có rất nhiều tri thức mà chúng ta không lường trước
đang còn tiềm ẩn trong dữ liệu, nhiệm vụ của chúng ta là phát hiện, khám phá các tri
thức đó, phục vụ cho những nhu cầu sử dụng thông tin cao hơn, ví dụ như trong các
hệ chuyên gia hay hệ hỗ trợ quyết định.

Khai phá dữ liệu là giai đoạn chủ yếu của quá trình Phát hiện tri thức từ cơ sở dữ
liệu. Quá trình khai phá tri thức được thực hiện sau các quá trình thu thập và tinh lọc
dữ liệu, có nghĩa là chỉ tìm các mẫu tri thức (pattern) có ý nghĩa trên tập dữ liệu có hy
vọng chứ không phải là trên toàn bộ CSDL như các phương pháp thống kê trước đây.

Vì vậy khai phá dữ liệu bao gồm việc thử tìm mô hình phù hợp với dữ liệu và tìm
kiếm các mẫu hình tri thức từ dữ liệu theo mô hình đó. Mặc dù mẫu hình có thể
tìm được từ bất kì một CSDL nào nhưng chỉ những mẫu phù hợp với mục đích tìm
kiếm mới được gọi là tri thức. Ta sẽ có những hàm số để đánh giá các tiêu chí mẫu
như mới, có lợi, đáng được xem xét.

Độ mới của mẫu hình phụ thuộc vào khung phạm vi quy chiếu, có thể đối với hệ
thống hoặc đối với người dùng. Ví dụ với dữ liệu của một công ty, quá trình Khai phá
dữ liệu tìm ra được một luật như Lợi tức thu được giảm vào mùa thu ở vùng phía
Bắc, đối với hệ thống thì rất mới, trước kia chưa hề có nhưng bất cứ một cán bộ lập
kế hoạch nào cũng nhận ra được điều này qua các báo cáo tài chính.
Tính hữu dụng của mẫu có thể đo được qua sự liên quan đến mục đích tìm kiếm. Với
một cán bộ phụ trách bảo trì máy tính ở công ty thì luật trên không có giá trị, mặc dù
là mới đối với anh ta.

Có thể qua công đoạn khai phá tri thức có rất nhiều mẫu được lấy ra nhưng không
phải mẫu nào cũng có giá trị, có thể là mới, hữu ích nhưng lại tầm thường, đặc biệt là
khi áp dụng các kỹ thuật dựa trên thống kê. Do đó luôn phải có các tiêu chí và các
hàm đánh các mẫu đáng xem xét, không tầm thường.

Tóm lại, Khai phá dữ liệu thực ra có thể coi là một quá trình xác định mẫu từ các
Datawarehouse, sử dụng các kỹ thuật sẵn có như học máy, nhận dạng, thống kê, phân
oại... và các kỹ thuật được phát triển bởi ngành nghiên cứu trí tuệ nhân tạo như Mạng
nơ-ron nhân tạo (neutral network), các thuật toán di truyền (generic algorithm), quy
nạp luật rule reduction)...

Ta có thể xét đến một số bài toán chính đối với nghiên cứu về Khai phá dữ liệu

- Bài toán phân lớp (classification): Tìm một ánh xạ (phân loại) từ một
mẫu dữ liệu vào một trong các lớp cho trước.

- Bài toán hồi quy (regression): Tìm một ánh xạ hồi quy từ một mẫu dữ
liệu vào một biến dự đoán có giá trị thực

- Bài toán lập nhóm ( clustering): Là việc mô tả chung để tìm ra các tập
xác định hữu hạn các nhóm hay các loại để mô tả dữ liệu.

- Bài toán tổng kết (summarization): Là việc đi tìm kiếm một mô tả


chung tóm tắt cho một tập con dữ liệu.

b. Khai phá dữ liệu văn bản (Text Mining)

Khai phá dữ liệu văn bản hay phát hiện tri thức từ các cơ sở dữ liệu văn bản (textual
databases) đề cập đến tiến trình trích lọc các mẫu hình thông tin (pattern) hay tri thức
(knowledge) đáng quan tâm hoặc có giá trị (non-trivial) từ các tài liệu văn bản phi
cấu trúc. Quá trình này có thể được coi là việc mở rộng kỹ thuật Khai phá dữ liệu
truyền thống, vì như ch úng ta đã thấy (đã được đề cập ở trên) kỹ thuật Khai phá dữ
liệu truyền thống (DataMining) hướng tới việc phát hiện tri thức từ các cơ sở dữ liệu
có cấu trúc.

Thông tin được lưu trữ dưới dạng nguyên sơ nhất chính là văn bản. Thậm chí ta có
thể thấy rằng dữ liệu tồn tại dưới dạng văn bản còn có khối lượng lớn hơn rất nhiều
so với các dữ liệu có cấu trúc khác. Thực tế, những nghiên cứu gần đây đã cho thấy
rằng có đến 80% thông tin của một tổ chức nằm dưới dạng văn bản. Đó có thể là các
công văn giấy tờ, các biểu mẫu điều tra, các phiếu đặt hàng, các yêu cầu khiếu nại,
giải quyết quyền lợi, các thư tín điện tử (email), các thông tin trên các website thương
mại... Khi các nghiên cứu về cơ sở dữ liệu ra đời vào những năm 60, người ta tưởng
rằng có thể lưu mọi loại thông tin dưới dạng dữ liệu có cấu trúc. Nhưng trên thực tế
sau gần 50 năm phát triển, người ta vẫn dùng các hệ thống lưu trữ ở dạng văn bản và
thậm trí còn có xu hướng dùng thường xuyên hơn. Từ đó người ta có thể tin rằng các
sản phẩm Khai phá dữ liệu văn bản có thể có giá trị thương mại cao hơn rất nhiều lần
so với các sản phẩm Khai phá dữ liệu truyền thống khác. Tuy nhiên ta cũng có thể
thấy ngay rằng các kỹ thuật Khai phá dữ liệu văn bản phức tạp hơn nhiều so với các
kỹ thuật Khai phá dữ liệu truyền thống bởi vì phải thực hiện trên dữ liệu văn bản vốn
đã ở dạng phi cấu trúc và có tính mờ (fuzzy).

Một ví dụ cho bài toán khai phá dữ liệu văn bản, khi phân tích các bài báo nghiên
cứu khoa học, ta có các thông tin sau:

- “stress là một bệnh liên quan đến đau đầu”

- “stress xuất hiện có thể do thiếu Magê trong máu”

- “Canxi có thể ngăn cản một số chứng đau đầu”

- “Magê là một nguyên tố điều hoà canxi tự nhiên trong máu”

Sau khi phân tích các thông tin quan trọng này, hệ thống cần phải đưa ra các suy luân
cụ thể mang tính cách mạng:

- “Thiếu hụt Magê có thể gây ra một số bệnh đau đầu”


Rõ ràng ở đây có sự phân tích suy luận ở mức độ cao. Để đạt được khà năng như vậy
cần phải có những công trình nghiên cứu về trí tuệ nhân tạo tiên tiến hơn.

Bài toán Khai phá dữ liệu văn bản là một bài toán nghiên cứu đa lĩnh vực, bao gồm
rất nhiều kỹ thuật cũng như các hướng nghiên cứu khác nhau: thu thập thông tin
(information retrieval), phân tích văn bản (text analysis), chiết xuất thông tin
(information extraction), lập đoạn (clustering), phân loại văn bản (categorization),
hiển thị trực quan (visualization), công nghệ cơ sở dữ liệu, học máy (machine
learning) và bản thân các kỹ thuật Khai phá dữ liệu.

Trong đề tài này em chủ yếu đề cập đến hai bài toán cụ thể, đó là bài toán phân loại
dữ liệu văn bản (Text categorization) và bài toán thu thập thông tin (information
retrieval). Các nghiên cứu mới chỉ dừng lại ở bước tìm hiểu, khảo sát, so sánh là tiền
đề cho các nghiên cứu cụ thể sau này mà mục đích trước mắt là phục vụ cho luận văn
tốt nghiệp.

Với một hệ thống Khai phá văn bản thường bao gồm ba bước chính:

- Bước tiền xử lý: Ở bước này, hệ thống sẽ chuyển văn bản từ


dạng phi cấu trúc về dạng có cấu trúc. Ví dụ, với văn bản Tổ chức này
to lắm, hệ thống sẽ cố gắng phân tích thành Tổ chức|này|to|lắm. Các từ
được lưu riêng rẽ một cách có cấu trúc để tiện cho việc xử lý.

- Loại bỏ các thông tin không cần thiết. Ở bước này, bộ phân tích
tìm cách loại bỏ các thông tin vô ích từ văn bản. Bước này phụ thuộc
rất nhiều vào ngôn ngữ đang được phân tích và kỹ thuật sẽ được dùng
để phân tích ỏ bước tiếp theo. Ví dụ, nếu kỹ thuật phân tích văn bản chỉ
dựa vào xác xuất xuất hiện từ khoá, khi đó ta có thể loại bỏ các từ phụ
như: nếu, thì, thế nhưng, như vậy…

- Khai phá dữ liệu đã được giản lược với các kỹ thuật khai phá dữ
liệu (data mining) truyền thống.
Có rất nhiều kỹ thuật và phương pháp tốt được sử dụng cho Text Mining để tìm ra
các kiến trúc mới, các mẫu mới, và các liên kết mới. Các bước tiền xử lý là các kỹ
thuật rất phức tạp nhằm phân tích một phân lớp đặc biệt thành các thuộc tính đặc biệt,
sau đó tiến hành áp dụng các phương pháp khai phá dữ liệu kinh điển tức là phân tích
thống kê và phân tích các liên kết. Các bước còn lại sẽ khai phá cả văn bản đầy đủ từ
tập các văn bản, ví dụ như phân lớp văn bản.

Mục tiêu cuối cùng của Text Mining thường là đường lối hiệu quả, hoàn thiện, và
đặc trưng để trình diễn và tìm kiếm các tập hợp rộng lớn của các văn bản. Do đó, các
kỹ thuật chính của Text Mining có thể được phân phân ra thành các nhiệm vụ mà
chúng thực hiện khi xử lý khai phá văn bản: loại thông tin mà chúng có thể trích ra và
loại phân tích được thực hiện bởi chúng.

Các loại thông tin được trích ra có thể là:

- Các nhãn: Giả sử, được liên kết với mỗi văn bản là tập các nhãn
các thao tác khai phá tri thức được thực hiện trên các nhãn của mỗi văn
bản. Nói chung, có thể giả sử rằng các nhãn tương ứng với các từ khoá,
mỗi một từ khoá có quan hệ với một chủ đề cụ thể nào đó.

- Các từ: Ở đây giả sử rằng một văn bản được gán nhãn với từng
từ xuất hiện trong văn bản đó.

- Các thuật ngữ: Ở đây với mỗi văn bản tìm thấy các chuỗi từ,
chuỗi từ đó thuộc về một lĩnh vực nào đó và do đó việc tìm khai phá
văn bản được thực hiện trên các khai niệm được gán nhãn cho mỗi văn
bản. Ưu điểm của phương pháp này là các thuật ngữ được tách ra ít và
có xu hướng tập trung vào các thông tin quan trọng của văn bản hơn hai
phương pháp trước đây.

Các loại kết hợp:

- Kết hợp thông thường: Một số thuật toán trước đây giả sử rằng
dữ liệu nguyên mẫu được tạo lập chú dân để trợ giúp cho các kỹ thuật
xử lý ngôn ngữ tự nhiên. Các cấu trúc có chú dẫn trên thực tế có thể
được sử dụng như một cơ sở cho việc xử lý khai phá tri thức.

- Các phân cấp thuật ngữ: Ở đây mỗi văn bản được đính với các
thuật ngữ lấy ra từ một phân cấp các thuật ngữ. Sau đó, một hệ thống sẽ
phân tích sự phân bố nội dung của các thuật ngữ hậu duệ của từng thuật
ngữ liện quan đến các hậu duệ khác do các phân bố liên kết và các phép
đo khác nhằm khai thác các quan hệ mới giữa chúng. Loại liên kết này
có thể cũng được sử dụng để lọc và tổng hợp chủ đề của các tin tức.

- Khai phá văn bản đầy đủ: Không giống như loại liên kết thông
thường thực hiện thao tác mù quáng trên các chú dẫn của văn bản, kỹ
thuật này sử dụng lợi thế của nội dụng nguyên mẫu của các văn bản.
Kỹ thuật này được gọi là “trích văn bản nguyên mẫu”.

2. Bài toán phân loại văn bản (Text categorization)

a. Khái niệm phân loại văn bản

Phân loại văn bản (Text categorization) là xử lý nhóm các tài liệu thành các lớp khác
nhau hay các phân nhóm (categories). Đây là một tác vụ phân lớp liên quan đến việc
ra quyết định xử lý. Với mỗi xử lý phân nhóm, khi đưa ra một tài liệu, một quyết
định được đưa ra nó có thuộc một lớp nào hay không. Nếu nó thuộc một phân lớp
nào đó thì phải chỉ ra phân lớp mà nó thuộc vào. Ví dụ, đưa ra một chủ đề về thể
thao, cần phải đưa ra quyết định rằng chủ đề đó thuộc các phân lớp cờ vua, quần vợtt,
cầu lông, bơi lội hay bất cứ một môn thể thao nào khác. Các hệ thống phân loại văn
bản thường làm việc với một thuật toán tự học (learning algorithm). Thuật toán đó
được cung cấp một tập mẫu để phục vụ cho việc dạy học. Tập mẫu này bao gồm một
tập các thực thể có gán nhãn được phân lớp trước có dạng (x, y) ở đó x là thực thể
được phân lớp, y là nhãn (hay phân lớp) được gán cho nó. Với cơ cấu cơ sở như vậy,
khi một thực thể được cung cấp cho hệ thống, nó sẽ cố gắng suy ra một hàm toán học
từ tập đào tạo mẫu và ánh xạ thực thể mới đó vào một phân lớp. Phân lớp văn bản là
bài toán hay và đang có những bước phát triển hết sức quan trọng mà nguyên nhân
chủ yếu do sự phát triển mạnh mẽ gần đây của các thông tin nguyên trực tuyến.

b. Các phương pháp phân loại văn bản

b.1. Sử dụng từ điển phân cấp chủ đề

Một phương pháp thống kê phân lớp văn bản được điều khiển bởi một từ điển chủ đề
có phân cấp được đề xuất. Phương pháp này sử dụng một từ điển với một cấu trúc
đơn giản. Từ điển này có thể dạy được dễ dàng trên một tập hợp tài liệu được phân
lớp bằng tay và có thể dịch được tự động sang nhiều ngôn ngữ khác nhau.

Chúng ta xem xét nhiệm vụ phân loại văn bản bởi chủ đề của tài liệu: ví dụ, một số
tài liệu về những động vật, và một số khác nói về vấn đề công nghiệp. Chúng ta giả
sử rằng danh sách chủ đề là lớn nhưng cố định. Giải thuật của chúng ta không thu
được những chủ đề từ thân của tài liệu nhưng thay vào đó, nó liên hệ tài liệu với một
trong những chủ đề được liệt kê trong từ điển hệ thống. Kết quả là phép đo (về phần
trăm) sự tương ứng của tài liệu với mỗi từngchủ đề có sẵn.

Có một vấn về xuất hiện là độ tối ưu, hay độ hợp lý, độ chi tiết cho phân loại như
vậy. Ví dụ, khi phân loại tin tức trên internet với một người đọc “bình thường”,
những phân loại như các loài động vật hoặc nghành công nghiệp thì khá phù hợp,
trong khi phân lớp các chủ đề về động vật học giống như một cuốn từ điển như vậy
sẽ đưa ra một câu trả lời chung chung rằng tất cả các chủ đề đó đều nói về động vật.
Hay nói cách khác, với một người đọc tin tức trên internet bình thường, thật không
thích hợp dùng để phân loại những tài liệu với những chủ đề chi tiết hơn như những
động vật có vú, động vật có xương sống, động vật thân nhiệt.

Trong bài nghiên cứu này, chúng ta sẽ bàn luận về cấu trúc của từ điển chủ đề, cách
chọn lựa và cách sử dụng các trọng số của các nút riêng lẻ trong phân cấp, và một số
khía thực tế về việc biên soạn điển chủ đề.

b.1.1. Giải thuật phân lớp và phân cấp chủ đề


Trong bài nghiên cứu của các tác giả Guzmán và Arenas vào năm 1997 và 1998, hai
ông đề xuất việc sử dụng một từ điển có phân cấp để xác định những đề tài chính của
một tài liệu [1]. Về mặt kỹ thuật, từ điển bao gồm hai phần: các nhóm từ khóa đại
diện cho các chủ đề riêng biệt, và một biểu diễn phân cấp của các chủ đề này.

Một nhóm từ khóa là một danh sách các từ hoặc các biểu thức liên quan đến tình
trạng tham chiếu bởi tên của chủ đề. Ví dụ, chủ đề tôn giáo liệt kê các từ như nhà thờ,
thầy tu, nến, kinh thánh, cầu nguyện, người hành hương,…Chú ý rằng những từ này
không được liên kết với đầu mục tôn giáo hay liên kết với nhau bởi bất kỳ quan hệ
ngữ nghĩa tiêu chuẩn nào như kiểu con, phần,…

Cây chủ đề được tổ chức thành một phân cấp, hay nói chung là tổ chức thành một
mạng (khi đó một số chủ đề có thể thuộc một vài nút của cây phân cấp).

Giải thuật tìm kiếm chủ đề trên từ điển cũng gồm có hai phần : tìm kiếm chủ đề đơn
(chủ đề lá) và sự truyền lan trọng số của chủ đề trên cây. Thực tế, nó trả lời, cho câu
hỏi sau: tới mức độ nào thì tài liệu này sẽ phù với chủ đề đã cho? Một câu hỏi như
vậy được trả lời cho mỗi chủ đề riêng biệt. Trong trường hợp đơn giản nhất, trọng số
của một chủ đề là số (tần suất) các từ tương ứng, trong danh sách từ, được tìm thấy
trong tài liệu [1].

Phần thứ hai của giải thuật có trách nhiệm lan truyền các tần suất tìm thấy trên cây
[1]. Với phần giải thuật này, chúng ta có thể chỉ ra rằng một tài liệu đề cập đến chủ
về những động vật có vú, những động vật thân mềm, những động vật giáp sát ở nút
lá, phù hợp với chủ đề về những động vật, các sinh vật sống và tự nhiên không ở nút
lá.

b.1.2. Sự phù hợp và sự phân biệt của các trọng số

Thay vì các danh sách từ đơn giản, một số trọng số có thể được sử dụng bởi giải thuật
để định nghĩa (1) phép đo định lượng sự phù hợp của các từ với các chủ đề và (2) đo
mức quan trọng của các nút của thuộc cây phân cấp [1].
Loại trọng số đầu tiên, chúng ta gọi là các trọng số sự phù hợp, có liên hệ với các liên
kết giữa các từ và các chủ đề và các liên kết giữa các nút trên cây. Ví dụ, nếu tài liệu
đề cập đến từ “bộ chế hòa khí” thì nó đang nói về ô tô. Làm sao phù hợp hoá từ “bộ
chế hòa khí” hoặc “bánh lái” cho những chủ đề về ô tô, độ mạnh trong các quan hệ
này như thế nào? Về trực giác, đóng góp của từ “bộ chế hòa khí” vào chủ đề ô tô lớn
hơn sự đóng góp của từ “bánh lái”; như vậy, mối liên kết giữa “bánh lái” và chủ đề
ô tô được gán một trọng số nhỏ hơn.

Có thể thấy rằng, trọng số w ik của một liên kết như vậy (giữa một từ k và một chủ đề
j, hay giữa một chủ đề k và chủ đề cha j của nó trên cây) có thể được định nghĩa như
độ phù hợp trung bình cho chủ đề của những tài liệu được đưa ra chứa từ này:
j k
r n i i
wkj iD
k
[1]. Ở đây phép tính tổng được thực hiện tất cả các tài liệu có sẵn D, ri j
n
iD
i

là phép đo sự phù hợp của tài liệu i với chủ đề j, và nik là số lần xuất hiện của từ hay
chủ đề k trong tài liệu i.

Không may, chúng ta không thành thạo bất cứ giải thuật đáng tin cậy nào để tìm ra
phép đo độ phù hợp ri j của các tài liệu cho các lĩnh vực một cách độc lập. Thay vào
đó, một phép đo như vậy được đánh giá bằng tay bởi chuyên gia, và sau đó hệ thống
được huấn luyện trên hợp các tài liệu. Các chuyên gia có thể phải thường xuyên gán
những trọng số thích hợp bằng tay cho các tài liệu.

Cả hai cách tiếp cận này yêu cầu rằng được làm băng tay. Để tránh điều đó, với một
phép toán gần đúng, với những đề tài đủ hẹp, có thể giả thiết rằng những văn bản trên
về chủ đề này gần như không bao giờ xuất hiện trong những văn bản thông thường.
1
Khi đó biểu thức của các trọng số có thể được đơn giản hóa: wkj  [1].
 nik
iD

Yêu cầu chính cho loại thứ hai của các trọng số - sự phân biệt các trọng số - là khả
năng phân biệt giữa chúng: một chủ đề cần phải tương ứng tới một tập con (đáng kể)
những tài liệu. Mặt khác, những chủ đề mà tương ứng với gần như tất cả các tài liệu
trong cơ sở dữ liệu thì chúng là vô ích vì chúng không cho phép đưa ra bất kỳ kết
luận phù hợp nào với các tài liệu tương ứng.

Như vậy, trọng số w j của một nút j trên cây có thể được đánh giá như độ biến đổi của
độ phù hợp wj chủ đề qua những tài liệu trong cơ sở dữ liệu. Một cách đơn giản để
tính toán một khả năng phân biệt là đo nó một cách rời rạc: w j   (ri j  M ) 2 , ở đó
iD

M   ri j / D là giá trị trung bình của ri j qua cơ sở dữ liệu hiện thời D, và ri j được
iD

xác định bởi giải thuật này mà không tính đến giá trị wj. Trong một yêu cầu chính xác
hơn, lý thuyết thông tin có thể được áp dụng cho phép tính các trọng số. Ở đây chúng
ta không bàn luận về ý tưởng này.

Với cách tiếp cận này, với một cơ sở dữ liệu sinh vật, trọng số của các chủ đề như
các động vật, các sinh vật sống, thiên nhiên sẽ thấp vì tất cả các tài liệu đề cập bằng
nhau về các chủ đề này. Mặt khác, do có sự pha trộn trong các tờ báo trọng số của
chúng sẽ cao, do nhiều tài liệu trong đó không tương ứng tới những chủ đề này,
nhưng vẫn góp phần đề cập đáng kể đến các chủ đề này.

b.2. Phương pháp cây quyết định (Decision tree)


lúa mì lúa mì

nông trại nông trại giạ giạ

thương nghiệp lúa mì lúa mì


xuất khẩu
thương nghiệp xuất khẩu

nông nghiệp lúa mì lúa mì lúa mì


nông nghiệp

lúa mì
tấn tấn

lúa mì lúa mì

Hình 1: Một ví dụ về cây quyết định


Phương pháp phân lớp văn bản Cây quyết định (decision tree - DT) được Mitchell
đưa ra vào năm 1996 [2]. Trên cây gồm các nút trong được gán nhãn bởi các thuật
ngữ, các nhánh cây chứa nút được gán nhãn bằng các trọng số của thuật ngữ tương
ứng đối với tài liệu mẫu, và các lá cây được gắn nhãn bởi các phân lớp. Một hệ thống
phân lớp như vậy sẽ phân loại một tài liệu dj bởi phép thử đệ quy các trọng số mà các

thuật ngữ được gán nhãn cho các nút trong với vec-tơ d j 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 dj. Đa số các phướng pháp phân loại như
vậy sử dụng biểu diễn văn bản ở dạng nhị phân, và như vậy các cây cũng được biểu
diễn dưới dạng nhị phân. Một ví dụ về cây quyết định được minh hoạ trong Hình 1.

Một phương pháp khả thi dùng để huấn luyện một cây quyết định phân loại ci nằm ở
chiến lược “chia và trị” [2]. Chiến lược này sẽ kiểm tra xem liệu tất cả các khái niệm

huấn luyện có cùng nhãn với nó (hoặc ci hoặc ci ); nếu không, lựa chọn một khái
niệm tk, phân chia cây thành các lớp tài liệu có cùng giá trị tk và chèn vào mỗi lớp
như vậy một cây con riêng biệt. Quá trình đệ quy lặp lại trên các cây con cho đến khi
mỗi lá của cây phát sinh chứa các khái niệm huấn luyên gán cho cùng phạm trù c i,
khi đó nó được chọn như là nhãn của lá đó. Bước quyết định là việc chọn thuật ngữ tk
ở đó sẽ xảy ra thao tác chia, một phương pháp lựa chọn là chọn theo lợi ích thông tin
hay entropi. Tuy nhiên, một cây "quá lớn lên" có thể bị sập, nếu như các nhánh cây
quá đặc biệt với dữ liệu huấn luyện.

Đa số các phướng pháp dạy cây quyết định như vậy bao gồm một phương pháp thêm
cây và một phương pháp xén bớt cây để loại bỏ những nhánh quá đặc biệt [2].

3. Bài toán thu thập thông tin (Information retrieval - IR)

a. Khái niệm thu thập thông tin

Thu thập thông tin (Information Retrieval) là một trong những bài toán khai phá dữ
liệu văn bản. Bài toán này chủ yếu tập trung vào việc tìm ra các tài liệu trong một tập
hợp các tài liệu có sẵn theo một điều kiện nào đó. Các điều kiện này có thể là một
truy vấn hay một văn bản.

Khi điều kiện đưa vào là một truy vấn, bài toán sẽ đưa ra các suy luận để tìm ra đặc
trưng của câu truy vấn đó, sau đó so sánh với các đặc trưng của các tài liệu có sẵn để
tìm ra các tài liệu phù hợp nhất với câu truy vấn đó. Trong bài toán này, mô hình của
bài toán gần với bài toán Search Engine. Tuy nhiên, bài toán thu thập thông tin là bài
toán được phát triển ở mức độ cao hơn. Đối với bài toán Search Engine, câu truy vấn
đưa vào là tập hợp các niệm. Nhưng với bài toán thu thập thông tin, câu truy vấn đưa
vào có thể là một câu văn có ngữ nghĩa. Hệ thống sẽ tìm cách phân tích ngữ nghĩa
của câu truy vấn để tìm ra đặc trưng của nó.
Thông tin cần thiết

Truy vấn

Gửi cho Hệ thống

Công thức hoá lại Nhận kết quả

Đánh giá kết quả

Sai
Tốt ?
Đúng

Dừng lại

Hình 2. Mô hình thu thập thông tin chuẩn


Khi thu thập dữ liệu, chúng ta thường cố gắng tìm kiếm các dữ liệu chính xác. Trong
các trường hợp khác, chúng ta kiểm tra để xem một thông tin có trong một tệp tin hay
không. Khi thu thập thông tin, kết quả chính xác thường được quan tâm, nhưng thông
thường chúng ta muốn tìm kiếm một cách tương đối chính xác với một thông tin đặc
biệt được đưa vào. Sau đó chúng ta sẽ tự chọn thông tin phù hợp nhất từ các kết quả
của phép xử lý trước đó. Nếu chúng ta so sánh nó với các kiểu hệ thống khác nhau,
chúng ta sẽ thấy rằng trong nội dung các truy vấn cơ sở dữ liệu, một phép tìm kiếm
thực chất là để làm thoả mãn một truy vấn, là câu hỏi để tìm ra câu trả lời (được biết
đến với khái niệm trích xuất thông tin) đặc biệt là với một câu hỏi đặc biệt. Trong thu
thập thông tin, một phép tìm kiếm nhằm tìm ra một tài liệu mà người dùng đang cần.
Các hệ thống thu thập thông tin (IR systems) được sử dụng để thu thập các tài liệu
liên quan đến các yêu cầu rõ ràng. Vấn đề với thu thập thông tin là việc xử lý các văn
bản có nội dung liên quan nội tại đến các văn bản được sử dụng trước đó. Hình 2 đưa
ra một mô hình tương tác thu thập thông tin chuẩn. Hiển nhiên, việc thu thập thông
tin là quá trình xử lý lặp lại, với xử lý đầu vào và đầu ra bao gồm vòng lặp tính toán
lại yêu cầu.

Thao tác này chuyển đổi truy vấn theo một chiến lược có sẵn nhằm tăng tính phù hợp
của tài liệu đã nhận được.

Việc thu thập thông tin có thể được định nghĩa cho bất cứ một loại thông tin nào ví
dụ như kiểu văn bản, hình ảnh, âm thanh... Tuy nhiên, ở đây chúng ta chỉ đề cập đến
việc thu thập văn bản bởi văn bản là một loại thông tin mà phương thức thực hiện và
kỹ thuật xử lý đơn giản hơn. Có thể nhấn mạnh rằng các kỹ thuật này cũng có thể
được áp dụng cho thu thập thông tin đa phương tiện.

Các kỹ thuật thu thập thông tin có thể được chia ra thành hai loại:

- Các kỹ thuật chuẩn

- Các kỹ thuật có áp dụng trí tuệ nhân tạo.

Nhóm đầu tiên bao gồm các kỹ thuật dựa trên các phương thức thuật toán và toán học
truyền thống. Nhóm thứ hai cố gắng thu thập tri thức bằng các kỹ thuật áp dụng trí
tuệ nhân tạo để giành được các kết quả tốt hơn.

b. Các phương pháp thu thập thông tin

Ngày nay, các thông tin đang được phát triển mạnh mẽ về số lượng và chủ yếu là từ
Internet. Internet đã trở thành nơi lưu trữ, quản lý và đặc biệt là nơi thu nhận thông
tin nhanh chóng và tiện lợi. Lợi ích trung tâm là các thông tin thu nhận được phù hợp
với nhu cầu người dùng. Đó là lý do của các nghiên cứu chuyên sâu trong các lĩnh
vực như khai phá dữ liệu (DataMining), trích xuất thông tin (Information Extraction),
thu thập thông tin (Information Retrieval).

Rất nhiều các phương pháp thu thập thông tin được phát triển và kết quả mà chúng
đem lại khá tốt. Trong đó có rất nhiều phương pháp tồn tại ở dạng chuẩn. Các
phương pháp này thường dựa theo các phương pháp toán học cổ điển. Một số phương
pháp khác được phát triển theo hướng dựa trí tuệ nhân tạo. Sau đây, chúng ta sẽ tìm
hiểu sâu hơn về các phương pháp thu thập thông tin.

b.1. Các phương pháp chuẩn

Phần lớn các kỹ thuật chuẩn được phát triển từ những năm 1960 đến những năm
1970, và phần lớn trong số chúng dựa trên các thuật toán và công thức toán học
truyền thống. Trong bài nghiên cứu này chỉ đề cập đến các mô hình mô hình Boolean
(Boolean model), mô hình không gian vec-tơ (vector space model).

b.1.1. Mô hình Boolean

Boolean là mô hình nghiên cứu chiến lượng, đơn giản nhất, và được thể hiện để đưa
ra ý tưởng cơ bản cho các chiến lượng xa hơn [4]. Hầu hết đồng ý rằng tất cả các
chiến lược nghiên cứu dựa trên việc so sánh giữa câu truy vấn và các tài liệu được
lưu trữ. Mô hình Boolean nghiên cứu chiến lược thu thập các tài liệu được gán giá trị
“true” ứng với truy vấn đó. Giả sử tài liệu dj được biểu diễn thành tập các thuật ngữ
d j  t1 , t 2 ,..., t k  , ở đó ti là một thuật ngữ xuất hiện trong tài liệu dj. Một truy vấn

được biểu diễn bằng một biểu thức logic của các thuật ngữ bao gồm các toán tử
AND, OR, và NOT.

Ví dụ với truy vấn:

Q=(K1 AND (NOT K2)) OR K3

Ở đây phép tìm kiếm Boolean sẽ nhận được tất cả các tài liệu có liên kết với K1
nhưng không liên kết với K2 hoặc các tài liệu có liên kết với K3.

Cụ thể hơn, với một câu truy vấn:

Q=(“TextMining” AND ((“Information Retrieval”) AND (NOT “Categorization”))

Hệ thống sẽ cố gắng tìm ra tất cả các tài liệu thuộc chủ đề “TextMining”, mà cụ thể
hơn là các phương pháp thu thập thông tin chứ không phải là các phương pháp phân
lớp văn bản.
b.1.1.1. Các hàm so sánh

Liên kết giữa truy vấn và tài liệu có thể được hiểu theo nghĩa một hàm so sánh. Các
hàm này thường rất đơn giản. Một triến lược được sử dụng gọi là chiến lược đơn giản
hoá phép so sánh.

Chiến lược này được sử dụng trong bộ biến đổi của phép tìm kiếm Boolean, ở đó chỉ
có các toán tử logic AND. Ý tưởng chính của chiến lược này được đưa ra khi xem xét
số lượng của các thuật ngữ chung trong câu truy vấn và trong tài liệu. Số này được
gọi là mức đồng sắp xếp và có thể được sử dụng như một hàm so sánh.

Ví dụ, các từ khoá K1, K2, K3 được liên kết với các tài liệu D1, D2, D3, D4 theo
cách sau:

K1 liên kết với D1, D2, D3, D4


K2 liên kết vơi D1, D2
K3 liên kết với D2, D3

và Q = K1 AND K2 AND K3

Với truy vấn Q, chúng ta sẽ có các mức đồng sắp xếp như sau:

3 D2
2 D1, D3
1 D4

b.1.1.2. Tìm kiếm tuần tự

Kỹ thuât tìm kiếm tuần tự là cơ sở của mô hình Boolean. Tuy nhiên ngày nay nó rất
thường xuyên được sử dụng mặc dù nó khá chậm. Nhưng với bất cứ cách nào, nó cho
thấy cách mà các hàm so sánh được sử dụng [4].

Đưa ra một tập các tài liệu và một truy vấn D1 , D2 ,..., D N  và một truy vấn Q, chúng
ta đi tính N giá trị của hàm so sánh M(Q,Di). Để nhận được các tài liệu liên quan,
chúng ta cần sắp xếp các tài liệu giảm dần của hàm so sánh và bỏ đi tất cả các tài liệu
ứng với hàm so sánh nhỏ hơn một ngưỡng cắt cho trước. Ngưỡng này có thể được
định nghĩa như một giá trị hàm so sánh M hoặc là một gí trị so sánh với một văn bản
nào đó. Thách thức lớn nhất của kỹ thuật này là tìm được cách chọn giá trị ngưỡng
cắt phù hợp.

Để thực hiện mô hình tìm kiếm Boolean, chúng ta có thể sử dụng một số kỹ thuật
hiệu quả. Tuy nhiên, các thuật toán đó không được đề cập trong bài nghiên cứu này.

b.1.1.3. Thực hiện

Mỗi một tài liệu cần được đánh chỉ mục (index) bởi một số thuật ngữ, mỗi thuật ngữ
này miêu tả nội dung của tài liêu. Các thuật ngữ này thường được gọi là các thuật
ngữ đã gắn chỉ mục hay các từ khoá. Để việc thu thập được thực hiện nhanh chóng,
chúng ta nên sắp xếp các từ này. Các từ khoá được lưu trữ trong tệp tin chỉ mục, và
với mỗi từ khoá thuộc bộ từ vựng sẽ có danh sách các tài liệu chứa từ khoá này. Để
thoả mãn một truy vấn, chúng ta sẽ thực hiện tìm kiếm trên file chỉ mục này.

Kỹ thuật này được sử dụng bởi nhiều hệ thống thương mại với các độ tối ưu khác
nhau của tệp tin chỉ mục tìm kiếm (ví dụ B-trees).

Các nhược điểm của kỹ thuật này là:

- Lưu trữ quá nhiều (có thể cần không gian lưu trữ lên đến 300% so với
kích thước ban đầu)

- Giá thành cập nhật và tổ chức lại chỉ mục cao

- Giá thành hợp các danh sách tài liệu cao nếu chúng quá dài

Tuy nhiên, chúng cũng có các ưu điểm riêng:

- Thực hiện dễ dàng

- Tốc độ nhanh

- Dễ dàng hỗ trợ các từ đồng nghĩa

b.1.2. Mô hình không gian vec-tơ (Vector space model - VSM)


Mô hình không gian vec-tơ được mở rộng từ mô hình Boolean trong việc thể hiện
các thuật ngữ của tài liệu [4]. Giống như mô hình Boolean, chúng ta gán nhãn các
tài liệu bởi tập các thuật ngữ. Nhưng trên thực tế, điểm khác nhau được ẩn trong
việc biểu diễn tài liêu. Tài liệu D được biểu diễn bởi một vec-tơ m-chiều với các
thông số ứng với mỗi chiều là trọng số ứng với từng thuật ngữ cụ thể. Trong
trường hợp này, m là tổng sô thuật ngữ được đinh nghĩa để xác định nội dung của
tài liệu. Trọng số được tính bởi xác suất xuất hiện và độ quan trọng của từ khoá.

D=(w1, w2,..., wN)

Ví dụ, khi phân tích hai tài liệu D1 và D2 là hai bài nghiên cứu, liên quan đến bệnh
đâu đầu, ta có hai vec-tơ được hinh hoạ trên đồ thị 2-chiều như sau:

1.0
Magê
D1(0.25, 0.75)

D 2(0.6, 0.2)

Đau đầu 1.0


Hình 3. Đồ thị biểu diễn các vec-tơ của bài báo D1 và D2

Các trọng số trên mỗi vec-tơ biểu diễn xác suất xuất hiện của các thuật ngữ trong
mỗi bài báo. Tài liệu D1, thuật ngữ Đau đầu, Magê xuất hiện với xác suất lần lượt
là 0.75, 0.25. Tài liệu D2, thuật ngữ Đau đầu, Magê xuất hiện với xác suất lần lượt
là 0.2, 0.6.

Trong mô hình này, một truy vấn được đối xử như một tài liệu [4] (xem hình 4). Hay
nói cách khác, chúng ta sẽ biểu câu truy vấn bởi một vec-tơ trọng số của các thuật
ngữ. Sau khi thực hiện việc phân tích câu truy vấn ta sẽ thu được một vec-tơ. Việc
thực hiện câu truy vấn này thực chất là việc so sách vec-tơ của câu truy vấn với các
vec-tơ đại diện cho các tài liệu theo một tiêu chuẩn nào đó. Kết quả ta sẽ thu được
một danh sách các tài liệu có quan hệ “gần” với câu truy vấn đã đưa ra. Tất nhiên,
các tài liệu đó sẽ được sắp xếp theo trình tự giảm dần và sẽ bị cắt ở một ngưỡng nào
đó.

query
D1
1.0

Magê

D2

Đau đầu
1.0
Hình 4: Đồ thị biểu diễn quan hệ giữa truy vấn (query) và các
tài liệu D1, D2

Để tính vec-tơ biểu diễn một tài liệu, các từ riêng biệt trong tài liệu được tổ hợp lại.
Trên thực tế, việc thực hiện được thực hiện theo cách sau:

- Các từ phụ được soá đi

- Phân biệt các từ bởi khoảng trắng

Đối với Anh ngữ hoặc Pháp ngữ, mỗi từ được tách biệt bởi các khoảng trắng. Nhưng
ngôn ngữ tiếng Việt lại nảy sinh vấn đề từ đơn và từ ghép. Đây cũng là một vấn đề
khó khăn khi phân tách từ trong tiếng Việt. Ví dụ, với từ company trong tiếng Anh,
ứng với nó là từ công ty trong tiếng Việt. Do vấn đề về từ ghép nên gay nhiều hiểu
nhầm trong tiếng Việt. Các vấn đề đó gọi là sự mập mờ trong tiếng Việt. Ví dụ, với
câu thuộc địa bàn, ta có thể có hai cách phân tách thuộc địa|bàn và thuộc|địa bàn.

Như vậy, đối với tiếng Việt, chúng ta cần có các phương pháp tách từ đặc biệt hơn.

b.1.2.1. Tiếp cận phương thức TF * IDF

Trọng số của một thuật ngữ có thể được xác định theo nhiều cách. Cách tiếp cận
chung là sử dụng phương thức tf * idf, ở đó trọng số được tổng hợp bởi hai yếu tố:
- Xác suất thuật ngữ (term frequency - tf) - đặc trưng cho xác suất xuất
hiện thuật ngữ trong tài liệu

- Nghịch đảo xác suất của tài liệu (inverse document frequency - idf) -
đặc trưng cho xác suất của thuật ngữ trong toàn bộ tập hợp các tài liệu.
Hay nói cách khác, một thuật ngữ hiếm khi xuất hiện trong các tài liệu
thì idf sẽ cao, còn nếu nó xuất hiện thường xuyên trong các tài liệu thì idf
sẽ thấp.

Ví dụ: công thức dưới đây được đề xuất có thể được dùng để tính các giá trị đã nói ở
trên [4]:

f
tf i  0.5  0.5 i [4]
max f
j

idf i  log 1
ty le cac tai lieu voi x
i

ở đó fi là xác suất xuất hiện thuật ngữ x i trong tài liệu. Phân số trong idf được tính
toán bằng phương pháp giải tích với khả năng xuất hiện xi trong tài liệu này.

b.1.2.2. Độ tương đồng (similarity)

Khi các trọng số các thuật ngữ được xác định, chúng ta cần một hàm sắp xếp để định
giá độ tương đồng giữa các vec-tơ truy vấn và tài liệu. Một số phép đo độ tương đồng
được thể hiện dưới đây. Ở đó Q và D lần lượt là các tập thuật ngữ trong truy vấn và
trong văn bản:

QD công thức đơn giản nhất

QD
2 hệ số của Dice
Qd

QD
hệ số Jaccard
QD
QD
1/ 2 1/ 2
hệ số consin
Q D

QD
hệ số nạp chồng
min( Q , D )

Một đánh giá độ tương đồng thông thường, được biết đến như đánh giá consin [4],
xác định góc giữa vec-tơ tài liệu và vec-tơ truy vấn bởi phép tính toán như một kết
quả nội tại. Đặc biệt, đánh giá này thường được tính với độ dài của vec-tơ. Độ tương
đồng được xác định theo công thức dưới đây [4]:
m

D.Q w u
i 1
i i
sim( D, Q )  
D.Q m
2
m
2
 wi
i 1
u i 1
i

Giả sử cả truy vấn và tài liệu được chuẩn hoá bởi độ dài của chúng, công thức sẽ trở
nên đơn giản hơn:
m
sim( D, Q)  D.Q   wi u i
i 1

Sau khi tất cả các tài liệu được so sánh với truy vấn, chúng sẽ được sắp xếp giảm dần
theo độ tương đồng, kết quả là một danh sách đã được sắp xếp của các tài liệu. Danh
sách này có thể được xử lý bằng cách sử dụng các kỹ thuật khác nhau.

b.1.2.3. Thực hiện

Mô hình không gian vec-tơ rất tốn công khi thực hiện, do đó trong thực tế một số
phép xấp xỉ đơn giản được sử dụng. Hiển nhiên là biểu hiện của các vec-tơ chỉ tồn tại
khái niệm ngữ. Trong thực tế, các vec-tơ hiếm khi được lưu trữ đầy đủ dài do tính
thưa của chúng. Ví dụ, có tất cả 300 thuật ngữ, tài liệu D chỉ đề cập đến 5 thuật ngữ,
như vậy không cần thiết phải lưu trữ tất cả các thông số ứng với vec-tơ tương ứng với
tài liệu này.
Một mô hình không gian vec-tơ đầy đủ có thể được sử dụng hợp lệ để làm giảm độ
phức tạp của thuật toán [4]. Ý tưởng của mô hình là lưu trữ vec-tơ trong một tệp tin
đã được chuyển đổi. Tệp tin này trả về một danh sách các tài liệu với các từ khoá đặc
biệt cùng với thông tin về xác suất. Bên cạnh việc truy xuất theo chỉ mục, tệp tin
chuyển đổi cũng cải thiện các đặc tính thời gian của việc so sánh các vec-tơ. Kỹ thuật
này cho ra một phép tính toán chấp nhận được với những truy vấn tương đối nhỏ, còn
với những truy vấn lớn, phép tính phân số chuẩn hoá sẽ cực kì tốn kém. Nhược điểm
thứ hai của kỹ thuật này là cần tính toán các các phân số chuẩn sau khi có sự thay đổi
của idf. Điều đó rất có thể xảy ra trong thực tế, ví dụ khi ta thêm hoặc xoá đi một tài
liệu trong tổ hợp.

Để ước lượng hiệu quả của phép chuẩn hoá, chúng ta sử dụng bình phương số lượng
các thuật ngữ trong một tài liệu như phân số chuẩn hoá. Với các trường hợp tài liệu
ngắn thì phép tính xấp xỉ không được chính xác, tuy nhiên kỹ thuật này cũng có một
số ưu điểm sau:

- Ảnh hưởng của kích thước tài liệu trở nên không có ý nghĩa với bất cứ
loại chuẩn nào.

- Độ phức tạp tính toán nhỏ hơn rất nhiều so với các kỹ thuật trước đây

- Có thể tính toán trước

Như vậy, độ tương đồng có thể được thực hiện bởi công thức sau:
m

w u
i 1
i i
sim( D, Q ) 
so khai niem trong D

b.2. Các phương pháp dựa trí tuệ nhân tạo (AI-based method)

Các phương pháp trí tuệ nhân tạo thường dựa trí tuệ nhân tạo tập trung vào các giải
thuật huấn luyện máy học. Hay nói rõ hơn, cần phải có một quá trình huấn luyện cho
máy học phân loại văn bản trước khi sử dụng nó. Quá trình huấn luyện này rất quan
trọng. Nếu các mẫu huấn luyện hợp lý, kết quả thu được sẽ có chất lượng rất tốt.
Nhưng ngược lại, nếu quá trình huấn luyện không hợp lý thì có thể dẫn đến sụp đổ
toàn bộ hệ thống.

Các phương pháp này thường phải đối mặt với một số vấn đề sau:

- Giải thuật suy luận

- Phương pháp lưu trữ thông tin hợp lý

- Tránh sự sụp đổ sau một thời gian dài hoạt động

Hầu hết các giải thuật dựa trí tuệ nhân tạo thường gắn cả quá trình tự học trong khi sử
dụng. Yếu tố này quyết định độ thông minh của hệ thống. Nhưng sau một thời gian
dài hoạt đông, có thể hệ thống sẽ lâm vào tình trạng sụp đổ do trí tuệ tích luỹ quá
nhiều, quá trình tự học bị nhiễu, thông tin lưu trữ quá nhiều. Tất cả các lý do trên đều
làm giảm hoạt động của hệ thống. Do đó, các phương pháp này cần có sự tự điều
chỉnh trong hoạt động. Bên cạnh giải thuật tích luỹ trí tuệ cũng cần có giải thuật xén
tri thức và loại nhiễu.

Sau đây chúng ta sẽ nghiên cứu cụ thể hơn về các phương pháp bày.

b.2.1 Kỹ thuật mạng Nơ-ron (Neural network)

Có thể nói tương đối mạnh rằng, các nghiên cứu gần đây về IR khá thành công trong
các kỹ thuật được đề xuất để “hiểu” nội dung của tài liệu và truy vấn, hay nói cách
khác là thực hiện được các phân tích ngữ nghĩa. Với mục tiêu này, hệ thống có thể áp
dụng các lĩnh vực tri thức cho các xử lý để tìm kiếm và thu thập thông tin. Thành
công này có được theo nghĩa đạt được khả năng học và khả năng tổng quát hoá của
mạng Nơ-ron (Neural network).

Với việc sử dụng mạng nơ-ron, chúng ta có thể biểu diễn một phần tượng trưng tri
thức trong lĩnh vực của bài toán, và có thể được sử dụng thành công trong hệ thống
thu thập thông tin.

b.2.1.1. Tổng quan về mạng nơ-ron


Để có thể hiểu làm thế nào mạng nơ-ron có thể áp dụng cho xử lý thu thập thông tin,
chúng ta sẽ định nghĩa một số khái niệm được sử dụng trong lý thuyêt mạng nơ-ron.

Xây dựng các khối của mô hình tính toán cho mạng nơ-ron thành các đơn vị gọi là
nút mạng (neurode) mang rất nhiều các đặc tính của rơ-ron sinh học [4], hay nói
đúng hơn là các nút mạng này được mô phỏng theo các nơ-ron của động vật.

Ở các nút mạng ở Hình 5 thể hiện các phép toán logic AND. Đầu ra của nút mạng sẽ
sáng nếu các đầu vào đều sáng. Nó được thực hiện bởi phép so sánh với giá trị
ngưỡng (T) mà mọi đầu ra đều có. Hiển nhiên là việc thực hiện phép logic OR sẽ có
giá trị ngưỡng giảm còn 0.5 (xem Hình 5.b). Các giá trị trong ngoặc được gọi là các
trọng số, định nghĩa độ mạnh của liên kết. Trong mô hình tính toán của mạng nơ-ron,
trọng số thường được định nghĩa là giá trị nằm trong khoảng [-1, 1].

Trong trường hợp phức tạp hơn, ví dụ khi thực hiện phép toán NOR, chúng ta cần
nhiều hơn một đơn vị, các đơn vị đó gọi là đơn vị ẩn.

Mô hình tính toán mạng nơ-ron được biểu diễn bởi các thuật ngữ về kết nối của nó
(các mẫu kết nối) và trong các thuật ngữ về cách mà chúng được đào tạo (các luật sửa
các trọng số).

(1) (1)

3 1
T= T=
(1) 2 (1) 2
(a)
(b)
Hình 5. Mạng nơ-ron: toán tử AND (a) và toán tử OR (b)
0.5

1 -2 1

1.5

1 1

input

Hình 6. Mạng nơ-ron với lớp ẩn: toán tử NOR

b.2.1.2. Mô hình truyền ngược ba lớp

Mô hình được đề xuất là một mô hình ba lớp:

- Lớp các thuật ngữ truy vấn (các nút mạng đầu vào) – Q layer

- Lớp các tài liệu (các nút mạng đầu ra) – D layer

- Lớp các chỉ mục (các nút ẩn) – T layer

Trong hình 7, chúng ta có các ký hiệu sau:

- ti - chỉ mục thuật ngữ

- Di - tài liệu

- Qi - thuật ngữ truy vấn của người dùng

- pij - trọng số kết nối giữa ngăn của mạng thuật ngữ và một ngăn của
mạng tài liệu

- qi - trọng số liên kết giữa thuật ngữ của truy vấn và thuật ngữ ti

- wij - giá trị liên kết giữa thuật ngữ ti và tj

- dij - trọng số liên kết giữa tài liệu Di và tài liệu Dj


Hình 7: Mô hình biểu diễn mạng nơ-ron

Lớp thuật ngữ truy vấn biểu diễn các yêu cầu người dùng. Mỗi một nút là một thuật
ngữ trong truy vấn. Lớp tài liệu biểu diễn tập các tài liệu. Mỗi nút quy chiếu đến một
tài liệu. Các nút trong lớp này có các liên kết hai chiều có trọng số, thể hiện sự tương
đồng giữa các tài liệu. Giá trị tương đồng này được tính toán bởi trọng số ngữ nghĩa
của các thuật ngữ trong mỗi tài liệu. Lớp các thuật ngữ là lớp động. Mỗi nút biểu
diễn một thuật ngữ được đánh chỉ mục. Các liên kết có giá trị giữa các nút là các kết
lối giữa các thuật ngữ trong pha truy vấn.

Các liên kết có trọng số giữa các ngăn thuộc lớp thuật ngữ có chỉ dẫn và các ngăn
thuộc lớp thuật ngữ pij biểu diễn khả năng hay ý nghĩa của thuật ngữ ti trong tài liệu
Dj. Liên kết có trọng số q i định nghĩa độ quan trọng của thuật ngữ ti trong toàn bộ tổ
hợp các tài liệu. Các giá trị khởi đầu của các trọng số này có thể được trọng ngẫu
nhiên hoặc với bất cứ cách xác định nào. Nếu giá trị ngẫu nhiên được sử dụng, có thể
ta sẽ phải đối mặt với các vấn đề sau:

- Thời gian học dài

- Khó đạt được sự hội tụ


Để tìm ra trọng số wij (liên kết giữa ti và tj), chúng ta giả sử rằng độ liên kết giữa hai
thuật ngữ tăng khi đồng xuất hiện trong một tài liệu, và giá trị này chỉ giảm khi có
một lần xuất hiện trong một tài liệu.

Liên kết giữa hai tài liệu được biểu diễn bởi công thức sau:

 P .P
k
ki kj
R(Di,Dj) 
 (P
i; j
ki  P )   P .P
kj
k
ki kj

b.2.1.3. Chức năng của mạng

Chức năng mạng gồm hai pha:

- Pha thu thập thông tin

- Pha học

Pha thu thập thông tin bắt đầu khi người dùng gửi cho hệ thống một yêu cầu (thường
được viết dưới dạng ngôn ngữ tự nhiên). Yêu cầu này được phân tích và tương ứng
lớp Q sẽ được xây dựng. Mỗi ngăn trong lớp Q được liên kết với một ngăn trong lớp
T với cùng thuật ngữ. Liên kết này sẽ bắt đầu được kích hoạt dọc theo các mối liên
kết q i. Mỗi ngăn của lớp T nhận một tín hiệu từ lớp Q sẽ tính toán rằng độ kích hoạt
và sau đó truyền nó tới mạng.

Trong trường hợp đó có hai khả năng có thể xảy ra:

- Truyền lan tín hiệu tới ngăn khác từ T (tự động tính toán lại yêu cầu)

- Truyền lan nó tới ngăn đó từ D

Trong trường hợp thứ hai, mỗi ngăn của lớp D sẽ tính một giá trị kích hoạt phản xạ
độ tương đồng giữa yêu cầu và tài liệu. Các tài liệu thu thập được sắp xếp theo giá trị
kích hoạt của chúng.

Khi đó, người dùng có những cơ hội để lan truyền lan sự kích hoạt của tài liệu tới
những ngăn khác thuộc lớp D hoặc gây ra một sự lan truyền phản hồi của các ngăn
thuộc lớp D tới các ngăn thuộc lớp T. Điều đó có nghĩa là sự lan truyền tài liệu phù
hợp đến lớp T sẽ gây ra quá trình sự kích hoạt hay truyền lan trong lớp T và lớp D.
Nhưng trong thực tế, quá trình này không mang bất kỳ tài liệu mới nào, nhưng dù sao
đi nữa nó có thể giảm bớt số tài liệu ở đầu ra.

Quá trình học bao gồm :

- Thay đổi các liên kết giữa các ngăn thuộc lớp D và lớp T

- Thay đổi liên kết trong một lớp

Trước hết, áp dụng luật HEBB để sửa đổi các trọng số kết nối pi,j. Ý tưởng này sẽ
tăng các giá trị trọng số của kết nối giữa các tài liệu bằng cách xem xét độ phù hợp và
độ kích hoạt của các thuật ngữ, và giảm trọng số nếu các tài liệu được xét thấy không
phù hợp. Các hoạt động này ảnh hưởng đến ý nghĩa của các thuật ngữ được so sánh
với tài liệu theo sự phù hợp của tài liệu.

Thứ đến, sửa đổi các liên kết giữa ti,j. Giải thuật sử dụng trong giai đoạn huấn luyện
này phần lớn được dựa trên các nghiên cứu của Kohonen. Tóm lại, phương pháp này
dực trên độ phù hợp của các tài liệu nhận được sau một truy vấn.

Ở giai đoạn đầu tiên, có sự tăng giá trị của các kết nối thực chất là kích hoạt các ngăn
với các tài liệu phù hợp và việc giảm giá trị nếu các kết giữa các ngăn với tài liệu là
không phù hợp. Ở giai đoạn thứ hai, quá trình huấn luyện tạo ra kết nối giữa các thuật
ngữ và kích hoạt các ngăn với các tài liệu phù hợp.

Giải thuật này được sử dụng cho mục đích nhóm các thuật ngữ được liên kết tới tài
liệu trên cùng chủ đề.

Cách huấn luyện này có khả năng hướng việc mở rộng cách đối xử của các mạng nơ-
ron, đặc biệt trong lĩnh vực thu thập thông tin.
4. Một số công cụ phân tích văn bản tiếng Anh

Trong bài thực tập này em xin giới thiệu hai công cụ sử dụng cho TextAnalys và
WebAnalys. Cả hai công cụ này đều được tải từ địa chỉ http:// www.megaputer.com.
Sau đây em xin được giới thiệu về từng công cụ.

TextAnalyst 2.0 là công cụ dùng để tự động xử lý văn bản tiếng Anh theo phương
pháp các mạng nơ-ron, nhưng tạo ra các cấu trúc ngữ nghĩa như một sản phẩm cuối.
Thuật toán áp dụng cho TextAnalyst 2.0 gồm ba bước: bước tiền xử lý, bước phân
tích thống kê và đưa ra kết quả.

Bước tiền xử lý bao gồm việc loại bỏ các phụ từ và việc nhận dạng các từ gốc. Các
phụ từ thường không mang lại ý nghĩa khi phân tích ngữ nghĩa. Trong giai đoạn tiền
xử lý, các từ này sẽ bị loại bỏ khỏi văn bản nhằm giảm khối lượng văn bản cần xử lý.
Ví dụ của phụ từ là các giới từ như: a, an, the. Khi phân câu, các từ này thường
không mang lại giá trị về mặt thuật ngữ hay ngữ nghĩa, thế nhưng các từ này có xác
suất xuất hiện rát lớn trong các văn bản tiếng Anh. Việc nhận dạng các từ gốc rất
quan trọng. Trong tiếng anh, một dang từ có thể có nhiều biết thể, ví dụ với từ use có
các biến thể: use, using, user, used, useful, useless…Vấn đề là hệ thống cần nhận ra
dạng biết thể của từ để tìm ra dạng nguyên thể của từ.

Sau khi bước tiền xử lý hoàn tất, mạng nơ-ron sẽ nắm lấy tất cả các từ quan trọng
cũng như tần xuất xuất hiện của mỗi từ, độ liên kết giữa các từ và trọng số liên kết.
Ví dụ, khi xem xét một tài liệu, TextAnalyst nhận thấy từ database xuất hiện nhiều
nhất. Khi phân tích các từ có liên quan đến từ database như thuộc cùng một câu,
thuộc cùng một đoạn, TextAnalyst nhận thấy từ sql server xuất hiện nhiều trong các
câu hoặc đoạn văn có xuất hiện từ database. Như vậy khả năng tài liệu đề cập đến cơ
sở dữ liệu sql server là rất lớn. TextAnalyst cố gắng phân tích và ghi lại các thông tin
liên kết này.

Từ kết quả phân tích thống kê, TextAnalyst đưa ra những câu văn được xem như
quan trọng nhất trong cả văn bản.
Nhờ TextAnalyst, chúng ta có thể tiết kiệm đáng kể thời gian trong khi chọn ra các
văn bản chứa các thông tin cần thiết. Thay vì các phương pháp phân loại cổ điển là
đọc hết văn bản để đánh giá nội dung của văn bản đó thì nay ta chỉ việc đọc các
thông in quan trọng được trích ra từ văn bản thông qua TextAnalyst.

Ví dụ, khi em thử dùng TextAnalyst để phân tích một tài liệu (chứa trong file
“KDT1.txt”) về TextMining, công cụ này đã đưa ra kết quả như hình 8.

Trên cây phân cấp có thể nhìn thấy các thuật ngữ được tách ra từ tài liêu. Từ khoá có
mức ưu tiên cao nhất (xác suất xuất hiện lớn nhất) là “discovery”. Liên hệ mật thiết
với “discovery” lần lượt (theo thứ tự ưu tiên) là “knowledge discovery”, “database”,
“KDD”, “Text”, “Exploration”, “Collection”, và “Keywork”.

Trên cửa sổ Summarization xuất hiện đoạn văn bản “We show how this keyword-
frequency approach supports a range of KDD operations, providing a suitable
foundation for knowledge discovery and exploration for collections of unstructured
text.” Đây là đoạn tổng kết qua phân tích của công cụ. Nó là đoạn văn bản được hệ
thống cho là quan trọng nhất trong toàn bộ tài liệu.
Hình 8: Minh hoạ công cụ TextAnalyst

Tương tự như TextAnalyst, WebAnalyst cũng được dùng để phân tích nội dung của
văn bản tiếng Anh. Nhưng điểm khác biệt là công cụ này được gắn ngay vào Internet
Explorer của Microsoft chạy trên hệ điều hành Windows. Khi ta vào bất cứ một trang
web nào thì công cụ này tự động chạy ở chế độ nền và phân tích toàn bộ trang web
đó và tóm lượng các thông tin được xem là quan trọng nhất.

Ví dụ, khi em cài đặt bộ “TextAnalyst for IE”, kích hoạt phần công cụ TextAnalyst
đươc gắn vào trình duyệt IE của Microsoft, rồi vào thử trang web tại địa chỉ
http://citeseer.nj.nec.com/content/31361/141654. Đây là tài liệu có nội dung về “Text
categorization”. Khi đó, trên cửa sổ summarization của TextAnalyst có một đoạn
văn bản “Text categorization with support vector machines: learning with many
relevant feature”. Đây là nội dung chính bao quát toàn bộ tài liệu này.
Sau khi dùng thử hai công cụ trên, em có chung một nhận xét là chúng làm việc khá
tốt. Cả hai đều giải quyết một bài toán chung là “Text Summarization”.

Hình 9: Minh hoạ công cụ TextAnalyst nhúng trên Internet Explorer


III. Các giải pháp áp dụng cho Vietnamese Text Mining

1. Đặc trưng của văn bản tiếng Việt

Tiếng Việt là một ngôn ngữ đơn lập [3], đặc điểm này bao quát toàn bộ đặc trưng
tiếng Việt về mặt ngữ âm, ngữ nghĩa và ngữ pháp. Do đó, chúng ta phải tiến hành
nghiên cứu đặc điểm này của tiếng Việt để có thể có được những hướng nghiên cứu
cụ thể về văn bản tiếng Việt.

a. Các đơn vị của tiếng Việt

a.1. Tiếng và đặc điểm của tiếng

Trong tiếng Việt, cũng như trong các văn bản tiếng Việt, ta có thể thấy tiếng là một
thành phần khá quan trọng. Trong kí pháp, mỗi tiếng đứng độc lập, và ta có thể phát
hiện được ngay các tiếng trong cả tiếng nói cũng như trong văn bản [3].

a.1.1. Tiếng và giá trị ngữ âm

Ngữ âm chính là mặt âm của ngôn ngữ. Tại sao ta lại phải nghiên cứu khía cạnh này
của ngôn ngữ tiếng Việt. Đó là vì trên thực tế, các ứng dụng liên quan đến tiếng Việt
như dịch thuật, lưu trữ người ta vẫn ghi lại âm thành dạng văn bản, sau đó mới tiến
hành các thao tác xử lý. Mỗi tiếng chính là một âm tiết và được ghi lại thành một
cụm trong văn bản.

a.1.2. Tiếng và giá trị ngữ nghĩa

Nếu xét về mặt ngữ nghĩa thì tiếng là đơn vị nhỏ nhất có thể có nghĩa [3]. Thực ra ta
có thể thấy rằng đơn vị ngữ âm thấp nhất là âm vị thì hoàn toàn không có nghĩa (ví
dụ như các chữ cái đứng riêng rẽ). Tuy nhiên cũng có những tiếng có nghĩa (ví dụ
như ạ, ứ).

Theo [3], ta có thể phân biệt các tiếng như sau:

- Các tiếng tự nó có nghĩa (ví dụ như chuông, kính, bút) có thể được
dùng để gọi tên sự vật, hiện tượng, có thể được dùng như một từ.
- Các tiếng có nghĩa nhưng không dùng để gọi tên sự vật, hiện tượng (ví
dụ như thuỷ, thực) mà chỉ được dùng với tư cách là bộ phận để cấu thành
nên từ có nghĩa ở bậc cao hơn. Ta không thể nói tôi thực mà chỉ có thể
nói tôi ăn, nhưng có những từ như thực phẩm.

- Các tiếng bản thân không hề có nghĩa mà chỉ dùng để kết hợp tạo thành
nghĩa cho đơn vị trực tiếp cao hơn, đó là từ. Ví dụ như các tiếng lãng,
đãng tự nó không có nghĩa nhưng có thể tạo thành từ có nghĩa là lãng
đãng.

a.1.3. Tiếng và giá trị ngữ pháp

Khía cạnh ngữ pháp bao gồm những quy tắc cấu tạo từ, cấu tạo câu. Và ta có thể thấy
rằng tiếng là đơn vị ngữ pháp dùng để cấu tạo từ [3].

Về việc dùng tiếng để cấu tạo từ, ta có hai trường hợp như sau:

- Từ một tiếng: đây là trường hợp một tiếng dùng để làm một từ,
ví dụ như cây, đá. Các tiếng (đóng vai trò là từ) là một bộ phận cấu
thành nên câu.

- Từ nhiều tiếng: là một khối hai hay nhiều hơn các tiếng kết hợp
với nhau, gắn bó tương đối chặt chẽ.

Việc nghiên cứu cấu trúc từ (nhiều tiếng hay một tiếng) đóng vai trò rất quan trọng
trong quá trình nghiên cứu và cài đặt ứng dụng phân tích cú pháp tiếng Việt.

a.2. Từ và các đặc điểm của từ

Từ và tiếng là hai đơn vị khác nhau nhưng đều rất quan trọng trong ngữ pháp tiếng
Việt. Do đó ta phải đi xét các đặc điểm của từ.

a.2.1. Từ là đơn vị nhỏ nhất để đặt câu

Như trên vừa trình bày, ta thấy từ có thể gồm có một tiếng nhưng cũng có thể gồm
hai hay nhiều tiếng, tuy nhiên từ là đơn vị nhỏ nhất để đặt câu [3]. Ví dụ:

Công ty này rất lớn.


Người này rất giỏi

Có một lưu ý là để đặt câu, tức là để viết, để nói, để suy nghĩ thì chúng ta dùng từ
chứ không phải là dùng tiếng.

Ta có thể thấy lưu ý này rất quan trọng, vì trong thực thế thành phần riêng rẽ có thể
phát hiện trong một câu (ở dạng nói hay viết) là một tiếng nhưng để có thể hiểu ý
nghĩa của câu ta phải dùng từ. Do đó bất kì một nghiên cứu về tiếng Việt trên máy
tính nào cũng phải quan tâm đến việc ghép các tiếng thành từ.

a.2.2. Từ có nghĩa hoàn chỉnh và cấu tạo ổn định

Ta có thể nhận ra điều này ở các từ tiếng Việt một tiếng, còn đối với những từ nhiều
tiếng thì đó là những đặc điểm xác định lẫn nhau. Cấu tạo ổn định dẫn đến nghĩa
hoàn chỉnh và ngược lại. Ví dụ như từ hai tiếng cây cối có cấu tạo ổn định và nghĩa
hoàn chỉnh, nhưng cụm không phải là từ như cây và cối không có cấu tạo ổn định và
nghĩa hoàn chỉnh.

Đối với những từ nhiều tiếng, tính hoàn chỉnh về nghĩa và ổn định về cấu tạo được
hình thành theo mối quan hệ giữa các tiếng cấu thành nên từ. Đó là mối quan hệ phối
hợp, có thể theo ngữ âm (các từ láy âm), hoặc về nghĩa (ví dụ như nghĩa của hai từ xe
và đạp trong từ xe đạp).

a.3. Câu và các đặc điểm của câu

Trong nghữ pháp tiếng Việt, từ và câu là những đơn vị ngữ pháp rất quan trọng. Đối
với con người, từ được coi như sẵn có trong kho từ vựng được tích luỹ trong quá
trình sống. Còn để có thể hiểu, giao tiếp thì con người phải dùng đến câu. Trong ngôn
ngữ, câu là đơn vị ở bậc cao hơn cả. Nói gì, viết gì cũng phải thành câu.

a.3.1. Câu có ý nghĩa hoàn chỉnh

Tính hoàn chỉnh về nghĩa của câu là tính hoàn chỉnh của cả một quá trình tư duy, quá
trình thông báo diễn ra trong một hoàn cảnh nhất định [3].
Trong một câu bao giờ cũng có hai thành phần, một thành phần nêu sự vật hiện tượng
và một thành phần giải thích của sự vật hiện tượng đó.

a.3.2. Câu có cấu tạo đa dạng.

Câu có dạng đơn giản như là câu đơn, và còn có những cấu trúc phức tạp hơn gọi là
câu ghép. Xét về mặt ngữ nghĩa, câu đơn có nhiều dạng khác nhau, biểu lộ những ý
nghĩa, trạng thái, nội dung cần thông báo khác nhau.

Tính chất đa dạng không trái ngược với tính chất chặt chẽ của câu về mặt ngữ pháp.
Nói chung, cấu tạo ngữ pháp có thay đổi thì nghĩa cũng có thay đổi và ngược lại [3].

b. Các phương tiện ngữ pháp của tiếng việt.

b.1. Trong phạm vi cấu tạo từ.

Trong phạm vi cấu tạo từ, phương tiện chủ yếu về ngữ pháp chính là sự kết hợp các
tiếng. Trật tự sắp xếp các tiếng có vai trò quan trọng trong cấu tạo từ. Kết hợp hai
phương tiện này, có hai phương thức cấu tạo từ chủ yếu là láy và ghép.

Láy là việc sắp đặt các tiếng thành đôi, kề cận nhau, có sự phối hợp về ngữ âm tạo
nên nghĩa.

Ghép là việc sắp đặt các tiếng thành đội, kề cận nhau, có sự phối hợp về ngữ nghĩa
tạo nên nghĩa của từ ghép.

b.2. Trong phạm vi cấu tạo câu.

Tức là trong phạm vi cú pháp, ta có các phương tiện trật tự, hư từ và ngữ điệu.

Trật tự sắp đặt các từ là phương tiện chính để biểu thị quan hệ ngữ pháp – tức là quan
hệ cú pháp – giữa các từ trong một câu [3]. Trong tiếng Việt, trật tự các yếu tố cấu
thành được quy định bằng một vị trí nhất định. Khi vị trí thay đổi thì nghĩa cũng thay
đổi theo. Ví dụ ta có các hoán vị các tiếng của một tổ hợp như sau:

Sai đâu sửa đấy.

Sửa đâu sai đấy.


Sửa đấy sai đâu.

Đâu sai sửa đấy.

Đấy sai sửa đâu.

Trật tự theo hướng thuận biểu hiện ở chỗ yếu tố chính trước, yêu tố phụ sau, yếu tố
được xác định trước, yếu tố xác định sau, yếu tố dùng để khai triển đứng liền sau từ,
nếu có cách ly cũng đứng không quá xa.

Hư từ là những từ dùng để biểu thị một số những quan hệ cú pháp nhất định. Ví dụ
trong câu Anh, chị đã đi chơi rồi, có thể dùng từ và để nối hai từ anh, chị để làm rõ
hơn mối quan hệ liên hợp, bình đẳng giữa hai từ. Như thế từ và là một hư từ. Tuy
nhiên ta có thể thấy rằng hư từ có những sắc thái về nghĩa [3], ví dụ như ta thấy Anh
với chị khác với Anh và chị.

Điều đó đặt ra một khó khăn khi tiến hành nghiên cứu tiếng Việt trên máy tính, đó là
việc xác định ngữ nghĩa của một câu, vì trong văn bản tiến Việt thì cách viết hay biểu
thị trên khá phổ biến.

Tất nhiên, ngữ điệu đóng vai trò vô cùng quan trọng trong tiếng Việt, tuy nhiên trong
phạm vi nghiên cứu về văn bản tiếng Việt, ngữ điệu sẽ không được đi sâu nghiên
cứu.

c. Từ tiếng việt

c.1. Từ đơn - từ ghép

Như đã trình bày ở trên, từ trong tiếng Việt có thể có một tiếng hay gồm nhiều tiếng.
Hơn nữa, trong tiếng Việt, những từ nhiều tiếng lại có thể được ghép bởi những tiếng
hay từ khác có nghĩa. Ví dụ hai từ một tiếng đất, nước có thể được ghép với nhau
thành một từ có ý nghĩa trừu tượng hơn là đất nước. Những từ này được gọi là các từ
ghép.
Do sự tồn tại của những từ đơn (là những từ một tiếng) và từ ghép, chúng ta phải tiến
hành nghiên cứu để có thể đề xuất những phương án hữu hiệu trong bài toán nhận
dạng từ trong câu.

Khi xem xét từ ghép, chúng ta có thể thấy có hai loại như sau:

- Từ ghép song song: mỗi tiếng thường là một tiếng có nghĩa, có


thể dùng làm từ một tiếng, gắn bó với nhau theo quan hệ song song và
nói chung có thể đổi chỗ cho nhau. Trong sự phối hợp về ngữ nghĩa thì
thường có sự biến đổi nghĩa riêng thành một nghĩa hình tượng, như ví
dụ của từ đất nước đã nêu trên, hoặc trong các từ quần áo, giày dép....

- Từ ghép chính phụ: mỗi tiếng có thể là một tiếng có nghĩa,


nhưng thông thường có một tiếng chính có thể được dùng làm từ còn
tiếng kia không có chức năng ngữ pháp đó, ví dụ như nhà thương,
bánh mì.

Ta cũng có thể thấy trong tiếng Việt tồn tại một số các từ ghép có nhiều tiếng hơn,
phát triển từ loại từ ghép chính phụ, qua đó có thể chia thành các phần chính, phần
phụ, thuận tiện hơn trong việc phân tích từ.

Chính sự tồn tại của từ ghép (ghép bởi các tiếng có nghĩa) mà có sự nhập nhằng về
nghĩa của một câu. Ta có thể lấy ví dụ sau:

Chiếc xe đạp nặng

Ở đây, hai tiếng xe và đạp đều là các tiếng có nghĩa, do đó câu trên có thể hiểu theo
hai cách như sau:

Chiếc xe đạp / nặng

Chiếc xe / đạp / nặng

Giải quyết được vấn đề này rất phức tạp, tuy nhiên chắc chắn muốn phân tích câu
hoặc xử lý văn bản tiếng Việt thì bài toán đầu tiên được đặt ra là làm thế nào để tách
các từ trong câu.
c.2. Từ loại

Có thể phân loại các từ theo cách thức cấu tạo như đã xét ở phần trên, cũng có thể
phân loại theo các chữ cái đầu như khi ta làm từ điển. Tuy nhiên có một cách phân
loại đặc biệt quan trọng về mặt cấu tạo câu, đó là xác định từ loại cho mỗi từ tiếng
Việt.

Theo [3], tiếng Việt có thể có những từ loại sau:

- Danh từ

- Động từ

- Tính từ

- Phó từ (sẽ, đã, rồi, rất)

- Liên từ (của, thì)

- Đại từ (tôi, nó, anh, em, hắn)

- Trợ từ (nhỉ, hả, nhé)

- Cảm từ (ái chà, chao ôi, vâng, dạ)

- Số từ (một, hai)

- Loại từ (con, cái)

- Giới từ (cùng, với, bằng, để)

- Trạng từ (hôm qua)

Tất nhiên việc phân loại trên chỉ có ý nghĩa tương đối, vì trong nhiều tài liệu khác
nhau vẫn có những sự khác nhau về các phân chia từ theo từ loại. Nếu xem xét một
cách kỹ lưỡng hơn nữa về mặt cú pháp, trong mỗi loại từ lại còn có thể chia nhỏ hơn
được nữa, ví dụ rất là phó từ đứng trước vì trong một câu nó chỉ đứng trước các tính
từ đề nhấn mạnh hiệu quả biểu đạt của tính từ.

c.3. Dùng từ cấu tạo ngữ


Ngữ là đơn vị ngữ pháp bậc trung gian giữa từ và câu [3].

Việc tìm hiểu cấu tạo cũng như các loại ngữ là cần thiết để tì m hiểu cấu tạo của câu.
Qua cấu tạo của ngữ, có thể nhận rõ thêm đặc điểm ngữ pháp của từ loại và các tiểu
loại.

Theo [3], ta có một số nhận xét như sau:

- Ngữ là một cấu tạo theo quan hệ cú pháp chính phụ.

- Kết từ cũng được dùng để biểu hiện quan hệ chính phụ giữa
chính tố với một số loại phụ tố sau. Ví dụ "báo của tôi".

- Khi phụ tố sau do thực từ đảm nhiệm thì nói chung phụ tố ấy có
thể là một ngữ. Ví dụ "một người / học sinh / rất thông minh".

Ta có thể xét một số ngữ loại như sau [3]:

- Danh ngữ: Ngữ có danh từ làm trung tâm

- Động ngữ: Ngữ có động từ làm trung tâm

- Tính ngữ: Ngữ có tính từ làm trung tâm

- Giới ngữ: Ngữ bắt đầu bằng giới từ.

Cũng như đã phân tích trong phần từ loại, để có thể xây dựng được một hệ thống luật
cú pháp tốt, ta cần phải phân chia các ngữ loại một cách chặt ché hơn, ví dụ: ta có
danh ngữ "cái cầu", nếu thêm một số từ nữa, ví dụ là một thì danh ngữ mới "một cái
cầu" phải là một danh ngữ kết thúc trái vì rõ ràng ta không thể mở rộng về phái trái
danh ngữ này nữa.

Toàn bộ các từ loại và ngữ loại chi tiết sẽ được nêu trong phần xây dựng luật cú pháp.

d. Câu tiếng việt

Câu là đơn vị dùng từ, hay đúng hơn là dùng ngữ mà cấu tạo nên trong quá trình tư
duy, thông báo; nó có nghĩa hoàn chỉnh, có cấu tạo ngữ pháp và có tính chất độc lập
[3].
Xét về cấu trúc câu, tiếng Việt có hai loại câu là câu đơn và câu ghép.

d.1. Câu đơn

Câu đơn là loại câu cơ sở của tiếng Việt, bao gồm một nòng cốt đơn hay một kết cấu
chủ vị. Về mặt ngữ nghĩa, câu đơn mang nghĩa tự thân, còn câu ghép mang nghĩa kết
hợp. Câu đơn có thể là câu khẳng định, câu phủ định, câu nghi vấn, câu tường thuật,
câu cầu khiến, câu biểu cảm. Ví dụ:

- Cái xe này tốt.

- Tôi chưa làm xong việc này.

- Anh đi làm chưa?

- Nó đang đi đến trường.

- Con đi ngủ đi!

- Con mèo mới đẹp làm sao!

Nòng cốt đơn của một câu đơn là một kết cấu chủ vị. Ngoài ra, câu đơn còn có các
thành phần ngoài nòng cốt [3]:

- Thành phần than gọi. Ví dụ "bạn ơi, chúng ta đi nào".

- Thành phần chuyển tiếp. Ví dụ "Anh Trường, trái lại, không làm
gì cả".

- Thành phần chú thích. Ví dụ "Nó, em tôi, rất thông minh".

- Thành phần tình huống. Ví dụ " Trong máy tính, dữ liệu ở dạng
nhị phân".

- Thành phần khởi ý. Ví dụ " Thuốc, anh ấy không hút".

Để biểu diễn một câu đơn, người ta thường dùng mô hình suy diễn câu đơn như sau:

Px - Cx - Vx - Bx.

Với P: thành phần phụ


C: chủ ngữ

V: vị ngữ

B: Bổ ngữ, định ngữ.

x: thành phần có thể khai triển tiếp.

Cách biểu diễn này rõ ràng rất thuận tiện trong việc xây dựng bộ luật cú pháp và tiến
hành phân tích cú pháp cho một câu đầu vào.

d.2. Câu ghép

Về mặt ngữ pháp, câu ghép bao gồm bộ phận chủ yếu là một nòng cốt ghép, được tạo
nên bởi ít nhất hai vế và mỗi vế thường bao gồm một nòng cốt đơn. Ví dụ:

Mây tan, mưa tạnh.

Tuy rằng câu đơn chỉ có một nòng cốt đơn nhưng không phải bao giờ câu đơn cũng
ngắn hơn câu ghép, có những câu rất đơn giản như câu trên cũng là một câu ghép.
Người ta có thể chia câu ghép thành hai loại: câu ghép song song và câu ghép qua lại
[3].

d.2.1. Câu ghép song song

Là loại câu ghép có thể có hai vế hay nhiều hơn, tuy nhiên sự liên kết giữa các vế là
lỏng lẻo, có thể tách thành các câu đơn mà vẫn bảo toàn nghĩa. Trong một số trường
hợp các vế có quan hệ, sử dụng các kết từ, tuy nhiên ý nghĩa độc lập của các vế vẫn
tương đối rõ ràng. Ví dụ:

Khán giả hò reo, cờ phất rực trời, cuộc đấu diễn ra quyết liệt.

Nó vẫy tôi và tôi tiến lại phía nó.

d.2.2. Câu ghép qua lại

Là loại câu có hai vế và vế này là điều kiện tồn tại của vế kia. Có cả hai vế thì câu
mới có ý nghĩa trọn vẹn. Nối giữa hai vế là các liên từ, thông thường người ta dùng
cả cặp liên từ. Ta có thể biểu diễn câu ghép là câu có dạng như sau:
xN1 + yN2

Một trong các liên từ có thể được loại bỏ. Ta có một số ví dụ như sau:

- (Bởi) vì N1 (cho) nên/ mà N2.

- Để N1 (cho) nên/ mà N2.

- Nếu N1 thì N2.

- Không những N1 mà còn N2

- ...

Tôi đi thì nó chết

Vì phở ngon nên cửa hành của nó mới đông khách thế.

d.2.3. Các thành phần câu.

- Chủ ngữ: Thành phần chủ yếu của câu.

- Vị ngữ: Thành phần chính, bổ sung, giải thích ý nghĩa cho thành
phần chủ ngữ.

- Trạng ngữ: Thành phần thứ yếu, bổ sung ý nghĩa cho câu, chỉ
nơi chốn, thời gian, không gian

- Bổ ngữ: Thành phần phụ thuộc, bổ sung ý nghĩa cho động từ


làm vị ngữ.

- Định ngữ: Thành phần phụ thuộc, bổ sung ý nghĩa cho vị ngữ.

e. Các đặc điểm chính tả và văn bản tiếng Việt

Hiện nay, chính tả tiếng Việt chưa thống nhất, tuy đã có những quy tắc chuẩn mực
nhất định. Việc nghiên cứu các đặc điểm chính tả tiếng Việt có ý nghĩa đặc biệt quan
trọng trong khâu tiền xử lý dữ liệu, tạo nguồn dữ liệu đầu vào cho những pha sau như
phân tích cú pháp hay đánh trọng số cho các từ (terms), lập chỉ mục.
Một số vấn đề về chính tả tiếng Việt mà ta cần quan tâm như sau:

- Các chữ đồng âm: Các chữ đồng âm như “Mĩ”/ “Mỹ”, “kĩ”/
“kỹ”... thường bị sử dụng lẫn nhau.

- Từ địa phương: Trong văn bản người ta vẫn thường sử dụng một
số từ địa phương thay cho các từ phổ thông. Ví dụ “cây kiểng” thay
cho “cây cảnh”.

- Vị trí dấu: Theo quy định đánh dấu tiếng Việt, dấu được đặt trên
nguyên âm có ưu tiên cao nhất. Tuy nhiên khi viết văn bản, do mỗi
người sử dụng các bộ gõ tiếng Việt khác nhau nên nhiều khi dấu được
đặt không theo chuẩn. Ví dụ hai chữ: “hỏa” hay “hoả”.

- Cách viết hoa: Theo quy định, đầu câu và đầu tên riêng phải viết
hoa. Tuy nhiên vẫn tồn tại một số cách viết như sau: “Tổng công ty Dệt
may Việt nam”.

- Phiên âm tiếng nước ngoài: Các cách viết sau vẫn được chấp
nhận mà không có quy chuẩn trong văn bản tiếng Việt: “Singapore”/
“Xinh-ga-po”...

- Từ gạch nối: Do cách viết dấu gạch nối tuỳ tiện nên không thể
phân biệt giữa nối tên riêng hay chú thích.

Những vấn đề vừa nêu trên thực sự gây ra nhiễu trong dữ liệu đầu vào, đòi hỏi phải
có một hệ thống tiền xử lý tốt, đảm bảo cho việc phân tích cú pháp được thực hiện có
hiệu quả.

2. Các giải pháp, đánh giá hiệu quả, đề ra giải pháp cho phân tích văn bản tiếng
Việt

Có rất nhiều bài toán phân loại văn bản. Tuy nhiên, ở đây em chỉ xin nhắc tới hai bài
toán đại diện, và cũng là hai bài toán đang được quan tâm nhiều nhất. Đó là bài toán
phân loại văn bản tiếng Việt và thu thập thông tin từ văn bản tiếng Việt.
a. Bài toán phân loại văn bản tiếng Việt

Cần xây dựng một hệ thống có thể phân loại được tài liệu tiếng Việt. Hay nói khác đi,
khi đưa ra một tài liệu tiếng Việt, hệ thống cần chỉ ra rằng đó là loại văn bản thuộc
chủ đề nào (văn hoá, kinh tế, chính trị, thể thao,...).

Ở trên chúng ta đã trình bày hai phương pháp phân loại khác nhau, đó là phương
pháp sử dụng từ điển phân cấp chủ đề và phương pháp cây quyết định.

Đối với giải thuật sử dụng từ điển phân cấp chủ đề, có thể hiểu đây là một phương
pháp chuẩn. Quá trình thực hiện khá dễ dàng và mọi kết quả đã được lường trước.
Tuy nhiên, đây là một phương pháp thu được hiệu quả không cao. Lý do là phương
pháp này không đề cập đến vấn đề ngữ nghĩa của văn bản.

Ở phương pháp thứ hai, chúng ta đã gắn bài toán vào một dạng trí tuệ nhân tạo. So
với phương pháp trước thì phương pháp này cho kết quả tốt hơn do tính mềm dẻo,
tính tự học của giải thuật. Tuy nhiên, kết quả đạt được vẫn còn rất khiêm tốn.

Do một số đặc trưng, như đã nêu ở trên, của văn bản tiếng Việt, việc phân tích văn
bản sẽ rất phức tạp. Việc áp dụng hai phương pháp đã nêu ở trên chỉ thu được các kết
quả tương đối hạn chế. Để giải giải quyết bài toán phân loại văn bản tiếng Việt một
cách triệt để phương pháp phân tích cú pháp được ưu tiên lên hàng đầu.

Trong đề tài này của em chưa đề cập được đến phương pháp này. Nó thuộc vào các
phương pháp xử lý ngôn ngữ tự nhiên. Do thời gian có hạn hướng tiếp cận ban đầu
không đúng, nên em vẫn để ngỏ phương pháp này. Tuy nhiên, hướng mục tiêu của
em trong kì làm luận văn tốt nghiệp tới sẽ tập trung giải chuyết bài toán này. Đó là:
“Phân loại văn bản tiếng Việt bằng phương pháp phân tích cú pháp.”

b. Bài toán thu thập thông tin từ văn bản tiếng Việt

Ở trên chúng ta đã chình bày ba phương pháp cho bài toán thu thập thông tin. Đó là
các phương pháp: mô hình Boolean, mô hình không gian vec-tơ, và mạng nơ-ron.
Đối với mô hình Boolean, đây là phương pháp truy vấn thông tin dựa theo các biểu
thức logic. ưu điểm lớn nhất của phương pháp này là tính đơn giản, dễ cài đặt và tốc
độ nhanh. Tuy nhiên, hạn trế lớn nhất của nó không gian lưu trữ và giá thành cho
việc thêm bớt văn bản từ kho lưu trữ tài liệu.

Phương pháp thứ hai đã cài tiến được một số hạn trế của phương pháp thức nhất. Tuy
nhiên, nhược điểm lớn nhất của phương pháp này là tốc độ. Tuy nhiên, đây vẫn là
một phương án có tính khả thi cao. Phương pháp này nên được áp dụng cho thu thập
thông tin tiếng Việt.

Phương pháp thứ ba dựa trên giải thuật trí tuệ nhân tạo. ưu điểm của phương pháp
này là khả năng huấn luyện được của hệ thống. Khi các mẫu huấn luyện và phương
pháp huấn luyện tốt, hệ thống sẽ cho ra các kết quả rất tốt. Nhưng nhược điểm của
phương pháp này là giải thuật phức tạp, khó cài đặt.
IV. Xây dựng thử chương trình tách thuật ngữ tiếng Việt theo phương pháp cổ
điển

1. Chương trình và bài toán được giải quyết

Để phục vụ cho bài toán phân tích văn bản tiếng Việt, em đã xây dựng thử nghiệm
một chương trình Tách thuật ngữ tiếng Việt. Chương trình được viết bằng ngôn ngữ
java. Bài toán đặt ra được mô tả như sau:

Xây dựng một công cụ tách các thuật ngữ trong một văn bản tiếng Việt theo một từ
điển thuật ngữ có sẵn

Đầu vào của bài toán là một tệp tin chứa một tài liệu tiếng Việt được định dạng Text
dưới dạng phông .VN (ví dụ phông .VnTime), một tệp tin chứa thông tin về các thuật
ngữ cũng được đinh dạng Text dưới dạng phông .VN.

Đầu ra của bài toán là một tệp tin định dạng Text bởi phông .VN, trong đó chưa các
thông tin về các thuật ngữ tìm được theo khuân dạng: “Tên thuật ngữ ” (số từ tìm
được).

Chương trình được xây dựng bằng ngôn ngữ java và được đặt với tên
“tachthuatngu”.

2. Kết quả chạy chương trình

Khi chạy chương trình với tệp tin “Test.txt” (tệp tin mẫu có sẵn) với nội dung là một
báo cáo nghiên cứu về lý thuyết tập thô, kết quả hiện ra với nội dung như sau:
Ket qua phan tich tu tep tin "Test.txt"
Ten tu khoa (so lan xuat hien)

"th«ng tin" (40)


"hµm" (34)
"khai th¸c" (33)
"truy vÊn" (26)
"thùc hiÖn" (22)
"d÷ liÖu" (22)
"tËp th«" (14)
"hÖ thèng" (10)
"xö lý" (10)
"kh«ng gian dung sai" (8)
"ph©n nhãm" (5)
"tõ kho¸" (5)
"l-u tr÷" (5)
"nghiªn cøu" (4)
"ng÷ nghÜa" (3)
"khai ph¸ d÷ liÖu" (3)
"kh¸i niÖm" (2)
"chØ tiªu" (2)

Sau hai dòng mở đầu, trên mỗi dòng sau đó ghi “tên thuật ngữ tìm được” (số lần
xuất hiện trong tài liệu). Ví dụ: với từ “tập thô” ta thấy xuất hiện 14 lần trong tài
liệu.
TÀI LIỆU THAM KHẢO

[1] “Text Categorization Using a Hierarchical Topic Dictionary” -


Alexander Gelbukh, Grigori Sidorov, Adolfo Guzmán-Arenas

[2] “Machine Learning in Automated Text Categorization” - Fabrizio


Sebastiani

[3] “Ngữ pháp tiếng Việt” – Trung tâm Khoa học xã hội và Nhân văn quốc
gia – Nhà xuất bản Khoa học và xã hội – Hà nội 2000

[4] “Information retrieval: standard and AI - based methods” - Ilya Baraev


PHỤ LỤC

Các thông tin về báo cáo

Trên đĩa mềm gồm có:

- Báo cáo (2 bản softcopy) nằm trong các tệp tin


“A:\Docs\BaocaoTTTN.doc”, và “A:\Docs\BaocaoTTTN.pdf”

- Bản bảo vệ bằng Microsoft PowerPoint “A:\Docs\Baove.ppt”

- Chương trình demo chứa trong thư mục “A:\Project” bao gồm mã
nguồn viết bằng java chứa trong thư mục “A:\Project\src” và mã dịch
chứa trong thư mục “A:\Project\tachthuatngu”.

Cách chạy chương trình demo

Yêu cầu:

- Trên máy tính chưa bộ dịch java.

- Đặt đường dẫn đến thư mục chứa tệp tin “java.exe” trong PATH.

- Sao thư mục “A:\Project” vào một nơi khác trên đĩa cứng

Cách chạy:

- Vào chế độ Command Prompt

- Chuyển đến thư mục “Project” đã sao trên đĩa cứng

- Ghõ vào dòng lệnh: “java tachthuatngu.Main ten_file_tai_lieu”

- Sau khi chương trình kết thúc, kết quả đã được ghi ra tệp tin như
chương trình thông bao. Bạn có thể mở tệp tin này (nên mở bằng
Notepad) để xem kết quả

Chú ý: Tệp tin đầu vào phải có dạng text, chứa các văn bản đặt ở phông .VN.
TỪ ĐIỂN THUẬT NGỮ

Data Mining Khai phá văn bản dữ liệu

Text Mining Khai phá dữ liệu văn bản

Text Categorization Phân loại văn bản

Text Clustering Lập nhóm văn bản

Information Retrieval (IR) Thu thập thông tin

Neural Network Mạng Nơ-ron

Decision tree Cây quyết định

AI-based method Phương pháp dựa trí tuệ nhân tạo

similarity Độ tương đồng

Vector space model (VSM) Mô hình không gian vec-tơ

Text summarization Tổng hợp văn bản

Term Thuật ngữ

MỤC LỤC
MỤC LỤC .......................................................................................................... 57
BẢNG DANH MỤC HÌNH HOẠ ...................................................................... 61
LỜI GIỚI THIỆU ................................................................................................. 1
I. Đặt vấn đề ......................................................................................................... 5
II. Cơ sở lý thuyết ................................................................................................. 7
1. Khái niệm Text Mining................................................................................. 7
a. Khai phá dữ liệu (Data Mining) ................................................................ 7
b. Khai phá dữ liệu văn bản (Text Mining) ................................................... 8
2. Bài toán phân loại văn bản (Text categorization) ........................................ 12
a. Khái niệm phân loại văn bản ................................................................... 12
b. Các phương pháp phân loại văn bản ....................................................... 13
b.1. Sử dụng từ điển phân cấp chủ đề ....................................................... 13
b.1.1. Giải thuật phân lớp và phân cấp chủ đề .................................... 13
b.1.2. Sự phù hợp và sự phân biệt của các trọng số ............................. 14
b.2. Phương pháp cây quyết định (Decision tree) ..................................... 16
3. Bài toán thu thập thông tin (Information retrieval - IR) ............................... 18
a. Khái niệm thu thập thông tin ................................................................... 18
b. Các phương pháp thu thập thông tin ....................................................... 20
b.1. Các phương pháp chuẩn .................................................................... 21
b.1.1. Mô hình Boolean ...................................................................... 21
b.1.2. Mô hình không gian vec-tơ (Vector space model - VSM) ......... 23
b.2. Các phương pháp dựa trí tuệ nhân tạo (AI-based method) ................. 28
b.2.1 Kỹ thuật mạng Nơ-ron (Neural network) ................................... 29
4. Một số công cụ phân tích văn bản tiếng Anh ............................................... 35
III. Các giải pháp áp dụng cho Vietnamese Text Mining ..................................... 39
1. Đặc trưng của văn bản tiếng Việt ................................................................ 39
a. Các đơn vị của tiếng Việt ........................................................................ 39
a.1. Tiếng và đặc điểm của tiếng .............................................................. 39
a.1.1. Tiếng và giá trị ngữ âm ............................................................. 39
a.1.2. Tiếng và giá trị ngữ nghĩa ......................................................... 39
a.1.3. Tiếng và giá trị ngữ pháp .......................................................... 40
a.2. Từ và các đặc điểm của từ ................................................................. 40
a.2.1. Từ là đơn vị nhỏ nhất để đặt câu ............................................... 40
a.2.2. Từ có nghĩa hoàn chỉnh và cấu tạo ổn định ............................... 41
a.3. Câu và các đặc điểm của câu ............................................................. 41
a.3.1. Câu có ý nghĩa hoàn chỉnh ........................................................ 41
a.3.2. Câu có cấu tạo đa dạng. ............................................................ 42
b. Các phương tiện ngữ pháp của tiếng việt. ............................................... 42
b.1. Trong phạm vi cấu tạo từ. .................................................................. 42
b.2. Trong phạm vi cấu tạo câu................................................................. 42
c. Từ tiếng việt ........................................................................................... 43
c.1. Từ đơn - từ ghép ................................................................................ 43
c.2. Từ loại ............................................................................................... 45
c.3. Dùng từ cấu tạo ngữ .......................................................................... 45
d. Câu tiếng việt ......................................................................................... 46
d.1. Câu đơn............................................................................................. 47
d.2. Câu ghép ........................................................................................... 48
d.2.1. Câu ghép song song.................................................................. 48
d.2.2. Câu ghép qua lại ....................................................................... 48
d.2.3. Các thành phần câu................................................................... 49
e. Các đặc điểm chính tả và văn bản tiếng Việt ........................................... 49
2. Các giải pháp, đánh giá hiệu quả, đề ra giải pháp cho phân tích văn bản tiếng
Việt ................................................................................................................ 50
a. Bài toán phân loại văn bản tiếng Việt...................................................... 51
b. Bài toán thu thập thông tin từ văn bản tiếng Việt .................................... 51
IV. Xây dựng thử chương trình tách thuật ngữ tiếng Việt theo phương pháp cổ điển
........................................................................................................................... 53
1. Chương trình và bài toán được giải quyết ................................................... 53
2. Kết quả chạy chương trình .......................................................................... 53
TÀI LIỆU THAM KHẢO................................................................................... 55
PHỤ LỤC ........................................................................................................... 56
Các thông tin về báo cáo ................................................................................. 56
Cách chạy chương trình demo ........................................................................ 56
TỪ ĐIỂN THUẬT NGỮ .................................................................................... 57
BẢNG DANH MỤC HÌNH HOẠ
Hình 1: Một ví dụ về cây quyết định
Hình 2. Mô hình thu thập thông tin chuẩn
Hình 3. Đồ thị biểu diễn các vec-tơ của bài báo D1 và D2
Hình 4: Đồ thị biểu diễn quan hệ giữa truy vấn (query) và các tài liệu D1, D2
Hình 5. Mạng nơ-ron: toán tử AND (a) và toán tử OR (b)
Hình 6. Mạng nơ-ron với lớp ẩn: toán tử NOR
Hình 7: Mô hình biểu diễn mạng nơ-ron
Hình 8: Minh hoạ công cụ TextAnalyst
Hình 9: Minh hoạ công cụ TextAnalyst nhúng trên Internet Explorer

You might also like