Ứng dụng thuật toán c4 5 để phân lớp dữ liệu cán bộ khoa CNTT trường đại học mỏ địa chất hà nội

88 238 0
Ứng dụng thuật toán c4 5 để phân lớp dữ liệu cán bộ khoa CNTT trường đại học mỏ   địa chất hà nội

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRẦN THỊ NHƯ HOA VIỆN ĐẠI HỌC MỞ HÀ NỘI CÔNG NGHỆ THÔNG TIN LUẬN VĂN THẠC SĨ CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN ỨNG DỤNG THUẬT TOÁN C4.5 ĐỂ PHÂN LỚP DỮ LIỆU CÁN BỘ KHOA CNTT TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT HÀ NỘI TRẦN THỊ NHƯ HOA 2014 – 2016 HÀ NỘI – 2016 BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN ĐẠI HỌC MỞ HÀ NỘI LUẬN VĂN THẠC SĨ ỨNG DỤNG THUẬT TOÁN C4.5 ĐỂ PHÂN LỚP DỮ LIỆU CÁN BỘ KHOA CNTT TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT - HÀ NỘI TRẦN THỊ NHƯ HOA CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN MÃ SỐ: 60.48.02.01 NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN QUANG HOAN HÀ NỘI – 2016 LỜI CAM ĐOAN Tên Trần Thị Như Hoa – học viên lớp cao học Công nghệ Thông tin Khóa (2014 – 2016) Viện Đại học Mở Hà Nội xin cam đoan: Luận văn thạc sỹ cơng trình nghiên cứu thân hướng dẫn PGS TS Nguyễn Quang Hoan Các kết luận văn tốt nghiệp thạc sỹ trung thực, khơng phải chép tồn văn cơng trình khác Hà Nội, ngày 30 tháng 11 năm 2016 Tác giả luận văn Trần Thị Như Hoa i LỜI CẢM ƠN Em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin – Khoa Đào tạo Sau đại học – Viện Đại học Mở Hà Nội tạo điều kiện thuận lợi giúp em hoàn thành luận văn Em xin chân thành cảm ơn hướng dẫn, bảo tận tình PGS.TS Nguyễn Quang Hoan suốt thời gian thực đề tài, cảm ơn thày dành thời gian giúp đỡ động viên để em hồn thành luận văn Xin cảm ơn anh chị, bạn bè học viên lớp cao học Cơng nghệ Thơng tin khóa ủng hộ, giúp đỡ động viên thời gian học tập nghiên cứu Cuối em xin cảm ơn thành viên gia đình ln động viên giúp đỡ để em hồn thành luận văn Qua thời gian nghiên cứu em hoàn thành luận văn với đề tài “Ứng dụng thuật toán C4.5 để phân lớp liệu cán Khoa Công nghệ Thông tin – Trường Đại học Mỏ - Địa chất – Hà Nội” Tuy cố gắng chắn khơng tránh khỏi thiếu sót Kính mong nhận thơng cảm đóng góp ý kiến quý Thầy, Cô bạn Hà Nội, ngày 30 tháng 11 năm 2016 Tác giả Trần Thị Như Hoa ii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT v DANH MỤC CÁC BẢNG vi DANH MỤC CÁC HÌNH vii LỜI MỞ ĐẦU viii CHƯƠNG TỔNG QUAN VỀ PHÂN LỚP DỮ LIỆU 1.1 Khái quát phân lớp liệu 1.1.1 Phân lớp liệu 1.1.2 Các vấn đề liên quan đến phân lớp liệu 1.1.3 Một số phương pháp đánh giá độ xác mơ hình phân lớp 1.2 Cây định ứng dụng phân lớp liệu 1.2.1 Giới thiệu mơ hình định 1.2.2 Quá trình xây dựng định 1.3 Đánh giá định phân lớp liệu 10 1.3.1 Ưu điểm định 10 1.3.2 Điểm yếu định 12 1.4 Một số thuật toán phổ biến mơ hình phân lớp 13 1.5 Kết luận chương 13 CHƯƠNG THUẬT TOÁN C4.5 VÀ THUẬT TỐN BAYES 14 2.1 Thuật tốn định C4.5 14 2.1.1 Thuật tốn C4.5 chọn thuộc tính tốt 15 2.1.2 Thuật toán C4.5 làm việc với liệu bị thiếu 16 2.1.3 Tránh vừa liệu 17 2.1.4 Chuyển đổi từ định sang luật 18 2.2 Ví dụ minh họa thuật toán C4.5 19 2.3 Thuật toán Bayes thơ ngây 26 2.3.1 Ý tưởng thuật toán Bayes 27 2.3.2 Các bước thực thuật toán Bayes 27 iii 2.4 Ví dụ minh họa thuật toán Bayes 28 2.5 Kết luận chương 29 CHƯƠNG PHÂN LỚP CÁN BỘ SỬ DỤNG 31 THUẬT TOÁN C4.5 VÀ THUẬT TOÁN BAYES 31 3.1 Giới thiệu toán 31 3.2 Thu thập tiền xử lý liệu 31 3.2.1 Thu thập liệu 31 3.2.2 Phân tích xử lý liệu 32 3.3 Phân loại cán sử dụng thuật toán C4.5 36 3.3.1 Triển khai thuật toán C4.5 36 3.3.2 Quá trình xây dựng định 37 3.4 Phân loại cán sử dụng thuật toán Bayes thơ ngây 57 3.5 Giới thiệu số công cụ sử dụng khai phá liệu 62 3.5.1 Giới thiệu chung 62 3.5.2 Ngơn ngữ lập trình R 63 3.6 Thử nghiệm ứng dụng 65 3.6.1 Thử nghiệm – Thuật toán định C4.5 R 65 3.6.2 Kết thử nghiệm 67 3.6.3 Đánh giá độ đo hiệu thử nghiệm 68 3.6.4 Thử nghiệm -Thuật tốn Nạve Bayes R 69 3.6.5 Kết thử nghiệm 71 3.6.6 Đánh giá độ đo hiệu thử nghiệm 72 3.7 Vai trò C4.5 Bayes toán phân lớp cán 72 3.8 Kết luận chương 73 KẾT LUẬN 74 HƯỚNG PHÁT TRIỂN 75 TÀI LIỆU THAM KHẢO 76 iv DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT Viết tắt Tiếng Anh Tiếng Việt Info Information Thông tin IG Information Gain Độ lợi thông tin G Gain Độ lợi GR Gain Ratio Tỉ số độ lợi SplitInfo Split Information Thông tin phân phối liệu v DANH MỤC CÁC BẢNG Bảng 2.1: Tập liệu học weather 19 Bảng 2.2: Dữ liệu mẫu tin cần dự báo 28 Bảng 2.3: Bảng xác suất tập liệu weather 28 Bảng 3.1: Bảng thuộc tính tập liệu cán 32 Bảng 3.2: Dữ liệu mẫu huấn luyện cán khoa CNTT (S) 34 Bảng 3.3: Bảng so sánh kết GainRatio tập thuộc tính S 40 Bảng 3.4: Bảng mẫu huấn luyện S1 (DV = Co) 41 Bảng 3.5: Bảng so sánh kết GainRatio tập thuộc tính S1 45 Bảng 3.6: Bảng mẫu huấn luyện S2 (CDNN=GV) 45 Bảng 3.7: Bảng so sánh kết GainRatio tập thuộc tính S2 48 Bảng 3.8: Bảng mẫu huấn luyện S3 (TDCM=Ths) 49 Bảng 3.9: Bảng so sánh kết GainRatio tập thuộc tính S3 51 Bảng 3.10: Bảng mẫu huấn luyện S3.1 (TDCM=TS) 52 Bảng 3.11: Bảng so sánh kết GainRatio tập thuộc tính S3.1 53 Bảng 3.12:Bảng mẫu huấn luyện S4 (GT = Nu) 54 Bảng 3.13: Bảng tập luật rút từ định C4.5 56 Bảng 3.14: Bảng xác suất tập liệu cán 58 Bảng 3.15: Bảng liệu mẫu tin cần dự báo 58 Bảng 3.16: Bảng liệu mẫu tin gán nhãn 61 Bảng 3.17: Đoạn mã minh họa giải thuật C4.5 66 Bảng 3.18: Đoạn mã minh họa thuật toán Bayes thơ ngây 70 vi DANH MỤC CÁC HÌNH Hình 1.1: Q trình phân lớp liệu – Xây dựng mơ hình phân lớp Hình 1.2: Quá trình phân lớp liệu – phân lớp liệu .4 Hình 1.3: Ước lượng độ xác mơ hình phân lớp với phương pháp holdout Hình 1.4: Mơ tả chung định 10 Hình 2.1: Cây định cho tập liệu weather 26 Hình 3.1: Cây định cấp 41 Hình 3.2: Cây định cấp 45 Hình 3.3: Cây định cấp 3.1 49 Hình 3.4: Cây định cấp 51 Hình 3.5: Cây định cấp 3.2 54 Hình 3.6: Cây định hồn chỉnh 56 Hình 3.7: Giao diện lập trình ngơn ngữ R 65 Hình 3.8: Cây định sử dụng thuật toán C4.5 R 68 vii LỜI MỞ ĐẦU Trong trình hoạt động, người tạo nhiều liệu nghiệp vụ Các tập liệu tích lũy có kích thước lớn, chưa nhiều thơng tin ẩn dạng quy luật chưa khám phá Chính nhu cầu đặt cần tìm cách trích rút từ tập liệu luật phân lớp liệu hay dự đoán xu hướng liệu tương lai Những quy tắc nghiệp vụ thông minh tạo phục vụ đắc lực cho hoạt động thực tiễn, phục vụ đắc lực cho trình nghiên cứu khoa học Cơng nghệ phân lớp dự đốn liệu đời để đáp ứng mong muốn Cơng nghệ phân lớp liệu đã, phát triển mạnh mẽ trước khao khát tri thức người Trong năm qua, phân lớp liệu thu hút quan tâm nhà nghiên cứu nhiều lĩnh vưc khác Công nghệ ứng dụng nhiều lĩnh vực thực tế thương mại, nhà băng, maketing, nghiên cứu thị trường, bảo hiểm, y tế, giáo dục v.v Nhiều kỹ thuật phân lớp đề xuất như: Phân lớp định (Decision tree classification), phân lớp Bayesian (Bayesian classifier), phân lớp K-láng giềng (K-nearest neighbor classifier), mạng nơron, phân tích thống kê Trong kỹ thuật đó, định coi cơng cụ mạnh, phổ biến đặc biệt thích hợp cho khai phá liệu Trong mơ hình phân lớp, thuật toán phân lớp nhân tố chủ đạo Do cần xây dựng thuật tốn có độ xác cao, thực thi nhanh kèm với khả mở rộng để thao tác với tập liệu ngày lớn Với nhu cầu đặt ra, luận văn nghiên cứu tổng quan cơng nghệ phân lớp liệu nói chung phân lớp liệu dựa thuật toán C4.5 thuật tốn Bayes nói riêng Việc phân tích đánh giá thuật tốn có giá trị khoa học thực tiễn Tìm hiểu thuật tốn giúp tiếp thu phát triển mặt tư tưởng, kỹ thuật công nghệ tiên tiến Từ triển khai cài đặt thử nghiệm mơ hình phân lớp liệu thực tế Trong luận văn, tác giả sử dụng ngôn ngữ lập trình R để minh họa cho tốn phân lớp cán dựa viii tài chính, hay tính tốn sinh học Với hàng triệu kĩ sư nhà khoa học làm việc môi trường công nghiệp mơi trường hàn lâm, Matlab ngơn ngữ tính tốn khoa học + Weka mơi trường thử nghiệm KPDL nhà khoa học thuộc trường Đại học Waitako, NZ, khởi xướng đóng góp nhiều nhà nghiên cứu giới Weka phần mềm mã nguồn mở, cung cấp công cụ trực quan sinh động cho người tìm hiểu KPDL Weka cho phép giải thuật học phát triển tích hợp vào mơi trường Hệ thống viết java Nó chạy hầu hết tất hệ điều hành Weka cung cấp nhiều giải thuật khác với nhiều phương thức cho trình xử lý để ước lượng kết sơ đồ cho liệu Weka cung cấp tính giao diện đồ họa người dùng, môi trường để so sánh giải thuật học Weka lấy liệu từ file có định dạng arff, phát sinh từ file bảng sở liệu Cách sử dụng Weka thông qua giao diện đồ họa 3.5.2 Ngơn ngữ lập trình R Ngơn ngữ R đề xuất R Ihaka R Gentleman phần mềm miễn phí mã nguồn mở chạy nhiều phần cứng Intel, PowerPC, Alpha, Sparc nhiều hệ điều hành khác Unix, Linux, Windows, Mac Hơn nữa, “R phần mềm sử dụng cho phân tích thống kê đồ thị Bản chất R ngơn ngữ máy tính đa năng, sử dụng cho nhiều mục tiêu khác nhau, từ tính tốn đơn giản, tốn học giả trí, tính tốn ma trận đến phân tích thống kê phức tạp Vì ngơn ngữ nên người ta sử dụng R để phát triển thành phần mềm chun mơn cho vấn đề tính tốn cá biệt Với mơ hình tốn sử dụng thuật tốn C4.5 thuật toán Bayes thơ ngây, tác giả chọn ngơn ngữ lập trình R để minh họa số lý sau:  Một số ưu điểm R + R phần mềm mã nguồn mở nên hồn tồn miễn phí + R dễ học phát triển nhanh ứng dụng tính tốn xác suất thống kê, phân tích liệu có nhiều cơng cụ tích hợp sẵn, 63 + Có khả điều khiển liệu lưu trữ số liệu, + R có tính ngun bản, + R hỗ trợ lập trình hướng đối tượng, + Có khả biểu diễn đồ họa phong phú, + Đóng vai trị ngơn ngữ lập trình bậc cao C, C++, java v.v  Tuy nhiên R tồn số điểm yếu sau + R sở liệu kết nối đến hệ quản trị sở liệu + Việc diễn giải ngôn ngữ R chậm cho phép gọi tới mã C C++ + Khơng có bảng tính quan sát liệu kết nối đến Excel/MS Office + Mỗi câu lệnh R kết thúc phím Enter nên gây bất tiện, sai phải làm lại từ đầu Không chuyên nghiệp không hỗ trợ thương mại 64 Hình 3.7: Giao diện di lập trình ngơn ngữ R 3.6 Thử nghiệm ứng ng d dụng 3.6.1 Thử nghiệm m – Thuật toán định nh C4.5 R  Chương trình tr gồm số bước sau: Đọc ọc liệu đầu vào v từ file Excel lưu ới dạng “csv” có tên “datacanbo” Kiểm ểm tra, chỉnh sửa v thêm bớt liệu (nếu cần) Tạo ợc định m hình Đánh giá độ ộ xác thuật tốn C4.5 Thuật toán quy định cài đặt gói thư viện ện rpart hay tree Tác giả chọn trình ình bày giải gi thuật ật định gói tree Để sử dụng thuật tốn trước tiên cần ần nạp thư th viện tree lệnh sau: library(tree) 65 tree (formula, data, …, split=c(“deviance”,”gini”),…, minsize,… ) Tham số: + formula: biểu thức dự đoán, dùng chung cho phân lớp hồi quy + data: khung chứa liệu học có chứa biểu thức dự đoán (nhãn) + split: hàm phân hoạch liệu + minsize: không phân hoạch tiếp số phần tử nút nhỏ minsize Các tham số lại dùng đến Gói thư viện có hàm predict() sau: predict(object,newdata,type=c(“vector”, “tree”, “class”,”where”) v.v Tham số: + object: mơ hình học định dùng để dự đoán nhãn + newdata: tập liệu kiểm tra (dự đoán nhãn) + type: kiểu dự đoán Các tham số cịn lại dùng đến Gói thư viện tree có hàm tree() cho phép xây dựng mơ hình học định tập liệu học hàm predict() cho phép dự đoán nhãn tập kiểm tra dựa mơ hình học Ngồi ra, cịn có hàm plot() hàm text() hỗ trợ cho việc vẽ cậy định Thuật toán tạo định C4.5 cụ thể hóa việc lập trình với nội dung câu lệnh bảng 3.17: Bảng 3.17: Đoạn mã minh họa giải thuật C4.5 Dòng Mã lệnh # đường dẫn đến file liệu setwd("C:/Users/nhuhoa/Documents/R") #đọc file liệu datacanbo

Ngày đăng: 22/03/2018, 19:41

Từ khóa liên quan

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

Tài liệu liên quan