luẬn vĂn thẠc sĨ kỸ thuẬt -...

14
1 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG ------------------------------------------ HOÀNG THỊ VÂN ANH TRÍCH RÚT THỰC THỂ TÊN TỪ CÁC VĂN BẢN TIẾNG VIỆT TRÊN INTERNET LUẬN VĂN THẠC SĨ KỸ THUẬT HÀ NỘI – 2012

Upload: vanlien

Post on 24-May-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

1

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

------------------------------------------

HOÀNG THỊ VÂN ANH

TRÍCH RÚT THỰC THỂ TÊN TỪ CÁC VĂN BẢN

TIẾNG VIỆT TRÊN INTERNET

LUẬN VĂN THẠC SĨ KỸ THUẬT

HÀ NỘI – 2012

Page 2: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

2

Luận văn được hoàn thành tại:

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

Người hướng dẫn khoa học: TS. Nguyễn Phương Thái

Phản biện 1: …………………………………………………………

Phản biện 2: …………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại

Học viện Công nghệ Bưu chính Viễn thông

Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ...............

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Page 3: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

26

với đặc thù riêng của bài toán trích rút thực thể tên tiếng

Việt. Hệ thống đã hoạt động và trích rút các thực thể tên từ

các văn bản tiếng Việt.

Quá trình xây dựng hệ thống còn gặp một số khó

khăn như: Thuật toán DIPRE chỉ thường áp dụng cho các

bài toán trích rút cặp quan hệ. Vì vậy, khi trích rút thực thể

đơn sẽ gặp khó chọn lọc được Pattern mẫu trong quá trình

xây dựng Pattern và sinh Pattern mới. Mặt khác, thực thể

tên có nhiều cách biểu diễn khác nhau nên rất khó để tìm

ra mối liên hệ khi xây dựng mẫu hoặc có thể xảy ra nhập

nhằng.

Trong tương lai, tôi sẽ tiếp tục nghiên cứu về trích

rút thông tin và phát triển hệ thống, bổ sung chức năng tìm

kiếm, nhận diện thực thể tên ở những trường hợp đặc biệt

và nâng cao chất lượng trích rút. Tôi dự định sẽ tìm hiểu

sâu hơn về kỹ thuật xây dựng Pattern để có những Pattern

hợp lý hơn. Ngoài ra, tôi sẽ tiến hành phân tích thêm về

xâu ký tự đứng trước Pattern để hạn chế nhập nhằng và

trích rút được thực thể tên ở một số dạng đặc biệt.

3

MỞ ĐẦU

Thông tin trên các trang web thường thể hiện dưới

dạng ngôn ngữ tự nhiên và được định dạng theo HTML.

Hạn chế của HTML là thiếu khả năng diễn đạt ngữ nghĩa

về các đối tượng xuất hiện trong trang web nên phần lớn

nội dung thông tin trên các trang web chỉ phù hợp cho

người đọc hiểu. Hầu hết các công cụ tìm kiếm tài liệu trên

web được coi là tìm kiếm hiệu quả cũng chủ yếu tìm kiếm

được trên bề nổi của web.

Để khai thác hiệu quả nguồn thông tin trên các

trang web, chúng ta cần nghiên cứu các ứng dụng tự động

xử lý văn bản. Trước hết, chúng ta cần xây dựng hệ thống

tự động trích rút các thực thể, các khái niệm xuất hiện dựa

vào một nguồn tri thức về các thực thể và các khái niệm

phổ biến trong thế giới thực. Từ đó, chúng ta có thể xây

dựng các hệ thống khai thác dữ liệu để khai phá các lớp tri

thức nhằm hiểu đầy đủ ngữ nghĩa của văn bản. Tiếng Việt

có nhiều cách viết, cách thể hiện nội dung nên quá trình

trích rút thông tin từ các văn bản tiếng Việt gặp nhiều khó

khăn hơn trong các văn bản tiếng Anh. Trong luận văn, tôi

Page 4: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

4

tiến hành nghiên cứu và xây dựng hệ thống tự động trích

rút thực thể tên từ các văn bản tiếng Việt trên Internet.

CHƯƠNG I: TỔNG QUAN

1.1. Bài toán trích rút thực thể tên

1.1.1. Phát biểu bài toán trích rút thực thể tên

Theo Baumgarter, hệ thống trích rút thông tin là

