Cách tiếp cận dựa trên mô hình chủ đề

Một phần của tài liệu Giải pháp phân biệt tên người trên Web dựa trên mô hình thông tin Người và thử nghiệm vào hệ thống tìm kiếm người tiếng Việt (Trang 36 - 78)

Năm 2010, Jiashen, Tianmin và Li Li [12] đề xuất hướng giải quyết bài toán phân biệt tên người bằng mô hình chủ đề cho tiếng Trung. Mô hình này được mô tả trong bài báo gửi tới hội nghị SIGHAN 2010. Hệ thống sử dụng hướng tiếp cận Bayes để giải quyết bài toán phân biệt tên người trong mô hình sinh. Theo như nghiên cứu của các tác giả, việc nhận diện thực thể tên người tiếng Trung khó khăn so với tiếng Anh do những nguyên nhân sau:

- Sự phong phú đa dạng của tên.

- Đặc điểm của tiếng Trung trong mỗi dạng tên.

- Tên người thường dễ bị nhầm lẫn với ngữ cảnh của nó. - Dịch các tên nước ngoài khó khăn.

Vì vậy, các tác giả tập trung vào giải quyết hai vấn đề lớn trong bài toán phân biệt tên người tiếng Trung là nhận diện thực thể tên và phân cụm. Hệ thống thực nghiệm trên bộ dữ liệu là các tờ báo “Nhân dân hằng ngày” của tháng 1 năm 1998 và các tờ báo

Nhân dân hằng ngày” của năm 2000.

Bƣớc 1.Nhận diện thực thể tên

Nhóm tác giả sử dụng mô hình trường ngẫu nhiên có điều kiện (Conditional Random Fields - CRFs) để tạo ra mô hình ngôn ngữ thích hợp cho việc thực hiện tự động gán nhãn cho các văn bản đầu vào. Dữ liệu được gán nhãn theo hệ thống nhãn BIEO bao gồm các nhãn sau: B-Nr (bắt đầu, các ký tự ban đầu của tên), I-Nr (ký tự giữa của tên), E- Nr (ký tự kết thúc của tên) và O (các đặc trưng không phải tên). Để tránh lỗi tách từ xảy

25

ra, họ sử dụng các đặc điểm của tiếng Trung thay vì sử dụng từ như các đặc trưng phân biệt cho mô hình học máy CRF.

Lỗi trong kết quả gán nhãn của mô hình CRF gồm các loại chính sau: các ký tự ban đầu của tên không được nhận ra, các ký tự trung gian của tên không được nhận ra, ký tự kết thúc của tên không được nhận ra và kết hợp của cả 3 lỗi trên. Hai lỗi nghiêm trọng khác bao gồm nhận ra không đúng tên và tên được nhận ra không phải tên mong muốn. Vì vậy, để giảm thiểu các lỗi trên và tăng kết quả nhận diện, họ sử dụng bộ luật để điều chỉnh.

Trong giai đoạn hiệu chỉnh theo luật, đầu tiên văn bản được tách từ, gán nhãn bằng mô hình CRF. Sau đó, mỗi tên người được nhận ra sẽ được kiểm tra các điểu kiện sau:

1. Các từ trong tên người có hợp lý hay không (kiểm tra họ và chữ được sử dụng trong tên).

2. Biên trái và biên phải đúng hay không, tức kiểm tra các chữ bên trái và bên phải của từ được tách có thể thêm vào tên hay không. Công việc kiểm tra bao gồm: các từ đứng trước tên, các từ đứng sau tên, họ và các chữ sử dụng trong tên.

Bƣớc 2. Trích chọn đặc trƣng

Các tác giả thực hiện trích chọn hai loại đặc trưng: các đặc trưng token (bao gồm các từ, các chữ đơn và chữ ghép) và các đặc trưng chủ đề. Việc phân phối dựa trên chủ đề vào ngữ cảnh toàn cục hay ngữ cảnh cửa sổ được học bởi mô hình LDA (Latent Dirichlet Allocation).

