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

smoteinffc giai quyet nhieu va cac phan tu o duong bien trong phan lop mat can bang boi bo loc dua tren su hop nhat cac phan lop

13 4 0

Đ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

Tiêu đề SMOTEINFFC Giải Quyết Nhiễu Và Các Phần Tử Ở Đường Biên Trong Phân Lớp Mất Cân Bằng, Bởi Bộ Lọc Dựa Trên Sự Hợp Nhất Các Phân Lớp
Tác giả Giáp Thị Phương Thảo, Bùi Dương Hưng, Đặng Xuân Thọ
Trường học Trường Đại học Công Đoàn
Chuyên ngành Công nghệ Thông tin
Thể loại Báo cáo Hội thảo
Năm xuất bản 2017
Thành phố Quy Nhơn
Định dạng
Số trang 13
Dung lượng 289,38 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Paper Title (use style paper title) SMOTE INFFC Giải quyết nhiễu và các phần tử ở đường biên trong phân lớp mất cân bằng, bởi bộ lọc dựa trên sự hợp nhất các phân lớp Hội thảo quốc gia lần thứ XX Một.

Trang 1

SMOTE-INFFC: Giải quyết nhiễu và các phần tử ở đường biên trong phân lớp mất cân bằng, bởi bộ lọc dựa trên sự hợp nhất

các phân lớp

Giáp Thị Phương Thảo

Phòng Đào tạo - NCKH

Trường CĐ Sư phạm Điện Biên

Email:giapphuongthao@gmail.c

om

Bùi Dương Hưng Khoa Công nghệ thông tin Trường Đại học Công Đoàn E-mail: hungbd@dhcd.edu.vn

Đặng Xuân Thọ Khoa Công nghệ thông tin Trường Đại học Sư phạm Hà Nội E-mail: thodx@hnue.edu.vn

Tóm tắt:Sự phân bố không đồng

đều giữa các phần tử trong các bộ

dữ liệu được gọi là dữ liệu mất cân

bằng Đối với các tập dữ liệu này

việc phân lớp thường có hiệu suất

thấp Tuy nhiên sự mất cân bằng

phân lớp cũng không phải là vấn đề

chính ảnh hưởng đến hiệu suất phân

lớp mà còn liên quan đến các yếu tố

khác Một trong số đó là sự xuất hiện

của các phần tử nhiễu và phần tử

đường biên (các phần tử nằm xung

quanh khu vực ranh giới lớp) Kỹ

thuật sinh thêm phần tử nhân tạo

(SMOTE) là một trong những

phương pháp tiền xử lý tốt nhất để

cân bằng số lượng các phần tử trong

mỗi lớp Tuy vậy SMOTE còn có

những hạn chế nội tại có thể làm

trầm trọng thêm vấn đề các phần tử

nhân tạo được sinh thêm Bài báo đề

xuất một sự mở rộng mới của

SMOTE thông qua bộ lọc nhiễu dựa

trên sự hợp nhất các phân lớp

(INFFC) có thể khắc phục được các

vấn đề được tạo ra bởi các phần tử

nhiễu và phần tử đường biêntrong

các bộ dữ liệu không cân bằng Phần

mở rộng mới SMOTE-INFFC này

được nghiên cứu thực nghiệm và so

sánh với SMOTE, INFFC cơ bản và

một số các mở rộng của SMOTE Các thí nghiệm được thực hiện trên các bộ dữ liệu mất cân bằng

newthyroid, haberman, ecoli, blood Các kết quả cho thấy rằng cơ chế hoạt động mới tốt hơn các phương pháp hiện có Phân tích các kết quả này cũng giúp xác định các đặc tính của INFFC so với các phương pháp lọc khác.

Keywords: Noise; imbalanced; imbalanced classification

I GIỚI THIỆU Trong khai phá dữ liệu, hai vấn đề phổ biến về chất lượng dữ liệu mà thường ảnh hưởng đến phân lớp dữ liệu trong thực tế là lớp nhiễu và lớp mất cân bằng Lớp nhiễu, nơi các giá trị thuộc tính được ghi nhầm lẫn làm rối một bộ phân lớp và làm giảm hiệu suất dự đoán Lớp mất cân bằng xảy ra khi một lớp chỉ chiếm một phần nhỏ trong những phần tử trong tập dữ liệu, và trong trường hợp như vậy thì phân lớp thường kém chính xác trên lớp thiểu số Hiệu suất phân lớp càng trở nên tồi tệ hơn khi hai vấn đề xảy ra đồng thời

Trang 2

Hiện nay để giải quyết bài toàn

phân lớp dữ liệu có chứa lớp mất cân

bằng và lớp nhiễu đa số các nghiên

cứu dựa trên hai hướng tiếp cận

chính là dựa trên mức độ dữ liệu và

dựa trên mức độ thuật toán Tiếp cận

dựa trên mức độ thuật toán là cải tiến

các kỹ thuật tìm kiếm hoặc chiến

lược phân lớp để phù hợp cho loại dữ

liệu mất cân bằng và xử lý đúng đắn