một hệ thống phần mềm tự động và liên tục trích rút dữ

liệu các trang web có nội dung thay đổi và phân phối dữ

liệu trích rút vào cơ sở dữ liệu hoặc các ứng dụng khác.

Hình 1.1 Mô hình hệ thống trích rút thông tin trên web

Hệ thống trích rút thông tin thường đưa ra kết quả

là các mẫu (template) chứa một số lượng xác định các

trường (slots) đã được điền thông tin. Bài toán trích rút

25

KẾT LUẬN

Luận văn đã hệ thống hóa một số lý thuyết về trích

chọn thông tin, trình bày, phân tích, đánh giá các phương

pháp đó. Sau đây là một số nét chính mà luận văn đã tập

trung giải quyết.

Chương I trình bày và nêu ý nghĩa của bài toán

trích rút thực thể tên. Trong chương I, phần đặc điểm tiếng

Việt được để có thể làm căn cứ cho quá trình tìm kiếm và

trích rút thực thể tên. Ngoài ra, chương I còn trình bày một

số hướng tiếp cận để giải quyết bài toán trên là: Giải thuật

DIPRE, phương pháp Snowball, phương pháp KnowItAll.

Sau đó, luận văn phân tích ưu nhược điểm của từng

phương pháp để đề xuất một phương pháp có hiệu quả hơn

trong trích rút thực thể tên. Ở đây, luận văn sử dụng giải

thuật DIPRE kết hợp Snowball để xây dựng hệ thống trích

rút thực thể tên.

Chương II đưa ra mô hình khái quát, mô hình chi

tiết, ý tưởng và cách giải quyết bài toán trích rút thực thể

tên từ các văn bản tiếng Việt.

Chương III xây dựng hệ thống thử nghiệm dựa theo

ý tưởng của thuật toán DIPRE và có cải tiến để phù hợp

Page 5: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

24

Bảng 3.4. Bảng kết quả thực nghiệm

File name

correct incorrect Missing Spurious Pre Rec F

1019.seg 5 0 1 1 83,33 83,33 83,33

974.seg 4 2 0 0 66,67 66,67 66,67

46609.seg 11 3 2 0 78,57 68,75 73,33

53.seg 20 1 0 0 95,24 95,24 95,24

23254.seg 6 1 1 0 85,71 75,00 80,00 Trung bình: 81,90 77,80 79,71

0,00

50,00

100,00

1 2 3 4 5 6

Pre

Hình 3.5. Giá trị ba độ đo Precision, Recall, F-measure

Kết quả cho thấy, hệ thống trích rút thực thể tên hoạt động

rất tốt ở những văn bản viết đúng, đầy đủ các tiền tố và

quy tắc trình bày của thực thể tên.

5

thực thể tên trong các văn bản tiếng Việt còn gặp nhiều

khó khăn hơn so với bài toán trong các văn bản tiếng Anh

vì một số nguyên nhân như: Thiếu dữ liệu huấn luyện và

các ngồn tài nguyên có thể tra cứu như WordNet trong

tiếng Anh, tồn tại rất nhiều vấn đề nhập nhằng làm cho

việc trích rút gặp nhiều khó khăn.

1.1.2. Ý nghĩa của bài toán trích rút thực thể tên

- Hỗ trợ xây dựng Sementic Web.

- Xây dựng các máy tìm kiếm hướng thực thể.

- Hỗ trợ hệ thống tự động tóm tắt văn bản.

1.2. Đặc điểm tiếng Việt

Phần lớn vốn từ vựng của tiếng Việt là các từ đa âm

tiết. Cùng một sự vật, hiện tượng, một hoạt động hay một

đặc trưng có thể được biểu thị bởi nhiều từ ngữ khác nhau

gây khó khăn khi xây dựng hệ thống trích rút thực thể tên.

Thực tế đã có rất nhiều nghiên cứu và hệ thống xử lí, phân

đoạn từ. Trong hệ thống trích rút xây dựng ở phần demo,

hệ thống sẽ sử dụng các văn bản đã được chạy qua hệ

thống phân đoạn từ nên hệ thống bỏ qua bước phân đoạn

từ.

1.3. Một số nghiên cứu liên quan

Page 6: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

6

1.3.1. Giải thuật Dual Iterative Pattern Relation

Expansion (DIPRE)

Giải thuật DIPRE (Dual Iterative Pattern Relation

Expansion) dùng để trích rút mẫu quan hệ ngữ nghĩa

