Kỹ thuật giảm chiều vector biểu diễn trong văn bản tiếng Việt

Một phần của tài liệu Nghiên cứu và phát triển phương pháp rút gọn câu tiếng việt dựa trên phương pháp học không giám sát (Trang 37 - 57)

2.3.3.1. Kỹ thuật giảm chiều véc tơ

Xem xét một số ứng dụng ví dụ như trong một hệ thống xử lý dữ liệu (tín hiệu tiếng nói, ảnh hoặc nhận dạng mẫu nói chung) tập các đặc trưng nếu

coi là tập hợp các vec tơ giá trị thực. Giả thiết rằng, hệ thống chỉ hiệu quả nếu số chiều của mỗi véc tơ riêng lẻ không quá lớn. Vấn đề của giảm chiều xuất hiện khi dữ liệu có số chiều lớn hơn khả năng xử lý của hệ thống [24]. Xét một ví dụ điển hình sau:

- Một hệ thống nhận dạng/ phân loại khuôn mặt dựa trên ảnh đa cấp xám kích cỡ mxn, tương ứng với mxn chiều véc tơ giá trị thực. Trong thực nghiệm, một ảnh có thể có m=n=256 hoặc 65536 chiều. Nếu sử dụng mạng một perceptron đa lớp để thực hiện hệ thống phân loại, trọng số sẽ quá nhiều [24].

- Giả sử một ma trận dữ liệu An bao gồm n hàng (điểm dữ liệu) và trong RD, D là các chiều (các đặc trưng hoặc các thuộc tính). Ma trận A được biểu diễn như hình dưới đây.

Hình 2.5. Ma trận ví dụ

Chi phí tính toán là O(n2D). Trong trường hợp nếu n= 0.6 triệu, D= 70 triệu. . Như vậy, quá lớn cho quá trình xử lý.

Do đó, vấn đề giảm chiều là vấn đề tương đối cần thiết trong các bài toán làm việc với dữ liệu có nhiều đặc trưng ví dụ như ảnh, tiếng nói, văn bản,…. Vấn đề giảm chiều véc tơ được đơn giản hóa như mô hình dưới đây

Số chiều vec tơ

lớn Giảm chiều

Số chiều vec tơ nhỏ

Hệ thống xử lý

Phức tạp

2.3.3.2. Kỹ thuật giảm chiều véc tơ trong biểu diễn văn bản tiếng Việt

Như đã trình bày tại mục trên, đặc trưng phổ biến nhất được sử dụng trong khai phá dữ liệu văn bản là tần suất từ. Khi chuẩn bị trích rút đặc trưng, thuật toán cần xem xét tất các các văn bản trong tập dữ liệu và tạo ra một từ điển tất cả các từ xuất hiện trong các văn bản đó. Mỗi từ trong từ điển được đặt tại một vị trí trong véc tơ đặc trưng đầu ra. Khi các đặc trưng của văn bản được trích rút, giá trị này trong véc tơ đặc trưng sẽ biểu diễn số lần mà từ này xuất hiện trong văn bản. Do vậy số từ sẽ rất lớn.

Khái niệm giảm chiều lần đầu được công bố bởi Bellman (1961). Bellman cho rằng sẽ rất khó khăn khi tính toán số các đặc trưng khi số lượng từ quá nhiều. Và bài toán về tra cứu thông tin văn bản cũng đề cập tới vấn đề đặc trưng được đề cập lần đầu tiên bởi Koller và Sahami (1997).

Hình dưới đây minh họa một kết quả thực nghiệm của Zervas (1999). Đồ thị biểu diễn nếu số véc tơ dữ liệu (văn bản) mà tăng thì số véc tơ đặc trưng (từ) cũng tăng theo.

1 2 n 200 100 m Số lượng văn bản Số lư ợn g đặ c tr ưn g

Hình 2.7. Quan hệ giữa văn bản và thuật ngữ

Nếu ta sử dụng ma trận T (mục 2.1.1.2) để biểu diễn văn bản thì số chiều của ma trận T sẽ tương đương với số từ của văn bản.

