1. Trang chủ
  2. » Luận Văn - Báo Cáo

ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH

26 1,3K 8

Đ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

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 612,71 KB

Nội dung

ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH Bố cục luận văn gồm 3 chương: Chương 1: Tìm hiểu tổng quan về khai phá dữ liệu và kỹ thuật phân cụm dữ liệu trong KPDL. Chương 2: Tìm hiểu một số thuật toán điển hình trong phân cụm dữ liệu. Chương 3: Ứng dụng thuật toán kmeans để thử nghiệm phân cụm trên dữ liệu điểm của học sinh.

Trang 2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: GS.TS Vũ Đức Thi

Phản biện 1: ………

Phản biện 2: ………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc: giờ ngày tháng năm

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Trang 3

MỞ ĐẦU Khai phá dữ liệu đã và đang được nghiên cứu, ứng dụng nhiều trong các lĩnh vực khác nhau và mang lại những lợi ích to lớn Những vấn

đề được quan tâm trong khai phá dữ liệu là phân lớp, luật kết hợp, phân cụm

Ngành giáo dục nói chung và các trường học nói riêng có lượng dữ liệu lưu trữ khá lớn nhưng việc phân tích, đánh giá để đưa ra các chiến lược phát triển phù hợp, cung cấp chất lượng giáo dục tốt hơn và hỗ trợ các hoạt động quản lí hiện nay chưa thực sự được quan tâm đúng mức và khai thác

có hiệu quả

Với những lý do như vậy tôi chọn đề tài “Ứng dụng phân cụm dữ

liệu trong phân tích, đánh giá kết quả điểm của học sinh” làm đề tài luận

văn tốt nghiệp

Bố cục luận văn gồm 3 chương:

Chương 1: Tìm hiểu tổng quan về khai phá dữ liệu và kỹ thuật phân cụm dữ liệu trong KPDL

Chương 2: Tìm hiểu một số thuật toán điển hình trong phân cụm

dữ liệu

Chương 3: Ứng dụng thuật toán k-means để thử nghiệm phân cụm trên dữ liệu điểm của học sinh

Trang 4

CHƯƠNG I TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ

PHÂN CỤM DỮ LIỆU

1.1 Khai phá dữ liệu

1.1.1 Giới thiệu về Khai phá dữ liệu

Khai phá dữ liệu (Data Mining) là một khái niệm ra đời vào những năm cuối thập kỷ 80 của thế kỉ XX Khai phá dữ liệu là một lĩnh vực được nghiên cứu nhằm tự động khai thác thông tin, tri thức mới hữu ích, tiềm ẩn

từ các CSDL lớn, kho dữ liệu…

Khai phá dữ liệu là lĩnh vực đã và đang trở thành một trong những hướng nghiên cứu thu hút được sự quan tâm của nhiều chuyên gia về CNTT trên thế giới Trong những năm gần đây, rất nhiều các phương pháp và thuật toán mới về KPDL liên tục được công bố Điều này chứng tỏ những

ưu thế, lợi ích và khả năng ứng dụng thực tế to lớn của khai phá dữ liệu

1.1.2 Quá trình khai phá dữ liệu

Về bản chất khai phá dữ liệu là giai đoạn duy nhất tìm ra được những thông tin mới, tiềm ẩn trong CSDL và chủ yếu phục vụ cho quá trình

Trang 5

1.1.3 Các kỹ thuật khai phá dữ liệu

Với mục đích mô tả và dự đoán, các kỹ thuật thường sử dụng là:

- Luật kết hợp (Association rules)

- Phân cụm (Clustering)

- Phân lớp (Classfication)

- Hồi quy (Regression)

- Cây quyết định (Decision Trees)

- Mạng nơ-ron (Neural Network)

- Trực quan hóa (Visualization)

- Biểu diễn mô hình (Model Evaluation)

- Phương pháp tìm kiếm (Search Method)

- Phân tích theo trình tự thời gian (Time series Analysis)

1.1.4 Ứng dụng của Khai phá dữ liệu

1.1.5 Các xu thế và vấn đề cần giải quyết trong khai phá

dữ liệu

1.2 Kỹ thuật phân cụm trong Khai phá dữ liệu

1.2.1 Tổng quan về kỹ thuật phân cụm

Phân cụm dữ liệu là quá trình nhóm một tập các đối tượng tương tự nhau trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng

Phân cụm dữ liệu là một kỹ thuật trong KPDL nhằm tìm kiếm, phát hiện các cụm, các mẫu dữ liệu tự nhiên tiềm ẩn và quan trọng trong tập

dữ liệu lớn để từ đó cung cấp thông tin, tri thức cho việc ra quyết định

