Chương 3 CẬP NHẬT TẬP XẤP XỈ TRONG KHÔNG GIAN XẤP XỈ PHỦ ĐỘNG
4.2 Đề xuất thuật toán
Để giải quyết các vấn đề về cân bằng dữ liệu tồn tại trong hai thuật toán MFRIS1, MFRIS2 luận án đề xuất thuật toán MFRIS3. Ý tưởng của thuật toán như sau, trước tiên, dùng công thức (4.4) để xác định tập hợp các đối tượng cần gắn lại nhãn. Sau đó các thành viên chất lượng của tất cả các đối tượng bao gồm các đối tượng ban đầu và các đối tượng tổng hợp sẽ được so sánh với các ngưỡng để chọn các đối tượng đạt yêu cầu vào tập huấn luyện có. Khi đó, tập đối tượng được chọn định nghĩa như sau:
𝑆 = 𝑥 ∈ 𝑋 ∪ 𝑆 → 𝜇𝒳ℛ(𝑥) ≥ 𝑡 = ⋃ 𝑥 ∈ 𝑌 𝜇𝒴ℛ(𝑥) ≥ 𝑡 (4.7) Thuật toán MFRIS3 được mô tả trong Thuật toán 3.3
Thuật toán 4.3. MFRIS3: Chọn các đối tượng dương, loại bỏ, hoặc dán nhãn lại các đối tượng thuộc lớp đa số
Input: Tập các đối ượng thuộc lớp thiểu số 𝑋.
Tập các đối ượng thuộc lớp đa số 𝑌.
𝑡 , 𝑡 là các ngưỡng lựa chọn của lớp thiểu số và đa số Output: Tập các đối tượng đạt yêu cầu 𝑆
Tính toán đo lường chất lượng của tất cả các đối tượng trong lớp đa số 𝑆 ← ∅
𝑆 ← ∅ 𝑆 → ← ∅
4.2.2 Tối ưu hóa ngưỡng và điều chỉnh độ chi tiết
Đối với các thuật toán trong phần này, luận án chia chất lượng của các đối tượng thành một số nhóm theo số lượng hữu hạn các lát cắt (cut) và sử dụng các lát cắt này làm ngưỡng ứng cử viên. Đối với tập dữ liệu có chất lượng của các đối tượng hoặc các xấp xỉ có độ phân tán thấp, trước tiên cần phải phân tán các mức độ đó bằng cách thay đổi mối quan hệ giữa các đối tượng. Để làm điều này, hàm thành viên quan hệ giữa hai đối tượng được định nghĩa như sau:
𝜇ℛ (𝑥, 𝑦) = 1 − 𝛾𝛿 (𝑥, 𝑦) (4.8) For 𝑥 ∈ 𝑌 do
If 𝜇𝒴ℛ(𝑥) ≥ 𝑡 then 𝑆 ← 𝑆 ∪ {𝑥}
Else
if 𝜇𝒳ℛ(𝑥) ≥ 𝑡 then 𝜇𝒳ℛ(𝑥) ← 𝜇𝒴ℛ(𝑥) 𝜇𝒴ℛ(𝑥) ← 0
𝑆 → ← 𝑆 → ∪ {𝑥}
End if End if End for For 𝑥 ∈ 𝑋 do
If 𝜇𝒳ℛ(𝑥) ≥ 𝑡 then 𝑆 ← 𝑆 ∪ {𝑥}
End if End for
𝑆 ← 𝑆 ∪ 𝑆 ∪ 𝑆 →
Trong đó 𝛿 (𝑥, 𝑦) ∈ [0,1] là khoảng cách chuẩn giữa 𝑥 và 𝑦, 𝛾 ∈ [0,1]
được gọi là độ kết hạt (Granularity).
Với các giá trị rời rạc 𝛿 (𝑥, 𝑦) = 1 nếu 𝑎(𝑥) = 𝑎(𝑦) ∨ 𝑎(𝑥) =∗∨
𝑎(𝑦) =∗ và 𝛿 (𝑥, 𝑦) = 0 trong các trường hợp còn lại.
Khi dữ liệu liên tục 𝛿 (𝑥, 𝑦) =| ( ) ( )|
( ) với 𝑙(𝑎) là miền giá trị của thuộc tính 𝑎.
Hình 4. 2. Độ lệch chuẩn của tập dữ liệu ozon_one_hr
Hình 4.2 mô tả sự thay đổi độ lệch chuẩn của chất lượng của đối tượng âm đối với tập dữ liệu ozon_one_hr.
Độ lệch chuẩn càng cao, các điểm dữ liệu càng trải rộng. Tuy nhiên, không cần thiết phải tìm độ chi tiết để độ lệch chuẩn cực đại. Đối với thuật toán trong phần này, chỉ cần tìm ra độ chi tiết cho phép mở rộng các điểm dữ liệu đối tượng chất lượng ở một mức độ nào đó. Quay lại Hình 4.1 hàng đầu tiên cho thấy rằng với độ chi tiết bằng 0,125 các giá trị gần đúng trên tập dữ liệu trải ra nhiều hơn so với độ chi tiết bằng 1,0. Thuật toán 4.4 là phương pháp để điều chỉnh độ chi tiết và chỉ ra rằng thuật toán này khác với thuật toán được đề xuất trong [81].
Thuật toán 4.4. Điều chỉnh độ chi tiết
Input: Tập các đối ượng thuộc lớp thiểu số 𝑋.
Tập các đối ượng thuộc lớp đa số 𝑌.
𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 là số lượng ngưỡng ứng cử viên.
Output: Độ chi tiết 𝛾 đạt chất lượng 𝛾 ← 1
max 𝑔𝑟𝑜𝑢𝑝𝑠 ← 0
For 𝛾 từ 1 xuống 0 từng bước −0,05 do 𝛾 ← 1
Tính toán đo lường chất lượng với 𝛾
𝑐𝑢𝑡 ← 𝑚𝑎𝑘𝑒_𝑐𝑢𝑡({𝜇 (𝑥)|𝑥 ∈ 𝑌}, 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠) If |𝑐𝑢𝑡| > max 𝑔𝑟𝑜𝑢𝑝𝑠 then
Lưu lại 𝛾 đạt chất lượng End if
End for
Theo cách tiếp cận như vậy, luận án đã cố gắng tìm ra độ chi tiết tối đa 𝛾(𝑥) ∈ [0; ∞). Mọi đối tượng phải có độ chi tiết riêng để đối tượng đó hoàn toàn thuộc về miền dương. Ở đây, chỉ có một độ chi tiết cho toàn bộ hệ thống và để phân tán các đối tượng chất lượng.
Độ chi tiết được điều chỉnh sau đó sẽ được sử dụng để tìm các ngưỡng tối ưu, phương pháp này được mô tả trong Thuật toán 4.5.
Thuật toán 4.5. Tối ưu hóa các ngưỡng
Input: Tập các đối ượng thuộc lớp thiểu số 𝑋.
Tập các đối ượng thuộc lớp đa số 𝑌.
𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 là số lượng ngưỡng ứng cử viên.
𝜇𝒳ℛ(𝑥), 𝜇𝒴ℛ(𝑥), 𝑥 ∈ 𝑈
Output: Ngưỡng 𝑡 , 𝑡 của các lớp thiểu số và lớp đa số đã được tối ưu If MFRIS1 then
𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒳ℛ(𝑥) 𝑥 ∈ 𝑋 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒴ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 Else if MFRIS2 then
𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒳ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒴ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 Else if MFRIS3 then
𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒳ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 ∪ 𝑐𝑢𝑡 𝜇𝒴ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠 𝑐(𝑡 ) ← 𝑐𝑢𝑡 𝜇𝒴ℛ(𝑥) 𝑥 ∈ 𝑌 , 𝑛 𝑔𝑟𝑜𝑢𝑝𝑠
End if
For 𝑡 ∈ 𝑐(𝑡 ), 𝑡 ∈ 𝑐(𝑡 ) do
𝑇𝑟𝑎𝑖𝑛𝑆𝑒𝑡 ← 𝑀𝐹𝑅𝐼𝑆𝑠(𝑈, 𝑡 , 𝑡 ) bởi các thuật toán For 𝑥 ∈ 𝑈 do
𝑇𝑟𝑎𝑖𝑛𝑆𝑒𝑡 ← 𝑇𝑟𝑎𝑖𝑛𝑆𝑒𝑡 − {𝑥}
Xác định quyết định của 𝑥 dựa trên {𝜇ℛ(𝑥, 𝑦)|𝑦 ∈ 𝑇𝑟𝑎𝑖𝑛𝑆𝑒𝑡}
End for
Tính 𝐴 ∪ 𝐶(𝑡 , 𝑡 ) End for
Tối ưu (𝑡 , 𝑡 ) = arg max 𝐴 ∪ 𝐶(𝑡 , 𝑡 )
Giả sử một dữ liệu có kích thước đầu vào là 𝑛 thì các thuật toán 4.3; 4.4 có độ phức tạp 𝑂(𝑛), còn thuật toán 4.5 có độ phức tạp 𝑂(𝑛 ).