“author – book” với tập dữ liệu ban đầu khảng 5 ví dụ cho

mối quan hệ này. Hệ thống DIPRE mở rộng tập ban đầu

thành một danh sách khoảng 15.000 cuốn sách.

Tóm tắt giải thuật DIPRE như sau:

Đầu vào: Tập các quan hệ mẫu S={Ai , Bi}

Ví dụ: trong trường hợp trên, tập quan hệ mẫu là S

= {<authori , booki}. Tập này được gọi là tập hạt giống.

Đầu ra: Tập các quan hệ R trích chọn được.

Xử lý:

- Tập quan hệ đích R được khởi tạo từ tập hạt giống

(seed) S. Ký hiệu tập seed ban đầu là <A, B>

- Tìm tất cả các câu có chứa đủ các thành phần của

tập seed ban đầu.

- Dựa vào tập câu đã tìm được, tiến hành tìm các

mẫu quan hệ giữa các thành phần của seed ban đầu. Mẫu

quan hệ được biểu diễn dưới dạng sau:

[order, author, book, prefix, suffix, middle]

23

Hình 3.1 Giao diện hệ thống

Hệ thống có 3 Module:

- Module Trích rút: dùng để trích rút thực thể tên

từ bài báo đã chọn. Kết quả sau khi trích rút hiển thị trong

phần KẾT QUẢ

- Module Huấn luyện: lấy kết quả trích rút từ bài

báo và làm giàu cơ sở dữ liệu để phục vụ cho quá trình

trích rút thực thể tên từ các bài báo khác.

- Module Thống kê: Thống kê số thực thể tên theo

nhóm đã chọn trích rút được.

3.3. Đánh giá kết quả của hệ thống.

Hệ thống đã thực hiện thực nghiệm nhiều lần với

nhiều văn bản khác nhau.

Hệ thống đã thực hiện thực nghiệm nhiều lần với

nhiều văn bản khác nhau được kết quả như bảng 3.4

Page 7: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

22

CHƯƠNG III: THỰC NGHIỆM

3.1. Môi trường và dữ liệu thực nghiệm

3.1.1. Phần cứng

3.1.2. Phần mềm

3.1.3. Dữ liệu thực nghiệm

Dữ liệu thực nghiệm là các bài báo từ Internet đã

qua bộ tiền xử lý phân đoạn từ.

3.1.4. Thiết kế cơ sở dữ liệu

* Bảng tblPattern: Chứa dữ liệu là tiền tố và tên

nhóm thực thể tên tương ứng cần trích rút.

* Bảng tblNotPattern: Chứa dữ liệu là các mẫu

phạm quy và tên nhóm thực thể tên tương ứng.

* Bảng tblOccurrences: chứa dữ liệu là các tiền tố,

thực thể tên và tên nhóm thực thể tên tương ứng.

3.2. Giới thiệu hệ thống trích rút tự động thực thể

tên từ các văn bản tiếng Việt trên Internet

Hệ thống được thiết kế bằng ngôn ngữ lập trình C#

trên nền tảng .Net Framework của Microsoft Visual Studio

2008 và sử dụng dữ liệu lưu trữ trong phần mềm quản trị

dữ liệu SQL Server 2005.

Hệ thống có giao diện như sau:

7

Từ những mẫu chưa được gán nhãn, ta thu được

một tập seed <A’, B’> mới; thêm seed mới này vào tập

seed cho quan hệ đó.

- Quay lại bước 2 để tìm ra những hạt giống và mẫu

mới.

* Thuật toán GenOnePattern(O) sinh một Pattern

1) Điều kiện: order và middle của tất cả sự xuất hiện

(occurrences) phải giống nhau.

Nếu điều kiện trên không thỏa mãn thì không thể sinh

ra được pattern khớp với tất cả occurrences.

Đặt outpattern.order và outpattern.middle tương ứng

với order và middle.

2) Tìm đoạn prefix giống nhau dài nhất của các urls.

Đặt outpattern.urlprefix = prefix

3) Đặt outpattern.prefix là xâu giống nhau dài nhất của

các prefixs tính từ cuối (suffix) của các tiền tố

(prefixs)..

4) Đặt outpattern.suffix là xâu giống nhau dài nhất của

các suffix tính từ đầu (prefix) của các hậu tố (suffixs)

đó.