Ví dụ 2.4: Xét văn bản tiếng Việt gốc gồm một câu với 34 từ:

“Các nhà nghiên cứu thuộc trường Đại học Michigan vừa tạo ra một nguyên mẫu đầu tiên cho hệ thống tính toán quy mô nhỏ, có thể chứa dữ liệu một tuần khi tích hợp chúng vào trong những bộ phận rất nhỏ như mắt người.”

Với văn bản gốc này, chúng ta tính trọng số của 34 từ. Do văn bản này chỉ gồm một câu nên ma trận trọng số T biểu diễn văn bản sẽ gồm một hàng và 34 cột T {w1,1,w1,2,...,w1,34}. Trong trường hợp tổng quát văn bản gốc thường bao gồm nhiều câu, mỗi câu lại gồm nhiều từ, do đó nếu biểu diễn theo cách như trên, ma trận trọng số biểu diễn văn bản sẽ có số hàng rất lớn, đòi hỏi nhiều thời gian tính toán.

Nhận xét: Đối với văn bản càng gồm nhiều câu và mỗi câu lại gồm nhiều từ, sẽ cần tới thời gian xử lý lớn dẫn đến độ phức tạp tính toán lớn.

Do đó, một số nghiên cứu đã đưa ra một số các phương pháp giảm chiều bằng cách xây dựng tập các thuật ngữ cho mỗi chủ đề, điều này sẽ giảm được độ phức tạp khi tính toán với các ma trận có kích cỡ lớn.

Liu và Motoda (1998), Sebastiani (2002) đều xây dựng các tập từ điển dùng cho vấn đề giảm chiều bằng ba phương pháp chung như sau:

- Từ dừng (stop words) - Stemming

- Lọc thống kê (Statistical filtering)

{f1,f2,…,fn} Document Tiền xử lý Từ dừng Lọc thống kê {f1,f2,…,fm} Rút gọn đặc trưng Trích chọn đặc trưng

Trong luận văn này đề cập tới vấn đề giảm chiều của văn bản bằng cách biến đổi ma trận T thành ma trận thưa. Có nghĩa là, một số phần tử trong ma trận T sẽ không xử lý tính toán.

Trong phương pháp này, văn bản trước khi biểu diễn được tách thành hai tập từ độc lập: tập bao gồm các danh từ và tập bao gồm các từ không phải là danh từ. Ma trận T lúc này chỉ lưu giữ và tính toán các từ là danh từ trong văn bản. Bởi trong một văn bản bất kỳ, danh từ là những từ thường chứa nội dung, thông tin của văn bản đó. (adsbygoogle = window.adsbygoogle || []).push({});

Ví dụ 2.5: Xét văn bản đã cho ở Ví dụ 2.1

Tách câu này thành hai tập từ riêng biệt, tập các từ chủ đề và tập các từ còn lại như sau:

Tập từ chủ đề: {nhà, nghiên_cứu, trường, đại_học, Michigan, nguyên_mẫu, hệ_thống, quy_mô, dữ_liệu, tuần, chúng, bộ_phận, mắt, người}.

Tập các từ khác: {Các, thuộc, vừa, tạo, ra, một, đầu_tiên, cho, tính_toán, nhỏ, có_thể, chứa, một, khi, tích_hợp, vào, trong, những, rất, như }.

Ta nhận thấy, các từ “nhà”, “nghiên_cứu”, “trường”, “đại_học”, “Michigan”, “nguyên_mẫu”, “hệ_thống”, “quy_mô”, “dữ_liệu”, “tuần”, “chúng”, “bộ_phận”, “ mắt”,” người” là các từ mang thông tin, còn các từ “Các”, “thuộc”, “vừa”, “tạo”, “ra”, “một”, “đầu_tiên”, “cho”, “tính_toán”, “nhỏ”, “có_thể”, “ chứa”, “một”, “khi”, “tích_hợp”, “vào”, “trong”, “những”, “rất”, “như” phản ánh về mặt ngữ nghĩa của câu.