các nhiễu hoặc ít chịu ảnh hưởng bởi

sự xuất hiện của nó Tiếp cận dựa

trên mức độ dữ liệu bao gồm những

phương pháp tiền xử lý các tập dữ

liệu[10][1] nhằm loại bỏ các phần tử

nhiễu như một bước trước và điều

chỉnh phân bố dữ liệu của các lớp

làm giảm tính mất cân bằng trong lớp

mất cân bằng

Một số phương pháp đã được thực

hiện để xử lý dữ liệu nhiễu và mất

cân bằng như sinh thêm phần tử nhân

tạo ở lớp thiểu số SMOTE[10]; sinh

thêm phần tử nhân tạo ở vùng an

toàn Safe-Level SMOTE[2], sinh

thêm phần tử nhân tạo ở khu vực

đường biên Boderline- SMOTE[5]

Ngoài các phương pháp mở rộng

của SMOTE còn có các phương pháp

áp dụng các bộ lọc như: Lọc tập hợp

EF[3], lọc phân vùng IPF[12], lọc

dựa trên sự hợp nhất của các phân

lớp INFFC[8]

Một phương pháp mở rộng mới

của SMOTE đó là kết hợp với bộ lọc

IPF để xử lý nhiễu trong lớp mất cân

bằng cũng đã được giới thiệu vào

năm 2015 đó là SMOTE-IPF

[7].Mặc dù các phương pháp trên đã

có những hiệu quả nhất định đối với

mất cân bằng lớp có dữ liệu nhiễutuy nhiên các phương pháp này vẫn có những hạn chế nhất định như:SMOTE có một số hạn chế liên quan đến sinh thêm phần tử “mù” Bởi vậy việc sinh thêm các phần tử tích cực (ở lớp thiểu số) chỉ làm cho các phần tử mới tạo ra và những phần tử ở mỗi lớp là gần sát nhau Trong khi các đặc tính khác của dữ liệu bị bỏ qua như sự phân bố của các phần tử ở lớp đa số Những phương pháp lọc nhiễu chỉ xử lý được vấn đề về dữ liệu nhiễu chưa giải quyết được vấn dề mất cân bằng

dữ liệu nên khi khi phân lớp dữ liệu cho các bộ dữ liệu mất cân bằng có

xử lý nhiễu khó thực hiện với một số

bộ dữ liệu

Từ đó tác giả đề xuất một sự mở rộng mới của SMOTE thông qua một nhân tố mới với một bộ lọc lặp đi lặp lại dựa trên tập hợp các phân lớp đó

là INFFC (Iterative Noise Filter based on the Fusion of Classifiers)

để loại bỏ nhiễu

Phương pháp SMOTE – INFFC trong phân lớp dữ liệu mất cân bằng Phương pháp này sử dụng kỹ thuật tái lấy mẫu SMOTE để sinh thêm phần tử nhân tạo ở lớp thiểu số, cân bằng phân lớp và áp dụng kỹ thuật lọc INFFC (Iterative Noise Filter based on the Fusion of Classifiers)

để loại bỏ nhiễu ở đường biên Phần

II sẽ giới thiệu chi tiết về phương pháp SMOTE-INFFC Một số kết quả đạt được và đánh giá sẽ được trình bày trong phần III, và cuối cùng

là phần IV sẽ kết luận

Trang 3

II PHƯƠNG PHÁP

SMOTE-INFFC XỬ LÝ NHIỄU VÀ CÁC

PHẦN TỬ ĐƯỜNG BIÊN TRONG

PHÂN LỚP MẤT CÂN BẰNG

1.Phương pháp SMOTE

Thuật toán dựa trên lấy mẫu

SMOTE (Synthetic Minority

Over-sampling Technique) được đưa ra

vào năm 2002, thuật toán SMOTE cố

gắng để giải quyết vấn đề mất cân

bằng lớp Nó là một trong những

cách tiếp cận nổi tiếng nhất được

thông qua do sự đơn giản và hiệu quả

của nó Nó là sự kết hợp của

oversampling và undersampling,

nhưng cách tiếp cận oversampling

không phải là bằng cách tái tạo lớp

thiểu số mà xây dựng phần tử dữ liệu

mới ở lớp thiểu số

Dữ liệu nhân tạo ở lớp thiểu số

được sinh thêm bằng cách [10]:

Tìm hàng xóm gần nhất của mỗi

phần tử của lớp thiểu số

Chọn ngẫu nhiên một trong số

những hàng xóm gần nhất (tùy thuộc

vào số lượng phần tử muốn sinh

thêm)

Sinh thêm phần tử nhân tạo trên

đoạn thẳng nối phần tử đang xét và

láng giềng được lựa chọn bằng cách

tính độ lệch giữa véc tơ thuộc tính

của phần tử lớp thiểu số đang xét và

láng giềng của nó Nhân độ lệch này

với một số ngẫu nhiên giữa 0 và 1

Và lấy kết quả thu được thêm nó vào

vector thuộc tính phần tử lớp thiểu số

đang xét

2 Phương pháp INFFC