- Các đặc trưng token: Trích chọn 3 loại đặc trưng token: từ, chữ đơn và chữ ghép từ văn bản đầu vào. Mỗi loại đặc trưng token được biểu diễn trong một vector đặc trưng. Gán trọng số cho các đặc trưng băng hai phương pháp tf-idf và entropy. Các đặc trưng được chọn bằng 2 phương pháp: tần số tài liệu (Document frequency - DF) và “global TF-IDF”

- Các đặc trưng chủ đề: Trích chọn các thông tin chủ đề quan trọng xung quan tên người được quan tâm như nghề nghiệp, tổ chức, cố vấn, địa điểm… Phân tích chủ đề dựa trên cả ngữ cảnh toàn cục và ngữ cảnh cục bộ. Sau đó, phân phối các chủ đề ẩn dựa trên biểu diễn chủ đề của ngữ cảnh bằng mô hình LDA.

26

Các tác giả thử nghiệm với hai thuật toán phân cụm HAC và thuật toán phân cụm DBSCAN.

Thuật toán phân cụm phân cấp từ dưới lên HAC thực hiện phân cụm dựa trên độ tương đồng giữa giữa hai cụm bằng các cách đo: single-link, complete-link, group- average and centroid clustering.

Độ tương đồng giữa hai tài liệu được tổng hợp từ độ tương đồng của các ngữ cảnh toàn cục và các ngữ cảnh cục bộ. Công thức như sau:

Trong đó, độ tương đồng giữa hai vector đặc trưng bằng độ tương đồng cosin giữa hai vector.

Sau quá trình thực nghiệm, các tác giả đưa ra một số đánh giá sau:

- Các đặc trưng chủ đề được học bằng mô hình LDA và tốt hơn các đặc trưng token.

- Sử dụng phân cụm bằng thuật toán HAC cho kết quả tốt hơn thuật toán DBSCAN

- Sử dụng phương pháp lựa chọn đặc trưng “global TF-IDF” cho kết quả tốt hơn phương pháp DF.

2.2. Mô hình phân biệt tên ngƣời dựa trên mô hình thông tin Ngƣời

Nghiên cứu về phân biệt tên người trong tiếng Trung, vào năm 2010, Hua-Ping Zhang và cộng sự [7] đưa ra hệ thống phân biệt tên người LJDP dựa trên mô hình thông tin Người (Personal Model). Hệ thống giới thiệu trong bài báo giải quyết nhiệm vụ thứ ba với chủ đề phân biệt tên người của hội nghị First CIPS-SIGHAN.

2.2.1. Mô hình thông tin Ngƣời (adsbygoogle = window.adsbygoogle || []).push({});

Trong hệ thống của mình, các tác giả đưa ra mô hình giải quyết bài toán dựa vào mô hình thông tin Người. Khi đó, một người trọng một văn bản được biểu diễn bằng các đặc trưng mô tả cho người. Các đặc trưng này được phân vào 4 tập N, P, Q, R. Quy tắc chia vào bốn tập được như sau:

Person = {N, P, Q, R} Trong đó:

27

Văn bản Chuỗi từ đã

được gán nhãn

Mô hình thông tin Người Các cụm của các

người khác nhau

- N là tập các tên gọi, biệt danh của người như: tên, tên hiệu, bí danh … - P là tập hợp các thuộc tính cơ bản của người – các đặc trưng không đổi theo

thời gian.

- Q là tập hợp các thuộc tính khác của người – các đặc trưng có thể thay đổi theo thời gian.

- R là tập hợp các thuật ngữ cùng xuất hiện với tên người, được gọi là miền thuật ngữ.

Mô hình biểu diễn các đặc trưng mô tả cho người như trên được gọi là mô hình thông tin Người.

2.2.2. Phân biệt tên ngƣời dựa theo mô hình thông tin Ngƣời