Sử dụng kỹ thuật tách văn bản gốc thành hai tập từ như ở trên, cỡ của ma trận T sẽ giảm xuống, chẳng hạn, với văn bản gốc trong Ví dụ 2.1, thay vì phải sử dụng ma trận T gồm một hàng và 34 cột, chúng ta chỉ cần ma trận T’ gồm một hàng và 14 cột: T' {w1,1,w1,2,...,w1,14}

2.3.4. Phương pháp rút gọn câu tiếng Việt dựa trên kỹ thuật học không giám sát giám sát

Phương pháp rút gọn câu tiếng Việt dựa trên kỹ thuật học không giám sát được mô tả dựa trên mô hình lưới sau đây:

w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 Hình 2.9. Mô hình đồ thị lưới

Trên đồ thị thể hiện một câu gốc gồm có 11 từ, trong đó các từ w4, w6, w8, w9 là các từ chủ đề. Câu rút gọn được sinh ra như sau:

- Đầu tiên bắt đầu từ từ w1, w1 có thể đi tới w2, w3, và dừng lại ở w4 với w4 là từ chủ đề được chọn.

- Tiếp theo tính S12= w1-w2, S13=w1-w3, S14=w1-w4… Lấy đường dẫn lớn nhất. Giữ vị trí để đi tới điểm tiếp theo. Nếu S14=0, quay lại chọn tiếp đường dẫn khác 0. Nếu S124<>0 và S134 <>0 thì chọn đường dẫn có giá trị lớn hơn. Giá trị của các Si chính là giá trị N-grams.

- Tiếp tục neo tại vị trí w4. Từ w4 lại đi tiếp các từ còn lại. - Câu rút gọn là hình chiếu của các từ trên đường nằm ngang x.

Từ đồ thị lưới trên, tôi tổng kết các bước cơ bản của phương pháp sinh câu rút gọn như sau:

- Bước 1: Tách các từ trong câu thành 2 tập riêng biệt. Tập từ chủ đề và tập các từ khác.

- Bước 2: Tính trọng số của từ chủ đề theo công thức (2-13). - Bước 3: Thể hiện các từ trên lưới như hình 2.10.

- Bước 4: Sinh câu rút gọn được coi như bài toán tìm đường đi từ nút trái bên dưới tới nút trên cùng bên phải. Câu rút gọn được sinh ra dựa trên hình chiếu của các từ và tính tổng S={S1,S2,…,Sn} theo nguyên tắc sau:

o Đi qua các từ chủ đề được chọn.

o Đảm bảo các các Si <>0.

o Chọn câu ngắn nhất.

o Đảm bảo mọi đường dẫn thuộc Si <>0.

2.4. Kết luận chƣơng 2

Trong chương 2, tôi đã trình bày phương pháp rút gọn câu tiếng Việt dựa trên kỹ thuật học không giám sát. Trong phương pháp này, tôi đã tối ưu hóa tìm ra câu rút gọn tốt nhất bằng cách sử dụng quy hoạch động tìm đường đi ngắn nhất mà vẫn đảm bảo ngữ pháp của câu.

Chƣơng 3.

XÂY DỰNG ỨNG DỤNG RÚT GỌN CÂU DỰA TRÊN KỸ THUẬT HỌC KHÔNG GIÁM SÁT

Trong chương này, luận văn trình bày phương pháp lựa chọn dữ liệu, lưu trữ và xây dựng hệ thống ứng dụng rút gọn câu dựa trên kỹ thuật học không giám sát, đồng thời luận văn cũng có các thử nghiệm, đánh giá phương pháp được cài đặt với tập dữ liệu văn bản tiếng Việt

3.1. Kiến trúc tổng quát của hệ thống

Hệ thống tóm tắt văn bản dựa trên cách tiếp cận rút gọn câu được chia thành 2 pha chính: Pha huấn luyện và pha rút gọn.

- Pha huấn luyện: Là pha tách các từ chủ đề và tính giá trị trọng số của các từ chủ đề trong kho ngữ liệu rồi lưu vào cơ sở dữ liệu.

- Pha rút gọn: Pha thực hiện rút gọn câu. (adsbygoogle = window.adsbygoogle || []).push({});

Chức năng chính của hệ thống được mô tả như hình vẽ 3.1 dưới đây