Phương pháp lọc của INFFC là lọc dựa trên sự kết hợp của các phân lớp Cách thức lọc dựa trên 3 mô hình chính

Lọc toàn bộ (Ensemble-based filtering) Ưu điểm chính của các phương pháp tiếp cận này dựa trên giả thiết thu thập các dự đoán từ các phân lớp khác nhau có thể cung cấp khả năng phát hiện nhiễu tốt hơn so với thu thập thông tin từ một phân lớp đơn lẻ

Lọc lặp lại (Iterative filtering) Sức mạnh của các loại bộ lọc là việc sử dụng một loại bỏ lặp đi lặp lại các phần tử nhiễu dưới ý tưởng rằng các phần tử loại bỏ trong một lần lặp không ảnh hưởng đến việc phát hiện nhiễu trong các bộ lọc tiếp theo Lọc dựa trên số liệu (Metric-based filtering) Các bộ lọc nhiễu này dựa trên tính toán các số đo đối với dữ liệu huấn luyện và thường cho phép người thực hành kiểm soát mức độ

dự đoán của bộ lọc theo cách mà chỉ những ví dụ mà mức độ nhiễu ước tính vượt quá ngưỡng được loại bỏ

Đề xuất lọc của INFFC là sự kết hợp của 3 mô hình nói trên

Ba bước được thực hiện trong mỗi lần lặp đó là [8]:

Lọc sơ bộ (Preliminary filtering): Bước đầu tiên này loại bỏ một phần của nhiễu hiện tại trong lần lặp hiện tại để giảm ảnh hưởng của

nó ở các bước sau Cụ thể hơn, các phần tử nhiễu được xác định với độ tin cậy cao được dự kiến sẽ được loại

bỏ trong bước này

Trang 4

Hình 1: Sơ đồ thực hiện lọc của

INFFC [8]

Trong hình 1 lọc sơ bộ thực hiện

như sau: Dữ liệu đưa vào lọc là CT có

khả năng chứa các phần tử nhiễu (CT

= DT ở lần lặp đầu tiên) Do đó, việc

lọc dựa trên những dữ liệu nhiễu này

có thể gây hiểu nhầm vì các mô hình

lọc được xây dựng bị ảnh hưởng bởi

các phần tử nhiễu Vì vậy, các dữ liệu

này không đủ đáng tin cậy để quyết

định loại bỏ các phần tử nhiễu

Trong phần này trước tiên thực hiện

lọc sơ bộ dữ liệu CT ở mỗi lần lặp để

loại bỏ hầu hết các phần tử có khả

năng nhiễu cao Sau đó, xem xét

bước lọc thứ hai, lọc không nhiễu,

trong đó bộ lọc ở giai đoạn này chỉ

được huấn luyện với các phần tử

được coi là không có nhiễu (CPC) vì

vậy xác định nhiễu của lọc không

nhiễu được mong đợi là đáng tin cậy

hơn

Bộ lọc là một hệ thống dựa trên

tập hợp các phân lớp FC (fusion of

classifiers) của ba bộ phân lớp nói C4.5 [6], 3-NN [4] và LOG [11] từ

CT (tập huấn luyện khi bắt đầu lặp lại) Bộ lọc dựa trên FC này được sử dụng để đánh giá các phần tử của cùng bộ CT Các phần tử nhiễu CPN

được xác định bởi bộ lọc sẽ được xoá khỏi CT, dẫn đến dữ liệu huấn luyện

CPC Lọc không nhiễu (Noise-free filtering): Một bộ lọc mới, được tạo

từ dữ liệu đã được dọn sạch một phần từ bước trước, được áp dụng cho tất cả các phần tử huấn luyện trong lần lặp hiện tại, kết quả thành hai bộ phần tử: một bộ sạch và một

bộ nhiễu Bộ lọc này dự kiến sẽ chính xác hơn so với bộ lọc trước đó

vì các bộ lọc nhiễu được xây dựng từ

dữ liệu sạch hơn

Trong hình 1số liệu lọc được cung cấp bởi lọc sơ bộ (CPC) là một bộ dữ liệu sạch hơn tập huấn luyện đầu vào CT Do đó, bộ lọc dựa trên FC được xây dựng từ những dữ liệu sạch hơn CPC này dự kiến sẽ thực hiện xác định nhiễu chính xác hơn trong CT, vì các mô hình được xây dựng để lọc không bị ảnh hưởng bởi các phần tử nhiễu, do các phần tử có khả năng nhiễu cao đã được phát hiện và loại

bỏ khỏi CT Do đó, ở bước thứ hai của mỗi lần lặp, bộ lọc dựa trên FC thực hiện trên bộ dữ liệu CPC Bộ lọc này được đánh giá trên toàn bộ các phần tử CT (tất cả các phần tử huấn luyện ban đầu) Từ đây thu được hai

bộ dữ liệu khác nhau là CC và CN