Kết quả thu được một pattern.

Page 8: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

8

* Thuật toán GenPatterns(O) sinh tập Patterns

Thuật toán cho GenPatterns(O) dựa vào thuật toán

GenOnePattern(O) ở trên :

1) Nhóm tất cả sự xuất hiện o (occurrences) trong

O theo order và middle thành nhóm O1 , …, Ok.

2) Với mỗi Oi , p GenOnePattern( Oi). Nếu p

thoả mãn điều kiện về độ “riêng biệt” thì nhận p

đưa ra ngoài. Nếu không:

- Nếu tất cả o trong Oi có chung url thì bỏ Oi.

- Ngược lại: Tách các o trong Oi thành những

nhóm con dựa vào đặc điểm urls của chúng qua

p.urlprefix. Lặp lại bước 2.

1.3.2. Phương pháp Snowball

Snowball là hệ thống trích rút mối quan hệ “tổ

chức – địa điểm” mà tập mẫu và tập seed mới được sinh ra

được đánh giá chất lượng trong quá trình xử lý.

Hình 1.3 Kiến trúc của hệ thống Snowball

21

thức chính quy CandidateRegularExpression nên cần phải

cắt tỉa và chuẩn hóa để thu được tên chính xác.

Cách viết của tiếng Việt trong các văn bản tiếng Việt

trên Internet rất đa dạng và phong phú. Vì vậy, đôi khi

thông tin viết trong các văn bản tiếng Việt trên Internet

không thật sự theo chuẩn – chuẩn ngữ pháp, chuẩn chữ

hoa chữ thường… khiến cho việc việc cắt tỉa gặp nhiều

khó khăn. Tuy nhiên, các văn bản tiếng Việt đưa vào hệ

thống là các văn bản đã qua khâu tách từ và viết chuẩn chữ

hoa chữ thường. Vì vậy, đây là mặt thuận lợi để kiểm tra

xem xâu con của xâu kỳ vọng CandidateString có phải là

xâu thực thể tên cần trích rút hay không.

2.4 Tổng kết chương

Chương 2 đã trình bày toàn bộ ý tưởng và các thuật

toán để giải quyết bài toán trích rút thực thể tên. Tận dụng

ưu điểm của các văn bản đã qua khâu phân đoạn từ, việc

xây dựng hệ thống trích rút thực thể tên đỡ phức tạp hơn

rất nhiều. Hệ thống trích rút thực thể tên sẽ tập trung vào

khâu nhận biết thực thể qua các tiền tố và tiến hành trích

rút.

Page 9: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

20

Bước 2: Kiểm tra ký tự đầu tiên của xâu ký tự được

kỳ vọng là thực thể tên có phải là chữ hoa hay không.

Bước 3: Kiểm tra xâu ký tự tìm được có trùng với

các xâu ký tự trong bảng tblNotPattern hay không.

Bước 4: Kiểm tra xâu ký tự so khớp tìm được đã có

trùng với kết quả ở các bước lặp trước hay không.

Bước 5: Tách xâu ký tự so khớp tìm kiếm được thành

hai xâu con (PrefixPattern, tên thực thể) và kiểm tra sự

xuất hiện của Pattern này.

Bước 6: Lấy từng tên thực thể thu được so khớp với

toàn bộ văn bản để tìm ra các PrefixPattern mới.

Hệ thống cứ tìm kiếm, trích rút thực thể tên liên tục

cho đến khi số lượng PrefixPattern bẳng 0 hoặc số lượng

xâu ký tự so khớp tìm được sau bước 5 của vòng lặp tìm

sự xuất hiện bị loại nhiều.

OutPut: Các thực thể tên có trong văn bản

2.3. Quy tắt tách tên thực thể từ xâu kỳ vọng

CandidateString

Xâu CandidateString là xâu được “kỳ vọng” là có

chứa tên thực thể thuộc nhóm thực thể tên cần trích rút.

Ban đầu nó chỉ là một xâu bất kỳ được đoán nhận bởi biểu

9

* Hệ thống Snowball bao gồm các bước sau:

Bước 1: Học bán tự động để trích rút mẫu.

Snowball bắt đầu thực hiện với tập seed ban đầu mô tả về

một mối quan hệ và một tập văn bản (tập huấn luyện).

Các mẫu sau khi tìm thấy sẽ được đối chiếu lại với

