phương pháp học nửa giám sát và ứng dụng

77 941 3
phương pháp học nửa giám sát và ứng dụng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ———————————— TRẦN ANH TUẤN PHƯƠNG PHÁP HỌC NỬA GIÁM SÁT VÀ ỨNG DỤNG Chuyên nghành: Khoa học máy tính Mã số : 60.48.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Người hướng dẫn khoa học: PGS.TS ĐOÀN VĂN BAN Thái nguyên – Năm 2014 - i - MỤC LỤC MỤC LỤC i DANH MỤC CÁC TỪ VIẾT TẮT iv DANH MỤC CÁC HÌNH v MỞ ĐẦU 1 CHƢƠNG 1: PHƢƠNG PHÁP HỌC MÁY 4 1.1. Khái niệm học máy 4 1.2. Một số khái niệm cơ bản trong học máy 6 1.2.1. Không gian biểu diễn của dữ liệu 6 1.2.2. Bản chất của dữ liệu 6 1.2.3. Tiền xử lý dữ liệu 6 1.2.4. Quá trình rời rạc hóa dữ liệu 7 1.2.5. Tập mẫu 7 1.2.6. Quá trình tìm kiếm trong không gian giả thuyết 7 1.3. Học có giám sát 8 1.3.1. Khái niệm 8 1.3.2. Cách giải một bài toán học có giám sát 9 1.3.3. Cực tiểu hóa rủi ro kinh nghiệm 10 1.4. Học không có giám sát 11 1.4.1. Khái niệm 11 1.4.2. Phân cụm dữ liệu 12 1.5. Học tăng cƣờng 14 1.6. Học nửa giám sát 16 1.6.1. Khái niệm 16 - ii - 1.6.2. Bài toán học nửa giám sát 19 1.7. Tổng kết chƣơng 1 21 CHƢƠNG 2: MỘT SỐ THUẬT TOÁN HỌC NỬA GIÁM SÁT VÀ BÀI TOÁN PHÂN CỤM DỮ LIỆU 22 2.1. Một số thuật toán học nửa giám sát 22 2.1.1. Mô hình sinh và thuật toán kỳ vọng cực đại 22 2.1.1.1. Giới thiệu mô hình sinh 22 2.1.1.2. Mô hình sinh trong học nửa giám sát 22 2.1.1.3. Thuật toán kỳ vọng cực đại 24 2.1.2. Thuật toán tự huấn luyện 25 2.1.2.1 Giới thiệu thuật toán tự huấn luyện 25 2.1.2.2. Nội dung thuật toán 26 2.1.3. Thuật toán đồng huấn luyện 27 2.1.3.1. Giới thiệu thuật toán đồng huấn luyện 27 2.1.3.2. Nội dung thuật toán 28 2.1.4. Thuật toán máy véc tơ hỗ trợ (S3VM) 29 2.4.1.1. Thuật toán SVM 29 2.1.4.2. Giới thiệu thuật toán S3VM 34 2.1.4.3. Nội dung thuật toán S3VM 34 2.2. Phân cụm dữ liệu 36 2.2.1. Khái quát quá trình phân cụm dữ liệu 36 2.2.2. Bài toán phân cụm dữ liệu 36 2.2.3. Các yêu cầu của phân cụm dữ liệu 39 2.2.4. Các kỹ thuật phân cụm 41 - iii - 2.2.5. Một số thuật toán phân cụm dữ liệu nửa giám sát 46 2.2.5.1. Thuật toán COP-Kmeans 46 2.2.5.2. Phân cụm nửa giám sát trên tập dữ liệu đƣợc gán nhãn 47 2.2.5.3. Thuật toán K-Means phân cấp 49 2.3. Tổng kết chƣơng 2 50 CHƢƠNG 3: ỨNG DỤNG HỌC NỬA GIÁM SÁT VÀO BÀI TOÁN PHÂN CỤM VĂN BẢN 51 3.1. Phân tích bài toán 51 3.2 Hƣớng giải quyết của bài toán 53 3.3. Giải pháp, công nghệ sử dụng 57 3.4. Cài đặt chƣơng trình thử nghiệm 58 3.4.1. Nội dung chƣơng trình 58 3.4.2. Kết quả thực nghiệm 63 3.4.3. Thực hiện phân cụm thử nghiệm 64 3.5. Kết luận chƣơng 3 67 KẾT LUẬN 68 TÀI LIỆU THAM KHẢO 70 - iv - DANH MỤC CÁC TỪ VIẾT TẮT SVM Support Vector Machine S3VM Semi – superviesd Suport vector machines EM Expectation-Maximization MaxEnt Maximum Entropy TSVM Transductive Support Vector Machine RSS Residual Sum of Squares - v - DANH MỤC CÁC HÌNH Hình 1.1: Mô hình học có giám sát 8 Hình 1.2: Minh họa phân cụm dữ liệu. 13 Hình 1.3: Sơ đồ quá trình thực hiện của học nửa giám sát 17 Hình 1.4: Mô hình học nửa giám sát 19 Hình 1.5: Dữ liệu chƣa gán nhãn sử dụng trong quá trình học nửa giám sát 20 Hình 1.6: Mô hình hóa các tập dữ liệu trong học nửa giám sát. 21 Hình 2.1 Dữ liệu có nhãn 23 Hình 2.2 Dữ liệu có nhãn và chƣa có nhãn 23 Hình 2.3. Quá trình tự huấn luyện 26 Hình 2.4 Phân lớp SVM 29 Hình 2.5: Phân cụm các vector truy vấn 37 Hình 2.6: Hình thành cụm cha 38 Hình 2.7: Các chiến lƣợc phân cụm phân cấp 42 Hình 2.8: Thuật toán K-Means phân cấp 50 Hình 3.1. Thuật toán phân cụm văn bản 57 Hình 3.2: Giao diện chính chƣơng trình 63 Hình 3.3: Thử nghiệm nhập văn bản để phân cụm 65 Hình 3.4: Thử nghiệm chèn văn bản vào danh sách chờ phân cụm 66 Hình 3.5: Kết quả phân cụm thử nghiệm 66 - 1 - MỞ ĐẦU 1. Đặt vấn đề Hoạt động học tập là hoạt động chuyên hƣớng vào sự tái tạo lại tri thức ở ngƣời học. Sự tái tạo ở đây hiểu theo nghĩa là phát hiện lại. Sự thuận lợi cho ngƣời học ở đây đó là con đƣờng đi mà để phát hiện lại đã đƣợc các nhà khoa học tìm hiểu trƣớc, giờ ngƣời học chỉ việc tái tạo lại. Và để tái tạo lại, ngƣời học không có cách gì khác đó là phải huy động nội lực của bản thân (động cơ, ý chí, …), càng phát huy cao bao nhiêu thì việc tái tạo lại càng diễn ra tốt bấy nhiêu. Do đó hoạt động học làm thay đổi chính ngƣời học. Ai học thì ngƣời đó phát triển, không ai học thay thế đƣợc, ngƣời học cần phải có trách nhiệm với chính bản thân mình, vì mình trong quá trình học. Mặc dù hoạt động học có thể cũng có thể làm thay đổi khách thể. Nhƣng nhƣ thế không phải là mục đích tự thân của hoạt động học mà chính là phƣơng tiện để đạt đƣợc mục đích làm thay đổi chính chủ thể của hoạt động. Hoạt động học là hoạt động tiếp thu những tri thức lý luận, khoa học. Nghĩa là việc học không chỉ dừng lại ở việc nắm bắt những khái niệm đời thƣờng mà học phải tiến đến những tri thức khoa học, những tri thức có tính chọn lựa cao, đã đƣợc khái quát hoá, hệ thống hoá. Hoạt động học tập không chỉ hƣớng vào việc tiếp thu những tri thức, kĩ năng, kĩ xảo mà còn hƣớng vào việc tiếp thu cả những tri thức của chính bản thân hoạt động học. Hoạt động học muốn đạt kết quả cao, ngƣời học phải biết cách học, phƣơng pháp học, nghĩa là phải có những tri thức về chính bản thân hoạt động học. Vậy, việc làm thế nào để máy tính có khả năng học tập, tƣ duy và có khả năng học tập giống con ngƣời là một lĩnh vực nghiên cứu rất đƣợc chú ý trong thời đại hiện nay. Dựa trên khuynh hƣớng đó và sự hƣớng dẫn của PGS, TS - 2 - Đoàn Văn Ban, tôi mạnh dạn nhận đề tài: ”PHƢƠNG PHÁP HỌC NỬA GIÁM SÁT VÀ ỨNG DỤNG” để tìm hiểu và ứng dụng vào thực tế. 2. Đối tƣợng và phạm vi nghiên cứu Đối tƣợng nghiên cứu: - Đề tài nghiên cứu về những vấn đề chung trong học máy, một số thuật toán trong khai phá dữ liệu và ứng dụng thuật toán học nửa giám sát trong phân cụm văn bản. Phạm vi nghiên cứu: - Khai phá dữ liệu, các giải thuật phân cụm - Học máy và m ột số thuật toán học nửa giám sát và ứng dụng trong thực tế 3. Hƣớng nghiên cứu của đề tài - Nghiên cứu lý thuyết cơ bản về học máy, học không giám sát, học có giám sát, học nửa giám sát. - Nghiên cứu một số thuật toán học nửa giám sát, phân cụm dữ liệu. - Từ kết quả thu đƣợc đề tài cài đặt ứng dụng trong bài toán phân cụm văn bản. 4. Những nội dung chính Luận văn đƣợc trình bày trong 3 chƣơng, có phần mở đầu, phần kết luận, phần mục lục, phần tài liệu tham khảo. Luận văn đƣợc chia làm ba chƣơng với nội dung cơ bản nhƣ sau: Chƣơng 1: Trình bày về khái niệm học máy, học có giám sát, học không giám sát, học tăng cƣờng và học nửa giám sát. Chƣơng 2: Trình bày về một số thuật toán học nửa giám sát và bài toán phân cụm dữ liệu. Chƣơng 3: Trình bày về bài toán phân cụm dữ liệu văn bản, cách biểu diễn và xử lý dữ liệu văn bản và tiến hành cài đặt thử nghiệm thuật toán. - 3 - 5. Phƣơng pháp nghiên cứu - Nghiên cứu tổng hợp các tài liệu, về phƣơng pháp học máy: Học giám sát, học không giám sát, học nửa giám sát. - Nghiên cứu các giải thuật học nửa giám sát. Ý nghĩa khoa học: Đề tài nghiên cứu về những vấn đề chung trong học máy, một số thuật toán trong khai phá dữ liệu và ứng dụng thuật toán học nửa giám sát để phân cụm văn bản. - 4 - CHƢƠNG 1: PHƢƠNG PHÁP HỌC MÁY 1.1. Khái niệm học máy Học máy (machine learning) là một ngành khoa học nghiên cứu các kĩ thuật, các phƣơng pháp cho phép các máy tính có khả năng "học" giống nhƣ con ngƣời. Hay nói một cách khác cụ thể hơn, học máy là một phƣơng pháp để tạo ra các chƣơng trình máy tính bằng việc phân tích các tập dữ liệu, qua đó máy tính có khả năng tích lũy đƣợc tri thức thông qua việc học đƣợc các khái niệm để có thể ra quyết định trong các trƣờng hợp tƣơng tự [11]. Qua đó ta thấy học máy có liên quan rất mật thiết với thống kê, vì cả hai lĩnh vực đều nghiên cứu việc phân tích dữ liệu, nhƣng học máy khác với thống kê ở chỗ, học máy tập trung vào sự phức tạp của các giải thuật trong việc thực thi tính toán. Nhiều bài toán suy luận đƣợc xếp vào loại bài toán NP-khó, vì thế một phần của học máy là nghiên cứu sự phát triển các giải thuật suy luận xấp xỉ mà có thể xử lí đƣợc. Phân loại: Có hai loại phƣơng pháp học máy chính: - Phƣơng pháp quy nạp: Máy học/phân biệt các khái niệm dựa trên dữ liệu đã thu thập đƣợc trƣớc đó. Phƣơng pháp này cho phép tận dụng đƣợc nguồn dữ liệu rất nhiều và sẵn có. - Phƣơng pháp suy diễn: Máy học/phân biệt các khái niệm dựa vào các luật. Phƣơng pháp này cho phép tận dụng đƣợc các kiến thức chuyên ngành để hỗ trợ máy tính. Hiện nay, các thuật toán đều cố gắng tận dụng đƣợc ƣu điểm của hai phƣơng pháp này. [...]... rẻ Học nửa giám sát đã khắc phục đƣợc các nhƣợc điểm, và phát huy đƣợc ƣu điểm của học có giám sát và học không có giám sát Bằng cách kết hợp giữa học có giám sát và học không có giám sát, với một lƣợng lớn dữ liệu chƣa gán nhãn và một lƣợng nhỏ những dữ liệu đã đƣợc gán nhãn, bằng các giải thuật học nửa giám sát sẽ thu đƣợc kết quả vừa có độ chính xác cao vừa mất it thời gian công sức Do đó, học nửa. .. nhãn chi phí tƣơng thấp Do đó, học nửa giám sát có thể mang lại giá trị thực tiễn lớn Dƣới đây là hình vẽ thể hiện việc dữ liệu chƣa đƣợc gán nhãn sử dụng trong học nửa giám sát - 20 - Hình 1.5: Dữ liệu chƣa gán nhãn sử dụng trong quá trình học nửa giám sát Với ý tƣởng nhƣ vậy, học nửa giám sát đƣợc áp dụng cho việc phân lớp dữ liệu Trong bài toán phân lớp dữ liệu nửa giám sát, các mẫu dữ liệu có đặc... hình hóa các tập dữ liệu trong học nửa giám sát 1.7 Tổng kết chƣơng 1 Trên đây là một số kiến thức cơ bản về học máy, thông qua đó ta có thể nắm bắt đƣợc các kiến thức nền tảng về học máy nhƣ: Khái niệm thế nào là học máy, học có giám sát và học không giám sát; Các mô hình toán của học máy, học có giám sát, học không giám sát; Nắm đƣợc các bƣớc giải một bài toán trong học máy Đây chính là những kiến... nghiên cứu các thuật toán về học máy cũng nhƣ học nửa giám sát trong các chƣơng tiếp theo - 22 - CHƢƠNG 2: MỘT SỐ THUẬT TOÁN HỌC NỬA GIÁM SÁT VÀ BÀI TOÁN PHÂN CỤM DỮ LIỆU 2.1 Một số thuật toán học nửa giám sát 2.1.1 Mô hình sinh và thuật toán kỳ vọng cực đại 2.1.1.1 Giới thiệu mô hình sinh Trong học nửa giám sát, phƣơng pháp đƣợc áp đụng lâu đời nhất là phƣơng pháp sử dụng mô hình sinh Mô hình sinh... thời gian công sức Do đó, học nửa giám sát là một phƣơng pháp học đạt đƣợc hiệu quả rất tốt trong lĩnh vực học máy Tóm lại học nửa giám sát là một phƣơng pháp học máy mà dữ liệu huấn luyện là sự kết hợp của dữ liệu đƣợc gán nhãn và dữ liệu chƣa đƣợc gán nhãn [1] - 17 - Hình 1.3: Sơ đồ quá trình thực hiện của học nửa giám sát Ban đầu, học nửa giám sát giả sử có hai lớp và mỗi lớp có một phân phối Gaussian... nghiệm là nhỏ nhất 1.4 Học không có giám sát 1.4.1 Khái niệm Học không có giám sát là một phƣơng pháp học máy mà dữ liệu huấn luyện là dữ liệu hoàn toàn chƣa đƣợc gán nhãn, nhằm tìm ra một mô hình phù hợp với các quan sát [1] Học không có giám sát khác với học có giám sát ở chỗ, là đầu ra đúng tƣơng ứng cho mỗi đầu vào là chƣa biết trƣớc Trong học không có giám sát, một tập dữ liệu đầu vào thƣờng đƣợc thu... toán học  Cho X = (x1, x2, …, xn) là tập hợp gồm n mẫu  Ta giả thiết rằng đa số mẫu đƣợc tạo ra một cách độc lập và giống nhau từ một phân phối chung trên X và một số lƣợng nhỏ mẫu đã đƣợc gán nhãn  Mục tiêu là tìm ra một cấu trúc thông minh trên tập dữ liệu X - 19 - 1.6.2 Bài toán học nửa giám sát Hình 1.4: Mô hình học nửa giám sát [2] Học nửa giám sát là một trong số các kỹ thuật học máy, sử dụng. .. nhãn và dữ liệu chƣa đƣợc gán nhãn cho việc huấn luyện, điển hình là một tập hợp nhỏ dữ liệu đƣợc gán nhãn kết hợp với một số lƣợng lớn các dữ liệu chƣa gán nhãn Học nửa giám sát nằm giữa học không giám sát và học có giám sát Nhiều nhà nghiên cứu về học máy đã tìm ra dữ liệu chƣa đƣợc gán nhãn trong khi kết hợp với một lƣợng nhỏ dữ liệu đã đƣợc gán nhãn Việc thu đƣợc dữ liệu gán nhãn cho bài toán học. .. phƣơng pháp đơn giản nhất trong học nửa giám sát Thuật toán tự huấn luyện đƣợc ứng dụng để giải quyết các bài toán về xử lý ngôn ngữ tự nhiên, các bài toán phát hiện các đối tƣợng hệ thống từ các hình ảnh Ngoài ra thuật toán tự huấn luyện còn đƣợc ứng dụng để giải quyết các bài toán phân tách và dịch máy, … Giải thuật có mô hình toán học dễ hiểu, sáng sủa và dễ học, giải thuật có độ phức tạp phụ thuộc vào... đầu vào Hình 1.1: Mô hình học có giám sát Nhiệm vụ của chƣơng trình học có giám sát là dự đoán giá trị của hàm f cho một đối tƣợng đầu vào hợp lệ bất kì, sau khi đã xét một số mẫu dữ liệu huấn luyện (nghĩa là các cặp đầu vào và đầu ra tƣơng ứng) Để đạt đƣợc điều này, chƣơng trình học phải tổng quát hóa từ các dữ liệu sẵn có để dự đoán đƣợc những tình huống chƣa gặp phải theo một cách hợp lý Phƣơng pháp . máy và m ột số thuật toán học nửa giám sát và ứng dụng trong thực tế 3. Hƣớng nghiên cứu của đề tài - Nghiên cứu lý thuyết cơ bản về học máy, học không giám sát, học có giám sát, học nửa giám. 1: Trình bày về khái niệm học máy, học có giám sát, học không giám sát, học tăng cƣờng và học nửa giám sát. Chƣơng 2: Trình bày về một số thuật toán học nửa giám sát và bài toán phân cụm dữ. 1.5. Học tăng cƣờng 14 1.6. Học nửa giám sát 16 1.6.1. Khái niệm 16 - ii - 1.6.2. Bài toán học nửa giám sát 19 1.7. Tổng kết chƣơng 1 21 CHƢƠNG 2: MỘT SỐ THUẬT TOÁN HỌC NỬA GIÁM SÁT VÀ

Ngày đăng: 23/11/2014, 00:23

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan