1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tên Đề tài thuật toán quinlan tiểu luận môn trí tuệ nhân tạo

23 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 3,88 MB

Nội dung

Chúng ta sẽ khám phá cách thuật toán này được thực hiện, cách xâydựng cây phân cấp, và cách lựa chọn số lượng cụm phù hợp.. Phân cụm: Phân cụm dữ liệu là bài toán gom nhóm các đối tượng

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG THUƯƠNG TP.HCM KHOA CÔNG NGHỆ THÔNG TIN



TÊN ĐỀ TÀI:THUẬT TOÁN QUINLAN TIỂU LUẬN MÔN: TRÍ TUỆ NHÂN TẠO

TP.HỒ CHÍ MINH, Tháng 11/2023 TRƯỜNG ĐẠI HỌC CÔNG THƯƠNG TP.HCM

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG THUƯƠNG TP.HCM KHOA CÔNG NGHỆ THÔNG TIN

Trang 3

LỜI CẢM ƠN

Chúng em xin gửi lời cảm ơn chân thành đến giảng viên Trần Đình Toàn đối với nhữngkiến thức và kinh nghiệm quý báu mà thầy đã chia sẻ trong khóa học Trí tuệ nhân tạo.Khóa học này đã mang lại cho chúng em nhiều điều quý giá và khám phá thú vị về lĩnhvực quan trọng này Chúng em rất trân trọng việc thầy đã khuyến khích sự sáng tạo và

tư duy phản biện trong quá trình học tập Những dự án và bài tập mà chúng em đã hoànthành dưới sự hướng dẫn của thầy đã giúp chúng em phát triển kỹ năng thực tiễn vàgiải quyết vấn đề trong lĩnh vực này Môn học này đã mở ra một cửa sổ mới về tiềmnăng của Trí tuệ nhân tạo trong cuộc sống và sự nghiệp của chúng em Chúng em cảm

ơn thầy Toàn đã truyền đạt kiến thức và động viên chúng em đối với một tương lai đầytriển vọng trong lĩnh vực này Cuối cùng, chúng em muốn bày tỏ lòng biết ơn chânthành đến thầy Trần Đình Toàn vì sự cam kết, kiên nhẫn và sự hỗ trợ thúc đẩy sự thànhcông của chúng em trong môn học này Chúng em luôn giữ trong lòng những kiến thức

và lời khuyên mà thầy đã truyền đạt và sẽ cố gắng ứng dụng chúng trong tương lai

Chúng em xin trân trọng cảm ơn!

Nhóm thực hiện đề tài Nhóm 16

Trang 4

Tên Sinh Viên MSSV Phân công Đánh Giá

Trang 5

MỤC LỤC

LỜI CẢM ƠN i

GIỚI THIỆU iv

Chương I: NỘI DUNG 1

1 Khái niệm: 1

1.1 Phân cụm: 1

1.2 Mục tiêu của gom cụm: 1

2 Độ đo khoảng cách: 1

2.1 Tính chất của độ đo khoảng cách: 1

2.2 Độ đo Euclid: 1

2.3 Độ đo Cosine: 2

3 Các phương pháp tính khoảng cách: 2

4 Phân tích ý tưởng: 3

Chương II: THUẬT TOÁN AGGLOMERATIVE CLUSTERING 5

1 Trình bày: 5

2 Mô tả các bước thực hiện: 5

3 Ưu điểm – Nhược điểm: 6

3.1 Ưu điểm: 6

3.2 Nhược điểm: 6

Chương III: CÂY PHÂN CẤP (DENDROGRAM) 7

1 Trình bày: 7

2 Mô tả: 7

Chương IV: VÍ DỤ 8

1 Bài tập 1: Khoảng cách Euclidean giữa 2 điểm: 8

2 Bài tập 2: Khoảng cách Euclidean giữa 1 điểm: 14

TÀI LIỆU THAM KHẢO 18

Trang 6

GIỚI THIỆU

