Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 70 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
70
Dung lượng
1,63 MB
Nội dung
i LỜI CẢM ƠN Luận văn hoàn thành trường Đại học Công nghệ Thông tin Truyền thông Thái Nguyên Tác giả luận văn xin bày tỏ lòng biết ơn sâu sắc tới thầy hướng dẫn khoa học: PGS.TS Nguyễn Tân Ân tận tình hướng dẫn, giúp đỡ tạo điều kiện để tác giả thực luận văn Tác giả xin chân thành cảm ơn tập thể thầy cô giáo khoa CNTT, phòng quản lý sau đại học Trường Đại học Công nghệ Thông tin Truyên thông Thái Nguyên tạo điều kiện giúp đỡ cho tác giả nghiên cứu, học tập hoàn thành luận văn Xin cảm ơn gia đình, bạn bè, đồng nghiệp tạo điều kiện thuận lợi tinh thần vật chất cho tác giả hoàn thành luận văn Xin cảm ơn tất cả! Thái Nguyên, tháng năm 2016 Tác giả luận văn Đặng Đình Tuyến ii LỜI CAM ĐOAN Tôi Đặng Đình Tuyến, học viên cao học K13, chuyên ngành Khoa học máy tính, khoá 2014-2016 Tôi xin cam đoan luận văn thạc sĩ “Phân lớp văn nhờ Máy Véc-tơ hỗ trợ (SVM) với hàm string kernel” công trình nghiên cứu riêng với hướng dẫn PGS.TS Nguyễn Tân Ân Các số liệu, kết nêu Luận văn trung thực chưa công bố công trình khác Tất tham khảo từ nghiên cứu liên quan nêu nguồn gốc cách rõ ràng từ danh mục tài liệu tham khảo luận văn Trong luận văn, việc chép tài liệu, công trình nghiên cứu người khác mà không rõ tài liệu tham khảo Thái Nguyên, tháng năm 2016 Tác giả Đặng Đình Tuyến iii MỤC LỤC LỜI CẢM ƠN i LỜI CAM ĐOAN ii MỤC LỤC iii DANH MỤC HÌNH ẢNH v DANH MỤC BẢNG BIỂU vi CHƯƠNG 1: BÀI TOÁN PHÂN LỚP 1.1 Nội dung toán phân lớp 1.2 Các phương pháp phân lớp 1.2.1 Phương pháp Naïve Bayes (NB) 1.2.2 Phương pháp K–Nearest Neighbor (kNN) 1.2.3 Neural Network (NNet) 1.2.4 Centroid- based vector 1.3 Máy véc-tơ hỗ trợ (Support Vector Machine SVM) 1.3.1 Bài toán phân loại SVM 1.3.2 Ý tưởng SVM 1.3.3 Phương pháp tìm α*, b 16 1.3.4 SVM toán nhiều lớp 21 1.3 Kết luận 24 CHƯƠNG 2: NHỮNG KIẾN THỨC CƠ SỞ 25 2.1 Hàm Kernel 25 2.1.1 Không gian gốc, không gian đặc trưng 25 2.1.2 Định nghĩa kernel 26 2.1.3 Một số ví dụ Ф k(,) 26 2.1.4 Một số hàm kernel 28 2.1.5 Định lý 30 2.1.6 Kernel độ đo giống hai đối tượng 31 2.1.7 Kernel trick 32 2.1.8 Xây dựng kernel 32 iv 2.1.9 Nhân hóa số phương pháp phân lớp 34 2.2 String kernel 39 2.2.1 Kernel dựa mô hình k_gram 39 2.2.2 Kernel dựa trọng số xâu 41 2.2.3 Tính string kernel dùng quy hoạch động 43 2.2.4 Kernel dựa độ giống hai xâu 44 2.2.5 Một số đặc trưng Tiếng Việt 45 2.3 Kết luận 48 CHƯƠNG 3: CÀI ĐẶT THỬ NGHIỆM THUẬT TOÁN SVM CHO BÀI TOÁN TÌM KIẾM VĂN BẢN 49 3.1 Mô tả toán 49 3.2 Phân tích, cài đặt thuật toán 49 3.2.1 Thuật toán huấn luyện để tìm từ khóa 49 3.2.2 Thuật toán sử dụng từ khóa tìm kiếm văn 57 3.3 Kết luận 61 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 62 TÀI LIỆU THAM KHẢO 63 v DANH MỤC HÌNH ẢNH Hình 1.1: Kiến trúc mô đun (Modular Architecture) Các kết mạng giá trị đầu vào cho mạng siêu chủ đề nhân lại với để dự đoán chủ đề cuối Hình 1.2: Các trường hợp siêu mặt h phân chia tập liệu D SVM Hình 1.3: Siêu mặt phân chia tập mẫu huấn luyện với lớp lớp + hình vuông lớp – hình tròn Hình 1.4: Siêu phẳng tuyến tính phân chia liệu, m khoảng cách hai lề 10 Hình 1.5: Nguyên lý phương pháp một-chọi-phần lại cho ba lớp 22 Hình 1.6: Nguyên lý phương pháp phân chia môt-chọi-một 22 Hình 1.7: Biểu diến phương pháp END để phân chia ba trạng thái toán dự đoán phân lớp 24 Hình 2.1: Mỗi điểm liệu ánh xạ hàm không tuyến tính Ф từ không gian liệu X vào không gian đặc trưng F Trong Ф(x) Ф(o) véc-tơ đặc trưng điểm liệu gốc x o 26 Hình 2.2: Ánh xạ liệu từ không gian đầu vào R2 sang không gian liệu R3 27 Hình 2.3: Kernel đa thức bậc hai ánh xạ từ không gian hai chiều vào không gian đặc trưng chiều 29 Hình 2.4: Dữ liệu tách thành hai lớp không gian ban đầu 31 Hình 3.1: Trang web Du lịch Khát vọng Việt 50 Hình 3.2: Trang web taxinoibaiphuonglong.com 52 Hình 3.3: Trang web vietnamtourism.com 55 vi DANH MỤC BẢNG BIỂU Bảng 3.1: Bảng thống kê từ đặc trưng từ Đoạn mẫu 50 Bảng 3.2: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) 51 Bảng 3.3: Bảng thống kê từ đặc trưng từ Đoạn mẫu 52 Bảng 3.4: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) 54 Bảng 3.5: Bảng thống kê từ đặc trưng từ Đoạn mẫu 55 Bảng 3.6: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) 56 Bảng 3.7: Bảng tổng hợp 56 Bảng 3.8: Số lần xuất từ văn huấn luyện 59 Bảng 3.9: Bảng phân nhóm với nhãn “Vịnh Hạ Long” 59 Bảng 3.10: Bảng phân nhóm với nhãn “Di sản” 60 Bảng 3.11: Bảng phân nhóm với nhãn “đảo” 60 CHƯƠNG 1: BÀI TOÁN PHÂN LỚP 1.1 Nội dung toán phân lớp Phân lớp (classification) tiến trình xử lý nhằm xếp mẫu liệu hay đối tượng vào lớp định nghĩa trước Các mẫu liệu hay đối tượng xếp lớp dựa vào giá trị thuộc tính (attributes) cho mẫu liệu hay đối tượng Sau xếp tất đối tượng biết trước vào lớp tương ứng, lúc lớp đặc trưng tập thuộc tính đối tượng chứa lớp Ví dụ: phân lớp văn bản, tế bào để xác định tế bào ung thư Phân lớp gọi phân lớp có giám sát (supervised classification), lĩnh vực phổ biến học máy (machine learning) khai thác liệu (data mining) Nó giải việc xác định quy tắc số lượng biến số độc lập kết đạt hay biến số xác định phụ thuộc tập liệu đưa Tổng quát, đưa tập mẫu học x ,x i1 i2 , , xik , yi , i=1,….,N, nhiệm vụ phải ước lượng phân lớp hay mô hình xấp xỉ hàm y = f(x) chưa biết mà phân lớp xác cho mẫu thuộc tập mẫu học Có nhiều cách để biểu diễn mô hình phân lớp có nhiều thuật toán giải Các thuật toán phân lớp tiêu biểu bao gồm mạng neural, định, suy luận quy nạp, mạng Beyesian, Support Vector Machine… Tất cách tiếp cập xây dựng mô hình có khả phân lớp cho mẫu chưa biết dựa vào mẫu tương tự học Bài toán phân lớp xử lý thông tin thu thập từ lĩnh vực hoạt động người giới tự nhiên biểu diễn dạng bảng Bảng bao gồm đối tượng thuộc tính Các phần tử bảng giá trị xác định thuộc tính (attributes hay features) đối tượng Trong số cột số thuộc tính đối tượng, cột thuộc tính số dòng số đối tượng chứa liệu Mọi liệu biểu diễn dạng khác chuyển thành dạng bảng để thực trình phân lớp 1.2 Các phương pháp phân lớp 1.2.1 Phương pháp Naïve Bayes (NB) NB phương pháp phân loại dựa vào xác suất sử dụng rộng rãi lĩnh vực máy học (Mitchell trình bày năm 1996, Joachims trình bày năm 1997 Jason năm 2001) sử dụng lần lĩnh vực phân loại Maron vào năm 1961, sau trở nên phổ biến dùng nhiều lĩnh vực công cụ tìm kiếm (được mô tả năm 1970 Rijsbergen), lọc mail (mô tả năm 1998 Sahami) * Ý tưởng Ý tưởng cách tiếp cận Naïve Bayes sử dụng xác suất có điều kiện từ chủ đề để dự đoán xác suất chủ đề văn cần phân loại Điểm quan trọng phương pháp chỗ giả định xuất tất từ văn độc lập với Với giả định NB không sử dụng phụ thuộc nhiều từ vào chủ đề, không sử dụng việc kết hợp từ để đưa phán đoán chủ đề việc tính toán NB chạy nhanh phương pháp khác với độ phức tạp theo hàm số mũ * Công thức Mục đích tính xác suất Pr(Cj,d′), xác suất để văn d′ nằm lớp Cj Theo luật Bayes, văn d′ gán vào lớp Cj có xác suất Pr(Cj, d′) cao Công thức sau dùng để tính Pr(Cj,d′) (do Joachims đề xuất năm 1997) HBAYES d' d' ' IF (w, d ) Pr(Cj ). Pr(wi | Cj ) Pr(Cj ). Pr(wi | Cj ) i1 i1 argmax argmax d' d' ') ' IF (w, d Cj C Cj C Pr(C' ). Pr(wi | C' ) Pr(C' ). Pr(wi | C' ) i i C'C C'C Với: (TF,d’) số lần xuất từ wi văn d′ |d′| số lượng từ văn d′ wi từ không gian đặc trưng F với số chiều |F| Pr(Cj) tính dựa tỷ lệ phần trăm số văn lớp Pr( C j ) || C j || || C || || C j || || C ' || tương ứng với tập liệu huấn luyện C ' C Pr(wi|Cj) tính sử dụng phép ước lượng Laplace ( Naplik trình bày năm 1982) Pr(w i | C j ) TF (w i , C j ) |F | ' TF (w , C ) j w '| F | Ngoài có phương pháp NB khác kể sau ML Naive Bayes, MAP Naive Bayes, Expected Naive Bayes, Bayesian Naive Bayes (Jason mô tả năm 2001) Naive Bayes công cụ hiệu số trường hợp Kết tồi liệu huấn luyện nghèo nàn tham số dự đoán (như không gian đặc trưng) có chất lượng Nhìn chung thuật toán phân loại tuyến tính thích hợp phân loại văn nhiều chủ đề NB có ưu điểm cài đặt đơn giản, tốc độ nhanh, dễ dàng cập nhật liệu huấn luyện có tính độc lập cao với tập huấn luyện, sử dụng kết hợp nhiều tập huấn luyện khác Tuy nhiên NB giả định tính độc lập từ phải cần đến ngưỡng tối ưu kết khả quan Nhằm mục đích cải thiện hiệu NB, phương pháp multiclass- boosting, ECOC (do Berger trình bày năm 1999 Ghani mô tả lại năm 2000) dùng kết hợp 1.2.2 Phương pháp K–Nearest Neighbor (kNN) Đây phương pháp truyền thống tiếng hướng tiếp cận dựa thống kê nghiên cứu nhận dạng mẫu bốn thập kỷ qua (theo tài liệu Dasarathy năm 1991) kNN đánh giá phương pháp tốt (áp dụng tập liệu Reuters phiên 21450), sử dụng từ thời kỳ đầu việc phân loại văn (được trình bày Marsand năm 1992, Yang năm 1994, Iwayama năm 1995) * Ý tưởng Khi cần phân loại văn mới, thuật toán tính khoảng cách (khoảng cách Euclide, Cosine ) tất văn tập huấn luyện đến văn để tìm k văn gần (gọi k “láng giềng”), sau dùng khoảng cách đánh trọng số cho tất chủ đề Trọng số chủ đề tổng tất khoảng cách văn k láng giềng có chủ đề, chủ đề không xuất k láng giềng có trọng số Sau chủ đề xếp theo mức độ trọng số giảm dần chủ đề có trọng số cao chọn chủ đề văn cần phân loại * Công thức Trọng số chủ đề cj văn x : w x , c j sim x , d i y d i , c j b j Trong đó: y di , c j {0,1} với y – 0: văn di không thuộc chủ đề cj, y = 1: văn di thuộc chủ đề cj sin x , d i : độ giống văn cần phân loại x văn di Có thể sử dụng độ đo cosine để tính sin x , di Bj ngưỡng phân loại chủ đề cj tự động học sử dụng tập văn hợp lệ chọn từ tập huấn luyện Để chọn tham số k tốt cho việc phân loại, thuật toán phải chạy thử nghiệm nhiều giá trị k khác nhau, giá trị k lớn thuật toán ổn định sai sót thấp ( theo Yang trình bày năm 1997) Giá trị tốt sử dụng hai liệu Reuter Oshumed k=45 50 Hình 3.1: Trang web Du lịch Khát vọng Việt Đoạn mẫu “Vịnh Hạ Long tiếng với hệ thống đảo hang động có tạo hình vô kì lạ, đảo giống hình người nhìn phía đất liến, đảo lại giống hình ông lão buông cần câu cá, tinh xảo đảo giống hình rồng bay lượn … đến với Vịnh Hạ Long bạn lạc vào giới cổ tích hóa đá Chăng mà vịnh Hạ Long vinh dự trở thành bảy kì quan thiên nhiên giới, không sai liên tiếp UNESCO công nhận di sản thiên nhiên Đó lý du lịch Hạ Long 2014 trở thành điểm thu hút khách nước” Trích nguồn [http://dulichkhatvongviet.com/tin-tuc/di-san-thien-nhien-the-gioi/vai-net-ve-vinhha-long] Bước 3: Huấn luyện tìm từ khóa đặc trưng Với số lượng văn lớn, từ có tần xuất văn thấp không coi đặc trưng Vì bước này, lựa chọn từ đặc trưng T từ Đoạn mẫu sau: T={ t D r |#t>= k IG(t,c)>= θ}, # t số lần xuất t toàn tập liệu huấn luyện Bảng 3.1: Bảng thống kê từ đặc trưng từ Đoạn mẫu 51 STT Từ Tần xuất Vịnh Hạ Long đảo kỳ quan thiên nhiên đảo rồng di sản hang động Xét ví dụ từ đặc trưng sau: Vịnh Hạ Long Bước 4: Biểu diễn văn dạng véc – tơ Tính trọng số từ t T văn tập huấn luyện, công thức: m 1 log f ij log w ij hi hi >= 0 Mỗi văn di biểu diễn véc – tơ xi = { Wi1, Wi2,…, Win}, Wịj trọng số từ từ tj văn di Bảng 3.2: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) STT Từ Tần xuất Trọng số W Vịnh Hạ Long 3 đảo 4 kỳ quan thiên nhiên 1 đảo 1 rồng 1 di sản 1 hang động 1 Xét đoạn mẫu 2: “Tiếp đảo sở hữu 1969 đảo lớn nhỏ, 989 đảo mang tên 980 đảo chưa sở hữu tên Đảo nơi gồm có hai dạng đảo đá vôi đảo phiếm thạch tập trung Bái tử long vinh Hạ Long 52 Ở thấy hàng loạt hang động đẹp danh Vùng Di sản thiên nhiên giới công nhận sở hữu khoảng trống 434 km2 bao gồm 775 đảo, hình tam giác mang đỉnh đảo Ðầu Gỗ (phía tây), hồ Ba Hầm (phía nam), đảo Cống Tây (phía đông) vùng kế bên khu vực đệm di tích danh thắng quốc gia Bộ Văn hóa Thông tin xếp hạng năm 1962.” [http://taxinoibaiphuonglong.com/thuyet-minh-ve-danh-lam-thang-canh-vinh-ha-long] Hình 3.2: Trang web taxinoibaiphuonglong.com Bước 1: Xây dựng tập từ điển Bước Thu thập đoạn văn mẫu để đưa vào huấn luyện Bước 3: Huấn luyện tìm từ khóa đặc trưng Bảng 3.3: Bảng thống kê từ đặc trưng từ Đoạn mẫu STT Từ Tần xuất Vịnh Hạ Long đảo 12 53 kỳ quan thiên nhiên đảo rồng di sản hang động 54 Bước 4: Biểu diễn văn dạng véc – tơ Bảng 3.4: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) STT Từ Tần xuất Trọng số W Vịnh Hạ Long 1 đảo 12 12 kỳ quan thiên nhiên 0 đảo 1 rồng 0 di sản 1 hang động 1 Xét đoạn mẫu 3: “Vịnh Hạ Long nằm vùng Đông Bắc Việt Nam, phần phía tây Vịnh Bắc Bộ, bao gồm vùng biển thành phố Hạ Long, thành phố Cẩm Phả phần huyện đảo Vân Đồn Phía tây nam giáp đảo Cát Bà, phía tây giáp đất liền với đường bờ biển dài 120 km, Vịnh có tổng diện tích 1553 km2 gồm 1969 đảo lớn nhỏ, 989 đảo có tên 980 đảo chưa có tên Vùng Di sản Thế giới công nhận có diện tích 434 km2 bao gồm 775 đảo, hình tam giác với ba đỉnh đảo Đầu Gỗ (phía tây), hồ Ba Hầm (phía nam) đảo Cống Tây (phía đông) Vịnh Hạ Long di sản độc đáo địa danh chứa đựng dấu tích quan trọng trình hình thành phát triển lịch sử trái đất, nôi cư trú người Việt cổ, đồng thời tác phẩm nghệ thuật tạo hình vĩ đại thiên nhiên với diện hàng nghìn đảo đá muôn hình vạn trạng, với nhiều hang động kỳ thú quần tụ thành giới vừa sinh động vừa huyền bí Bên cạnh đó, vịnh Hạ Long nơi tập trung đa dạng sinh học cao với hệ sinh thái điển hình với hàng nghìn loài động thực vật vô phong phú, đa dạng Nơi gắn liền với giá trị văn hóa – lịch sử hào hùng dân tộc” [http://vietnamtourism.com/disan/index.php?catid=6] 55 Hình 3.3: Trang web vietnamtourism.com Bước 1: Xây dựng tập từ điển Bước Thu thập đoạn văn mẫu để đưa vào huấn luyện Bước 3: Huấn luyện tìm từ khóa đặc trưng Bảng 3.5: Bảng thống kê từ đặc trưng từ Đoạn mẫu STT Từ Vịnh Hạ Long Tần xuất đảo kỳ quan thiên nhiên đảo rồng di sản hang động 56 Bước 4: Biểu diễn văn dạng véc – tơ Bảng 3.6: Tính toán tần xuất trọng số từ (theo định nghĩa từ tiếng Việt) STT Từ Vịnh Hạ Long Tần xuất Trọng số W đảo 9 kỳ quan thiên nhiên 0 đảo 1 rồng 0 di sản 2 hang động 1 Qua ba tập liệu huấn luyện chương trình tính toán trích ba từ đặc trưng là: Vịnh Hạ Long, đảo, di sản Nhận xét: Với nhu cầu tìm kiếm thông tin du lịch Quảng Ninh dựa văn tìm từ khóa đặc trưng cho viết du lịch Quảng Ninh với trọng số sau: Bảng 3.7: Bảng tổng hợp Stt Từ khóa Văn Văn Văn Tổng số Cẩm Phả 0 1 rồng 0 danh thắng 1 đảo 13 di sản 1 di tích 1 hang động 1 đảo 0 huyện 0 1 10 kỳ quan thiên nhiên 0 11 Thành phố 0 1 12 Thế giới 0 1 57 13 thiên nhiên 1 14 Vân Đồn 0 1 15 Việt Nam 0 1 16 Vịnh Hạ Long Từ bảng thống kê ta lấy từ khóa sau: Từ Vịnh Hạ Long Độ dài véc - tơ Trọng số di sản đảo 13 Như muốn tìm văn viết du lịch Quảng Ninh ta dùng từ khóa để tìm kiếm Tuy nhiên, liệu huấn luyện nhỏ ( sử dụng có 03 văn bản) từ khóa chưa thực đại diện tốt Nhưng phạm vi nghiên cứu với mục tiêu thử nghiệm thuật toán ta chấp nhận từ khóa 3.2.2 Thuật toán sử dụng từ khóa tìm kiếm văn Mục tiêu bước dùng từ khóa để tìm văn liên quan đến du lịch Quảng Ninh phân lớp giúp cho người dùng sử dụng thuận lợi Lưu đồ thuật toán sau 58 Bắt đầu Yes No Nhập từ khóa Tìm kiếm gán nhãn Phân nhóm Tiếp tục Đưa kết Kết thúc Theo lưu đồ, bước thực sau: Nhập vào từ khóa 59 Chạy chương trình tìm kiếm từ nguồn tin (có thể Internet) Gán nhãn văn tìm (ứng với tần suất xuất từ khóa) Phân nhóm văn dựa nhãn Cung cấp tài liệu phân nhóm Ứng dụng vào toán trên, nhập vào từ khóa “ Vịnh Hạ Long”, “Di sản”, “Đảo” Tìm kiếm Internet, 10 tài liệu, ta có kết sau : Bảng 3.8: Số lần xuất từ văn huấn luyện Số lần xuất Số TT Vịnh Hạ Long Di sản Đảo Tổng VB1 11 24 VB2 21 41 68 VB3 12 12 26 VB4 VB5 12 VB6 15 VB7 11 VB8 10 VB9 VB10 12 - Phân nhóm văn ứng với nhãn “Vịnh Hạ Long” Bảng 3.9: Bảng phân nhóm với nhãn “Vịnh Hạ Long” Số TT Số lần xuất nhóm VB1 VB2 21 VB3 12 VB4 4 VB5 VB6 VB7 VB8 60 VB9 VB8 - Phân nhóm văn ứng với nhãn “ Di sản” Bảng 3.10: Bảng phân nhóm với nhãn “Di sản” Số TT Số lần xuất nhóm VB1 VB2 VB3 2 VB4 VB5 VB6 VB7 VB8 2 VB9 VB10 - Phân nhóm văn ứng với nhãn “ đảo” Bảng 3.11: Bảng phân nhóm với nhãn “đảo” Số TT Số lần xuất nhóm VB1 41 VB2 11 VB3 12 VB4 VB5 3 VB6 VB7 3 VB8 VB9 VB10 3 Nhận xét: Khi ta sử dụng từ khóa huấn luyện với khóa nhóm sử dụng cho tìm kiếm 61 Để tìm kiếm xác hơn, dùng từ khóa phụ để tìm kiếm xác văn bản, từ khóa phụ chọn xây dựng văn tác giả đưa vào cách có chủ định để tăng tốc độ tìm kiếm (như kỹ thuật SEO tạo website) Khi người dùng vào nhóm chọn phân loại theo thuật toán Khi muốn tìm xác văn người dùng nhập từ khóa đặc trưng chọn văn cần tìm Tuy nhiên nội dung không thuộc phạm vi đề tài 3.3 Kết luận Như chương giới thiệu cách tổng quát phương pháp phân loại phương pháp thống kê máy véc – tơ hỗ trợ SVM, giới thiệu cách tiếp cận giải toán cụ thể phân loại văn theo nội dung cần tìm kiếm Ở phần cài đặt thử nghiệm tiến hành thực nghiệm phần mềm Weka Khi sử dụng thư viện Libsvm 2.84 tích hợp phần mềm để phân lớp đòi hỏi liệu huấn luyện đầu vào phải chuẩn hóa dạng tệp có phần mở rộng ARFF cho kết sau: STT Hàm nhân Độ xác Linear 91.967 Polynomial 56.024 Radial basic function 95.180 Sigmoid 94.578 Từ kết ta thấy với toán phân loại văn sử dụng hàm nhân RBF cho ta độ xác phân loại cao 62 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN KẾT LUẬN Trong luận văn này, tìm hiểu nội dung liên quan đế hàm kernel định nghĩa hàm kernel, điều kiện để hàm kernel, phép toán hàm kernel, hàm kernel thường dùng Tiếp theo giới thiệu string kernel, giới thiệu cách xây dựng string kernel dùng toán quy hoạch động, dựa mô hình k_gram, dựa độ giống hai xâu Tiếp đến giới thiệu cách tổng quát phương pháp máy véc – tơ hỗ trợ SVM Giải toán phân loại văn với kết ghi lại bảng HƯỚNG PHÁT TRIỂN Trong thời gian tới, tiếp tục hoàn thiện chương trình Huấn luyện với nhiều liệu với nhiều lĩnh vực Để từ áp dụng việc phân loại cho nhiều toán khác… 63 TÀI LIỆU THAM KHẢO [1] Nguyễn Thị Kim Ngân, PHÂN LOẠI VĂN BẢN TIẾNG VIỆT BẰNG PHƯƠNG PHÁP SUPPORT VECTOR MACHINES, Đại học Bách Khoa Hà Nội, Hà Nội (2004) [2] Nguyễn Phương Thái, Nguyễn Văn Vinh, Lê Anh Cường, Một phương pháp phân đoạn từ tiếng Việt sử dụng mô hình Markov ẩn, khoa Công nghệ, đại học Quốc Gia Hà Nội, 2003 [3] Lodhi, C.Saunders, J.Shawe-Taylor, N.Cristianini, and C.Watkins Text classification using string kernel Juornal of Machine Learning Research, 2:419-440, 2002 [4] C Watkins Dynamic alignment kernel In A.J.Smola, P L Bartlett, B Sch olkopf, and D Schuurmans, editors, Advances in Large Margin Classifiers, page 39 – 50, Cambridge, MA, 2000 MIT Press [5] C.J.C Burges (1998), A tutorial on support vector machines for pattern recognition Data Mining Knowledge Discovery 2, 121–167 [6] H Drucker, C.J.C Burges, L Kaufman, A Smola, V Vapnik (1997) Support vector regression machines, in: M Mozer, M Jordan, T Petsche (Eds.), Advances in Neural Information Processing Systems, vol 9, MIT Press, Cambridge, MA, 1997, pp 155–161 [7] Lodhi, C Saunder, J Shawe-Taylor, N Cristianini and C Warkins (2002) Text classification using string kernel Jornal of Machine Learning Research, 2:419-440 [8] S Gunn (1998) Support Vector Machines for Classifcation and Regression, ISIS Tech Report, University of Southampton [9] Friedman J H (1996) Another approach to polychotomous classification Technical report, Department 0f Statistics, Stanford Linear Accelerator Center, Stanford University 64 [10] Hauke Tschach_y, 2004, Syllables and other String Kernel Extensions [11] Bernhard Scholkopf, Alexander Smola, and Klaus_Robert Muller Nonlinear Component Analysis as a Kernel Eigenvalua Problem [12] Liu Tzu-Jung, 2007 Seach Engine Research Report [13] http://dulichkhatvongviet.com/tin-tuc/di-san-thien-nhien-the-gioi/vai- net-ve-vinh-ha-long [14] http://taxinoibaiphuonglong.com/thuyet-minh-ve-danh-lam-thang-canhvinh-ha-long [15] http://vietnamtourism.com/disan/index.php?catid=6 [...]... được biểu diễn bởi một vector trọng tâm Việc xác định lớp của một văn bản thử bất kì sẽ thông qua viêc tìm vector trọng tâm nào gần với vector biểu diễn văn bản thử nhất Lớp của văn bản thử chính là lớp mà vector trọng tâm đại diện Khoảng cách được tính theo độ đo cosine C i 1 i d d j ei j 7 * Công thức Công thức tính vector trọng tâm của lớp i Độ đo khoảng cách giữa vector x và Ci x... Ci x Ci cos x , Ci x Ci Trong đó : x là vector văn bản cần phân loại {i} là tập hợp các văn bản thuộc chủ đề Ci Chủ đề của x là Cx thoả cos x , Ci arg max cos x , Ci 1.3 Máy véc -tơ hỗ trợ (Support Vector Machine SVM) 1.3.1 Bài toán phân loại SVM Máy véc -tơ hỗ trợ có thể được hiểu là kỹ thuật giải quyết bài toán sau:” Giả sử chúng... xác định như sau: || x y ||2 k x, y exp 2 (2.3) Đầu vào của kernel phụ thuộc vào khoảng cách Ơclit từ x đến y ( sẽ là véc -tơ hỗ trợ và điểm dữ liệu thử) Véc -tơ hỗ trợ là trung tâm của RBF 30 : là tham số xác định phạm vi ảnh hưởng của véc -tơ hỗ trợ trên khắp không gian dữ liệu d Kernel Sigmod Hàm kernel Sigmod được xác định như sau: k x, y tanh k x y Trong đó: k>0... dụng chiến lược này cho SVM Với phương pháp phân chia môt-chọi-một, chúng ta chia các lớp thành hai, lớp thứ nhất có nhãn dương, các lớp còn lại có nhãn âm Sẽ có n(n-1)/2 lớp nhị phân được chia theo cách này, cách này nhìn chung phân chia nhiều lớp hơn cách môt-chọi-phần còn lại Đối với trường hợp có ba trạng thái của bài toán dự đoán cấu trúc bậc hai, số lớp là ba thì số phân chia cũng là ba ( giống... (f(x) < 0) Với bài toán phân loại SVM, một siêu mặt phân chia dữ liệu được gọi là tốt nhất, nếu khoảng cách từ điểm dữ liệu gần nhất đến siêu mặt là gần nhất Khi đó, việc xác định một dãy xk D có thuộc phân loại c hay không, tương ứng với việc xét dấu của f(xk), nếu f(xk) > 0 thì xk c, nếu f(xk) ≤ 0 thì xk c 9 Hình 1.3: Siêu mặt phân chia tập mẫu huấn luyện với 2 lớp là lớp + 1 hình vuông và lớp – 1... tạo Wiener là người đã sử dụng Nnet để phân loại văn bản, sử dụng 2 hướng tiếp cận : kiến trúc phẳng (không sử dụng lớp ẩn) và mạng nơron 3 lớp (bao gồm một lớp ẩn)(theo Wiener trình bày năm 1995) Cả hai hệ thống trên đều sử dụng một mạng nơron riêng rẽ cho từng chủ đề, NNet học cách ánh xạ phi tuyến tính những yếu tố đầu vào như từ, hay mô hình vector của một văn bản vào một chủ đề cụ thể Khuyết điểm... có bản chất là sự kết hợp giữa hai phương pháp trên, ở hình 3.10 mô tả phương pháp END, trong đó sử dụng phương pháp một-chọi-phần còn lại, phân chia H với { E, C} cho lần thứ nhất 23 và thực hiện phân lớp một-chọi-một và tương tự như vây với E và { C, H}, cuối cùng là H và {E, C} 24 {E,C} {H,C} {H,E} Hình 1.7: Biểu diến phương pháp END để phân chia ba trạng thái của bài toán dự đoán trong phân lớp. .. 2 Bởi vậy chúng ta có thể định nghĩa hàm kernel như sau, trong đó không cần thực hiện Ф(.) 2 K x, y 1 x1 y1 x2 y2 1 x, y 2 2.1.4 Một số hàm kernel a Kernel tuyến tính Ф: Rn →Rn x→Ф(x) n Khi đó k(x,x’)= , i i x x i 1 Vậy kernel tuyến tính được xác định bằng công thức: k x , x ' x, x ' b (2.1) Kernel đa thức Kernel đa thức là một hàm được xác định bởi công thức: k x,... nhiều lớp thành hai lớp Nghĩa là nếu bài toán A có k lớp {c1, c2,…,ck} thì ta chuyển bài toán A thành hai lớp { C1} và {C2} Có ba cách để phân chia bài toán k lớp thành hai lớp: một – chọi – phần còn lại, một – chọi – một từng đôi một và END, sau đây chúng ta sẽ giới thiệu lần lượt từng phương pháp Phương pháp một chọi với phần còn lại Phương pháp này được mô tả như sau: 22 Hình 1.5: Nguyên lý cơ bản. .. Trong đó: xr là véc -tơ hỗ trợ thỏa mãn *r 0 S là tổng các support vector của siêu phẳng tối ưu Bây giờ, để gán nhãn cho một tài liệu x ta chỉ cần xét dấu của hàm f(x): f (x ) sg n l * i yi (x i x) b * i1 SVM không tuyến tính: Sử dụng Kernel Không phải tập dữ liệu nào cũng có thể phân chia tuyến tính được Trong trường hợp này, chúng ta sẽ ánh xạ các véc -tơ dữ liệu x từ không ... 30 2.1.6 Kernel l o ging gia hai i tng 31 2.1.7 Kernel trick 32 2.1.8 Xõy dng cỏc kernel 32 iv 2.1.9 Nhõn húa mt s phng phỏp phõn lp 34 2.2 String kernel ... 39 2.2.1 Kernel da trờn mụ hỡnh k_gram 39 2.2.2 Kernel da trờn trng s ca cỏc xõu 41 2.2.3 Tớnh string kernel dựng quy hoch ng 43 2.2.4 Kernel da trờn ging gia... viờc tỡm vector trng tõm no gn vi vector biu din bn th nht Lp ca bn th chớnh l lp m vector trng tõm i din Khong cỏch c tớnh theo o cosine C i i d d j ei j * Cụng thc Cụng thc tớnh vector trng