kho dữ liệu ban đầu để kiểm tra xem chúng có tìm ra được

các bộ dữ liệu seed mới <A’, B’> nào không. Seed mới

<A’, B’> sẽ nằm một trong các trường hợp sau:

- Positive: <A’, B’> đã nằm trong danh sách seed

- Negative: chỉ có đúng một trong hai (A’ hoặc B’)

xuất hiện trong danh sách seed.

- Unknown: cả A’, B’ đều không xuất hiện trong

danh sách seed. Tập Unknown được xem là tập các seed

mới cho vòng lặp sau.

Snowball sẽ tính độ chính xác của từng mẫu dựa

trên số Positive và Negative của nó và chọn ra top N mẫu

có điểm số cao nhất.

Bước 2: Tìm các seed mới cho vòng lặp tiếp theo.

Với mỗi mẫu trong danh sách top N được chọn sẽ

là các cặp trong tập seed mới được đưa vào vòng lặp mới.

Page 10: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

10

Hệ thống sẽ chọn ra được m cặp được đánh giá tốt

nhất dùng làm seed cho quá trình rút mẫu kế tiếp.

Hệ thống tiếp tục quay lại bước một. Quá trình trên

lặp cho đến khi hệ thống không tìm được cặp mới hoặc lặp

theo số lần mà ta xác định trước.

1.3.3. Phương pháp KnowItAll

Phương pháp KnowItAll tiến hành trích rút ra

những sự vật, khái niệm và các mẫu quan hệ từ các trang

web. KnowItAll được mở rộng từ một ontology và dựa

vào một tập các luật để từ đó trích rút ra các luật cho mỗi

lớp và các quan hệ trong ontology [4].

Đầu vào của KnowItAll là một tập các lớp thực thể

được trích xuất, kết quả là một danh sách các thực thể

được trích xuất từ các trang web. Các mẫu sử dụng đã

được gán nhãn bằng tay, những mẫu này được xây dựng

dựa vào việc tách cụm danh từ (Noun Phrase chunker).

1.4. Tổng kết chương

Phương pháp KnowItAll sử dụng các kĩ thuật xử lý

ngôn ngữ (phân tích cú pháp, tách cụm danh từ) nên khó

áp dụng cho tài liệu tiếng Việt vì đối với ngôn ngữ tiếng

Việt, các kĩ thuật xử lý ngôn ngữ, tài nguyên ngôn ngữ học

19

Quá trình trên được lặp lại nhiều lần cho đến khi

không sinh ra được pattern mới hoặc độ chính xác của các

thực thể rút trích được thấp…

2.2. Biểu diễn xâu tiền tố PrefixString của tên thực

thể và thuật toán sinh PrefixPattern

2.2.1 Biểu diễn PrefixString

Ánh xạ ngược mỗi thực thể vào tập dữ liệu ta thu

được tập các PrefixString được biểu diễn như sau:

< “S”, “N” , “C” >

S : Xâu nội dung của PrefixString (xâu tiền tố)

N: Tên thực thể

C: Count – Số lần S là “tiền tố” của N

Mỗi PrefixString có “độ ưu tiên” khác nhau trong

việc lựa chọn tham gia sinh pattern. Độ ưu tiên đó dựa

theo số lượng thực thể nhận nó làm tiền tố.

2.2.2 Thuật toán sinh PrefixPattern

Input: Tập PrefixPattern mẫu, văn bản đã phân đoạn

từ

Bước 1: Lấy từng PrefixPattern mẫu trong tblPattern

đem so khớp với văn bản để tìm ra xâu ký tự có chứa

PrefixPattern và xâu ký tự được kỳ vọng là tên thực thể.

Page 11: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

18

- Ký tự đầu tiên của từ đứng ngay sau tiền tố là ký

tự viết hoa.

- Xâu ký tự lấy được không trùng với dữ liệu trong

bảng chứa các xâu ký tự không hợp lệ.

- Kết quả so khớp không được trùng với các so

khớp đã hiển thị trên bảng KẾT QUẢ.

* Trim

Ta cần tách xâu ký tự nhận được thỏa mãn các điều

kiện kiểm tra để lấy thực thể tên cần trích rút.

* Filter_Entities

Tập thực thể tên sau khi được trích rút sẽ được ánh

xạ ngược trở lại văn bản ở bước lặp tiếp theo để tìm sự

xuất hiện (Occurrences).

