Danh mục tài liệu

Bài giảng Nhập môn Học máy và Khai phá dữ liệu - Chương 6: Phân loại và đánh giá hiệu năng

Số trang: 30      Loại file: pdf      Dung lượng: 1.75 MB      Lượt xem: 28      Lượt tải: 0    
Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Nhập môn Học máy và Khai phá dữ liệu - Chương 6: Phân loại và đánh giá hiệu năng. Chương này cung cấp cho học viên những nội dung về: đánh giá hiệu năng hệ thống học máy; các phương pháp đánh giá; lựa chọn tham số; đánh giá và lựa chọn mô hình; các tiêu chí đánh giá;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn Học máy và Khai phá dữ liệu - Chương 6: Phân loại và đánh giá hiệu năng 1 Nhập môn Học máy và Khai phá dữ liệu (IT3190) 2 Nội dung môn học • Lecture 1: Giới thiệu về Học máy và khai phá dữ liệu • Lecture 2: Thu thập và tiền xử lý dữ liệu • Lecture 3: Hồi quy tuyến tính (Linear regression) • Lecture 4+5: Phân cụm • Lecture 6: Phân loại và Đánh giá hiệu năng • Lecture 7: dựa trên láng giềng gần nhất (KNN) • Lecture 8: Cây quyết định và Rừng ngẫu nhiên • Lecture 9: Học dựa trên xác suất • Lecture 10: Mạng nơron (Neural networks) • Lecture 11: Máy vector hỗ trợ (SVM) • Lecture 12: Khai phá tập mục thường xuyên và các luật kết hợp • Lecture 13: Thảo luận ứng dụng học máy và khai phá dữ liệu trong thực tế 3 Nhắc lại: Học có giám sát • Học có giám sát (Supervised learning) • Tập dữ liệu học (training data) bao gồm các quan sát (examples, observations), mà mỗi quan sát được gắn kèm với một giá trị đầu ra mong muốn. • Mục đích là học một hàm (vd: một phân lớp, một hàm hồi quy,...) phù hợp với tập dữ liệu hiện có và khả năng tổng quát hoá cao. • Hàm học được sau đó sẽ được dùng để dự đoán cho các quan sát mới. • Phân loại (classification): nếu đầu ra (output – y) thuộc tập rời rạc và hữu hạn. 4 Phân loại • Multi-class classification (phân loại nhiều lớp): mỗi quan sát x chỉ nhận 1 nhãn trong tập nhãn lớp {c1, c2, …, cL}  Lọc Spam: y thuộc {spam, normal}  Đánh giá nguy cơ tín dụng: y thuộc {high, normal}  Phán đoán tấn công mạng: ? • Multi-label classification (phân loại đa nhãn): mỗi đầu ra là một tập nhỏ các lớp; mỗi quan sát x có thể có nhiều nhãn  Image tagging: y = {birds, nest, tree}  sentiment analysis 5 1. Đánh giá hiệu năng hệ thống học máy. • Làm thế nào để thu được một đánh giá đáng tin cậy về hiệu năng của hệ thống? • Chiến lược đánh giá • Lựa chọn tham số tốt • Làm thế nào để lựa chọn tốt các tham số cho một phương pháp học máy? • Làm thế nào để so sánh hiệu quả của hai phương pháp học máy, với độ tin cậy cao? 6 1. Đánh giá hiệu năng hệ thống học máy.. • Đánh giá lý thuyết (theoretical evaluation): nghiên cứu các khía cạnh lý thuyết của một hệ thống mà có thể chứng minh được. • Tốc độ học, thời gian học, • Bao nhiêu ví dụ học là đủ? • Độ chính xác trung bình của hệ thống, • Khả năng chống nhiễu,… • Đánh giá thực nghiệm (experimental evaluation): quan sát hệ thống làm việc trong thực tế, sử dụng một hoặc nhiều tập dữ liệu và các tiêu chí đánh giá. Tổng hợp đánh giá từ các quan sát đó. • Chúng ta sẽ nghiên cứu cách đánh giá thực nghiệm. 7 1. Đánh giá hiệu năng hệ thống học máy… • Bài toán đánh giá (model assessment): cần đánh giá hiệu năng của phương pháp (model) học máy A, chỉ dựa trên bộ dữ liệu đã quan sát D. • Việc đánh giá hiệu năng của hệ thống • Thực hiện một cách tự động, sử dụng một tập dữ liệu. • Không cần sự tham gia (can thiệp) của người dùng. • Chiến lược đánh giá (evaluation strategies) → Làm sao có được một đánh giá đáng tin cậy về hiệu năng của hệ thống? • Các tiêu chí đánh giá (evaluation metrics) → Làm sao để đo hiệu năng của hệ thống? 8 2. Các phương pháp đánh giá • Hold-out (chia đôi) • Stratified sampling (lấy mẫu phân tầng) • Repeated hold-out (chi đôi nhiều lần) • Cross-validation (đánh giá chéo) • k-fold • Leave-one-out • Bootstrap sampling 9 Hold-out (Splitting) • Toàn bộ tập ví dụ D được chia thành 2 tập con không giao nhau • Tập huấn luyện Dtrain – để huấn luyện hệ thống • Tập kiểm thử Dtest – để đánh giá hiệu năng của hệ thống đã học → D = Dtrain  Dtest, và thường là |Dtrain| >> |Dtest| • Các yêu cầu: • Bất kỳ ví dụ nào thuộc vào tập kiểm thử Dtest đều không được sử dụng trong quá trình huấn luyện hệ thống • Bất kỳ ví dụ nào được sử dụng trong giai đoạn huấn luyện hệ thống (i.e., thuộc vào Dtrain) đều không được sử dụng trong giai đoạn đánh giá hệ thống • Các ví dụ kiểm thử trong Dtest cho phép một đánh giá không thiên vị đối với hiệu năng của hệ thống • Các lựa chọn thường gặp: |Dtrain|=(2/3).|D|, |Dtest|=(1/3).|D| • Phù hợp khi ta có tập ví dụ D có kích thước lớn 10 Stratified sampling • Đối với các tập ví dụ có kích thước nhỏ hoặc không cân xứng (unbalanced datasets), các ví dụ trong tập huấn luyện và thử nghiệm có thể không phải là đại diện • Ví dụ: Có (rất) ít ví dụ đối với một số lớp • Mục tiêu: Phân bố lớp (class distribution) trong tập huấn luyện và tập kiểm thử phải xấp xỉ như trong tập toàn bộ các ví dụ (D) • Lấy mẫu phân tầng (Stratified sampling) • Là một phương pháp để cân xứng (về phân bố lớp) • Đảm bảo tỷ lệ phân bố lớp (tỷ lệ các ví dụ giữa các lớp) trong tập huấn luyện và tập kiểm thử là xấp xỉ nhau • Phương pháp lấy mẫu phân tầng không áp dụng được cho bài toán hồi quy (vì giá trị đầu ra của hệ thống là một giá trị số thực, không phải là một nhãn lớp) 11 Repeated hold-out • Áp dụng phương pháp đánh giá Hold-out nhiều lần, để sinh ra (sử dụng) các tập huấn luyện và thử nghiệm khác nhau • Trong mỗi bước lặp, một tỷ lệ nhất định của tập D được lựa chọn ngẫu nhiên để tạo nên tập huấn luyện (có thể sử dụng kết hợp với phương pháp lấy mẫu phân tầng – stratified sampling) • Các giá trị l ...