Hệ thống phân biệt tên người theo mô hình thông tin Người của các tác giả gồm ba bước sau:

1. Tách từ và gán nhãn một phần của bài báo, từ đó nhận diện tên người tiếng Trung sử dụng hệ thống ICTCLAS 2010.

2. Trích chọn đặc trưng để tạo ra mô hình trích chọn người cho mỗi tài liệu.

3. Sinh các cụm đầu tiên theo các đặc trưng trong mô hình thông tin Người, từ đó nhóm các cụm này cho đến khi đạt được tiêu chí dừng.

Luồng xử lý của hệ thống được mô tả như hình vẽ dưới đây:

Hình 13. Các bước trong bài toán phân biệt tên người

Toàn bộ hệ thống bao gồm bốn vấn đề: nhận diện tên người, giải quyết trùng lặp tên người, tạo mô hình thông tin Người và cuối cùng là phân cụm.

Tách từ Trích chọn đặc

trưng của người

28

Bƣớc 1. Tách từ, gán nhãn, nhận diện tên ngƣời tiếng Trung

Nhận diện tên người tiếng Trung khó khăn hơn nhận diện tên người trong tiếng Anh. Việc tách từ trong tiếng Trung là khó khăn, do đặc điểm của tên người trong tiếng Trung như sau:

- Số lượng tên riêng trong tiếng Trung là vô hạn. - Các quy tắc đặt tên người rất đa dạng.

- Tên người thường được tạo từ các “từ” thông thường. - Tên người dễ nhầm lẫn với ngữ cảnh của nó.

Để nhận diện tên người Trung Quốc, nhóm tác giả sử dụng hệ thống phân tích từ vựng ICTCLAS 2010. Hệ thống kết hợp gán nhãn một phần của tài liệu, tách từ và nhận diện những từ vô danh.

Bƣớc 2. Trích chọn đặc trƣng để tạo ra mô hình trích chọn ngƣời cho mỗi tài liệu.

Các tác giả tập trung vào 8 đặc trưng của người: tên người, giới tính, quốc tịch, quê quán, nghề nghiệp, tên họ hàng/người thân, tên người khác và các thuật ngữ phổ biến khác cùng xuất hiện với tên người cần phân biệt nhập nhằng. Sau đó, tiến hành phân vào các lớp thuộc mô hình thông tin Người như sau: (adsbygoogle = window.adsbygoogle || []).push({});

N = {tên người}

P = {giới tính, quốc tịch, ngày sinh, quê quán} Q = {địa chỉ, nghề nghiệp, tên họ hàng/người thân}

R = {các thuật ngữ cùng xuất hiện: tên người cùng xuất hiện, các thuật ngữ phổ biến cùng xuất hiện}

Các đặc trưng thuộc N, P, Q là các thuộc tính của người. Số chiều của các các đặc trưng này không giống nhau. Ví dụ như giới tính của một người không đổi theo thời gian, nên số chiều là 1, trong khi đó địa chỉ nhà là thay đổi theo thời gian, vì vậy số chiều lớn hơn hoặc bằng 1 (ví dụ một người có địa chỉ nhà mới thì địa chỉ mới là một chiều mới được thêm vào đặc trưng). DOM biểu diễn cho số chiều của các đặc trưng thuộc tính. Ứng với mỗi tập N, P, Q số chiều của các đặc trưng thuộc tính trong mỗi trường được quy định như sau:

29

DOM(Ni) = 1; (1≤ i ≤n)

DOM(Pi) = 1; (1≤ i ≤k)

DOM(Qi) ≥ 1; (1≤ i ≤m)

Đối với một người N, P luôn không đổi, vì vậy nếu một thuộc tính của N hoặc P

giữa hai người khác nhau, thì hai người này không phải cùng một người. Với mỗi đặc trưng thuộc tính thuộc lớp Q, một người có thể có nhiều hơn một đặc trưng.

