Phân tích và dự báo kết quả bầu cử từ bộ dữ liệu hồ sơ bỏ phiếu của quốc hội mỹ dự đoán nhóm ứng viên thuộc đảng cộng hòa hay đảng dân chủ

33 1 0
Phân tích và dự báo kết quả bầu cử từ bộ dữ liệu hồ sơ bỏ phiếu của quốc hội mỹ  dự đoán nhóm ứng viên thuộc đảng cộng hòa hay đảng dân chủ

Đ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

Nghiên cứu về các phương pháp của cụ thể, phương pháp phân lớp dữ liệu phương pháp phân lớp đưa ra các dự báo, phân loại và cũng như phân lớp các đối tượng, phân cụm dữ liệu.. Nghiên cứu

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC KINH TẾ TP.HCM

ĐỒ ÁN KẾT THÚC HỌC PHẦN

TÊN ĐỀ TÀI: PHÂN TÍCH VÀ DỰ BÁO KẾT QUẢ BẦU CỬ TỪ BỘ DỮ LIỆU HỒ

SƠ BỎ PHIẾU CỦA QUỐC HỘI MỸ DỰ ĐOÁN NHÓM ỨNG VIÊN THUỘC ĐẢNG

CỘNG HÒA HAY ĐẢNG DÂN CHỦ

Lớp học phần: KHOA HỌC DỮ LIỆU (INF509059) Mã lớp học phần: 23C1INF50905953

Giảng viên hướng dẫn: Hồ Văn Phúng

Thành phố Hồ Chí Minh - 2023

Trang 3

MỤC LỤC

I Giới thiệu 1

Mục tiêu nghiên cứu Bài nghiên cứu 1

Phương pháp nghiên cứu 1

II Cơ sở lý luận 1

1 Khai phá dữ liệu 1

1.1 Khai phá dữ liệu là gì? 1

1.2 Các tính năng chính của khai phá dữ liệu 2

1.3 Phương pháp khai phá dữ liệu 2

1.4 Công cụ khai phá dữ liệu Orange 3

2 Phân lớp dữ liệu 3

2.1 Khái niệm phân lớp dữ liệu 3

2.2 Các phương pháp đánh giá mô hình phân lớp 5

III Tiến hành x ử lý dữ liệ u 10

1 Xử lý, khái quát dữ liệu 10

Trang 5

I Giới thiệu

Mục tiêu nghiên cứu Bài nghiên cứu

Tiến hành phân tích các lý thuyết của khai phá dữ liệu nhằm tập trung làm rõ những vấn đề của bài nghiên cứu

Nghiên cứu về các phương pháp của cụ thể, phương pháp phân lớp dữ liệu (phương pháp phân lớp đưa ra các dự báo, phân loại và cũng như phân lớp các đối tượng), phân cụm dữ liệu Nghiên cứu sẽ đưa 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

Sử dụng các phương pháp thống kê, phân tích dữ liệu, ứng dụng mô hình hồi quy để dự báo với sự hỗ trợ của các chương trình Orange

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

Các MCU khai phá dữ liệu giúp các doanh nghiệp có thể dự đoán được các xu hướng trong tương lai.

Quá trình khai phá dữ liệu là một quá trình tương đối phức tạp gồm kho dữ liệu chuyên sâu cũng như các công nghệ tính toán Hơn thế nữa, Data Mining không chỉ giới hạn trong việc trích xuất dữ liệu mà được sử dụng nhằm làm sạch, chuyển đổi, tích hợp dữ liệu và phân tích mẫu.”

Trang 6

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, chẳng 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 Tính toán dự đoán kết quả

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ư

Phâ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

Phân cụm (Clustering): Phương pháp phân cụm giúp việc mô tả dữ liệu trở nên đơn giản hơn bằng các xác định tập hợp hữu hạn các cụm với nhau h Nhóm sẽ sử dụng phương pháp này trong bài để dự báo số liệu.”

Trang 7

1.4 Công cụ khai phá dữ liệu Orange

