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

Tiểu luận khai phá dữ liệu: SỬ DỤNG PHẦN MỀM WEKA PHÂN LỚP CHO KHẢ NĂNG MẮC CĂN BỆNH TIM heart.arff

18 888 11
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Sử dụng phần mềm Weka phân lớp cho khả năng mắc căn bệnh tim heart.arff
Tác giả Trần Minh Luân
Người hướng dẫn Hồ Nhật Quang
Trường học Học viện Kỹ thuật Quân sự
Chuyên ngành Khoa Công nghệ Thông tin
Thể loại Đề tài
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 18
Dung lượng 1,52 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

I. ĐẶT VẤN ĐỀ Khai phá dữ liệu là một ngành khoa học thực nghiệm. Nó được thiết kế sao cho bạn có thể nhanh chống thử nghiệm những cách thức hiện tại trên cơ sở dữ liệu mới một cách linh hoạt. Nó cung cấp nhiều sự hỗ trợ cho toàn bộ quá trình xử lý số liệu thực nghiệm, bao gồm chuẩn bị dữ liệu đầu vào, việc ước lượng học những sơ đồ thống kê, và hình dung dữ liệu ra và kết quả của việc học. Weka được phát triển bởi đại học Waikato bang New Zealand, và có tên là Waikato Environment for Knowledge Analysis. Hệ thống được viết bởi java và phân phối dưới thuật ngữ GNU. Nó cung cấp một giao diện tương tự cho nhiều giải thuật học khác nhau với nhiều phương thức chho quá trình xử lý để ước lượng kết quả bằng sơ đồ cho bất kì một dữ liệu nào. Workbenh bao gồm những phương thức chuẩn cho các vấn đề của khai phá dữ liệu như: phân lớp,hồi quy, phân nhóm, phân cụm, luật kết hợp, và các thuộc tính kết hợp.Cụ thể đề tài này em tìm hiểu về bài toán phân lớp trong weka và áp dụng trong bài toán khả năng mắc căn bệnh tim II. XÂY DỰNG CƠ SỞ DỮ LIỆU Cơ sở dữ liệu này chứa 13 thuộc tính (đã được chiết xuất từ một tập hợp lớn hơn 75) Thuộc tính Thông tin: ------------------------ - 1. tuổi - 2. giới tính - 3. đau ngực (4 giá trị) Đau thắt ngực điển hình Đau thắt ngực không điển hình Đau không phải đau thắt ngực Không có triệu chứng bệnh

Trang 1

HỌC VIỆN KỸ THUẬT QUÂN SỰ

KHOA CÔNG NGHỆ THÔNG TIN

-& -Đề tài:

SỬ DỤNG PHẦN MỀM WEKA PHÂN LỚP CHO KHẢ NĂNG

MẮC CĂN BỆNH TIM

Giáo viên hướng dẫn: HỒ NHẬT QUANG

Sinh viên thực hiện: TRẦN MINH LUÂN

Lớp: HỆ THỐNG THÔNG TIN 6

HÀ NỘI - 10/2011

Khai phá dữ liệu là một ngành khoa học thực nghiệm Nó được thiết kế sao cho bạn

có thể nhanh chống thử nghiệm những cách thức hiện tại trên cơ sở dữ liệu mới một cách

Trang 2

linh hoạt.Nó cung cấp nhiều sự hỗ trợ cho toàn bộ quá trình xử lý số liệu thực nghiệm, bao gồm chuẩn bị dữ liệu đầu vào, việc ước lượng học những sơ đồ thống kê, và hình dung dữ liệu ra và kết quả của việc học

Weka được phát triển bởi đại học Waikato bang New Zealand, và có tên là Waikato Environment for Knowledge Analysis Hệ thống được viết bởi java và phân phối dưới thuật ngữ GNU Nó cung cấp một giao diện tương tự cho nhiều giải thuật học khác nhau với nhiều phương thức chho quá trình xử lý để ước lượng kết quả bằng sơ đồ cho bất kì một dữ liệu nào

Workbenh bao gồm những phương thức chuẩn cho các vấn đề của khai phá dữ liệu như: phân lớp,hồi quy, phân nhóm, phân cụm, luật kết hợp, và các thuộc tính kết hợp.Cụ thể đề tài này em tìm hiểu về bài toán phân lớp trong weka và áp dụng trong bài toán khả năng mắc căn bệnh tim