* Find_PrefixStrings

Hệ thống tìm kiếm các tiền tố (PrefixString) mới của

thực thể tên đã tìm thấy ở bước trước.

* Generate_NewPrefixPattern

Thủ tục Generate_NewPrefixPattern sinh ra

NewPrefixPattern từ tập PrefixStrings đã được trích rút ở

bước trước để trích rút những thực thể mới.

11

cũng như các kĩ thuật học máy đã xây dựng nhưng chưa

đưa ra được kết quả tốt nhất. SnowBall đưa ra phương

pháp tìm kiếm, trích chọn và đánh giá độ tin cậy của seed

mới và mẫu mới được sinh ra. Vì thế, tập dữ liệu mới

(mẫu quan hệ và tập seed mới) được sinh ra có độ tin cậy

cao, chính xác từ những dữ liệu nhỏ ban đầu.

Dựa vào ưu và nhược điểm của từng phương pháp,

hệ thống xây dựng trong phần demo sẽ sử dụng giải thuật

DIPRE kết hợp với phương pháp SnowBall. Tuy nhiên,

các phương pháp này đều yêu cầu phải tiến hành bước

nhận dạng các thực thể, đây là một bước bắt buộc để đảm

bảo quá trình sinh tập seed mới cũng như việc trích rút ra

được các mẫu có độ chính xác cao.

Page 12: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

12

CHƯƠNG II: PHƯƠNG PHÁP TRÍCH

RÚT THỰC THỂ TÊN

2.1. Mô hình trích rút thực thể tên

2.1.1. Mô hình tổng quát

Đối với bài toán trích rút thực thể tên đang xét, mức

tổng quát gồm các bước như sau:

- Xuất phát là một số mẫu được xây dựng thủ công;

- Rút trích ra các thực thể tên trong tập tài liệu web

dựa vào mẫu đó;

- “Ánh xạ” lại các thực thể vừa trích rút được vào tập

tài liệu web để xác định sự xuất hiện (Occurrences)

của chúng trên tài liệu;

- Sinh mẫu mới từ Occurrences đó;

- Quay lại bước thứ nhất với mẫu vừa được sinh ra.

Do xuất phát không phải là tập các thực thể “mồi”

mà là một mẫu, nên có thể rút trích được nhiều thực thể

ngay ở vòng lặp đầu tiên. Số lượng mẫu mới sinh ra cho

vòng lặp tiếp theo cũng lớn khiến chương trình giảm được

số lần thực hiện vòng lặp. Tuy nhiên, đây cũng chính là

nguyên nhân dẫn đến việc hệ thống đưa ra nhiều kết quả

trích rút bị sai. Vì vậy, khi xây dựng hệ thống, quá trình

17

- Xâu ký tự được kỳ vọng là thực thể tên có điểm đặc

biệt là ký tự đầu tiên của xâu đó luôn được viết hoa.

- Xâu ký tự đứng sau mỗi tên thực thể lại thường

không có một quy tắc nào xác định.

Trong hệ thống thực nghiệm của luận văn, dữ liệu

đầu vào là các văn bản tiếng việt đã được chạy qua hệ

thống xử lý khâu phân đoạn từ. Vì vậy, các tiếng trong tên

thực thể được nối lại bởi dấu “_” nên chúng ta có thể lược

bỏ phần kiểm tra các suffix của thực thể tên. Thay vào đó,

hệ thống sẽ kiểm tra ký tự đầu tiên của xâu ký tự đứng

ngay sau tiền tố của so khớp tìm được xem đó có phải là

ký tự viết hoa không. Nếu kết quả của quá trình kiểm tra là

false thì hệ thống sẽ quay lại tìm PrefixPattern tiếp theo

trong tblPattern để tiếp tục tìm kiếm các thực thể tên khác.

Thủ tục Find_IndexsOfPrefixPattern với tham số đầu

vào PrefixPattern sẽ tìm các xâu khớp (match) với

PrefixPattern, kết quả thu được là các xâu chứa tiền tố

xuất hiện trong văn bản.

* Extract_CandidateStrings

Xét mỗi so khớp tìm được, xâu con đứng ngay sau

tiền tố được mong đợi sẽ là một tên thực thể. Điều kiện:

Page 13: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

16

Từ PrefixStrings sinh ra các mẫu mới.

7) Quy lại bước 1 với NewPrefixPattern vừa được

