DAI HOC QUOC GIA TP HO CHi MINH TRUONG DAI HOC BACH KHOA
NGUYEN VAN DUGNG
SO SANH HAI PHUONG PHAP THU GON TAP HUAN LUYEN RHC VA NAIVE RANKING TRONG
PHAN LOP DU LIEU CHUOI THGI GIAN
Comparing two data reduction methods: RHC and Naive Ranking in time series data classification
CHUYEN NGANH: KHOA HOC MAY TINH
MA SO CHUYEN NGANH: 60.48.01.01
LUAN VAN THAC SI
TP HO CHi MINH, thang 08 nim 2018
Trang 2
CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM
Cán bộ hướng dẫn khoa học: PGS TS Dương Tuần Anh
Cán bộ chấm nhận xét 1: PGS TS Dé Phúc
Cán bộ chấm nhận xét 2: TS Phạm Văn Chung
Luận văn thạc sĩ được bảo vệ tại Trường Đại Học Bách Khoa, ĐHQG Tp.HCM vào ngày 17 tháng Ø7 năm 2018
Thành phần hội đồng đánh giá luận văn thạc sĩ gồm:
1 Chủ tịch: GS TS Phan Thị Tươi 2 Phản biện 1: PGS TS Đỗ Phúc 3 Phản biện 2: TS Phạm Văn Chung
4 Uỷ viên: PGS TS Quản Thành Thơ
5 Thư ký: TS Nguyễn Hồ Mẫn Rạng
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn được sửa chữa (nếu cĩ)
CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA KH&KTMT
GS TS Phan Thị Tươi
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc
NHIEM VU LUAN VAN THAC SI
Họ tên học viên: Nguyễn Văn Dương MSHV: 7140225
Ngày, tháng, năm sinh: 06/11/1988 Nơi sinh: Vĩnh Long
Chuyên ngành: Khoa học máy tính Mã số: 60.48.01.01
I TÊN ĐỀ TÀI:
So sánh hai phương pháp thu gọn tập huẫn luyện RHC và Nạve Ranking trong
phân lớp dữ liệu chuỗi thời gian
II NHIEM VU VA NOI DUNG
Nhiệm vụ: So sánh hiệu quả thu gọn tập huấn luyện bằng hai phương pháp cĩ tham số Nạve Ranking và phi tham số RHC để tìm ra phương pháp phù hợp đáp ứng nhu cầu tối ưu hiệu quả phân lớp trên dữ liệu chuỗi thời gian
Nội dung:
1 Nghiên cứu lý thuyết về giải thuật phân lớp k-NN và các kỹ thuật thu gọn tập
huấn luyén Naive Ranking, RHC, dRHC
2 Hiện thực giải thuật phân lớp k-NN và các kỹ thuật thu gọn tập huấn luyện Naive Ranking, RHC, dRHC
3 Thực nghiệm và so sánh kết quả phân lớp k-NN thuần tuý và phân lớp cĩ kết
hợp các kỹ thuật thu gọn tập huấn luyện Nạve Ranking, RHC, dRHC
Ill NGAY GIAO NHIEM VU: 26/02/2018
Trang 4LOI CAM GN
Tơi xin chân thành cảm on PGS TS Dương Tuấn Anh, người Thầy đã tận tình dìu dắt
tơi trong suốt quá trình học tập tại trường Đại học Bách Khoa - TP Hồ Chi Minh Thầy
cũng là người hướng dẫn và tạo điều kiện tốt nhất để tơi cĩ thể hồn thành luận văn thạc
s1
Tơi xin cảm ơn quí Thầy Cơ, những người đã tận tình hướng dẫn và truyền đạt cho tơi
và biết bao thế hệ sinh viên những kiến thức quí báu trong suốt quá trình học tập
Tơi xin cảm ơn gia đình đã động viên và tạo mợi điều kiện tốt nhất để tơi cĩ thể tiếp
tục theo đuổi việc học tập, nghiên cứu
Con trân trọng dành tặng thành quả của luận văn này cho cha mẹ Nhờ cơng lao dưỡng
dục của cha mẹ mà con mới cĩ được thành quả như ngày hơm nay
Qua đây, tơi cũng xin chân thành cảm ơn các anh chị và các bạn đã giúp đỡ, gĩp ý cho
Trang 5TĨM TẮT LUẬN VĂN
Dữ liệu chuỗi thời thời gian (tìme series data) là một chuỗi dữ liệu dạng điểm, được do
theo từng khoảnh khắc thời gian liền nhau theo một tần suất nhất định, đã và đang được
ứng dụng trong nhiều ngành nghề, lĩnh vực khác nhau Việc phân tích dữ liệu chuỗi thời
gian thơng qua phân lớp đĩng vai trị quan trọng vì đĩ là quá trình trích xuất các thuộc
tính thơng kê cĩ ý nghĩa, qua đĩ ta cĩ thể dự đốn các điểm dữ liệu trước khi nĩ xảy ra, hoặc thống kê xu hướng dữ liệu hiện tại và đưa ra quyết định tốt hơn phục vụ đời sống
COn người
Nhiều cơng trình nghiên cứu đã đưa ra những kỹ thuật khác nhau nhằm tăng tốc quá
trình phân lớp, trong đĩ cĩ các kỹ thuật về thu gọn tập huấn luyện Cơ sở của việc cải
tiến dựa trên việc chúng ta trích yếu những phần tử đặc trưng trong tập huấn luyện và
loại bỏ những phần tử cịn lại Làm như vậy, ta cĩ thể thu gọn tập huấn luyện ban đầu
thành một tập huấn luyện mới nhỏ hơn, gọn hơn, qua đĩ giảm đáng kể thời gian phân lớp nhưng vẫn đảm bảo được những thơng tin cần thiết với độ chính xác cao, trong một
số trường hợp thực nghiệm cho thấy độ chính xác thậm chí tốt hơn so với phân lớp dựa
vào tập huấn luyện ban đầu, qua đĩ rút giảm chi phí tính tốn Trong đề tài này, chúng
tơi khảo sát và so sánh hiệu quả một số kỹ thuật thu gọn tập huấn luyện tiêu biểu là RHC
(Reduction through Homogeneous Clusters) va Naive Ranking
Ngồi ra, để đáp ứng với xu thế ngày nay là tập huấn luyện lớn và đến liên tục theo
thời gian, đề tài đã hiện thực và khảo sát kỹ thuật thu gọn tập huấn luyện động này với giai thuat (RHC (dynamic Reduction through Homogeneous Clusters)
Đề tài áp dụng độ đo xoắn thời gian động để thu gọn tập huấn luyện với hai kỹ thuật khác nhau sau đĩ tiễn hành so sánh kết quả phân lớp dựa trên những tập huấn luyện đã
thu gọn đĩ, đồng thời so sánh thời gian thực thi của các kỹ thuật thu gọn này
Trang 6ABSTRACT
Nowsadays, time series data has been applied in many different domains Time series classification is an important techique in time series data mining because it 1s a process of extracting meaningful statistical properties so that we can gain the knowledge, in order to predict the trends of the data It also helps us to make better decisions for human life There are numerous researches have been proposed with different techniques to speed up the time series classification process, including techniques for reducing training set The main idea of the this improvement is based on how we extract and retain the core elements in the training set and remove the others By doing that, we can reduce the original training set into a smaller, neat new training set, which dramatically reduces the time spent in classification but still ensure the accuracy In some cases, the experimental results demonstrate that the accuracy might be even better than the original training set
In this study, we investigate, implement and compare the effectiveness of the two
popular data reduction techniques: RHC (Reduction through Homogeneous Clusters)
and Naive Ranking
In addition, in order to manage datasets that cannot fit in main memory and is ap-
propriate for dynamic environments where new training data are gradually available we
also implement and verify the the effectiveness of dGRHC (dynamic Reduction through
Homogeneous Clusters) algorithm
Trang 7LỜI CAM ĐOAN
Tơi cam đoan rằng, ngoại trừ các kết quả tham khảo từ các cơng trình khác như đã ghi rõ trong luận văn, các cơng việc trình bày trong luận văn này là do chính tơi thực hiện và chưa cĩ phần nội dung nào của luận văn này được nộp để lấy một bằng cấp ở trường này hoặc trường khác
Ngày 18 tháng 06 năm 2018
Nguyễn Văn Dương
Trang 8MỤC LỤC
LOI CAM ON i
TOM TAT LUAN VAN ii
ABSTRACT iii LOI CAM DOAN iv
DANH MUC HINH viii
DANH MUC BANG BIEU ix Chương 1 GIỚI THIỆU DE TAI 1
11 LÝDONGHIÊNCÚU 1 I2 MỤC ĐÍCH NGHIÊNCỨU 1
132 ÝNGHĨA ĐÊTÀI 2
14 MOTABAITOAN 000 eee ee een 2
1.5 KETQUADATDUOC 0000 cee eee eee 2
1.6 BOCUCLUANVAN 0000 cece eect eee eens 3
Chương 2 CƠ SỞ LÝ THUYÊT 4
2.1 DAC DIEM CUA DU LIEU CHUOI THOIGIAN 4
2.1.1 Chuéicon 00 es 4
2.1.2 Trùngkhớp Q ee 5
2.2 ĐỘ ĐO KHOẢNG CÁCH 5
2.2.1 KhoảngcáchEuclid 6
2.2.2 Độ đo xoắn thời gian déng (Dynamic Time Warping- DTW) 6
2.2.2.1 Phuong phap tinh khoéang cach DTW 6 2.2.2.2 Vidutinh khoang cach DTW 8
2.2.2.3 Các kỹ thuật tối ưu phương pháápDTW_ 10
2.3 CÁC PHƯƠNG PHAP PHAN LOP DU LIEU CHUỖI THỜI GIAN 12
2.3.1 Giải thuật phân lớp k-lân cận gần nhất (kjNN) 12
2.3.2 Cây quyếtđịnhh QC CS 13
Trang 92.3.4 SVM Q Q Q Q Q Q Q Q Q HQ ng gà cv kg g kg Kha 14
Chương 3 TỔNG QUAN CÁC CƠNG TRÌNH LIÊN QUAN 16
3.1 KỸ THUẬT THU GỌN SO PHAN TỬ TAP HUAN LUYEN NAIVE
RANK ee ene 16
3.2 PHUONG PHAP THU GON TAP HUAN LUYENINSIGHT 18
3.2.1 Hamtinhtrongs6 0 18
3.211 Thuộc tnhtrungtâm 18
3.2.1.2 Hàm tính trọng số dựa trên thuộc tính trungtâm 20
3.3 PHAN LOP k-NN HIEU QUA VOI KY THUAT THU GON DU LIEU DỰA VÀO GOM CỤM PHI THAM SỐ 21
3.3.1 Thu gọn dựa vào gom cụn (RHC) 21
3.32 RHC động (dRHC) 22
3.4 CÁC GIẢI THUẬT LỰA CHỌN ĐẠI DIỆN VÀ TRÍCH YÊU ĐẠI DIỆN DE THU GON TAP HUAN LUYEN TRƯỚC KHI THỰC HIỆN PHÂN LĨP DỮLIỆU 27
3.4.1 Các giải thuật lựa chọn đạidiện 27
3.411 GiảithuậtCNN-rule 27
3.4.1.2 GiảthuậtIB2 co 28 3.4.2 Các giải thuật trích yêu đại diện 29
3.4.2.1 Giải thuật trích yếu đại diện IB2(AIB2) 29 3.4.2.2 GiảithuậtC]A cu 30 Chương 4 GIẢI PHÁP THỰC HIỆN 33 41 HIỆN THỰC HỆTHƠNG 33 4.1.1 Sơ đồ hoạt động chương trìnhchính 33 4.1.2 Cácmodulechính .cc Ặ VỤ 34 4.1.3 Sơ đồ hoạt động chương trình thu gọndRHC 35
4.2 MỘT SỐ QUY ƯỚC VÀ RÀNG BUỘC 37
Trang 105.3.4 Bộ dữ liệu Flsh Q Q Q Q Q Q Q Q 42
5.3.5 Bộ dữ lệu Trace co 43
5.4 THUC NGHIEM SO SÁNH ĐỘ CHÍNH XÁC PHÂN LỚP TRƯỚC VA SAU KHI THU GỌN TẬP HUẨN LUYỆN 44
5.4.1 Xác định cửa sổ xoắn tốiưu 44
5.4.2 Số phần tử được giữ lại trong tập huấn luyện bằngnhau 45
Trang 11DANH MỤC HÌNH
2.1 Ví dụ về chuỗi thời gian động đất -
2.2_ Ví dụ về chuỗi con và cửa sổ trượt [8]
2.3 Độ đo Euclid và độ đo xoắn thời gian động [5]
2.4 Ma trận xoắn thời gian động [l6] .-
2.5 Biểu đồ biểu diễn 2 chuỗi thời gian Q vàŒ
2.6 Biểu đồ biểu diễn sự tương quan của 2 chuỗi thời gian QvàC
2.7 Ràng buộc dải Sakoe-Chiồa cv 2.8 Ràng buộc Hình bình hành Iakura
2.9 Phân lớp klân cận gầnnhất -
2.10 Kỹ thuật SVM trong khơng gian 2 chiều với siêu phẳng tuyến tính chia khơng gian dữ liệu thành 2 lớp riêng biét Class -1 va Class Ï với Margin I6nnhat Q Q Q Q Q Q Q Q Q Q Q v2 3.1 Biểu đồ phân bỗ của hàm ƒÄ(z) trên một số chuỗi thời gian Trục hồnh thể hiện giá trị ƒ¿(z), trục tung là số lượng phần tử cĩ giá trị đĩ
3.2 Quy trinh thực hiện của giải thuật RHC [10]
3⁄3 Quy trình thực hiện giải thuật dRHC[10]
4.1 Sơ đồ hoạt động chương trình chính so sánh RHC và Nạve Ranking 4.2 Sơ đồ hoạt động chương trình dRHC_
5.1 Một số hình ảnh minh hoạ bộ dữ liệu ArrowHead
5.2_ Đầu mũi tên được biểu diễn dưới dạng Timeseries -
5.3 Một số hình ảnh minh hoạ bộ dữ liệu BeetleFly
5.4 Vài ảnh rời trích từ video Gun-Draw: theo dõi hành vi của tay phải và chuyển thành một chuỗi cử động -
5.5 Dạng chuỗi thời gian thuộc lớp Point và dạng chuỗi thời gian thuộc lớp €9) -
5.6 Chuỗi thời gian được tạo ra từ ánh xạ đường biên hình concá
5.7 Biểu đồ biểu diễn các lớp trong bộ dữ liệu Trace -
5.8 Biểu đồ so sánh độ chính xác phân lớp trước và sau khi thu gọn tập huấn luyện với kỹ thuật RHC và NạiveRankmng
Trang 122.1 3.1 5.2 3.3 5.4 5.5 5.6 5.7 5.8
DANH MUC BANG BIEU
Ma trận khoang cach gitfa hai chuéi thoi gianQvaC Thơng tin các tập dữ liệu thực nghiệm
Kích thước cửa sổ xoắn cho kết quả phân lớp kNN tổiưu
So sánh độ chính xác phân lớp sau khi thu gọn tập huấn luyện bằng kỹ thuật RHC và kỹ thuật NaveRankmng Thời gian thực thi hai kỹ thuật thu gọn tập huấn luyện RHC và Nạve Độ chính xác phân lớp k-NN tương ứng với ngưỡng ø trong kỹ thuật thu gọn Nạive Ranking Q2 Thời gian thực thi phân lớp trên tập huấn luyện đã thu gọn bằng RHC và
NarTve Ranking với ngưỡng nø= 60%
Thơng tin các tập dữ liệu thực nghiệm với kỹ thuật dRHC
Tỉ lệ thu gọn bằng kỹ thuật dRHC và độ chính xác phân lớp dựa trên tập
Trang 13CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI 11 LÝ DO NGHIÊN CỨU
Khai phá dữ liệu (hay cịn gọi là khám phá tr1 thức hoặc đữ liệu) đã trở thành lĩnh vực ngày càng quan trọng vì nĩ giúp phân tích và tổng kết dữ liệu thành những thơng tin hữu
ích Cĩ nhiều kỹ thuật trong quá trình khai thác dữ liệu trong đĩ phân lớp (classification)
được biết đến như một kỹ thuật quan trọng Mục đích của kỹ thuật này là phân tích dữ liệu thu thập được thành các mơ hình mơ tả nhằm phục vụ cho cơng việc dự đốn [7] Ở để tài này chúng tơi tiễn hành thực hiện phân lớp trên đữ liệu chuỗi thời gian (tìme series data)
Bài tốn phân lớp dữ liệu chuỗi thời gian là vấn đề luơn thu hút được sự quan tâm của giới nghiên cứu trong lĩnh vực khai phá dữ liệu chuỗi thời gian từ trước đến nay Nĩ
được ứng dụng trong nhiễu lĩnh vực, y tế, tài chính, cơng nghiệp, giải trí Đã cĩ nhiều giải
thuật được đưa ra để giải quyết bài tốn này như: Cây quyết định, Mạng nơ-ron, [ 16]
Hầu hết các giải thuật phân lớp đều đối mặt với vấn đề là chi phí tính tốn và chi phí
lưu trữ cao do phải xử lý trên tập dữ liệu lớn mà trong đĩ cĩ nhiều mẫu dữ liệu khơng
thật sự liên quan đến mục đích của bài tốn Do đĩ, thu gọn tập huấn luyện trước khi
thực hiện phân lớp dữ liệu đã trở thành bước hết sức cần thiết Đã cĩ nhiều phương pháp
thu gọn tập huấn luyện được giới thiệu, ở đây chúng tơi đề xuất áp dụng kỹ thuật RHC (Reduction through Homogeneous Clusters) - một kỹ thuật thu gọn vốn được đề xuất trên dữ liệu thường lại cho kết quả thu gọn rất cao đơi trên dữ liệu chuỗi thời gian với kỹ thuật thu gọn cĩ tham số Naive Ranking - một kỹ thuật thu gọn đơn giản nhưng rất linh hoạt trong việc điều chỉnh tỉ lệ thu gọn cũng như độ chính xác phân lớp sau thu gọn dé
thu gọn dữ liệu trước khi sử dụng k-NN để phân lớp tập dữ liệu chuỗi thời gian
12 MỤC ĐÍCH NGHIÊN CỨU
Nhằm giúp cho việc phân lớp dữ liệu chuỗi thời gian được giảm chỉ phí tính tốn, hiệu
quả hơn, tỉ lệ thu gọn đữ liệu đạt hiệu quả cao mà vẫn duy trì độ chính xác của kết quả phân lĩp
e Tìm hiểu và vận dung giai thuat thu gon tap huan luyén RHC (Reduction through Homogeneous Clusters) để thu gọn dữ liệu trước khi phân lớp bằng giải thuật kNN
e Hiện thực và thử nghiệm với bộ dữ liệu mẫu để đánh giá hiệu quả của các phương
Trang 1413 Ý NGHĨA ĐỀ TÀI
Đề tài đĩng gĩp về ý nghĩa về mặt thực tiễn cũng như về mặt học thuật
e Về mặt học thuật: để tài này cung cấp kết quả thực nghiệm về đánh giá hiệu quả
các kỹ thuật thu gọn tập huấn luyện đối với dữ liệu chuỗi thời gian
e Về mặt thực tiễn: thơng qua thực nghiệm đưa ra kết luận về tính hữu hiệu của việc phân lớp trước và sau khi thu gọn tập huấn luyện bằng các kỹ thuật khác nhau từ
đĩ làm cơ sở hỗ trợ cho việc lựa chọn phương pháp thu gọn phù hợp tùy theo các bộ dữ liệu và nhu cầu của người dùng trong nhiều lãnh vực như mơi trường, y tế, khoa học kỹ thuật, kinh tế, tài chính
1.4 MƠ TẢ BÀI TỐN
Thơng tin đầu vào và đầu ra của bài tốn được xác định như sau:
e Input: Bộ dữ liệu chuỗi thời gian gồm tập huấn luyện và tập thử
e Các bước thực hiện:
- Bước 1: Tiền xử lý tập dữ liệu
- Bước 2: Áp dụng kỹ thuật RHC, dRHC để thu gọn tập đữ liệu huấn luyện - Bước 3: Phân lớp k-NN dựa vào tập huấn luyện đã được thu gọn
- Bước 4: So sánh, đánh giá kết quả phân lớp với giải thuật kNN cĩ áp dụng Nạve Rank để thu gọn tập huấn luyện
e Ouput:
— Tập dữ liệu chuỗi thời gian (tập thử) đã được phân lớp
— Các độ đo đánh giá chất lượng phân lớp của các phương pháp
1.5 KẾT QUẢ ĐẠT ĐƯỢC
Đề tài đạt được một số kết quả quan trọng sau đây:
Về việc thu gọn tập huấn luyện bằng kỹ thuật RHC, cho kết kết quả thu gọn rất đáng kể, tập huấn luyện sau khi thu gọn chỉ cịn trung bình khoảng 25% so với tập ban đầu
Về kết quả phân lớp trên tập huấn luyện đã thu gọn bằng kỹ thuật RHC cho kết quả
Trang 15Ngồi ra, thời gian thực hiện việc thu gọn bằng kỹ thuật RHC cũng ngắn hơn rất nhiều so việc thu gọn bằng kỹ thuật Nạve Ranking Trung bình kỹ thuật RHC chỉ chiếm trung bình 8 mili giây trong khi kỹ thuật Nạve Ranking chiếm trung bình hơn 1 giây
1.6 BƠ CỤC LUẬN VĂN
Luận văn được trình bày theo bố cục từng chương như sau:
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
Chương này giới thiệu sơ lược các định nghĩa, các vẫn để cĩ liên quan đến đề tài, mục
tiêu và giới hạn nghiên cứu của để tài, tĩm lược các kết quả đạt được và bố cục luận văn
CHƯƠNG 2: CƠ SỞ LÝ THUYET
Chương này trình bày chỉ tiết về các cơ sở lý thuyết được áp dung trong dé tài như:
thuật tốn k-lân cận gần nhất, cách tính độ đo xoắn thời gian động
CHƯƠNG 3: TỔNG QUAN CÁC CƠNG TRÌNH LIÊN QUAN
Chương này giới thiệu sơ lược một số cơng trình nghiên cứu về thu gọn tập huấn luyện
cĩ liên quan đến đề tài
CHƯƠNG 4 : GIẢI PHÁP THỰC HIỆN
Chương này giới thiệu hướng tiếp cận của chúng tơi để thực hiện để tài
CHƯƠNG 5: KÊT QUẢ THỰC NGHIỆM
Chương này tiền hành thực nghiệm trên nhiều bộ dữ liệu khác nhau cho quá trình thu gọn tập huấn luyện, khảo sát thời thời gian thực thi việc thu gọn và độ chính xác phân lớp Một số kết luận được rút ra từ kết quả thực nghiệm
CHƯƠNG 6: TỔNG KẾT
Chương này trình bày tổng lược lại tồn bộ nội dung quan trọng của luận văn, các đĩng gĩp chính của đề tài, và hướng phát triển
PHẦN TÀI LIỆU THAM KHẢO
Trang 16CHƯƠNG2 CƠ SỞ LÝ THUYÊT
Ở chương này chúng tơi tập trung trình bày những cơ sở lý thuyết quan trọng về dữ liệu chuỗi thời gian như: độ đo khoảng cách, giải thuật phân lớp Trước hết chúng tơi cần
hiểu rõ chuỗi thời gian là gì và các đặc điểm của nĩ
2.1 DAC DIEM CUA DU LIEU CHUOI THOI GIAN
Chuỗi thdi gian (time series) 14 chuéi trị số thực, mỗi trị số biểu diễn một giá tri do tại những thời điểm cách đều nhau Những tập dữ liệu chuỗi thời gian rất lớn xuất hiện trong
nhiều lãnh vực khác nhau như y khoa, kỹ thuật, kinh tế, tài chính, v.v [4] Ví dụ kết
quả quan sát hiện tượng động đất (đơn vị Richter) qua 99 năm liên tục là chuỗi thời gian như trong hình 2.1 Time Series Plot of Quakes + | Pty | otal on AL AM 1Í | | lÍ HÍ ‡ flif # ĐJ *|| ae *|| | [J ef ate | ` [| lạt: II đ ƑJ 1Ì | a + ' Ie} é | ờ tí | f\|lÌ AK là , | | + a's ue Half se l Oy Wein eg aig *Ÿ Fish LÍ VÌ ey y" V + ‘ L) A916 1335 1935 LH: 1⁄5 1985 13175 13545 i995 ites 2015 Year
Hình 2.1: Ví dụ về chuỗi thời gian động đất
Ngồi ra, cịn cĩ các định nghĩa về chuỗi thời gian đơn biến (univariate tìme series) và chuỗi thời gian đa biến (multivariate time series) Chuỗi thời gian đơn biến là một chuỗi thời gian chỉ chứa một quan sát được ghi nhận một cách tuần tự tại những khoảng thời gian cách đều nhau Chuỗi thời gian đa biến là chuỗi thời gian mà trong đĩ tại một
thời điểm ta cĩ nhiều quan sát (biến) khác nhau
2.1.1 Chuỗi con
Cho một chuỗi thời gian 7 cĩ chiều dài ø, một chuỗi con (Subsequence) Ở của 7 là một
Trang 17
40) Ba BO TOO 120
Hình 2.2: Ví dụ về chuỗi con và cửa số trượt [8]
Một chuỗi con Œ của 7 cũng cĩ thể được xem là một chuỗi thời gian với chiều dài mm Một điều cần lưu ý là khái niệm “chuỗi con” khác với khái niệm “chuỗi tuần tự” Nếu
khái niệm “chuỗi tuần tự” cho phép các phần tử của chuỗi cĩ thể khơng liên tục so với
chuỗi ban đầu, thì khái niệm “chuỗi con Œ” của một chuỗi thời gian 7 chỉ chấp nhận
những phân tử liên tiếp nhau trong chuỗi thời gian 7 Bên dưới là một ví dụ về chuỗi con của một chuỗi thời gian
Cho chuỗi thời gian 7' = (3, 5, 1, 12,4, 7) Khi đĩ, Ơ¡ = (12,4, 7) được gọi là một chuỗi con của chuỗi thời gian 7 Tuy nhiên, Cạ = (3,1,12,4) khơng được xem là một chuỗi
con của chuỗi thời gian 7, vì 3 và 1 là các giá trị khơng liên tiếp nhau trong 7
Các cơng trình nghiên cứu thường áp dụng phương pháp cửa sổ trượt (Sliding Win-
dows) để lây các chuỗi con trong một chuối thời gian để phục vụ cho bài tốn nghiên cứu Số lượng của các chuỗi con lấy được là bằng nhau và bằng độ dài của cửa sổ trượt
Hình 2.2 minh họa chuỗi con được xác định bằng phương pháp cửa sổ trượt
2.1.2 Trùng khớp
Cho một số thực dương # (do người dùng định nghĩa) và một chuỗi thời gian 7 Biết
rằng 7' chứa một chuỗi con Ở bắt đầu tại thời điểm p và một chuỗi con A⁄ bắt đầu tại ạ,
nếu khoảng cách 72 giữa 2 chuỗi nhỏ hơn hoặc bằng #, tức 2(C, M) < R, thi Ä⁄ là một
chuỗi con trùng khĩp với Œ và ngược lại
2.2 DO DO KHOANG CACH
Cĩ nhiều loại độ đo khoảng cách để hỗ trợ tính tốn trong quá trình khai phá dữ liệu
Nhưng đối với quá trình phân lớp với tập dữ liệu chuỗi thời gian thì thường sử dụng 2 loại độ đo khoảng cách chủ yếu là độ đo khoảng cách Euclid va va dé do khoang cách xoắn thời gian động (Dynamic Time Warping - DTW) O phan nay chiing téi tìm hiểu
Trang 182.2.1 Khoảng cách Euclid
Cho 2 chuỗi thời gian Q = Q1, Qa, , Q„ và Œ = C+,C;, , C„ Khi đĩ khoảng cách
Euclid giữa hai chuỗi thời gian Q và Œ được xác định bằng cơng thức sau:
D(Q,Ø =,|3_(w— œ}Ÿ (2.1)
=1
Độ đo khoảng cách Euclid cĩ ưu điểm là dễ hiểu, dễ tính tốn, dễ mở rộng cho nhiều
bài tốn khai phá dữ liệu chuỗi thời gian khác như gom cụm, phân lớp, nhận dạng mơ
típ, v.v Nhưng độ đo khoảng cách này cĩ nhược điểm là nhạy cảm với nhiễu và thiếu sự
mềm dẻo khi so trùng [4]
2.2.2 Độ đo xoắn thời gian động (Dynamic Tỉme Warping - DTW)
Trên nhiều nghiên cứu đã chứng minh DTW là độ đo xoắn thời gian động tính tốn khoảng cách giữa 2 mẫu dữ liệu chuỗi thời gian cho độ chính xác nhiều hơn so với
khoảng cách Euclid
2.2.2.1 Phương pháp tính khoảng cách DTW
Cho 2 chuỗi thời gian Q và Ở cĩ chiều dài lần lượt là œ và m theo với Q = Q1, Q›, , Q„
va C = Œ1,Ca, , C„ cơng thức DTW được tính như sau:
e Bước 1: Xây dựng một ma trận cĩ kích thước ø + mm với n là số hàng của ma trận và
m là sơ cột của ma trận Trong đĩ phần tử (2°, 7°) của ma trận chứa khoảng cách d(q¡, c¡) giữa hai điểm q¡, c;¡ trên 2 chuỗi dữ liệu Q và Ở Với đ(q, e;) = (œ — ej)Ề e Bước 2: Ma trận chứa khoảng cách đ(ø;, c;) được gọi là ma trộn xoắn (Warping
matrix) Một đường xoắn (warping path) là một tập các phần tử liên tục của ma trận định nghĩa một đường ánh xạ giữa Q và Œ
W = w1,We, , We VOI maz(m,n) < K<m+n-1
e Bước 3: Cĩ rất nhiều đường xoắn thỏa mãn các điều kiện trên nhưng chúng ta chỉ quan tâm đến đường xoắn cĩ chỉ phí tối thiểu Chi phí của một đường xoắn là tổng
khoảng cách của các cặp điểm tương ứng với các ơ năm trên đường xoắn đĩ
Trang 19Đường xoắn tối ưu này cĩ thể tìm được bằng cách sử dụng phương pháp quy hoạch động (dynamic prograrmmning) Cơng thức truy hồi cho khoảng cách tích lũy (cư- mulative đistance) được định nghĩa như sau:
Vi, J) = d(di, cj) + min ¢ y(4, 7 — 1) (2.3)
yi ~~ 1,7 ~~ 1)
Trong đĩ, khoảng cách tích lũy (i, j) tai 6 (i, 7) của ma trận được tính bằng khoảng
cách của ơ tương ứng cộng với giá trị nhỏ nhất của khoảng cách tích lũy của các ơ
liền kể trước ơ đĩ Khoảng cách xoắn thời gian động của hai chuỗi thời gian Q và C là căn bậc hai của khoảng cách tích lũy tại ơ cĩ chỉ số là (m, n)
Đối với việc tính tốn DTW chúng ta cĩ một số ràng buộc sau:
- Điều kiện biên: w; = (1,1) va we = (m,n) rang budc nay yêu cầu đường xoắn phải bắt đầu và kết thúc ở hai gĩc đối diện của ma trận
— Tinh lién tuc: wy = (a,b) thi øy_ = (ø',ð') trong đĩ a— ø“ < 1 và b— < 1
Ràng buộc này yêu cầu đường xoắn phải di chuyển giữa những ơ liền kề (kể cả những ơ liền kể theo đường chéo)
— Tính đơn điệu tăng: +0 = (ø, b) thì +oœy_¡ = (œ',b), với a— a.> 0 và b— >0 Ràng buộc này yêu cầu các điểm trong đường xoắn W/ phải cĩ tính đơn điệu
tang theo thoi gian
Algorithm 1 trinh bay ma gia giai thuat tính khoảng cách giữa hai chuỗi thời gian
Q cĩ chiều dài ø và Œ cĩ chiều đài m Algorithm 1 DTW Input: Q: Array[1 n],C : Array[1 m] Output: DTW [n,m] wa Pehy ona : DTW «+ emptyArray|n, m] : for from 2 = to n do for from 7 = 1 to m do
/ƒ The distance +(¿, 7) 1s calculated using eq 2.4
Trang 20độ đo Euclid và cho phép nhận dạng mẫu cĩ hình dạng giống nhau nhưng chiều
dài hình dạng về thời gian cĩ thể khác nhau Phương pháp này cĩ nhược điểm là
thời gian chạy lâu, tuy nhiên cũng đã cĩ những cơng trình nghiên cứu để xuất các
giải pháp tăng tốc độ tìm kiểm tương tự dùng độ đo DTW[161]
Hình 2.3 mơ tả sự khác biệt giữa độ đo Euclid và độ đo xoắn thời gian động r am Th, pos, Euclidian Hình 2.3: Độ đo Euclid và độ đo xoắn thời gian động [5]
Hình 2.4: Ma trận xoắn thời gian động [16]
Hình 2.4 (bên trái) biểu diễn hai chuỗi thời gian Q và Œ tương tự nhau nhưng bị lệch
Trang 21Hình 2.5: Biểu đồ biểu diễn 2 chuỗi thời gian Q và Œ
Áp dụng Algorithm 1, ta xây dựng ma trận xoắn lưu khoảng cách tích luỹ giữa các điểm dữ liệu tương ứng của hai chuỗi thời gian Q và Ơ Giá trị cdc phan tit y(i, 7) trong ma trận được tính như sau:
(Qo — Co)” iÊ2=j=0 cĩ, (Qi — Œg)ˆ + +(¿ — 1,0) if¡ > 0,7 =0 +Œ,j) = (Qo — Œ;)? + +(0, 7 — 1) ifi=0,j >0 (Qi - C5)? + mi ny (, 7 — 1),y(¿T— 1,7), y — 1,7 — 1)) 1IÊ?>0,7 >0 (2.4) Khoảng cách giữa hai chuỗi thời gian Q và Ở là 4/+(m,n) = 4/^+(10,10) = V37 183 | 73 | 57 | 42] 51 | 79] 44 | 44 | 46 179 | 64) 56} 42] 75 | 43] 48 | 55 52 143 | 63 | 31 | 26] 48 | 39] 40 | 39 40 127 | 62} 22| 25] 23 | 87} 40 57 | 52 127 | 37} 21 | 22} 26 | 75 32 | 48 | 49 77 |17|57|47| 92 80 | 54 | 8 I3 | 8/12/11 45 | 49 4 19 56 | 65 | 65 26 | 30 â|~|=l>|s||ằ|~|+|ơls} CLI|6]2]23]109]2|L4]|13 |5] 2]
Bang 2.1: Ma trận khoảng cách giữa hai chuỗi thời gian Q và Œ
Dựa vào đường xoắn tìm được ta cĩ mơ hình biểu diễn sự ánh xạ giữa các điểm dữ
Trang 22
Hình 2.6: Biểu đồ biểu diễn sự tương quan của 2 chuỗi thời gian Q và Ở
2.2.2.3 Các kỹ thuật tơi ưu phương pháp DTW
Việc tính độ đo xoắn thời gian động cĩ chỉ phí lớn vì phải tìm đường xoắn đạt giá trị nhỏ nhất trong ma trận bằng phương pháp quy hoạch động Độ phức tạp của giải thuật này là O(mmn) Tuy nhiên, dựa trên ý tưởng cơ bản là giới hạn đường xoắn bằng cách thêm vào các giới hạn cục bộ trên tập hợp các bước sẽ xem xét, đã cĩ hai ràng buộc về đường xoắn phổ biến là ràng buộc Sakoe - Chiba va rang buéc Hình bình hành Iakura Bằng cách định nghĩa một tập con của ma trận xoắn (wraping maxzirix) chứa đường xoắn tối ưu Tập con này được gọi là cửa sổ xoắn (wraping window)
* Rang buéc dai Sakoe — Chiba
Kỹ thuật này được đề xuất bởi Sakoe và Chiba (1978) [13] Ràng buộc này được mơ tả
như sau:
Gọi đường xoắn tối ưu là tập các ơ trong ma trận của hai chuỗi thời gian:
W = 11,1ạ, , tụ VỚI maz(m,n) < K € n + —
Trong đĩ +, = (¿,7)¿ Ràng buộc Sakoe-Chiba yêu cầu |¿ — 7| < r, trong đĩ r là một số
nguyên dương cho trước được gọi là cửa sổ xoắn Hình 2.7 minh hoạ cửa sổ xoắn với dải
Trang 23
Hình 2.7: Ràng buộc dải Sakoe - Chiba
* Rang buéc hinh binh hanh Itakura (Itakura Paralelogram)
Ky thuat nay dudc dé xuat béi Itakura (1975) Rang buộc này cũng định nghĩa đường xoắn nằm bên trong cửa sổ xoắn nhưng kích thước cửa sổ xoan r biến thiên theo thời
gian, tạo nên hình bình hành Hình 2.8 mơ tả cửa sổ xoắn Itakura
“^ *Z
Hình 2.8: Ràng buộc Hình bình hành Itakura
Ràng buộc Søzkoe - Ch¡iba và ràng buộc Hình bình hành ltakura được xây dựng với
mục đích chính là tăng tốc độ tính tốn DTW thơng qua việc giới hạn khơng gian tìm
kiếm đường xoắn trong cửa sổ xoắn Điều này khơng cĩ nghĩa là kích thước cửa sổ xoắn
càng lớn thì đường xoắn tìm được càng tối ưu Trong một nghiên cứu của Keogh và cộng
sự đã tiến hành thực nghiệm với việc kiểm tra độ chính xác phân lớp khi áp dụng kích
thước cửa sổ xoắn tăng dần từ 0% đến 100% Kết quả cho thấy cửa sổ xoắn cĩ kích thước
lớn hơn khơng cho ra độ chính xác tốt hơn Thơng thường, độ chính xác phân lớp tốt nhất
khi áp dụng kích thước cửa sổ xoắn khá nhỏ khoảng 4% [6]
Trang 242.3 CAC PHƯƠNG PHÁP PHẦN LỚP DỮ LIỆU CHUỐI THỜI GIAN
Phân lớp là kỹ thuật khai phá dữ liệu quan trọng Nĩ cố gắng gán dữ liệu mới tới một lớp đã được xác định dựa trên bộ huấn luyện đã được phân loại sẵn Một ví dụ phân lớp như gán một emaIl vào lớp “spam” hay lớp “non-spam”
2.3.1 Giải thuật phân lớp k-lân cận gần nhất (k-NN)
k-NN là giải thuật được sử dụng rộng rãi trong nhiều bài tốn phân lớp và dự báo Quy
trình phân lớp của k-NN với một đối tượng z„„„ được mơ tả như sau:
e Tính khoảng cách từ z„e„ đến tất cả các mẫu trong tập huấn luyện e Chọn k mẫu gần nhất với z„;„„ trong tập huấn luyện
e Gán z„;e„ vào lớp cĩ nhiều mẫu nhất trong số k mẫu lân cận đĩ (hoặc z„„„ nhận giá trị trung bình của k mẫu)
Trang 25Khuyết điểm:
e Cần lưu tất cả các mẫu để phân lớp
e Cần nhiều thời gian để xác định lớp cho một mẫu mới (cần tính và so sánh khoảng
cách đến tật cả các mẫu huấn luyện)
e Phụ thuộc vào giá trị k do người dùng lựa chọn Nếu k quá nhỏ, nhạy cảm với
nhiễu Nếu k quá lớn thì vùng lân cận cĩ thể chứa các điểm của lớp khác
e Cần chuyển đổi kiểu đữ liệu đối với thuộc tính rời rạc (categorical)
2.3.2 Cây quyết định
Cây quyết định là phương pháp phân lớp dưới dạng cẫu trúc cây mà nĩ thực hiện kiểm tra phân tách tại mỗi nút nội và dự đốn phân lớp cho nút lá, nhánh từ một nút nội là kết
quả của một phép thử trên thuộc tính tương ứng Đã cĩ nhiều giải thuật khác nhau xây
dựng cây quyết định áp dụng thành cơng trên nhiều lĩnh vực [15] Đặc điểm của các giải thuật này là:
e Giải thuật tham lam (khơng cĩ quay lui), chia để trị, đệ qui, từ trên xuống
e Độ phức tạp với tập huẫn luyện 7 gồm |/2| phần tử (đối tượng), mỗi phần tử gồm
n thudc tinh là O(n * |D| * log|D|)
— Mỗi thuộc tính ứng với mỗi cấp (level) của cây
- Cho mỗi cấp của cây, || phần tử huấn luyện được duyệt qua
e Một bước quan trọng trong giải thuật là lựa chọn tiêu chí rẽ nhánh nghĩa là phân hoạch tập huấn luyện 7 thành các phân hoạch con với các nhãn phù hợp
- Xếp hạng mỗi thuộc tính
— Thuộc tính được chọn để rẽ nhánh là thuộc tính cĩ trị số điểm (score) lớn nhất
— Độ đo chọn thuộc tính phân tách (splitting attribute): độ lợi thơng tin, chỉ số
Gim
2.3.3 Mang noron
Mang noron (Neural Network) hay mang noron nhan tao (Artificial Neural Network- ANN) là mơ hình tính tốn xử lý thơng tin được mơ phỏng dựa trên hoạt động của hệ
thống thần kinh của sinh vật, bao gồm số lượng lớn các nơron được gắn kết để xử lý
Trang 26nơron trong bộ não con người, được học tri thức thơng qua huấn luyện, cĩ khả năng lưu ø1ữ những tr1 thức học được và sử dụng những tr1 thức đĩ trong việc dự đốn các thơng tin chưa biết
Mạng nơron là một cơng cụ quan trọng trong phân lớp dữ liệu Thế mạnh của mạng
nơron nằm ở các khía cạnh lý thuyết sau:
e Mạng nơron là phương pháp tự thích nghị theo hướng dữ liệu Nhờ đĩ mà nĩ cĩ
thể tự điều chỉnh theo đữ liệu mà khơng cần chỉ định thay đổi mơ hình
e Mạng nơron cĩ thể tính tốn gần đúng trong bắt kỳ chức năng nào với độ chính xác tuỳ ý
e Mạng nơron khơng phải là mơ hình tuyến tính Do đĩ nĩ cĩ thể linh hoạt trong việc mơ hình hố các mối quan hệ phức tạp trong thể giới thực
e Mạng nơron cĩ thể ước lượng xác suất hậu nghiệm, cung cấp cơ sở cho việc thiết
lập quy tắc phân lớp và thực hiện phân tích thống kê
Mạng nơron trong bài tốn phân lớp cĩ thể được xem như một hàm ánh xạ Ƒ : ## — 7+1,
Trong đĩ dữ liệu đầu vào là một vector z cĩ đ chiều được đưa vào mạng Một mạng ø
gồm 1 vector được tạo ra, giúp quyết định kết quả phân lớp [12] 2.3.4 SVM
Máy vector hỗ trợ (Support Vector Machine - SVM) là một phương pháp phân lớp bằng cách xác định siêu phẳng (hyperplane) Siêu phẳng này phân chia khơng gian dữ liệu
thành những lớp khác nhau Bài tốn phân lớp trở thành bài tốn xác định siêu phẳng mà
khoảng cách (margin) từ nĩ đến các điểm đữ liệu gần nhất trong các khơng gian dữ liệu
mà nĩ tạo ra là xa nhất, hay cịn gọi là bài tốn cực đại hố margin Hình 2.10 minh hoạ
kỹ thuật SVM
Do dữ liệu chuỗi thời gian cĩ những đặc điểm riêng (khối lượng dữ liệu lớn, giữa các
điểm dữ liệu cĩ mối tương quan với nhau và đữ liệu cĩ thể cĩ nhiễu) làm cho việc khai phá dữ liệu chuỗi thời gian trở nên khĩ khăn hơn Nhiều giải thuật phân lớp kinh điển
làm việc tốt với dữ liệu thường nhưng khơng thể làm việc hiệu quả với dữ liệu chuỗi thời
gian Qua các nghiên cứu đã cho thấy giải thuật phân lớp 1-NN sử dụng độ đo DTW phù
Trang 27Suppart vectors (class -1) ® H ở 1 Hyperplane e
Margin = Support vectors (class 1)
Hình 2.10: Kỹ thuật SVM trong khơng gian 2 chiều với siêu phẳng tuyến tính chia khơng
gian đữ liệu thành 2 lớp riêng biệt CJass -ï và Class 7 với Margin lớn nhất
Trang 28CHUGNG 3 TONG QUAN CAC CONG TRINH LIEN QUAN
Thu gọn dữ liệu chuỗi thời gian trở thành một bước tất yếu để tăng tốc quá trình phân lớp Nhiều cơng trình nghiên cứu đã cho ra đời những kỹ thuật thu gọn tập huấn luyện hiệu quả Trong chương này chúng tơi sẽ điểm qua một số kỹ thuật thu gọn tập huấn luyện tiên tiễn cho đữ liệu thường và dữ liệu chuỗi thời gian hiện nay
3.1 KY THUAT THU GON SO PHAN TU TAP HUAN LUYEN NAIVE RANK
Cĩ nhiều giải thuật đề xuất cho vẫn đề phân lớp với dữ liệu là chuỗi thời gian Tuy nhiên,
rõ ràng giải thuật một phần tử lân cận gần nhất (1-NN) với độ khoảng cách xoắn thời
gian déng (Dynamic Time Warping - DTW) la giai thuat đặc biệt khĩ cĩ giải thuật nào
đánh bại được [17] Cách tiếp cận này cĩ một điểm yếu, địi hỏi nhiều thời gian tính tốn
Cĩ một cách khắc phục điểm yếu này là tăng tốc độ tính tốn độ đo DTW Ngồi ra Xi và các cộng sự (2006) đã đưa ra kỹ thuật thu gọn số lượng (numerosity reduction) tập
huấn luyện để tăng tốc độ giải thuật phân lớp 1-NN mà khơng làm mất tính chính xác
phân lĩp
Kỹ thuật thu gọn số lượng tập huấn luyện cĩ thể hiểu đơn giản là loại bỏ một số dữ liệu trong tập huấn luyện nhằm để cải thiện hiệu suất phân lớp Nếu chúng ta cẩn thận
lựa chọn đối tượng loại bỏ, chúng ta đặc biệt rút ngắn được thời gian phân lớp trong khi độ chính xác vẫn cao, trong một vài trường hợp cĩ thể tăng hiệu suất phân lớp một cách
rất đáng kể
Việc tăng tốc phân lớp dựa vào nền tảng kiến thức giải thuật k-NN và độ đo DTW đã
trình bày ở Chương 2 Và quan trọng nhất là kỹ thuật thu gọn tập huấn luyện Nạve Rank (Nạve Rank Reduction) [16] Giải thuật Nạve Rank thu gọn tập huấn luyện gồm 2 bước
là xếp hạng (ranking) và xác định ngưỡng (thresholding) Đầu tiên giải thuật xếp hạng
cho tất cả các đối tượng trong tập huấn luyện Sau đĩ giải thuật xác định ngưỡng n để
quyết định cĩ bao nhiêu đối tượng được giữ lại và ø đối tượng xếp hạng cao nhất được
giữ lại để phân lớp
Hạng của các đối tượng được xác định theo cơng thức 3.1:
rank(z) = » 1 1fCclass(z) = class(z;) 3.1) 7 |2 otherwise
Trang 29Trường hợp 2 đối tượng cĩ xếp hạng như nhau, thì sẽ dựa vào độ ưu tiên của chúng để
phân biệt Cơng thức tính độ ưu tiên của z như sau:
priority(x) = » I (3.2)
j d(x, x3)”
Với z; là đối tượng cĩ z là lân cận gần nhất và đ(z, z;) là khoảng cách giữa z và z; Nếu
đối tượng ở cách xa lân cận gần nhất thì nĩ cĩ thể là nhiễu hoặc khơng là đối tượng thuộc lớp thì nĩ được loại bỏ đi Giữa 2 đối tượng cĩ cùng xếp hạng nhưng đối tượng nào cĩ độ ưu tiên thấp hơn sẽ bị loại bỏ đầu tiên
Giải thuật xếp hạng cĩ tính lặp Giả sử tập huấn luyện cĩ kích thước N, giải thuật sẽ
chạy N lần, tại mỗi lần lặp nĩ sẽ loại bỏ đối tượng cĩ xếp hạng thấp và tiếp tục xếp hạng
lại các đối tượng Algorithm 2 trình bày mã giả của giải thuật thu gọn tập huấn luyện
Naive Rank
Algorithm 2 Naive Rank Reduction Input: 7
Output: S$
Remove any duplicate instances from T' leave -one-out 1-NN classification on T N € size of T
Seo
loop_num + 0
while loop_num < N do
for each instance z; in T - S do
rank(z;) is calculated using eq 3.1 end for adjust the rank ties by priorities using eq 3.2 worst_index = argi(min(rank|x;|&min(priority[x;]))) push(S, worst index) / discard instance with lowest rank loop_num + loop_num +1 : end while : return S @ @ n1 14? YN nh ¬ —= —= = = ab weNy mm
Trong budc xc dinh ngudng, n phan tit c6 hang cao nhat dugc giif lai trong 9 như là
tập huấn luyện để làm đầu vào cho giải thuật phân lớp (n là tham số đầu vào được xác
định bởi người dùng) Việc xác định ngưỡng cĩ thể được dựa trên khơng gian hoặc thời gian tơi đa mà người dùng cĩ cho việc giải quyết bài tốn Ví dụ, việc phân lớp cơn trùng
với tài nguyên hạn chế của các cảm biến (sensors), người dùng chỉ cĩ tối đa 200k bộ nhớ
để lưu tồn bộ tập huấn luyện (Wei & Keogh, 2005) Ngồi ra cịn cĩ một số cách xác định ngưỡng khác như "cho tập đữ liệu huẳn luyện nhỏ nhất với một tỉ lệ lỗi mong đợi ít hơn 5%" hoặc "cho tập dữ liệu huấn luyện nhỏ nhất với tỉ lệ lỗi leave-one-out khơng
Trang 30khác với tỉ lệ lỗi trên tồn bộ tập dữ liệu quá 1%"
Algorithm 2 trình bày mã giả của giải thuật thu gọn dữ liệu Naive Rank, nhận vào tập huấn luyện 7' và trả ra tập thu gọn # Giải thuật bắt đầu bằng việc loại bỏ các phần tử trùng lặp trong tập huấn luyện 7' (dịng 1) Sau đĩ tiến hành phân lớp sử dụng giải thuật 1-NN trên tập huấn luyện 7' (dịng 2) Mỗi phần tử trong tập huấn luyện được xác định thứ hạng sử dụng cơng thức 3.1 (dịng 7-9) Nếu thứ hạng các phần tử bị trùng nhau, thứ
hạng sẽ được điều chỉnh bằng cơng thức 3.2 (dịng 10) Những phần tử cĩ thứ hạng nhỏ
nhất sẽ khơng được đưa vào tập kết quả Š (dịng 12) Giải thuật dừng khi đã duyệt qua
tất cả các phần tử trong tập huấn luyện 7
3.2 PHUONG PHAP THU GON TAP HUAN LUYEN INSIGHT
Trong cơng trình này, Buza và các cộng sự [1] để xuất một phương pháp lựa chọn phan tử mới mà nĩ khai thác khái niệm của fính trung tâm (hubness), là một vài phần tử cĩ xu hướng là lân cận gần nhất rất thường xuyên hơn những phần tử cịn lại Dựa trên tính
trung tâm, họ để xuất một khung sườn cho việc lựa chọn phần tử dựa trên điểm (score), nĩ được kết hợp với nguyên tắc tối ưu hĩa độ bao phủ (coverage) của dữ liệu huấn luyện Nghĩa là một chuỗi thời gian z bao phủ một chuỗi thời gian , nếu cĩ thể được phân
lớp đúng đắn dựa trên z Phương pháp này khơng chỉ cho phép hiểu tốt hơn bài tốn lựa
chọn phần tử mà cịn giúp cho việc phân tích các đặc điểm của hướng tiếp cận từ quan
điểm của việc tối đa hĩa sự bao phủ Với những lý do trên, hướng tiếp cận này được gọi
là “Lựa chọn phần tử dựa trên sự bao phủ đồ thị va tính trung tâm của chuỗi thời gian”
(Instance Selection based on Graph-coverage and Hubness for Time-series), được viết
tat 1a INSIGHT
INSIGHT được đánh giá thực nghiệm với 37 tập dữ liệu phân lớp chuỗi thời gian và
được so sánh với FastAWARD, một phương pháp lựa chọn phần tử tiên tiến cho đữ liệu chuỗi thời gian INSIGHT được đánh giá là tốt hơn FastAWARD một cách đáng kể về cả
độ chính xác phân lớp cũng như thời gian thực thi việc lựa chọn phan tử để thu gọn tập
huấn luyện [1]
3.2.1 Hàm tính trọng số 3.2.1.1 Thuộc tính trung tâm
Để xây dựng hờm trọng số (score function) phục vụ việc lựa chọn phần tử đại diện cho
phân lớp chuỗi thời gian bằng phương pháp lân cận gần nhất, ta phải kể đến phát hiện gần đây về thuộc tính trung tâm Thuộc tính này chỉ ra rằng với đữ liệu nhiều chiều như
Trang 31thường xuyên hơn những đối tượng khác Để diễn tả trung tâm một cách chính xác, cho
một tập dữ liệu 2 chúng ta định nghĩa lần xuất hiện như là lân cận thứ k (k— occurrence)
của một phần tử z c 2, ký hiệu ƒŸ.(z) là số phần tử của 2 cĩ z ở giữa k lân cận gần
nhất Với thuật ngữ trung tam (hubness) để cập tới hiện tượng mà phân bố của /N(#)
lệch đáng kể về bên phải Độ lệch được ký hiệu: Z2z („) E[UR(#) — te ())Ÿ) 3 °'f8 (2) Z7k@) = 3.3)
Trong đĩ H;¿,„) và ơ;;„) là trung vị và độ lệch chuẩn của ƒ#(z) Khi pe (,) lớn hơn
một thì phân bố tương ứng lệch về bên phải tạo thành đuơi dài Với đữ liệu cĩ nhãn,
trung tâm tốt và trung tâm xấu được phân biệt như sau: phần tử ; là một k-lân cận gần nhất tốt (xấu) của phần tử z nếu (i) là một trong k lân cận gần nhất của z, và (ii) chúng cĩ cùng (khác) nhãn Điều này cho phép định nghĩa k-occurence tốt (xâu) của một chuỗi thời gian z, tương ứng là ƒŠ(z) (và ƒŠ (z)) là số lượng những chuỗi thời gian khác mà cĩ
z là một trong những k-lân cận gân nhát tốt (xấu) của chúng
CBF FacesUCh SonyalbORobotsurface
4,
Hình 3.1: Biéu dé phan bé cia ham f3(z) trén mét sé chuédi thời gian Trục hồnh thể hiện giá trị f4 (z), trục tung là số lượng phần tử cĩ giá trị đĩ
Đối với dữ liệu chuỗi thời gian, cả hai phân bỗ ƒŠ(z) và ƒE(z) đều thường lệch về bên
phải Ví dụ ở hình 3.1 mơ tả sự phân bố của hàm /Ä(z) trên một số chuỗi thời gian, biểu
đồ phân bồ tạo thành đuơi dài trong trường hợp trung tâm tốt (good hubs) xuất hiện
Một chuỗi thời gian z là một trung tâm tốt (xấu), nêu phân bố ƒŠ(z) (ƒ (z)) rộng một cách đặt biệt với z Đối với việc phân lớp chuỗi dữ liệu thời gian bằng phương pháp k-lân
cận gần nhất thì việc biểu đồ phân bố lệch của các thể hiện tốt là rất quan trọng, bởi vì
một số chuỗi thời gian cĩ thể giúp phân lớp các chuỗi thời gian khác một cách đúng đắn Vì thế, đây là bằng chứng quan trọng để ta nên đặc biệt chú ý vào các trung tâm tốt
Trang 323.2.1.2 Hàm tính trọng số dựa trên thuộc tính trung tâm
Dựa vào Good 1-occurence score đã tìm thấy trước đĩ - giải thuật INSIGHT sử dụng
trọng số của phần tử là 1-xuất hiện tốt Cơng thức tính trọng số 1-xuất hiện tốt như sau:
fe(z) = ƒfo(z) (3.4)
Trọng số tương đối (Relative Score) ƒp(z) của một chuỗi thời gian z là phân số của 1-xuất hiện tốt và tổng xuất hiện cộng với một (để tránh trường hợp mẫu số là 0):
fr(t) = (3.5)
Trong s6 Xi (Xi’s score), dựa vào ƒŠ(z) và k(x) cho phép chúng ta giải thích tiêu
chí xếp hạng trong cơng trình của Xi bằng cách diễn tả chúng như là một dạng khác của
trọng số tương đối
fxi(x) = fala) — 2fb(œ) (3.6)
Giải thuật INSIGHT lựa chọn những phần tử cĩ thứ hạng cao (top-ranked) Tuy nhiên,
trong khi xếp hạng các phần tử, chúng ta cần xem xét sự tương quan giữa chúng Ví dụ, giả sử rằng phần tử cĩ thứ hạng cao đầu tiên cho phép độ chính xác phân lớp 1-NN
hầu như giống với phần tử cĩ thứ hạng cao thứ hai Vì thế sự đĩng gĩp của phần tử cĩ thứ hạng cao thứ 2 là khơng quan trọng trong tổng thể quá trình phân lớp Giải thuật INSIGHT cĩ 3 bước cơ bản được mơ tả trong đoạn mã giả Algorithm 3 sau:
e Bước I1: Tính trọng số cho tất cả các phần tử z trong tập đữ liệu chuỗi thời gian 7
e Bước 2: Sắp xếp tất cả các chuỗi thời gian trong 7 theo trọng số của chúng e Bước 3: Chọn N chuỗi thời gian cĩ thứ hạng cao đưa vào tập hợp kết quả
Algorithm 3 INSIGHT
Require: Time-series dataset D, Score Function f , Number of selected instances NV
Ensure: Set of selected instances (time series) D
1: Calculate score function f(x) for all z € D
2: Sort all the time series in D according to their scores f(z)
3: Select the top-ranked N time series and return the set containing them
Trang 33
3.3 PHÂN LỚP K-NN HIỆU QUÁ VỚI KỸ THUẬT THU GỌN DỮ LIỆU
DỰA VÀO GOM CỤM PHI THAM SỐ
3.3.1 Thu gon dua vao gom cum (RHC)
RHC là một giải thuật trich yéu dai điện (prototype abstraction) phi tham số Nĩ dựa vào
ý tưởng đơn giản là áp dụng đệ quy vào giải thuật gom cụm k-means Đặc biệt RHC xây dựng cụm cho đến khi chúng /huân nhát nghĩa là tất cả các đối tượng của một cụm chỉ
thuộc về cùng một lớp Ban dau RHC xem tồn bộ tập huấn luyện là khơng thuần nhất
(non-homogeneous)
Giải thuật bắt đầu tìm zmean (centroid - trung tâm cụm) của mỗi lớp bằng cách tính tốn trung bình các giá trị thuộc tính của các mẫu tương ứng của tập huấn luyện Vì vậy
một tập dữ liệu cĩ ø lớp, giải thuật sẽ tính ø centroid RHC thực thị giải thuật gom cụm
k-means sử dụng øœ centroid ban đầu và xây dựng các cụm Đối với mỗi cụm thuần nhất centroid thudc vé tdp ngung tu (condensing set), con cum chưa thuần nhất tiếp tục thực
hiện đệ quy lại thủ tục trên Giải thuật ngừng khi tất cả các cụm đã thuần nhất Khi kết
thúc, tập ngưng tụ gồm tất cả các centroid của các cụm đã thuần nhất Chú ý sử dụng
mean của các lớp như là các centroid ban đầu cho giải thuật k-means, số lượng cụm sẽ được xác định tự động
Phần tử trung bình z của một cụm hoặc lớp C tính bằng cách lấy trung bình giá trị
của n thuộc tính của các phần tử t;,j =1,2, ,|C| trong C Cu thể, thuộc tính thứ j của
phần tử trung bình m được xác định bởi cơng thức 3.7 sau đây: 1 m.d; = iG] » 3.đ;, j = 1,2, ,T (3.7) +#¡ CC Với e m: một đối tượng nào đĩ trong cụm hoặc trong lớp tương ứng z¿,¿ = 1,2 |C| e ø; là số thuộc tính
Hình 3.2 mơ tả trực quan qui trình thực hiện giải thuật RHC
Algorithm 4 trình bày mã giả của giải thuật RHC Nĩ tận dụng cấu trúc dữ liệu hàng
đợi, Queue để lưu các cụm Đầu tiên, giải thuật RHC xem tồn bộ tập huấn luyện 7% như là một cụm chưa được xử lý Do đĩ nĩ được đặt vào hàng đợi Q¿ewe (dịng 3) Ở mỗi
bước lặp, giải thuật RHC xét phần tử Œ đầu hàng đợi Quewe (dịng 7) Sau đĩ nĩ kiểm
tra xem Œ cĩ phải là cụm thuần nhất hay khơng Nếu C 1a cụm thuần nhất (dịng 8) thì
phần tử trung bình z của Œ được thêm vào tập ngưng tụ (dịng 10) Ngược lại nếu Œ là
Trang 34n E /n n ~ o = i n Ẹ n o 4 Oo o 1 ¬ | “+ 1 H a \ of gi i yf Ũ oO 1 oon ao ® H n La o am ~ | = u a oa H j B n [ , 4 ¬ 5 a? Sig N — ia) initial data ib) ititiol clak moans [ứÌ Means má initia) date = Pe = i " F - esi tt 1 4 i 6 & | | i | s | oO a 8) 1 Ƒ " o t < Tr- NĨ " | ja o a Oo * H we oC
(dì Cis? Ghat Pid Aik) Ces Gis ie) &-hlễãt£ đi h if [näal Se đ£ Eeiifirs#øfidHie tÌiiEEdf
Lđwđiđei-EruiifUs#øfteolile £Íii@#øi Bon-hiteo gets lute enntroich jomdonsing aot]
Hình 3.2: Quy trình thực hiện của giải thuật RHC [10]
tập khơng thuần nhất thì giải thuật RHC tính các trung bình lớp Ä⁄: một trung bình lớp cho mỗi lớp trong Œ (dịng 13-16) Sau đĩ, giải thuật RHC sử dụng giải thuật gom cụm
k-means với tham số đầu vào là Ở và A⁄, tạo ra một tập hợp các cụm mới (dịng 17) và
thêm vào hàng đợi Queue (dịng 18-20) Giải thuật dừng lại khi khơng cịn phần tử nào
trong hàng đợi Q„ewe (dịng 22) hay nĩi cách khác là khi tất cả các cụm đều thuần nhất
3.3.2 RHC động (dRHC)
Giống với hầu hết các kỹ thuật thu gọn dữ liệu, RHC là kỹ thuật dựa vào bộ nhớ, nghĩa
là tồn bộ tập dữ liệu phải được ghi trong bộ nhớ RHC khơng thể quản lý hết tập dữ liệu
vì khơng thể lưu hết dữ liệu vào bộ nhớ chính Do vậy, nĩ khơng thể thực thi trên thiết bị bị giới hạn về bộ nhớ và cũng khơng thể chuyển dữ liệu qua các máy khác xử lý thơng
qua mạng máy tính Vì đây là thủ tục tốn nhiều thời gian và chi phí Thêm vào dé, RHC
khơng thể xử lý khi cĩ những mẫu dữ liệu mới thêm vào Giả sử RHC được thực thi trên tập dữ liệu 7) và xây dựng tập ngưng tụ Sau đĩ giả sử một tập dữ liệu mới Š được đưa
thêm vào xem xét Để xây dựng cập nhật lại tập ngưng tụ, RHC phải thực thi lại từ đầu trên tập 2U Ø Thủ tục phải thực hiện lặp lại bất cứ khi nào cĩ tập đữ liệu mới thêm vào, lúc này nhu cầu lưu trữ và chỉ phí tính tốn cao
Trang 35Algorithm 4 RHC Input: 7'Š Output: C'S 1: {Stage 1: Queue Initialization} 2: Queue + OD 3: Enqueue(Queue, T'S) 4: {Stage 2: Construction of the condensing set} 5: CS Ø 6: repeat 7: C + Dequeue(Queue) 8: if C is homogenious then 9: r + mean of C 10: CS+ CSU {r} 11: else
12: M — @ {Mis the set of class means}
13: for each class L in C do 14: my <- mean of L 15: M MU {mr} 16: end for 17: NewClusters + K-Means(C, M) 18: for each cluster NC € NewClusters do 19: Enqueue(Queue, NC) 20: end for 21: end if 22: until IsEmpty(Queue) 23: return C'S
hợp với kích thước bộ nhớ chính Ngồi ra đối với mơi trường động khi dữ liệu đến liên
tục, nĩ xem dữ liệu này như các “phân đoạn đứ liệu Trong trường hợp này, khái niệm phân đoạn dữ liệu được thực hiện sử dụng bộ đệm (buffer), nơi tập dữ liệu mới được lưu trữ Khi bộ đệm đầy, giải thuật dRHC bắt đầu thực thi trên chúng Sau đĩ tập dữ liệu được lưu trữ trong bộ đệm bị xĩa đi và bộ đệm sẵn sàng nhận tập dữ liệu mới
dRHC thực hiện 2 giai đoạn: (1) xây dựng tập ngưng tụ ban đầu (CS-consending set), (2) cập nhật tập ngưng tụ mỗi lần một phân đoạn dữ liệu đến Mọi thủ tục đều tương tự
RHC, diém khác biệt duy nhất giữa RHC và dRHC là mỗi lần sinh ra phần tử đại diện
(prototype) lưu trữ giá trị trọng số như một thuộc tính bổ sung Giá trị này là số lượng phần tử trong tập huấn luyện mà được gom lại với nhau và được đại diện bởi prototype đặc biệt trong tập ngưng tụ Cập nhật tập ngưng tụ 5 chỉ dựa vào khái niệm cụm thuần nhất và các trọng số dữ liệu Cơng thức 3.8 dưới đây là cơng thức tìm trung tâm cụm của
Trang 36dRHC: 3) z›;.d; x ø.tueight LEC >> z;¿.ueight z;cC mco.d; = (3.8)
e m: đối tượng nào đĩ trong cụm hoặc trong lớp tương ứng z¿,¿ = 1, 2 |C|
e d; là mỗi vector thuộc tính của mợ, với j = 1, 2, n
Quy trình thực hiện giải thuật dRĐHC được minh hoạ trực quan thơng qua hình vẽ 3.3, a 1n, ơ ô os h 5 _ | ¬ 1 = = | a i Lo , ị oO 2 fo (a) A oomleneinig set ib) sew traming data arrival (c} Data assignment to chisters ", " " ¿ a “ Ca" ˆ::G N /% Bees os, / #~ ` ai ” ị 2 i Be , : ị jo * } 1 ,% Oo Zz % OF
(dì Repositioning of a prototy ee and (e) & Means on the if) The updated condensing se
class we alyted Means ih the: een đIđfi-fiư4ïIiføftfrrilä £1I8tøi t1ã115A#Z6H£ØI1S C“H§8EET
Hình 3.3: Quy trình thực hiện giải thuật (RHC [10]
Algorithm 5 trình bày mã gia cua giai đoạn cập nhật tập ngưng tụ CS của giải thuật dRHC Nĩ nhận vào tập ngưng tu sẵn cĩ oiđŒŠ cùng với một phân đoạn dữ liệu mới
dataSeg va tra ra tap ngung tu đã được cập nhật neuŒ% Giải thuật bắt đầu bằng việc
xây dựng hàng đợi Queue để chứa những cụm chưa được xử lý Đầu tiên, nĩ khởi tạo một số lượng các cụm C List bang véi s6 ludng phan tt trong tap ngung tu san cé oldCS (dịng 3-6) Tiếp theo, méi phan tif trong phan doan dif liéu dataSeg sé dudc gan trong sé là 1 và thêm vào một trong các cụm này (dịng 7-11) Tat cả các cụm trong CList dudc đặt vào hàng đợi Queue (dong 12-14) Giải thuật dRHC tạo ra tap ngung tu mdi newC'S
bằng cách tương tự như RHC nhung cĩ xem xét tới giá trị trọng số Đối với cụm thuần
nhất thì phần tử đại diện được lưu trong øewŒ5 là phần tử trung tâm cụm (dịng 19-22)
Trang 37vai trị là những phần tử trung bình khởi đầu cho giải thuật k-means (dịng 30) Giải thuật dRHC sử dụng giải thuật gom cụm k-means cĩ quan tâm tới trọng số khi xác định trung tâm cụm Cho một cụm Ở, mỗi thuộc tính đ;, j = 1,2, , + của trung tâm cum m, (dong 20, 26) được tính dựa vào cơng thức (3.8)
Trang 38Algorithm 5 dRHC: CS update phase Input: oldC'S, dataSeg Output: newCS ¬ — = = = = eke kk Ð % m Ø 2z SF YN SOD N 7 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: CP PANKYN SYN NS) 7 > {Stage 1: Queue Initialization} Queue + J
CList + ©@ {empty list of clusters}
for each prototype m € oldC'S do
add new cluster C = {m} in CList
end for
for each item x € dataSeg do x.weight = 1
Find C, € CList with the nearest to x mean Cy, « C, U {x} {do not recompute mean of C, } : end for for each cluster C in CList do Enqueue(Queue, C’) end for : {Stage 2: Construction of newCS} newOS + S : repeat C + Dequeue(Queue) if C is homogenious then mm + weighted mean of C m.weight + >> +;.ueight ¡CC newC'S < newC'S U {m} else
Trang 393.4 CÁC GIẢI THUẬT LỰA CHỌN ĐẠI DIỆN VÀ TRÍCH YÊU ĐẠI DIEN DE THU GON TAP HUAN LUYEN TRUGC KHI THUC HIEN PHAN LOP DU LIEU
Các kỹ thuật thu gọn dữ liệu tập huấn luyện (Data Reduction Techniques - DRTs) trong
phần này là dựa vào bài báo tổng kết các kỹ thuật thu gọn tập huấn luyện của Ougiaroglou
và các cộng sự [11] Các kỹ thuật này đều dựa trên ý tưởng đơn giản là: những phần tử
khơng đại diện cho ranh giới quyết định giữa các lớp là những phần tử vơ ích cho quá
trình phân lớp Do đĩ, chúng cĩ thể bị loại bỏ Giải thuật phân lớp k-NN đạt được độ chính xác gần như nhau khi thực hiện phân lớp trên tập huấn luyện và tập ngưng tụ Việc duyệt qua tập ngưng tụ hiệu quả hơn duyệt qua tập huấn luyện Do đĩ, các kỹ thuật thu gọn dữ liệu cơ gắng lựa chọn hoặc tạo ra một số lượng vừa đủ các các phần tử nằm trong
vùng dữ liệu gần với ranh giới quyết định Các kỹ thuật thu gọn đữ liệu được trình bày
trong phần này là phi tham số Chúng xác định kích thước của tập ngưng tụ một cách tự động dựa trên mức độ nhiễu (noise) và số lượng lớp trong dữ liệu ban đầu (càng nhiều
lớp, các nhiều ranh giới, do đĩ, càng nhiều phần tử được chọn hoặc tạo ra)
3.4.1 Cac giải thuật lựa chọn đại diện 3.4.1.1 Giải thuật CNN-rule
CNN-rule [9] là giải thuật lựa chon dai dién (Prototype Selection Algorithms) ra doi sém nhất và nổi tiếng nhất Nĩ sử dung hai tập hợp C'S va TS Đầu tiên, một phần tử trong
tập huấn luyện được đưa vào Œ%, những phần tử cịn lại trong tập huấn luyện để trong
tập 79 Sau đĩ, CNN-rule cố gắng phân lớp tập 79 bằng cách sử dụng giải thuật phân lớp 1-NN trên nội dung của tập Ở% Khi một phan tử bị phân loại sai, nĩ được xem xét như nằm trong vùng dữ liệu gần ranh giới quyết định Vì thế nĩ được chuyển từ tập 7'Š sang tap Ở% Giải thuật ngừng lại khi khơng cịn cĩ sự chuyển dữ liệu từ tập 79 sang tập
CS
Mã giả của giải thuật CNN-rule được trình bày trong Algorithm 6: nĩ bắt đầu với một
tập huấn luyện 7% và trả về một tập ngung tu CS Ban đầu, C9 chỉ chứa một phần tử
huấn luyện (dịng 1, 2) Sau đĩ, với mỗi phần tử huấn luyện z e 7'% (dịng 5), giải thuật truy xuất và kiểm tra nhãn lớp của lân cận gần nhất của nĩ (dịng 6) Nếu nhãn lớp của
z khác với nhãn lớp của lân cận gần nhất của nĩ (dịng 7), z sẽ được chuyển vào tập CS
(dịng 8, 9) Quá trình này được lặp (dịng 4,10,13) đến khi khơng cịn phần tử nào trong
tập T9 được chuyển vao tap CS
Giải thuật CNN-rule dựa trên ý tưởng đơn giản là: những phần tử mà được phân lớp
Trang 40Algorithm 6 CNN-rule Input: 7'Š Output: CS 1: CS¢+ S 2: pick an item of T'S and move it to CS 3: repeat 4 stop + TRUE 5 for each x € TS do 6: NN < Nearest Neighbour of x in CS 7 8 9 if N Netass # *#eclass then CSeCSUf{z} : TS «TS — {x} 10: stop + FALSE 11: end if 12: end for 13: until stop == TRUE 14: discard TS 15: return C'S
dữ liệu và vì thế chúng sẽ được bỏ qua Nĩi cách khác, những phần tử mà phân lớp sai (misclassified) thì được xem là nằm gần đường biên lớp của vùng dữ liệu và vì thế chúng
được đưa vào tập ngưng tụ Điểm yếu của giải thuật CNN-rule là việc tạo ra kết quả tập
ngưng tụ phụ thuộc vào thứ tự xem xét các phần tử trong tập huấn luyện Điều này cĩ nghĩa là cĩ thể cĩ nhiều tập ngưng tụ khác nhau được tạo ra bởi cùng một tập huấn luyện
với các thứ tự phần tử khác nhau
3.4.1.2 Giải thuậtIB2
Giải thuật IB2 thuộc họ các giải thuật học dựa trên mẫu (Instance-Based Learning - IBL)
nổi tiếng và dựa trên giải thuật CNN-rule
Algorithm 7 trình bày mã giả của giải thuật IB2 Mỗi phần tử trong tập huấn luyện
a e T9 được phân lớp bằng giải thuật phân lớp 1-NN dựa trên tập ngưng tụ C5 tại thời điểm hiện tại (dịng 4) Nếu z được phân lớp đúng, nĩ sẽ bị loại bỏ (dịng 8) Ngược lại,
z sẽ được chuyển vào tập ngưng tụ Z5 (dịng 6) Trái với giải thuật CNN-rule, giải thuật
IB2 khơng đảm bảo mọi phần tử bị loại bỏ đều cĩ thể được phân lớp một cách đúng đắn dựa vào tập ngưng tụ Tuy nhiên, IB2 là giải thuật duyét mét lan (one-pass algorithm)
nên nĩ rất nhanh, chi phí tính tốn tiền xử lý thấp Thêm vào đĩ, giải thuật IB2 xây dựng
tập ngưng tụ một cách gia tăng nên rất thích hợp cho mơi trường động, phát trực tuyến
nơi mà các phần tử huấn luyện mới được thêm vào một cách liên tục Ngồi ra, giải thuật
IB2 cịn khác với giải thuật CNN-rule và các kỹ thuật thu gọn dữ liệu khác ở chỗ giải