Nghiên cứu đã trình bày những nét chính về mặt ý tưởng, giải thuật; ưu, nhược điểm của một số giải thuật phân lớp dữ liệu được sử dụng phổ biến trong xử lý tiếng Việt như SVM, cây quyết định, giải thuật Bayes.
Đinh Thị Mỹ Hạnh 237 Ứng dụng kỹ thuật phân lớp liệu cho toán khai thác liệu tiếng dân tộc thiểu số phục vụ xử lý ngôn ngữ tự nhiên Đinh Thị Mỹ Hạnh Đại học Đà Nẵng, 41 Lê Duẩn, Hải Châu, Đà Nẵng dtmhanh@ac.udn.vn Tóm tắt Nghiên cứu phân tích vai trị, thực trạng kho ngữ liệu phục vụ xử lý ngôn ngữ tự nhiên (XLNNTN), xử lý tiếng Việt (XLTV) nói chung tiếng dân tộc thiểu số (DTTS) nói riêng Trên sở mơ hình tổng quan tốn XLNNTN, tác giả tập trung nghiên cứu toán phân lớp liệu Nghiên cứu trình bày nét mặt ý tưởng, giải thuật; ưu, nhược điểm số giải thuật phân lớp liệu sử dụng phổ biến xử lý tiếng Việt SVM, định, giải thuật Bayes… Tuy nhiên, việc xử lý tiếng DTTS cịn hạn chế nhiều nguyên nhân khác Tác giả lựa chọn giải thuật SVM để phân lớp văn tiếng DTTS tập liệu thử nghiệm, từ đánh giá hiệu thực đưa đề xuất liên quan đến toán phân lớp liệu văn tiếng DTTS Từ khóa: tiếng dân tộc thiểu số; phân lớp văn bản; SVM; kho ngữ liệu; xử lý tiếng Việt Đặt vấn đề Trong bối cảnh Công nghệ Thông tin (CNTT) ngày phát triển mạnh mẽ có ảnh hưởng hầu hết mặt đời sống xã hội, việc ứng dụng CNTT vào vấn đề XLNNTN nói chung, XLTV nói riêng, có tiếng DTTS nhận quan tâm từ chuyên gia xã hội Tuy nhiên, nhiều nguyên nhân khác mà việc xử lý tiếng DTTS nói chung xử lý văn tiếng DTTS nói riêng cịn nhiều hạn chế, chưa có nhiều giải thuật triển khai ngôn ngữ Đây nguyên nhân khiến cho lĩnh vực xử lý, khai thác tiếng DTTS chưa đạt nhiều kết kỳ vọng Hiện nay, dù có số kho ngữ liệu chung vài tiếng DTTS phổ biến (trong chủ yếu từ điển tiếng Việt - tiếng DTTS) chưa có nhiều từ điển dành cho lĩnh vực hẹp Điều gây khó khăn cho việc nghiên cứu phát triển hệ thống dịch tự động, khai phá liệu liên quan đến tiếng DTTS Với ý nghĩa đó, sở nghiên cứu thuật toán phân lớp văn sử dụng phổ biến tiếng Việt nay, tác giả đề xuất áp dụng giải thuật Suport Vector Machine (SVM) để phân lớp văn tiếng DTTS thuộc vài lĩnh vực hẹp, làm tiền đề để nghiên cứu sâu XLTV nói chung xử lý, khai thác tiếng DTTS nói riêng Nghiên cứu tổng quan 2.1 Xử lý ngôn ngữ tự nhiên Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngôn ngữ người 238 KỶ YẾU HỘI THẢO KHOA HỌC QUỐC GIA CITA 2017 “CNTT VÀ ỨNG DỤNG TRONG CÁC LĨNH VỰC” Các ứng dụng XLNNTN nay[13]: Chế tạo hệ thống máy dịch; Xử lý văn ngơn ngữ; Tìm kiếm thơng tin; Chiết suất thơng tin; Tóm tắt văn bản; Phân loại văn bản; Data mining, web mining… Đối với tốn liên quan đến XLNNTN nói chung, mơ hình tổng quan gồm 03 bước (xem Hình 1) Kết Internet (1) (2) (3) trích rút Kho liệu thơ Hình Mơ hình tổng quan tốn xử lý ngơn ngữ tự nhiên Trong đó: (1) Thu thập/ nhận biết ngôn ngữ: Từ nhiều nguồn khác (chủ yếu từ Internet), liệu thu thập tổng hợp vào kho liệu thô (2) Xử lý ngôn ngữ tự nhiên bao gồm hiểu ngôn ngữ tự nhiên (Natural Language Understanding - NLU) sinh ngôn ngữ tự nhiên (Natural Language Generation - NLG) Trong đó: Hiểu ngơn ngữ tự nhiên (NLU) bao gồm bước sau đây: + Phân tích hình vị; + Phân tích cú pháp; + Phân tích ngữ nghĩa; + Phân tích diễn ngơn Sinh ngơn ngữ tự nhiên (NLG) đóng vai trị quan trọng nhiều ứng dụng NLP, bao gồm sinh hội thoại, tương tác người - máy, dịch thuật máy tóm tắt văn tự động (3) Trích rút thơng tin: thơng tin trích xuất theo u cầu khác Tại bước (2), toán quan trọng sử dụng rộng rãi phân lớp văn (PLVB) Trong phạm vi nghiên cứu này, tác giả tập trung đề xuất giải pháp thực bước PLVB 2.2 Bài toán phân lớp văn PLVB tốn xử lí văn cổ điển, ánh xạ văn vào chủ đề biết tập hữu hạn chủ đề dựa ngữ nghĩa văn Đặc điểm bật toán đa dạng chủ đề văn tính đa chủ đề văn Tình hình nghiên cứu nước giới Trên giới có nhiều cơng trình nghiên cứu ứng dụng phân lớp văn đạt kết khả quan, phân loại văn tiếng Anh Các nghiên cứu ứng dụng văn tiếng Việt cịn nhiều hạn chế khó khăn tách từ câu Có thể liệt kê số cơng trình nghiên cứu nước với hướng tiếp cận khác cho toán phân loại văn bản, bao gồm: phân loại với máy học vectơ hỗ trợ [6], cách tiếp cận sử dụng lý thuyết tập thô, cách tiếp cận thống kê hình vị [7], cách Đinh Thị Mỹ Hạnh 239 tiếp cận sử dụng phương pháp học không giám sát đánh mục [8], cách tiếp cận theo luật kết hợp [2] nhiều cơng trình khác Theo kết trình bày cơng trình cách tiếp cận nêu cho kết tốt Tuy nhiên, khó so sánh kết với tập liệu thực nghiệm phương pháp khác Các phương pháp PLVB ứng dụng rộng rãi nhiều lĩnh vực khác nhau, phân tích liệu lĩnh vực tài ngân hàng, quản lý tội phạm, phân loại nội dung tài liệu web, tin tức điện tử, xây dựng lọc email… Đa số toán triển khai thuộc dự án, đề tài nghiên cứu cấp Nhà nước, Bộ, ngành thuộc trung tâm, viện nghiên cứu, trường đại học…; đề tài, Luận văn cao học, Luận án tiến sĩ; Tuỳ mức độ cơng trình nghiên cứu mà tính khả thi triển khai thực tế có mức độ khác Một số thuật toán PLVB phổ biến Thuật toán Suport Vector Machine (SVM) Thuật tốn SVM ban đầu tìm Vladimir N Vapnik dạng chuẩn sử dụng lề mềm tìm Vapnik Corinna Cortes năm 1995 Xét toán phân lớp đơn giản - phân lớp hai lớp với tập liệu mẫu: {(xi, yi) | i = 1, 2,…, N, xi ∈ Rm} (1) Trong mẫu vector đối tượng phân lớp thành mẫu dương mẫu âm (xem Hình 2): - Các mẫu dương mẫu xi thuộc lĩnh vực quan tâm gán nhãn yi = - Các mẫu âm mẫu xi không thuộc lĩnh vực quan tâm gán yi = -1 Hình Mặt siêu phẳng tách mẫu dương khỏi mẫu âm Trong trường hợp này, phân loại SVM mặt siêu phẳng phân tách mẫu dương khỏi mẫu âm với độ chênh lệch cực đại, độ chênh lệch - cịn gọi lề (margin) xác định khoảng cách mẫu dương mẫu âm gần mặt siêu phẳng (Hình 2) Mặt siêu phẳng gọi mặt siêu phẳng lề tối ưu Các mặt siêu phẳng khơng gian đối tượng có phương trình là: C + w1x1 + w2x2 + … + wnxn = (2) Tương đương với công thức: C + ∑wixi = với i = 1,…,n (3) 240 KỶ YẾU HỘI THẢO KHOA HỌC QUỐC GIA CITA 2017 “CNTT VÀ ỨNG DỤNG TRONG CÁC LĨNH VỰC” Với w = w1 + w2 + …+ wn hệ số siêu phẳng vector trọng số, C độ dịch Khi thay đổi w C hướng khoảng cách từ gốc toạ độ đến mặt siêu phẳng thay đổi Bộ phân loại SVM định nghĩa sau: f(x) = sign(C + ∑wixi) (4) Trong đó: - sign(z) = +1 z ≥ 0, - sign(z) = -1 z < Nếu f(x) = +1 x thuộc lớp dương (lĩnh vực quan tâm), ngược lại, f(x) = -1 x thuộc lớp âm (các lĩnh vực khác) Máy học SVM họ mặt siêu phẳng phụ thuộc vào tham số w C Mục tiêu phương pháp SVM ước lượng w b để cực đại hóa lề lớp liệu dương âm Các giá trị khác lề cho ta họ mặt siêu phẳng khác nhau, lề lớn lực máy học giảm Như vậy, cực đại hóa lề thực chất việc tìm máy học có lực nhỏ Q trình phân loại tối ưu sai số phân loại cực tiểu Giải phương trình sau: N C i 1 i w (5) Tìm vector trọng số w sai số điểm tập huấn luyện ,với C tham số cho trước, từ ta có phương trình tổng qt siêu phẳng tìm thuật tốn SVM là: (x1, x2,…, xn) = C + ∑wixi (6) Với i = 1,…, n Trong n số liệu huấn luyện Sau tìm phương trình siêu phẳng thuật tốn SVM, sử dụng cơng thức để tìm nhãn lớp cho liệu Thuật toán Bayes Giả sử x văn chứa từ thuộc từ điển gồm D từ, đánh số từ tới D Khi ta biểu diễn x vector nhị phân: x = (x1, x2,…, xD), xj {0,1} (7) Trong đó: nÕu tõ thø j xuÊt hiÖn x 1, x 0, nÕu tõ thø j kh«ng xt hiƯn x Trong mơ hình Bayes đơn giản (neive Bayes - NB), ta giả định đặc trưng xj {0,1} độc lập với loại y Từ đó: P x, y; P x | y; P y; = j 1 P( xj y; ) P ( y; ) D Các tham số mơ hình: (8) Đinh Thị Mỹ Hạnh 241 k P ( y k ), k 1, 2, , K j k P( x y k ), j 1, 2, , D; k 1,2, , K Với văn x, gọi V tập từ thuộc x Thuật tốn phân loại x mơ hình Bayes đơn giản sau: Data: x, k , j k , k 1, 2, , K ; j 1, 2, , D for k 1, 2, , K s[k] = log k ; for j V s[k] = s[k] + log k ; return arg maxk s[k] Luật kết hợp Luật kết hợp tìm mẫu phổ biến, kết hợp, tương quan hay cấu trúc nhân tập đối tượng sở liệu giao tác, sở liệu quan hệ kho thông tin khác để đưa liên kết phần tử liệu * Định nghĩa Luật kết hợp: Cho tập I = {I1, I2, , Im} tập thuộc tính riêng biệt, thuộc tính gọi mục Gọi D sở liệu chứa n giao dịch, ghi T giao dịch chứa tập mục, XI T gán nhãn với định danh Ta nói rằng, giao dịch TD hỗ trợ tập XI chứa tất mục X Một tập X gọi tập mục k phần tử (k-itemset) lực lược X k (tức |X|=k) - Định nghĩa 1: Độ hỗ trợ X, ký hiệu support(X), tỉ lệ phần trăm giao dịch hỗ trợ X tổng giao dịch D, nghĩa là: Support ( X ) T D X T (9) D - Định nghĩa 2: Một luật kết hợp có dạng R:X=>Y, X,Y tập mục, X,Y I XY = X gọi tiên đề, Y gọi hệ luật Hai thông số quan trọng luật kết hợp độ hỗ trợ (support) độ tin cậy (confidence) - Định nghĩa 3: Độ hỗ trợ (support) luật kết hợp X=>Y tỉ lệ phần trăm số lượng giao dịch chứa X Y (X∩Y) với tổng số giao dịch có sở liệu Đơn vị tính % Support Tổng sản lượng giao dịch hỗ trợ X Y Tỉng sè giao dÞch (10) - Định nghĩa 4: Độ tin cậy (confidence) tỉ lệ phần trăm số lượng giao dịch chứa X Y (XY) với số giao dịch có chứa X Đơn vị tính % 242 KỶ YẾU HỘI THẢO KHOA HỌC QUỐC GIA CITA 2017 “CNTT VÀ ỨNG DỤNG TRONG CÁC LĨNH VỰC” Confidence Tổng số lượng giao dịch hỗ trợ X Y Tổng số giao dịch hỗ trợ X (11) Đề xuất giải pháp PLVB cho tiếng DTTS Việt Nam Trong nghiên cứu này, tác giả chọn thuật toán SVM để giải vấn đề vì: - SVM đánh giá phân lớp xác cho tốn phân lớp văn bản, phân lớp tốc độ nhanh hiệu toán phân lớp văn bản[13] - Khi sử dụng phương pháp chọn đặc trưng, ta loại bỏ nhiều từ quan trọng, dẫn đến mát nhiều thơng tin, điều làm cho độ xác phân loại giảm đáng kể Giải thuật SVM có khả điều chỉnh lực phân loại tự động đảm bảo hiệu suất tổng quát hóa tốt, chí khơng gian liệu có số chiều cao (số đặc trưng lớn) lượng tài liệu mẫu có hạn - Các thư viện cài đặt sẵn SVM phong phú scikit-learn [14], matlab [15] libsvm [16] - Nhiều cơng trình nghiên cứu PLVB tiếng Việt sử dụng SVM triển khai mang lại hiệu cao[6] Quá trình thực - Đầu vào: văn tiếng DTTS thu thập từ nguồn Internet trang http://vov4.vov.vn (VOV - Hệ phát tiếng dân tộc VOV4), lựa chọn văn thuộc số chủ đề giới hạn (kinh tế - xã hội, khoa học giáo dục…) - Xử lý: Phân lớp văn giải thuật SVM, gồm bước: Tiền xử lý Trích chọn vector đặc trưng Biểu diễn vector Dữ liệu huấn luyện Mơ hình Huấn luyện Hình Quy trình tổng quát trình phân lớp văn - Tiền xử lý văn bản: loại bỏ thẻ HTML, dấu câu, tả, ký tự lỗi, loại bỏ nhiều tốt liệu nhiễu, không giúp cho việc phân loại - Biểu diễn văn dạng vector (thường gọi mơ hình hóa văn bản, vector hóa văn bản), thường phải làm công việc sau: Tách từ (tiếng Việt có thư viện vnTokenizer), lọc bỏ stopwords (thì, là, nên, ) Vector hóa văn (feature vector): sử dụng kỹ thuật TF-IDF (Term Frequency - Inverse Document Frequency) (tham khảo thêm [6]) - Phân lớp văn sau văn vector hóa, bước ta chọn mơ hình, thuật tốn phân lớp SVM Bước bao gồm: Đinh Thị Mỹ Hạnh 243 Train Evaluate mơ hình: chia liệu thành tập train test để đánh giá mơ hình Thử, thay đổi mơ hình, tham số đánh giá, đến kết tối ưu, gọi model selection Việc đánh giá mơ hình sử dụng: ROC Curve, Precision/Recall, Lift, - Deploy - Đầu ra: Các văn phân lớp Kết luận 4.1 Kết đạt Nghiên cứu đưa giải pháp tổng thể đề xuất giải pháp kỹ thuật cho toán phân lớp đối văn tiếng DTTS Về mặt lý thuyết, tác giả nghiên cứu tổng quan XLNNTN, XLTV nói chung; tình hình nghiên cứu nước giới vấn đề Đối với toán PLVB, tác giả tìm hiểu thuật tốn phổ biến nhằm giải việc PLVB nói chung đề xuất giải pháp sử dụng thuật toán SVM để giải toán đặt 4.2 Hạn chế Giới hạn phạm vi toán 54 dân tộc sinh sống đất nước Việt Nam có ngơn ngữ riêng văn hóa truyền thống đặc sắc 24 dân tộc có chữ viết riêng tiếng Thái, Mơng, Tày, Nùng, Khmer, Gia Rai, Ê đê, Hoa, Chăm… Tuy tất ngơn ngữ dân tộc thuộc loại hình ngơn ngữ đơn lập, song khơng có nghĩa giống có nhiều loại chữ Do đó, tốn giới hạn lại cho chữ viết dân tộc có đặc điểm tương đồng với tiếng Việt sử dụng ký tự Latinh để tạo âm tiết, sử dụng khoảng trống để phân tách âm tiết Nghiên cứu chưa đề xuất ngôn ngữ cụ thể dung để triển khai thực nghiệm Nghiên cứu dừng lại mức độ đề xuất giải pháp, ý tưởng áp dụng thuật toán SVM để PLVB tiếng DTTS chưa triển khai thực nghiệm cụ thể Khi triển khai thực tế phải giải số khó khăn sau đây: - Lựa chọn liệu mẫu văn tiếng DTTS có đặc điểm cấu trúc gần với tiếng Việt nhất; - Xây dựng kho ngữ liệu thử nghiệm giải pháp tách từ 4.3 Hướng phát triển Tác giả triển khai việc thực nghiệm toán bước sau: - Ngắn hạn: Nghiên cứu lựa chọn tiếng DTTS phù hợp để triển khai; Thu thập liệu mẫu (các văn tiếng DTTS thuộc đến lĩnh vực); Cài đặt thử nghiệm đánh giá - Dài hạn: Xây dựng công cụ, hệ thống xử lý văn tiếng DTTS Tài liệu tham khảo Tiếng Việt Đinh Điền, Hồ Hải Thuỵ, Ngơn ngữ học máy tính việc xây dựng từ điển, Tạp chí Từ điển học & Bách khoa thư, số (2011) 244 KỶ YẾU HỘI THẢO KHOA HỌC QUỐC GIA CITA 2017 “CNTT VÀ ỨNG DỤNG TRONG CÁC LĨNH VỰC” Đỗ Phúc, Nghiên cứu ứng dụng tập phổ biến luật kết hợp vào toán phân loại văn tiếng Việt có xem xét ngữ nghĩa, Tạp chí phát triển KH&CN, tập 9, số 2, trang 23-32, năm 2006 Hồ Quốc Bảo, Đinh Điền, Đặng Bác Văn, Lương Vỹ Minh, Phạm Đào Duy Vũ, Xây dựng kho ngữ liệu song ngữ Anh - Việt, Báo cáo kỹ thuật (Đề tài nhánh SP.74) Hồ Tú Bảo, Lương Chi Mai, Xử lý tiếng Việt Công nghệ Thông tin, Viện Công nghệ Thông tin, Viện Khoa học Tiên tiến Nhật Bản (2008) Huỳnh Công Pháp, Đặng Đại Thọ, Nguyễn Văn Bình, Cải tiến chất lượng dịch tự động giải pháp mở rộng kho ngữ liệu, Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công nghệ Thông tin (FAIR), Hà Nội (2015) Nguyễn Linh Giang, Nguyễn Mạnh Hiển, Phân loại văn tiếng Việt với phân loại vectơ hỗ trợ SVM, Tạp chí CNTT&TT (6-2006) Nguyễn Linh Giang, Nguyễn Duy Hải, Mô hình thống kê hình vị tiếng Việt ứng dụng, Chun san Các cơng trình nghiên cứu, triển khai Cơng nghệ Thơng tin Viễn thơng, Tạp chí Bưu Viễn thông, số 1, trang 61-67 (1-1999) Huỳnh Quyết Thắng, Đinh Thị Thu Phương, Tiếp cận phương pháp học khơng giám sát học có giám sát với toán phân lớp văn tiếng Việt đề xuất cải tiến cơng thức tính độ liên quan hai văn mơ hình vectơ, Kỷ yếu Hội thảo ICT.rda’04, trang 251-261, Hà Nội (2005) Nguyễn Trọng Báu, Dân tộc Thời đại, số 76, tr - (3/2005) 10 Phùng Đức Tùng, Nguyễn Việt Cường, Nguyễn Cao Thịnh, Nguyễn Thị Nhung, Tạ Thị Khánh Vân, Tổng quan thực trạng kinh tế - xã hội 53 dân tộc thiểu số, Tiểu Dự án hỗ trợ giảm nghèo PRPP Uỷ ban Dân tộc (do UNDP Irish Aid tài trợ), Hà Nội, (5-2017) 11 Tạ Văn Thông, PGS.TS, Viện Từ điển học bách khoa thư Việt Nam, Bảo tồn ngôn ngữ dân tộc thiểu số Việt Nam trước nguy tiêu vong, Ngôn ngữ đời sống, Số 03 (185), (2011) 12 Trần Cao Đệ, Phạm Nguyên Khang, Phân loại văn với máy học vector hỗ trợ định, Tạp chí Khoa học Công nghệ Đại học Cần Thơ, 21a, 52-63 (2012) Website: 13 Lưu Tuấn Anh Natural Language Processing http://viet.jnlp.org 14 http://scikit-learn.org/stable/modules/svm.html 15 http://www.mathworks.com/help/stats/support-vector-machines-for-binaryclassification.html?requestedDomain=www.mathworks.com 16 https://www.csie.ntu.edu.tw/~cjlin/libsvm ... thô (2) Xử lý ngôn ngữ tự nhiên bao gồm hiểu ngôn ngữ tự nhiên (Natural Language Understanding - NLU) sinh ngôn ngữ tự nhiên (Natural Language Generation - NLG) Trong đó: Hiểu ngơn ngữ tự nhiên. .. này, tác giả chọn thuật toán SVM để giải vấn đề vì: - SVM đánh giá phân lớp xác cho tốn phân lớp văn bản, phân lớp tốc độ nhanh hiệu toán phân lớp văn bản[13] - Khi sử dụng phương pháp chọn đặc... sử dụng thuật toán SVM để giải toán đặt 4.2 Hạn chế Giới hạn phạm vi toán 54 dân tộc sinh sống đất nước Việt Nam có ngơn ngữ riêng văn hóa truyền thống đặc sắc 24 dân tộc có chữ viết riêng tiếng