sinh ra và bắt đầu một bước lặp mới.

Hình 2.2 Mô hình bài toán

Các mục dưới đây sẽ giải thích rõ ràng hơn.

* Find_IndexsOfPrefixPattern

Ngữ cảnh của thực thể tên có nhiều điểm khác biệt

như:

- Đứng trước mỗi một thực thể tên thực thể thường là

các “tiền tố” có dạng đặc biệt hoặc nằm trong một miền

giá trị cụ thể.

13

tìm kiếm của hệ thống cần có sự can thiệp của các luật để

hạn chế sai sót trên. Chương trình dừng lại khi hệ thống

không tìm thêm được mẫu mới hoặc số lượng tên thực thể

trích rút bị sai quá nhiều.

Quy trình rút trích được mô tả như hình dưới đây :

Hình 2.1 Mô hình tổng quát

Một số điểm khác nhau giữa bài toán trích rút thực

thể tên và bài toán trích rút cặp thực thể của Brin:

- Thứ nhất: Đối tượng trích rút của hai bài toán khác

nhau. Bài toán trích rút của Brin yêu cầu phải trích rút theo

từng cặp quan hệ (tác giả, tên sách). Bài toán trích rút đang

xét yêu cầu trích rút tất cả các thực thể tên.

- Thứ hai: “Sự xuất hiện” của thực thể mà Brin rút

trích khác với “sự xuất hiện” của thực thể tên trong các

văn bản mà hệ thống của chúng ta rút trích được.

Trong mô hình Snowball, mỗi một cặp quan hệ <o,

l> được đánh giá dựa theo số lượng các pattern sinh ra nó,

Page 14: LUẬN VĂN THẠC SĨ KỸ THUẬT - dlib.ptit.edu.vndlib.ptit.edu.vn/bitstream/123456789/959/1/TTLV Hoang Thi Van Anh.pdfkhăn hơn trong các văn bản tiếng Anh. Trong luận

14

cũng như “tính chọn lọc” của mỗi pattern. Chỉ những cặp

<o, l> nào có độ đánh giá phù hợp thì mới được sử dụng

như kết quả của qúa trình trích rút. Bài toán trong luận văn

này áp dụng ý tưởng đó cho việc sinh ra các patterns thích

hợp dựa vào tập các thực thể liên quan. Không phải là bất

kỳ thực thể tên nào trích rút được cũng là đối tượng để xét

tiền tố đứng trước nó. Thực thể nào xuất hiện nhiều lần

trong văn bản thì ta mới xét đến tiền tố đứng trước nó và

dùng tiền tố này làm căn cứ để tiến hành trích rút tiếp các

thực thể tên mới. Có như vậy, hệ thống mới trích rút nhanh

và giảm thiểu số bước lặp có kết quả trích rút không khả

quan. Mặt khác, mẫu sinh ra đảm bảo yêu cầu không phải

là mẫu quá đặc biệt hoặc quá chung chung như trong giải

thuật DIPRE quy định.

2.1.2. Mô hình chi tiết

Input: PrefixPattern (Initial) – Hệ thống bắt đầu hoạt

động trích rút thực thể tên với một mẫu được xây dựng thủ

công

1) IndexsOfPrefixPattern

Find_IndexsOfPrefixPattern (PrefixPattern)

15

Ánh xạ PrefixPattern vào tập tài liệu để xác định

các xâu mà mẫu này đoán nhận.

2) CandidateStrings Extract_CandidateStrings

(Extract_CandidateStrings,

CandidateRegularExpression): Thu được xâu ký

tự được kỳ vọng là xâu có chứa thực thể tên.

3) Entities Trim (CandidateStrings)

Hệ thống sẽ tiến hành tách xâu kỳ vọng (không bị

loại trong cơ sở dữ liệu) CandidateStrings để thu

được các thực thể (Entities) thích hợp.

4) RepresentativeEntities Filter_Entities

(Entities)

Từ Entities chọn ra những thực thể đại diện.

5) PrefixStrings

Find_PrefixStrings(RepresentativeEntities,

PrefixRegularExpression)

Sử dụng biểu thức chính quy

PrefixRegularExpression kết hợp với

RepresentativeEntities để đoán nhận “tiền tố” của

các RepresentativeEntities (PrefixStrings).

6) NewPrefixPattern Generate_NewPrefixPattern

( PrefixStrings )