“Khai phá dữ liệu là những lĩnh vực khá khó để khám phá và nghiên cứu Do đó, nhiều phần mềm đã ra đời với mục tiêu giúp cho người dùng có thể dễ dàng nghiên cứu các bài toán trong những lĩnh vực khó nhằn này Một trong những phần mềm có thể kể đến là 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 cụ (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à ự đoán là một trong hai dạng của phân tích dữ liệu để rút ra một d 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 8

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 9

Nhiệm vụ của bài toán phân lớp là phân các đối tượng dữ liệu vào lớp cho n trước Nếu:

n = 2: Phân lớp nhị phân n > 2: Phân lớp đa lớp

Mỗ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 đa nhãn

Một số phương pháp 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)

Trang 10

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

TP - True Positive : Dự đoán lớp tích cực là tích cực.

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 (độ phủ) hay độ nhạy (sensitivity) hay TPR (True Positive Rate) là tỉ lệ giữa số điểm true positive (TP) và những điểm thực sự là positive (TP + FN)

F1- score là giá trị trung bình điều hòa của hai độ đo Precision và Recall

Trang 11

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) và 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.”

3 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 (Hierarchical approach)

Phân cấp các đối tượng dựa trên một số tiêu chí

Diana, Agnes, BIRCH,

Trang 12

DBSCAN, OPTICS, DenClue

Dựa trên lưới

(grid-based approach)

Dựa trên cấu trúc độ chi tiết nhiều cấp

STING, WaveCluster CLIQUE

Dựa trên mô hình (Model-based)

Giả định mỗi cụm có một mô hình và tìm cách fit mô hình đó vào mỗi cụm

EM, SOM, COBWEB

3.4 Thuật toán K-Means

Thuật toán phân hoạch K means do MacQueen đề xuất trong lĩnh vực thống kê -năm 1967 Trong thuật toán K means clustering, chúng ta không biết nhã của từng điểm -dữ liệu Mục đích là làm thế nào để phân -dữ liệu thành các cụm (cluster) khác nhau sao cho trong cùng một cụm thì dữ liệu có tính chất giống nhau

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 B2: Phân 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 chia trước đó thì dừng thuật toán

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 2 B4: Quay lại bước 2

Nhận xét:

Do K-means phân tích cụm đơn giản nên có thể áp dụng đối với tập dữ liệu lớn

Nhược điểm của K means là chỉ áp dụng với dữ liệu có thuộc tính số và -khám phá ra các cụm có dạng hình cầu Do đó thuật toàn này không phù hợp với phân bố dữ liệu dạng không lồi Ngoài ra, nó còn rất nhạy cảm với nhiễu và phần tử ngoại lai trong dữ liệu và cần biết trước số lượng cụm k

Trang 13

3.5 Silhouette index

Silhouette đo lường khoảng cách của một điểm dữ liệu trong cụm đến Centroid, điểm trung tâm của cụm, và khoảng cách của chính điểm đó đến điểm trung tâm của cụm gần nhất (hoặc đến các điểm trung tâm của các cụm còn lại, và chọn ra khoảng cách ngắn nhất) Đó là trường hợp đo lường cho K-means clustering

Silhouette là phương pháp tính toán kết hợp đánh giá cả Cohesion (qua ai) và Separation (bi) Nếu Silhouette tiến về -1, tức khoảng cách điểm i so với điểm trung tâm trong chính cụm nó được phân xa hơn so với điểm trung tâm của cụm còn lại, vậy khả năng điểm i lúc này bị phân sai cụm Các bạn có thể xét ngược lại

Do đó, bi a – icàng cao càng tốt, đạt max = bi khi a = 0 i

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

Nếu không phải K-means clustering thì:

b ilà khoảng cách trung bình từ điểm i trong cluster A đến tất cả các điểm trong cluster B với cluster B là cluster láng giềng gần nhất

ai là khoảng cách trung bình từ điểm i trong cluster A đến tất cả các điểm còn lại 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 bản Wiley:

Điểm trung bình Silhouette từ 0.5 trở lên, bằng chứng cho thấy có thể cluster này sát với thực tế