Trang 6

Phân cụm dữ liệu còn có thể được sử dụng như một bước tiền xử lí cho các thuật toán khai phá dữ liệu khác như là 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

1.2.2 Một số khái niệm cần thiết khi tiếp cận phân cụm dữ liệu

1.2.2.1 Các kiểu dữ liệu và thuộc tính trong phép phân cụm 1.2.2.2 Đo độ tương đồng

1.2.3 Các yêu cầu đối với kỹ thuật phân cụm dữ liệu

- Có khả năng mở rộng

- Thích nghi với các kiểu dữ liệu khác nhau

- Khám phá ra các cụm với hình thù bất kỳ

- Tối thiểu lượng tri thức cần cho xác định các tham số vào

- Khả năng thích nghi với dữ liệu nhiễu cao

- Ít nhạy cảm với các tham số đầu vào

- Thích nghi với dữ liệu đa chiều

- Dễ hiểu, dễ cài đặt và khả thi

1.2.4 Các hướng tiếp cận trong phân cụm dữ liệu

1.2.4.1 Phương pháp phân hoạch (Partitioning Methods) chia một tập hợp dữ liệu có n phần tử thành k nhóm cho đến khi xác định số các cụm được thiết lập Số các cụm được thiết lập là các đặc trưng được lựa chọn trước Phương pháp này là tốt cho việc tìm các cụm hình cầu trong không gian Euclid

1.2.4.2 Phương pháp phân cụm phân cấp (Hierarchical Methods) xây dựng một phân cấp trên cơ sở các đối tượng dữ liệu đang xem

Trang 7

xét Phương pháp này là có thể làm việc tốt với các tập dữ liệu lớn nhưng khó khăn với các cụm có hình dạng lồi

1.2.4.3 Phương pháp phân cụm dựa trên mật độ Based Methods) nhóm các đối tượng dữ liệu dựa trên hàm mật độ xác định, mật độ là số các đối tượng lân cận của một đối tượng dữ liệu theo một nghĩa nào đó Phương pháp phân cụm dựa trên mật độ của các đối tượng để xác định các cụm dữ liệu có thể phát hiện ra các cụm dữ liệu với hình thù bất

Trang 8

CHƯƠNG II MỘT SỐ THUẬT TOÁN PHÂN CỤM DỮ LIỆU

ĐIỂN HÌNH 2.1 Các thuật toán phân cụm phân hoạch

2.1.1 Thuật toán K-means

Đầu vào: Một CSDL gồm n đối tượng và số các cụm k

Đầu ra: Các cụm Ci (i=1, ,k) sao cho hàm tiêu chuẩn E đạt giá trị tối thiểu

Bước 1: Khởi tạo

Chọn k đối tượng mj (j=1 k) là trọng tâm ban đầu của k cụm từ tập dữ liệu Bước 2: Tính toán khoảng cách

Đối với mỗi đối tượng Xi (i=1, ,n) , tính toán khoảng cách từ nó tới mỗi trọng tâm mj với j=1, ,k; sau đó tìm trọng tâm gần nhất đối với mỗi đối tượng

Bước 3: Cập nhật lại trọng tâm

Đối với mỗi j=1, ,k; cập nhật trọng tâm cụm mj bằng cách xác định trung bình

cộng của các véc-tơ đối tượng dữ liệu

Bước 4: Điều kiện dừng

Lặp các bước 2 và 3 cho đến khi các trọng tâm của cụm không thay đổi

2.1.2 Thuật toán PAM

Đầu vào: Số cụm k và một cơ sở dữ liệu D chứa n đối tượng

Đầu ra: Một tập k cụm đã tối thiểu hoá tổng các độ đo không tương đồng của tất cả các đối tượng tới medoid gần nhất của chúng

Trang 9

4 Lựa chọn ngẫu nhiên một đối tượng không điển hình orandom

5 Tính hàm mục tiêu S (tổng các độ đo tương đồng của tất cả các đối tượng tới medoid gần nhất cùa chúng) bằng việc tráo đổi oj với orandom;

6 Nếu S<0 tráo đổi oj với orandom để tạo thành các tập mới của k đối tượng đại diện;

7 Until không có sự thay đổi nào

Kết thúc

2.1.3 Thuật toán CLARANS

For i=1 to numlocal do

Chọn ngẫu nhiên một láng giềng R của S

Tính toán độ phi tương tự về khoảng cách giữa 2 láng giềng S và R

Nếu R có chi phí thấp hơn thì hoán đối R cho S và j=1

ngược lại j++;

End;

Trang 10