Trong thế kỷ 21, dữ liệu đã trở thành một nguồn tài nguyên quý báu và gom cụm làmột trong những công cụ quan trọng giúp chúng ta hiểu và tận dụng dữ liệu này Phâncụm không chỉ giúp chúng ta nhận biết cấu trúc bên trong dữ liệu mà còn hỗ trợ trongviệc đưa ra quyết định và dự đoán tương lai dựa trên dữ liệu đã được phân loại Mụctiêu của tiểu luận này là tìm hiểu chi tiết về thuật toán gom cụm phân cấp, từ cơ bảnđến nâng cao Chúng ta sẽ khám phá cách thuật toán này được thực hiện, cách xâydựng cây phân cấp, và cách lựa chọn số lượng cụm phù hợp

Tiểu luận này sẽ được tổ chức thành các phần sau:

o Phần 2 sẽ giới thiệu các khái niệm cơ bản về phân cụm và gom cụm phân cấp

o Phần 3 thuật toán Agglomerative Clustering

o Phần 4 sẽ trình bày cách xây dựng cây phân cấp

o Phần 5 sẽ cung cấp ví dụ thực tế về việc áp dụng thuật toán này

Tiểu luận này nhằm giúp bạn hiểu rõ hơn về thuật toán gom cụm phân cấp và cách nó

có thể được áp dụng trong thực tế

Trang 7

Chương I:NỘI DUNG

1 Khái niệm:

1.1. Phân cụm:

Phân cụm dữ liệu là bài toán gom nhóm các đối tượng dữ liệu vào thành từngcụm (cluster) sao cho các đối tượng trong cùng một cụm có sự tương đồng theo mộttiêu chí nào đó Các cụm được thể hiện trực quan dưới dạng cây phân cấp gọi

dendrogram

1.2. Mục tiêu của gom cụm:

Nhằm hệ thống lại dữ liệu làm cho chúng không bị rời rạc trong một cơ sở dữliệu lớn

2.1. Tính chất của độ đo khoảng cách:

 Tính không âm (non - negative): d ( x , y) ≥0d ( x , y)=0 khi và chỉ khi x, y trùngnhau

 Tính đối xứng (symmetic): d ( x , y)=d ( y , x )

 Tính tam giác (traingle inequality): d ( x , y)+d ( y , z)≥ d( x , z)

2.2. Độ đo Euclid:

 Cho hai điểm x = (x , x , , x ) và y = (y , y , , y )1 2 m 1 2 m

 Độ đo Euclid được xác định theo công thức

Trang 8

2.3. Độ đo Cosine:

 Cho hai véc-tơ x = (x , x , , x ) và y = (y , y , , y )1 2 m 1 2 m

 Độ đo Cosine được tính như sau

d ( x , y)= x y

x.y‖Trong đó:

x y là tích vô hướng giữa hai véc-tơ x và y

 ‖x.y‖ là độ dài của các véc-tơ x và y tương ứng

 Trong không gian dương:

o Thoả mãn cả 3 tính chất

o Giá trị nằm trong khoảng [0, 1]

3 Các phương pháp tính khoảng cách:

Centroid-linkage: Sát nhập hai cụm có khoảng cách giữa

hai tâm của hai cụm này là nhỏ nhất

Single-linkage: khoảng cách giữa hai điểm gần nhau nhất

thuộc hai cụm Sát nhập hai cụm có khoảng cách này nhỏ nhất

L (r , s)=min ( D(xri , x sj))

Trang 9

Average-linkage: trung bình các khoảng cách giữa hai cặp

điểm bất kì thuộc hai cụm Sát nhập hai cụm có khoảng cách này nhỏ nhất

Complete-linkage: khoảng cách giữa hai điểm xa nhau nhất

của hai cụm, sát nhập hai cụm có khoảng cách này là nhỏ nhất

L (r , s)=max(D(x ri , x sj))

Radius ( r ): bán kính của một cụm là khoảng cách từ tâm

tới điểm xa nhất của cụm, sát nhập hai cụm nếu hai cụm tạo

ra một cụm có bán kính nhỏ nhất

Diameter ( D ): đường kính của một cụm là khoảng cách

của hai điểm xa nhau nhất trong cụm, sát nhập hai cụm nếu chúng tạo nên một cụm có đường kính nhỏ nhất

4 Phân tích ý tưởng:

Thuật toán gom cụm phân cấp là một trong những phương pháp phân cụm dữ liệu phổbiến trong lĩnh vực học máy và khám phá dữ liệu Ý tưởng chính của thuật toán gomcụm phân cấp là xây dựng một cây phân cấp (dendrogram) Ban đầu mỗi điểm (đốitượng) là một cụm riêng biệt Thuật toán phân cụm phân cấp sẽ tạo ra các cụm lớn hơnbằng các sát nhập các cụm nhỏ hơn gần nhau nhất tại mỗi vòng lặp dựa trên độ tươngđồng (hoặc khoảng cách) giữa chúng

Trang 10

Chương II: THUẬT TOÁN AGGLOMERATIVE

2 Mô tả các bước thực hiện:

Thuật toán Agglomerative Clustering thực hiện các bước sau:

Bước 1: Khởi tạo mỗi điểm dữ liệu là một cluster riêng biệt

Bước 2: Tìm cặp cluster gần nhất dựa trên một phép đo tương tự (ví dụ: khoảngcách Euclidean)

Công thức tính khoảng cách Euclidean:

d(p,q) = √( p−q)2

Công thức tính khoảng cách Euclidean giữa 2 điểm:

d(p,q) = √(q1− p1) +(2 )

q2− p2Bước 3: Gộp cặp cluster gần nhất thành một cluster mới

Bước 4: Lặp lại bước b và c cho đến khi chỉ còn lại một cluster duy nhất hoặc sốlượng cluster mong muốn

Thuật toán Agglomerative Hierarchical Clustering (gọi tắt là AHC) được mô tả như sau:

Trang 11

3 Ưu điểm – Nhược điểm:

3.1. Ưu điểm:

- Dễ hiểu và triển khai

- Không cần xác định số lượng cluster trước

- Thích hợp cho các tập dữ liệu lớn và không phụ thuộc vào hình dạng củacluster

3.2. Nhược điểm:

- Độ phức tạp tính toán cao, đặc biệt khi số lượng điểm dữ liệu lớn

- Có thể tạo ra các cluster không mong muốn nếu không chọn đúng phép đotương tự

Trang 12

Chương III: CÂY PHÂN CẤP (DENDROGRAM)

1 Trình bày:

Cây phân cấp (Dendrogram) là một biểu đồ thể hiện quá trình hình thành các clustertrong thuật toán Agglomerative Clustering Dendrogram được sử dụng để hiển thị sựliên kết giữa các cluster và giúp cho việc lựa chọn số lượng cluster phù hợp

2 Mô tả:

Dendrogram thường có dạng một biểu đồ cây, trong đó các node biểu thị các cluster vàcác cành biểu thị sự kết hợp giữa các cluster Các node ở mức trên cùng của cây thểhiện các điểm dữ liệu ban đầu, và các node ở mức dưới thể hiện các cluster lớn hơnđược tạo ra thông qua việc gộp các cluster nhỏ hơn Chiều cao của các cành trên câythể hiện mức độ tương tự giữa các cluster

Trang 13

Chương IV: VÍ DỤ

1 Bài tập 1: Khoảng cách Euclidean giữa 2 điểm:

Giả sử ta có 6 đối tượng (objects) cần phân nhóm (tên của các đối tượng là

A,B,C,D,E,F), mỗi đối tượng có 2 thuộc tính X1 và X2 như sau:

Chuyển sang ma trận khoảng cách (From Object Features to Distance Matrix)

Khoảng cách giữa các đối tượng được biểu diễn bởi ma trận khoảng cách Dist Khoảngcách Euclidean thường được dung để tính khoảng cách giữ 2 đối tượng như sau:

d ij=( ∑

k (x ik −x jk)2

)1Chẳn hạn, khoảng cách giữa 2 đối tượng A(1, 1) và B(1.5, 1.5) được tính như sau

Trang 14

Sau khi tính khoảng cách của tất cả các đối tượng ta có ma trận khoảng cách như sau

Chú ý: Dist là ma trận đối xứng qua đường chéo chính (vì khoảng cách từ A đến

B bằng khoảng cách từ B đến A) nên chúng ta chỉ quan tâm đến phần bên trên hoặcbên dưới đường chéo chính Trong ma trận khoảng cách, các phần tử trên đường chéochính bằng 0 (khoảng cách đến chính nó)