HỆ THỐNG RÚT GỌN CÂU TIẾNG VIỆT

HUẤN LUYỆN RÚT GỌN CÂU

Hình 3.1. Sơ đồ chức năng hệ thống rút gọn câu tiếng Việt

Hình 3.2 dưới đây mô tả biểu đồ ca sử dụng tổng quát của hệ thống. Trong biểu đồ use case tổng quát. Các tác nhân bao gồm có người quản trị hệ thống và người dùng. Người quản trị có các quyền thêm dữ liệu, sửa dữ liệu, xóa dữ liệu, huấn luyện, xem thông tin. Tác nhân là người dùng chỉ được quyền nhập dữ liệu văn bản và xem thông tin kết quả hiển thị của hệ thống.

Người quản trị Người dùng Thêm dữ liệu Sửa dữ liệu Xóa dữ liệu Huấn luyện Rút gọn câu «uses» «uses» «uses» «uses» «uses» «uses»

Hình 3.2. Biểu đồ Use case tổng quát

3.2. Xây dựng tập dữ liệu và tập từ điển danh từ

3.2.1. Xây dựng tập dữ liệu

Tập dữ liệu sử dụng trong rút gọn câu được sử dụng trong luận văn này là tập các văn bản tiếng Việt. Luận văn đã xây dựng kho ngữ liệu một cách thủ công. Nguồn thông tin được sử dụng chủ yếu từ các trang web: http://thongtincongnghe.com, http://Echip.com, http://vnexpress.net, http://vietnamnet.vn, http://Ngoisao.net, http://Tin247.com,… kho dữ liệu này bao gồm 300 văn bản.

3.2.2. Tiền xử lý và chuẩn hóa dữ liệu

Tập văn bản đầu vào là văn bản dạng thô, để đơn giản cho việc xử lý dữ liệu, với mỗi văn bản đầu vào, ta sẽ thực hiệc qua bước tiền xử lý ký tự để đưa văn bản về dạng xâu chuẩn. Ở đây xâu chuẩn là xâu mà trong đó không

có 2 dấu cách nào liền nhau, có dấu câu khi kết thúc xâu, trước dấu câu không có dấu cách. Để có được xâu chuẩn, chuẩn bị cho việc tách từ, ta thực hiện qua các bước sau:

1. Chuyển hết các ký tự chữ hoa thành chữ thường.

2. Dùng các dấu câu (bao gồm dấu “.” “,” “:”…) để tách văn bản thành một tâp hợp các câu. Ta có thể tách như vậy vì 2 âm tiết cách nhau bởi một dấu câu sẽ không bao giờ thuộc về cùng một từ

3. Tiến hành chuẩn hoá với mỗi câu:

Khi có >1 dấu cách đứng kề nhau, loại bớt đi, chỉ để lại một dấu cách loại bỏ những dấu cách ở đầu và cuối câu.

Hình 3.3 dưới đây mô tả một văn bản đã được tiền xử lý và chuẩn hóa lưu trữ trong cơ sở dữ liệu của hệ thống.

Hình 3.3. Văn bản đã chuẩn hóa 3.2.3. Xây dựng bộ từ điển danh từ

Từ tập dữ liệu huấn luyện ban đầu sau quá trình chuẩn hóa văn bản ta xây dựng bộ từ điển bao gồm các danh từ. Để xây dựng được bộ từ điển danh từ này, phải xây dựng một cách thủ công dựa trên hệ thống gán nhãn từ loại và lưu vào cơ sở dữ liệu của hệ thống. Hình 3.4 dưới đây là hệ thống gán nhãn từ loại mà luận văn sử dụng trong quá trình xây dựng bộ từ điển danh từ thủ công.

Hình 3.4. Hệ thống vlsp

Bảng 3.1 dưới đây mô tả một cấu trúc bảng bao gồm các danh từ được tách ra từ tập dữ liệu văn bản [5].

Bảng 3.1. Danh sách từ chủ đề trong kho ngữ liệu

STT Từ chủ đề Giá trị thông tin