Kiểm tra khoảng cách của phân hoạch S có nhỏ hơn khoảng cách nhỏ nhất không, nếu nhỏ hơn thì lấy giá trị này để cập nhật lại khoảng cách nhỏ nhất

và phân hoạch S là phân hoạch tốt nhất tại thời điểm hiện tại

End

2.2 Các thuật toán phân cụm phân cấp

2.2.1 Thuật toán BIRCH

Bước 1: Duyệt tất cả các đối tượng trong CSDL và xây dựng một cây CF khởi tạo Một đối tượng được chèn vào nút lá gần nhất tạo thành cụm con Nếu đường kính của cụm con này lớn hơn T thì nút lá được tách Khi một đối tượng thích hợp được chèn vào nút lá, tất cả các nút trỏ tới gốc của cây được cập nhật với các thông tin cần thiết

Bước 2: Nếu cây CF hiện thời không có đủ bộ nhớ trong thì tiến hành xây dựng một cây CF nhỏ hơn bằng cách điều khiển bởi tham số T (vì tăng T

sẽ làm hoà nhập một số các cụm con thành một cụm, điều này làm cho cây

CF nhỏ hơn) Bước này không cần yêu cầu bắt đầu đọc dữ liệu lại từ đầu nhưng vẫn đảm bảo hiệu chỉnh cây dữ liệu nhỏ hơn

Bước 3: Thực hiện phân cụm: Các nút lá của cây CF lưu giữ các đại lượng thống kê của các cụm con Trong bước này, BIRCH sử dụng các đại lượng thống kê này để áp dụng một số kỹ thuật phân cụm thí dụ như k-means và tạo ra một khởi tạo cho phân cụm

Bước 4: Phân phối lại các đối tượng dữ liệu bằng cách dùng các đối tượng trọng tâm cho các cụm đã được khám phá từ bước 3: Đây là một bước tuỳ chọn để duyệt lại tập dữ liệu và gán nhãn lại cho các đối tượng dữ liệu tới các trọng tâm gần nhất Bước này nhằm để gán nhãn cho các dữ liệu khởi tạo và loại bỏ các đối tượng ngoại lai

Trang 11

2.2.2 Thuật toán CURE

Bước 1 Chọn một mẫu ngẫu nhiên từ tập dữ liệu ban đầu;

Bước 2 Phân hoạch mẫu này thành nhiều nhóm dữ liệu có kích thước bằng nhau: Ý tưởng chính ở đây là phân hoạch mẫu thành p nhóm dữ liệu bằng nhau, kích thước của mỗi phân hoạch là n'/p (với n' là kích thước của mẫu); Bước 3 Phân cụm các điểm của mỗi nhóm: Ta thực hiện PCDL cho các nhóm cho đến khi mỗi nhóm được phân thành n'/(pq)cụm (với q>1); Bước 4 Loại bỏ các phần tử ngoại lai: Trước hết, khi các cụm được hình thành cho đến khi số các cụm giảm xuống một phần so với số các cụm ban đầu Sau đó, trong trường hợp các phần tử ngoại lai được lấy mẫu cùng với quá trình pha khởi tạo mẫu dữ liệu, thuật toán sẽ tự động loại bỏ các nhóm nhỏ

Bước 5 Phân cụm các cụm không gian: Các đối tượng đại diện cho các cụm di chuyển về hướng trung tâm cụm, nghĩa là chúng được thay thế bởi các đối tượng gần trung tâm hơn

Bước 6 Đánh dấu dữ liệu với các nhãn tương ứng

2.3 Các thuật toán phân cụm dựa trên mật độ

2.3.1 Thuật toán DBSCAN

Input: Tập dữ liệu D chứa n đối tượng, ε là tham số bán kính và MinPts ngưỡng mật độ láng giềng

Output: Tập các cụm dựa trên mật độ

(1) đánh dấu tất cả các đối tượng là chưa thăm;

(2) lặp

(3) lựa chọn ngẫu nhiên một đối tượng chưa thăm p;

Trang 12

(4) đánh dấu đã thăm p;

(5) nếu các ε láng giềng của p có ít nhất MinPts đối tượng

(6) tạo mới một cụm C và thêm p vào C;

(7) cho N là tập các đối tượng trong ε láng giềng của p;

(8) lặp: với mỗi điểm p’ trong N

(9) nếu p’chưa thăm

(10) đánh dấu p’ đã thăm;

(11) nếu ε láng giềng của p’ có ít nhất MinPts điểm,

thêm những điểm này đến N;

(12) nếu p’không phải là thành viên của bất kỳ cụm nào, thêm p’ vào C; (13) kết thúc lặp

