TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP. HCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI
Tìm hiểu Thuật Toán
Giảng viên bộ môn:
Văn Thế Thành
Danh sách sinh viên
1.
2.
3.
4.
Nguyễn Hữu Trọng
Đặng Quốc Hải
Huỳnh Ngọc Khánh
Ngô Ngọc Sinh
K-Nearest-Neighbors(K-NN)
1. Giới Thiệu Thuật Toán
Định nghĩa
•
K-nearest neighbor là một trong những thuật toán supervised-learning đơn giản nhất (mà hiệu quả trong một vài trường hợp)
trong Machine Learning. Ý tưởng thuật toán là tìm ra output của dữ liệu training gần nó nhất.
Input/Output
•
Thuật toán có 2 đầu vào, một là tập các dữ liệu đã biết trước kiểu(loại) của từng dữ liệu(hay còn gọi là tập huấn luyện - training
set), đầu vào thứ 2 là dữ liệu, chúng ta chưa biết kiểu(loại) dữ liệu đó. Đầu ra của thuật toán kNN là kiểu dữ liệu của đầu vào thứ
2.
Sử dụng
•
Là phương pháp để phân lớp các đối tượng dựa vào khoảng cách gần nhất giữa đối tượng cần phân lớp (Query point) và tất cả
các đối tượng trong Training Data.
3. Ưu điểm và Nhược điểm
Ưu điểm
•
•
•
Độ phức tạp tính toán của quá trình training là bằng 0.
Việc dự đoán kết quả của dữ liệu mới rất đơn giản.
Dể sử dụng và cài đặt.
Nhược điểm
•
•
K-NN nhiễu dễ đưa ra kết quả không chính xác khi K nhỏ.
K-NN là một thuật toán mà mọi tính toán đều nằm ở khâu test.
Trong đó việc tính khoảng cách tới từng điểm dữ liệu trong
training set sẽ tốn rất nhiều thời gian.
4. Bài Tập Minh Họa
ID
Chiều cao
Cân nặng
Thể tích
Giá tiền
Hạn sử dụng
Calo
Quyết định
1
30
2.6
200
12000
30
143.5
Mua
2
60
5
300
15000
60
114.6
Không mua
3
80
4
500
30000
45
150.4
Mua
4
90
3
600
35000
90
160.7
Mua
5
45
2.5
300
20000
45
130.8
Không mua
6
78
3.5
450
25000
60
120.5
Không mua
7
40
0.5
300
18000
90
109.0
Không mua
8
50
1
350
12000
30
132.3
Không mua
9
70
4.5
420
23000
60
134.7
Mua
10
40
1
320
18000
45
90.4
Mua
11
65
3.5
460
10000
75
102.4
Không mua
12
70
4
480
25000
30
118.6
Không mua
13
45
4.2
380
15000
60
104.6
Mua
14
85
5
650
32000
45
150.2
Không mua
15
90
6
800
30000
90
170.4
Mua
16
45
1.2
320
16000
45
106.4
?
17
35
0.8
250
12000
60
89.6
?
Click icon to add picture
*Công thức tính toán
•
•
Lần lượt chọn các giá trị nhỏ nhất theo k
4.1 Chuẩn hóa dữ liệu
ID
Chiều cao
Cân nặng
Thể tích
Giá tiền
Hạn sử dụng
Calo
Quyết định
1
0
0.382
0
0.08
0
0.667
Mua
2
0.5
0.818
0.167
0.2
0.5
0.309
Không mua
3
0.833
0.636
0.5
0.8
0.25
0.752
Mua
4
1
0.455
0.667
1
1
0.88
Mua
5
0.25
0.364
0.167
0.4
0.25
0.51
Không mua
6
0.8
0.545
0.417
0.6
0.5
0.382
Không mua
7
0.167
0
0.167
0.32
1
0.24
Không mua
8
0.333
0.091
0.25
0.08
0
0.528
Không mua
9
0.667
0.727
0.367
0.52
0.5
0.558
Mua
10
0.167
0.091
0.2
0.32
0.25
0.01
Mua
11
0.583
0.545
0.433
0
0.75
0.158
Không mua
12
0.667
0.636
0.467
0.6
0
0.359
Không mua
13
0.25
0.673
0.3
0.2
0.5
0.186
Mua
14
0.917
0.818
0.75
0.88
0.25
0.75
Không mua
15
1
1
1
0.8
1
1
Mua
16
0.25
0.127
0.2
0.24
0.25
0.208
?
17
0.083
0.055
0.083
0.08
0.5
0
?
4.1 Ma trận khoảng Euclide cách trung bình
ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0.683
0.784
1.14
1.575
0.417
0.864
0.771
0.449
0.908
0.232
0.806
0.848
0.61
1.389
1.862
17
0.903
0.934
1.49
1.792
0.745
1.132
0.618
0.788
1.174
0.377
0.841
1.215
0.711
1.728
2.084
Lấy k=5 phần tử gần nhất
Láng giềng của 16
Láng giềng của 17
Phần tử
d
Quyết định
Phần tử
d
Quyết định
10
0.232
Mua
10
0.377
Mua
5
0.417
Không Mua
7
0.618
Không mua
8
0.449
Không Mua
13
0.711
Không mua
13
0.61
Không Mua
5
0.745
Không mua
1
0.683
Mua
8
0.788
Không mua
Vậy với k=5, ID 16 và 17 là những món hàng không mua
4.1 Ma trận khoảng Euclide cách trung bình
ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0.683
0.784
1.14
1.575
0.417
0.864
0.771
0.449
0.908
0.232
0.806
0.848
0.61
1.389
1.862
17
0.903
0.934
1.49
1.792
0.745
1.132
0.618
0.788
1.174
0.377
0.841
1.215
0.711
1.728
2.084
Lấy k=7 phần tử gần nhất
Láng giềng của 16
Láng giềng của 17
Phần tử
d
Quyết định
Phần tử
d
Quyết định
10
0.232
Mua
10
0.377
Mua
5
0.417
Không Mua
7
0.618
Không mua
8
0.449
Không Mua
13
0.711
Không mua
13
0.61
Không Mua
5
0.745
Không mua
1
0.683
Mua
8
0.788
Không mua
7
0.771
Không Mua
11
0.841
Không mua
2
0.784
Không Mua
1
0.903
Mua
Vậy với k=7, ID 16 và 17 là những món hàng không mua
DataMining
Tài liệu tham khảo:
Vacation