Cơ sở dữ liệu này chứa 13 thuộc tính (đã được chiết xuất từ a larger set of 75) một tập hợp lớn hơn 75)

Attribute Information: Thuộc tính Thông tin:

- -

1 - 1 age tuổi

2 - 2 sex giới tính

3 - 3 chest pain type (4 values) đau ngực (4 giá trị)

Đau thắt ngực điển hình

Đau thắt ngực không điển hình

Đau không phải đau thắt ngực

Không có triệu chứng bệnh

4 - 4 resting blood pressure huyết áp

Trang 3

5 - 5 serum cholestoral in mg/dl cholestoral huyết thanh trong mg / dl

6 - 6 fasting blood sugar > 120 mg/dl độ đường trong máu lúc đói> 120 mg / dl

7 - 7 resting electrocardiographic results (values 0,1,2) nghỉ ngơi kết quả điện tâm đồ (các giá trị 0,1,2)

8 - 8 maximum heart rate achieved nhịp tim đập tối đa

9 - 9 exercise induced angina thực đau thắt ngực gây ra

10 - 10 oldpeak = ST depression induced by exercise relative to rest oldpeak độ lõm của sóng điện tim

11 - 11 the slope of the peak exercise ST segment độ dốc của đoạn cao nhất của sóng S 12 - 12 number of major vessels (0-3) colored by flourosopy số mạch chính được định màu (0-3) màu bởi flourosopy

13 - 13 Độ nhấp nháy cơ tim

thal: 3 = normal; 6 = fixed defect; 7 = reversable defect 3 = bình thường, 6 = cố định khuyết tật, 7 = hồi phục khiếm khuyết

Attributes types

Các thuộc tính các loại:

@relation heart

@attribute Age integer

@attribute Sex integer

@attribute ChestPainType integer

@attribute RestBloodPressure integer

@attribute SerumCholestoral integer

@attribute FastingBloodSugar integer

@attribute ResElectrocardiographic integer

@attribute MaxHeartRate integer

@attribute ExerciseInduced integer

@attribute Oldpeak real

@attribute Slope integer

@attribute MajorVessels integer

@attribute Thal integer

@attribute Class {1, 2}

1 Tiền xử lý dữ liệu :

Trang 4

- Sau khi đã tạo xong file heart.arff thì tiến hành đọc dữ liệu vào weka:

Trang 5

- Ta thấy xuất hiện dữ liệu trên cửa số Preprocess của WEKA như sau:

Trang 6

Chọn AddValus trong filter:

Trang 7

Nhập thêm giá trị cho cột class:

- Bước đầu tiên ta sử dụng tất cả dữ liệu để trainning cho cây:

Trang 8

+ Nhấn vào tab Classify chọn thuật toán sử dụng bằng cách nhấn vào nút Choose; khi cây thư mục hiện thư mục Trees/J48:

Để tiến hành trainning trên toàn bộ dữ liệu ta chọn vào tùy chọn Use tranning set rồi nhấn Start.

Ta thu được kết quả hiển thị ở khung Classifier Output như sau:

Trang 9

== Run information ===

Scheme: weka.classifiers.trees.J48 -C 0.25 -M 2

Relation: heart-weka.filters.unsupervised.attribute.NumericToNominal-Rfirst-last-weka.filters.unsupervised.attribute.AddValues-C14-Lco,khong

Instances: 270

Attributes: 14

Age

Sex

ChestPainType

RestBloodPressure

SerumCholestoral

FastingBloodSugar

ResElectrocardiographic

MaxHeartRate

ExerciseInduced

Oldpeak

Slope

MajorVessels

Thal

Class

Test mode: evaluate on training data

=== Classifier model (full training set) ===

J48 pruned tree

-Thal = 3

| MajorVessels = 0: 1 (107.0/12.0)

| MajorVessels = 1

| | Sex = 0: 1 (11.0)

| | Sex = 1

| | | ChestPainType = 1: 1 (3.0/1.0)

| | | ChestPainType = 2: 1 (1.0)

| | | ChestPainType = 3: 1 (2.0)

| | | ChestPainType = 4: 2 (9.0)

| MajorVessels = 2

| | ExerciseInduced = 0: 1 (10.0/3.0)

| | ExerciseInduced = 1: 2 (3.0)

| MajorVessels = 3: 2 (6.0/1.0)

Thal = 6

| MajorVessels = 0: 1 (7.0/1.0)

Trang 10

| MajorVessels = 1: 2 (4.0)

| MajorVessels = 2: 2 (2.0)

| MajorVessels = 3: 2 (1.0)

Thal = 7

| ChestPainType = 1: 1 (6.0/2.0)

| ChestPainType = 2

| | ResElectrocardiographic = 0: 1 (5.0/2.0)

| | ResElectrocardiographic = 1: 2 (0.0)

| | ResElectrocardiographic = 2: 2 (2.0)

| ChestPainType = 3

| | Slope = 1: 1 (7.0/1.0)

| | Slope = 2: 2 (13.0/4.0)

| | Slope = 3: 1 (1.0)

| ChestPainType = 4: 2 (70.0/7.0)

Size of the tree : 30

Time taken to build model: 0.06 seconds

=== Evaluation on training set ===

=== Summary ===

Correctly Classified Instances 236 87.4074 %

Incorrectly Classified Instances 34 12.5926 %

Kappa statistic 0.7429

Mean absolute error 0.1021

Root mean squared error 0.226

Relative absolute error 41.0457 %

Root relative squared error 64.3055 %

Coverage of cases (0.95 level) 100 %

Mean rel region size (0.95 level) 46.6667 %

Total Number of Instances 270

=== Detailed Accuracy By Class ===

TP Rate FP Rate Precision Recall F-Measure ROC Area Class 0.92 0.183 0.863 0.92 0.89 0.91 1

0.817 0.08 0.891 0.817 0.852 0.91 2

0 0 0 0 0 ? co

0 0 0 0 0 ? khong

Weighted Avg 0.874 0.137 0.875 0.874 0.873 0.91

=== Confusion Matrix ===

a b c d < classified as

138 12 0 0 | a = 1

Trang 11

22 98 0 0 | b = 2

0 0 0 0 | c = co

0 0 0 0 | d = khong

Kết quả cây dưới dạng hình ảnh:

3. Tiến hành chạy thử nhiều lần cây trên số lượng dữ liệu tranning khác nhau:

Lần thứ hai: Lấy 95% dữ liệu để xây dựng cây, 5% để test:

Trang 12

=== Run information ===

Scheme: weka.classifiers.trees.J48 -C 0.25 -M 2 Relation: heart

Instances: 270

Attributes: 14

Age

Sex

ChestPainType

RestBloodPressure

SerumCholestoral

FastingBloodSugar

ResElectrocardiographic

MaxHeartRate

ExerciseInduced

Oldpeak

Slope

MajorVessels

Thal

Class

Test mode: split 95.0% train, remainder test

=== Classifier model (full training set) ===

J48 pruned tree

-Thal <= 3

| ChestPainType <= 3: 1 (101.0/10.0)

| ChestPainType > 3

| | MajorVessels <= 0

| | | Age <= 54: 1 (17.0)

| | | Age > 54

| | | | ExerciseInduced <= 0

| | | | | Oldpeak <= 2

| | | | | | Age <= 59: 1 (2.0)

| | | | | | Age > 59: 2 (4.0/1.0)

| | | | | Oldpeak > 2: 1 (3.0)

| | | | ExerciseInduced > 0

| | | | | Slope <= 1: 1 (2.0)

| | | | | Slope > 1: 2 (3.0)

| | MajorVessels > 0

| | | Sex <= 0

| | | | Oldpeak <= 9: 1 (3.0)

Trang 13

| | | | Oldpeak > 9: 2 (3.0)

| | | Sex > 0: 2 (14.0)

Thal > 3

| MajorVessels <= 0

| | ExerciseInduced <= 0

| | | FastingBloodSugar <= 0

| | | | Thal <= 6: 1 (4.0)

| | | | Thal > 6

| | | | | Age <= 52: 2 (9.0/2.0)

| | | | | Age > 52: 1 (11.0/2.0)

| | | FastingBloodSugar > 0: 1 (5.0)

| | ExerciseInduced > 0

| | | Sex <= 0: 2 (3.0)

| | | Sex > 0

| | | | Oldpeak <= 15

| | | | | ResElectrocardiographic <= 1: 1 (3.0)

| | | | | ResElectrocardiographic > 1

| | | | | | Age <= 51: 2 (3.0)

| | | | | | Age > 51: 1 (3.0/1.0)

| | | | Oldpeak > 15: 2 (12.0)

| MajorVessels > 0: 2 (65.0/6.0)

Size of the tree : 39

Time taken to build model: 0.03 seconds

=== Evaluation on test split ===

=== Summary ===

Correctly Classified Instances 10 76.9231 % Incorrectly Classified Instances 3 23.0769 % Kappa statistic 0.5301

Mean absolute error 0.2827

Root mean squared error 0.4593

Relative absolute error 57.0293 %

Root relative squared error 92.0741 %

Coverage of cases (0.95 level) 84.6154 %

Mean rel region size (0.95 level) 76.9231 %

Total Number of Instances 13

Trang 14

=== Detailed Accuracy By Class ===

TP Rate FP Rate Precision Recall F-Measure ROC Area Class 0.857 0.333 0.75 0.857 0.8 0.762 1

0.667 0.143 0.8 0.667 0.727 0.762 2

Weighted Avg 0.769 0.245 0.773 0.769 0.766 0.762

=== Confusion Matrix ===

a b < classified as

6 1 | a = 1

2 4 | b = 2

Lần thứ ba: Lấy 90% dữ liệu để xây dựng cây, 10% để test:

Trang 15

Lần thứ tư: Lấy 85% dữ liệu để xây dựng cây, 15% để test:

Lần thứ năm: Lấy 80% dữ liệu để xây dựng cây, 20% để test:

Trang 16

Lần thứ sáu: Lấy 75% dữ liệu để xây dựng cây, 25% để test:

Lần thứ bảy: Lấy 70% dữ liệu để xây dựng cây, 30% để test:

Trang 17

Lần thứ tám: Lấy 65% dữ liệu để xây dựng cây, 35% để test:

Lần thứ chín: Lấy 60% dữ liệu để xây dựng cây, 40% để test:

Trang 18

Lần thứ mười: Lấy 55% dữ liệu để xây dựng cây, 45% để test:

Sau khi thực hiện chạy 10 lần J48 để xây dựng cây với các tham số đầu vào khác nhau

ta thấy ứng với lần chạy thứ 7 với các tham số lựa chọn là : bộ dữ liệu dùng khởi tạo cây

70 %, bộ dữ liệu test là 30% đạt được tỉ lệ phân lớp chính xác là 85% Nên ta chọn cây quyết định sinh ra tại lần chạy thứ 7 để sử dụng cho các mẫu thử bất kỳ sau này

Cây quyết định tại lần chạy thứ 7:

Ngày đăng: 16/12/2013, 15:06

HÌNH ẢNH LIÊN QUAN

Đau thắt ngực không điển hình Đau không phải đau thắt ngực Không có triệu chứng bệnh -- 4 - Tiểu luận khai phá dữ liệu: SỬ DỤNG PHẦN MỀM WEKA PHÂN LỚP CHO KHẢ NĂNG MẮC CĂN BỆNH TIM heart.arff
au thắt ngực không điển hình Đau không phải đau thắt ngực Không có triệu chứng bệnh -- 4 (Trang 2)
3. Tiến hành chạy thử nhiều lần cây trên số lượng dữ liệu tranning khác nhau: - Tiểu luận khai phá dữ liệu: SỬ DỤNG PHẦN MỀM WEKA PHÂN LỚP CHO KHẢ NĂNG MẮC CĂN BỆNH TIM heart.arff
3. Tiến hành chạy thử nhiều lần cây trên số lượng dữ liệu tranning khác nhau: (Trang 11)
Kết quả cây dưới dạng hình ảnh: - Tiểu luận khai phá dữ liệu: SỬ DỤNG PHẦN MỀM WEKA PHÂN LỚP CHO KHẢ NĂNG MẮC CĂN BỆNH TIM heart.arff
t quả cây dưới dạng hình ảnh: (Trang 11)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w