Báo cáo môn học máy sử dụng rstudio phân tích đánh giá tập dữ liệu lá cây lấy từ trang dữ liệu trí tuệ nhân tạo uci dựa trên các chỉ số f1, accuracy, ma trận nhầm lẫn và các chỉ số đánh giá khác, sử dụng rstudio với các câu lệnh và package dễ dàng phân tích dữ liệu mục tiêu
HỌC VIỆN NÔNG NGHIỆP VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO MƠN HỌC MÁY ĐỀ TÀI: " Tìm hiểu toán phân lớp (classification) dựa kỹ thuật láng giềng gần ( Phân lớp )." Giảng viên hướng dẫn : Cô Phan Thị Thu Hồng Bộ mơn quản lý : Khoa học máy tính Họ Tên sinh viên : Lê Văn Quân – K63TH – 637856 : Lê Cao Tân – K63TH – 637762 HÀ NỘI – 2021 Phụ lục PHẦN I: MỞ ĐẦU 1.1 Đặt vấn đề PHẦN II: MACHINE LEARNING VÀ ĐỀ TÀI 2.1 Học máy tầm quan trọng 2.2 Đề tài nghiên cứu PHẦN III: NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 3.1 Nội dung nghiên cứu 3.2 Phương pháp nghiên cứu PHẦN IV: KẾT QUẢ DEMO VÀ THẢO LUẬN 4.1 4.2 Mơ tả tốn Tiến hành đánh giá thuật toán KNN……………………………… PHẦN I: MỞ ĐẦU 1.1 Đặt vấn đề Lá hay (tiếng Anh: Leaf) quan thực vật có mạch phần phụ thuộc bên thân Lá thân hợp lại tạo nên chồi Foliage danh từ không đếm đề cập chung đến Theo cấu tạo hình dáng đặc điểm tiến hóa thực vật, thường chia thành nhóm: kim, rộng (lá phiến), vảy Thực vật bậc cao Trái Đất chiếm đa số nhóm rộng kim Việc phân biệt, phân loại giúp hiểu rõ giúp dễ nhận diện dựa vào của chúng PHẦN II: MACHINE LEARNING VÀ ĐỀ TÀI 2.1 Học máy tầm quan trọng 1.1 Machine learning gì? Machine learning phần lĩnh vực trí tuệ nhân tạo, phương pháp cho phép máy tính tự động hóa việc xây dựng phân tích mơ hình liệu Thay phải code phần mềm với cách thức thủ công theo hướng dẫn cụ thể nhằm hoàn thành nhiệm vụ đề máy tự “học hỏi” cách sử dụng lượng lớn liệu thuật tốn cho phép thực tác vụ 1.2 Tầm quan trọng Machine learning gì? Hiện nay, việc quan tâm machine learning ngày tăng lên nhờ có machine learning giúp gia tăng dung lượng lưu trữ loại liệu sẵn, việc xử lý tính tốn có chi phí thấp hiệu nhiều Những điều hiểu thực tự động, nhanh chóng để tạo mơ hình cho phép phân tích liệu có quy mơ lớn phức tạp đồng thời đưa kết cách nhanh xác Chính hiệu cơng việc lợi ích vượt bậc mà đem lại cho khiến machine learning ngày trọng quan tâm nhiều 1.3 Machine learning ứng dụng thực tế? Với kho liệu khổng lồ ngành công nghiệp khơng phủ nhận tầm quan trọng công nghệ Machine learning đem lại Các insights lấy từ nguồn liệu – dùng dạng realtime chủ yếu – giúp việc tổ chức hay vận hành hoạt động cách hiệu hơn, chí tạo số lợi cạnh tranh tốt so với đối thủ 2.2 Đề tài nghiên cứu - Đề tài: " Tìm hiểu tốn phân lớp (classification) dựa kỹ thuật láng giềng gần ( Phân lớp )" - Nhóm em sử dụng liệu từ UCI để phân tích liệu có sẵn - Với 340 mẫu liệu - Phân loại 15 nhóm PHẦN III: NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 3.1 Giải thuật phân lớp KNN láng giềng gần -Một số tên gọi khác phương pháp học dựa láng giềng gần (Nearest neighbors learning) • Instance-based learning • Lazy learning • Memory-based learning - Ý tưởng phương pháp học dựa láng giềng gần • Với tập ví dụ học ─ (Đơn giản là) lưu lại ví dụ học ─ Chưa xây dựng mơ hình (mơ tả) rõ ràng tổng quát hàm mục tiêu cần học • Đối với ví dụ cần phân loại/dự đốn ─ Xét quan hệ ví dụ với ví dụ học để gán giá trị hàm mục tiêu (một nhãn lớp, giá trị thực - Biểu diễn đầu vào tốn • Mỗi ví dụ x biểu diễn vectơ n chiều g g khơng gian vectơ X∈Rn • x = (x1,x2,…,xn), xi (∈R) số thực - Có thể áp dụng với kiểu toán học • Bài tốn phân lớp (classification) Hàm mục tiêu có giá trị rời rạc (a discrete-valued targ ) et function) Đầu hệ thống số giá trị rời rạc xác định trước (một nhãn lớp) • Bài tốn dự đốn/hồi quy (prediction/regression) Hàm mục tiêu có giá trị liên tục (a continuous-valued target function) Đầu hệ thống giá trị số thực -Mỗi ví dụ học x biểu diễn thành phần: • Mơ tả ví dụ: x=(x1,x2,…,xn), xi∈R • Nhãn lớp : c (∈C, với C tập nhãn lớp xác định trước) - Giai đoạn học • Đơn giản lưu lại ví dụ học tập học: D = {x} - Giai đoạn phân lớp: Để phân lớp cho ví dụ (mới) z • Với ví dụ học x∈D, tính khoảng cách x z • Xác định tập NB(z) – láng giềng gần z →Gồm k ví dụ học D gần với z tính theo hàm khoảng cách d • Phân z vào lớp chiếm số đơng (the majority class) số lớp ví dụ NB(z) Mỗi ví dụ học x biểu diễn thành phần: • Mơ tả ví dụ: x=(x1,x2,…,xn), xi∈R • Giá trị đầu mong muốn: yx∈R (là số thực) - Giai đoạn học • Đơn giản lưu lại ví dụ học tập học D -Giai đoạn dự đoán: Để dự đốn giá trị đầu cho ví dụ z • Đối với ví dụ học x∈D, tính khoảng cách x z • Xác định tập NB(z) – láng giềng gần z → Gồm k ví dụ học D gần với z tính theo hàm khoảng cách D Dự đoán giá trị đầu z: yz = 1/k ∑ NB(z )Yx Việc phân lớp (hay dự đoán) dựa láng giềng gần (là ví dụ học gần với ví dụ cần phân lớp/dự đốn) thường khơng xác • Nếu ví dụ học ví dụ bất thường, khơng điển hình (an outlier) – khác so với ví dụ khác • Nếu ví dụ học có nhãn lớp (giá trị đầu ra) sai – lỗi trình thu thập (xây dựng) tập liệu - Thường xét k (>1) ví dụ học (các láng giềng) gần với ví dụ cần phân lớp/dự đốn - Đối với tốn phân lớp có lớp, k thường chọn số lẻ, để tránh cân tỷ lệ ví dụ lớp • Ví dụ: k= 3, 5, 7,… Hàm tính khoảng cách d • Đóng vai trị quan trọng g p phương p p háp học dựa láng giềng gần • Thường xác định trước, khơng thay đổi suốt q trình học phân loại/dự đốn - Lựa chọn hàm khoảng cách d • hàm khoảng cách hình học : dành cho tốn có kiểu thuộc tính đầu vào kiểu số thực (xi∈R) • Hàm khoảng cách Hamming: Dành cho tốn có thuộc tính đầu vào kiểu nhị phân (xi∈{ }) 0,1}) • Hàm tính độ tương tự Cosine: Dành cho toán phân lớp văn (xi giá trị trọng số TF/IDF từ khóa thứ i) Giả sử ví dụ biểu diễn thuộc tính: Age, Income (cho tháng), Height (đo theo mét) • x = (Age=20, Income=12000, Height=1.68) • z = (Age=40, Income=1300, Height=1.75) - Khoảng cách x z • d(x z ,z) = [(20-40)2 + (12000-1300)2 + (1 68 68-1 75) 75)2]1/2 • Giá trị khoảng cách bị định chủ yếu giá trị khoảng cách (sự khác biệt) ví dụ thuộc tính Income → Vì: Thuộc tính Income có miền giá trị lớn so với thuộc tính khác Cần phải chuẩn hóa miền giá trị (đưa khoảng giá trị) • Khoảng giá trị [0,1] thường sử dụng Đối với thuộc tính i: Xi = Xi/max_val(fi) -Các thuộc tính khác (nên) có mức độ ảnh hưởng khác giá trị khoảng cách -Cần phải tích hợp (đưa vào) giá trị trọng số thuộc tính hàm tính khoảng Làm để xác định giá trị trọng số thuộc tính? • Dựa tri thức cụ thể toán (vd: định chuyên gia lĩnh vực tốn xét) • Bằng q trình tối ưu hóa giá trị trọng số (vd: sử dụng tập học để học giá trị trọng số tối ưu Xét tập NB(z) – gồm k ví dụ học gần với ví dụ cần phân lớp • Mỗi ví dụ (láng giềng gần nhất) cókhoảng cách khác đến z • Các láng giềng có ảnh hưởng việc phân lớp/dự đốn cho z? → KHƠNg Cần gán mức độ ảnh hưởng (đóng góp) láng giềng gần tùy theo khoảng cách đến z • Mức độ ảnh hưởng cao cho láng giềng gần lazy learning Việc đánh giá hàm mục tiêu (target function)được hoãn lại xét ví dụ cần phân loại/dự đốn • Đánh giá (xấp xỉ) hàm mục tiêu cách cục (locally) riêng rẽ (diferrently) cho ví dụ cần phân loại/dự đoán (tại thời điểm phân loại/dự đoán hệ thống) • Tí h nh t ốn nhiều lần xấp xỉ cục hàm mục tiêu • Thường thời gian lâu để đưa kết luận (phân lớp/dự đốn), cần nhiều khơng gian nhớ • Ví dụ: Nearest neighbor learner Locally weighted regression , Locally weighted regression - Eager learning Việc đánh giá hàm mục tiêu hoàn thành trước xét đến ví dụ cần phân loại/dự đốn • Đánh giá (xấp xỉ) hàm mục tiêu cách tổng thể (globally) tồn khơng gian ví dự (tại thời điểm học hệ thống) • Tính toán xấp xỉ (ở mức tổng thể) hàm mục tiêu • Ví dụ: Linear regression, Support vector machines, Neural networks, Các ví dụ biểu diễn không gian vectơ Rn - Số lượng thuộc tính (để biểu diễn ví dụ) khơng nhiều - Một tập học có kích thước lớn - Các ưu điểm • Chi hí th phí thấp ch t ì h h o trình huấn luyện ( h việc lưu lại ví dụ học) • Hoạt động tốt với toán phân loại gồm nhiều lớp → Không cần phải học n phân loại cho n lớp • Phương pháp học k-NN (k >>1) có khả xử lý nhiễu cao → Phân loại/dự đoán thực dựa k láng giềng gần - Các nhược điểm • Phải lựa chọn hàm tính khoảng cách (sự khác biệt) thích hợp với tốn • Chi phí tính tốn (thời gian, nhớ) cao thời điểm phân loại/dự đốn • Có thể cho kết kém/sai với thuộc tính khơng liên qua 3.2 Nội dung nghiên cứu - Sử dụng giải thuật phân lớp: Láng giềng gần K-NN Rstudio - Đánh giá mơ hình phân lớp K-NN 3.3 - Phương pháp nghiên cứu Sử dụng phần mềm Rstudio để phân tích liệu Chia tập train test Điều chỉnh thay đổi lọc dư liệu thừa liệu Tiền xử lí làm liệu Khai thác liệu - Sử dụng thuật tốn có sẵn Rstudio để phân lớp - Đánh giá mơ hình PHẦN IV: KẾT QUẢ DEMO VÀ THẢO LUẬN 4.1 Mơ tả tốn Phân lớp với k phần tử gần (k-nearest neighbor) + Thuật toán định gán nhãn lớp cho phần tử ứng với lớp phần đông số k phần tử lân cận với + Chọn k phần tử tập mẫu huấn luyện gần phần tử X + Xác định nhãn số đông k phần tử này: C + Gán nhãn C nhãn lớp phần tử 4.2 Tiến hành đánh giá thuật toán KNN……………………………… - Thực phân lớp dựa láng giềng gần (k-nearest neighbor) phần mềm Rstudio ... vào của chúng PHẦN II: MACHINE LEARNING VÀ ĐỀ TÀI 2.1 Học máy tầm quan trọng 1.1 Machine learning gì? Machine learning phần lĩnh vực trí tuệ nhân tạo, phương pháp cho phép máy tính tự động hóa... đề máy tự ? ?học hỏi” cách sử dụng lượng lớn liệu thuật toán cho phép thực tác vụ 1.2 Tầm quan trọng Machine learning gì? Hiện nay, việc quan tâm machine learning ngày tăng lên nhờ có machine learning. .. phương pháp học dựa láng giềng gần (Nearest neighbors learning) • Instance-based learning • Lazy learning • Memory-based learning - Ý tưởng phương pháp học dựa láng giềng gần • Với tập ví dụ học ─