Giới thiệu Mục tiêu nghiên cứu Bài nghiên cứu Nghiên cứu về các phương pháp phân lớp, phân cụm dữ liệu, và từ đó sẽ chọn ra một phương pháp tối ưu và đảm bảo nhất cho quá trình dự báo dữ
Trang 1CỦA TÀI KHOẢN
Lớp học phần: KHOA HOC DU’ LIEU
Trang 2Nhóm sỉnh viên
1 Lê Thị Thùy Anh 31221027132 100%
2 Đặng Nguyễn Hữu Hoàng 31221025131 100%
3 Đinh Lan Hương 31221023147 100%
4 Nguyễn Vũ Ngọc Huyền 31221024241 100%
5 Nguyễn Hà My 31221026208 100%
Trang 3
MỤC LỤC
1 GiGi thiGu ho ee 1
Muc tiéu nghién 0nŸ/108:7-180i40) i05, 08 1
3) 1/211:85)i-]38i 41 i05 8 1
HW CO SO NY 00 1
I8 ¡8n 1
In 8 Ti in 1
1.2 Các tính năng chính của khai phá dữ liệu -<< << << <<+ 1 ii 2( 8i) ) (040/09): 6ì 0n 1
1.4 Céng cu (031i 9e 2
yÄx¡ 0á 0 2
2.1 Khai niém phan I6’p dif 0 2
2.2 Các phương pháp đánh giá mô hình phân lớp - << << <sss<<s+ 4 3 Phan Cum dif liu 5
3.1 Dinh Nghia ec 5
kÉN› 4 0n 5
kh xn na ó Ki ào no, 5 ó Ko cà nh .4ä4 7
IN Ti€n Hanh xty ly div TU 8
I4 0n 8
2 Phân cụm dữ liỆu - - - Ă S3 000000 HH 010 E08 150 11 VN or (ni in 11
li 12
- 15
y8 co ion 17
2.3 K- ắ€aS HH HH Họ nh th B08 20 2.4 Silhouette PÏÍOt - - sọ TH HT BH 22 V_ No nh ố 22
2.4.2 Manhattan 23
V6 n9»o ae năốe6.ãm:::::-.:: 24
Trang 4V000 0n
2.5.1 Neural NGtWOFK LH "HH KT Tà TH TH tt tà 27
V9 o2 is on nh e 27 2.6 ROC AnaÌYSÏS TH 000 090 000560595 8606096 28 yYyÄ ¡ai na 29
32 'M Ai oi
Trang 5I Giới thiệu
Mục tiêu nghiên cứu Bài nghiên cứu
Nghiên cứu về các phương pháp phân lớp, phân cụm dữ liệu, và từ đó sẽ chọn
ra một phương pháp tối ưu và đảm bảo nhất cho quá trình dự báo dữ liệu
Dựa trên mô hình đã được huấn luyện trong quá trình nghiên cứu, đưa ra được kết luận về ứng viên thuộc đảng nào trong hai đảng là đảng dân chủ và đảng cộng hòa của cuộc bầu cử
Phương pháp nghiên cứu
Phương pháp phân tích - tổng hợp lý thuyết: từ nguồn tài liệu, sách báo có được, sau đó đọc và tổng hợp để rút ra, chắt lọc những nội dung cần thiết cho luận
điểm của bài nghiên cứu
Phương pháp mô hình hóa: xây dựng mô hình nghiên cứu dựa trên lý thuyết
và ứng dụng mô hình để dự báo nhằm kiểm định tính chính xác của mô hình
II Cơ sở lý luận
1 Khai phá dữ liệu
1.1 Khai phá dữ liệu là gì?
Khai phá dữ liệu (Data Mining) là khai phá dữ liệu là quá trình phân loại, sắp xếp các tập hợp dữ liệu lớn nhằm xác định các mẫu, thiết lập mối liên hệ để giải quyết vấn đề nhờ phân tích dữ liệu
1.2 Các tính năng chính của khai phá dữ liệu
Có nhiều tham số quan trọng khác nhau trong Data Mining, chang hạn như quy tắc kết hợp, phân loại, phân cụm và dự báo
Một số tính năng chính của Data Mining:
1 Dự đoán các mẫu dựa trên xu hướng trong dữ liệu
2 Tinh toán dự đoán kết qua
3 Tạo thông tin phản hồi để phân tích
4 Tập trung vào cơ sở dữ liệu lớn hơn
5 Phân cụm dữ liệu trực quan 1.3 Phương pháp khai phá dữ liệu
Một số phương pháp khai phá dữ liệu phổ biến như
4
Trang 6Phân lớp (Classification): Phương pháp sử dụng để dự báo dữ liệu thông qua
bộ dữ liệu huấn luyện, phân loại đối tượng Nhóm sẽ sử dụng phương pháp này
trong bài để dự báo số liệu
Dự báo (Prediction): Phương pháp dùng để dự báo bộ dữ liệu dựa trên bộ dữ
1.4 Công cụ khai phá dữ liệu Orange
Phần mềm Orange biết đến bởi việc tích hợp các công cụ khai phá dữ liệu mã nguồn mở và học máy thông minh, đơn giản, được lập trình bằng Python với giao diện trực quan và tương tác dễ dàng
Các công cu (widgets) cung cấp các chức năng cơ bản như đọc dữ liệu, hiển thị
dữ liệu dạng bảng, lựa chọn thuộc tính đặc điểm của dữ liệu, huấn luyện dữ liệu để
dự đoán, so sánh các thuật toán máy học, trực quan hóa các phần tử dữ liệu, Vì vậy, nhóm quyết định chọn phần mềm Orange để phục vụ cho bài nghiên cứu
2 Phân lớp dữ liệu
2.1 Khái niệm phân lớp dữ liệu
Phân lớp dữ liệu chính là một trong những hướng nghiên cứu chính của khai phá dữ liệu Quá trình phân lớp dữ liệu là quá trình phân các đối tượng vào một hay nhiều lớp đã cho trước dựa vào một mô hình phân lớp Mô hình này được xây dựng dựa trên một tập dữ liệu đã được gán nhãn trước đó
Phân lớp và dự đoán là một trong hai dạng của phân tích dữ liệu để rút ra một
mô hình mô tả những lớp dữ liệu quan trọng hoặc dự đoán xu thế của dữ liệu trong tương lai
Quá trình phân lớp dữ liệu gồm 2 bước chính
Bước 1: Xây dựng mô hình phân lớp
Dữ liệu đầu vào: là dữ liệu mẫu đã được gán nhãn và tiền xử lý
Các thuật toán phân lớp: cây quyết định, hàm số toán học, tập luật
Kết quả của bước này là mô hình phân lớp đã được huấn luyện (trình phân
lớp)
Trang 7cal-8
Classification algorithm aaa
Bước 2.1: Đánh giá mô hình
Dữ liệu đầu vào: là một tập dữ liệu mẫu khác đã được gán nhãn và tiền xử lý Tuy nhiên lúc đưa vào mô hình phân lớp, ta “lờ” đi thuộc tính đã được gán nhãn Tính đúng đắn của mô hình sẽ được xác định bằng cách so sánh thuộc tính gán nhãn của dữ liệu đầu vào và kết quả phân lớp của mô hình
Bước 2.2: Phân lớp dữ liệu mới
Dữ liệu đầu vào: là dữ liệu “khuyết” thuộc tính cần dự đoán lớp (nhãn)
Mô hình sẽ tự động phân lớp (gán nhãn) cho các đối tượng dữ liệu này dựa vào những gì được huấn luyện ở bước 1
Trang 8Mỗi đối tượng dữ liệu chỉ thuộc vào 1 lớp duy nhất: Phân lớp đơn nhãn
Một đối tượng dữ liệu có thể cùng lúc thuộc về nhiều lớp khác nhau: Phân lớp
2.2 Các phương pháp đánh giá mô hình phân lớp
Ma trận nhầm lẫn (Confusion Matrix) và độ chính xác (Accuracy); ROC, AUC, Precision/Recall, F1-score
Ma trận nhầm lẫn (Confusion Matrix)
Ma trận nhầm lẫn là ma trận chỉ ra trong một lớp cụ thể, dự đoán có bao
nhiêu điểm dữ liệu thực sự thuộc về nó và rơi vào lớp nào Phương pháp này là có kích thước k x k với k là số lượng lớp của dữ liệu
Đây là một trong những kỹ thuật đo lường hiệu suất được sử dụng rộng rãi, đặc biệt là cho các mô hình phân loại
Trang 9Predicted value
+ TP- True Positive : Dự đoán lớp tích cực là tích cực
4 FP-False Positive - Type 1 Error : Dự đoán lớp phủ định là tích cực
+ FN- False Negative - Type 2 Error: Dự đoán lớp tích cực là tiêu cực
£ TN - True Negative : Dự đoán lớp phủ định là tiêu cực
Độ chính xác (Accuracy)
Accuracy có thể hiểu là là tỉ lệ giữa số mẫu dự đoán đúng với tổng số mẫu
trong tập dữ liệu được tính ra mà không chỉ ra được chính xác mỗi loại được phân lớp như thế nào, phân loại đúng nhiều nhất thuộc về lớp nào và dữ liệu thường bị phân loại nhầm vào lớp khác đang nằm ở lớp nào Tuy nhiên, nó vẫn có thể giúp chúng ta ta đánh giá hiệu quả dự báo của mô hình trên một bộ dữ liệu Độ chính xác càng cao thì mô hình càng chuẩn xác
Precision, Recall, F1 - score
Precision (độ chính xác} cho biết tỉ lệ số điểm true positive (TP) trong số những điểm được phân loại là positive (TP + FP}
Recall (d6 phu) hay dé nhay (sensitivity) hay TPR (True Positive Rate) la ti lé
giữa số điểm true positive (TP) và những điểm thu su la positive (TP + FN)
F1- score là giá trị trung bình điều hòa của hai độ đo Precision và Recall
F1 có giá trị gần với giá trị nhỏ hơn giữa 2 giá trị Precision và Recall và F1 càng lớn nếu cả 2 giá trị Precision và Recall đều lớn cho thấy độ tin cậy của mô hình cao hơn
ROC (Receiver Operating Characteristic) va AUC (Area Under the Curve)
ROC là một đồ thị được sử dụng khá phổ biến trong đánh giá các mô hình phân loại nhị phân Đường cong này được tạo ra bằng cách biểu diễn tỷ lệ dự báo true positive rate (TPR) dựa trên tỷ lệ dự báo false positive rate (FPR) tại các ngưỡng khác nhau Một mô hình hiệu quả khi có ROC càng tiệm cận với điểm (0;1) hay có TPR cao và FPR thấp thì mô hình càng phù hợp."
Trang 103 Phân cụm dữ liệu
3.1 Định nghĩa
“Là quá trình gom cụm/nhóm các đối tượng/dữ liệu có đặc điểm tương đồng vào các cụm/nhóm tương ứng Trong đó: các đối tượng trong cùng một cụm sẽ có những tính chất tương tự nhau; các đối tượng thuộc cụm/nhóm khác nhau sẽ có các tính chất khác nhau."
3.2 Đặc điểm
Nhiệm vụ chính là tìm ra và đo đạc sự khác biệt giữa các đối tượng dữ liệu
Phân cụm thuộc nhóm phương pháp học không giám sát (unsupervised
learning) vì không biết trước được số nhóm (khác với bài toán phân lớp)
Một phương pháp phân cụm tốt là phương pháp tạo ra các cụm có chất lượng cao: Độ tương đồng bên trong cụm cao; Độ tương tự giữa các cụm thấp (khác biệt cao)
Các ứng dụng điển hình: Công cụ phân cụm dữ liệu độc lập; Là giai đoạn tiền xử lý cho các thuật toán khác
3.3 Phân loại
Dựa trên phân cấp Phân cấp các đối tượng Diana, Agnes, BIRCH,
(Hierarchical approach) dựa trên một số tiêu chí | CAMELEON
Dựa trên mật độ Dựa trên các kết nối giữa | DBSCAN, OPTICS, DenClue
(Density-based approach) | “3£ đổi tượng hàm và mật
độ
Dựa trên lưới Dựa trên cấu trúc độ chỉ STING, WaveCluster CLIQUE (grid-based approach) tiết nhiều cấp
Trang 11
Dựa trên mô hình Giả định mỗi cụm có một | EM, SOM, COBWEB
(Model-based) mô hình và tìm cách fit
3.4 Thuật toán K-Means
Thuật toán dựa trên độ đo khoảng cách của các đối tượng dữ liệu trong cụm
Nó đo khoảng cách tới giá trị trung bình của các dữ liệu trong cụm
Cụ thể về tư tưởng của thuật toán K-means: Ta xem mỗi đối tượng trong tập dữ liệu
là một điểm trong không gian d chiều (với dđ là số lượng thuộc tính của đối tượng)
+ B1: Chọn k điểm bất kỳ làm các trung tâm ban đầu của k cụm
4 B2: Phan mỗi điểm vào cụm có trung tâm gần nó nhất Nếu các điểm ở
từng cụm vừa được phân không thay đổi so với kết quả của lần phân chỉa trước đó thì dừng thuật toán
4 B3: Cập nhật lại trung tâm cho từng cụm bằng cách lấy trung bình cộng của tất cả các điểm đã được gắn vào cụm đó sau khi phân chia ở bước
3.5 Silhouette index
Đây là phương pháp tính toán kết hợp đánh giá Cohesion (qua aj và Separation (b;)
bị - a; càng cao càng tốt, đạt max = b, khi a, = 0
Nếu một cluster được đánh giá chất lượng, là các điểm trong cluster sẽ có Silhouette tiến về 1 và ngược lại
Trang 123; = (bj — aj) / max(a;, b;)
Gid sv co 2 cluster A va B dugc fim thay dya trén K-means clustering
¢ bla khodng cach tu diém i trong cluster A dén điểm trung tam cua cluster B
© a, la khodng cach ti diém i trong cluster A dén diém trung tâm của cluster A
Néu khéng phai K-means clustering thi:
b, là khoảng cach trung binh ter diém i trong cluster A dén tat ca cdc điểm
trong cluster B vdi cluster B la cluster lang giéng gan nhat
a¡ là khoảng cách trung bình từ diém i trong cluster A dén tat ca cdc diém con
lai trong A
Ngoài ra, theo kinh nghiệm của các tác giả trong tài liệu “Data mining and
Predictive analytics” của nhà xuất ban Wiley:
Silhouette Score > 0.5 —> cluster này sát với thực tế
Silhouette Score [0.25, 0.5) , cần đánh giá lại cluster
Silhouette Score < 0.25, không đáng tin cậy và cần đi tìm thêm nhiều bằng
chứng khác
III Tiến hành xử lý dữ liệu
Bộ dữ liệu bao gồm các tài khoản ngân hàng Đức bao gồm các thông tin về tình hình tài khoản có dính nợ xấu hay không, thông tin người dùng như thông tin xác thực điện thoại, công việc, người ngoại quốc hay người trong nước, lịch sử tiêu dùng, giới tính, tình trạng hôn nhân Bộ dữ liệu này sẽ dùng để dự báo và phân tích các số liệu cũng như tỉ lệ bị nợ xấu hoặc không dính nợ xấu của các tài khoản ngân hàng
Trang 131 Xử lý, khái quát dữ liệu
Name Type Role Value
Status of existing | categorica | featur | low, negative, none, stable
Purpose categorica | featur | business, car-new, car-used,
I e domestic appliances, education,
furniture/equipement, other, radio/television, repairs, retraining
Credit amount numeric featur
e
Savings categorica | featur | high, low, medium, minimal, none
account/bonds I e
Present categorica | featur | 4-to-7, 7-plus, good-to-4, less-than-
employment since | | e 1, unemployed
Installment rate in | numeric featur
Trang 14
Có tất cả 1000 mẫu được thu thập từ bộ dữ liệu
Trong 21 biến trên thì:
Trang 15
Credit là biến mục tiêu dự đoán tài khoản trên thuộc nhóm nợ xấu hay không
Có 2 kiểu dữ liệu là numeric và categorical, trong đó có ó biến thuộc kiểu
numeric, còn lại thuộc kiểu categorical
Chỉ có 1 biến mục tiêu là biến Credit, còn lại 20 biến có Role là feature, không
có biến nào có Role là meta
Từ data table widget ta thấy có 3.2% dữ liệu bị thiếu, dữ liệu bị thiếu là phần
thông tin đã xác thực số điện thoại hay chưa và đối tượng là người nước ngoài hay
người dân địa phương cũng bị mất, hai phần trên có tên là Telephone và Foreign
worker, ta sẽ tiến hành xử lý các dữ liệu bị mất thông qua Preprocessing widget bằng cách ẩn đi các dữ liệu bị thiếu
Ảnh phía dưới minh họa một số dữ liệu bị mất (không xác định) ở hai cột
Telephone và Foreign worker
favorable_class_value
Data Info
a
File Data Table (2) Preprocess Data Table (3)
-™ Discretize Continuous Variables
#% Continuize Discrete Variables
{2 impute Missing Values
~) Replace with random value
2? B | 31000 G a) 423
1.1 Mô tả phương pháp xử lý dữ liệu:
Trong Orange để giúp xử lý dữ liệu (chuẩn hóa dữ liệu, điền thông tin bị
thiếu,rời rạc hóa dữ liệu liên tục), ta chọn Preprocess
Ở mục Impute Missing Values chọn Remove rows with missing values để loại
bỏ các dữ liệu bị thiếu
Chọn Save để lưu data
Trang 16“
1.2 Dữ liệu sau khi xử lý
Trang 17
Chỉ số SI của cụm C2 rất thấp và gần như bằng 0, ngược lại thì chỉ số của cụm C3 lại
cao hơn nhưng không cao bằng cụm C2 ở trường hợp phân làm 2 cụm
13