1 bộ nhớ 0.057 2 bộ xử lý 0.032 3 cấu hình 0.077 4 chat 0.045 5 internet 0.340 6 Lan 0.114 7 Đĩa cứng 0.008 8 hệ điều hành 0.176 9 Hacker 0.045 10 trình duyệt 0.032 11 wifi 0.016 12 Tín hiệu 0.036 13 windows 8 0.012 14 bo mạch chủ 0.012 15 vista 0.053 16 giao diện 0.081 17 Mã nguồn mở 0.024 18 Tín hiệu 0.036 19 điện thoại 0.303 20 hiệu năng 0.036

3.3. Môi trƣờng cài đặt

3.3.1. Môi trường cài đặt của hệ thống

Hệ thống được xây dựng trên nền web để thuận tiện cho việc tra cứu trực tuyến. Hệ thống sử dụng ngôn ngữ C# trong bộ visual studio 2010 .

3.3.2. Cơ sở dữ liệu của hệ thống

Cơ sở dữ liệu của hệ thống mô tả các thông tin lưu trữ của hệ thống trong cơ sở dữ liệu. Bao gồm thông tin văn bản trong tập dữ liệu (Text_Instructor), bảng từ điển chứa các từ (Vocabulary_Smr), bảng từ dừng (Tbl_stopword), Hình 3.5 dưới đây mô tả cơ sở dữ liệu của hệ thống rút gọn câu tiếng Việt. (adsbygoogle = window.adsbygoogle || []).push({});

Hình 3.5. Cơ sở dữ liệu của hệ thống 3.3.3. Một số giao diện chính của hệ thống

3.3.3.1. Giao diện chính

Hệ thống rút gọn câu tiếng Việt có hai pha chính. Giao diện dưới đây mô tả giao diện của pha huấn luyện. Các văn bản được học để cập nhật trọng số vào cơ sở dữ liệu của hệ thống.

Hình 3.6. Giao diện huấn luyện của hệ thống

Hình 3.7 dưới đây mô tả giao diện người dùng khi rút gọn câu

Hình 3.7. Kết quả rút gọn câu

Hình 3.8 dưới đây mô tả phần quản lý trong hệ thống. Đây chính là phần lưu trong cơ sở dữ liệu của hệ thống hay còn gọi là kho ngữ liệu gồm nhiều văn bản khác nhau.

Hình 3.8. Cửa sổ chọn file

3.3.3.2. Quản lý từ điển

Hình 3.9 dưới đây mô tả chức năng quản lý bộ từ điển danh từ. Các tính năng quản lý bao gồm: thêm danh từ, sửa danh từ, xóa danh từ, cập nhật danh từ.

3.4. Kết quả thực nghiệm

Đối với tóm tắt kiểu trích rút câu, để đánh giá kết quả thực nghiệm có thể sử dụng các độ đo recall hoặc precision để đánh giá độ chính xác của hệ thống đối với kết quả được cho bởi con người. Tuy nhiên, với hệ thống tóm tắt dựa trên rút gọn câu, ta phải đánh giá dựa trên một phần phương pháp thủ công. Có 2 độ đo chính được sử dụng trong đánh giá rút gọn câu:

- Độ đo trùng lặp về các từ trích rút dùng độ đo precision. - Độ đo ngữ pháp của câu.

Dựa trên độ đo trên, việc thực hiện đánh giá cần được lưu trữ trên bảng dữ liệu với các thông số: Độ chính xác và độ ngữ pháp của câu.

Việc thực nghiệm được tiến hành trên 30 văn bản với 100 câu gốc. Đánh giá câu được thực hiện độc lập bởi kết quả của hệ thống và kết quả của con người:

- Đánh giá độ chính xác:

 100 câu gốc được in trên phiếu và đưa tới nhiều người khác nhau để tiến hành rút gọn thủ công.

 Tiếp theo sử dụng công thức precision để tính độ trùng lặp giữa các từ trong từng câu được lựa chọn bởi hệ thống và con người

Một phần của tài liệu Nghiên cứu và phát triển phương pháp rút gọn câu tiếng việt dựa trên phương pháp học không giám sát (Trang 37 - 57)