mô hình cây quyết định

47 236 0
mô hình cây quyết định

Đ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

MỤC LỤC Giới thiệu 1.1 Cây định số ứng dụng 1.2 Biểu diễn định Các độ đo 2.1 Các độ đo dựa lý thuyết thông tin .8 2.1.1 Information Gain 10 2.1.2 Gain Ratio 12 2.2 Gini Index 14 Thuật toán ID3 16 3.1 Giới thiệu giải thuật 16 3.2 Lựa chọn thuộc tính phân loại tốt 19 3.3 Tìm kiếm khơng gian giả thuyết ID3 23 3.4 Chuyển luật 24 3.5 Ƣu tiên học định 25 Thuật toán C4.5 25 4.1 Giới thiệu C4.5 25 4.2 Các độ đo sử dụng C4.5 26 4.2.1 Information Gain 26 4.2.2 Gain Ratio C4.5 28 4.3 Đặc điểm C4.5 29 4.3.1 C4.5 có chế riêng xử lý giá trị thiếu .30 4.3.2 Tránh “Quá vừa” liệu 30 4.3.3 Chuyển đổi từ định sang luật .31 4.4 Nhận xét C4.5 .31 Các vấn đề việc học định .32 5.1 Tránh Overfitting liệu 32 Mơ hình định 5.1.1 Giảm lỗi cắt tỉa .35 5.1.2 Luật POST-PRUNING 36 5.2 Kết hợp thuộc tính có giá trị liên tục .38 5.2.1 Các phƣơng pháp thay cho thuộc tính lựa chọn 39 5.2.2 Xử lý huấn luyện thuộc tính thiếu giá trị 40 5.2.3 Xử lý thuộc tính có chi phí khác 41 Demo 42 6.1 Yêu cầu phần cứng liệu mẫu .42 6.2 Giới thiệu chƣơng trình 42 Quy trình sử dụng chƣơng trình 44 6.3 Quá trình đào tạo .44 Tải vào liệu đào tạo: 44 Tạo định: 44 Rút trích tập luật .45 6.4 Phân lớp 46 6.5 Một số đánh giá 47 6.6 Các đƣờng liên kết tải ứng dụng liệu mẫu 48 Tài liệu tham khảo 49 Mơ hình định Lời mạo đầu Mơ hình định phương pháp phổ biến áp dụng nhiều thực tế cho toán phân lớp dự đoán [1] Chương giới thiệu chung mơ hình định, số độ đo phổ biến áp dụng thuật toán, thuật toán ID3, C4.5, số vấn đề mở rộng định Giới thiệu Mơ hình học định phương pháp cho việc xấp xỉ hàm mục tiêu có giá trị rời rạc biểu diễn dạng định Cây định sau học biểu diễn lại dạng luật if-then để tăng khả dễ đọc Đây phương pháp sử dụng phổ biến số thuật tốn học quy nạp, áp dụng thành công ứng dụng y khoa tài chẩn đốn bệnh hay đánh giá rủi ro tín dụng.[1] 1.1 Cây định số ứng dụng Cây định phương pháp phân lớp thuộc nhóm học có giám sát (supervised learning) như: dựa luật (rule-based), mạng Bayes (naïve Bayes), mạng nơron, SVM,… Ứng dụng định dùng phân lớp dự đoán như:  Dự báo thời tiết (dự báo trời nắng, mưa hay âm u,…) dựa số yếu tố nhiệt độ, sức gió, độ ẩm,…  Dự báo kinh doanh (doanh số tháng tới tăng hay giảm) dựa yếu tố số tiêu dùng, yếu tố xã hội, kiện,…  Tín dụng ngân hàng (khả chi trả tín dụng khách hàng vay mượn)  Thị trường chứng khốn (giá vàng, cổ phiếu tăng hay giảm) Mơ hình định 1.2 Biểu diễn định Từ nhu cầu thực tế trên, mục tiêu xây dựng định có thuộc tính định (là lớp có sẵn hay thuộc tính cần dự đốn) dựa thuộc tính quan sát Ví dụ tốn dự báo thơi tiết thuộc tính định thời tiết với lớp “nắng”, “mưa”, “âm u” thuộc tính điều kiện nhiệt độ, sức gió, độ ẩm,… Thành phần định: [3] An vn1 vn3 vn2 Am vm1 vm2 Al vl1 C2 Ak C1 C1 vk1 C2 vk2 C3 vl2 C3  Nút Ck: nhãn lớp thứ k (thuộc tính định C)  Nút gốc, nút Ai : thuộc tính Ai (thuộc tính điều kiện)  Nhánh Vij: trường hợp thứ j (giá trị, khoảng giá trị) Ai Khoảng giá trị trường hợp phép so sánh (>,=,54 Temperature>85 Vì Information gain (Temperature>54) > Information gain (Temperature>85) nên giá trị Temperature>54 chọn Giá trị thuộc tính tự động tạo so sánh với thuộc tính ứng cử viên khác có sẵn cho việc phát triển định Fayyad Irani (1993) thảo luận phần mở rộng để tiếp cận theo cách chia tách thuộc tính liên tục vào nhiều khoảng hai khoảng dựa ngưỡng Utgoff Brodley (1991) Murthy cộng (1994) thảo luận cách tiếp cận xác định tính cách kết hợp tuyến tính số thuộc tính có giá trị liên tục 5.2.1 Các phƣơng pháp thay cho thuộc tính lựa chọn Có khuynh hướng tự nhiên Information gain thuộc tính chọn với nhiều giá trị thuộc tính khác với vài giá trị Ví dụ, xét thuộc tính Date có nhiều giá trị xảy (ví dụ ngày tháng năm 1979) Nếu ta thêm thuộc tính vào bảng ví dụ định có Play Tennis hay khơng, ta thấy thuộc tính có khả phân loại mạnh Điều xảy thuộc tính Date hồn tồn độc lập tiên đốn hàm mục tiêu liệu đào tạo Vậy thuộc tính có bị sai hay khơng? Thật ra, thuộc tính đặt cho tập liệu có nhiều giá trị mà phân chia tập liệu đào tạo thành tập nhỏ Do đó, có thu thập thông tin cao tập liệu đào tạo, cơng cụ tiên đốn khơng Mơ hình định 39 tốt hàm mục tiêu trường hợp khác Một cách để tránh điều chọn lựa thuộc tính dựa số đánh giá khác sử dụng thuộc tính Information gain Một độ đo sử dụng thành công Gain Ratio Phương pháp sử dụng độ đo cản trở thuộc tính tương tự Date việc kết hợp biểu thức gọi Split Information Trong S1 đến Sc tập c kết trường hợp từ phân hoạch S thuộc tính đánh giá với c A Để ý SplitInformation thực entropy S với với liên quan giá trị thuộc tính A Điều ngược với việc sử dụng Entropy trước xem xét entropy S với liên quan đến giá trị mục tiêu mà giá trị tiên đốn định Đánh giá Gain Ratio định nghĩa biểu thức đánh giá Gain trước SplitInformation sau: 5.2.2 Xử lý huấn luyện thuộc tính thiếu giá trị Trong số trường hợp định liệu thiếu giá trị số thuộc tính Ví dụ, y khoa mong muốn tiên đoán kết bệnh nhân dựa nhiều kiểm tra phòng thí nghiệm, kiểm tra thử máu tập bệnh nhân cho phép Trong trường hợp thơng thường phải ước đốn giá trị thiếu dựa trường hợp mà thuộc tính có giá trị biết Xét trường hợp mà Gain(S,A) tính tốn nút n định để xác định thuộc tính A thuộc tính tốt để kiểm tra nút định Giả sử (x,c(x)) tập liệu đào tạo S giá trị A(x) đến Một chiến thuật liên quan đến thao tác thiếu giá trị thuộc tính gán cho giá trị chiếm hầu hết tập liệu huấn luyện nút n Một thủ tục thứ hai phức tạp gán kết xảy cho giá trị A đơn giản gán giá trị chung cho A(x) Khả nhận cách quan sát tần số giá trị khác cho A số ví dụ nút n Ví dụ: Giả sử thuộc tính A ứng cử cho thuộc tính kiểm tra nút n Ta phải xử lý với ví dụ x khơng có (thiếu) giá trị thuộc tính A (tức là: xA khơng xác định)? Mơ hình định 40  Gọi Sn tập ví dụ học gắn với nút n có giá trị thuộc tính A  Giải pháp 1: xA giá trị phổ biến thuộc tính A số ví dụ thuộc tập Sn  Giải pháp 2: xA giá trị phổ biến thuộc tính A số ví dụ thuộc tập Sn có phân lớp với x  Giải pháp 3: Tính xác suất pv giá trị v thuộc tính A o Gán phần (fraction) pv ví dụ x nhánh tương ứng nút n o Những ví dụ phần (fractional instances) sử dụng để tính giá trị Information Gain Một thuộc tính kiểu nhị phân (0/1) A Nút n ví dụ có giá trị A = 0.4 x Nút n bao gồm: ví dụ có giá trị A = 0.6 x - Một ví dụ x (giá trị thiếu A) - ví dụ có giá trị A - ví dụ có giá trị A P(xA = 1) = 4/10 = 0.4 5.2.3 Xử lý thuộc tính có chi phí khác Trong số cơng đoạn việc học thuộc tính thực thể có liên hệ đến giá Giả sử bác sĩ cần phân loại chuẩn đoán bệnh, vấn đề đặt bác sĩ phải cho bệnh nhân thực kiểm tra xét nghiệm mà chi phí nhỏ Những kiểm tra xét nghiệm thuộc tính cần phải xét đến định Khi đó, cần sử dụng cách đánh giá khác InformationGain nhằm xác định thuộc tính kiểm tra (w *0,1+ số xác định mức độ quan trọng chi phía Information Gain) Gain (S , A) Cost ( A) 1 (Cost ( A)1) Gain( S , A ) w Trong trường hợp vậy, ta ưu tiên định sử dụng thuộc tính chi phí thấp, dựa thuộc tính có giá cao cần tạo phân loại đáng tin cậy ID3 sửa đổi để chuyển thành thuộc tính tính tốn phải trả việc đưa biểu thức giá trị sang định lượng lựa chọn thuộc tính Mơ hình định 41 Demo 6.1 Yêu cầu phần cứng liệu mẫu Chương trình viết ngơn ngữ Visual C# Yêu cầu phần cứng để chạy chương trình:   Máy cài hệ điều hành window Net Framework 3.5 trở lên Dữ liệu mẫu kiểm thử mà nhóm chuẩn bị sẵn gồm có tập tin Bốn tập tin dùng cho q trình đào tạo (có tiếp đầu ngữ trainning_) gồm:     training_4_rows_vi.xlsx training_14_rows_vi.xlsx training_32_rows_vi.xlsx training_210_rows_en.xlsx Bốn tập tin dùng cho trình phân lớp (sau có rút trích luật, có tiếp đầu ngữ data_) gồm:  data_10.000_rows_en.xlsx  data_210_rows_en.xlsx  data_320_rows_vi.xlsx  data_1050_rows_en.xlsx 6.2 Giới thiệu chƣơng trình Giao diện chương trình gồm có vùng Mơ hình định 42 Vùng 1: Các nút để thao tác gồm chức    Nút Menu o Tải tập tin đào tạo vào chương trình o Tải tập tin cần phân lớp (chỉ sau có tập luật) o Thốt chương trình Tab thuật toán tạo o ID3: Sử dụng thuật toán ID3 để tạo định từ liệu đào tạo tải vào chương trình o C4.5: Sử dụng thuật toán C4.5 để tạo định từ liệu đào tạo tải vào chương trình o Rút trích luật: Tạo tập luật cách rút trích từ định tạo Tab phân lớp o Phân lớp: Sau có tập luật, ta tải vào liệu cần phân lớp nhấn nút để phân lớ Vùng 2: Lưới hiển thị liệu từ tập tin tải vào chương trình, trường hợp thực phân lớp lưới hiển thị cột kết phân lớp luật sử dụng để định liệu thuộc lớp tương ứng Vùng 3: Mơ hình định 43 Cây định tạo tương ứng từ liệu đào tạo sau thực phân lớp Chi tiết hiển thị đề cập phần sau (Quá trình đào tạo) Vùng 4: Hiển thị danh sách luật rút trích từ định tạo vùng QUY TRÌNH SỬ DỤNG CHƢƠNG TRÌNH Các bước để sử dụng chương trình demo gồm:      Bƣớc 1: Tải tập tin đào tạo Bƣớc 2: Thực tạo định thuật toán ID3 C4.5 Bƣớc 3: Thực rút trích luật từ tạo bước Bƣớc 4: Tải vào tập tin cần phân lớp Bƣớc 5: Thực phân lớp cho liệu bước Trong q trình sử dụng, có nút lệnh chức bị mờ ngữ cảnh chưa thể thực chức Ví dụ chưa có định chưa thể rút trích tập luật, nút “Rút trích luật” bị mờ 6.3 Quá trình đào tạo TẢI VÀO DỮ LIỆU ĐÀO TẠO: Chọn Nút menu  Load liệu đào tạo Nếu việc tải diễn thành công, lưới liệu (Vùng 2) hiển thị liệu từ tập tin excel tương ứng TẠO CÂY QUYẾT ĐỊNH: Chọn tab Thuật toán tạo  nhấn nút ID3 C4.5 để tạo Nếu thành công định hiển thị Vùng Mơ hình định 44 Hình minh họa định tạo từ liệu đào tạo tập tin training_210_rows_en.xlsx dùng thuật toán ID3 (bên trái) thuật toán C4.5 (bên phải) Nếu sử dụng thuật toán ID3 nút gốc có nhãn root id3 Nếu sử dụng thuật tốn C4.5 nút gốc có nhãn root c4.5 Các nút (khơng phải nút gốc) nhãn nút gồm có phần giá trị thuộc tính nút cha thuộc tính Ví dụ nút có nhãn là: [Rain] Humidity có nghĩa giá trị thuộc tính cha Rain, thuộc tính chọn để phân lớp tiếp Humidity Nút lá: nút nút khơng có nút con, nút có thêm phần [result = 1] [result = 0] kết phân lớp nhánh RÚT TRÍCH TẬP LUẬT Sau có định ta rút trích luật cách: Chọn tab Thuật tốn tạo  nhấn nút Rút trích luật Danh sách luật rút trích từ định hiển thị (có đánh số thứ tự) Vùng hình sau Các luật tạo từ định tạo thuật toán ID3 (ở trên) Mơ hình định 45 Các luật tạo từ định tạo thuật toán C4.5 (ở trên) 6.4 Phân lớp Sau rút trích tập luật, tải vào liệu cần phân lớp, chương trình dựa vào tập luật có để phân lớp cho liệu Nhấn chọn menu  Load liệu cần phân lớp (như hình sau) Sau tải liệu cần phân lớp, có hiển thị liệu cần phân lớp lưới (Vùng 2) sau: Dữ liệu cần phân lớp tập tin data_210_rows_en.xlsx Ở trường hợp có thêm cột kết (Play Tennis) cột luật dùng để phân lớp (Rule) cho liệu dòng tương ứng Mơ hình định 46 Để phân lớp cho liệu tảo vào, chọn Tab Phân lớp  nhấn nút Phân lớp, chương trình bắt đầu thực phân lớp hiển thị lại kết lưới hình Trong trường hợp có dòng liệu khơng phân lớp khơng có luật phân lớp liệu lý khác cột kết cột luật đánh dấu kí tự x 6.5 Một số đánh giá Chương trình xây dựng đủ bước sử dụng kĩ thuật định vào phân lớp gồm tạo cây, sinh luật, phân lớp tập luật sinh Chương trình tập trung vào việc demo nội dung lý thuyết mà nhóm thuyết trình, nên tích hợp thuật toán tạo định ID3 C4.5 Tốc độ thực phân lớp cho liệu chưa tối ưu Sau biểu đồ so sánh tốc độ thực chương trình liệu khác Mơ hình định 47 Thời gian (s) 700 600 500 400 300 Thời gian (s) 200 100 22 12 68 611 Luật, Thuộc tính, Luật dài node, 320 Dòng liệu Luật, Luật, Luật, Thuộc tính, Thuộc tính, Thuộc tính, Luật dài Luật dài Luật dài node, node, node, 210 Dòng liệu 1.000 Dòng liệu 10.000 Dòng liệu Dữ liệu tổng hợp thực demo thiết bị có cấu hình CPU Intel Core i5 – 2.5GHz 6.6 Các đƣờng liên kết tải ứng dụng liệu mẫu Tải ứng dụng địa chỉ: https://www.dropbox.com/s/pgutzi293erzb79/Decision%20Tree%20Release.zip Tải liệu mẫu địa https://www.dropbox.com/s/n51i5mu5c4xg2ob/Decision%20Tree%20Test%20Data.zip Mơ hình định 48 Tài liệu tham khảo [1] Tom M Mitchell, “Machine Learning”, 1997 [2] Lior Rokach, Oded Maimon, Data Mining and Knowledge Discovery Hanbook, Chap 09 [3] Jiawei Han, Micheline Kamber, “Data Mining: Concepts and Techniques”, 2nd Edition, 2006 Mơ hình định 49 ... khảo 49 Mơ hình định Lời mạo đầu Mơ hình định phương pháp phổ biến áp dụng nhiều thực tế cho toán phân lớp dự đoán [1] Chương giới thiệu chung mơ hình định, số độ đo phổ biến áp... thuật toán ID3, C4.5, số vấn đề mở rộng định Giới thiệu Mơ hình học định phương pháp cho việc xấp xỉ hàm mục tiêu có giá trị rời rạc biểu diễn dạng định Cây định sau học biểu diễn lại dạng luật... dụng.[1] 1.1 Cây định số ứng dụng Cây định phương pháp phân lớp thuộc nhóm học có giám sát (supervised learning) như: dựa luật (rule-based), mạng Bayes (naïve Bayes), mạng nơron, SVM,… Ứng dụng định

Ngày đăng: 18/11/2017, 19:07

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

Tài liệu liên quan