(14) đưa ra C;

(15) ngược lại đánh dấu p như là nhiễu;

(16) cho đến khi thăm hết các đối tượng;

2.3.2 Thuật toán DENCLUDE

DENCLUDE là phương pháp dựa trên một tập các hàm phân phối mật độ và được xây dựng trên các ý tưởng như sau :

- Sự ảnh hưởng của mỗi điểm dữ liệu có thể biểu diễn dưới dạng

mô hình qua hàm toán học, được gọi là hàm ảnh hưởng (influence fuction), dùng để mô tả tác động của điểm dữ liệu với các đối tượng láng giềng của nó; - Mật độ toàn cục của không gian dữ liệu có thể được mô hình hóa

là tổng các hàm ảnh hưởng của tất cả các điểm dữ liệu;

- Các cụm có thể xác định theo toán học bằng việc xác định các điểm mật độ cao (density attractors), trong đó điểm mật độ cao là các điểm cực đại hàm mật độ toàn cục

Trang 13

2.4 Các thuật toán phân cụm dựa trên lưới

2.4.1 Thuật toán STING

Bước 6 Nếu đặc tả được câu truy vấn, chuyển sang bước 8; nếu không thì chuyển sang bước 7

Bước 7 Truy lục lại dữ liệu vào trong các ô liên quan và thực hiện xử lý Trả lại kết quả phù hợp yêu cầu của truy vấn Chuyển sang Bước 9 Bước 8 Tìm thấy các miền có các ô liên quan Trả lại miền mà phù hợp với yêu cầu của truy vấn Chuyển sang bước 9

Bước 9 Dừng

2.4.2 Thuật toán CLIQUE

Bước 1: Phân hoạch tập dữ liệu thành các hình hộp chữ nhật và tìm các hình hộp chữ nhật đặc (nghĩa là các hình hộp này chứa một số các đối tượng dữ liệu trong số các đối tượng láng giềng cho trước)

Bước 2: Xác định không gian con chứa các cụm được sử dụng nguyên lý Apriori

Trang 14

Bước 3: Hợp các hình hộp này tạo thành các cụm dữ liệu

Bước 4: Xác định các cụm: Trước hết nó tìm các ô đặc đơn chiều, tiếp đến chúng tìm các hình chữ nhật 2 chiều, rồi 3 chiều,…, cho đến khi hình hộp chữ nhật đặc k chiều được tìm thấy

2.5 Các thuật toán phân cụm dựa trên mô hình

Trang 15

2.5.2 Thuật toán COBWEB

1) Khởi tạo cây bắt đầu bằng một nút rỗng

2) Sau khi thêm vào từng nút một và cập nhật lại cây cho phù hợp tại mỗi

2.5.3 Thuật toán SOM

Bước 1: Khởi tạo

Chọn giá trị ngẫu nhiên cho các véc-tơ trọng lượng ban đầu wj

Bước 2: Lấy mẫu

Lấy một mẫu huấn luyện véc-tơ x từ tập huấn luyện

Trang 16

2.6 Các thuật toán phân cụm có dữ liệu ràng buộc

2.6.1 Thuật toán K-Prototype

Input: Tập dữ liệu ban đầu X và số cụm k

Output: k đối tượng mẫu sao cho hàm tiêu chuẩn đạt giá trị tối thiểu Bước 1: Khởi tạo k đối tượng mẫu ban đầu cho X, mỗi đối tượng mẫu đóng vai trò là tâm đại diện của mỗi cụm

Bước 2: Phân phối mỗi đối tượng trong X cho mỗi cụm sao cho chúng gần nhất với đối tượng mẫu trong cụm, đồng thời cập nhật lại đối tượng mẫu cho mỗi cụm

Bước 3: Sau khi tất cả các đối tượng đã được phân phối hết cho các cụm, kiểm tra lại độ tương tự của các đối tượng trong mỗi cụm với các đối tượng mẫu, nếu có một đối tượng mẫu tương tự nhất với nó mà khác với đối tượng mẫu của cụm hiện thời thì di chuyển đối tượng đang xét này sang cụm tương ứng với đối tượng mẫu mà nó gần nhất

và đồng thời cập nhật các đối tượng mẫu cho hai cụm này

Bước 4: Lặp bước 3 cho đến khi không có đối tượng nào thay đổi sau khi đã kiểm tra toàn bộ các đối tượng

2.6.2 Thuật toán COP-KMeans

Input: - Tập các đối tượng dữ liệu

- Số lượng cụm: K

- Tập ràng buộc must-link và cannot-link

