Phân cụm đồ thị dữ liệu và ứng dụng

71 403 2
Phân cụm đồ thị dữ liệu 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

ĐẠI HỌC THÁI NGUYÊN  TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG TRẦN HÀ PHƯƠNG PHÂN CỤM ĐỒ THỊ DỮ LIỆU ỨNG DỤNG         LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2016 ĐẠI HỌC THÁI NGUYÊN  TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG TRẦN HÀ PHƯƠNG PHÂN CỤM ĐỒ THỊ DỮ LIỆU ỨNG DỤNG     Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: PGS TS ĐOÀN VĂN BAN THÁI NGUYÊN - 2016   i LỜI CAM ĐOAN Tên tôi là: Trần Hà Phương  Sinh ngày:   Học  viên  lớp  cao  học  CHK13  -  Trường  Đại  học  Công  nghệ  thông  tin  và  Truyền thông - Đại học Thái Nguyên.  Hiện đang công tác tại:     Xin cam đoan: Đề tài “Phân cụm đồ thị liệu ứng dụng” do Thầy giáo  PGS.TS Đoàn Văn Ban hướng dẫn là công trình nghiên cứu của riêng tôi. Tất cả tài  liệu tham khảo đều có nguồn gốc, xuất xứ rõ ràng.  Tác  giả  xin  cam  đoan  tất  cả  những  nội  dung  trong  luận  văn  đúng  như  nội  dung  trong  đề  cương  và  yêu  cầu  của  thầy  giáo  hướng  dẫn.  Nếu  sai  tôi  hoàn  toàn  chịu trách nhiệm trước hội đồng khoa học và trước pháp luật.  Thái Nguyên, ngày 14 tháng năm 2016 Tác giả luận văn Trần Hà Phương               ii LỜI CẢM ƠN   Sau một  thời gian  nghiên  cứu  và làm việc nghiêm  túc,  được  sự  động  viên,  giúp đỡ và hướng dẫn tận tình của Thầy giáo hướng dẫn PGS.TS Đoàn Văn Ban,  luận văn với đề tài “Phân cụm đồ thị liệu ứng dụng”đã hoàn thành.  Tôi xin bày tỏ lòng biết ơn sâu sắc đến:  Thầy giáo hướng dẫn PGS.TS Đoàn Văn Ban đã tận tình chỉ dẫn, giúp đỡ  tôi hoàn thành luận văn này.  Khoa sau Đại học Trường Đại học công nghệ thông tin và truyền thông đã  giúp đỡ tôi trong quá trình học tập cũng như thực hiện luận văn.  Tôi  xin  chân  thành  cảm  ơn  bạn  bè,  đồng  nghiệp  và  gia  đình  đã  động  viên,  khích lệ, tạo điều kiện giúp đỡ tôi trong suốt quá trình học tập, thực hiện và hoàn  thành luận văn này.  Thái Nguyên, ngày 16 tháng năm 2016 Tác giả luận văn Trần Hà Phương         iii MỤC LỤC   LỜI CAM ĐOAN   i  LỜI CẢM ƠN  ii  MỤC LỤC   iii  DANH MỤC CÁC TỪ VIẾT TẮT  . v  DANH MỤC BẢNG   vi  DANH MỤC CÁC HÌNH ẢNH   vii MỞ ĐẦU   1  1. Tính khoa học và cấp thiết của đề tài   1  2. Mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài  . 2  3. Phương pháp luận nghiên cứu   2  4. Nội dung và bố cục của luận văn  . 2  CHƯƠNG 1TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU   4  1.1  Khái niệm, mục tiêu và các bước cơ bản của phân cụm dữ liệu   4  1.1.1  Phân cụm dữ liệu là gì?   4  1.1.2  Các mục tiêu của phân cụm dữ liệu   5  1.1.3  Các bước cơ bản để phân cụm   7  1.2  Một số khái niệm cần thiết khi tiếp cận phân cụm dữ liệu   8  1.2.1  Phân loại các kiểu dữ liệu  . 8  1.2.2  Độ đo tương tự và phi tương tự  . 9  1.3  Những kỹ thuật tiếp cận trong phân cụm dữ liệu  . 11  1.3.1  Phương pháp phân cụm phân hoạch   12  1.3.2  Phương pháp phân cụm phân cấp   12  1.3.3  Phương pháp phân cụm dựa trên mật độ  . 13  1.3.4  Phương pháp phân cụm dựa trên lưới   14  1.3.5  Phương pháp phân cụm dựa trên mô hình   15  1.3.6  Phương pháp phân cụm dữ liệu có liên kết   15  1.4  Các ứng dụng của phân cụm dữ liệu   16  1.5  Các yêu cầu và những vấn đề còn tồn tại trong phân cụm dữ liệu   18  1.5.1  Các yêu cầu của phân cụm dữ liệu   18  1.5.2  Những vấn đề còn tồn tại trong phân cụm dữ liệu  . 20  1.6  Tổng kết chương  . 20      iv CHƯƠNG THUẬT TOÁN PHÂN CỤM ĐỒ THỊ DỮ LIỆU  . 22  2.1  Tổng quan về lý thuyết đồ thị   22  2.1.1  Giới thiệu chung   22  2.1.2  Biểu diễn đồ thị trên máy tính  . 23  2.2  Mô hình đồ thị dữ liệu  . 27  2.3  Độ đo trong phân cụm đồ thị dữ liệu   28  2.3.1  Độ đo cho phân cụm dữ liệu nói chung  . 28  2.3.2  Độ đo cho phân cụm đồ thị   30  2.4  Một số thuật toán phân cụm dữ liệu dựa trên đồ thị   31  2.4.1  Thuật toán CHAMELEON   31  2.4.2  Thuật toán phân cụm quang phổ   33  2.4.3  Thuật toán phân cụm phân cấp  35  2.5  Kết luận chương   46  CHƯƠNG ỨNG DỤNG THUẬT TOÁN ĐỒ THỊ QUANG PHỔ TRONG VIỆC PHÂN LOẠI KẾT QUẢ HỌC TẬP CỦA HỌC SINH   47  3.1  Đặt vấn đề   47  3.2  Xây dựng chương trình ứng dụng   49  3.2.1  Mục đích chương trình  . 49  3.2.2  Cơ sở dữ liệu   49  3.2.3  Các bước thực hiện  . 49  3.2.4  Môi trường cài đặt   50  3.2.5  Cài đặt   50  3.3  Các chức năng chính của chương trình   51  3.3.1  Chương trình chính  . 51  3.3.2  Biểu diễn dữ liệu theo đồ thị  . 52  3.3.3  Phân cụm dữ liệu đồ thị quang phổ  . 52  3.4  Đánh giá hiệu quả của thuật toán phân cụm dữ liệu đồ thị quang phổ  54  3.5  Kết luận chương   58  KẾT LUẬN HƯỚNG PHÁT TRIỂN  59  TÀI LIỆU THAM KHẢO   61      v DANH MỤC CÁC TỪ VIẾT TẮT   Từ cụm từ  Từ tiếng Anh  Từ tiếng Việt  Binding  data  Clustering  Phương pháp phân cụm dữ liệu  BDCM CA Methods có liên kết Continuous Attribute Thuộc tính liên tục Cơ sở dữ liệu CSDL Discrette Attribute Thuộc tính rời rạc DBM Density-Based Methods  Phương pháp dựa trên mật độ  GBM Grid-Based Methods  Phương pháp dựa trên lưới  HM Hierarchical Methods  Phương pháp phân cấp  DA Model-Based  MBCM Methods  phân cụm  MC Markov Clustering Phân cụm theo mô hình Markov MST Minimum Spanning Tree  Cây khung nhỏ nhất  Partitioning Methods  Phương pháp phân họach  Random Walk Algorithm  Thuật toán bước đi ngẫu nhiên  Star Clustering  Phân cụm hình sao  PM RWA SC SCA Spectral Clustering Algorithm  Thuật toán phân cụm quang phổ  SOM  Self-Organizing Map        Clustering  Phương pháp dựa trên mô hình  Mạng tự tổ chức        vi DANH MỤC BẢNG   Bảng 3.1. Các module chính của chương trình  . 51          vii DANH MỤC CÁC HÌNH ẢNH   Hình 1.1. Ví dụ về phân cụm dữ liệu [7]   5  Hình 1.2. Ví dụ phân cụm các đối tượng dựa trên khoảng cách [7]   5  Hình 1.3. Ví dụ phân cụm các đối tượng dựa trên kích cỡ [7]   6  Hình 1.4. Các bước trong quá trình phân cụm   8  Hình 1.5. Các chiến lược phân cụm phân cấp [11]  . 13  Hình 1.6. Cấu trúc phân cụm dữ liệu dựa trên lưới   15  Hình 2.1. Ví dụ về mô hình đồ thị   22  Hình 2.2. Phân loại đồ thị   23  Hình 2.3. Ma trận kề vô hướng (trên) và có hướng (dưới)   25  Hình 2.4. Ma trận trọng số vô hướng (trên) và có hướng (dưới)   26  Hình 2.5. Ma trận liên thuộc vô hướng (trên) và có hướng (dưới)   27  Hình 2.6. Minh họa thuật toán CHAMELEON   32  Hình 2.7. Nguyên lý chung của AntTree   36  Hình 2.8. Kiến trúc khác nhau giữa SOM và SOMTree  . 41  Hình 2.9. Phân việc từ cây  treec cho treec   44  old Hình 2.10. Tách subtreex khỏi cây  treec và đưa vào list   45  old Hình 2.11. Tái liên kết subtreex vào treec   45  Hình 3.1. Màn hình chính của chương trình   51  Hình 3.2. Biểu diễn dữ liệu theo đồ thị   52  Hình 3.3. Phân cụm dữ liệu đồ thị quang phổ với dữ liệu vào là dữ liệu kiểm tra   53  Hình 3.4. Phân cụm dữ liệu đồ thị quang phổ với dữ liệu vào là điểm học sinh   54  Hình 3.5. Kết quả phân cụm dữ liệu dạng ba cụm Gaussian với 1000 mẫu dữ liệu 55  Hình 3.6. Kết  quả  phân  cụm  dữ  liệu  dạng  ba  cụm Gaussian với  độ lớn  lần  lượt là  100, 1000, 3000 mẫu dữ liệu  . 55  Hình 3.7. Kết quả phân cụm dữ liệu dạng hai nửa vầng trăng với kích thước dữ liệu  là ba cụm Gaussian với độ lớn lần lượt là 7500 mẫu dữ liệu   56  Hình 3.8. Kết quả phân cụm dữ liệu dạng hai nửa vầng trăng với hai thuật toán K  mean (trái) và đồ thị quang phổ (phải)   56  Hình 3.9. Kết quả phân cụm dữ liệu điểm học sinh với số cụm khác nhau   57      MỞ ĐẦU   Tính khoa học cấp thiết đề tài Phân  cụm  là  một  trong  những  vấn  đề  cơ  bản  phổ  biến  trong  các  lĩnh  vực  nhận  dạng  mẫu,  học  máy  và  khai  thác  dữ  liệu.  Hiện  tại,  trên  thực  tế  có  rất  nhiều  thuật toán phân cụm được công bố. Tuy nhiên, do không tồn tại một thuật toán phân  cụm  duy  nhất  cho  tất  cả  các  loại bộ dữ liệu,  những  thuật  toán  phân  cụm  mới  vẫn  liên tục được đề xuất. Kết quả là, người dùng phải chọn thuật toán thích hợp nhất từ  nhiều ứng viên để đạt được kết quả chính xác.   Trong thực tế, việc lựa chọn thuật toán phân cụm dữ liệu phù hợp là rất khó  khăn do người sử dụng thường không có một kiến thức tiên nghiệm về sự đa dạng  và phức tạp của dữ liệu. Để phần nào giảm bớt nhược điểm trên, các thuật toán phân  cụm dựa trên đồ thị được đề xuất do ưu điểm ở khả năng xử lý các bộ dữ liệu đa  dạng và có cấu trúc. Bản chất của các thuật toán này là biểu diễn dữ liệu dựa trên đồ  thị và phân cụm các thành phần theo các thuật toán thiết kế riêng.  Đồ thị là những cấu trúc toán học được sử dụng để đại diện cho mối quan hệ  giữa cặp đối tượng từ một tập hợp xác định. Đồ thị chứa đỉnh (đại diện cho các đối  tượng) và các cạnh nối các đỉnh (đại diện cho mối quan hệ giữa các đối tượng cặp).  Đây là phương pháp cấu trúc dữ liệu quan trọng được sử dụng trong rất nhiều lĩnh  vực như khai thác dữ liệu, xử lý ngôn ngữ tự nhiên, tìm kiếm thông tin và khai thác  thông tin. Trong phân cụm, sự tương đồng giữa các đối tượng được phân cụm có thể  được diễn tả như một đồ thị có trọng số. Trong đó, các đối tượng là các đỉnh và sự  tương đồng là trọng số của các cạnh. Bài toán phân cụm sẽ được đơn giản hóa về  bài toán phân cụm đồ thị mà nhiệm vụ chính là tách các đồ thị phụ dày đặc và kết  nối thưa thớt khỏi nhau dựa trên khái niệm của mật độ nội cụm so với khoảng cách  liên cụm.  Với những lý do trên, tác giả đã chọn đề tài “Phân cụm đồ thị liệu ứng dụng”  làm  đề  tài  nghiên  cứu  luận  văn  tốt  nghiệp  thạc  sĩ  chuyên  ngành  Khoa học máy tính.      48 Như vậy có thể hiểu khối lớp có 4/5 học sinh trên trung bình. Một cách chi tiết hơn,  ta có thể nói: trong 400 học sinh trên trung bình thì có 100 học sinh là trên 8.0, 200  học sinh là từ 6.5 đến cận 8.0, và 100 học sinh là từ 5.0 đến cận 6.0. Như vậy có thể  hiểu sâu sắc hơn rằng khối lớp có 1/5 học sinh giỏi, 2/5 học sinh khá v.v….    Như  vậy,  việc phân loại kết học tập học sinh nhà trường chuyện đơn giản. Nó đòi hỏi người đánh giá phải có một sự đầu tư,  nghiên cứu, tìm tòi và sáng tạo nhằm đưa ra được các phân tích, đánh giá đúng đắn  nhất, chính xác nhất về kết quả học tập của học sinh, từ đó đề ra định hướng, hoạch  định cho nhà trường trong việc: đầu tư bồi dưỡng giáo viên bộ môn còn yếu, phát  hiện học sinh giỏi để  bồi dưỡng, học sinh kém để phụ đạo, có kế  hoạch tăng giờ,  tăng tiết, định hướng nghề nghiệp cho học sinh dựa trên sở thích, năng khiếu môn  học v.v…    Tuy nhiên, việc đánh giá dựa người mang tính cứng nhắc, áp đặt.  Ví dụ luôn luôn chọn mức kém là dưới 5 điểm, mức giỏi là trên 8 điểm để phân học  sinh thành ba cụm kém, trung bình và giỏi. Mặt khác, nếu cần phân chia với số cụm  lớn hơn thì việc xác định mức điểm ranh giới giữa các cụm thường mang cảm tính,  không chính xác. Thực tế điều này phải được dựa trên phân bố của mẫu dữ liệu về  kết quả học tập. Nhược điểm này có thể được giải quyết nếu việc đánh giá thực máy với thuật toán phân cụm hợp lý mà phân cụm đồ thị lựa chọn cho đa số liệu [9].   Như đã trình bày trong chương 2, thuật toán phân cụm đồ thị quang phổ được  cho là một sự lựa chọn phù hợp cho đa số các bài toán phân cụm dữ liệu do tính đơn  giản, dễ cài đặt trong khi vẫn biểu diễn được dữ liệu dưới dạng có cấu trúc. Vì vậy,  học viên quyết định lựa chọn thuật toán này cho việc “phân tích, đánh giá kết quả  học tập của học sinh”. Bên cạnh đó, học viên cũng chứng minh hiệu quả của thuật  toán qua việc tiến hành đánh giá trên các bộ dữ liệu thường được cộng đồng khoa  học dùng làm tiêu chí so sánh các thuật toán phân cụm như: dữ liệu dạng Gauusian  2, 3 cụm, dữ liệu dạng hai nửa vầng trăng (đối xứng hoặc không đối xứng).      49 3.2 Xây dựng chương trình ứng dụng 3.2.1 Mục đích chương trình Chương trình ứng dụng được xây dựng với hai mục đích chính  - Đánh giá hiệu hoạt động thuật toán phân cụm đồ thị quang phổ: Để chứng minh hiệu quả hoạt động tốt của thuật toán phân cụm đồ thị quang  phổ, chương trình cho phép thực hiện phân cụm trên một số bộ mẫu dữ liệu có phân  bố đặc biệt với số cụm đã được biết trước.  - Chứng minh khả áp dụng thuật toán phân cụm đồ thị quang phổ cho toán phân loại học sinh: Dựa trên điểm trung bình của từng môn học  để  phân  cụm  dữ  liệu  nhằm  phân  loại,  đưa ra  cái  nhìn đa  dạng  hơn,  đa  chiều hơn,  nhiều góc độ khác nhau hơn về điểm số giúp cho các nhà quản lý giáo dục có thêm  cơ  sở  để  đánh  giá  đúng  đắn  nhất,  chính  xác  nhất    về  tình  hình  học  tập  của  học  sinh, hoạt động giảng dạy của giáo viên từ đó đề ra định hướng, hoạch định cho nhà  trường trong việc nâng cao chất lượng giáo dục.   3.2.2 Cơ sở liệu Để thực hiện chương trình, học viên đã chuẩn bị một số dữ liệu sau:  - Các dữ liệu để đánh giá thuật toán phân cụm: Bao gồm các dữ liệu theo  dạng  hai nửa vầng trăng  (đối  xứng  hoặc  không đối  xứng), dữ liệu dạng cụm  theo  phân bố Gaussian (đối xứng hoặc không đối xứng).   - Dữ liệu về điểm của học sinh: Cơ sở dữ liệu về học sinh đều được lưu trữ  trong phần mềm quản lý điểm ở các trường. Trong đó ngoài dữ liệu thông thường  có được từ phần mềm quản trị cơ sở dữ liệu, quan trọng nhất là điểm trung bình của  các môn học. Chiều của dữ liệu này bằng với số lượng môn học có điểm.  3.2.3 Các bước thực Để  thực  hiện  phân  cụm  theo  thuật  toán  quang  phổ  ta  phải  tiến  hành  các  bước sau:   Bước 1. Chuẩn bị cơ sở dữ liệu   Bước 2. Biểu diễn dữ liệu điểm của học sinh dưới dạng đồ thị  Trong bước này, ta có thể lựa chọn một số loại đồ thị để biểu diễn từ điểm số  của học sinh như:       50 - Đồ  thị  k  láng  giềng  (đối  xứng)  hoặc  không  đối  xứng  khi  quan  hệ  láng  giềng không phải là quan hệ một một. Khi chọn dạng đồ thị này ta cũng phải chọn  số lượng láng giềng cho mỗi đỉnh.  - Đồ thị Epsilon láng giềng (đối xứng hoặc không đối xứng)  Sau  khi  lựa  chọn  dạng  đồ  thị  cần  biểu  diễn,  ta  tiến  hành  xây  dựng  ma  trận  tương tự. Độ tương tự giữa hai điểm dữ liệu (hai đỉnh của đồ thị) sẽ được biểu diễn    dưới dạng:   s  xi , x j   exp  xi  x j / 2  trong đó    được gọi là độ rộng hạt.   Bước 3. Phân cụm dữ liệu từ kết quả biểu diễn  Sau khi biểu diễn dữ liệu dưới dạng đồ thị, tùy thuộc số lượng cụm K được  chỉ định. Ta tiến hành phân cụm dữ liệu. theo các bước:   Tính toán K giá trị vecto riêng v1….vk của ma trận tương tự dựa trên ma trận  Laplacian chuẩn hóa hoặc không chuẩn hóa.  - Xây dựng ma trận V với cột là các vecto riêng  - Biểu diễn các điểm dữ liệu Zi theo hàng của V  - Phân cụm các điểm Zi  nhờ thuật toán K mean  3.2.4 Môi trường cài đặt Chương trình ứng dụng  được xây dựng trên  giao  diện GUI  của phần  mềm  Matlab  2015a.  Sở  dĩ  học  viên  lựa  chọn  xây  dựng  phần  mềm  mô  phỏng  trên  Matlab vì đây là phần mềm chuyên dụng cho tính toán số liệu dưới dạng ma trận.  Ngoài ra, Matlab cũng tích hợp rất nhiều các công cụ hỗ trợ cho việc tính toán,  biểu diễn dữ liệu theo đồ thị. Các công bố về các phương pháp phân cụm dữ liệu  cũng đa phần sử dụng Matlab nên rất tiện cho việc so sánh và đánh giá hiệu quả  của các phương pháp.  3.2.5 Cài đặt Mã nguồn của chương trình bao gồm một số module chính như mô tả trong  Bảng 3.1.      51 Bảng 3.1 Các module chương trình Module Giải thích main.m  Cài  đặt  giao  diện  chính  của  chương  trình  ứng  main.fig  dụng, có hỗ trợ giao tiếp với người dùng Tính toán khoảng cách giữa các điểm, tính toán  Graphs.m   ma  trận  tương  tự  thể  hiện  quan  hệ  giữa  các  Graphs.fig  điểm, lựa chọn dạng đồ thị và biểu diễn dữ liệu  theo cấu trúc đồ thị  Chọn số lượng cụm, phân cụm dữ liệu đã biểu  SpectralClustering.m  diễn theo đồ thị dựa trên việc xác định K vecto  SpectralClustering.fig  riêng  và  biểu  diễn  mọi  điểm  dữ  liệu  theo  K  vecto riêng này.  3.3 Các chức chương trình 3.3.1 Chương trình   Hình 3.1 Màn hình chương trình Hình 3.1 mô tả giao diện chính của chương trình. Từ giao diện chính này cho  phép người sử dụng có thể minh họa quá trình biểu diễn dữ liệu điểm của học sinh  theo cấu trúc đồ thị nhờ thao tác Biểu diễn đồ thị liệu, Xem xét trực quan quá  trình phân cụm dữ liệu để đánh giá kết quả học tập khi click vào chức năng Phân cụm liệu.  Chức  năng  Kết  thúc  thực  hiện  việc  giải  phóng  các  biến  và  thoát  chương trình. Biểu diễn đồ thị dữ liệu.      52 3.3.2 Biểu diễn liệu theo đồ thị   Hình 3.2 Biểu diễn liệu theo đồ thị Hình 3.2 mô tả chi tiết việc biểu diễn dữ liệu điểm của học sinh theo đồ thị.  Số chiều của dữ liệu cần biểu diễn sẽ tương ứng với số lượng điểm trung bình của  các môn học (trong trường hợp này là 2). Từ các giá trị điểm, chương trình sẽ tính  ra ma trận tương tự (tương ứng với độ rộng hạt sigma) và hiển thị lên mật độ phân  bố của ma trận tương tự cũng như lược đồ phân bố của ma trận này. Tùy theo việc  lựa chọn dạng đồ thị mà kết quả biểu diễu dữ liệu sẽ khác nhau. Chương trình cho  phép  người  sử  dụng  có  thể  so  sánh  trực  quan  hai  kiểu  biểu  diễn  đồ  thị.  Như  trên  Hình 3.2 là đồ thị Epsilon có trọng số với giá trị    0.47266 và đồ thị KNN đối xứng  với số láng giềng hiện tại là k=5 (giá trị    và k có thể thay đổi nhờ thanh trượt). Sau  thao tác Cập nhật, ta có thể quan sát được bậc của các đỉnh đồ thị, ma trận kề cũng  như số điểm trên mỗi thành phần của hai loại đồ thị.  3.3.3 Phân cụm liệu đồ thị quang phổ   Hình  3.3  mô  tả  chi  tiết  các  bước  trong  việc  thực  hiện  phân  cụm  dữ  liệu.  Chương trình cho phép lựa chọn hai  loại dữ liệu để phân cụm, hoặc là dữ liệu để  kiểm tra tính đúng đắn của thuật toán, hoặc là dữ liệu điểm số thực của học sinh.      53   Hình 3.3 Phân cụm liệu đồ thị quang phổ với liệu vào liệu kiểm tra Để xác định xem thuật toán phân cụm có chính xác không, ta tạo 500 mẫu ra  dữ liệu ngẫu nhiên có phân bố dạng hai nửa vầng trăng có số chiều là 11 (một mẫu  dữ  liệu  gồm  11  thành  phần)  với  xác  suất  xuất  hiện  là  0,5  cho  mỗi  nửa  và  phương sai là 0.04 (đây là loại dữ liệu thường được sử dụng để đánh giá chung  cho  nhiều  thuật  toán  phân  cụm)  [7].  Lựa  chọn  loại  đồ  thị  biểu  diễn  là  đồ  thị  Epsilon láng giềng đối xứng với tham số Epsilon bằng 0.43. Ma trận tương tự  được tính với  độ  rộng hạt sigma  bằng  0.1.  Chương  trình sẽ  tính  toán  10 vecto  riêng của ma trận tương tự và hiển thị lên trên màn hình 5 vecto cùng với các  giá trị riêng tương ứng. Dữ liệu sẽ được biểu diễn theo các vecto riêng này và  được phân cụm theo K mean (như đã trình bày trong phần 2.4.2). Kết quả phân  cụm  với  số  cụm  N=2  là  chính  xác  theo  dữ  liệu  giả  định.  Điều  này  chứng  tỏ  thuật toán phân cụm đồ thị quang phổ hoạt động tốt.  Hình 3.4 mô tả kết quả hoạt động của chương trình phân cụm đối với bộ dữ  liệu  điểm  của  học  sinh  gồm  560  mẫu  với  số  chiều  là  3  (điểm  trung  bình  3  môn  Toán, Văn, Anh). Ở đây ta lựa chọn loại đồ thị biểu diễn là đồ thị K láng giềng đối  xứng với số lượng láng giềng là K=10. Ma trận tương tự được tính với độ rộng hạt  sigma bằng 1. Khi lựa chọn số lượng cụm là 3, thuật toán trả về kết quả là:      54 - Có 111 em với điểm trung bình ba môn nhỏ hơn 5.6 (biểu thị bằng màu xanh  dương)  - Có 385 em đạt kết quả điểm trung bình ba môn nhỏ hơn 7.6 và lớn hơn 5.6  (biểu thị bằng màu đỏ).  - Còn lại 64 em có kết quả điểm trung bình ba môn lớn hơn 7.6 (biểu thị bằng  màu đen).  Về mặt trực quan, có thể thấy việc phân dữ liệu với số cụm bằng 3 là tương  đối chính xác. Thêm vào đó, dựa trên kết quả thu được, nếu ta quyết định đánh giá  học  sinh  làm  ba  mức  thì  thuật  toán  sẽ  cho  ta  ba  cụm  với  các  giá  trị  giới  hạn  của  điểm trung bình của học sinh là 5.6 và 7.6. Điều này khó có thể thực hiện được khi  phân loại học sinh dựa theo cảm tính của con người.    Hình 3.4 Phân cụm liệu đồ thị quang phổ với liệu vào điểm học sinh 3.4 Đánh giá hiệu thuật toán phân cụm liệu đồ thị quang phổ   Sau khi  cài  đặt  chương  trình thử nghiệm,  luận  văn  tiến  hành  đánh  giá  hiệu  quả của thuật toán phân cụm đồ thị quang phổ trên một số mẫu dữ liệu lớn nhằm  làm rõ tốc độ hội tụ của thuật toán phân cụm đồ thị quang phổ với số lượng dữ liệu  lớn này.  Hình 3.5 và Hình 3.6 mô tả kết quả của thuật toán phân cụm dữ liệu đồ thị  quang  phổ  đối  với  dữ  liệu  dạng  ba  cụm  Gaussian  với  kích  thước  đều  (Hình  3.5)      55 hoặc không đều (Hình 3.6). Kết quả đều cho thấy sự chính xác khi phân cụm của  thuật toán. Thời gian hoạt động của thuật toán đến khi cho ra kết quả phân cụm là  nhỏ hơn 1s. Điều này cho thấy tốc độ hội tụ của thuật toán là rất nhanh.                     Hình 3.5 Kết phân cụm liệu dạng ba cụm Gaussian với 1000 mẫu liệu                     Hình 3.6 Kết phân cụm liệu dạng ba cụm Gaussian với độ lớn 100, 1000, 3000 mẫu liệu Hình 3.7 minh họa kết quả của thuật toán với dữ liệu vào là 7500 mẫu theo  dạng hai nửa vầng trăng. Có thể thấy rằng, khi dữ liệu lớn sẽ làm cho thời gian tính  toán tăng và tốc độ hội rụ của thuật toán giảm. Tuy nhiên, so với kích thước lớn của  mẫu dữ liệu đầu vào, thời gian tính toán chỉ là 1,09 s (vẫn là nhỏ khi áp dụng vào  thực tế)      56                     Hình 3.7 Kết phân cụm liệu dạng hai nửa vầng trăng với kích thước liệu ba cụm Gaussian với độ lớn 7500 mẫu liệu Trong Hình 3.8, luận văn cũng so sánh kết quả của thuật toán phân cụm dữ  liệu đồ thị quang phổ đối với thuật toán K mean truyền thống. Có thể kết luận trong  trường  hợp  này, thuật  toán  phân  cụm  đồ thị  quang  phổ  cho  kết  quả  phân  cụm  tốt  hơn thuật toán K mean truyền thống.    Hình 3.8 Kết phân cụm liệu dạng hai nửa vầng trăng với hai thuật toán K mean (trái) đồ thị quang phổ (phải)   Tiếp theo, luận văn tập trung phân loại kết quả học tập của học sinh dựa trên  chương trình cài đặt.       57   Hình 3.9 Kết phân cụm liệu điểm học sinh với số cụm khác   Hình 3.9 thể hiện dữ liệu điểm thu thập được của 200 mẫu điểm trung bình 6  môn học (Toán, Lý, Hóa, Anh, Văn, Sinh) của học sinh phổ thông (mỗi mẫu dữ liệu  có số chiều là 6). Dựa trên kết quả điểm thu được, chương trình sẽ tính toán ma trận  tương  tự  của  bộ  mẫu  dữ  liệu  và  biểu  diễn  dữ  liệu  theo  dạng  đồ  thị  K  láng  giềng  (K=10). Tiếp đó là các kết quả khi phân cụm với số cụm lần lượt là 2, 3, 4 và 5. Kết  quả này cho phép phân lực học của sinh viên theo các nhóm khác nhau tùy thuộc  yêu cầu người đánh giá. Chọn số cụm là 2 khi muốn chia lớp làm 2 nhóm giỏi và  bình thường. Khi số cụm là 5 ta có thể phân lớp thành các nhóm yếu, kém, trung  bình, khá, giỏi. Trong  trường hợp phân bộ dữ liệu trên thành 5 cụm kết  quả phân  loại trả về 5 lớp như sau:  - Có  46  em  học  lực  yếu  với  điểm  trung  bình  sáu  môn  nhỏ  hơn  3.1  (biểu  thị  bằng màu xanh nước biển)  - Có 31 em đạt học lực kém kết quả điểm trung bình sáu môn nhỏ nằm trong  khoảng từ 3.1 đến 4.7 (biểu thị bằng màu xanh lá cây).  - Có 48 em học lực trung bình có kết quả điểm trung bình sáu môn nằm trong  khoảng từ 4.7 đến 7.2 (biểu thị bằng màu đen).  - Có 24 em học lực khá có kết quả điểm trung bình sáu môn nằm trong khoảng  từ 7.2 đến 8.5 (biểu thị bằng màu xanh dương).      58 - Còn lại 51 em học lực giỏi có kết quả điểm trung bình sáu môn lớn hơn 8.5  (biểu thị bằng màu đỏ).  3.5 Kết luận chương Nội dung chương 3 trình bày về việc thiết kế chương trình ứng dụng đánh giá  kết quả học tập của học sinh dựa trên thuật toán phân cụm dữ liệu đồ thị quang phổ  nhằm  phân  tích,  đánh  giá  kết  quả  học  tập  của  học  sinh  dựa  trên  điểm  trung  bình  môn. Kết quả phân cụm này bước đầu ít nhiều có thể giúp cho Ban giám hiệu nhà  trường,  các  nhà  quản  lý  giáo  dục  có  được  một  cái  nhìn  nhiều  chiều  hơn,  đa  dạng  hơn, nhiều góc cạnh hơn về điểm số của học sinh từ đó thu được một số kết quả như  : việc phân lớp, lựa chọn học sinh giỏi để bồi dưỡng, phát hiện học sinh yếu kém để  phụ đạo … cũng như đề ra kế hoạch giảng dạy, tăng giờ tăng tiết, định hướng nghề  nghiệp cho học sinh qua việc chọn ban và khối thi Đại học v.v…   Các bước phân tích, tiến hành đã được nội dung chương mô tả chi tiết. Từ việc  xây dựng ma trân độ đo tương tự giữa các điểm dữ liệu n chiều, đến việc xác định  các vecto riêng, biểu diễn bằng các loại đồ thị khác nhau và phân cụm với số lượng  cụm tùy chọn.  Bên  cạnh  đó,  nội  dung  chương  cũng  đánh  giá  hiệu  quả  hoạt  động  của  thuật  toán phân cụm dữ liệu đồ thị quang phổ trên các tập mẫu dữ liệu có phân bố phức  tạp như: Dữ liệu có dạng hai nửa vầng trăng (cân bằng và không cân bằng), dữ liệu  có dạng hai hoặc ba cụm Gaussian (cân bằng hoặc không cân bằng). Đây là các mẫu  dữ liệu thường được các công trình công bố trong và ngoài nước sử dụng để đánh  giá hiệu quả của các thuật toán phân cụm, từ đó tạo căn cứ khẳng định các đánh giá  về hiệu quả hoạt động của thuật toán phân cụm dữ liệu đồ thị quang phổ.                59 KẾT LUẬN HƯỚNG PHÁT TRIỂN   Sau một thời gian tìm hiểu nghiên cứu, luận văn đã trình bày được các vấn đề  sau theo đúng đề cương đưa ra:  - Nghiên cứu tổng quan và đánh giá các phương pháp phân cụm, nghiên cứu  sâu về phương pháp phân cụm dữ liệu dựa trên đồ thị.   - Nghiên cứu một số thuật toán của phương pháp phân cụm dựa trên đồ thị  như: Chameleon, phân cụm đồ thị quang phổ (Spectral Clustering), phân cụm phân  cấp theo đồ thị (thuật toán AntTree và SOMTree). Đánh giá các ưu và nhược điểm  của mỗi thuật toán.  - Cài đặt phần mềm thử nghiệm mô phỏng chương trình phân tích đánh giá  kết quả học tập của học sinh theo thuật toán phân cụm đồ thị quang phổ, đánh giá  hiệu quả hoạt động của thuật toán này.  Trong quá trình tìm hiểu và hoàn thành luận văn, dù đã đạt được một số kết  quả nhất định về kiến thức, về thực tế, nhưng bản thân học viên nhận thấy phân cụm  trong khai phá dữ liệu vẫn là một lĩnh vực nghiên cứu còn quá rộng lớn và còn đầy  triển vọng bao hàm nhiều phương pháp, kỹ thuật, nhiều hướng nghiên cứu, tiếp cận  khác  nhau.  Vì  vậy,  trên  cơ  sở  những  gì  mà  luận  văn  đã  thực  hiện  và  đạt  được,  hướng phát triển sau này của luận văn như sau:    - Về thực tiễn: sẽ phát triển thành bài toán với số dữ liệu lớn hơn, bao quát  hơn, nhiều chọn lựa hơn. Đưa thêm các phương pháp tìm kiến tối ưu nhằm hỗ trợ  xác định các tham số phù hợp như dạng đồ thị cần biểu diễn, số lượng láng giềng,  độ rộng hạt sigma.  - Về lý thuyết: tiếp tục nghiên cứu tiếp các phương pháp, các cách tiếp cận  mới về phân cụm dữ liệu như: phân cụm thống kê, phân cụm khái niệm, phân cụm  mờ, phân cụm mạng KOHONEN… tìm kiếm, so sánh và chọn lựa thuật toán tối ưu  nhất để giải quyết bài toán đã đưa ra.       60 Mặc dù đã cố gắng tập trung nghiên cứu và tham khảo nhiều tài liệu, bài báo,  tạp  chí  khoa  học  trong  và  ngoài  nước,  nhưng  do  trình  độ  còn  có  nhiều  giới  hạn  không thể tránh khỏi thiếu sót và hạn chế, rất mong được sự chỉ bảo đóng góp nhiều  hơn nữa của các quý thầy cô giáo và các nhà khoa học…   Một lần nữa học viên xin được cảm ơn  Thầy giáo PGS. TS. Đoàn Văn Ban đã  tận tình giúp đỡ, hướng dẫn trong thời gian thực hiện đề tài, cảm ơn sự giúp đỡ của  gia đình, bạn bè và các đồng nghiệp trong thời gian qua.  Thái Nguyên ngày 14 tháng 06 năm 2016 Người thực     Trần Hà Phương         61 TÀI LIỆU THAM KHẢO   Tài liệu tiếng Việt [1] N. H. T. Anh, Giáo trình Khai thác liệu ứng dụng, Đại học KHTN TP  Hồ Chí Minh, 2009.  [2] T. Q. Chiến, Giáo trình lý thuyết đồ thị ứng dụng, Đại Học Đà Nẵng, 2007.  [3] Vũ  Lan  Phương  (2006),  Nghiên cứu cài đặt số giải thuật phân cụm phân lớp, Luận văn thạc sĩ, Đại học Bách khoa Hà Nội.  Tài liệu tiếng Anh [4] D.  J.  C.  L.  B.  H.  Istvan  Jonyer,  "Graph-Based  Hierarchical  Conceptual  Clustering," Journal of Machine Learning Research, vol. 2, pp. 19-43, 2001.  [5] D. N. Quang, "New models for hierarchical and topological clustering, Ph D  Thesis," PARIS 13 UNIVERSITY - SORBONNE PARIS CITÉ, 2013.  [6] J.  H.  a.  M.  Kamber,  Data Mining Concepts and Techniques,  Canada:  Intelligent  Database  Systems  Research  Lab  School  of  Computing  Science,  Simon Fraser University, 2007, p. Chapter 1 & Chapter 8.  [7] M.  Matteucci,  "A Tutorial on Clustering Algorithms,"  [Online].  Available:  http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/index.html.  [8] O.  R.Zaiane,  Principles of knowledge discovery in databases,  University  of  Alberta, Fall 2001.   [9] S. E. Schae er., "Graph clustering," Computer Science Review, vol. 1, no. 1,  p. 27–64, August 2007.  [10] U. Luxburg, "A tutorial on spectral clustering," Statistics and Computing, vol.  17, December 2007.   [11] G.  V.  A.  O.  e.  C.  G.  Hanene  Azzag,  "A  hierarchical  ant  based  clustering  algorithm  and  its  use  in  three  real-world  applications,"  European Journal of Operational Research, vol. 179, no. 3, June 2007.   [12] T. Kohonen, Self-Organizing Maps, Third Edition, Heidelberg: Springer, 2001.       62 Các trang Web [13] http://www.ml.uni-saarland.de/code/GraphDemo/GraphDemo.htm.   [14] http://en.wikipedia.org/wiki/Cluster_analysis  [15] http://en.wikipedia.org/wiki/Graph_partition    [...]... Nghiên cứu về bài toán phân cụm dữ liệu;  Giới thiệu một số phương pháp  phân cụm dữ liệu phổ  biến như: phân cụm phân hoạch, phân cụm phân cấp, phân cụm dựa  trên  mật  độ,  phân cụm dựa  trên  lưới,  phân cụm dựa  trên  mô  hình,  phân cụmdữ liệu ràng buộc đánh giá các ưu nhược điểm của mỗi phương pháp.   Chương 2: Thuật toán phân cụm đồ thị dữ liệu Trình  bày  phương  pháp  phân cụm dữ liệu dựa  trên  đồ thị một  số  thuật  toán  như:  Thuật toán ... hết  những  cơ  sở  dữ liệu thực  đều chứa đựng dữ liệu ngoại lai, dữ liệu lỗi, dữ liệu chưa biết hoặc dữ liệu sai. Một  số thuật toán phân cụm nhạy cảm với dữ liệu như vậy có thể dẫn đến chất lượng  phân cụm thấp.    - Ít  nhạy  cảm  với  thứ  tự  của  các  dữ liệu vào:  một  số  thuật  toán  phân cụm nhạy cảm với thứ tự của dữ liệu vào, ví dụ như với cùng một tập dữ liệu,  khi được  đưa ra với các thứ tự khác nhau thì với cùng một thuật toán có thể sinh ra các cụm ... của tầng vào tương ứng với mỗi thuộc tính của bản ghi, mỗi một nơron vào kết nối  với tất cả các nơron của tầng ra. Mỗi liên kết được gắn liền với một trọng số nhằm  xác định vị trí của nơron ra tương ứng.    1.4 Các ứng dụng của phân cụm dữ liệu Phân cụm là một công cụ quan trọng trong một số ứng dụng.  Sau đây là một  số ứng dụng của nó:    - Giảm dữ liệu:  Giả sử ta có một lượng lớn dữ liệu (N). Phân cụm sẽ nhóm  các dữ liệu này thành m cụm dữ liệu dễ nhận thấy m  ... Hình 3.2. Biểu diễn dữ liệu theo đồ thị  52  Hình 3.3. Phân cụm dữ liệu đồ thị quang phổ với dữ liệu vào là dữ liệu kiểm tra   53  Hình 3.4. Phân cụm dữ liệu đồ thị quang phổ với dữ liệu vào là điểm học sinh ... 1: Tổng quan phân cụm liệu - Nghiên cứu về bài toán phân cụm dữ liệu;  Giới thiệu một số phương pháp  phân cụm dữ liệu phổ  biến như: phân cụm phân hoạch, phân cụm phân cấp, phân cụm dựa  trên ... QUAN VỀ PHÂN CỤM DỮ LIỆU   4  1.1  Khái niệm, mục tiêu và các bước cơ bản của phân cụm dữ liệu  4  1.1.1  Phân cụm dữ liệu là gì?   4  1.1.2  Các mục tiêu của phân cụm dữ liệu

Ngày đăng: 09/12/2016, 17:56

Từ khóa liên quan

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

Tài liệu liên quan