Điểm trung bình Silhouette từ 0.25 đến 0.5, thì cần thêm kiến thức chuyên môn, kinh nghiệm để đánh giá thêm khả năng cluster có trong thực tế

Điểm trung bình dưới 0.25, thì không nên tin tưởng cluster, và cần đi tìm nhiều bằng chứng khác.”

Trang 14

III Tiến hành x ử lý dữ liệ u

CVR(Bộ dữ liệu hồ sơ bỏ phiếu của quốc hội)

Bộ dữ liệu bao gồm các phiếu bầu cho nước Mỹ, các nghị sĩ Hạ viện về 16 loại phiếu bầu được xác định bởi CQA, CQA đã liệt kê chín loại khác nhau như bỏ phiếu, ghép đôi và thông báo có (3 loại phiếu này xem như là phiếu thuận(có)), phiếu chống, ghép đôi chống và thông báo chống lại (3 loại này được xem như phiếu nghịch(không)), bỏ phiếu có mặt, bỏ phiếu có mặt tránh xung đột lợi ích và không bỏ phiếu hoặc làm cho một vị trí được biết đến (3 loại này được xếp vào nhóm không xác định)

1 Xử lý, khái quát dữ liệu

Dựa vào phân tích trên ta thấy File dữ liệu có:

435 instances

16 features với 5,6% missing values 17 tên thuộc tính tương ứng như sau:

1 handicapped-infants categorical feature n,y 2 water-project-cost-sharingcategorical feature n,y

Trang 15

3 adoption-of-the -budget-reéolution

categorical feature n,y

4 physician-fee-freeze categorical feature n,y

6 religious-groups- -in schools

categorical feature n,y

7 anti-satellite-test-ban categorical feature n,y 8 aid-to-nicaraguan-contras categorical feature n,y

11

synfuels-corporation-cutback

categorical feature n,y

12 education-spending categorical feature n,y 13 superfund-right-to-sue categorical feature n,y

15 duty-free-exports categorical feature n,y 16

export-administration-act-south-africa

categorical feature n,y

democrat

Trang 16

Từ data table widget ta thấy có 5,6% dữ liệu bị thiếu, do đó sẽ tiến hành tiền xử lý dữ liệu thông qua preprocess widget

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

1.2 Dữ liệu sau khi xử lý

Trang 18

Single

Average

Trang 19

Complete

Trang 20

Ward

Tiến hành phân tích dựa trên 4 kết quả nhận được:

Ta thấy, single-linkage là phương pháp kém hiệu quả nhất so với 3 phương pháp còn lại, Ward là phương pháp tốt nhất, có tỉ lệ cao hơn so với 3 phương pháp còn lại Chọn ward làm phương pháp tính khoảng cách

2.2 Silhouette Plot 2.2.1 Euclidean

Trang 22

Cosine 0.616 0.510

Ta có Silhouette index [-1,1]

Tỉ lệ của Euclidean nằm trong khoảng [0.25, 0,5) => Cần đánh giá lại Tỉ lệ của Manhattan C1 > 0.5 sát so với thực tế, tuy nhiên C2 < 0.5 nên cần đánh giá lại phương pháp này

Tỉ lệ của Cosine đều có C1 và C2 > 0.5 nên sát với thực tế Từ đó ta thấy Cosine là phương pháp cho ra độ chính xác cao hơn so với 2 phương pháp còn lại

Vì vậy chọn Cosine

2.3 K- means

Sử dụng thuật toán K-means, đánh giá Silhouette Scores thông qua việc phân ra làm 2 - 8 cụm rồi so sánh Silhouette Scores Việc phân dữ liệu thành 2 cụm có Silhouette Scores lớn hơn so với các dữ liệu còn lại Vì vậy, dữ liệu trên chỉ cần phân làm 2 cụm Sau khi phân cụm xong, ta tiến hành đánh giá thông qua Silhouette Pilot

Ngày đăng: 08/04/2024, 12:12

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

Tài liệu liên quan