Một cách tổng quát, nếu ta có m đối tượng, số khoảng cách giữa các đối tượng (bêntrên hoặc bên dưới đường chéo chính) là 12m (m−1) Trong ví dụ này, ta có 6 đối tượngnên số khoảng cách sẽ là 12m( m−1)=1

khoảng cách nhỏ nhất (0.50)

Trong mỗi bước lặp, chúng ta tìm 2 clusters gần nhau nhất (sử dụng Single Linkage)

để gộp thành 1 cluster Trong ví dụ này, ta có cluster D và F là gần nhau nhất

(khoảng cách là 0.50) vì vậy ta nhóm D và F vào 1 cluster (D,F) Sau đó tính lại matrận khoảng cách Dist Chú ý là khoảng cách giữa các cluster không được nhóm(A,B,C,E) không thay đổi vấn đề là làm sao để tỉnh khoảng cách từ cluster mới (D,F)đến các clusters khác?

Bước này chúng ta phải tính lại khoảng cách từ cluster(D,F) đến các cluster khác

Khoảng cách từ cluster(D,F) và cluster A

Trang 15

Tính lại khoảng cách giữa các clusters

Khoảng cách giữa cluster C và cluster (D,F):

Trang 16

Cập nhật ma trận khoảng cách

Ta nhóm 2 clusters E và (D,F) thành 1 cluster ((D, F), E ) vì khoảng cách giữa 2

clusters này là nhỏ nhất (1.0)

Cập nhật ma trận khoảng cách như sau

Khoảng cách giữa cluster ((D,F),E) và cluster (A,B):

d ( ( D , F ), E)→(A , B) =min(d DA , d DB ,d FA , d FB , d EA , d EB)=min(3.61,2.92,3 20,2 50,4 24,3.54 )=2.50

Khoảng cách giữa cluster ((D,F),E) và cluster C lad nhỏ nhất (1.41) được tính như sau:

d ( ( D , F ), E )→C =min(d DC , d FC , d EC)=min(2.24,2.50,1 41)=1.41

Ta nhóm 2 clusters ((D,F),E) và cluster C vào 1 cluster (((D,F),E),C)

Cập nhật ma trận khoảng cách như sau

Trang 17

Bây giờ ta nhóm 2 clusters còn lại (A,B) và (((D,F),E),C), ta được 1 cluster duy nhất gồm

bộ đối tượng và kết thúc thuật toán AHC

Có thể tổng kết quả các bước tính toán của thuật toán AHC trong ví dụ trên như sau:

1 Bắt đầu, ta có 6 clusters : A, B, C, D, E và F

2 Gộp 2 clusters D và F thành cluster (D, F) với khoảng cách nhỏ nhất là 0.50

3 Gộp 2 clusters A và cluster B thành (A, B) với khoảng cách nhỏ nhất là 0.71

4 Gộp 2 clusters E và (D, F) thành ((D, F), E) với khoảng cách nhỏ nhất là 1.00

5 Gộp 2 clusters ((D, F), E) và C thành (((D, F), E), C) với khoảng cách nhỏ nhất

là 1.41

6 Gộp 2 clusters (((D, F), E), C) và (A, B) thành ((((D, F), E), C), (A, B)) với

khoảng cách nhỏ nhất là 2.50

7 Cluster cuối cùng bao gồm tất cả 6 đối tượng ban đầu, thuật toán dừng

Quá trình phân cụm theo thuật toán AHC trong ví dụ trên được minh họa như hình sau:

Trang 18

Thứ tự phân cụm như sau (((D, F), E),C), (A,B).

Trang 19

2 Bài tập 2: Khoảng cách Euclidean giữa 1 điểm:

6 Italian cities

- Trộn MI và TO.

- Tính lại khoảng cách nhỏ nhất từ cụm MI/TO đến tất cả các cụm khác

Trang 20

Trộn BA và NA/RM

-Trộn NA và RM.

Trang 21

Trộn FI và BA/NA/RM

Trang 22

Và xuất ra cây phân cấp:

Trang 23

TÀI LIỆU THAM KHẢO

1 maGK7q2elj2#_cac-tieu-chi-chon-hai-cum-de-sat-nhap-6

https://viblo.asia/p/hierarchical-clustering-phan-cum-du-lieu-2 http://bis.net.vn/forums/t/571.aspx

Ngày đăng: 03/12/2024, 16:22

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w