- – SOM
3.2. Phân tích thiết kế hệ thống cho ứng dụng
3.2.1. Xác định các tác nhân và các Use case Tác nhân : Ngƣời dùng
Danh sách các Use Case : Để thực hiện đƣợc mục tiêu của bài toán qua quá trình khảo sát phân tích, thiết kế chƣơng trình xây dựng đƣợc các chức năng chính thể hiện nhƣ sau :
Chọn cơ sở dữ liệu
Tạo và huấn luyện mạng nơron Tạo biểu đồ theo nhóm
Phân cụm sinh viên theo nhóm Cấu hình mạng nơron
Chọn loại biểu đồ
Chọn và hiển thị biểu đồ Trợ giúp
57
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
3.2.2. Biểu đồ Use Case
Hình 3.2.2 : Mô hình Use Case tổng thể của bài toán
3.2.3. Biểu đồ trình tự cho từng Use Case 3.2.3.1. Chọn cơ sở dữ liệu 3.2.3.1. Chọn cơ sở dữ liệu
58
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
3.2.3.2. Tạo và huấn luyện mạng nơron
Hình 3.2.3.2: Biểu đồ trình tự tạo và huấn luyện mạng nơron.
59
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.2.3.3: Biểu đồ trình tự tạo biểu đồ theo nhóm.
3.2.3.4. Phân cụm sinh viên theo nhóm
Hình 3.2.3.4: Biểu đồ trình tự phân cụm sinh viên theo nhóm.
60
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.2.3.5: Biểu đồ trình tự cấu hình mạng nơron.
61
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.2.3.6: Biểu đồ trình tự chọn loại biểu đồ.
3.2.3.7. Chọn và hiển thị biểu đồ
Hình 3.2.3.7: Biểu đồ trình tự chọn và hiển thị biểu đồ.
3.3. Chƣơng trình ứng dụng
3.3.1. Giao diện tổng quan cho ứng dụng
Qua quá trình phân tích, thiết kế kết hợp với những thành tựu đã đạt đƣợc trong mạng nơron ứng dụng ngôn ngữ lập trình Visual C# của Microsotf trong luận văn đã xây dựng một chƣơng trình tƣơng đối hoàn thiện giải quyết bài toán phân cụm dữ liệu điểm cho học sinh-sinh viên thỏa mãn những yêu cầu đã đề ra ban đầu. Sau đây là hình ảnh cho ứng dụng sau quá trình cài đặt và chạy thử nghiệm.
62
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.1: Giao diện chương trình
3.3.2 Một số tính năng cho ứng dụng
Khả năng đọc và chọn dữ liệu: đây là tính năng bắt buộc, để có thể vận dụng đƣợc thuật toán từ mạng nơron thì trƣớc hết chƣơng trình phải có khả năng chọn,đọc dữ liệu excel và hiện thị dữ liệu trên giao diện. Tiếp đó là khả năng chọn các môn học cho quá trình phân cụm, khi đã phân cụm kết quả cuối cùng sẽ đƣợc hiển thị chi tiết. Để hỗ trợ cho quá trình chọn và phân cụm dữ liệu trong ứng dụng đã xây dựng một số thành phần hỗ trợ những nhiệm vụ này.
63
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.2(a): Tab hỗ trợ nhập và chọn dữ liệu
Trên đây là 2 tab hỗ trợ khả năng chọn lựa tập dữ liệu đầu vào đồng thời hỗ trợ khả năng chọn các môn mốn phân cụm. Trong file excel có những trƣờng không phải là dữ liệu điềm mà đó là các lable thể hiện tên, ID hoặc là số báo danh do vậy tab cũng hỗ trợ việc phân biệt các trƣờng hợp này tránh cho việc phân cụm không cần thiết.
Khả năng kết xuất biểu đồ cho từng nhóm: đây là một tính năng đặc biệt hỗ trợ khả năng hiện thị kết quả một cách trực quan giúp ngƣời quản lý dễ dàng quan sát và đánh giá nhóm tốt hơn. Tính năng này thƣờng thấy trong các bài toán thống kê và việc phân cụm điểm là một bài toán đặc biệt cần có những biểu đồ hỗ trợ so sánh và đánh giá. Ứng dụng hỗ trợ ngƣời dùng nhiều loại biểu đồ khác nhau tùy theo những phƣơng pháp quan sát khác nhau trong đó gồm cả biểu đồ 3D và 2D và hỗ trợ hơn 20 loại biểu đồ khác nhau.
64
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.2(b): Một số biểu đồ trợ giúp dạng 3D
65
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.2(c): Một số biểu đồ trợ giúp dạng 2D
66
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Khả năng phân cụm và kết xuất chi tiết: đây là tính năng cơ bản cho việc giải quyết bài toán phân cụm điểm. Chƣơng trình có khả năng phân cụm và chỉ ra cấu hình cũng nhƣ những học sinh –sinh viên có kết quả tƣơng đồng cùng một nhóm. Dựa vào SOM từ một tập dữ liệu ban đầu mạng sẽ tự học trong quá trình huấn luyện và tiến hành phân chia tập dữ liệu đầu vào thành các nhóm theo một quan hệ nào đó (quan hệ không định trƣớc và do mạng tự động đƣa ra sau quá trình học).
Từ dữ liệu đầu vào là một file excel tập hợp điểm của tất cả các học sinh, sinh viên trong lớp, chƣơng trình phân ra làm các nhóm sinh viên khác nhau và ngƣời quản lý có thể dễ dàng đƣa ra phƣơng pháp tác động tới nhóm này nhằm đạt một hiệu quả nhất định nào đó.
67
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.2(e): Nhóm và cấu hình nhóm
68
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.2(f): Các đơn vị nhóm và chi tiết nhóm
Hình 3.3.2(g) Một phần dữ liệu và khả năng phân nhóm.
3.3.3 Hƣớng dẫn sử dụng, chạy thử nghiệm
Chƣơng trình đƣợc cài đặt trên ngôn ngữ lập trình Visual C# của Microsoft, chạy trên nền net framework 3.5, vì thế để có thể chạy đƣợc chƣơng trình cần tiến 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 dữ liệu trên các file excel do đó cần tiến hành cài đặt phần mềm Microsoft Office Excel để hỗ trợ khả năng truy suất trên dữ liệu. Các công cụ cơ bản đƣợc mô tả nhƣ sau:
69
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Hình 3.3.3: Các phần của ứng dụng
Nhƣ kết quả thực nghiệm đã thấy ứng dụng có khả năng phân cụm dữ liệu trên tập sinh viên đầu vào và hiển thị chi tiết đặc tính cũng nhƣ danh sách các sinh viên thuộc nhóm đó. Vậy thao tác nhƣ thế nào để có đƣợc kết quả nhƣ vậy trên phần mềm ứng dụng, sau đây là các bƣớc cơ bản của quá trình sử dụng.
Bƣớc 1: Chọn cơ sở dữ liệu. Tab chọn file chứa dữ liệu. Tab chọn biểu đồ hiển thị. Tab chọn môn để phân cụm và nhãn tƣng ứng. Tab chọn nhóm sau phân cụm. Tab chọn loại biểu đồ. Khởi tạo mạng nơron Khởi tạo biểu đồ Phân cụm dữ liệu Hiển thị dữ liệu đầu vào Hiển thị biểu đồ Hiển thị cấu hình nhóm Danh sách phân nhóm
70
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Để chọn cơ sở dữ liệu có thể dùng tab Group hỗ trợ trên giao diện hoặc chọn tab home\Open. Với tab Group hỗ trợ chỉ chọn đƣợc những file đúng định dạng excel.
Bƣớc 2: Chọn môn cần phân cụm và 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 và nhãn để phân cụm phía bên phải.
Bƣớc 3: Khởi tạo mạng nơron và tiến hành phân cụm.
Click vào button Create có trên giao diện thực hiện quá trình khởi tạo huấn luyện, phân nhóm trong mạng nơron.
Bƣớc 4: Khởi tạo biểu đồ cho các nhóm.
Click vào button Chart trên giao diện khởi tạo một luồng mới vẽ biểu đồ cho các nhóm đã đƣợc phân cụm sau bƣớc 3, trong đó có một biểu đồ tổng quát. Có thể cấu hình loại biểu đồ trong tab Control phía bên phải đƣợc ẩn đi.
Bƣớc 5: Phân chia dữ liệu thành các nhóm và quan sát kết quả.
Click vào button Split trên giao diện thực hiện quá trình phân nhóm cho dữ liệu đƣợc chọn ban đầu. Có thể quan sát cấu hình, danh sách và các đặc trƣng khác của các nhóm trên giao diện.
Chƣơng trình ứng dụng những thành công đối với mạng SOM vào trong quá trình phân nhóm học sinh- sinh viên, dựa vào những kết quả phân nhóm do ứng dụng mang lại ngƣời quản lý sẽ có những định hƣớng để cải thiện chất lƣợng học cho các nhóm học sinh-sinh viên cũng nhƣ đánh giá đƣợc năng lực học tập hiện tại dựa trên tập cơ sở dữ liệu đƣa vào.
71
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
KẾT LUẬN
Mạng nơron là một lĩnh vực nghiên cứu tƣơng đối rộng và đòi hỏi nhiều công sức và lỗ lực trong quá tình nghiên cứu. Bên cạnh đó việc cài đặt và ứng dụng mạng nơron gặp nhiều khó khăn do độ phức tạp tƣơng đối cao của giải thuật. Vì lí do đó trong khuôn khổ luận văn chỉ hƣớng tới một mạng nơron dùng để phân cụm dữ liệu là mạng SOM để nghiên cứu và phát triển.Thực tế đã chứng minh mạng SOM có rất nhiều ứng dụng và việc nghiên cứu khai thác mạng này sẽ đem lại nhiều kết quả thực tiễn.
Việc nghiên cứu mạng SOM bắt đầu từ quá trình phát triển lý thuyết mạng nơron và đem lại những hiểu biết về mạng nơron nhân tạo. Trong nội dung luận văn đã trình bày những hiểu biết chung nhất về mạng, đồng thời cho ngƣời đọc có đƣợc những quan niệm chung nhất về lĩnh vực khoa học còn nhiều mới mẻ này. Bên cạnh đó quá trình phát triển về mặt nền tảng lý thuyết cũng đã đem lại những thành công nhất định. Cụ thể trong nội dung báo cáo đã đề xuất một số phƣơng pháp cải tiến trên mạng SOM, những phƣơng pháp phân nhóm mới hiệu quả hơn, phƣơng pháp khởi tạo mạng thu gọn… Và những cải tiến này đã đem lại những hiệu quả nhất định cho quá trình xử lý mạng nơron và ứng dụng thực tế của chúng. Ứng dụng phân biệt màu và phân cụm điểm là những ví dụ đƣợc sử dụng minh họa cho khả năng ứng dụng của mạng nơron.
Bên cạnh những gì đã làm đƣợc vẫn còn những thiếu sót, chƣa hoàn hảo trong quá trình phát triển. Tốc độ và phƣơng pháp ứng dụng cần đƣợc cải tiến, đây là những lý do khiến mạng nơron nói chung và mạng SOM nói riêng còn nhiều hạn chế trong phƣơng pháp cài đặt trên máy tính cũng nhƣ chƣa chinh phục đƣợc những bài toán nan giải hiện nay. Vì vậy cần có sự nghiên cứu và phát triển nhiều hơn nữa đối với mạng nơron trong thời gian tới.
Những gì đạt đƣợc còn nhiều hạn chế và nhƣ vậy phải định hƣớng, hoạch định một phƣơng pháp phát triển cho mạng nơron. Đây là một hƣớng đi đúng đắn và giúp cho ngƣời nghiên cứu, phát triển đuổi kịp những tiến bộ về mạng nơron trên thế giới và ứng dụng chúng một cách hiệu quả nhất có thể.
72
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
Do điều kiện khách quan nên việc thử nghiệm chƣơng trình trong thực tế còn hạn chế. Vì vậy cần tiếp tục nghiên cứu thử nghiệm để hoàn thiện và ứng dụng chƣơng trình.
Trong quá trình thực hiện luận văn rất mong đƣợc sự đóng góp chỉ bảo của
các thầy, cô giáo. Em xin trân thành cảm ơn sự ủng hộ và góp ý của các thầy cô, đặc biệt là thầy Nguyễn Văn Tảo đã có những hƣớng dẫn chiến lƣơc cho quá trình nghiên cứu và thực hiện luận văn.
73
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Bùi Công Cƣờng và Nguyễn Doãn Phƣớc, “Hệ mờ, mạng nơron và ứng dụng”, NXB Khoa học và Kỹ thuật, 2006.
[2] Lê Bá Dũng, ”Bài giảng về mạng nơron nhân tạo và ứng dụng”, ĐH Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên, 2012.
[3] Lê Minh Trung, “Giáo trình mạng Nơron nhân tạo”, NXB Thống kê, 1999 [4] Nguyễn Đình Thúc, “Trí tuệ nhân tạo - Mạng Nơron – Phương pháp và ứng dụng”, NXB Giáo dục, 2000.
Tiếng Anh
[5] A. Arning, R. Agrawal, and P. Raghavan. Alinear method for deviation
detection in larger databases, In Proc .1996 Int. Conf. Data mining and knowledge
discovery (KDD-96) , Portland, Oregon, August 1996.
[6] Daniel T.Larose, “Discovering knowledge in data : An introduction to data mining”, ISBN 0-471-66657-2 CopyrightC John Wiley & Sons, Inc, 2005.
[7] J.Han, M. Kamber, “Data Minning Concepts and Techniques”, Morgan Kaufmann Pubishers, 2001.
[8] Juha Vesanto, “Using SOMs in Data Mining”, Licentiate’s thesis, Helsinki University of Technology, 2000.
[9] Tom Germano, “Self Organizing Maps”, 1999.
[10] Teuvo Kohonen(2001), ”Self-Organizing Maps, Third Edition, Springer”, Heidelberg, 2001.