Output: K phân hoạch tách rời sao cho hàm mục tiêu được tối ưu Bước 1 Khởi tạo các cụm: các tâm ban đầu được chọn ngẫu nhiên sao cho không vi phạm ràng buộc đã cho

Trang 17

Bước 2 Lặp cho tới khi hội tụ

Bước 2.1 Gán cụm : gán mỗi đối tượng dữ liệu vào trong cụm gần

nhất sao cho không vi phạm ràng buộc

Bước 2.2 Ước lượng tâm: cập nhật lại tâm là trung bình của tất cả

đối tượng nằm trong cụm của tâm đó

Bước 2.3 t = t+1

Kết luận chương

Chương 2 tìm hiểu về một số thuật toán điển hình trong phân cụm

dữ liệu Mỗi một thuật toán có độ chính xác riêng và khả năng thực hiện trên từng kích thước dữ liệu là khác nhau Điều này còn tùy thuộc vào cách

tổ chức dữ liệu ở bộ nhớ chính, bộ nhớ ngoài,… của các thuật toán Khai phá dữ liệu sẽ hiệu quả hơn khi bước tiền xử lý, lựa chọn thuộc tính, mô hình được giải quyết tốt

Sau đây là tổng hợp các đặc tính của các phương pháp và các thuật toán PCDL nhằm làm căn cứ cho việc lựa chọn phương pháp khi phát triển các ứng dụng khác Tùy vào từng ứng dụng và căn cứ vào các đặc tính của thuật toán ta có thể tìm được các thuật toán phù hợp để áp dụng cho bài toán thực tế

Trang 18

CHƯƠNG 3 ỨNG DỤNG THUẬT TOÁN PHÂN CỤM K-MEANS TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ

ĐIỂM CỦA HỌC SINH

Trang 19

Dựa vào những kết quả phân cụm người quản lí sẽ có những định hướng cho việc dạy và học của giáo viên và học sinh, đánh giá được năng lực học tập hiện tại của các nhóm học sinh dựa trên CSDL đưa vào

3.2.2 Lựa chọn thuật toán

Trong các thuật toán phân cụm dữ liệu đã tìm hiểu ở Chương 2 thì thuật toán k-means có tốc độ tương đối nhanh, thích hợp với dữ liệu số khi không có phần tử nhiễu Dữ liệu điểm của học sinh trong trường phổ thông hiện nay đáp ứng tốt yêu cầu của thuật toán k-means (dữ liệu số, điểm số trong khoảng từ 0-10, không có phẫn tử nhiễu) Vì vậy, tôi đã chọn thuật toán k-means để áp dụng cho bài toán này

3.2.3 Chương trình ứng dụng

Các chức năng chính của chương trình:

- Nhập và xem dữ liệu: Dữ liệu ĐTB trên các tệp Excel được nhập (Import) và được lưu trữ trên SQL-Server để tiện sử dụng Sau khi nhập dữ liệu người sử dụng có thể xem lại dữ liệu theo từng năm học và từng khối lớp

- Phân cụm dữ liệu theo ĐTB cả năm hoặc phân cụm theo ĐTB một hoặc nhiều môn học: Chương trình cho phép chọn năm học, khối lớp cần phân tích, số cụm muốn phân tích, các môn học được phân tích … trong phần Tùy chọn phân cụm Phần hiển thị kết quả phân cụm đưa ra thông tin các cụm: tên cụm, số phần tử, tỷ lệ, biểu đồ của các cụm và thông tin chi tiết cụm (tên học sinh trong cụm, các dữ liệu điểm tương ứng của từng học sinh, thống kê số lượng theo từng lớp) … các kết quả phân cụm có thể xuất ra tệp Excel để tiện sử dụng cho nhiều công việc khác

Ngày đăng: 23/10/2014, 20:33

HÌNH ẢNH LIÊN QUAN

Hình 1.2 Quá trình khai phá dữ liệu - ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH
Hình 1.2 Quá trình khai phá dữ liệu (Trang 4)
Hình 3.2 Giao diện nhập và xem dữ liệu - ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH
Hình 3.2 Giao diện nhập và xem dữ liệu (Trang 20)
Hình 3.3 Phân cụm dữ liệu theo điểm trung bình cả năm - ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH
Hình 3.3 Phân cụm dữ liệu theo điểm trung bình cả năm (Trang 21)
Hình 3.4 Phân cụm dữ liệu theo điểm trung bình môn học - ỨNG DỤNG PHÂN CỤM DỮ LIỆU TRONG PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ ĐIỂM CỦA HỌC SINH
Hình 3.4 Phân cụm dữ liệu theo điểm trung bình môn học (Trang 23)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w