(CC CT, bao gồm các phần tử được coi là sạch bởi bộ lọc và CN CT, là

DT

CT

Điều kiện dừng CF

Fals

e

Tr u e

I

n

p

u

t

CT CPC

CPC CN CF CN

Ou tpu t Ou tpu t Ou tpu t

Tập huấn luyện

Bộ phân tích

1, Lọc

sơ bộ

2, Lọc không nhiễu 3,xóa nhiễu cuối cùng

Bộ lọc FC(C4

5,

3-NN, LOG

Bộ lọc FC(C4.5, 3-NN, LOGTính số

điểm nhiễu

Trang 5

tập các phần tử được coi là có tiềm

năng nhiễu (với CC CN =  và CC

CN = CT))

Loại bỏ nhiễu cuối cùng (Final

removal of noise): Bước cuối cùng

này bộ lọc kiểm soát độ nhạy cảm

nhiễu làm giảm số lượng các phần tử

nhiễu bị loại bỏ, đảm bảo rằng chỉ

những phần tử gây nhiễu thực sự mới

bị loại bỏ còn các phần tử nghi ngờ

là nhiễu sẽ được phân tích lại sau

Các phần tử nhiễu được xác định

trong bước lặp thứ hai CN là những

phần tử được xem xét phân tích với

điểm số nhiễu Chúng được sắp xếp

theo điểm số nhiễu, từ những nhiễu

hơn đến nhiễu ít hoặc có thể là

những phần tử sạch được nhận dạng

sai bởi nhiễu do bộ lọc Cuối cùng,

các phần tử vượt quá ngưỡng thiết

lập bởi người dùng sẽ bị loại bỏ Việc

xác định điểm số nhiễu được thực

hiện qua các quan sát sau:

Nhãn lớp của một số phần tử

huấn luyện có thể là sai: Bất kỳ tập

dữ liệu nào cũng dễ bị nhiễu Vì bộ

lọc thiết kế đặc biệt để xử lý các tập

dữ liệu có nhiễu trong lớp nên không

thể tin tưởng vào lớp của tất cả các

phần tử

Các phần tử nhiễu phát hiện bởi

bất kỳ bộ lọc nào có thể không chính

xác: Từ tiền đề ở trên, các quyết định

thu được từ dữ liệu nhiễu cũng có thể

không chính xác Bộ lọc INFFC liên

quan đến các quyết định của bộ lọc

nhiễu trong đó các phần tử nhiễu

được chỉ định Do đó, tập hợp các

phần tử nhiễu phát hiện trong bước

thứ hai tại mỗi lần lặp sẽ được phân tích với điểm số nhiễu

Phần tử trong các cụm nhiễu có

độ tin cậy thấp hơn: Thông tin thu

được từ một cụm phần tử nhiễu, tức

là tập hợp các phần tử nhiễu là không đáng tin cậy Có những phần

tử được dán nhãn là nhiễu do bộ lọc

có thể sạch và ngược lại Tương tự xảy ra với các nhãn lớp: rõ ràng là trong một cụm các phần tử nhiễu, hầu hết trong số chúng sẽ có nhãn lớp được gán không chính xác Vì vậy, thông tin từ các cụm này cần được thận trọng (với sự tự tin ít)

Sự hiện diện của các phần tử với

các nhãn lớp khác nhau trong vùng lân cậncủa một phần tử có thể chỉ ra rằng đó là một phần tử nhiễu: Các

phần tử khác trong vùng lân cận (k hàng xóm gần nhất) của một phần tử

e có nhãn lớp khác với phần tử e thì phần tử e có khả năng như là nhiễu

Sẽ càng có nhiều khả năng e là nhiễu nếu k hàng xóm gần nhất của nó đã được dán nhãn là các phần tử sạch bằng bộ lọc nhiễu

Sự hiện diện của các phần tử với

nhãn lớp tương tự trong vùng lân cận của một phần tử có thể cho thấy

đó là một phần tử sạch: Các phần tử

khác trong vùng lân cận (k hàng xóm gần nhất) của một ví dụ e có cùng nhãn lớp với ví dụ e, thì ví dụ e sẽ sạch hơn Nó thậm chí sẽ rất có thể cho e là sạch nếu hàng xóm gần nhất của nó đã được dán nhãn là phần tử sạch bằng bộ lọc nhiễu Trong bộ lọc INFFC sẽ xem xét các thông tin sau

Trang 6

(được cung cấp bởi các phần tử từ

CT) để đặt độ tin cậy (confidence)

của một ví dụ e  CN có nhãn nhiễu

là nhiễu:

+ Các kết quả phát hiện của bộ lọc

không có nhiễu FC (liên quan đến

các quan sát 1 và 2): mỗi phần tử

được dán nhãn là sạch hoặc nhiễu

bởi bộ lọc dựa trên FC được xây

dựng trong bước thứ hai của phương

pháp

+ Thông tin của mỗi phần tử huấn

luyện thuộc về hàng xóm của các

phần tử nhiễu khác (liên quan đến

quan sát 3): thời gian một phần tử

trong số k hàng xóm gần nhất của

các phần tử khác được dán nhãn là

nhiễu trong CN (gọi là t(e)) Giá trị

này cung cấp ý tưởng về mức độ liên

quan đến một phần tử trong các khu

vực nhiễu (các cụm với nhiễu) Nếu

giá trị cao, có nghĩa là phần tử này là

một trong những hàng xóm gần nhất

của nhiều phần tử khác có thể có

nhiễu

+ Thông tin về vùng lân cận của

mỗi phần tử e (liên quan đến quan sát

4 và 5) các phân lớp của e và các

phần tử gần e, nghĩa là, k hàng xóm

gần nhất (k = 5 được xem xét trong

bộ lọc này) Dựa trên quan sát 3, hàm

confidence(e) được định nghĩa như

sau:

(1) Hàm này kiểm tra xem phần tử e

có gần các phần tử nhiễu khác

không Nó trả về các giá trị trong

khoảng (0,1] Giá trị của

confidence(e) cao hơn nếu e không

nằm trong vùng lân cận của các phần

tử nhiễu khác, trong khi đó e thấp hơn nếu e nằm trong vùng lân cận của một số phần tử nhiễu Do đó, nếu confidence(e) = 1 (khi e không nằm trong vùng lân cận của bất kỳ phần

tử nhiễu nào), thông tin mà phần tử này cung cấp rất đáng tin cậy (vì nó được gán nhãn lớp là sạch hoặc nhiễu bởi bộ lọc dựa trên FC) Tuy nhiên, nếu confidence(e) 0 (khi e là một trong những hàng xóm gần nhất của nhiều phần tử nhiễu), thông tin

mà nó cung cấp không được tính đến

Tương tự như vậy, dựa trên quan sát 3-5, hàm neighborhood(e) được định nghĩa như sau:

(2) Chức năng này nhằm mục đích phân tích các vùng lân cận của một phần tử e (k hàng xóm gần nhất) để xác định mức độ e đang ở trong một cụm nhiễu Hàm này tính giá trị trung bình của k hàng xóm gần nhất xem xét các lớp (hàm differentClasses(e, ei)), mức độ sạch của mỗi láng giềng của e (chức năng clean(ei)) và độ tin cậy của mỗi hàng xóm (hàm confidence(ei))

Hàm differentClasses(e1; e2), được định nghĩa trong phương trình (3), có tính đến các quan sát 4 (các lớp khác nhau tăng điểm nhiễu) và 5 (các lớp đồng thời làm giảm điểm nhiễu) Trong trường hợp đó, nếu phần tử e và ei lân cận của nó có các nhãn lớp khác nhau thì giá trị

Trang 7

neighborhood(e) tăng lên, trong khi

nếu chúng có cùng nhãn lớp thì giá

trị của neighborhood(e) sẽ bị giảm

Hơn nữa, các quan sát 4 và 5 nêu

rõ rằng các phần tử sạch phải có

trọng số cao hơn các phần tử có

nhiễu trong việc tính toán điểm số

nhiễu Do đó, chức năng clean(ei)

được xác định dựa trên việc xem xét

số lượng các phần tử nhiễu xung

quanh một phần tử ei (trong đó n(ei))

là chỉ số độ sạch của phần tử) Do

đó, các phần tử sạch được bao quanh

bởi nhiều phần tử sạch có mức độ

sạch cao hơn các phần tử sạch được

bao quanh bởi các phần tử nhiễu, vì

chúng ta không được tin tưởng vào

thông tin được cung cấp bởi các khu

vực với nhiều phần tử nhiễu (quan

sát 3) Tương tự xảy ra với các phần

tử nhiễu: nếu một phần tử nhiễu

được bao quanh bởi nhiều phần tử

nhiễu khác, thì có thể nói rằng phần

tử này có mức độ nhiễu thấp hơn các

phần tử nhiễu khác bao quanh bởi

các phần tử sạch, được đặt trong một

khu vực đáng tin cậy hơn Vì những

lý do này, chức năng clean(ei) được

định nghĩa như sau:

(4) Hàm isnoise(ei), được sử dụng bởi

clean(ei), chỉ đơn giản trả về 1 nếu ei

là một phần tử nhiễu và -1 nếu nó là

sạch Nhớ lại rằng sự gắn kết của

mỗi phần tử với bộ lọc sạch và nhiễu

được xác định bởi bộ lọc dựa trên FC được sử dụng trong bước thứ hai của quá trình lọc Do đó, chức năng clean(e) cung cấp một giá trị về sự sạch sẽ của phần tử e

Cuối cùng, tính điểm số nhiễu NS cho phần tử e  CN là chủ yếu dựa vào phân tích khu vực lân cận của

nó, được đại diện bởi neighborhood(e), và giá trị này được đánh giá bởi độ tin cậy của riêng phần tử e, được đại diện bởi confidence(e) Do đó, cả hai chức năng được kết hợp để xác định điểm

số nhiễu NS(e) như sau:

NS(e) = confidence(e) neighborhood(e)(5)

Như chúng ta đã đề cập, hàm confidence(e) được định nghĩa trong khoảng [0,1], trong khi hàm neighborhood(e) được định nghĩa trong [-1, 1] Do đó, NS được xác định trong khoảng [-1, 1], cao hơn nếu phần tử e có nhiều khả năng có nhiễu Dấu hiệu của kết quả được cung cấp bởi hàm neighborhood(e) xác định nếu phần tử e thực sự là sạch (giá trị âm) hoặc nhiễu (giá trị dương), trong khi giá trị tuyệt đối của nó xác định mức độ tin cậy trong

sự lựa chọn này (giá trị là -1 tương ứng nếu phần tử e hoàn toàn sạch và

1 nếu phần tử e chắc chắn là nhiễu) Một giá trị NS(e) =0 ngụ ý rằng không có thông tin đáng tin cậy về phần tử e được dán nhãn sạch hoặc nhiễu Mặt khác, chức năng confidence(e) là một yếu tố khác xác định mức độ đại diện của kết quả

Trang 8

cung cấp bởi neighbourhood(e), dựa

trên mức độ thành viên của e đến các

cụm nhiễu Sau khi tính điểm nhiễu

cho mỗi ví dụ về nhiễu tiềm năng

trong CN, những phần tử có điểm số

nhiễu cao hơn ngưỡng được thiết lập

bởi người dùng sẽ được loại bỏ

3 Phương pháp SMOTE-INFC

Phương pháp INFFC duy trì mức

độ loại bỏ các phần tử nhiễu cân bằng

hơn các bộ lọc nhiễu khác đặc biệt

khi mức độ nhiễu tăng Do đó,

phương pháp INFFC thể duy trì sự

cân bằng giữa các phần tử đã xóa

(phần tử nhiễu) và những phần tử

không nhiễu (phần tử sạch)

Tuy nhiên đối với phân lớp mất

cân bằng thì phương pháp này còn có

những hạn chế nhất định vì vậy tác

giả đề xuất một phương pháp

SMOTE-INFFC để làm giảm tính

mất cân bằng giữa lớp đa số và lớp

thiểu số đồng thời bộ lọc INFFC giúp

xử lý nhiễu và các phần tử ở đường

biên, góp phần nâng cao hiệu quả

phân lớp

Ý tưởng của thuật toán như sau:

Input (tập dữ liệu mất cân bằng

chứa nhiễu)

Output(Tập dữ liệu cân bằng và

sạch)

DT là tập dữ liệu huấn luyện mất

cân bằng gốc

Áp dụng SMOTE với tập D được

tập DT =SMOTE(D) thu được tập dữ

liệu cân bằng

Với mỗi lần lặp:

+ Lọc sơ bộ: áp dụng lần lượt các thuật toán C4.5, 3-NN, LOG vào tập

DT thu được tập dữ liệu sạch DPC

+ Lọc Không nhiễu: Áp dụng lần lượt các thuật toán C4.5, 3-NN, LOG vào tập DPC vừa thực hiện ở lọc sơ bộ thu được 2 tập dữ liệu là DC (tập dữ liệu sạch) và DN (tập dữ liệu nhiễu) + Loại bỏ tập nhiễu: Tại bước này các phần tử nhiễu được xác định ở bước lọc không nhiễu sẽ được tính điểm số nhiễu dựa vào thông tin các phần tử trong tậpdữ liệu huấn luyện

là hàng xóm của những phần tử nhiễu

và thông tin vùng lân cận của các phần tử nhiễu Sau đó các phần tử nhiễu sẽ được sắp xếp theo điểm số này từ nhiễu nhiều đến nhiễu ít Cuối cùng, các phần tử vượt quá ngưỡng thiết lập bởi người dùng sẽ bị loại bỏ

- Kết thúc quá trình thu được tập

dữ liệu sạch DF

Hình 2a mô tả dữ liệu gốc có sự mất cân bằng giữa các phần tử, đồng thời chứa các phần tử nhiễu và phần

tử đường biên Hình 2b dữ liệu được thực hiện bởi phương pháp SMOTE

để cân bằng số lượng phần tử, hình 2c áp dụng lọc INFFC để loại bỏ nhiễu giúp việc phân lớp được thường xuyên

- Ý tưởng chính của thuật toán là loại bỏ nhiễu và các phần tử ở đường biên trong phân lớp mất cân bằng dựa trên sự kết hợp của SMOTE và tập hợp các phân lớp Phương pháp này không làm tăng chi phí phân lớp và cân bằng các phần tử lớp thiểu số với lớp đa số Sơ đồ quá trình thực nghiệm được mô tả trong hình 3 Từ

Ph

ần

tử

đa số Ph

ần

tử thi

ểu số

Trang 9

Hội thảo quốc gia lần thứ XX: Một số vấn đề chọn lọc của Công nghệ thông tin và truyền thông – Quy Nhơn, 23-24/11/2017

tập dữ liệu huấn luyện ban đầu được

chi thành 2 tập là train (dùng để huấn

luyện) và test (dùng để kiểm thử) tiếp

đó tập train sẽ được thực hiện lần

lượt các phương pháp SMOTE,

INFFC tiếp đó được phân lớp bằng

phương pháp bagging tree, xây dựng

mô hình và kiểm thử trên tập test

Hình 3: Sơ đồ quá trình thực hiện

phương pháp SMOTE-INFFC

III THỰC NGHIỆM VÀ ĐÁNH

GIÁ

1 Dữ liệu

Các bộ dữ liệu được sử dụng là các

bộ dữ liệu thực tế áp dụng cho phân

lớp mất cân bằng với các phần tử

nhiễu và đường biên được trình bày

trong [9] và các bộ dữ liệu dành cho

phân lớp mất cân bằng khác Các bộ

dữ liệu này có sẵn tại kho dữ liệu

KEEL (http://keel.es) và kho dữ liệu

UCI Cụ thể như sau:

BẢNG 1: DỮ LIỆU THỰC

NGHIỆM

Dữ liệu

Số phần tử

Thuộc tính

Tỷ lệ mất cân bằng

abalone 731 8 1:16

newthyroi

haberman 306 3 1:3

yeast 1484 8 1:28

coil2000 5822 85 1:17

2 Cách thực nghiệm

Để đánh giá hiệu quả của phương pháp kết hợp, tôi đã tiến hành cài đặt

và chạy chương trình bằng ngôn ngữ

R Tôi thực nghiệm trên các bộ dữ liệu được trình bày trong bảng 1 với các phương pháp điều chỉnh dữ liệu: SMOTE, INFFC, IPF, BLSMOTE, SLSMOTE và phương pháp SMOTE-INFFC Sau khi áp dụng các phương pháp điều chỉnh dữ liệu, các

bộ dữ liệu mới được phân lớp bằng giải thuật “bagging tree” và thực hiện tính 2 tiêu chí đánh giá AUC và Gmean mục đích là để so sánh kết quả AUC và Gmean của các phương pháp điều chỉnh dữ liệu Kết quả so sánh cuối cùng là giá trị trung bình của Gmean và AUC sau 20 lần thực hiện các phương pháp trên

Hình 4: Kết quả AUC của 7 bộ dữ liệu thực nghiệm

Hình 5: Kết quả Gmean của 7 bộ dữ liệu thực nghiệm

3 Kết quả

Qua kết quả thu được ở Hình 4 và

5 cho thấy phương pháp SMOTE-INFFC có kết quả cao hơn các phương pháp khác về lĩnh vực lọc dữ liệu cũng như các phương pháp có tiền xử lý với SMOTE

Ph

ần

tử

đa số Ph

ần

tử thi

ểu số

Trang 10

Hình 6: Phân bố của các bộ dữ liệu: a ablone; b blood; c ecoli;

d.haberman; e newthyroid,; f coil2000; g yeast.

Đối với hướng lọc dữ liệu thì

phương pháp SMOTE-INFFC thực

hiện tốt hơn các phương pháp IPF,

INFFC bởi vì đối với dữ liệu mất cân

bằng thì các phần tử tích cực thường

ít nhưng lại có ý nghĩa quan trọng

cho việc phân lớp Đặc biệt với bộ dữ

liệu coil2000, khi chỉ áp dụng bộ lọc

IPF hoặc INFFC sẽ dẫn đến các

nhiều phần tử thiểu số bị xóa, không

thực hiện phân lớp dữ liệu

Đối với các phương pháp có tiền

xử lý với SMOTE như SMOTE-IPF,

BLSMOTE, SLSMOTE thì phương

pháp của chúng tôi cũng đạt hiệu suất

phân lớp cao hơn hẳn Điều đó là do

sau khi thực hiện tiền xử lý với

SMOTE thì bộ lọc INFFC sẽ loại bỏ

các phần tử nhiễu và phần tử đường

biên có kiểm soát độ nhạy cảm nhiễu

bằng cách tính số điểm nhiễu (được

trình bày trong phần II, mục 2) và

ngưỡng loại bỏ nhiễu không vượt quá

1% dữ liệu huấn luyện

4 Đánh giá

Qua kết quả thực nghiệm chúng

tôi thấy rằng với tất cả các bộ dữ liệu

thực nghiệm thì phương pháp

SMOTE-INFFC cho kết quả tốt Các

bộ dữ liệu ecoli, newthyroid có kết

quả khá cao lần lượt là 0.82, 0.950

bởi các bộ dữ liệu này có phân bố dữ

liệu tốt, ít các phần tử nhiễu và phần

tử đường biên

Các bộ dữ liệu abalone, blood, haberman, coil2000, yeast có AUC

và Gmean thấp hơn vì các bộ dữ liệu này có phân bố không đồng đều, có nhiều phần tử nhiễu và phần tử đường biên

Đối với bộ dữ liệu coil2000 có AUC và Gmean của INFFC và IPF

có giá trị 0 vì trong quá trình áp dụng

bộ lọc các phần tử positive là các phần tử nhiễu và phần tử đường biên khá nhiều dẫn đến bị xóa không thể phân lớp dữ liệu được

Dưới đây là mô tả của cácbộ dữ liệu thực nghiệm.Thông qua các hình ảnh mô tả của các bộ dữ liệu chúng tôi thấy rằng phương pháp SMOTE-INFFC phù hợp với các bộ dữ liệu có phân bố thường xuyên hơn Đối với các bộ dữ liệu liệu mất cân bằng có phân bố chồng chéo thì phương pháp của chúng tôi cũng giải quyết tốt vấn

đề mất cân bằng và nhiễu do sự chồng chéo tạo ra ranh giới lớp thường xuyên hơn như các bộ dữ liệu coil2000, haberman, blood

IV KẾT LUẬN Bài báo đã nghiên cứu phương pháp giải quyết nhiễu ở đường biên trong phân lớp mất cân bằng bởi phương pháp mới đó là kết hợp sinh thêm phần tử nhân tạo và bộ lọc nhiễu dựa trên sự hợp nhất của các phương pháp phân lớp nhằm làm tăng độ chính xác phân lớp dữ liệu

Sự phù hợp của phương pháp này đã

Ngày đăng: 02/05/2023, 23:48

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]A. Estabrooks (2000),A combination scheme for inductive learning from imbalanced data sets,Master’s thesis, Faculty of Computer Science, Dalhousie University, Halifax, Nova Scotia, Canada[2]Bunkhumpornpat, K Sách, tạp chí
Tiêu đề: A combination scheme for inductive learning from imbalanced data sets
Tác giả: A. Estabrooks
Nhà XB: Faculty of Computer Science, Dalhousie University
Năm: 2000
[3]C.E. Brodley, M.A. Friedl (1999),“Identifying mislabeled training data”,J. Artif, pp. 131–167 Sách, tạp chí
Tiêu đề: Identifying mislabeled training data
Tác giả: C.E. Brodley, M.A. Friedl
Nhà XB: J. Artif
Năm: 1999
[4]G.J. Mclachlan (2004), Discriminant Analysis and Statistical Pattern Recognition, Wiley Interscience Sách, tạp chí
Tiêu đề: Discriminant Analysis and Statistical Pattern Recognition
Tác giả: G.J. Mclachlan
Nhà XB: Wiley Interscience
Năm: 2004
[5]H. Han, W.Y. Wang, B.H. Mao (2005), “Borderline-SMOTE: a new over-sampling method in imbalanced data sets learning”, Proceedings of the 2005 International Conference on Advances in Intelligent Computing – Volume Part I, Springer-Verlag, Berlin, Heidelberg, pp.878–887 Sách, tạp chí
Tiêu đề: Borderline-SMOTE: a new over-sampling method in imbalanced data sets learning
Tác giả: H. Han, W.Y. Wang, B.H. Mao
Nhà XB: Springer-Verlag
Năm: 2005
[7]José A. Sáez, Julián Luengo, Jerzy Stefanowski, Francisco Herrera (2015), “SMOTE–IPF:Addressing the noisy and borderline examples problem in imbalanced classification by a re- sampling method with filtering”, Information Sciences(291), pp.184–203 Sách, tạp chí
Tiêu đề: SMOTE–IPF:Addressing the noisy and borderline examples problem in imbalanced classification by a re- sampling method with filtering
Tác giả: José A. Sáez, Julián Luengo, Jerzy Stefanowski, Francisco Herrera
Nhà XB: Information Sciences
Năm: 2015
[8]José A. Sáez, Mikel Galar, Julián Luengo, Francisco Herrera (2016), “INFFC: An iterative class noise filter based on the fusion of classifiers with noise sensitivity control”, Information Fusion(27), pp. 19–32 Sách, tạp chí
Tiêu đề: INFFC: An iterative class noise filter based on the fusion of classifiers with noise sensitivity control
Tác giả: José A. Sáez, Mikel Galar, Julián Luengo, Francisco Herrera
Nhà XB: Information Fusion
Năm: 2016
[10] N.V. Chawla, K.W. Bowyer, L.O. Hall, W.P. Kegelmeyer (2002), “SMOTE: synthetic minority over-sampling technique”, Journal of Artificial Intelligence Research (16), pp.321–357 Sách, tạp chí
Tiêu đề: SMOTE: synthetic minority over-sampling technique
Tác giả: N.V. Chawla, K.W. Bowyer, L.O. Hall, W.P. Kegelmeyer
Nhà XB: Journal of Artificial Intelligence Research
Năm: 2002
[11] S. le Cessie, J. van Houwelingen (1992), “Ridge estimators in logistic regression”, Applied Statistics 41(1) pp. 191–201 Sách, tạp chí
Tiêu đề: Ridge estimators in logistic regression
Tác giả: S. le Cessie, J. van Houwelingen
Nhà XB: Applied Statistics
Năm: 1992
[12] T.M. Khoshgoftaar, P. Rebours (2007), “Improving software quality prediction by noise filtering techniques”, Journal ofComputer Science and Sách, tạp chí
Tiêu đề: Improving software quality prediction by noise filtering techniques
Tác giả: T.M. Khoshgoftaar, P. Rebours
Nhà XB: Journal of Computer Science
Năm: 2007

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w