NGHIÊN CỨU PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN TUYỂN SINH ĐẠI HỌC

70 0 0
NGHIÊN CỨU PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN TUYỂN SINH ĐẠI HỌC

Đ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

Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công nghệ thông tin -- TRƯỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN ---------- KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC NGHIÊN CỨU PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN TUYỂN SINH ĐẠI HỌC Sinh viên thực hiện NGÔ TRUNG HIỆU MSSV: 2112011006 CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN KHÓA HỌC: 2012 – 2016 Giảng viên hướng dẫn ThS. ĐỖ QUANG KHÔI Quảng Nam, tháng 04 năm 2016 -- LỜI CẢM ƠN Trước hết em xin gởi lời cảm ơn sâu sắc đến ThS. Đỗ Quang Khôi – Giám đốc Trung tâm học liệu và công nghệ thông tin, giảng viên Trường Đại học Quảng Nam, người đã tận tình hướng dẫn, giúp đỡ, định hướng và đóng góp ý kiến cho em trong suốt thời gian làm bài để em có thể hoàn thành bài khóa luận tốt nghiệp này. Em xin chân thành cảm ơn tất cả các thầy, cô trường Đại học Quảng Nam. Đặc biệt là các thầy, cô trong Khoa Công nghệ thông tin của trường đã tận tình dạy dỗ, truyền đạt kiến thức cho em trong suốt quá trình học tập, nghiên cứu tại trường và tạo điều kiện thuận lợi cho em trong thời gian cuối khóa để hoàn thành chương trình tốt nghiệp. Em cũng gởi lời cảm ơn đến Trung tâm học liệu và công nghệ thông tin trường Đại học Quảng Nam đã tạo điều kiện giúp đỡ cho em trong quá trình thực tập tốt nghiệp và những kinh nghiệm trong thực tế. Đồng thời, em cũng gởi lời cảm ơn đến gia đình, bạn bè đã động viên, giúp đỡ em lúc khó khăn trong học tập và trong cuộc sống. -- - i - MỤC LỤC DANH MỤC TỪ VIẾT TẮT...................................................................... IV DANH MỤC HÌNH VẼ ............................................................................... V DANH MỤC BẢNG ................................................................................... VI MỞ ĐẦU ....................................................................................................... 1 1. Lý do chọn đề tài ....................................................................................... 1 2. Mục đích nghiên cứu ................................................................................. 2 3. Đối tượng và phạm vi nghiên cứu ............................................................. 2 4. Phương pháp nghiên cứu ........................................................................... 2 5. Lịch sử nghiên cứu .................................................................................... 2 6. Đóng góp của đề tài................................................................................... 3 7. Cấu trúc khóa luận .................................................................................... 3 NỘI DUNG NGHIÊN CỨU ......................................................................... 4 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NƠRON ...................................... 4 1.1 mạng nơron sinh học ............................................................................... 4 1.1.1. Cấu trúc của mạng nơron sinh học...................................................... 4 1.1.2. Hoạt động của nơron sinh học ............................................................ 4 1.2. Mạng nơron nhân tạo ............................................................................. 5 1.2.1. Cấu trúc và mô hình của một nơron nhân tạo ..................................... 5 1.2.2. Mô hình của mạng nơron nhân tạo ..................................................... 9 1.3. Mạng nơron trong khai phá dữ liệu...................................................... 11 1.4. Các phương pháp học sử dụng mạng nơron nhân tạo .......................... 14 1.4.1. Quy tắc học mạng nơron nhân tạo .................................................... 14 1.4.2. Học có giám sát ................................................................................. 14 1.4.3. Học không giám sát ........................................................................... 15 1.4.4. Học tăng cường ................................................................................. 16 1.5. Tổng kết chương 1 ............................................................................... 16 CHƯƠNG 2: PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM .................... 17 -- - ii - 2.1. Phân cụm dữ liệu .................................................................................. 17 2.1.1. Khái niệm .......................................................................................... 17 2.1.2. Phân cụm và các thành phần trong phân cụm dữ liệu....................... 18 2.1.3. Một số kỹ thuật phân cụm dữ liệu..................................................... 19 2.1.3.1. Phân cụm phân hoạch (partitionnal clustering) ............................. 19 2.1.3.2. Phân cụm phân cấp (hierarchical clustering) ................................. 21 2.1.3.3. Phân cụm dựa trên mật độ (density - based clustering) ................. 23 2.1.3.4. Phân cụm dựa trên lưới (grid - based clustering)........................... 23 2.1.3.5. Phân cụm dựa trên mô hình (model - based clustering) ................ 24 2.1.3.6. Phân cụm dữ liệu mờ (fuzzy clustering) ........................................ 25 2.1.4. Ứng dụng của phân cụm dữ liệu ....................................................... 26 2.2. Mạng nơron kohonen (som) ................................................................. 27 2.2.1. Giới thiệu về mạng kohonen (som)................................................... 27 2.2.2. Cấu trúc của som ............................................................................... 28 2.2.3. Khởi tạo som ..................................................................................... 29 2.2.4. Huấn luyện som................................................................................. 29 2.3. Sử dụng som trong phân cụm dữ liệu .................................................. 30 2.3.1. Som với bài toán phân cụm ............................................................... 32 2.3.2. Som phân cụm với bản đồ một chiều 1 ............................................. 37 2.3.3. Som phân cụm với bản đồ hai chiều ................................................. 37 2.3.3.1. Phân cụm trong không gian bản đồ................................................ 37 2.3.3.2. Phân cụm trong không gian trọng số ............................................. 38 2.4. Một vài ứng dụng của som ................................................................... 38 2.5. Kết luận chương 2 ................................................................................ 39 CHƯƠNG 3: ỨNG DỤNG MÔ HÌNH SOM TRONG CÔNG TÁC TƯ VẤN TUYỂN SINH ĐẠI HỌC.................................................................. 40 3.1. Giới thiệu chương trình ........................................................................ 40 3.2. Giới thiệu công cụ som toolbox ........................................................... 40 -- - iii - 3.3. Chương trình thử nghiệm ..................................................................... 41 3.3.1. Cấu trúc chương trình ....................................................................... 41 3.3.2. Xây dựng tập dữ liệu ......................................................................... 41 3.3.3. Xử lý dữ liệu trước huấn luyện ......................................................... 44 3.3.4. Khởi tạo som và huấn luyện.............................................................. 44 3.3.5. Mô phỏng (trực quan hóa)................................................................. 47 3.3.6. Kết quả chạy chương trình ................................................................ 51 3.4. Phân tích kết quả .................................................................................. 54 KẾT LUẬN ................................................................................................. 60 TÀI LIỆU THAM KHẢO ........................................................................... 61 -- - iv - DANH MỤC TỪ VIẾT TẮT Tên viết tắt Tến đầy đủ CSDL Cơ sở dữ liệu PCDL Phân cụm dữ liệu BMU Best Matching Unit SOM Self-Organizing Map KPDL Khai phá dữ liệu -- - v - DANH MỤC HÌNH VẼ Hình 1.1. Mô hình nơron sinh học ............................................................... 4 Hình 1.2. Mô hình một nơron nhân tạo ........................................................ 6 Hình 1.3. Đồ thị các dạng hàm truyền .......................................................... 9 Hình 1.4. Mạng nơron ba lớp ..................................................................... 10 Hình 1.5. Học có giám sát .......................................................................... 15 Hình 1.6. Học không giám sát .................................................................... 16 Hình 2.1. Mô hình phân cụm dữ liệu ......................................................... 17 Hình 2.2. Ví dụ về phân cụm phân hoạch với k=3 (a) và k=4 (b) ............. 20 Hình 2.3. Một số kỹ thuật phân cụm phân cấp ........................................... 22 Hình 2.4. Mô hình cấu trúc dữ liệu lưới ..................................................... 24 Hình 2.5. Cấu trúc của mạng som .............................................................. 28 Hình 2.6. Cập nhật bmu và lân cận của nó với mẫu đầu vào ..................... 30 Hình 2.7. Vectơ chiến thắng liên tục đối với som có 30x40 nơron cho dữ liệu hỗn hợp gauxơ ...................................................................................... 35 Hình 2.8. U-matrix của som trong hình 2.11 trên ...................................... 37 Hình 3.1. Trực quan mạng sử dụng u-matrix ............................................. 53 Hình 3.2. Kết quả phân cụm sử dụng phương pháp trực quan các thành phần bản đồ ................................................................................................. 54 -- - vi - DANH MỤC BẢNG Bảng 3.1. Thông tin về một số trường đại học ở miền trung việt nam ...... 43 Bảng 3.2. Kết quả các cụm sau khi huấn luyện som .................................. 54 - 1 - MỞ ĐẦU 1. Lý do chọn đề tài Trong vài thập niên gần đây, cùng với sự thay đổi và phát triển không ngừng của ngành công nghệ thông tin nói chung và trong các ngành công nghệ phần cứng, phần mềm, truyền thông và hệ thống các dữ liệu phục vụ trong các lĩnh vực kinh tế-xã hội nói riêng thì việc thu thập thông tin cũng như nhu cầu lưu trữ thông tin càng ngày càng lớn. Bên cạnh đó việc tin học hoá một cách ồ ạt và nhanh chóng các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra cho chúng ta một lượng dữ liệu lưu trữ khổng lồ. Hàng triệu CSDL đã được sử dụng trong các hoạt động sản xuất, kinh doanh, quản lí,... trong đó có nhiều CSDL cực lớn cỡ Gigabyte, thậm chí là Terabyte. Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những kĩ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành các tri thức có ích. Từ đó, các kĩ thuật KPDL đã trở thành một lĩnh vực thời sự của nền Công nghệ thông tin thế giới hiện nay. Một vấn đề được đặt ra là phải làm sao trích chọn được những thông tin có ý nghĩa từ tập dữ liệu lớn để từ đó có thể giải quyết được các yêu cầu của thực tế như trợ giúp ra quyết định, dự đoán,... và KPDL (Data mining) đã ra đời nhằm giải quyết các yêu cầu đó. Mặc khác, hiện nay công tác tuyển sinh đại học, cao đẳng là một trong những vấn đề hàng đầu của các cơ sở giáo dục đại học trên cả nước. Công tác tư vấn tuyển sinh cũng đã thực hiện với nhiều hình thức đa dạng, phong phú để giúp thí sinh định hướng được ngành học phù hợp với bản thân. Tuy nhiên, trên thực tế thí sinh vẫn còn mơ hồ, chưa nắm rõ được các thông tin -- - 2 - tuyển sinh của các trường. Điều này làm ảnh hưởng không nhỏ đến việc định hướng nghề nghiệp của thí sinh. Chính vì những lý do trên, em đã chọn đề tài “Nghiên cứ u phân cụm dữ liệu với mô hình SOM và ứng dụng trong tư vấn tuyển sinh đạ i học” để làm khóa luận tốt nghiệp. 2. Mục đích nghiên cứu Nắm vững những kiến thức cơ bản về mạng nơron nhân tạo, PCDL, mạng SOM và ứng dụng của SOM trong phân cụm dữ liệu. Áp dụng vào tư vấn tuyển sinh đại học. 3. Đối tượng và phạm vi nghiên cứu Các thuật toán phân cụm dữ liệu theo mô hình SOM. Công cụ SOM Toolbox. Từ kết quả đạt được, ứng dụng vào trong bài toán tư vấn tuyển sinh. 4. Phương pháp nghiên cứu Đọc tài liệu, phân tích, tổng hợp. Thống kê, phân tích dữ liệu. Thực nghiệm. 5. Lịch sử nghiên cứu Với vấn đề KPDL, đặc biệt là PCDL cũng đã được nhiều tác giả phân tích và nghiên cứu theo nhiều hướng khác nhau. Phần lớn các tác giả đều cho thấy một cách tổng quan về KPDL, các kiến thức về PCDL và các ứng dụng trong một số lĩnh vực khác nhau. Bên cạnh đó vẫn còn một số vấn đề ít được đề cập là việc phân tích, đánh giá tính tối ưu trong các thuật toán PCDL, từ đó lựa chọn thuật toán tốt nhất đưa vào ứng dụng. -- - 3 - Hơn nữa, với nguồn thông tin khổng lồ việc tìm kiếm những dữ liệu cần thiết nhất đang là nhu cầu lớn cho người sử dụng, vì thế PCDL trong KPDL là rất cần thiết. 6. Đóng góp của đề tài Đề tài nghiên cứu nhằm trình bày những kiến thức cơ bản về mạng noron, tổng quan về KPDL, PCDL và một số thuật toán trong PCDL. Nội dung đề tài còn trình bày tổng quan về mạng noron và các hướng PCDL, ứng dụng được mô hình SOM vào trong phân cụm dữ liệu. 7. Cấu trúc khóa luận Lời cảm ơn Mục lục Danh mục các ký hiệu, các chữ viết tắt Danh mục các bảng Danh mục các hình vẽ, đồ thị MỞ ĐẦU 1. Lý do chọn đề tài 2. Mục đích nghiên cứu 3. Đối tượng và phạm vi nghiên cứu 4. Phương pháp nghiên cứu 5. Lịch sử nghiên cứu 6. Đóng góp của đề tài NỘI DUNG Chương 1: Tổng quan về mạng nơ ron Chương 2: Phân cụm dữ liệu vớ i mô hình SOM Chương 3: Ứng dụng mô hình SOM trong công tác tư vấn tuyể n sinh đại học KẾT LUẬN TÀI LIỆU THAM KHẢO -- - 4 - NỘI DUNG NGHIÊN CỨU Chương 1: TỔNG QUAN VỀ MẠNG NƠRON 1.1 Mạng nơron sinh học 1.1.1. Cấu trúc của mạng nơron sinh học Bộ não con người chứa khoảng 1011 nơron thần kinh. Cấu trúc của một nơron thần kinh gồm các phần: - Myelin là lớp cách nhiệt được bao quanh những Axons của dây thần kinh. Nhiệm vụ của lớp vỏ Myelin này là giúp việc dẫn truyền các tín hiệu của các dây thần kinh được nhanh chóng và hiệu quả. - Axon của một nơron là một sợi dây đơn giản mang tín hiệu từ Soma của một nơron này tới Dendrite hay Soma của một nơron khác. - Dendrite của một nơron là những nhánh ngắn chạy từ thân nơron ra, nhiệm vụ của chúng là tiếp nhận những tín hiệu từ những nơron khác đưa đến qua những Axons. - Khoảng giữa những sợi Myelin được gọi là nút Ranvier. - Soma hay thân tế bào nơron gồm một nhân và những cấu trúc khác của một tế bào. - Synapse là nơi hai nơron tiếp xúc nhau. Những thông tin hoá điện giữa các nơron xảy ra tại đây. Hình 1.1. Mô hình nơron sinh học 1.1.2. Hoạt động của nơron sinh học Các tín hiệu đưa ra bởi một khớp nối và được nhận bởi các dây thần -- - 5 - kinh vào là kích thích điện tử. Việc truyền tín hiệu như trên liên quan đến một quá trình hóa học phức tạp mà trong đó các chất truyền đặc trưng được giải phóng từ phía gửi của nơi tiếp nối. Điều này làm tăng hay giảm điện thế bên trong thân của nơron nhận. Nơron nhận tín hiệu sẽ kích hoạt nếu điện thế vượt ngưỡng nào đó. Và một điện thế hoạt động với cường độ cùng thời gian tồn tại cố định được gửi ra ngoài thông qua đầu dây thần kinh tới phần dây thần kinh vào rồi tới chỗ khớp nối để đến nơron khác. Sau khi kích hoạt, nơron sẽ chờ trong một khoảng thời gian được gọi là chu kỳ cho đến khi nó có thể được kích hoạt lại. Có 2 loại khớp nối là khớp nối kích thích và khớp nối ức chế. Khớp nối kích thích sẽ cho tín hiệu qua nó để tới nơron, còn khớp nối ức chế có tác dụng làm cản tín hiệu của nơron. Cấu trúc mạng nơron luôn thay đổi và phát triển, các thay đổi có khuynh hướng chủ yếu là làm tăng hay giảm độ mạnh các mối liên kết thông qua các khớp nối. Các khớp nối đóng vai trò rất quan trọng trong sự học tập. Khi chúng ta học tập thì hoạt động của các khớp nối được tăng cường, tạo lên nhiều liên kết mạnh giữa các nơron. Có thể nói rằng người nào học càng giỏi thì càng có nhiều khớp nối và các khớp nối ấy càng mạnh mẽ, hay nói cách khác thì liên kết giữa các nơron càng nhiều càng nhạy bén. 1.2. Mạng nơron nhân tạo 1.2.1. Cấu trúc và mô hình của một nơron nhân tạo Mô hình toán học của mạng nơron sinh học được đề xuất bởi McCulloch và Pitts, thường được gọi là nơron M-P, ngoài ra nó còn được gọi là phần tử xử lý và được ký hiệu là PE. Mô hình nơron có m đầu vào x1, x2, ..., xm, và một đầu ra yi như sau: -- - 6 - Hình 1.2. Mô hình một nơron nhân tạo Giải thích các thành phần cơ bản: - Tập các đầu vào: Là các tín hiệu vào của nơron, các tín hiệu này thường được đưa vào dưới dạng một vectơ m chiều. - Tập các liên kết (các trọng số): Mỗi liên kết được thể hiện bởi một trọng số liên kết. Trọng số liên kết giữa tín hiệu vào thứ j cho nơron i thường được ký hiệu là wij. Thông thường các trọng số này được khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học mạng. - Bộ tổng (hàm tổng): Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó. - Ngưỡng: Ngưỡng này thường được đưa vào như một thành phần của hàm truyền. - Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho. Thông thường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn 0, 1 hoặc -1, 1. Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến. Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng. -- - 7 - - Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa một đầu ra Về mặt toán học, cấu trúc của một nơron I được mô ta bằng cặp biểu thức sau: i iy = f ( n e t - θ ) và i ij in et = W X Trong đó:  x 1, x 2,… , x m là các tín hiệu đầu vào.  W i1 , w i2 , … , wim là các trọng số kết nối của nơron thứ I.  net i là hàm tổng, f là hàm truyền.  ߠ i Là một ngưỡng.  y i là tín hiệu đầu ra của nơron. Như vậy, tương tự như nơron sinh học, nơron nhân tạo cũng nhận tín hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu được rồi gởi kết quả đến hàm truyền), và cho một tín hiệu đầu ra (là kết quả hàm truyền). Hàm truyền có thể có các dạng sau: Hàm bước 1 khi x 0 y= 0 khi x < 0     Hàm giới hạn chặt (hay còn gọi là hàm bước) 1 khi x 0 sgn( ) 1 khi x< 0 y x       Hàm bậc thang 1 khi x 0 y = sgn(x) = x khi 0 x 1 1 khi x < 0         Hàm ngưỡng đơn cực 1 1 x y e    Hàm ngưỡng hai cực 2 y 1 1 x e     -- - 8 - Đồ thị các dạng hàm truyền có thể được biểu diễn như sau: y x a. Hàm bước 0 1 y x Ab. Hàm giới hạn chặt 0 -1 1 y x d. Hàm ngưỡng đơn cực -1 1 0 ------------------------- ----------------------------------------------------- -- - 9 - Hình 1.3. Đồ thị các dạng hàm truyền 1.2.2. Mô hình của mạng nơron nhân tạo Dựa trên những phương pháp xây dựng nơron đã trình bày ở mục trên, ta có thể hình dung mạng nơron như là một hệ truyền đạt và xử lý tín hiệu. Đặc tính truyền đạt của nơron phần lớn là đặc tính truyền đạt tĩnh. Khi liên kết các đầu vào, ra của nhiều nơron với nhau, ta thu được một mạng nơron, việc ghép nối các nơron trong mạng với nhau có thể là theo một nguyên tắc bất kỳ. Vì mạng nơron là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệt các loại nơron khác nhau, các nơron có đầu vào nhận thông tin từ môi trường bên ngoài khác với các nơron có đầu vào được nối với các nơron khác trong mạng, chúng được phân biệt với nhau qua vectơ trọng số ở đầu vào w. y x c. Hàm bậc thang 0 1 1 ------- ------- y x d. Hàm ngưỡng hai cực -1 1 0 -- - 10 - Nguyên lý cấu tạo của mạng nơron bao gồm nhiều lớp, mỗi lớp bao gồm nhiều nơron có cùng chức năng trong mạng. Hình 1.4 là mô hình hoạt động của một mạng nơron 3 lớp với 8 phần tử nơron. Mạng có ba đầu vào là x1, x2, x3 và hai đầu ra y1, y2. Các tín hiệu đầu vào được đưa đến 3 nơron đầu vào, 3 nơron này làm thành lớp đầu vào của mạng. Các nơron trong lớp này được gọi là nơron đầu vào. Đầu ra của các nơron này được đưa đến đầu vào của 3 nơron tiếp theo, 3 nơron này không trực tiếp tiếp xúc với môi trường bên ngoài mà làm thành lớp ẩn, hay còn gọi là lớp trung gian. Các nơron trong lớp này có tên là nơron nội hay nơron ẩn. Đầu ra của các nơron này được đưa đến 2 nơron đưa tín hiệu ra môi trường bên ngoài. Các nơron trong lớp đầu ra này được gọi là nơron đầu ra. Hình 1.4. Mạng nơron ba lớp Mạng nơron được xây dựng như trên là mạng gồm 3 lớp mắc nối tiếp nhau đi từ đầu vào đến đầu ra. Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nào. Một mạng nơron có cấu trúc như vậy gọi là mạng một hướng hay mạng truyền thẳng một hướng và có cấu trúc mạng ghép nối hoàn toàn (vì bất cứ một nơron nào trong mạng cũng được nối với một hoặc vài nơron khác). Mạng nơron bao gồm một hay nhiều lớp trung gian được gọi là mạng Multilayer Perceptrons (MLP-Network). Mạng nơron khi mới được hình thành thì chưa có tri thức, tri thức của mạng sẽ được hình thành dần dần sau một quá trình học. Mạng nơron được học bằng cách đưa vào những kích thích, và mạng hình thành những đáp -- - 11 - ứng tương ứng, những đáp ứng tương ứng phù hợp với từng loại kích thích sẽ được lưu trữ. Giai đoạn này được gọi là giai đoạn học của mạng. Khi đã hình thành tri thức mạng, mạng có thể giải quyết các vấn đề một cách đúng đắn. Đó có thể là vấn đề ứng dụng rất khác nhau, được giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu vào của mạng và các đáp ứng đầu ra. Nếu nhiệm vụ của một mạng là hoàn chỉnh hoặc hiệu chỉnh các thông tin thu được không đầy đủ hoặc bị tác động của nhiễu. Mạng nơron kiểu này được ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể là nhận dạng chữ viết. Nhiệm vụ tổng quát của một mạng nơron là lưu giữ động các thông tin. Dạng thông tin lưu giữ này chính là quan hệ giữa các thông tin đầu vào và các đáp ứng đầu ra tương ứng, để khi có một kích thích bất kỳ tác động vào mạng, mạng có khả năng suy diễn và đưa ra một đáp ứng phù hợp. Đây chính là chức năng nhận dạng theo mẫu của mạng nơron. Để thực hiện chức năng này, mạng nơron đóng vai trò như một bộ phận tổ chức các nhóm thông tin đầu vào, và tương ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp. Như vậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu ra. Các nhóm có thể được hình thành trong quá trình học, và cũng có thể không hình thành trong quá trình học. 1.3. Mạng nơron trong khai phá dữ liệu Mục đích quan trọng của công việc khai phá dữ liệu là để hiểu được ý nghĩa về nội dung sâu sắc bên trong các bộ dữ liệu lớn. Thông thường, các giải pháp phổ biến đạt được mục đích này đều liên quan đến phương pháp học máy để xây dựng một cách quy nạp các mô hình dữ liệu trong tương lai. Mạng nơron được áp dụng trong hàng loạt các ứng dụng KPDL trong tài chính ngân hàng, dự đoán tỷ giá quy đổi, lập lịch cho tàu con thoi, ... Các thuật toán học mạng nơron đã được ứng dụng thành công trong một số lĩnh vực liên quan đến học có giám sát và không giám sát. Hướng phát triển mới học mạng nơron -- - 12 - là cải tiến quá trình học cho dễ hiểu hơn và thời gian học nhanh hơn, mà đây là vấn đề thường xuyên được đề đến cập đầu tiên trong KPDL. Học quy nạp là một trong những phương pháp phổ biến trong khai phá dữ liệu bởi vì nó xây dựng được các mô hình diễn tả việc thu thập dữ liệu cho phép hiểu thấu đáo bên trong dữ liệu đó. Tuỳ theo công việc cụ thể mà có thể sử dụng phương pháp học có giám sát hoặc học không giám sát các mô hình. Trong cả hai trường hợp học có giám sát và không giám sát, các thuật toán học là khác nhau thông qua cách thể hiện các mô hình khác nhau. Các phương pháp học mạng nơron thể hiện các giải pháp học dùng tham số thực trong một mạng gồm các đơn vị xử lý đơn giản. Các kết quả nghiên cứu chứng tỏ rằng mạng nơron là công cụ khá hiệu quả trong khai phá dữ liệu, đặc biệt đối với khuynh hướng học theo quy nạp. Chúng ta lướt qua nội dung sơ bộ về thuật toán có khuynh hướng quy nạp trong KPDL, mà cụ thể là thuật toán học theo quy nạp. Cho một tập cố định các ví dụ huấn luyện, thuật toán học có khuynh hướng quy nạp quyết định các thông số của một mô hình bằng cách tính toán lặp đi lặp lại theo dạng của mô hình đó. Có hai xu hướng xác định hướng ưu tiên của thuật toán. Không gian giả thuyết giới hạn đề cập đến ràng buộc thuật toán học thay cho giả thuyết mà nó có thể tạo ra. Ví dụ, không gian giả thuyết của một bộ cảm ứng được giới hạn bởi các hàm tuyến tính đặc biệt. Hướng ưu tiên của thuật toán đề cập đến việc sắp xếp ưu tiên thay cho các mô hình kết hợp trong không gian giả thuyết. Ví dụ, phần lớn các thuật toán học ban đầu cố gắng đáp ứng một giả thuyết đơn giản để đưa ra một tập huấn luyện sau đó khảo sát dần các giả thuyết phức tạp cho đến khi thuật toán tìm được hướng có thể chấp nhận được. Mạng nơron là phương pháp học khá phổ biến không chỉ vì lớp các giả thuyết do chúng có thể đại diện, mà đơn giản là vì chúng đem lại giả thuyết khái quát hơn so với các thuật toán cạnh tranh khác. Một số công trình nghiên -- - 13 - cứu đã xác định rằng có một số lĩnh vực mà trong đó mạng nơron cung cấp dự đoán chính xác.  Giả thuyết được thể hiện trong mạng nơron huấn luyện bao gồm: (1) Hình trạng của mạng; (2) Hàm chuyển đổi dừng cho các đơn vị ẩn và đơn vị đầu ra; (3) Các tham số giá trị thực liên quan đến kết nối mạng (trọng số kết nối). Các giả thuyết là rất đa dạng. Đầu tiên, các mạng tiêu biểu có hàng trăm hàng nghìn các tham số giá trị thực, các tham số mã hoá có liên quan đến đầu vào x và giá trị đích y . Mặc dù, mã hoá các tham số của loại này không khó, song sự chênh lệch số lượng các tham số trong mạng có thể làm cho việc hiểu chúng trở nên khó khăn hơn. Thứ hai, trong mạng đa lớp, các tham số có thể có mối quan hệ không tuyến tính, không đơn điệu giữa đầu vào và đầu ra. Vì vậy thường làm cho nó không thể xác định rõ sự ảnh hưởng của các đặc điểm đưa ra trong các giá trị mong muốn. Quá trình học của phần lớn các phương pháp học mạng nơron đều liên quan đến việc dùng một số phương pháp tối ưu cơ bản gradient để điều chỉnh các tham số mạng. Giống như các phương pháp tối ưu, học mạng nơron thực hiện lặp đi lặp lại hai bước cơ bản: tính toán gradient của hàm lỗi và điều chỉnh các tham số mạng theo hướng tiến bộ bởi gradient. Việc học có thể là rất chậm chạp và tuỳ thuộc các phương pháp khác nhau bởi vì thủ tục tối ưu thường bao gói một số lượng lớn các bước nhỏ và chi phí tính toán gradient cho mỗi bước có thể là rất lớn. Hướng mong muốn của phương pháp học mạng nơron là tìm ra các thuật toán học tuyến tính, có nghĩa là chúng được cập nhập các giả thuyết sau mỗi ví dụ. Vì các tham số được cập nhập đều đặn, các thuật toán học mạng nơron tuyến tính thường nhanh hơn thuật toán xử lý theo khối. Đây là một đặc điểm có lợi cho tập dữ liệu lớn. Một giải pháp được gọi là tốt nếu như mô hình có thể được phát hiện chỉ trong một lần duyệt qua một tập dữ -- - 14 - liệu lớn. Lý do này, chứng tỏ thời gian huấn luyện của các phương pháp học mạng nơron là chấp nhận cho việc khai phá dữ liệu. 1.4. Các phương pháp học sử dụng mạng nơron nhân tạo 1.4.1. Quy tắc học mạng nơron nhân tạo Huấn luyện mạng sử dụng các phần tử vectơ trọng số hoặc các thành phần của vectơ trọng số w ij kết nối với đầu vào của nơron i, dữ liệu đầu ra của nơron khác có thể là đầu vào của nơron i. Các dạng hàm kích hoạt nơron có thể khác nhau khi các quy tắc học khác nhau được xem xét. Trọng số của vectơ wi= wi1 wi2 w i3 ...w in t tăng theo tỉ lệ kết quả đầu vào x và tín hiệu học r. Tín hiệu học là một hàm của trong số wi và dữ liệu đầu vào x, hoặc tín hiệu dạy d i R=fr (w i, x, d i ) Trọng số của vectơ wi sẽ tăng tại thời điểm t theo quy tắc học: ∆wi (t)= rwi (t),x(t),di (t)x(t) Trong đó  là hằng số xác định tỉ lệ học Tại bước tiếp theo vectơ trọng số tương ứng với thời gian t: wi(t+1)=wi(t) + rwi (t),x (t),di (t)x(t) Quy ước chỉ số trên sẽ được sử dụng trong phạm vi chỉ mục rời rạc. Đối với các bước có thể sử dụng từ 1.9 bằng cách sử dụng công thức ܹ ௜௞ାଵ= wki+ r(wki , xk ,dki )xk 1.4.2. Học có giám sát Nguyên tắc học tập được cung cấp với một tập huấn luyện về hoạt động mạng thích hợp: {x 1 , y 1} , {x 2, y 2} , , {x n , y n }. Với (x n ) là một dữ liệu đầu vào mạng, (yn ) là dữ liệu đầu ra tương ứng. Khi đầu vào được áp dụng vào mạng, các kết quả đầu ra của mạng được so sánh với kết quả mục tiêu. Nguyên tắc học được sử dụng để điều chỉnh trọng số và sai số của mạng để dịch chuyển kết quả đầu ra của mạng gần hơn với -- - 15 - kết quả mong muốn. Trong học có giám sát tại từng thời điểm khi đầu vào được áp dụng người huấn luyện sẽ cung cấp thông tin phản hồi của hệ thống. Điều này được minh họa trong hình 1.5, khoảng cách thực tế và khoảng cách mong muốn là biện pháp để tìm ra lỗi và được sử dụng để điều chỉnh trọng số của mạng. Trong phân loại học của các mẫu đầu vào hoặc các trạng thái đầu vào được biết trước câu trả lời, lỗi này có thể được sử dụng để thay đổi trọng số nhằm giảm lỗi. Học có giám sát là phương thức học phổ biến và được sử dụng trong nhiều trường hợp học tự nhiên. Hình 1.5. Học có giám sát 1.4.3. Học không giám sát Trong học không giám sát trọng số và các sai số của mạng được thay đổi để đáp ứng với dữ liệu đầu vào của mạng. Học không giám sát không có kết quả đầu ra của mạng. Mạng tự học cách phân loại các mẫu đầu vào đưa vào trong các lớp. Học không giám sát không có các tín hiệu phản hồi, thông tin lỗi không được sử dụng để cải tiến hoạt động của mạng. Học không giám sát được thực hiện dựa trên quan sát các phản ứng đầu vào. Mạng tự tìm hiểu các mẫu, quy tắc, các thuộc tính mạng tự tìm ra sự thay đổi trong các tham số của nó. -- - 16 - Hình 1.6. Học không giám sát 1.4.4. Học tăng cường Học tăng cường là luật học có điểm giống như học có giám sát là mạng được cung cấp dữ liệu đầu ra mong muốn và có điểm giống học không giám sát là mạng không nhận được tất cả các thông tin phản hồi. Trong học tăng cường hệ thống nhận được tín hiệu phản hồi đánh giá kết quả đầu ra là đúng hay sai. Tuy nhiên học tăng cường không được cung cấp thông tin đầu ra chính xác. Do không có thông tin đầu ra chính xác nên hệ thống phải sử dụng một số chiến lược tìm kiếm ngẫu nhiên để lựa chọn không gian tìm kiếm từ đó đưa ra kết quả chính xác nhất. Khi có thông tin phản hồi đúng từ môi trường đầu vào học tăng cường khám phá môi trường mới. Hệ thống này sẽ nhận được tín hiệu đầu vào từ môi trường và cho kết quả đầu ra tương ứng. Hệ thống sẽ nhận được thông tin phản hồi tích cực hoặc không tích cực từ môi trường. Để nhận biết được thông tin phản hồi từ môi trường là tích cực hay không tích cực hệ thống sẽ phải thực hiện qua nhiều bước. 1.5. Tổng kết chương 1 Chương 1 đã trình bày những nội dung chủ yếu về cấu trúc mạng nơron các đơn vị xử lý, trạng thái kích hoạt, các luật học và môi trường hệ thống có thể hoạt động được. Về tổng thể, hình trạng mạng noron được chia làm hai loại là mạng noron truyền thẳng và mạng noron hồi quy. Thuật toán học mạng noron được chia làm hai nhóm chính đó là học có giám sát và học không có giám sát. -- - 17 - Chương 2: PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM 2.1. Phân cụm dữ liệu 2.1.1. Khái niệm PCDL là một kỹ thuật quan trọng và phổ biến trong xử lý thông tin, nhằm khám phá cấu trúc của các mẫu dữ liệu để tạo ra các nhóm dữ liệu từ tập dữ liệu lớn và mối quan hệ giữa chúng bằng cách tổ chức chúng thành các cụm dữ liệu. PCDL là một kỹ thuật tìm kiếm, phát hiện các cụm, các mẫu dữ liệu tự nhiên, tìm ẩn, quan trọng trong tập dữ liệu lớn. Từ đó cung cấp thông tin và tri thức hữu ích cho việc ra quyết định. PCDL là quá trình nhóm các điểm dữ liệu trong CSDL thành các cụm sao cho tại những điểm trong cùng một cụm có độ tương ứng lớn và những điểm không cùng một cụm có độ tương ứng là rất nhỏ. Độ tương tự giữa các đối tượng được xác định dựa trên những giá trị đặc tả đối tượng. Thông thường phép đo khoảng cách thường được dùng để đánh giá độ tương tự hay không tương tự giữa các đối tượng dữ liệu. Hình 2.1. Mô hình phân cụm dữ liệu y x y x (a) (b) -- - 18 - Hình 2.1 mô tả một ví dụ về PCDL. Như đã thấy, ở hình 2.1 (a) thể hiện mẫu đầu vào và ở hình 2.1 (b) là các cụm được nhóm dựa vào sự tương đồng của các đối tượng. Quá trình phân cụm là quá trình tìm ra các đối tượng trong CSDL một cách tự động. PCDL giải quyết vấn đề tìm một cấu trúc trong tập hợp dữ liệu chưa biết trước các thông tin về lớp hay các thông tin về tập huấn luyện. Vì vậy, PCDL là một phương pháp học không giám sát hay nói cách dễ hiểu thì PCDL là một ví dụ của phương pháp học không có thầy. Không giống như phân lớp dữ liệu, PCDL không đòi hỏi phải định trước các lớp và mẫu dữ liệu huấn luyện đã gắn nhãn lớp. Vì thế, có thể coi PCDL là một cách học bằng quan sát, trong khi phân lớp dữ liệu là học bằng ví dụ. Ngoài ra, PCDL còn được sử dụng như một bước tiền xử lý cho các bài toán KPDL khác như phân loại và mô tả đặc điểm, có tác dụng trong việc phát hiện ra các cụm. Đã có rất nhiều thuật toán cũng có như hệ thống được phát triển cho bài toán phân cụm trong CSDL lớn. PCDL được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau như phân tích dữ liệu, xử lý ảnh, nhận dạng mẫu, sinh vật học, đánh giá thị trường, kinh doanh, giáo dục, … Sự đa dạng của thuật toán phân cụm là do sự khác nhau của những ứng dụng thực tế, dẫn tới những yêu cầu về dữ liệu khác nhau và việc sử dụng thuật toán phân cụm cũng khác nhau. 2.1.2. Phân cụm và các thành phần trong phân cụm dữ liệu Mục đích của phân cụm là làm giảm kích thước dữ liệu bằng cách phân loại hoặc nhóm các thành phần dữ liệu giống nhau. Phân cụm dữ liệu là quá trình áp dụng các phương pháp, thuật toán để tổ chức dữ liệu thành các nhóm có những đặc điểm tương tự nhau. Một cụm là một tập hợp dữ liệu mà các phần tử tương tự nhau trong cùng một cụm và các phần tử không tương tự sẽ thuộc một cụm khác. Phân tích cụm được sử dụng để đưa ra những số liệu thống kê nhằm xác định những đặc điểm khác nhau giữa các cụm. -- - 19 - Mẫu đại diện: Đề cập đến số lớp, số mẫu có sẵn và số lượng, chủng loại, quy mô của các tính năng có sẵn cho các thuật toán phân cụm. Lựa chọn đặc trưng là quá trình xác định các đặc trưng ban đầu của tập hợp con để sử dụng trong phân cụm. Trích chọn đặc trưng là việc sử dụng một hoặc nhiều biến đổi từ đặc trưng đầu vào để tạo ra đặc trưng mới nổi bật. Những kĩ thuật này có thể được sử dụng để có một tập hợp các đặc trưng được sử dụng trong phân cụm dữ liệu. Mẫu lân cận: Thường được đo bằng một hàm khoảng cách thực hiện trên từng cặp mẫu. Có nhiều phương pháp đo khoảng cách được áp dụng trong phân cụm dữ liệu trong đó phổ biến nhất là phương pháp đo khoảng cách Euclide. Các bước nhóm dữ liệu có thể được thực hiện bằng nhiều cách khác nhau. Các cụm đầu ra có thể phân vùng dữ liệu thành các nhóm hoặc mỗi một mẫu có thể biến đổi các thành viên trong cụm đầu ra. Trừu tượng hóa dữ liệu: Là quá trình rút ra một đại diện đơn và nhỏ gọn của một tập dữ liệu. Trong phân cụm dữ liệu trừu tượng hóa dữ liệu là mô tả nhỏ gọn mỗi cụm thường mô tả các cụm nguyên mẫu hoặc các mẫu đại diện trọng tâm. Đánh giá tính đúng đắn là mục tiêu và được thực hiện để xác định đầu ra có ý nghĩa hay không. 2.1.3. Một số kỹ thuật phân cụm dữ liệu 2.1.3.1. Phân cụm phân hoạch (Partitionnal Clustering) Phân cụm phân hoạch phân chia dữ liệu thành các tập số. Kiểm tra tất cả các hệ thống tập hợp con có thể là tính toán không khả thi. Di chuyển lặp đi lặp lại các điểm trong cụm. Sau khi các cụm được xây dựng phương pháp phân cụm phân hoạch sẽ xem xét lại các cụm để cải thiện các cụm tốt hơn. Với dữ liệu thích hợp sẽ đem lại hiệu quả cao trong phân cụm. Ý tưởng chính của kỹ thuật phân cụm dữ liệu D có n đối tượng cho trước thành k phần, mỗi phần đại diện cho một cụm (k đối tượng đại diện có -- - 20 - thể được chọn ngẫu nhiên hoặc theo tiêu chuẩn của người sử dụng), với mỗi cụm phải ít nhất một đối tượng chỉ thuộc về một cụm. Kỹ thuật phân cụm phân hoạch tốt cho việc tìm các cụm hình cầu trong không gian Euclide. Ngoài ra, kỹ thuật này cũng phụ thuộc vào khoảng cách cơ bản giữa các điểm để lựa chọn các điểm dữ liệu nào có quan hệ gần nhau với mỗi điểm khác nhau. Đối với các thuật toán phân cụm phân hoạch thì độ phân cụm rất lớn khi xác định nghiệm tối ưu toàn cục do phải tìm kiếm tất cả các cách có thể để phân chia tập dữ liệu. Chính vì vậy, trên thực tế để giải quyết các ứng dụng người ta thường đi tìm giải pháp tối ưu cục bộ cho vấn đề này bằng cách sử dụng một hàm tiêu chuẩn để đánh giá chất lượng của các cụm cũng như thể định hướng cho quá trình tìm kiếm phân cụm dữ liệu. Với số lượng các cụm dữ liệu cần chia cho trước, kỹ thuật này thực hiện phép nhân phân hoạch ban đầu. Sau đó, nó liên tục tinh chỉnh cho đến khi thu được một phân hoạch mong muốn, thỏa nãm các điều kiện ràng buộc cho trước. Hình 2.2. Ví dụ về phân cụm phân hoạch với k=3 (a) và k=4 (b) Như vậy, các thuật toán phân cụm phân hoạch cải tiến tiêu chuẩn phân cụm bằng cách xác định các độ đo tương tự giữa các đối tượng dữ liệu và sắp xếp các giá trị này, sau đó thuật toán lựa chọn một giá trị trong dãy sắp xếp sao cho hàm tiêu chuẩn đạt giá trị tối thiểu. Với chiến lược như trên, ý y x y x (a) (b) y x y x (a) (b) -- - 21 - tưởng chính của thuật toán phân cụm phân hoạch tối ưu cục bộ là sử dụng chiến lược “tham lam” để rìm kiếm nghiệm. Điển hình trong kỹ thuật phân cụm phân hoạch là thuật toán: k-means, k-medoids, PAM (Partitioning Around Medoids), CLARA (Clustering LARge Application), CLARANS (Clustering LARge ApplitionNS). Dưới đây trình bày một thuật toán điển hình là thuật toán k-means. 2.1.3.2. Phân cụm phân cấp (hierarchical Clustering) Cấu trúc phân cụm phân cấp xây dựng trên một hệ thống phân cấp cụm. Các cụm chứa các nút cụm con. Các cụm ngang hàng được phân chia thành các điểm cùng cụm cha. Cách tiếp cận này cho phép tìm hiểu chi tiết dữ liệu ở các cấp độ khác nhau. Phương pháp phân cụm được chia làm hai loại: Phân cụm phân cấp tích tụ Bottom - Up và phân cụm phân cấp chia nhóm Top- Down. Phân cụm phân cấp tích tụ khởi đầu với một điểm cụm và kết hợp đệ quy với 2 hoặc nhiều cụm thích hợp nhất. Một cụm chia tách bắt đầu với một cụm của tất cả các điểm dữ liệu và đệ quy chia tách các cụm thích hợp nhất. Quá trình này tiếp tục cho đến khi đạt được một tiêu chí dừng lại được. Phân cụm phân cấp dựa trên kết quả thống kê kết quả liên kết trong cụm. Kỹ thuật phân cụm phân cấp xây dựng cây phân cấp bằng cách sắp xếp các đối tượng trong tập dữ liệu đã cho, cây phân cấp này được xây dựng theo kỹ thuật đệ quy. Cây phân cụm này có thể này được xây dựng bằng hai phương pháp: hòa nhập cụm (agglomerative) và chia tách cụm (divisive). -- - 22 - Hình 2.3. Một số kỹ thuật phân cụm phân cấp a) Phương pháp hòa nhập cụm Phương pháp hòa nhập cụm được thực hiện theo hướng tiếp cận “từ dưới lên” (Bottom-up), sử dụng chiến lược “tham lam” trong quá trình phân cụm. Nó bắt đầu bằng cách đặt mỗi đối tượng vào trong cụm riêng biệt và sau đó tiến hành hòa nhập các cụm nguyên tử này vào trong các cụm càng ngày càng lớn hơn theo một độ đo tương tự nào đó cho tới khi tất cả các đối tượng nằm trong một cụm đơn hoặc tới khi các điều kiện dừng cho trước được thỏa. Hầu hết các kỹ thuật phân cụm phân cấp thuộc về loại này, chúng chỉ khác nhau về định nghĩa độ tương tự giữa các cụm. Một số thuật toán được phát triển dựa trên kỹ thuật này như: BIRCH (Tian Zhang và các đồng nghiệp, 1996), CURE (Sudipto Guha và các đồng nghiệp, 1998), ROCK (Sudipto Guha và các đồng nghiệp, 1999), … b) Phương pháp chia tách cụm Ngược lại với phương pháp hòa nhập cụm, phương pháp chia tách cụm được thực hiện theo hướng tiếp cận “từ trên xuống” (Top-down), sử dụng chiến lược “chia để trị” trong quá trình phân cụm. Phương pháp này bắt đầu với tất cả các đối tượng được xếp trong một cụm, chia nhỏ nó theo giá trị của một độ đo tương tự nào đó thành các cụm ngày càng nhỏ hơn cho tới khi mỗi -- - 23 - một đối tượng là cụm hoặc cho tới khi một trong các điều kiện dừng cho trước được thỏa. Một số thuật toán được phát triển dựa trên kỹ thuật này là: DIANA (Kaufman và Rousseeuw, 1990), MONA (Hubaflek, 1982), … 2.1.3.3. Phân cụm dựa trên mật độ (Density - Based Clustering) Một tập mở trong không gian Euclide có thể được chia thành một tập hợp các thành phần kết nối. Việc thực hiện ý tưởng này cho phân vùng của một tập hợp hữu hạn các điểm đòi hỏi phải có khái niệm về kết nối, mật độ, ranh giới. Chúng liên quan đến điểm lân cận gần nhất. Một cụm quy định như là một thành phần kết nối dày đặc, phát triển ở bất kỳ hướng nào mà mật độ cao nhất. Dựa trên các thuật toán mật độ có khả năng phát hiện các cụm với hình dạng bất kỳ điều này giúp loại bỏ các giá trị ngoại lai hoặc nhiễu. Kỹ thuật phân cụm dựa trên mật độ được sử dụng để tìm kiếm các cụm dữ liệu với hình dạng tùy ý. Kỹ thuật này nhóm các đối tượng theo hàm mật độ. Theo đó, mật độ là số lượng đối tượng trong vùng lân cận của một đối tượng dữ liệu. Trong cách tiếp cận này, khi một cụm dữ liệu đã được xác định thì nó tiếp tục mở rộng bằng cách thêm các đối tượng dữ liệu mới cho đến khi số lượng đối tượng trong vùng lân cận chưa vượt quá một ngưỡng đã được xác định trước. Các thuật toán điển hình được phát triển dựa trên kỹ thuật này như: DBSCAN (Ester, P. Kriegel và J. Sander, 1996), OPTICS (Ankerst và đồng nghiệp, 1999), DENCLUDE (Hinneburg và Keim, 1998),… 2.1.3.4. Phân cụm dựa trên lưới (Grid - Based Clustering) Kỹ thuật phân cụm dựa trên mật độ tuy thích hợp với dữ liệu với hình dạng bất kỳ nhưng nó không thích hợp với dữ liệu đa chiều. Để giải quyết vấn đề này, các thuật toán PCDL được phát triển theo kỹ thuật phân cụm dựa trên lưới. Kỹ thuật này dựa trên cấu trúc dạng lưới để phân cụm, thường áp -- - 24 - dụng cho các lớp dữ liệu không gian đa chiều. Phân cụm dựa trên lưới được thực hiện bằng cách lượng hóa dữ liệu vào trong một số hữu hạn các ô mà đã hình thành nên cấu trúc lưới. Sau đó, các thao tác phân cụm chỉ cần thực hiện trên các đối tượng trong từng ô trên lưới chứ không phải các đối tượng dữ liệu. Cách tiếp cận dựa trên lưới này không di chuyển các đối tượng trong các ô mà xây dựng nhiều mức phân cấp của nhóm các đối tượng trong một ô. Phương pháp này gần giống với phương pháp phân cụm phân cấp nhưng chúng không trộn các ô, đồng thời giải quyết khắc phục yêu cầu đối với dữ liệu nhiều chiều mà phương pháp phân cụm dựa trên mật độ không giải quyết được. Hình 2.4. Mô hình cấu trúc dữ liệu lưới Các thuật toán điển hình tiếp cận theo kỹ thuật này như: STING (Wang, Yang và Muntz, 1997), WaveCluster (Sheikholeslami, Chatterjee và Zhang, 1998), CLIQUE (Agrawal và đồng nghiệp, 1998), … 2.1.3.5. Phân cụm dựa trên mô hình (Model - Based Clustering) Kỹ thuật phân cụm dựa trên mô hình thực hiện khám phá các phép xấp xỉ tốt của các tham số mô hình sao cho khớp với dữ liệu một cách tốt nhất. Chúng có thể sử dụng chiến lược phân cụm phân hoạch hoặc phân cụm phân cấp, dựa trên cấu trúc hoặc mô hình mà chúng giả định về tập dữ liệu và cách chúng tinh chỉnh các mô hình này để nhận dạng ra các phân hoạch. PCDL dựa trên mô hình cố gắng khớp giữa dữ liệu với mô hình toán học, nó dựa trên giả định rằng dữ liệu được tạo ra bằng hỗn hợp phân phối -- - 25 - xác suất cơ bản. Các thuật toán phân cụm dựa trên mô hình có hai cách tiếp cận chính là mô hình thống kê và mạng nơron. Một số thuật toán điển hình như EM, COBWEB, … 2.1.3.6. Phân cụm dữ liệu mờ (Fuzzy Clustering) Các kỹ thuật PCDL được trình bày ở trên đều được áp dụng phương pháp chung là phân một tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên và mỗi đối tượng chỉ thuộc về một cụm dữ liệu. Tuy nhiên, trên thực tế có rất nhiều dữ liệu có tính nhập nhằng, nghĩa là một đối tượng có thể thuộc về nhiều cụm dữ liệu khác nhau (các cụm dữ liệu chồng lên nhau). Đối với những giữ liệu loại này thì các kỹ thuật PCDL rõ mang lại hiệu quả không cao. Để giải quyết vấn đề này, người ta áp dụng lý thuyết mờ vào việc phân cụm. Cách thức kết hợp này người ta gọi là kỹ thuật PCDL mờ hay còn gọi tắt là phân cụm mờ. Các thuật toán áp dụng kỹ thuật phân cụm mờ đã được phát triển và ứng dụng rộng rãi trong thực tế. Một trong những thuật toán kinh điển và được sử dụng phổ biến nhất là thuật toán Fuzzy c-mean (Bezdek, 1981), gọi tắt là thuật toán FCM. Thuật toán này đã được áp dụng thành công trong giải quyết một số bài toán PCDL như trong nhận dạng mẫu, xữ lý ảnh, y học, … Tuy nhiên, nhược điểm lớn nhất của thuật toán FCM là nhạy cảm với các nhiễu và phần tử ngoại lai, nghĩa là trung tâm cụm có thể nằm xa so với trung tâm thực tế của cụm. Ngoài ra, còn có một số thuật toán khác đã được đề xuất để cải tiến thuật toán FMC như Fuzzy c- Elliptotype, Fuzzy c- mixed Prototype, Fuzzy Clustering, Fuzzy Merging, Phân cụm dựa trên xác suất (Keller, 1993), phân cụm nhiễu mờ (Dave, 1991), Phân cụm dựa trên toám tử Lp Norm (Kersten, 1999), … -- - 26 - 2.1.4. Ứng dụng của phân cụm dữ liệu Phân cụm dữ liệu được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau: Phân đoạn ảnh: Phân đoạn ảnh sử dụng các kỹ thuật PCDL để phân tách ảnh đầu vào thành các miền (các lớp đối tượng riêng rẽ), mỗi đối tượng được gọi là một ảnh con. Thực chất của phân đoạn ảnh là là phép đối sánh mẫu. Mỗi ảnh con được phân tích chứa các thuộc tính (mật độ, màu, vân). Nhận dạng ký tự: Nhận dạng ký tự dựa vào PCDL được phát triển bởi Connell và Jain (1998) để nhận dạng chữ viết trong văn bản viết tay. Thư viện: Phân loại các cụm sách có nội dung và ý nghĩa tương đồng nhau để cung cấp cho độc giả, cũng như đặt hàng với nhà cung cấp. Bảo hiểm: Nhận dạng tham gia bảo hiểm có chi phí yêu cầu bồi thường trung bình cao, xác định gian lận trong bảo hiểm thông qua các mẫu cá biệt. Lĩnh vực thương mại: Giúp tìm kiếm nhóm khách hàng tiềm năng, quan trọng trong CSDL khách hàng để đưa ra các chính sách kinh doanh phù hợp. Lĩnh vực sinh học: Phân loại Gen có chức năng tương đồng và thu được các cấu trúc trong các mẫu, xác định các loại sinh vật. Lĩnh vực địa chất: Theo dõi các tâm động đất để dự báo động đất, song thần, nhận dạng các vùng nguy hiểm. Lĩnh vực địa lý: Phân loại lớp động vật và thực vật và đứa ra đặc trưng của chúng. Lĩnh vực quy hoạch địa lý: Nhận dạng các vùng miền theo tiêu chí đánh giá cho trước để quy hoạch đô thị, quy hoạch nông thôn. Webmining: PCDL có thể khám phá ra các nhóm tài liệu qua trọng, phù hợp với mục đích tìm kiếm của người dùng. Phân tích dữ liệu không gian: PCDL có thể giúp người dùng tự động phân tích và xử lý các dữ liệu không gian như nhận dạng và chiết xuất các -- - 27 - đặc tính hoặc các mẫu dữ liệu quan tâm có thể tồn tại trong CSDL không gian… 2.2. Mạng nơron Kohonen (SOM) 2.2.1. Giới thiệu về mạng Kohonen (SOM) SOM (Self-Organizing Map) là một mô hình mạng nơron do giáo sư Kohonen tìm ra như một dạng thông tin topo thường thấy trong dữ liệu đầu đa chiều biến đổi thành lớp một chiều hoặc hai chiều của nơron, thường với hai chiều, lưới hình chữ nhật. Bản đồ topo đảm bảo một trật tự hoặc một ma trận số liệu được xác định tác động đến đầu vào. Nó thúc đẩy biểu diễn các thông tin giác quan quan trọng trong bộ nhớ của con người có một thứ tự hình học. Cấu trúc liên kết bảo toàn là một thuộc tính quan trọng trong SOM. Các nơron đại diện cho các lớp có tính chất tương tự nhau do đó có thể nhóm lại được với nhau. Nói cách khác cấu trúc liên kết của các tập dữ liệu trong không gian n chiều, nó được chụp bởi SOM và thể hiện trong sự sắp xếp các nút của nó. SOM nén dữ liệu trong khi vẫn giữ mối liên hệ topo quan trọng nhất, nó có thể được coi như tạo ra một số kiểu trừu tượng. Mạng SOM gồm có một mảng hoặc một mạng tinh thể các số của các phần tử xử lý nơron (các nơron hoặc các nút) thường được sắp xếp trong một mạng lưới đa chiều mà mỗi nơron được kết nối với đầu vào. Kiểu mạng tinh thể có thể có nhiều mẫu như hình chữ nhật, hình lục giác hoặc thậm chí bất thường. Liên kết với mỗi nơron có một mẫu được gọi là bảng mã, mô hình có cùng số chiều với số chiều của mẫu đầu vào. Phương thức học của SOM là một biến thể của cạnh tranh: Phương pháp tiếp cận winner-take-all. Tính năng của bản đồ Kohonen tạo ra một bản đồ topo điều chỉnh kh...

TRƯỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN - - KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC NGHIÊN CỨU PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN TUYỂN SINH ĐẠI HỌC Sinh viên thực hiện NGÔ TRUNG HIỆU MSSV: 2112011006 CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN KHÓA HỌC: 2012 – 2016 Giảng viên hướng dẫn ThS ĐỖ QUANG KHÔI Quảng Nam, tháng 04 năm 2016 LỜI CẢM ƠN Trước hết em xin gởi lời cảm ơn sâu sắc đến ThS Đỗ Quang Khôi – Giám đốc Trung tâm học liệu và công nghệ thông tin, giảng viên Trường Đại học Quảng Nam, người đã tận tình hướng dẫn, giúp đỡ, định hướng và đóng góp ý kiến cho em trong suốt thời gian làm bài để em có thể hoàn thành bài khóa luận tốt nghiệp này Em xin chân thành cảm ơn tất cả các thầy, cô trường Đại học Quảng Nam Đặc biệt là các thầy, cô trong Khoa Công nghệ thông tin của trường đã tận tình dạy dỗ, truyền đạt kiến thức cho em trong suốt quá trình học tập, nghiên cứu tại trường và tạo điều kiện thuận lợi cho em trong thời gian cuối khóa để hoàn thành chương trình tốt nghiệp Em cũng gởi lời cảm ơn đến Trung tâm học liệu và công nghệ thông tin trường Đại học Quảng Nam đã tạo điều kiện giúp đỡ cho em trong quá trình thực tập tốt nghiệp và những kinh nghiệm trong thực tế Đồng thời, em cũng gởi lời cảm ơn đến gia đình, bạn bè đã động viên, giúp đỡ em lúc khó khăn trong học tập và trong cuộc sống MỤC LỤC DANH MỤC TỪ VIẾT TẮT IV DANH MỤC HÌNH VẼ V DANH MỤC BẢNG VI MỞ ĐẦU 1 1 Lý do chọn đề tài 1 2 Mục đích nghiên cứu 2 3 Đối tượng và phạm vi nghiên cứu 2 4 Phương pháp nghiên cứu 2 5 Lịch sử nghiên cứu 2 6 Đóng góp của đề tài 3 7 Cấu trúc khóa luận 3 NỘI DUNG NGHIÊN CỨU 4 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NƠRON 4 1.1 mạng nơron sinh học 4 1.1.1 Cấu trúc của mạng nơron sinh học 4 1.1.2 Hoạt động của nơron sinh học 4 1.2 Mạng nơron nhân tạo 5 1.2.1 Cấu trúc và mô hình của một nơron nhân tạo 5 1.2.2 Mô hình của mạng nơron nhân tạo 9 1.3 Mạng nơron trong khai phá dữ liệu 11 1.4 Các phương pháp học sử dụng mạng nơron nhân tạo 14 1.4.1 Quy tắc học mạng nơron nhân tạo 14 1.4.2 Học có giám sát 14 1.4.3 Học không giám sát 15 1.4.4 Học tăng cường 16 1.5 Tổng kết chương 1 16 CHƯƠNG 2: PHÂN CỤM DỮ LIỆU VỚI MÔ HÌNH SOM 17 - i - 2.1 Phân cụm dữ liệu 17 2.1.1 Khái niệm 17 2.1.2 Phân cụm và các thành phần trong phân cụm dữ liệu 18 2.1.3 Một số kỹ thuật phân cụm dữ liệu 19 2.1.3.1 Phân cụm phân hoạch (partitionnal clustering) 19 2.1.3.2 Phân cụm phân cấp (hierarchical clustering) 21 2.1.3.3 Phân cụm dựa trên mật độ (density - based clustering) 23 2.1.3.4 Phân cụm dựa trên lưới (grid - based clustering) 23 2.1.3.5 Phân cụm dựa trên mô hình (model - based clustering) 24 2.1.3.6 Phân cụm dữ liệu mờ (fuzzy clustering) 25 2.1.4 Ứng dụng của phân cụm dữ liệu 26 2.2 Mạng nơron kohonen (som) 27 2.2.1 Giới thiệu về mạng kohonen (som) 27 2.2.2 Cấu trúc của som 28 2.2.3 Khởi tạo som 29 2.2.4 Huấn luyện som 29 2.3 Sử dụng som trong phân cụm dữ liệu 30 2.3.1 Som với bài toán phân cụm 32 2.3.2 Som phân cụm với bản đồ một chiều 1 37 2.3.3 Som phân cụm với bản đồ hai chiều 37 2.3.3.1 Phân cụm trong không gian bản đồ 37 2.3.3.2 Phân cụm trong không gian trọng số 38 2.4 Một vài ứng dụng của som 38 2.5 Kết luận chương 2 39 CHƯƠNG 3: ỨNG DỤNG MÔ HÌNH SOM TRONG CÔNG TÁC TƯ VẤN TUYỂN SINH ĐẠI HỌC 40 3.1 Giới thiệu chương trình 40 3.2 Giới thiệu công cụ som toolbox 40 - ii - 3.3 Chương trình thử nghiệm 41 3.3.1 Cấu trúc chương trình 41 3.3.2 Xây dựng tập dữ liệu 41 3.3.3 Xử lý dữ liệu trước huấn luyện 44 3.3.4 Khởi tạo som và huấn luyện 44 3.3.5 Mô phỏng (trực quan hóa) 47 3.3.6 Kết quả chạy chương trình 51 3.4 Phân tích kết quả 54 KẾT LUẬN 60 TÀI LIỆU THAM KHẢO 61 - iii - DANH MỤC TỪ VIẾT TẮT Tên viết tắt Tến đầy đủ CSDL Cơ sở dữ liệu PCDL Phân cụm dữ liệu BMU Best Matching Unit SOM Self-Organizing Map KPDL Khai phá dữ liệu - iv - DANH MỤC HÌNH VẼ Hình 1.1 Mô hình nơron sinh học 4 Hình 1.2 Mô hình một nơron nhân tạo 6 Hình 1.3 Đồ thị các dạng hàm truyền 9 Hình 1.4 Mạng nơron ba lớp 10 Hình 1.5 Học có giám sát 15 Hình 1.6 Học không giám sát 16 Hình 2.1 Mô hình phân cụm dữ liệu 17 Hình 2.2 Ví dụ về phân cụm phân hoạch với k=3 (a) và k=4 (b) 20 Hình 2.3 Một số kỹ thuật phân cụm phân cấp 22 Hình 2.4 Mô hình cấu trúc dữ liệu lưới 24 Hình 2.5 Cấu trúc của mạng som 28 Hình 2.6 Cập nhật bmu và lân cận của nó với mẫu đầu vào 30 Hình 2.7 Vectơ chiến thắng liên tục đối với som có 30x40 nơron cho dữ liệu hỗn hợp gauxơ 35 Hình 2.8 U-matrix của som trong hình 2.11 trên 37 Hình 3.1 Trực quan mạng sử dụng u-matrix 53 Hình 3.2 Kết quả phân cụm sử dụng phương pháp trực quan các thành phần bản đồ 54 - v - DANH MỤC BẢNG Bảng 3.1 Thông tin về một số trường đại học ở miền trung việt nam 43 Bảng 3.2 Kết quả các cụm sau khi huấn luyện som 54 - vi - MỞ ĐẦU 1 Lý do chọn đề tài Trong vài thập niên gần đây, cùng với sự thay đổi và phát triển không ngừng của ngành công nghệ thông tin nói chung và trong các ngành công nghệ phần cứng, phần mềm, truyền thông và hệ thống các dữ liệu phục vụ trong các lĩnh vực kinh tế-xã hội nói riêng thì việc thu thập thông tin cũng như nhu cầu lưu trữ thông tin càng ngày càng lớn Bên cạnh đó việc tin học hoá một cách ồ ạt và nhanh chóng các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra cho chúng ta một lượng dữ liệu lưu trữ khổng lồ Hàng triệu CSDL đã được sử dụng trong các hoạt động sản xuất, kinh doanh, quản lí, trong đó có nhiều CSDL cực lớn cỡ Gigabyte, thậm chí là Terabyte Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những kĩ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành các tri thức có ích Từ đó, các kĩ thuật KPDL đã trở thành một lĩnh vực thời sự của nền Công nghệ thông tin thế giới hiện nay Một vấn đề được đặt ra là phải làm sao trích chọn được những thông tin có ý nghĩa từ tập dữ liệu lớn để từ đó có thể giải quyết được các yêu cầu của thực tế như trợ giúp ra quyết định, dự đoán, và KPDL (Data mining) đã ra đời nhằm giải quyết các yêu cầu đó Mặc khác, hiện nay công tác tuyển sinh đại học, cao đẳng là một trong những vấn đề hàng đầu của các cơ sở giáo dục đại học trên cả nước Công tác tư vấn tuyển sinh cũng đã thực hiện với nhiều hình thức đa dạng, phong phú để giúp thí sinh định hướng được ngành học phù hợp với bản thân Tuy nhiên, trên thực tế thí sinh vẫn còn mơ hồ, chưa nắm rõ được các thông tin - 1 - tuyển sinh của các trường Điều này làm ảnh hưởng không nhỏ đến việc định hướng nghề nghiệp của thí sinh Chính vì những lý do trên, em đã chọn đề tài “Nghiên cứu phân cụm dữ liệu với mô hình SOM và ứng dụng trong tư vấn tuyển sinh đại học” để làm khóa luận tốt nghiệp 2 Mục đích nghiên cứu Nắm vững những kiến thức cơ bản về mạng nơron nhân tạo, PCDL, mạng SOM và ứng dụng của SOM trong phân cụm dữ liệu Áp dụng vào tư vấn tuyển sinh đại học 3 Đối tượng và phạm vi nghiên cứu Các thuật toán phân cụm dữ liệu theo mô hình SOM Công cụ SOM Toolbox Từ kết quả đạt được, ứng dụng vào trong bài toán tư vấn tuyển sinh 4 Phương pháp nghiên cứu Đọc tài liệu, phân tích, tổng hợp Thống kê, phân tích dữ liệu Thực nghiệm 5 Lịch sử nghiên cứu Với vấn đề KPDL, đặc biệt là PCDL cũng đã được nhiều tác giả phân tích và nghiên cứu theo nhiều hướng khác nhau Phần lớn các tác giả đều cho thấy một cách tổng quan về KPDL, các kiến thức về PCDL và các ứng dụng trong một số lĩnh vực khác nhau Bên cạnh đó vẫn còn một số vấn đề ít được đề cập là việc phân tích, đánh giá tính tối ưu trong các thuật toán PCDL, từ đó lựa chọn thuật toán tốt nhất đưa vào ứng dụng - 2 -

Ngày đăng: 09/03/2024, 07:02

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

Tài liệu liên quan