Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 72 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
72
Dung lượng
2,52 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐH CNTT VÀ TRUYỀN THÔNG HÀ THỊ THƯ MẠNG KOHONEN-SOM VÀ ỨNG DỤNG PHÂN CỤM ĐIỂM HỌC SINH THPT CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC HƯỚNG DẪN KHOA HỌC: TS NGUYỄN VĂN TẢO THÁI NGUYÊN - 2012 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐH CNTT VÀ TRUYỀN THÔNG HÀ THỊ THƯ MẠNG KOHONEN-SOM VÀ ỨNG DỤNG PHÂN CỤM ĐIỂM HỌC SINH THPT CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC HƯỚNG DẪN KHOA HỌC TS NGUYỄN VĂN TẢO THÁI NGUYÊN - 2012 LỜI CAM ĐOAN Tôi xin cam đoan luận văn công trình nghiên cứu cá nhân tôi, không chép Nội dung lý thuyết luận văn có tham khảo sử dụng số tài liệu, thông tin đăng tải tác phẩm, tạp chí trang web theo danh mục tài liệu luận văn Các số liệu, chương trình phần mềm kết luận văn trung thực chưa công bố công trình khác Thái Nguyên, ngày 15 tháng năm 2012 Học viên thực HÀ THỊ THƯ MỤC LỤC CHƯƠNG 1: TỔNG QUAN VỀ MẠNG KOHONEN-SOM 1.1 Sơ lược mạng neural 1.1.1 Lịch sử phát triển .2 1.1.2 Ứng dụng 1.1.3 Căn nguyên sinh học 1.2 Tổng quan mạng Kohonen-SOM .5 1.2.1 Vecto Quantization – VQ 1.2.2 Lerning Vector Quantization – LVQ 1.2.3 Bản đồ tự tổ chức – SOM 1.3 Cấu trúc mạng neural Kohonen .7 1.3.1 Mạng neural Kohonen 1.3.2 Cấu trúc mạng neural Kohonen 1.4 Thực thi mạng neural Kohonen 12 1.5 Kết luận 13 2.1 Phân cụm liệu: 14 2.1.1 Khái niệm: 14 2.1.2 Các bước bản phân cụm: 14 2.2 Những kỹ thuật tiếp cận phân cụm liệu 15 2.2.1 Phương pháp phân cụm phân hoạch .15 2.2.2 Phương pháp phân cụm phân cấp 16 2.2.3 Phương pháp phân cụm dựa mật độ .16 2.2.4 Phương pháp phân cụm dựa lưới 17 2.2.5 Phương pháp phân cụm dựa mô hình 17 2.2.6 Phương pháp phân cụm có liệu ràng buộc 18 2.3 Một số thuật toán phân cụm liệu .19 2.3.1 Thuật toán phân cụm phân hoạch 19 2.3.2 Thuật toán phân cụm phân cấp .21 2.3.3 Thuật toán phân cụm dựa mật độ 23 2.3.4 Thuật toán phân cụm dựa lưới 24 2.3.5 Các thuật toán phân cụm dựa mô hình 25 2.4 Dùng mạng neural phân cụm: 26 2.5 SOM –Bài toán phân cụm: 28 2.5.1 Thuật toán SOM: 28 2.5.2 Sử dụng SOM khai phá liệu .31 2.5.3 SOM –Thách thức phân nhóm 36 2.5.4 SOM –Thách thức tốc độ giải thuật 37 2.5.5 SOM –Vấn đề số lượng nhóm 38 2.6 SOM –Giải vấn đề tồn phân cụm 38 2.6.1 Giải pháp phân cụm tự nhiên trình học 38 2.6.2 Mạng thu gọn tăng tốc giải thuật 40 2.6.3 Giới hạn điều chỉnh số lượng nhóm mạng SOM 42 2.7 Đánh giá kết phân cụm 43 2.8 Kết luận : .46 3.1 Mô tả toán 47 3.1.1 Dữ liệu vào: 47 3.1.2 Dữ liệu ra: 48 3.1.3.Quá trình cài đặt: 48 3.1.4 Mục đính- Yêu cầu 48 3.2 Phân tích thiết kế hệ thống cho ứng dụng 49 3.2.1 Xác định tác nhân Use case .49 3.2.2 Biểu đồ Use Case .50 3.3 Chương trình ứng dụng 54 3.3.1 Giao diện tổng quan cho ứng dụng 54 3.3.2 Một số tính cho ứng dụng 54 3.3.2 Hướng dẫn sử dụng, chạy thử nghiệm .59 3.4 Kết luận 62 DANH MỤC VIẾT TẮT CSDL Cơ sở liệu KPDL Khai phá liệu FCM Fuzzy C-Means PCDL Phân cụm liệu DANH MỤC CÁC HÌNH Hình 1.1 Hình 1.2 Hình 1.3 Hình 1.4 Hình 2.1 Hình 2.2 Hình 2.3 Hình 2.4 Hình 2.5 Hình 2.6 Hình 2.7 Hình 2.8 Hình 2.9 Hình 2.10 Hình 2.11 Hình 2.12 Hình 2.13 Hình 2.14 Hình 2.15 Hình 3.1 Hình 3.2 Hình 3.3 Hình 3.4 Hình 3.5 Hình 3.6 Hình 3.7 Hình 3.8 Hình 3.9 Hình 3.10 Hình 3.11 Hình 3.12 Hình 3.13 Hình 3.14 Hình 3.15 Cấu tạo tế bào neural………………………………………… Giáo sư Kohonen mạng neural………………………………… Cấu trúc mạng Kohonen…………………………………………… Những tường Kohonen………………………………… 12 Các chiến lược phân cụm phân phân cấp…………….…………… 16 Cấu trúc phân cấp……………………………………….………… 17 Các cách mà cụm đưa ra……………………………… 18 Các thiết lập để xác định ranh giới cụm ban đầu…………… 20 Tính toán trọng tâm cụm mới…………………………… 20 Khái quát thuật toán CURE……………………………………… 22 Các cụm liệu khám phá CURE………………… 22 Hình dạng cụm khám phá thuật toán DBSCAN…… 23 Đơn vị xử lý ganh đua SOM……………………………………… 28 Không gian ban đầu SOM 29 BMU 31 Vecto chiến thắng liên tục SOM 35 Định nghĩa U-Matrix 36 U-Matrix SOM 36 Quan hệ cụm……………………………………………… 44 Mô hình Use Case tổng thể toán 47 Biểu đồ trình tự chọn CSDL 47 Biểu đồ trình tự tạo huấn luyện mạng neural………………… 48 Biểu đồ trình tự tạo biểu đồ theo nhóm…………………………… 48 Biểu đồ trình tự phân cụm học sinh theo nhóm………………… 49 Biểu đồ trình tự cấu hình mạng neural…………………………… 49 Biểu đồ trình tự chọn loại biểu đồ………………………………… 50 Biểu đồ trình tự chọn hiển thị biểu đồ………………………… 50 Giao diện chương trình…………………………………………… 51 Tab hỗ trợ nhập chọn liệu………………………………… 52 Một số biểu đồ trợ giúp dạng 3D………………………………… 53 Một số biểu đồ trợ giúp dạng 2D………………………………… 54 Nhóm cấu hình nhóm………………………………………… 55 Một phần liệu khả phân nhóm……………………… 56 Các phần ứng dụng…………………………………………… 57 MỞ ĐẦU Sự phát triển mạnh mẽ Công nghệ nói chung Công nghệ thông tin nói riêng tạo nên nhiều hệ thống thông tin phục vụ việc tự động hoá hoạt động kinh doanh quản lý xã hội Nhiều hệ quản trị sở liệu mạnh với công cụ phong phú thuận tiện giúp người khai thác có hiệu nguồn tài nguyên liệu lớn Trong đó, khai phá liệu (Data Mining) trình phát tri thức Sử dụng kỹ thuật khái niệm lĩnh vực nghiên cứu từ trước học máy, nhận dạng, thống kê, hồi quy, xếp loại, phân nhóm, đồ thị, mạng nơron, mạng Bayes, sử dụng để khai phá liệu nhằm phát mẫu mới, tương quan mới, xu hướng có ý nghĩa Luận văn với đề tài “Mạng Kohonen-SOM ứng dụng phân cụm điểm học sinh THPT” khảo sát lĩnh vực KPDL dùng mạng nơron Luận văn tập trung vào phương pháp học mạng nơron giám sát, dùng thuật toán SOM để giải toán phân cụm theo mô hình mạng nơron Luận văn thực hướng dẫn khoa học TS Nguyễn Văn Tảo Tôi xin chân thành cảm ơn sâu sắc tới Thầy dẫn tận tình giúp hoàn thành luận văn Tôi vô cảm ơn giúp đỡ động viên khích lệ người thân gia đình tôi, bạn bè đồng nghiệp trường THPT Ngô Sĩ Liên suốt trình thực luận văn Bắc giang, ngày 15 tháng năm 2012 Hà Thị Thư CHƯƠNG TỔNG QUAN VỀ MẠNG KOHONEN-SOM -Chương đề cập vấn đề sau: 1.1 Sơ lược mạng neural 1.2 Tổng quan mạng KOHONEN-SOM 1.3 Cấu trúc mạng neural KOHONEN 1.4 Thực thi mạng neural KOHONEN 1.5 Kết luận -1.1 Sơ lược mạng neural 1.1.1 Lịch sử phát triển Mạng neural nhân tạo xây dựng từ năm 1940 nhằm mô số chức não người Dựa quan điểm cho não người điều khiển Mạng neural nhân tạo thiết kế tương tự neural sinh học có khả giải hàng loạt toán tính toán tối ưu, điều khiển, công nghệ robot… Dưới mốc đáng ý lịch sử phát triển mạng neural: - Giai đoạn 1: Có thể tính từ nghiên cứu William (1890) tâm lý học với liên kết neural thần kinh Năm 1940 Mc Culloch Pitts cho biết neural mô hình hoá thiết bị ngưỡng (Giới hạn) để thực phép tính logic mô hình mạng neural Mc Culloch – Pitts với giải thuật huấn luyện mạng Hebb đời năm 1943 - Giai đoạn 2: vào khoảng gần năm 1960, số mô hình neural hoàn thiện đưa như: Mô hình Perceptron Rosenblatt (1958), Adalile Widrow (1962) Trong mô hình Perceptron quan tâm nguyên lý đơn giản, có hạn chế Marvin Minsky Seymour papert MIT (Massachurehs Insritute of Technology) chứng minh không dùng cho hàm logic phức (1969) Còn Adaline mô hình tuyến tính, tự 3.2.2 Biểu đồ Use Case Hình 3.1: Mô hình Use Case tổng thể toán 3.2.3 Biểu đồ trình tự cho Use Case 3.2.3.1 Chọn sở liệu Hình 3.2: Biểu đồ trình tự chọn sở liệu 50 3.2.3.2 Tạo huấn luyện mạng neural Hình 3.3: Biểu đồ trình tự tạo huấn luyện mạng neural 3.2.3.3 Tạo biểu đồ theo nhóm Hình 3.4: Biểu đồ trình tự tạo biểu đồ theo nhóm 51 3.2.3.4 Phân cụm học sinh theo nhóm Hình 3.5: Biểu đồ trình tự phân cụm học sinh theo nhóm 3.2.3.5 Cấu hình mạng neural Hình 3.6: Biểu đồ trình tự cấu hình mạng neural 52 3.2.3.6 Chọn loại biểu đồ Hình 3.7: Biểu đồ trình tự chọn loại biểu đồ 3.2.3.7 Chọn hiển thị biểu đồ Hình 3.8: Biểu đồ trình tự chọn hiển thị biểu đồ 53 3.3 Chương trình ứng dụng 3.3.1 Giao diện tổng quan cho ứng dụng Qua trình phân tích, thiết kế kết hợp với thành tựu đạt mạng neural ứng dụng ngôn ngữ lập trình Visual C# Microsoft luận văn xây dựng chương trình tương đối hoàn thiện giải toán phân cụm liệu điểm cho học sinh thỏa mãn yêu cầu đề ban đầu Sau hình ảnh cho ứng dụng sau trình cài đặt chạy thử nghiệm Hình 3.9: Giao diện chương trình 3.3.2 Một số tính cho ứng dụng Khả đọc chọn liệu: tính bắt buộc, để vận dụng thuật toán từ mạng neural trước hết chương trình phải có khả chọn, đọc liệu excel thị liệu giao diện Tiếp khả chọn môn học cho trình phân cụm, phân cụm kết cuối hiển thị chi tiết Để hỗ trợ cho trình chọn phân cụm liệu ứng dụng xây dựng số thành phần hỗ trợ nhiệm vụ 54 Hình 3.10: Tab hỗ trợ nhập chọn liệu Trên tab hỗ trợ khả chọn lựa tập liệu đầu vào đồng thời hỗ trợ khả chọn môn muốn phân cụm Trong file excel có trường liệu điềm mà nhãn thể tên, thứ tự số báo danh chức hỗ trợ việc phân biệt trường hợp tránh cho việc phân cụm không cần thiết Khả kết xuất biểu đồ cho nhóm: tính đặc biệt hỗ trợ khả thị kết cách trực quan giúp người quản lý dễ dàng quan sát đánh giá nhóm tốt Tính thường thấy toán thống kê việc phân cụm điểm toán đặc biệt cần có biểu đồ hỗ trợ so sánh đánh giá Ứng dụng hỗ trợ người dùng nhiều loại biểu đồ khác tùy theo phương pháp quan sát khác gồm biểu đồ 3D 2D hỗ trợ 20 loại biểu đồ khác 55 Hình 3.11: Một số biểu đồ trợ giúp dạng 3D 56 Hình 3.12: Một số biểu đồ trợ giúp dạng 2D 57 Khả phân cụm kết xuất chi tiết: tính cho việc giải toán phân cụm điểm Chương trình có khả phân cụm cấu học sinh có kết tương đồng nhóm Dựa vào SOM từ tập liệu ban đầu mạng tự học trình huấn luyện tiến hành phân chia tập liệu đầu vào thành nhóm theo quan hệ (quan hệ không định trước mạng tự động đưa sau trình học) Hình 3.13: Nhóm cấu hình nhóm Từ liệu đầu vào file excel chương trình phân làm nhóm học sinh khác người quản lý dễ dàng đưa phương pháp tác động tới nhóm nhằm đạt hiệu định 58 Hình 3.14: Một phần liệu khả phân nhóm 3.3.2 Hướng dẫn sử dụng, chạy thử nghiệm Chương trình cài đặt ngôn ngữ lập trình Visual C# Microsoft, chạy net framework 3.5, để chạy chương trình cần tiến 59 hành cài đặt net framework 3.5 trở lên Bên cạnh ứng dụng dành cho phân cụm liệu file excel cần tiến hành cài đặt phần mềm Microsoft Office Excel để hỗ trợ khả truy suất liệu Các công cụ mô tả sau: Danh sách phân nhóm Khởi tạo mạng neural Hiển thị cấu hình nhóm Hiển thị biểu đồ Hiển thị liệu đầu vào Phân cụm liệu Khởi tạo biểu đồ Hình 3.15: Các phần ứng dụng Tab chọn loại biểu đồ Tab chọn file chứa liệu 60 Tab chọn nhóm sau phân cụm Tab chọn môn để phân cụm nhãn tưng ứng Tab chọn biểu đồ để hiển thị Như kết thực nghiệm thấy ứng dụng có khả phân cụm liệu tập sinh viên đầu vào hiển thị chi tiết đặc tính danh sách sinh viên thuộc nhóm Vậy thao tác để có kết phần mềm ứng dụng, sau bước trình sử dụng Bước 1: Chọn sở liệu Để chọn sở liệu dùng tab Group hỗ trợ giao diện chọn tab home\Open Với tab Group hỗ trợ chọn file định dạng excel Bước 2: Chọn môn cần phân cụm nhãn cho đối tượng phân cụm Trong tab Properties giúp việc chọn môn để phân cụm phía bên trái nhãn để phân cụm phía bên phải Bước 3: Khởi tạo mạng neural tiến hành phân cụm Click vào button Create có giao diện thực trình khởi tạo huấn luyện, phân nhóm mạng neural Bước 4: Khởi tạo biểu đồ cho nhóm Click vào button Chart giao diện khởi tạo luồng vẽ biểu đồ cho nhóm phân cụm sau bước 3, có biểu đồ tổng quát Có thể cấu hình loại biểu đồ tab Control phía bên phải ẩn Bước 5: Phân chia liệu thành nhóm quan sát kết Click vào button Split giao diện thực trình phân nhóm cho liệu chọn ban đầu Có thể quan sát cấu hình, danh sách đặc trưng khác nhóm giao diện Chương trình ứng dụng thành công mạng SOM vào trình phân cụm học sinh, dựa vào kết phân cụm ứng dụng mang lại người quản lý có định hướng để cải thiện chất lượng học cho nhóm 61 học sinh đánh giá lực học tập dựa tập sở liệu đưa vào 3.4 Kết luận Mạng neural lĩnh vực nghiên cứu tương đối rộng đòi hỏi nhiều công sức lỗ lực tình nghiên cứu Bên cạnh việc cài đặt ứng dụng mạng neural gặp nhiều khó khăn độ phức tạp tương đối cao giải thuật Vì lí luận văn hướng tới mạng neural dùng để phân cụm liệu mạng SOM để nghiên cứu phát triển.Thực tế chứng minh mạng SOM có nhiều ứng dụng việc nghiên cứu khai thác mạng đem lại nhiều kết thực tiễn Việc nghiên cứu mạng SOM trình phát triển lý thuyết mạng neural đem lại hiểu biết mạng neural nhân tạo Trong nội dung luận văn trình bày hiểu biết chung mạng, đồng thời cho người đọc có quan niệm chung lĩnh vực khoa học nhiều mẻ Bên cạnh trình phát triển mặt tảng lý thuyết đem lại thành công định Cụ thể nội dung báo cáo đề xuất số phương pháp cải tiến mạng SOM, phương pháp phân nhóm hiệu hơn, phương pháp khởi tạo mạng thu gọn… Và cải tiến đem lại hiệu định cho trình xử lý mạng neural ứng dụng thực tế chúng Ứng dụng phân biệt màu phân cụm điểm ví dụ sử dụng minh họa cho khả ứng dụng mạng neural Những kết mà luận văn thực hiện: + Về lý thuyết, luận văn tập trung tìm hiểu kỹ thuật phân loại, phân cụm truyền thống Tìm hiểu mạng neural cụ thể mạng Kohonen-SOM để phân cụm liệu + Về thực tiễn, luận văn đưa kết cài đặt thử nghiệm liệu bao gồm kết phân loại, phân nhóm Qua trình thực nghiệm nghiên cứu lý thuyết đưa số kết luận sau: 62 • Mỗi giải thuật phân cụm áp dụng cho số mục tiêu kiểu liệu định • Mỗi giải thuật có mức độ xác riêng khả thực kích thước liệu khác Điều tuỳ thuộc vào cách thức tổ chức liệu nhớ chính, nhớ giải thuật • Khai phá liệu hiệu bước tiền xử lý, lựa chọn thuộc tính, mô hình giải tốt Với mà luận văn thực hiện, hướng phát triển sau luận văn sau: • Độ xác phân lớp, phân cụm phụ thuộc vào nhiều yếu tố chất lượng liệu, thuật toán cài đặt, phương pháp tính độ tương đồng đối tượng liệu Ngoài ra, giá trị khuyết hay thuộc tính dư thừa phần làm ảnh hưởng đến chúng Vì hướng phát triển sau xử lý giá trị khuyết, phát loại bỏ thuộc tính dư thừa, cải tiến phương pháp tính độ tương đồng, nhằm nâng cao chất lượng tốc độ phân lớp, phân cụm • Sau phân cụm theo nhóm học sinh có tương đồng điểm phối hợp với chuyên gia để đưa đến định hướng nghề nghiệp cho học sinh THPT • Tiến hành cài đặt tiếp tục nghiên cứu nhiều kỹ thuật khai phá liệu nữa, đặc biệt triển khai giải toán cụ thể thực tế Trong trình thực đồ án mong đóng góp bảo thầy, cô giáo Em xin trân thành cảm ơn ủng hộ góp ý thầy cô, đặc biệt thầy Nguyễn Văn Tảo có hướng dẫn chiến lươc cho trình nghiên cứu thực luận văn 63 TÀI LIỆU THAM KHẢO TÀI LIỆU TIẾNG VIỆT [1] Nguyễn Đình Thúc (2000), Trí tuệ nhân tạo Mạng nơron phương pháp & ứng dụng, Nhà xuất Giáo Dục [2] Trần Đức Minh (2002), Mạng nơron truyền thẳng thuật toán lan truyền ngược, Luận văn Thạc sĩ cao học, Khoa Công nghệ, Trường Đại học Quốc gia Hà Nội [3] An Hồng Sơn (2008), Nghiên cứu số phương pháp phân cụm mờ ứng dụng Luận văn Thạc sĩ cao học, Trường Đại học công nghệ thông tin Truyền thông, Đại học Thái nguyên [4] Ngô Quốc Tạo, “Bài giảng môn Data Mining”, Lớp CHK9 - Trường Đại học công nghệ thông tin Truyền thông, Đại học Thái nguyên 2010-2012 TÀI LIỆU TIẾNG ANH [5] M A Kraaijveldd, J Mao, and A K Jain, “A nonlinear projection method based on kohonen’s topology preserving maps”, IEEE Transactions on Neural Networks, 6(3):548-559, 1995 [6] Merja Oja, Samuel Kaski, and Teuvo Kohonen, “Bibliography of SelfOrganizing Map (SOM) Papers”, 1998-2001 Addendum, Neural Computing Surveys (3), pp.1-156, 2003 [8] Juha Vesanto, “Data Mining techniques based on the Self-Organizing Map”, Thesis for the degree of Master in Engineering, Helsinki University of Technology, 1997 [9] Jari Kangas and Teuvo Kohonen, “Developments and Application of the SelfOrganizing Map and Related Algorithms”, Mathematics and Computers in Simulation, 1996 [10] Teuvo Kohonen, “Self-Organizing Maps”, Springer, 3rd Edition, 2001 [11] Juha Vesanto, “Using SOM in Data Mining”, Licentiate’s thesis, Helsinki University of Technology, 2000 64 ... tài Mạng Kohonen-SOM ứng dụng phân cụm điểm học sinh THPT” khảo sát lĩnh vực KPDL dùng mạng nơron Luận văn tập trung vào phương pháp học mạng nơron giám sát, dùng thuật toán SOM để giải toán phân. ..ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐH CNTT VÀ TRUYỀN THÔNG HÀ THỊ THƯ MẠNG KOHONEN-SOM VÀ ỨNG DỤNG PHÂN CỤM ĐIỂM HỌC SINH THPT CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC... 2.2.6 Phương pháp phân cụm có liệu ràng buộc 18 2.3 Một số thuật toán phân cụm liệu .19 2.3.1 Thuật toán phân cụm phân hoạch 19 2.3.2 Thuật toán phân cụm phân cấp