Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
2,96 MB
Nội dung
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN KHAI PHÁ DỮ LIỆU ĐỀ TI: ỨNG DỤNG THUẬT TOÁN SVM ĐỂ DỰ ĐOÁN BỆNH UNG THƯ PHỔI Sinh viên thực hiện: LƯU VĂN QUÂN TRẦN VĂN HO Giảng viên hướng dẫn: Ngành: Chuyên ngành: Lớp: Khóa: Ts.NGUYỄN THỊ THANH TÂN CƠNG NGHỆ THƠNG TIN CÔNG NGHỆ PHẦN MỀM D13CNPM4 2018-2023 Hà Nội, tháng 06 năm 2021 PHIẾU CHẤM ĐIỂM STT Họ tên Nội dung thực - Dữ liệu - Chương trình - Báo cáo Lưu Văn Quân MSV: 18810310032 Trần Văn Hào MSV: 18810310076 Họ tên giảng viên Giảng viên chấm 1: Giảng viên chấm 2: Điểm - Dữ liệu - Chương trình - Báo cáo Chữ ký Ghi Chữ ký MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 1.1 Khái niệm 1.1.1 Khai phá liệu ? 1.1.2 Khai phá tri thức từ CSDL 1.1.3 Các ứng dụng khai phá liệu: 1.1.4 Các bước trình khai phá liệu: 1.2 Một số kỹ thuật khai phá liệu: 1.2.1 Kỹ thuật khai phá luật kết hợp 1.2.2 Kỹ thuật phân lớp 1.2.3 Kỹ thuật phân cụm CHƯƠNG 2: THUẬT TOÁN SVM 2.1 Giới thiệu chung SVM 2.2 SVM làm việc 2.3 Cách chọn siêu phẳng tối ưu 2.4 Tính m (margin) 2.5 Phương trình SVM 2.5.1 Sai số dự đoán 2.5.2 Hàm mát 10 2.5.3 Hàm đánh giá 10 CHƯƠNG 3: SVM VÀ BÀI TOÁN DỰ ĐOÁN BỆNH UNG THƯ PHỔI 11 3.1 Phân tích tốn 11 3.2 Đọc xây dựng liệu, chương trình 12 KẾT LUẬN 17 TÀI LIỆU THAM KHẢO 18 LỜI NÓI ĐẦU Trong thời buổi đại ngày nay, công nghệ thông tin ứng dụng khơng ngừng phát triển, lượng thông tin sở liệu thu thập lưu trữ tích lũy ngày nhiều lên Con người mà cần có thông tin với tốc độ nhanh để đưa định dựa lượng liệu khổng lồ có Các phương pháp quản trị khai thác sở liệu truyền thống ngày không đáp ứng thực tế Vì thế, khuynh hướng kỹ thuật kỹ thuật phát tri thức khai phá liệu nhanh chóng phát triển Khai phá liệu nghiên cứu, ứng dụng nhiều lĩnh vực khác nước giới Ở Việt Nam, kỹ thuật nghiên cứu dần đưa vào ứng dụng Khai phá liệu bước quy trình phát tri thức Hiện nay, người khơng ngừng tìm tịi kỹ thuật để thực khai phá liệu cách nhanh có kết tốt Trong tập lớn này, chúng em tìm hiểu trình bày kỹ thuật khai phá liệu để phân lớp liệu tổng quan khai phá liệu, với đề tài “Ứng dụng thuật toán SVM để dự đoán bệnh ung thư phổi ” Trong trình làm tập lớn này, chúng em xin gửi lời cảm ơn đến cô Nguyễn Thị Thanh Tân Cơ tận tình hướng dẫn chi tiết cho chúng em, kiến thức thầy cung cấp hữu ích Chúng em mong nhận góp ý từ Chúng em xin chân thành cảm ơn! CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 1.1 Khái niệm 1.1.1 Khai phá liệu ? Khai phá liệu q trình xác định mẫu tiềm ẩn có tính hợp lệ, lạ, có ích hiểu khối liệu lớn 1.1.2 Khai phá tri thức từ CSDL Khai phá tri thức từ CSDL gồm bước - B1: Lựa chọn CSDL - B2: Tiền xử lý - B3: Chuyển đổi - B4: Khai phá liệu - B5: Diễn giải đánh giá Khai phá liệu bước trình khai phá tri thức từ CSDL PAGE \* MERGEFORMAT Hình 1.1: Quá trình khai phá tri thức 1.1.3 Các ứng dụng khai phá liệu: Phát tri thức khai phá liệu liên quan đến nhiều ngành, nhiều lĩnh vực: thống kê, trí tuệ nhân tạo, sở liệu, thuật tốn, tính tốn song song tốc độ cao, thu thập tri thức cho hệ chuyên gia, quan sát liệu Đặc biệt phát tri thức khai phá liệu gần gũi với lĩnh vực thống kê, sử dụng phương pháp thống kê để mơ hình liệu phát mẫu, luật Ngân hàng liệu (Data Warehousing) cơng cụ phân tích trực tuyến (OLAP- On Line Analytical Processing) liên quan chặt chẽ với phát tri thức khai phá liệu Khai phá liệu có nhiều ứng dụng thực tế, ví dụ như: ⮚ Bảo hiểm, tài thị trường chứng khốn: phân tích tình hình tài dự báo giá loại cổ phiếu thị trường chứng khoán Danh mục vốn giá, lãi suất, liệu thẻ tín dụng, phát gian lận, … ⮚ Thống kê, phân tích liệu hỗ trợ định ⮚ Điều trị y học chăm sóc y tế: số thơng tin chuẩn đoán bệnh lưu hệ thống quản lý bệnh viện Phân tích mối liên hệ triệu chứng bệnh, chẩn đoán phương pháp điều trị (chế độ dinh dưỡng, thuốc, ) ⮚ Sản xuất chế biến: Quy trình, phương pháp chế biến xử lý cố.Text mining Web mining: Phân lớp văn trang Web, tóm tắt văn bản, ⮚ Lĩnh vực khoa học: Quan sát thiên văn, liệu gene, liệu sinh vật học, tìm kiếm, so sánh hệ gene thông tin di truyền, mối liên hệ gene số bệnh di truyền, ⮚ Mạng viễn thơng: Phân tích gọi điện thoại hệ thống giám sát lỗi, cố, chất lượng dịch vụ, 1.1.4 Các bước trình khai phá liệu: PAGE \* MERGEFORMAT Bước thứ nhất: Hình thành, xác định định nghĩa 5bài tốn Là tìm hiểu lĩnh vực ứng dụng từ hình thành tốn, xác định nhiệm vụ cần phải hồn thành Bước định cho việc rút tri thức hữu ích cho phép chọn phương pháp khai phá liệu thích hợp với mục đích ứng dụng chất liệu Bước thứ hai: Thu thập tiền xử lý liệu Là thu thập xử lý thơ, cịn gọi tiền xử lý liệu nhằm loại bỏ nhiễu (làm liệu), xử lý việc thiếu liệu (làm giàu liệu), biến đổi liệu rút gọn liệu cần thiết, bước thường chiếm nhiều thời gian tồn qui trình phát tri thức Do liệu lấy từ nhiều nguồn khác nhau, khơng đồng nhất, … gây nhầm lẫn Sau bước này, liệu quán, đầy đủ, rút gọn rời rạc hoá Bước thứ ba: Khai phá liệu, rút tri thức Là khai phá liệu, hay nói cách khác trích mẫu hoặc/và mơ hình ẩn liệu Giai đoạn quan trọng, bao gồm công đoạn như: chức năng, nhiệm vụ mục đích khai phá liệu, dùng phương pháp khai phá nào? Thông thường, toán khai phá liệu bao gồm: tốn mang tính mơ tả - đưa tính chất chung liệu, toán dự báo - bao gồm việc phát suy diễn dựa liệu có Tuỳ theo tốn xác định mà ta lựa chọn phương pháp khai phá liệu cho phù hợp Bước thứ tư: Sử dụng tri thức phát Là hiểu tri thức tìm được, đặc biệt làm sáng tỏ mơ tả dự đốn Các bước lặp lặp lại số lần, kết thu được lấy trung bình tất lần thực Các kết q trình phát tri thức đưa vào ứng dụng lĩnh vực khác kết dự đốn 1.2 Một số kỹ thuật khai phá liệu: 1.2.1 Kỹ thuật khai phá luật kết hợp Trong khai phá liệu, mục đích luật kết hợp tìm mối quan hệ đối tượng khối lượng lớn liệu Để khai phá luật kết hợp có PAGE \* MERGEFORMAT nhiều thuật tốn, dùng phổ biến thuật toán Apriori Đây thuật toán khai phá tập phổ biến liệu giao dịch để phát luật kết hợp dạng khẳng định nhị phân sử dụng để xác định, tìm luật kết hợp liệu giao dịch Ngồi ra, cịn có thuật tốn FP-growth, thuật toán Partition,… 1.2.2 Kỹ thuật phân lớp Trong kỹ thuật phân lớp gồm có thuật tốn: - Phân lớp định (giải thuật ID3, J48): phân lớp liệu dựa việc lập nên định, nhìn vào định định liệu thuộc phân lớp - Phân lớp dựa xác suất (Naïve Bayesian): dựa việc giả định thuộc tính độc lập mạnh với qua việc sử dụng định lý Bayes - Phân lớp dựa khoảng cách (giải thuật K – láng giềng): làm láng giềng làm, liệu phân vào lớp k đối tượng gần với liệu - Phân lớp SVM: phân lớp liệu dựa việc tìm siêu phẳng “tốt nhất” để tách lớp liệu không gian nhiều chiều 1.2.3 Kỹ thuật phân cụm Phân cụm liệu cách phân bố đối tượng liệu vào nhóm/ cụm cho đối tượng cụm giống phần tử khác cụm, gồm có số phương pháp phân cụm như: + Phân cụm phương pháp K-mean: tìm tâm cụm mà khoảng cách tâm đến đối tượng, liệu khác ngắn + Phân cụm đồ thị Ngoài ra, khai phá liệu có nhiều kỹ thuật, kỹ thuật đơn giản khai phá liệu mà chúng em tìm hiểu PAGE \* MERGEFORMAT CHƯƠNG 2: THUẬT TOÁN SVM 2.1 Giới thiệu chung SVM SVM (Support Vector Machine) thuật tốn học máy có giám sát sử dụng phổ biến ngày toán phân lớp (classification) hay hồi qui (Regression) SVM đề xuất Vladimir N Vapnik đồng nhiệp ông vào năm 1963 Nga sau trở nên phổ biến năm 90 nhờ ứng dụng giải tốn phi tuyến tính (nonlinear) phương pháp Kernel Trick 2.2 SVM làm việc Ý tưởng SVM tìm siêu phẳng (hyper lane) để phân tách điểm liệu Siêu phẳng chia không gian thành miền khác miền chứa loại liệu Hình 1.2 Hình ảnh mặt phẳng hyper lane khơng gian chiều PAGE \* MERGEFORMAT Siêu phẳng biểu diễn hàm số = 5b (W X vector tích vơ) Hay WT (WT ma trận chuyễn vị) Vấn đề có nhiều siêu phẳng, phải chon để tối ưu 2.3 Cách chọn siêu phẳng tối ưu Siêu phẳng phân tách hai lớp liệu H0 thỏa mã + b =0 Siêu phẳng tạo hai nửa không gian (half space) liệu : Không gian liệu lớp âm Xi thỏa mãn không gian liệu lớp dương Xj thỏa mãn Tiếp theo ta chọn hai siêu phẳng lề H1 qua điểm thuộc lớp âm H2 qua điểm thuộc lớp dương song song với H0 ● H1: + b =1 ● H2: + b =1 Khoảng cách từ H1 đến H0 Khoảng cách từ H2 đến H0 m = + gọi mức lề Siêu phẳng tối ưu mà cần chọn siêu phẳng phân tách có lề lớn Lý thuyết học máy siêu phẳng cực tiểu hóa giới hạn lỗi mắc phải 2.4 Tính m (margin) Khoảng cách từ điểm Xk đến siêu phẳng H0 là: Trong độ dài vector W: Khoảng cách từ điểm Xi nằm H1 đến H0 : Khoảng cách từ điểm Xj nằm H2 đến H0 : Từ ta tính mức lề : Giờ bạn hiểu điểm nằm hai siêu phẳng H1 H2 gọi Support Vector Vậy việc training giải thuật SVM tương với tốn cực tiểu hóa PAGE \* MERGEFORMAT có ràng buộc sau : Cực tiểu hóa : Với điều kiện: Nhân hai vế bất đẳng thức (1) (2) với yi ta điều kiện thu gọn : Bài toán tương đương với Minimize: Subject to: (3) Với điều kiện này, tốn hard-margin SVM Việc giải toán liên quan đến số lý thuyết toán học tương đối phức tạp điều kiện Karush-Kuhn-Tucker, hàm đối ngẫu Lagrange, Convex optimization … Mình khơng nói Việc xác định siêu phẳng H0 giả sử điều kiện lý tưởng tập liệu phân tách tuyến tính, tìm hai siêu phẳng lề H1 H2 mà khơng có điểm liệu nằm chúng Vậy trường hợp tập liệu có nhiều điểm gây nhiễu, điểm không thỏa mãn điều kiện (3), tốn khơng tìm lời giải Hình 1.3 Hình ảnh cho tốn hard-margin Đối với trường hợp cần nới lỏng điều kiện lề việc sử dụng biến slack PAGE \* MERGEFORMAT Bài toán trường hợp trở thành: Minimize: Subject to: Trong C tham số xác định mức độ phạt (penalty degree) lỗi (đây mà tham số quan trọng mà bạn cần phải tối ưu trình huấn luyện SVM) Đây tốn Soft-margin SVM Một vấn đề cuối mà muốn nhắc đến tốn có khơng gian liệu phi tuyến tính (non-linear) khơng thể tìm siêu phẳng H0 thỏa mãn tốn Hình 1.4 Hình ảnh cho toán soft-margin Để giải toán trường hợp chúng cần biểu diễn (ánh xạ ) liệu từ không gian ban đầu X sang không gian F hàm ánh xạ phi tuyến: PAGE \* MERGEFORMAT Trong không gian F tập liệu phân tách tuyến tính Nhưng sinh đề lớn khơng gian số chiều giữ liệu tăng lên nhiều so với khơng gian ban đầu làm cho chi phí tính tốn vơ tốn Rất may tốn SVM người ta tìm cách khơng cần phải tính , hàm ánh xạ mà tính Phương pháp gọi Kernel Trick , K(x,z) hàm nhân (Kernel functions) Một số hàm nhân thường dùng: ● Polynomial: d ● Gaussian RBF: ● Sigmoidal: 2.5 Phương trình SVM Phương trình tuyến tính có dạng: Trong w thuộc Rn vector hệ số ứng với chiều vector b hệ số tự khơng gian hai chiều gọi đường thẳng, không gian chiều mặt phẳng 2.5.1 Sai số dự đoán Sai số dự đoán tính cơng thức sau: Trong đó, e sai số dự đoán, y giá trị thực giá trị dự đốn (hay cịn gọi y_pred) Hàm bình phương để tránh phương trình kết âm e sai số, nên giá trị nhỏ tốt 2.5.2 Hàm mát PAGE \* MERGEFORMAT 2.5.3 Hàm đánh giá - Accuracy : (ACC) Cách đơn giản hay sử dụng accuracy (độ xác) Cách đánh giá đơn giản tính tỉ lệ số điểm dự đoán tổng số điểm tập liệu kiểm thử: Trong TP, TN dự đốn FP, FN dự đoán sai ● Precision - lấy ● Recall - lấy PAGE \* MERGEFORMAT CHƯƠNG 3: SVM V BI TOÁN DỰ ĐOÁN BỆNH UNG THƯ PHỔI 3.1 Phân tích tốn Về liệu sử dụng liệu thu thâp Kaggle bệnh ung thư phổi “Lung Cancer Prediction” - Input X: gồm Age, Smokes, Areaq, Alkhol ⮚ Age: độ tuổi khảo sát PAGE \* MERGEFORMAT ⮚ Smokes: số lượng thuốc hút ngày ⮚ AreaQ: kích thước khối u ⮚ Alkhol: Lượng sử dụng rượi - Output Y: ⮚ Y dạng nhị phân 0/1 ⮚ biểu thị tượng trưng cho người không mắc bệnh, biểu thị tượng trưng cho người mắc bệnh 3.2 Đọc xây dựng liệu, chương trình ❖ Liên kết liệu hiển thị PAGE \* MERGEFORMAT ❖ Max, min, giá trị trung bình, biến phân (variant), độ lêch chuẩn (std) … ❖ Phân phối chuẩn đoán PAGE \* MERGEFORMAT ❖ Chia tập train test ❖ Mơ hình huấn luyện ❖ Hệ số sau huấn luyện PAGE \* MERGEFORMAT ❖ Kết quả, độ xác ma trận ❖ Làm rõ cách tính độ xác => 100% nhãn dự đoán tổng số nhãn => 100% nhãn dự đoán tổng số nhãnPAGE \* MERGEFORMAT => 100% nhãn dự đoán tổng số dự đoán => 100% nhãn dự đoán tổng số dự đốn ❖ Hình vẽ minh họa PAGE \* MERGEFORMAT KẾT LUẬN Những kết đạt đề tài: ✔ Đã tìm hiểu kiến thức Machine Learning ✔ Đã tìm hiểu thuật toán SVM ✔ Đã áp dụng thuật toán SVM để dự đoán người mắc bệnh ung thư phổi với độ xác cao Hạn chế: Trong q trình làm chúng em cịn gặp nhiều vấn đề tìm hiểu thuật tốn cịn gặp nhiều khó khăn, kiến thức cịn hạn chế, thời gian có hạn với mơn học Hướng phát triển: Chúng em tiếp tục nghiên cứu Machine Learning áp dụng thuật toán SVM cho tốn khác Trong q trình thực chúng em cố gắng tìm hiểu,học hỏi khả có giới hạn, khơng tránh khỏi sai sót,nên chưa giải vấn đề đặt Em mong nhận thông cảm quý thầy cô bạn Em xin chân thành cảm ơn! PAGE \* MERGEFORMAT TI LIỆU THAM KHẢO [1] Slide giảng môn “Data Mining” – Nguyễn Thị Thanh Tân [2] Blog thuật toán SVM- codelearn [4] Blog ML machine learning - machinelearning.com PAGE \* MERGEFORMAT