ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
⎯⎯⎯⎯⎯⎯⎯⎯⎯
HỌ VÀ TÊN TÁC GIẢ LUẬN VĂN
TRẦN VĂN LÍC
TÊN ĐỀ TÀI LUẬN VĂN
PHÂN LOẠI LUỒNG DỮ LIỆU SỬ DỤNG MẠNG NƠ-RON
Chuyên ngành: Kỹ thuật điện tử
Mã số: 8520203
TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ
Đà Nẵng – Năm 2019
Công trình được hoàn thành tại
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn khoa học: TS. Phan Trần Đăng Khoa
Phản biện 1: TS. Hồ Phước Tiến
Phản biện 2: TS. Trần Thế Sơn
Luận văn sẽ được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ kỹ thuật
điện tử họp tại Trường Đại học Bách khoa vào ngày 12 tháng 05 năm 2019
Có thể tìm hiểu luận văn tại:
− Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách khoa
− Thư viện Khoa Điện tử - Viễn thông, Trường Đại học Bách khoa - ĐHĐN
MỞ ĐẦU
Trong thời đại bùng nổ về công nghệ Internet of Things và số lượng các thiết bị
mạng ngày càng tăng như hiện nay, việc nhận dạng được luồng dữ liệu trong quản lý
hệ thống mạng là vấn đề quan trọng và cần được quan tâm đặc biệt trong nâng cao chất
lượng dịch vụ mạng QoS (Quality of Service) và trong lĩnh vực an ninh mạng.
Phân loại luồng dữ liệu mạng (Network traffic classification) là việc nhận dạng
các loại ứng dụng và giao thức mạng khác nhau tồn tại trong hệ thống mạng. Với chức
năng giám sát, khám phá, điều khiển và tối ưu hệ thống mạng, mục tiêu chung của
phân loại luồng dữ liệu mạng là cải thiện hiệu năng hoạt động mạng. Khi các gói được
phân loại sẽ giúp cho bộ định tuyến (router) tính toán chính sách (policy) dịch vụ thích
hợp. Điều này cũng cho phép chúng ta dự đoán tốt hơn về luồng dữ liệu mạng trong
tương lai, phát hiện và ngăn chặn các luồng dữ liệu mạng bất thường nhằm tăng bảo
mật dữ liệu cá nhân. Ngoài ra, dựa trên sự phân loại này, các chính sách dịch vụ có thể
được áp dụng như với VoIP, dịch vụ giải trí trực truyến sẽ được cam kết về chất lượng.
Trong những năm gần đây, việc giải quyết vấn đề phân loại luồng dữ liệu mạng
sử dụng các mô hình học máy thu hút được sự quan tâm nghiên cứu. Dựa trên các
thuộc tính của gói tin như tần suất byte (byte frequencies), kích thước gói tin (packet
sizes), khoảng thời gian gói tin đến (packet inter-arrival time),… và các mô hình học
máy. Phương pháp này với ưu điểm có độ chính xác cao và xử lý nhanh hơn so với
phương pháp phân loại nêu trên vì không đào sâu tới phần nội dung (content) của gói
dữ liệu mà chỉ sử dụng các packet header để phân tích.
Dựa trên tính cấp thiết của bài toán phân loại luồng dữ liệu và các phân tích nêu
trên. tôi chọn đề tài “PHÂN LOẠI LUỒNG DỮ LIỆU SỬ DỤNG MẠNG NƠ-RON”
để có thể tối ưu được việc phân loại luồng dữ liệu mạng với độ chính xác cao và thời
gian xử lý nhanh.
Để thực hiện nội dung này, luận văn được chia thành 4 chương:
• Chương 1 GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
• Chương 2 LÝ THUYẾT VỀ MẠNG NƠ-RON VÀ LUỒNG DỮ LIỆU
• Chương 3 MÔ HÌNH PHÂN LOẠI LUỒNG DỮ LIỆU SỬ DỤNG MẠNG
NƠ-RON
• Chương 4 KẾT QUẢ MÔ PHỎNG VÀ ĐÁNH GIÁ
1
CHƯƠNG 1
GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
1.1 Giới thiệu
Phân loại luồng dữ liệu mạng (Network traffic classification) là việc nhận dạng
các loại ứng dụng và giao thức mạng khác nhau tồn tại trong hệ thống mạng. Với
chức năng giám sát, khám phá, điều khiển và tối ưu hệ thống mạng, mục tiêu chung
của phân loại luồng dữ liệu mạng là cải thiện hiệu năng hoạt động mạng. Khi các
gói tin được phân loại sẽ giúp cho bộ định tuyến (router) tính toán chính sách
(policy) dịch vụ thích hợp.
Phân loại luồng dữ liệu hiện nay vẫn đang là một vấn đề cơ bản trong cộng đồng
mạng. Việc nhận dạng được luồng dữ liệu trong quản lý hệ thống mạng là vấn đề
quan trọng và cần được quan tâm đặc biệt để nâng cao chất lượng dịch vụ mạng
QoS (Quality of Service), đảm bảo an ninh mạng, cung cấp các mô hình, dữ liệu
cho các hoạt động mô phỏng, dự đoán và cho các ứng dụng cụ thể.
Mặc dù đã có một số nghiên cứu về phân loại luồng dữ liệu trong thời gian qua.
Tuy nhiên vẫn còn một số thách thức đáng kể như sau:
-
Đầu tiên, phần lớn bởi vì luồng dữ liệu mạng không dễ dàng phân loại dựa
vào chuẩn IANA (International Assigned Number Authority) theo danh sách
các port ứng dụng, các ứng dụng khẩn cấp và proxy thường tránh sử dụng
các port chuẩn [2].
-
Thứ hai, các port ứng dụng và ký hiệu giao thức có thể không đủ để xác định
các ứng dụng thực tế. Về nguyên tắc, không có ràng buộc rõ ràng giữa các
ứng dụng và giao thức cơ bản. Ví dụ, các ứng dụng như MSN Messenger,
BitTorrent và Gnutella có thể sử dụng giao thức HTTP cổng 80, trong khi
Skype có thể hoạt động ở cả cổng 80 và 443 [2].
-
Thứ ba, việc mã hóa và đóng gói luồng dữ liệu ngày càng tăng như SOCKS
proxy hay VPN làm thay đổi mô hình trong giao thức gốc, trong khi mã hóa
gói làm cho việc kiểm tra, đào sâu vào dữ liệu không sử dụng được [2].
2
Chính vì vậy, việc nghiên cứu các thuật toán phân loại luồng dữ liệu phải đảm
bảo các yêu cầu cơ bản sau [3]:
-
Hoạt động không dựa vào Port number. Hơn nữa, giả sử rằng chúng ta không
có kiến thức về port của ứng dụng.
-
Không yêu cầu về việc phải xem xét nội dung của luồng dữ liệu
-
Các đặc tính hành vi. Ví dụ như phân bố kích thước gói tin, kính thước cửa
sổ của gói TCP, cờ bit TCP và hướng của gói tin, đều được suy ra từ packet
header
1.2 Các nghiên cứu liên quan
1.3 Mục tiêu nghiên cứu
Dựa trên tính cấp thiết của bài toán phân loại luồng dữ liệu và các phân tích nêu
trên, mục tiêu của luận văn được xác định như sau: nghiên cứu mô hình phân loại
luồng dữ liệu dựa trên mạng nơ-ron nhằm nâng cao tỉ lệ phân loại đúng và tốc độ
thực thi của mô hình.
Để thực hiện được mục tiêu đặt ra, cần phải giải quyết các vấn đề sau:
- Xử lý cơ sở dữ liệu
- Giảm số chiều của không gian đặc trưng
- Tối ưu kiến trúc mạng nơ-ron
3
CHƯƠNG 2
LÝ THUYẾT VỀ MẠNG NƠ-RON VÀ LUỒNG DỮ LIỆU MẠNG
2.1 Luồng dữ liệu mạng
Hình 2.1 Cấu trúc một gói tin TCP
Để đơn giản trong định nghĩa, giao thức TCP và luồng dữ liệu TCP được lựa
chọn để tập trung vào giao thức này, dữ liệu UDP sẽ khảo sát trong tương lai.
2.2 Mạng nơ-ron
Kiến trúc mạng Nơ-ron
4
Hình 2.2 Các ký hiệu sử dụng trong mạng nơ-ron
Thuật toán lan truyền ngược
Hình 2.3 Mô phỏng cách tính thuật toán lan truyền ngược
Hàm softmax và cross-entropy
Hình 2.4 Mô hình Softmax Regression dưới dạng mạng nơ-ron
Overfitting
Overfitting là hiện tượng mô hình tìm được quá khớp với dữ liệu huấn luyện.
Việc quá khớp này có thể dẫn đến việc dự đoán nhầm nhiễu, và chất lượng mô hình
không còn tốt trên dữ liệu kiểm thử nữa. Về cơ bản, overfitting xảy ra khi mô hình
quá phức tạp để mô phỏng dữ liệu huấn luyện. Điều này đặc biệt xảy ra khi lượng
dữ liệu huấn luyện quá nhỏ trong khi độ phức tạp của mô hình quá cao.
5
Các phương pháp để tránh overfitting được trình bày ở các mục bên dưới.
2.2.4.1 Validation
Hình 2.5 Lựa chọn mô hình dựa trên validation
2.2.4.2 Cross-validation
Cross validation là một cải tiến của validation với lượng dữ liệu trong tập
validation là nhỏ nhưng chất lượng mô hình được đánh giá trên nhiều tập validation
khác nhau.
2.2.4.3 Regularization
a) Early Stopping
Hình 2.6 Early Stopping
Hình 2.7 thể hiện phương pháp early stoping với đường màu xanh là train
error, đường màu đỏ là validation error. Trục x là số lượng vòng lặp, trục y là
6
error. Mô hình được xác định tại vòng lặp mà validation error đạt giá trị nhỏ
nhất.
b) Thành phần ổn định hóa
Kỹ thuật regularization phổ biến nhất là thêm vào hàm mất mát một số hạng
nữa. Số hạng này thường dùng để đánh giá độ phức tạp của mô hình.
7
CHƯƠNG 3
MÔ HÌNH PHÂN LOẠI LUỒNG DỮ LIỆU SỬ DỤNG MẠNG NƠ-RON
3.1 Cơ sở dữ liệu
Bảng 3.1 Thống kê của mỗi tập dữ liệu
Tập dữ
Thời gian bắt đầu
liệu
Thời gian kết
Khoảng
thúc
thời gian
Số Flows
Entry01
00:34:21
01:04:43
1821.8
24863
Entry02
01:37:37
02:05:54
1696.7
23801
Entry03
02:45:19
03:14:03
1724.1
22932
Entry04
04:03:31
04:33:15
1784.1
22285
Entry05
04:39:10
05:09:05
1794.9
21648
Entry06
06:07:28
06:35:06
1658.5
19384
Entry07
09:42:17
10:11:16
1739.2
55835
Entry08
11:52:40
12:20:26
1665.9
55494
Entry09
13:45:37
14:13:21
1664.5
66248
Entry10
14:55:44
15:22:37
15:22:37
65036
Bảng 3.2 Các lớp trong phân loại luồng dữ liệu mạng
Ứng dụng
Phân loại
BULK
ftp-control, ftp-pasv, ftp-data
DATABASE
postgres, sqlnet oracle, ingres
INTERACTIVE
ssh klogin, rlogin, telnet
MAIL
imap, pop2/3, smtp
SERVICES
X11, dns ident, ldap, ntp
8
WWW
www
P2P
KaZaA, BitTorrent, GnuTella
ATTACK
Internet worm and virus attacks
GAMES
Microsoft Direct Play
MULTIMEDIA
Windows Media Player, Real
3.2 Xử lý tập dữ liệu
Phân tích cơ sở dữ liệu
Bảng 3.3 Thống kê tần số xuất hiện của các nhóm
STT
CLASS
Tần số xuất
Tỷ lệ phần
hiện
trăm (%)
1
MAIL
15789
8.277
2
FTP-CONTROL
2835
1.486
3
FTP-PASV
917
0.481
4
ATTACK
851
0.446
5
P2P
932
0.489
6
DATABASE
817
0.428
7
FTP-DATA
4729
2.479
8
MULTIMEDIA
543
0.285
9
SERVICES
1330
0.697
10
INTERACTIVE
33
0.017
11
GAMES
4
0.002
12
WWW
161968
84.912
9
Chuẩn hóa thuộc tính định danh
Như đã trình bày ở trên, ta cần phải biến đổi các đặc trưng định danh (cụ thể
là server port và client port) sang giá trị định lượng để có thể sử dụng làm đầu
vào của mô hình.
Chuẩn hóa dữ liệu đầu vào (kích thước)
Để đảm bảo công bằng giữa các đặc trưng, ta cần phải chuẩn hóa các giá trị
của cơ sở dữ liệu đối với từng đặc trưng. Việc chuẩn hóa nhằm đảm bảo các giá
trị của mỗi đặc trưng có giá trị trung bình bằng 0 và độ lệch chuẩn bằng 1.
Phân bố cơ sở dữ liệu
Giảm số chiều không gian đặc trưng
Khác với các nghiên cứu liên quan, trong nghiên cứu này, chúng tôi thực
hiện việc giảm số chiều không gian đặc trưng theo hướng chọn lọc đặc trưng
thông qua 2 bước:
o Tập các đặc trưng được chọn lọc sơ bộ dựa trên thuật toán
Neighborhood Component Analysis (NCA).
o Tập các đặc trưng được tiếp tục chọn lọc từ tập thu được từ bước 1
thông qua phương thức chọn lọc đặc trưng tuần tự Sequential Feature
Selection (SFS).
3.2.5.1 Thuật toán NCA
3.2.5.2 Chọn lọc đặc trưng tuần tự
Gia tăng cơ sở dữ liệu
Trong cơ sở dữ liệu sử dụng, một số nhóm có số lượng mẫu rất ít như GAME
(0.002%), INTERACTIVE (0.017%). Kết quả huấn luyện và kiểm thử được
trình bày trong mục 4.5 cho thấy mô hình chỉ tập trung học các đặc trưng để
phân loại các nhóm có số lượng mẫu chiếm đa số, trong khi các nhóm thiểu số
thì gần như không được phân loại. Để khắc phục vấn đề này, ta cần phải tăng
trọng số các mẫu của các nhóm thiểu số.
10
3.3 Cấu hình mạng nơ-ron
Cấu hình mạng nơ-ron được sử dụng trong nghiên cứu này như sau:
-
Lớp đầu vào: số lượng đầu vào phụ thuộc vào số lượng đặc trưng. Trong
phần thực nghiệm, chúng ta sẽ khảo sát ảnh hưởng của số lượng đầu vào đến
kết quả phân loại và tốc độ thực thi mô hình.
-
Lớp ẩn: gồm có 1 lớp ẩn với số nơ-ron được điều chỉnh nhằm đạt được kết
quả phân loại tốt nhất. Các hàm kích hoạt khác nhau (Sigmod, Tanh, ReLU)
sẽ được sử dụng để đánh giá và so sánh.
-
Lớp đầu ra: gồm có 12 đầu ra tương ứng với 12 nhóm. Nhãn đối với từng
mẫu được biểu diễn theo dạng one-hot encoding. Hàm Softmax được sử
dụng để tính phân bố xác suất của đầu ra.
-
Hàm mất mát là Cross-entropy
11
CHƯƠNG 4
KẾT QUẢ MÔ PHÒNG VÀ ĐÁNH GIÁ
Chương này sẽ trình bày các kết quả mô phỏng nhằm đánh giá ảnh hưởng
của các yếu tố khác nhau như số nơ-ron lớp ẩn, hàm kích hoạt, số lượng đặc trưng
lên hiệu năng phân loại và tốc độ thực thi của mô hình.
4.1 Điều kiện tiến hành mô phỏng
Việc xử lý cơ sở dữ liệu và thực thi mô hình mạng nơ-ron được thực hiện
trong môi trường Matlab. Mô phỏng được thực hiện trên máy tính có cấu hình
như sau:
• Bộ vi xử lý: Xeon E5-2630 - 2.40 GHz
• Bộ nhớ RAM: 32 GB
• GPU: VGA NVIDIA TITAN V 12GB
• Môi trường: MATLAB R2018a
4.2 Tiêu chí đánh giá
Tiêu chí đánh giá được lựa chọn là tỷ lệ phân loại đúng được tính bởi tỷ số
giữa số mẫu được phân loại đúng trên tổng số mẫu. Tỷ lệ này được đánh giá
không chỉ cho toàn bộ tập dữ liệu mà còn cho từng nhóm. Ngoài ra, tốc độ thực
thi của mô hình cũng được đánh giá.
4.3 Đánh giá các kiến trúc mạng nơ-ron
Để đánh giá các kiến trúc mạng khác nhau, ta thay đổi số lượng nơ-ron lớp
ẩn và xem xét tỉ lệ phân loại đúng cho tập dữ liệu huấn luyện và kiểm thử. Toàn
bộ 248 đặc trưng được sử dụng để phân loại. Quá trình huấn luyện sử dụng kỹ
thuật Early Stopping và ổn định hóa. Ví dụ về sự thay đổi giá trị của hàm mất
mát đối với các tập dữ liệu huấn luyện, kiểm thử và validation theo số epoch
được cho ở Hình 4.1. Sai số trên tập validation được sử dụng để làm điều kiện
dừng huấn luyện.
12
Hình 4.1 Sự thay đổi của hàm mất mát với các tập huấn luyện, kiểm thử và
validation
Ảnh hưởng của số lượng nơ-ron lớp ẩn và hàm kích hoạt đến kết quả phân
loại được thể hiện ở Hình 4.2. Toàn bộ 248 đặc trưng được sử dụng để phân
loại.
13
Hình 4.2 Sự phụ thuộc của kết quả phân loại vào số lượng nơ-ron lớp ẩn và
hàm kích hoạt
Hình 4.2 cho thấy hàm sigmod cho kết quả phân loại ổn định và cho kết quả
phân loại tốt hơn so với các hàm tanh và ReLu. Do đó, chúng tôi sử dụng hàm
sigmod trong các mô hình mạng để tiếp tục đánh giá ảnh hưởng của các yếu tố
khác.
4.4 Đánh giá ảnh hưởng của số lượng đặc trưng
Trong phần này, tập các đặc trưng được chọn lọc sơ bộ dựa trên thuật toán
Neighborhood Component Analysis (NCA). Tiếp theo, tập các đặc trưng được
tiếp tục chọn lọc từ tập thu được từ bước 1 thông qua phương thức chọn lọc đặc
trưng tuần tự Sequential Feature Selection (SFS) để chọn ra nhóm 10, 20, 30, 40
và 50 đặc trưng có ảnh hưởng nhất, được đặt tên lần lượt là Top 10, Top 20, Top
30, Top 40, Top 50 và kết quả cho từng Top đặc trưng và cho toàn bộ (248) đặc
trưng được thể hiện ở Hình 4.3 đến Hình 4.8. Ngoài ra, một phương pháp giảm
14
số chiều không gian được sử dụng phổ biến là PCA (Principal Component
Analysis) cũng được xem xét như Hình 4.9. Biết rằng, PCA là thuật toán biến
đổi không gian đặc trưng dựa trên phương sai của các giá trị đặc trưng, từ đó lựa
chọn không gian với số chiều ít hơn để thể hiện dữ liệu. Thông tin chi tiết về
PCA nằm ở PHỤ LỤC B.
Hình 4.3 Kết quả thực hiện cho việc chọn ra Top 10 đặc trưng
15
Hình 4.4 Kết quả thực hiện cho việc chọn ra Top 20 đặc trưng
Hình 4.5
Kết quả thực hiện cho việc chọn ra Top 30 đặc trưng
16
Hình 4.6 Kết quả thực hiện cho việc chọn ra Top 40 đặc trưng
Hình 4.7 Kết quả thực hiện cho việc chọn ra Top 50 đặc trưng
17
Hình 4.8 Kết quả thực hiện với tất cả đặc trưng
Hình 4.9 Kết quả cho việc sử dụng PCA chọn ra nhóm 50 đặc trưng
18
Bảng 4.1 Bảng so sánh ảnh hưởng của số lượng đặc trưng
Số đặc trưng
Train (%)
Test (%)
Số nơ-ron lớp
Thời gian
ẩn
thực thi
(𝝁𝒔)
10
94.52
88.37
18
1.9397
20
98.79
95.32
24
1.9457
30
99.07
97.43
16
2.0160
40
99.38
97.38
26
2.0361
50
99.06
97.17
12
2.2671
PCA (50)
98.43
96.4
18
2.304
Tất cả (248)
99.73
98.29
24
2.4051
Để đảm bảo được yêu cầu đặt ra về cả độ chính xác và tốc độ thực thi của mô
hình. Từ Bảng 4.1, chúng ta có thể thấy rằng, tại số đặc trưng là 30 cho kết quả sát
với mục tiêu đặt ra nhất với độ chính xác cao trong tập kiểm thử và sự khác biệt
thấp giữa kết quả huấn luyện và kiểm thử (tương ứng đạt 99.07% và 97.43%). Cùng
với đó thời gian thực thi cũng ở mức hợp lý với 2.0160 𝜇𝑠. Kết quả đánh giá độ ổn
định của các mô hình theo thời gian (được cho ở Bảng 4.2) sẽ củng cố thêm kết luận
này.
Đối với phương pháp giảm số chiều đặc trưng sử dụng PCA chọn ra 50 đặc
trưng cho kết quả thấp hơn cả tập huấn luyện và tập kiểm thử so với việc chọn ra
Top 50 sử dụng NCA và SFS. Cụ thể, với tập huấn luyện và kiểm thử, phương pháp
PCA chỉ đạt tương ứng với 98.42% và 96.4%, trong khi đó, với việc sử dụng NCA
và SFS, kết quả đạt tốt hơn ứng với 99.06% và 97.17%. Điều này có thể được lý
giải là do PCA tạo ra các đặc trưng mới thông qua biến đổi không gian đặc trưng
mà không phụ thuộc vào mô hình. Ngoài ra, có thể thấy phương pháp sử dụng PCA
cho độ trễ cao hơn với độ trễ là 2.304 𝜇𝑠 . Lý do có thể dễ hiểu là với phương pháp
19
này mô hình cần thời gian để xử lý dữ liệu trước khi đưa vào mô hình, so với việc
lựa chọn trước đặc trưng như thực hiện với phương pháp sử dụng NCA và SFS.
4.5 Đánh giá ảnh hưởng của việc gia tăng dữ liệu
Do cơ sở dữ liệu không cân bằng và đa số các mẫu thuộc về một vài nhóm
nên để tang tỉ lệ phân loại cho các nhóm thiểu số ta cần phải tăng trọng số cho các
nhóm này bằng cách gia tăng dữ liệu cho nhóm. Ảnh hưởng của việc gia tăng cơ sở
dữ liệu đến kết quả phân loại đối với tập huấn luyện và tập kiểm thử được thể hiện
thông qua confusion matrix cho ở Hình 4.10. và Hình 4.11.
Với confusion matrix, phần hàng tương ứng với đầu ra dự đoán (lớp đầu ra
của mạng nơ-ron) và phần cột tương ứng với lớp mong đợi. Các ô chéo tương ứng
với mẫu được phân loại đúng. Các ô còn lại tương ứng với mẫu bị phân loại sai. Số
lượng mẫu và phần trăm trên tổng số mẫu cũng được thể hiện ở mỗi ô. Phần cột
phía bên phải của ô thể hiện phần trăm của tất cả các mẫu được dự đoán ứng với
từng nhóm là đúng và không đúng. Phần hàng ở cuối của hình thể hiện phần trăm
của các mẫu ứng với từng nhóm là đúng và không đúng. Ô cuối cùng bên phải thể
hiện độ chính xác tổng thể của mô hình.
Trong cơ sở dữ liệu này, chúng tôi tập trung nâng cao tỉ lệ phân loại đúng
cho các nhóm 10 và 11 ứng với INTERACTIVE và GAME. Số lượng mẫu của 2
nhóm này lần lượt là 33 và 4, được phân chia cho các tập huấn luyện và kiểm thử
theo số lượng 23-10 và 3-1. Hình 4.10.a cho chúng ta thấy rằng, trong trường hợp
chưa gia tăng cơ sở dữ liệu, các nhóm thiểu số gồm nhóm 10 và nhóm 11 ứng với
INTERACTIVE (số lượng mẫu là 23) và GAME (số lượng mẫu là 3) có tỉ lệ phân
loại đúng là 0%. Kết quả này lặp lại đối với tập kiểm thử (Hình 4.11a).
Để giải quyết vấn đề trên, qua việc tăng trọng số của các nhóm thiểu số bằng
cách sao chép các mẫu của các nhóm này kết hợp cùng với việc thêm nhiễu thể hiện
ở Hình 4.10.b, có thể thấy số lượng mẫu nhóm 10 và 11 đã tăng lên là 2323 và 303.
Tỉ lệ phân loại đúng cho nhóm này đối với tập huấn luyện là 100%.
20
a)
b)
21
Hình 4.10 Confusion matrix của tập huấn luyện a) trước và b) sau khi gia tăng
Output class
dữ liệu
1
2
3
4
5
6
7
8
9
10
11
12
4578
52
9
0
57
26
1
1
6
0
0
7
1
55
778
1
0
6
0
0
0
0
0
0
11
2
2
0
254
0
4
1
1
0
0
0
0
13
3
7
1
1
138
6
0
0
3
0
0
0
99
4
2
0
7
0
188
10
7
15
2
0
0
49
5
Test confusion matrix
5
6
1
4
1
80
0
29
9
7
223
5
0
1277
4
4
1
6
0
0
0
0
1
1
6
7
Target Class
0
2
2
0
37
0
12
109
1
0
0
0
8
2
0
11
0
2
1
7
0
373
1
0
2
9
0
2
0
0
3
2
1
0
1
0
0
1
10
0
0
0
0
1
0
0
0
0
0
0
0
11
24
0
10
0
396
81
5
7
0
0
0
48067
12
1
1
2
1
18
0
7
132
1
0
0
0
8
0
0
11
0
6
0
8
0
367
3
1
3
9
0
0
0
0
0
2
0
1
2
5
0
0
10
0
0
0
0
0
0
0
0
0
0
1
0
11
23
0
9
50
80
138
2
5
0
165
73
48045
12
Output class
a)
1
2
3
4
5
6
7
8
9
10
11
12
4582
26
11
0
48
11
3
1
39
4
0
12
1
122
717
1
0
0
0
0
2
0
6
1
2
2
7
0
260
1
0
0
0
0
4
1
0
2
3
2
1
0
140
10
0
0
2
0
1
0
99
4
1
0
3
7
164
6
7
42
5
5
3
37
5
Test confusion matrix
2
2
1
0
1
85
2
16
4
7
221
3
0
1289
3
10
1
0
7
0
1
1
2
6
6
7
Target Class
b)
Hình 4.11 Confusion matrix của tập kiểm thử a) trước và b) sau khi gia tăng dữ
liệu
4.6 Đánh giá độ ổn định của mô hình theo thời gian
Để đánh giá độ ổn định của mô hình theo thời gian, chúng tôi sử dụng một
cơ sở dữ liệu khác thu thập từ cùng máy chủ sau 12 tháng. Kết quả đối với các mô
hình khác nhau được cho ở Bảng 4.2.
22
Bảng 4.2 Kết quả cho cho tập dữ liệu thu thập từ cùng máy chủ sau 12 tháng
Số đặc trưng
Test
10
83.873
20
89.101
30
84.052
40
86.686
50
92.097
PCA (50)
88.271
Tất cả (248)
79.466
Từ kết quả ở Bảng 4.2 có thể thấy rằng, việc sử dụng nhiều đặc trưng chưa
hẳn là tốt đối với mô hình khi đưa vào kiểm thử, mặc dù kết quả huấn luyện đạt kết
quả rất tốt, như với toàn bộ 248 đặc trưng được sử dụng, kết quả huấn luyện đạt khá
cao, tuy nhiên kết quả kiểm thử cho tập dữ liệu này lại chỉ đạt 79.466%. Lý do giải
thích ở đây là do việc sử dụng quá nhiều đặc trưng có thể có thông tin dư thừa
(redundant), gây nhiễu, dẫn tới việc mô hình học các đặc trưng không hữu ích. Do
đó, khi cho mô hình kiểm thử đối với dữ liệu cùng thời điểm (phân bố tương tự) thì
cho kết quả tốt, nhưng khi kiểm thử đối với dữ liệu ở thời điểm khác (phân bố thay
đổi) thì kết quả sẽ giảm. Còn việc chọn lọc đặc trưng lựa chọn các đặc trưng hữu ích
cho việc phân loại và phù hợp với mô hình nên sẽ ổnđịnh hơn.
Đối với phương pháp giảm không gian đặc trưng sử dụng PCA, tuy đã lựa chọn
được những đặc trưng phù hợp, nhưng khi thử nghiệm với dữ liệu ở thời điểm khác
cho ra kết quả phân loại khá thấp (88.271%). Qua đó có thể thấy rằng, phương pháp
giảm không gian đặc trưng dựa vào mô hình như NCA và SFS cho kết quả ổn định
hơn với sự thay đổi của dữ liệu ở các thời điểm khác nhau
23