Để trích chọn các đặc trưng thuộc tập N, P, Q, các tác giả thực hiện theo ba bước: - Đầu tiên tách từ gán nhãn từ loại cho các tài liệu đầu vào.

- Thứ hai, xác định từ bắt đầu (triggering word), và cụm danh từ có chiều dài cực đại. Từ bắt đầu là một giá trị đặc trưng thuộc tính của người. Các từ bắt đầu được xác định bằng từ loại của nó và một bộ từ điển các từ bắt đầu được xây dựng bằng tay.

- Cuối cùng, máy phân loại xác định thuộc tính thuộc về tên người bên trái hay bên phải thuộc tính. Máy phân loại được huấn luyện bởi tập tài liệu được gán nhãn bằng tay lấy về từ internet.

Các bước trích chọn thuộc tính của người được mô tả như sơ đồ sau:

Hình 14. Các bước trích chọn thuộc tính người.

Đối với tập R, các tác giả sử dụng mô hình không gian vector để biểu diễn các thuật ngữ thuộc tập này. Trong đó thuật ngữ thứ i được biểu diễn bởi ti, và trọng số wi thể hiện tầm quan trọng của thuật ngữ ti. Như vậy R được biểu diễn lại như sau:

Đặc trưng thuộc tính Kích thước cửa sổ được xác định với trung tâm là từ đầu tiên Chuỗi từ đã được gán nhãn thuộc Tách từ Xác định từ đầu tiên và cụm danh từ có chiều dài cực đại Phân lớp Máy phân lớp Văn bản

30

R = (t1, w1; t2, w2; … ; tH, wH).

Để thu các thuật ngữ thuộc R, các tác giả xác định phạm vi mà thuật ngữ này ảnh hưởng. Ba mức phạm vi ảnh hưởng của thuật ngữ là: toàn bộ tài liệu, trên đoạn văn chứa tên người, trên câu chứa tên người. Sau đó thu thập thuật ngữ trong R theo bốn bước sau:

- Bước 1: Tiến hành tách từ, gán nhãn từ loại cho các thuật ngữ này.

- Bước 2: Lọc bỏ các thuật ngữ thuộc tính bằng từ loại, chỉ giữ lại danh từ, động từ, tính từ, trạng từ và tên thực thể.

- Bước 3: Họ làm một danh sách các từ dừng, lọc bỏ những thuật ngữ dừng này. - Bước 4: Lọc bỏ các thuật ngữ có tần suất quá cao hoặc quá thấp bằng cách sử

dụng DF, chỉ giữ lại những thuật ngữ có DF không thấp hơn 2 và không cao hơn N/3 (N là tổng số tài liệu).

Trọng số cho các giá trị đặc trưng thuộc tập R và các giá trị của đặc trưng nghề nghiệp trong tập Q được xác định theo phương pháp đánh trọng số TF-IDF. Cụ thể:

 Trọng số của đặc trưng thuật ngữ khác cùng xuất hiện với tên người cần phân biệt:

( ⃗) ⃗ ( )

Trong đó:

- ⃗ là trọng số của thuật ngữ t trong tài liệu d.

- ⃗ là tần số xuất hiện của t trong tài liệu d. (adsbygoogle = window.adsbygoogle || []).push({});

- nt là số lượng tài liệu chứa t. - N là tổng số tài liệu.

 Trọng số của đặc trưng tên người khác cùng xuất hiện với tên người cần phân biệt.

⃗ ⃗

Trong đó:

- ⃗ là trọng số của tên cùng xuất hiện name.

- ⃗ là tần số cùng xuất hiện của name và người p.

- nname là số lần cùng xuất hiện của tên và tên người khác. - N’ là tổng số tài liệu

31

Bƣớc 3. Phân cụm

Phương pháp tính tương đồng giữa 2 văn bản:

Thuật toán phân cụm các tác giả đề xuất áp dụng thuật toán phân cụm HAC cho việc phân cụm tài liệu dựa trên ba đặc trưng nghề nghiệp, thuật ngữ khác và tên người khác cùng xuất hiện với tên người cần phân biệt và biểu diễn các giá trị của mỗi loại đặc trưng vào 3 vector tương ứng với mỗi loại. Độ tương đồng của từng loại vector đặc trưng được tính bằng độ tương đồng cosin giữa hai vector. Các tác giả sử dụng thuyết chắc chắn Stanford để tổng hợp ba độ tương đồng này.

Gọi E1, E2, E3 là các yếu tố chắc chắn của sự kiện B CF biểu diễn độ tin cậy.

Khi đó độ tin cậy của sư kiện B là:

Trong đó độ tin cậy của các yếu tố được tính bằng công thức:

⁄ [ ]

Với ui là ngưỡng tương đồng.

Nếu độ tương đồng của yếu tố đạt đến ngưỡng, độ tin cậy của nó là 100% Xác định ngưỡng tương động ui bằng phương pháp huấn luyện sau:

- Phân cụm dữ liệu huấn luyện theo các yếu tố duy nhất.

- Chọn ngưỡng tương đồng có độ hồi tưởng cao hơn với tiền đề là độ chính xác không nhỏ hơn 98%.

Sau quá trình khảo sát này, chọn ba ngưỡng tương đồng tương ứng với ba yếu tố nghề nghiệp, tên người cùng xuất hiện và thuật ngữ phổ biến cùng xuất hiện lần lượt là 3, 0.5, 0.25.

Thuật toán phân cụm

32

Quy tắc 1: đối với hai người có trùng tên, nếu ngày sinh giống nhau (chính xác đến

tháng) hoặc tên họ hàng/người thân giống nhau, hai người là cùng một người.

Quy tắc 2: Đối với hai người trùng tên, nếu một trong các thuộc tính: giới tính,

quốc tịch, quê quán, ngày sinh là khác nhau, hai người này là hai người khác nhau.

2. Áp dụng thuật toán phân cụm phân cấp HAC để phân cụm những cụm ban đầu này. (adsbygoogle = window.adsbygoogle || []).push({});

(1) Coi mỗi cụm ban đầu là một cụm duy nhất. (2) Trộn hai cụm giống nhau nhất thành một cụm.

(3) Nếu có chỉ còn một cụm hoặc đạt đến một ngưỡng dừng nào đó thì thoát. Không thì quay lại bước (2).

Trong quá trình sát nhập các cụm, tiến hành sát nhập các đặc trưng của người. Đối với vector các thuật ngữ, tính giá trị trung bình trọng số của các thuật ngữ. Đối với đặc trưng thuộc tính, áp dụng phương pháp luật để trộn hai cụm.

2.3. Nhận xét

Các phương pháp tập trung chủ yếu vào việc thể hiện ngữ cảnh mà tên người xuất hiện, tiến hành đo độ tương đồng giữa các ngữ cảnh và phân cụm dựa trên độ tương đồng này. Ba phương pháp đầu thường phụ thuộc rất nhiều vào miền dữ liệu để có được kết quả chính xác, hầu hết các phương pháp thực hiện trên các miền dữ liệu bằng tiếng Anh và chỉ phù hợp cho miền dữ liệu này. Với phương pháp của Bagga ve Breck Baldwin [4], sử dụng khử đồng tham chiếu và xây dựng vector thực thể biểu diễn ngữ cảnh của tên người. Phương pháp có một số hạn chế khi thực hiện trên miền dữ liệu báo điện tử Việt Nam như sau: thứ nhất là ngôn ngữ tiếng Việt chưa có một công cụ nguồn mở nào cho việc thực hiện khử đồng tham chiếu, thứ hai là khi một người tham gia vào những hoạt động khác

Một phần của tài liệu Giải pháp phân biệt tên người trên Web dựa trên mô hình thông tin Người và thử nghiệm vào hệ thống tìm kiếm người tiếng Việt (Trang 36 - 78)