1. Trang chủ
  2. » Công Nghệ Thông Tin

Nghiên cứu phương pháp mới dựa trên đường biên và vùng an toàn nâng cao hiệu quả phân lớp dữ liệu mất cân bằng

53 138 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

Định dạng
Số trang 53
Dung lượng 837,36 KB

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

Nội dung

Phân lớp dữ liệu đã, đang và sẽ phát triển mạnh mẽ trước những khát khao tri thức của con người. Các nhà nghiên cứu bị thu hút bởi nhiều hướng tiếp cận khác nhau trongphân lớp dữ liệu như: Học máy (machine learning), hệ chuyên gia (expert system), thống kê (statistisc)… Kết quả là những ứng dụng vô cùng hữu ích trong thực tế ở các lĩnh vực thương mại, ngân hàng, maketing, bảo hiểm, y tế, giáo dục… ra đời.

Trang 1

1

MỤC LỤC

PHẦN 1: MỞ ĐẦU 5

PHẦN 2: NỘI DUNG 7

CHƯƠNG 1: GIỚI THIỆU VỀ PHÂN LỚP DỮ LIỆU 7

1.1 Phân lớp dữ liệu 7

1.1.1 Phân lớp dữ liệu 7

1.1.2 Quá trình phân lớp dữ liệu 8

1.1.3 Ứng dụng của phân lớp dữ liệu 11

1.2 Phân lớp dữ liệu mất cân bằng 13

1.2.1 Dữ liệu mất cân bằng 13

1.2.2 Đặc trưng của dữ liệu mất cân bằng 14

1.3 Một số bài tốn phân lớp dữ liệu chuẩn 16

1.3.1 Cây quyết định (Decision tree) 16

1.3.2 Mạng Bayes (Nạve Bayes) 18

1.3.3 K-láng giềng gần nhất (K-nearest neighbor) 19

1.3.4 Máy vectơ hỗ trợ (Support Vector Machine) 20

CHƯƠNG 2: PHƯƠNG PHÁP MỚI DỰA TRÊN ĐƯỜNG BIÊN VÀ VÙNG AN TỒN NÂNG CAO HIỆU QUẢ PHÂN LỚPDỮ LIỆU MẤT CÂNG BẰNG 24

2.1 Các phương pháp tiếp cận bài tốn phân lớp đối với dữ liệu mất cân bằng hiện nay 24

2.1.1 Phương pháp tiếp cận trên mức độ dữ liệu 24

2.1.2 Phương pháp tiếp cận trên mức độ thuật tốn 26

2.1.3 Học dựa trên chi phí (Cost-sensitive learning) 27

2.2 Phương pháp loại bỏ ngẫu nhiên phần tử an tồn ở lớp đa số - Random Safe Undersampling (RSU) 28

2.2.1 Ý tưởng 28

Trang 2

2

2.2.2 Thuật toán Random Safe Undersampling 30

2.3 Phương pháp sinh thêm ngẫu nhiên phần tử biên ở lớp thiểu số - Random Border Oversampling (RBO) 33

2.3.1 Ý tưởng 33

2.3.2 Thuật toán Random Border Oversampling 34

2.4 Phương pháp mới dựa trên đường biên và vùng an toàn nâng cao hiệu quả phân lớp dữ liệu mất cân bằng – Random Safe Undersampling & Random Border Oversampling (RSU_RBO) 37

CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 39

3.1 Các tiêu chí đánh giá 40

3.2 Dữ liệu 42

3.3 Kết quả thực nghiệm 43

PHẦN 3: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49

TÀI LIỆU THAM KHẢO 51

Trang 3

RBO Random Border Oversampling

RSO Random Safe Oversampling

RSU Random Safe Undersampling

RSU_RBO Random Safe Undersampling - Random Safe Oversampling SMV Support Vector Machine

Trang 4

4

DANH MỤC BẢNG

Bảng 1 Dữ liệu huấn luyện 8

Bảng 2 Dữ liệu cần phân lớp 10

Bảng 3 Ví dụ về phân lớp bằng cây quyết định 17

Bảng 4 Ma trận nhầm lẫn 40

Bảng 5 Dữ liệu chuẩn từ UCI 43

Bảng 6 Thống kê số phần tử 48

DANH MỤC HÌNH ẢNH Hình 1 Quá trình huấn luyện 9

Hình 2 Quá trình phân lớp dữ liệu 11

Hình 3 Phân lớp dữ liệu bằng cây quyết định 17

Hình 4 Phân lớp dữ liệu bằng phương pháp KNN 20

Hình 5 Ví dụ về phân lớp dữ liệu bằng SMV 21

Hình 6 Đường biên trong SMV 22

Hình 7 Minh họa kỹ thuật phân lớp bằng SMV 22

Hình 8 Xác định một phần tử an toàn lớp đa số 32

Hình 9 Xác định phần tử biên lớp thiểu số 36

Hình 10 Quá trình thực hiện thuật toán RBO_RSU 39

Hình 11 Biểu đồ so sánh G-mean của bộ dữ liệu Yeast 45

Hình 12 Biểu đồ so sánh G-mean của bộ dữ liệu Glass 45

Hình 13 Biểu đồ so sánh G-mean của bộ dữ liệu Breast-p 46

Hình 14 Biểu đồ so sánh G-mean của bộ dữ liệu Pima 47

Trang 5

5

PHẦN 1: MỞ ĐẦU

Phân lớp dữ liệu đã, đang và sẽ phát triển mạnh mẽ trước những khát khao tri thức của con người Các nhà nghiên cứu bị thu hút bởi nhiều hướng tiếp cận khác nhau trongphân lớp dữ liệu như: Học máy (machine learning), hệ chuyên gia (expert system), thống kê (statistisc)… Kết quả là những ứng dụng vơ cùng hữu ích trong thực tế ở các lĩnh vực thương mại, ngân hàng, maketing, bảo hiểm, y tế, giáo dục… ra đời

Trong các mơ hình phân lớp, thuật tốn là nhân tố chủ đạo Do đĩ cần xây dựng những thuật tốn cĩ độ chính xác cao, thực thi nhanh, đi kèm với khả năng mở rộng được để cĩ thể thao tác với những tập dữ liệu ngày càng lớn Đã

cĩ nhiều thuật tốn phân lớp được cơng bố như: Cây quyết định (decision tree), Nạve Bayes, k-hàng xĩm gần nhất (k-nearest neighbor), máy véc tơ hỗ trợ (Support Vector Machine) [20]… Đây là những thuật tốn chuẩn và đạt hiệu quả tốt đối với trường hợp phân lớp cĩ dữ liệu khơng mất cân bằng Tuy nhiên, hiệu quả của các thuật tốn này đối với loại dữ liệu cĩ sự chênh lệch lớn về số lượng giữa các lớp lại khơng đạt mong muốn

Trong trường hợp dữ liệu mất cân bằng, phân lớp chuẩn cĩ khuynh hướng

bị áp đảo bởi lớp đa số và bỏ qua lớp thiểu số Tầm quan trọng của nĩ khiến cho nhiều nhà nghiên cứu nhận ra rằng việc mất cân bằng là nguyên nhân gây

ra sự khơng tối ưu trong việc phân lớp Và hầu hết các thuật tốn xử lý kém khi các tập dữ liệu bị mất cân bằng cao Chính vì vậy, một yêu cầu cơ bản được đặt

ra là cần tăng tính hiệu quả và chính xác của thuật tốn phân lớp đối với dữ liệu mất cân bằng

Cĩ rất nhiều phương pháp được đề xuất để giải quyết vấn đề mất cân bằng lớp nhằm tăng hiệu quả của việc phân lớp dữ liệu [21] Tuy nhiên, phương pháp phổ biến và đơn giản nhất để xử lý vấn đề này là tiền xử lý dữ liệu bằng cách sinh ngẫu nhiên các phần tử ở lớp thiểu số hoặc loại bỏ ngẫu nhiên các phần tử

Trang 6

bằng, phân lớp đối với dữ liệu mất cân bằng, các giải thuật chuẩn Random Oversampling và Random Undersampling Từ đó cải tiến và đề xuất một phương pháp mới mới dựa trên khái niệm đường biên và vùng an toàn để nâng cao hiệu quả phân lớp đối với dữ liệu mất cân bằng: Random Safe Undersamping - Random Border Oversampling

Luận văn gồm 3 chương:

Chương 1: Trình bày tổng quan về phân lớp dữ liệu, dữ liệu mất cân bằng

và các thuật toán phân lớp chuẩn

Chương 2: Trình bày hướng tiếp cận chính đối với bài toán phân lớp dữ liệu mất cân bằng, các phương pháp cơ bản để sinh thêm các phần tử ở lớp thiểu

số hoặc loại bỏ các phần tử ở lớp đa số một cách ngẫu nhiên Đồng thời đề xuất phương pháp mới vừa sinh thêm phần tử biên ở lớp thiểu số vừa loại bỏ phần

tử an toàn ở lớp đa số một cách ngẫu nhiên làm giảm sự mất cân bằng dữ liệu, tăng hiệu quả phân lớp

Chương 3: Trình bày các độ đo đánh giá phân lớp dữ liệu mất cân bằng, phương pháp tiến hành thực nghiệm, các bộ dữ liệu thực nghiệm và kết quả thực nghiệm Trên cơ sở đó so sánh, đánh giá hiệu quả của thuật toán mới

Trang 7

7

PHẦN 2: NỘI DUNG CHƯƠNG 1: GIỚI THIỆU VỀ PHÂN LỚP DỮ LIỆU

1.1 Phân lớp dữ liệu

1.1.1 Phân lớp dữ liệu

Phân lớp dữ liệu (classification) là một trong những hướng nghiên cứu chính của khai phá dữ liệu Thực tế đặt ra nhu cầu là từ một cơ sở dữ liệu với nhiều thông tin ẩn con người có thể trích rút ra các quyết định nghiệpmột cách chính xác và nhanh chóng Phân lớp chính là quá trình phân tích dữ liệu nhằm trích rút ra một mô hình mô tả các lớp dữ liệu quan trọng hay dự đoán xu hướng

dữ liệu tương lai[8] Phân lớp dự đoán giá trị của những nhãn xác định (categorical label) hay những giá trị rời rạc (discrete value), có nghĩa là phân lớp thao tác với những đối tượng dữ liệu mà có bộ giá trị là biết trước.Ví dụ mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa, hay nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ,… của ngày hôm nay

và các ngày trước đó Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn

về lượng mặt hàng cũng như chủng loại bày bán…

Đầu vào của bài toán phân lớp là một tập các mẫu đã được phân loại trước, mỗi đầu vào được mô tả bằng một số thuộc tính Các thuộc tính dùng để mô tả mẫu gồm 2 loại: Thuộc tính rời rạc và thuộc tính liên tục Trong số các thuộc tính rời rạc, một thuộc tính đặc biệt là phân lớp (class), mà các giá trị của nó được gọi là nhãn lớp.Thuộc tính liên tục sẽ nhận các giá trị có thứ tự, ngược lại, thuộc tính rời rạc sẽ nhận các giá trị không có thứ tự.Ngoài ra, các thuộc tính

có thể nhận giá trị không xác định.Nhiệm vụ của quá trình phân lớp dữ liệu là gán nhãn cho các mẫu dữ liệu.Một mô hình mô tả dữ liệu sẽ được dùng để xác định nhãn lớp cho các mẫu mới không nằm trong tập mẫu ban đầu

Trang 8

8

1.1.2 Quá trình phân lớp dữ liệu

Quá trình phân lớp dữ liệu gồm hai giai đoạn [22]:

Giai đoạn huấn luyện(learning)

Giai đoạn huấn luyện nhằm xây dựng một mô hình mô tả một tập các lớp

dữ liệu hay các khái niệm định trước Đầu vào của quá trình này là một tập dữ liệu có cấu trúc được mô tả bằng các thuộc tính và được tạo ra từ tập các bộ giá trị của các thuộc tính đó Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu (data tuple), có thể là các mẫu (sample), ví dụ (example), đối tượng (object), bản ghi (record) hay trường hợp (case)…Đầu ra của bước này thường là các quy tắc phân lớp dưới dạng luật dạng if - then, cây quyết định, công thức logic, hay mạng nơron

Bảng 1 là một ví dụ về dữ liệu huấn luyện, dữ liệu có 5 thuộc tính: Tên, Giới tính, Tuổi, Thu nhập, Mua máy tính Trong đó, Mua máy tính là thuộc tính lớp

Tên Giới tính Tuổi Thu nhập Mua máy tính

Trang 9

9

thức toán học mô tả lớp.Thuật toán phân lớp chính là cốt lõi của quá trình học, thuật toán phân lớp tốt thì hiệu quả gán nhãn đạt độ chính xác cao

Hình 1 Quá trình huấn luyện

Các bước xây dựng mô hình phân lớp:

- Mỗi bộ/ mẫu dữ liệu được phân vào một lớp xác định trước

- Lớp của một bộ/ mẫu dữ liệu được xác định bởi thuộc tính gán nhãn lớp

- Tập các bộ/ mẫu dữ liệu huấn luyện - tập huấn luyện - được dùng để xây dựng mô hình

- Mô hình được biểu diễn bởi các luật phân lớp, các cây quyết định hoặc các công thức toán học

Ví dụ trong hình 1, mô hình phân lớp khách hàng có mua máy tính hay không sẽ phải thoả mãn điều kiện: Nếu khách hàng có giới tính là Nam và thunhập lớn hơn 2.000.000đồng thì người đó CÓ mua máy tính Vậy dựa vào

Dữ liệu huấn luyện

Thuật toán phân lớp

Mô hình phân loại

IF gioitinh = “Nam” AND thunhap > 2.000.000 THEN return = “YES”

Tên Giới

tính Tuổi Thu nhập

Mua máy tính

Trang 10

10

mô hình phân lớp khách hàng, nhân viên kinh doanh có thể biết khách hàng có mua máy tính hay không

Giai đoạn phân lớp (classification)

Giai đoạn phân lớp sẽ sử dụng mô hình xây dựng được ở giai đoạn huấn luyện để phân lớp dữ liệu

Tên Giới tính Tuổi Thu nhập Mua máy tính

Bảng 2 Dữ liệu cần phân lớp Trong giai đoạn này, một bộ dữ liệu kiểm tra độc lập với bộ dữ liệu huấn luyện trước đó được sử dụng để đánh giá.Việc sử dụng mô hình được phục vụ cho việc phân lớp dữ liệu trong tương lai hoặc phân lớp cho những đối tượng chưa biết đến

Trước khi sử dụng mô hình phải đánh giá được tính chính xác của mô hình Ta thực hiện phân lớp các mẫu dữ liệu trong bộ dữ liệu kiểm tra, từ đó xác định xem có bao nhiêu phần tử dữ liệu được phân lớp đúng và bao nhiêu phân tử dữ liệu bị phân lớp sai Nếu độ chính xác của mô hình là chấp nhận được thì mô hình được sử dụng để phân lớp cho những dữ liệu tương lai hoặc những dữ liệu chưa biết nhãn

Hình 2 mô tả quá trình phân lớp dữ liệu dựa vào mô hình đã xây dựng được ở giai đoạn huấn luyện Như vậy, dữ liệu khách hàng có tên là Bách, giới tính Nam và có mức thu nhập 3.800.000 đồng thoả mãn điều kiện nên được gán nhãn là YES (có mua máy tính)

Mô hình

Trang 11

11

Hình 2 Quá trình phân lớp dữ liệu Trong mơ hình phân lớp, thuật tốn phân lớp giữ vai trị trung tâm, quyết định tới sự thành cơng của mơ hình phân lớp Do vậy chìa khĩa của vấn đề phân lớp dữ liệu là tìm ra được một thuật tốn phân lớp nhanh, hiệu quả, cĩ độ chính xác cao và cĩ khả năng mở rộng được Trong đĩ khả năng mở rộng được của thuật tốn được đặc biệt chú trọng và phát triển [22] Cĩ thể liệt kê các kỹ thuật

phân lớp đã được sử dụng trong những năm qua như sau:

 Cây quyết định (Decision tree)

 Mạng Bayes (Nạve Bayes)

 K-láng giềng gần nhất (K-nearest neighbor)

 Máy vectơ hỗ trợ (Support Vector Machine)

 Mạng nơron

 Phân tích thống kê

 Các thuật tốn di truyền…

1.1.3 Ứng dụng của phân lớp dữ liệu

Trang 12

vì vậy, việc phát hiện gian lận là một việc cần thiết, cần có biện pháp giải quyết

Chẩn đoán y học

Khai phá dữ liệu sinh học là một phần rất quan trọng của lĩnh vực Tin – Sinh học (Bioinformatics) Cơ sở dữ liệu lâm sàng lưu trữ một lượng lớn thông tin về bệnh nhân và tình trạng sức khỏe của họ Kỹ thuật khai phá dữ liệu được

áp dụng trên các cơ sở dữ liệu cố gắng tìm cách phát hiện các mối quan hệ và các mẫu trong dữ liệu lâm sàng và dữ liệu bệnh lý để hiểu được sự tiến triển của bệnh và các tính năng nhất định Kiến thúc được phát hiện có thể sử dụng

để chẩn đoán sớm bệnh Trong cơ sở dữ liệu lâm sàng, trường hợp bệnh khá hiếm so với dân số bình thường Nếu chẩn đoán người bị bệnh thì người không

bị bệnh sẽ gây thiệt hại nghiêm trọng về người Do đó, nâng cao hiệu quả trong việc chẩn đoán y học càng đoán vai trò quan trọng [21]

Phát hiện sự xâm nhập mạng

Xâm nhập bất hợp pháp là những hành động đe doạ tính toàn vẹn, bảo mật

và tính sẵn sàng của tài nguyên mạng Trong thế giới của kết nối, bảo mật đã trở thành vấn đề lớn đối với tồn tại của hệ thống Với sự phát triển của Internet

và sự sẵn có của các công cụ, thủ thuật trợ giúp cho xâm nhập và tấn công

Trang 13

13

mạng, yêu cầu kiểm soát truy cập bất hợp pháp là yếu tố rất quan trọng đảm bảo cho sự ổn định của hệ thống Như các hệ thống máy tính dựa trên hệ thống mạng ngày càng có vai trò quan trọng trong xã hội hiện đại, cuộc tấn công vào

hệ thống máy tính và mạng máy tính phát triển phổ biến hơn Học quy tắc dự đoán từ dữ liệu mạng là một phương pháp hiệu quả để phát hiện bất thường tự động hóa và đơn giản hóa phát triển của ngãn hiệu chữ ký xâm nhập Điều đó cho thấy rằng các loại khác nhau của cuộc tấn công mạng là có thật - một số xuất hiện áp đảo, một số hiếm hơn - trong tập các bản ghi kết nối mạng Ví dụ,

dữ liệu cuộc thi KDD-CUP’99 bao gồm 4 loại tấn công mạng: từ chối dịch vụ (dos), giám sát (probe), từ xa đến địa phương (r2l) và người sử dụng gốc (u2r) Giữa 4 loại của sự tấn công, loại u2r và r2l có bản chất hiếm hơn [20]

Công nghiệp viễn thông

Công nghiệp viễn thông là một trong những ngành công nghiệp mới nổi, cung cấp nhiều dịch vụ như trên điện thoại di động, Internet, truyền hình ảnh…

Do sự phát triển mạnh của công nghệ máy tính và mạng máy tính, viễn thông đãng phát triển với tốc độ rất lớn Đây là lý do tại sao khai phá dữ liệu trở nên quan trọng trong lĩnh vực này Khai phá dữ liệu trong ngành công nghiệp viễn thông, sử dụng tốt hơn nguồn tài nguyên và cải thiện chất lượng dịch vụ viễn thông Một số ứng dụng của khai phá dữ liệu trong ngành công nghiệp viễn thông như: Phân tích dữ liệu đa chiều viễn thông; Xây dựng các mô hình phát hiện gian lận; Phát hiện bất thường trong giao dịch viễn thông; Phân tích hành

vi sử dụng dịch vụ viễn thông của khách hàng; Sử dụng các công cụ trực quan trong phân tích dữ liệu viễn thông…[20]

1.2 Phân lớp dữ liệu mất cân bằng

1.2.1 Dữ liệu mất cân bằng

Một tập dữ liệu được coi là mất cân bằng nếu một trong các lớp có số lượng của các đối tượng quá nhỏ để so sánh với các lớp khác Hầu hết các bài

Trang 14

14

báo nghiên cứu chỉ đề cập tới trường hợp có hai phân lớp [3].Một lớp nhỏ hơn được gọi là lớp thiểu số, và lớp lớn hơn được gọi là lớp đa số.Lớp thiểu số bao gồm một số đối tượng positive, và lớp đa số bao gồm nhiều đối tượng negative

Ví dụ, một tập dữ liệu Mammography chứa 10.923 mẫu được gán nhãn

“Negative” (Không ung thư) và 260 mẫu được gán nhãn “Positive” (Ung thư) Người ta đòi hỏi phải có một bộ phân loại cung cấp mức độ cân bằng của việc

dự đoán độ chính xác (với mức độ lý tưởng là 100%) cho cả lớp thiểu số và lớp

đa số trong tập dữ liệu Trên thực tế, người ta thấy rằng, các phân loại có xu hướng cung cấp một mức độ cân bằng của độ chính xác, với lớp đa số có độ chính xác gần 100% và lớp thiểu số có độ chính xác là 0-10% Giả sử, một phân loại đạt độ chính xác là 10% đối với lớp thiểu số, nghĩa là sẽ có 234 mẫu lớp thiểu số bị phân loại sai thành lớp đa số Điều đó sẽ dẫn đến 234 bị ung thư nhưng được chuẩn đoán là không bị ung thư [6] Như vậy, việc phân lớp nhầm

sẽ gây hậu quả nghiêm trọng Từ đó cho thấy vai trò của việc giải quyết bài toán mất cân dữ liệu và đây cũng là vấn đề được nhiều nhà nghiên cứu trong lĩnh vực học máy quan tâm

1.2.2 Đặc trưng của dữ liệu mất cân bằng

Phân bố dữ liệu không cân bằng

Đối với phân lớp nhị phân, mức độ mất cân bằng dữ liệu có thể được biểu diễn bởi tỉ lệ giữa kích thước mẫu của lớp thiểu số so với lớp đa số Trong các ứng dụng thực tế, tỉ lệ này có thể mất cân bằng rất lớn như 1:100, 1:1000 hoặc thậm chí lớn hơn Nhiều nghiên cứu đã được tiến hành để đưa ra mối quan hệ giữa các phân lớp dữ liệu và tính hiệu quả phân lớp Đa phần những dữ liệu có phân bố tương đối cân bằng thường đạt hiệu quả phân lớp tối ưu hơn những dữ liệu mất cân bằng Hiệu quả phân lớp sẽ giảm xuống khi mức độ chênh lệch đạt đến một ngưỡng nào đó, các yếu tố khác như kích thước mẫu hay sự phân chia lớp đều không ảnh hưởng đến hiệu suất.Ví dụ trong một số ứng dụng, tỉ lệ này

Trang 15

có thể không còn là một trở ngại để phân loại dữ liệu nếu bộ dữ liệu lớn được cung cấp đầy đủ [21]

Phân chia lớp

Hiệu quả phân lớp cũng bị ảnh hưởng bởi sự phân chia dữ liệu giữa lớp thiểu số và lớp đa số Nếu tồn tại một mô hình phân chia rõ ràng giữa các lớp, đường phân chia các lớp được biểu diễn rất đơn giản và chính xác, sẽ không cần đưa ra các quy tắc để phân biệt hai lớp dữ liệu Tuy nhiên, với trường hợp các phần tử ở mỗi lớp lại có sự chồng chéo, đan xen thông tin lẫn nhau theonhiều cấp độ trong cùng một không gian đặc trưng thì các quy tắc phân biệt rất khó được phát hiện và biểu diễn Khi đó, số lượng mẫu của các lớp thiểu số

có thể bị giảm đáng kể do dự đoán sai trong việc phân chia lớp một cách chính xác

Phân lớp con

Trong thực tế, một phân lớp đơn có thể được tạo thành bởi nhiều lớp con Các lớp con này thường không chứa cùng số lượng phần tử, vậy nên cũng có hiện tượng mất cân bằng dữ liệu giữa các phân lớp con Khi đó, vấn đề phân lớp dữ liệu càng trở nên phức tạp hơn bởi mỗi phân lớp con cần một quy tắc

Trang 16

16

khác nhau để mô tả Điều đó kéo theo quá trình huấn luyện cho các lớp càng khó khan và giảm tính hiệu quả của việc phân lớp dữ liệu

1.3 Một số bài toán phân lớp dữ liệu chuẩn

1.3.1 Cây quyết định (Decision tree)

Cây quyết định là một phương pháp rất mạnh và phổ biến cho cả hai nhiệm

vụ của khai phá dữ liệu là phân lớp và dự đoán Cấu trúc của cây quyết định được biểu diễn dưới dạng cây Trong đó, mỗi nút trong(internal node) biểu diễn một thuộc tính, nhánh (branch) biểu diễn giá trị có thể có của thuộc tính, mỗi

lá (leaf node) biểu diễn các lớp quyết định và đỉnh trên cùng của cây gọi là gốc (root) Cây quyết định có thể được dùng để phân lớp bằng cách xuất phát từ gốc của cây và di chuyển theo các nhánh cho đến khi gặp nút lá Nút lá này sẽ cho biết phần tử dữ liệu đó được gán nhãn lớp nào [21] Trên cơ sở phân lớp này, chúng ta có thể chuyển đổi về các luật quyết định.Một cây quyết định có thể được học bằng cách chia tập hợp nguồn thành các tập con dựa theo một kiểm tra giá trị thuộc tính

Ví dụ sau đây sẽ giải thích về cây quyết định:

Ta có dữ liệu huấn luyện về 14 đối tượng Mỗi đối tượng được mô tả bởi

4 thuộc tính là Thời tiết, Nhiệt độ, Độ ẩm, Gió và 1 thuộc tính phân loại là Chơi golf

Dữ liệu huấn luyện cho biết sự lựa chọn có chơi golf hay không của người chơi dựa vào 4 thuộc tính đã cho:

Thời tiết Nhiệt độ Độ ẩm Gió Chơi golf

Trang 17

Bảng 3 Ví dụ về phân lớp bằng cây quyết định

Để giải quyết bài toán trên, một mô hình cây quyết định được đưa ra để kiểm tra khi nào chơi golf và khi nào không chơi golf:

Hình 3 Phân lớp dữ liệu bằng cây quyết định Việc tạo cây quyết định bao gồm 2 giai đoạn: Tạo cây và tỉa cây Để tạo cây ở thời điểm bắt đầu tất cả những dữ liệu huấn luyện là ở gốc, sau đó phân chia dữ liệu huấn luyện theo cách đệ quy trên thuộc tính được chọn Việc tỉa

Trang 18

1984, một nhĩm các chuyên viên thống kê đã cơng bố cuốn sách Classification and Regression Trees (CART), mơ tả sự phát triển của cây quyết định nhị phân[21].Cĩ rất nhiều thuật tốn phân lớp, nhưng việc chọn thuật tốn nào để

cĩ hiệu quả phân lớp cao phụ thuộc vào rất nhiều yếu tố, trong đĩ, cấu trúc dữ liệu ảnh hưởng rất lớn đến kết quả của các thuật tốn Chẳng hạn như thuật tốn ID3 và CART cho hiệu quả phân lớp cao đối với các trường số liệu (quantitative value), trong khi đĩ, các thuật tốn như J48, C4.5 cĩ hiệu quả cao hơn đối với các dữ liệu (ordinal, binary, nominal)…

1.3.2 Mạng Bayes (Nạve Bayes)

Nạve Bayes là phương pháp phân loại dựa vào xác suất được sử dụng rộng rãi trong lĩnh vực máy học, được sử dụng lần đầu tiên trong lĩnh vực phân loại bởi Maron vào năm 1961, sau đĩ trở nên phổ biến dùng trong nhiều lĩnh vực như trong các cơng cụ tìm kiếm, các bộ lọc email…

Thuật tốn Nạve Bayes dựa trên định lý Bayes được phát biểu như sau:

𝑃(𝑌|𝑋) = 𝑃(𝑋𝑌)

𝑃(𝑋) =

𝑃(𝑋|𝑌)𝑃(𝑌)𝑃(𝑋)

Áp dụng trong bài tốn phân loại, các dữ kiện gồm cĩ:

 D: tập dữ liệu huấn luyện đã được vectơ hĩa dưới dạng:

𝑥⃗ = (𝑥1, 𝑥2, … , 𝑥𝑛)

Ci: phân lớp i, với i = {1,2, ,m}

 Các thuộc tính độc lập điều kiện đơi một với nhau

Theo định lý Bayes: 𝑃(𝐶𝑖|𝑋) = 𝑃(𝑋|𝐶𝑖 )𝑃(𝐶 𝑖 )

𝑃(𝑋)

Trang 19

Các bước thực hiện thuật tốn Nạve Bayes:

Bước 1: Huấn luyện Nạve Bayes (dựa vào tập dữ liệu), tính 𝑃(𝐶𝑖) và 𝑃(𝑥𝑘|𝐶𝑖)

Bước 2: Phân lớp 𝑋𝑛𝑒𝑤 = (𝑥1, 𝑥2, … , 𝑥𝑛), ta cần tính xác suất thuộc từng

phân lớp khi đã biết trước X new X new được gán vào lớp cĩ xác suất lớn nhất theo cơng thức: 𝑚𝑎𝑥

𝐶𝑖∈𝐶(𝑃(𝐶𝑖) ∏𝑛 𝑃(𝑥𝑘|𝐶𝑖)

1.3.3 K-láng giềng gần nhất (K-nearest neighbor)

K-nearest neighbor (KNN) làthuật tốn phân lớp đơn giản, khơng cĩ quá trình học và được sử dụng khá phổ biến trong Data mining Phương pháp này phân lớp các đối tượng dựa khoảng cách Euclid của phần tử cần gán nhãn lớp (Query Point) với tất cả các phần tử dữ liệu trong bộ dữ liệu huấn luyện KNN được khám phá bởi nhiều nhà nghiên cứu trên các lĩnh vực khác nhau, đáng chú ý nhất là Lloyd (1957,1982), Forgey (1965), Friedman và Rubin (1967) và McQueen (1967) [3]

Thuật tốn KNN thực hiện phân lớp một phần tử dựa vào k láng giềng gần nhất của nĩ (k là tham số biết trước của thuật tốn và là số nguyên).Đầu tiên,

ta tính khoảng cách của đối tượng cần phân lớp tới tất cả các phần tử dữ liệu trong bộ dữ liệu huấn luyện Thực hiện sắp xếp các phần tử huấn luyện theo khoảng cách tăng dần và lấy k láng giềng gần nhất Phần tử mới sẽ được gán

Trang 20

ta là ước lượng (hay dự đoán) lớp của Query point dựa vào việc lựa chọn số láng giềng gần nhất với nó Nói các khác, chúng ta muốn biết liệu Query point

sẽ được phân vào lớp (+) hay lớp (-)

1.3.4 Máy vectơ hỗ trợ (Support Vector Machine)

Support Vector Machine (SMV) là kỹ thuật mới đối với việc phân lớp dữ liệu, là phương pháp học sử dụng không gian giả thuyết các hàm tuyến tính trên không gian đặc trưng nhiều chiều, dựa trên lý thuyết tối ưu và lý thuyết thống

kê, được để xuất bởi Vapnik (1995) SVM được ứng dụng thành công trong việc nhận dạng, phân tích dữ liệu, phân loại gen…[5] Trong kỹ thuật SVM không gian dữ liệu nhập ban đầu sẽ đuợc ánh xạ vào không gian đặc trưng và trong không gian đặc trưng này mặt siêu phẳng phân chia tối ưu sẽ được xác định

Ta có tập S gồm e các mẫu học:

𝑆 = {(𝑥1, 𝑦1), (𝑥2, 𝑦2)(𝑥3, 𝑦3) … (𝑥𝑒, 𝑦𝑒)}(𝑋 𝑌)𝑒

Trang 21

21

Với một vectơ đầu vào n chiều xi ∈ Rn thuộc lớp I hoặc lớp II (tương ứng nhãn 𝑦𝑖 = 1 đối với lớp I và 𝑦𝑖 = −1đối với lớp II).Một tập mẫu học được gọi

là tầm thường nếu tất cả các nhãn là bằng nhau

Đối với các dữ liệu phân chia tuyến tính, ta có thể xác định được siêu phẳng 𝑓(𝑥)mà nó có thể chia tập dữ liệu.Khi đó, với mỗi siêu phẳng nhận được

ta có𝑓(𝑥) ≥ 0 nếu đầu vào x thuộc lớp dương và f(x) < 0 nếu x thuộc lớp

âm 𝑓(𝑥) = 𝑤 𝑥 + 𝑏 = ∑𝑛𝑗=1𝑤𝑖𝑥𝑖 + 𝑏

𝑦𝑖𝑓(𝑥𝑖) = 𝑦𝑖(𝑤 𝑥𝑖 + 𝑏) ≥ 0, 𝑖 = 1, , 𝑙 Trong đó: w là vectơ pháp tuyến n chiều và b là giá trị ngưỡng

Vectơ pháp tuyến w xác định chiều của siêu phẳng 𝑓(𝑥), còn giá trị ngưỡng b xác định khoảng cách giữa siêu phẳng gốc

Hình 5 Ví dụ về phân lớp dữ liệu bằng SMV Xét một ví dụ về bài toàn phân lớp như hình trên, ở đó ta phải tìm một đường thẳng sao cho bên trái nó toàn là các điểm đỏ, bên phải nó toàn là các điểm xanh Bài toán dùng đường thẳng để phân chia này được gọi là phân lớp tuyến tính (linear classification)

Trang 22

22

SVM tiếp cận giải quyết vấn đề thông qua khái niệm gọi là lề, đường biên (margin)… Lề được chọn là khoảng cách nhỏ nhất từ đường phân cách đến mọi điểm dữ liệu hay là khoảng cách từ đường phân cách đến điểm gần nhất [7]

Hình 6 Đường biên trong SMV Trong SVM, đường phân lớp tốt nhất chính là đường có khoảng cách margin lớn nhất (tức là sẽ tồn tại rất nhiều đường phân cách, xoay theo các phương khác nhau, và ta chọn ra đường phân cách có khoảng cách margin là lớn nhất)

Hình 7 Minh họa kỹ thuật phân lớp bằng SMV

Trang 23

23

SVM có xu hướng ít gặp phải vấn đề mất cân bằng lớp so với cách thuật toán học phân lớp khác, bởi đường ranh giới giữa các lớp được tính toán, chỉ với vài vectơ hỗ trợ và kích cỡ lớp có lẽ không ảnh hướng quá nhiều đến đường phân lớp Tuy nhiên, một số công trình nghiên cứu đã chỉ ra rằng SMV có thể không đạt được hiệu quả trong việc xác định đường phân lớp khi lớp được phân bố quá lệch SVM chỉ đơn giản là học cách phân loại mọi thứ như các lớp phổ biến để tạo nên đường biên lớn nhất và lỗi tối thiểu

Ta thấy rằng, với các tập dữ liệu của các bài toán phân lớp như vậy sẽ làm cho mô hình học phân lớp gặp rất nhiều khó khăn trong việc phân lớp cho dữ liệu của lớp thiểu số Chính vì vậy, cần phải có những hướng tiếp cận đối trong việc khai phá dữ liệu, đặc biệt là những bộ dữ liệu mất cân bằng

Trang 24

24

CHƯƠNG 2: PHƯƠNG PHÁP MỚI DỰA TRÊN ĐƯỜNG BIÊN

VÀ VÙNG AN TOÀN NÂNG CAO HIỆU QUẢ PHÂN LỚPDỮ LIỆU

vụ lọc, phân loại văn bản, học phát âm từ…[16] Từ các khía cạnh của từng ứng dụng, tính chất của vấn đề mất cân bằng được chia làm hai trường hợp: Dữ liệu

bị mất cân bằng một cách tự nhiên hoặc dữ liệu mất cân bằng không tự nhiên nhưng nó quá tốn kém để đạt được dữ liệu của phân lớp thiểu số

Một số giải pháp cho vấn đề mất cân bằng lớp được đưa ra là dựa trên mức

độ dữ liệu và mức độ thuật toán Ở cấp độ dữ liệu, mục đích là để cân bằng sự phân bố các lớp bởi việc điều chỉnh mẫu vùng dữ liệu Ở cấp độ thuật toán, các giải pháp cố gắng thích ứng sự tồn tại các thuật toán học phân lớp để tăng cường việc học với các mẫu trong phân lớp thiểu số [21]

2.1.1 Phương pháp tiếp cận trên mức độ dữ liệu

Điều chỉnh mẫu là một phương pháp thường được sử dụng trong việc xử

lý vấn đề mất cân bằng lớp, tuy nhiên vấn đề được đưa ra là điều gì hoặc làm cách nào để quyết định sự phân bố lớp tối ưu cho một tập dữ liệu

Tăng kích thước mẫu là làm cho số lượng các phần tử ở lớp thiểu số tăng lên nhằm giảm sự chênh lệch dữ liệu giữa hai phân lớp Giải pháp này này bao gồm nhiều hình thức khác nhau của lấy mẫu như: Sinh thêm phần tử ngẫu nhiên; Sinh thêm phần tử ngẫu nhiên để thay thế; Định hướng sinh thêm phần tử, tức

Trang 25

25

là, không có mẫu mới được tạo nên, nhưng sự chọn lựa các mẫu để thay thế này được biết trước chứ không phải ngẫu nhiên;Sinh thêm phần tử với sự sinh ra được thông báo của các mẫu mới; Hoặc sinh phần tử có chủ đích: tăng phần tử thiểu số ở vùng an toàn (Safe-level), tăng phần tử ở đường biên (Borderline)…[18] Bên cạnh đó, còn có phương pháp tăng kích thước mẫu bằng cách sinh ra các phần tử nhân tạo và gán nhãn cho phần tử đó thuộc lớp thiểu số.SMOTE là thuật toán sinh thêm các phần tử nhân tạo đầu tiên và qua thực nghiệm đã chứng minh được hiệu quả của nó[13] Đã có nhiều thuật toán được cải tiến từ SMOTE như Borderline-SMOTE[11], Safe-level-SMOTE[4]hoặc kết hợp SMOTE với các phương pháp khác

Giảm kích thước mẫu là việc loại bỏ các phần tử ở lớp đa số, làm cho số lượng các phần tử ở hai phân lớp giảm bớt tính mất cân bằng Cách thức đơn giản nhất của phương pháp này là loại bỏ ngẫu nhiên các phần tử thuộc lớp đa

số mà không cần bất cứ điều kiện gì Tuy nhiên, trong quá trình loại bỏ ngẫu nhiên, có thể một số phần tử dữ liệu có giá trị bị xóa bỏ mất, gây thiếu thông tin và số lượng các phần tử của lớp tập huấn bị giảm đáng kể, ảnh hưởng không tốt nhỏ tới hiệu quả phân lớp Ngoài ra, còn có một số phương pháp giảm số lượng mẫu có chủ đích như giảm phần tử nhiễu ở lớp đa số, với mỗi phương pháp lại có những định nghĩa khác nhau về phần tử nhiễu Tiêu biểu như một

số thuật toán đã được công bố sau: Condensed Nearest Neighbor Rule (CNN), Neighborhood Cleaning Rule (NCL), Edited Nearest Neighbor Rule (ENN), Tomek links [19]

Như vậy, việc thay đổi phân bố lớp có thể thực hiện bằng nhiều cách như tăng phần tử lớp thiểu số, giảm phần tử lớp đa số, kết hợp vừa sinh thêm phần

tử lớp thiểu số vừa loại bỏ phần tử lớp đa số hoặc một số phương pháp nâng cao khác

Trang 26

26

2.1.2 Phương pháp tiếp cận trên mức độ thuật toán

Bên cạnh phương pháp điều chỉnh mẫu, việc điều chỉnh thuật toán phân lớp sao cho hiệu quả đối với việc học những bộ dữ liệu mất cân bằng cũng là phương pháp cải thiện hiệu quả của việc phân lớp tối ưu

Ở cấp độ thuật toán, các giải thuật bao gồm điều chỉnh các chi phí của các lớp khác nhau để chống lại mất cân bằng lớp, điều chỉnh dự đoán xác suất tại mỗi lá cây (khi làm việc với cây quyết định), điều chỉnh ngưỡng quyết định và dựa vào sự đoán nhận (học từ một lớp), hơn là học không dựa trên phân biệt (hai lớp) Các phương pháp Mixtune-of-experts (phương pháp kết hợp) được giao dịch quốc tế GESTS trong kỹ thuật khoa học máy tính [14] sử dụng để xử

lý các vấn đề mất cân bằng lớp Phương pháp này kết hợp các kết quả của nhiều lớp; mỗi kết quả thường tạo ra sao khi sinh thêm dữ liệu hoặc giảm bớt dữ liệu với các tỉ lệ sinh (giảm) mẫu khác nhau

Chiến lược chung để giải quyết vấn đề mất cân bằng lớp là chọn một hướng quy nạp thích hợp Đối với cây quyết định, một cách tiếp cận là điều chỉnh sự dự đoán vào lá cây; một cách tiếp cận khác là phát triển những kỹ thuật cắt xén mới Đối với SMV, đề nghị như việc sử dụng các hằng số khác nhau cho các lớp khác nhau, hoặc điều chỉnh đường phân lớp.Đối với sự kết hợp các luật khai phá, nhiều hỗ trợ tối thiểu cho các lớp khác nhau được thiết lập để phản ánh các tần số khác nhau trong cơ sở dữ liệu

Ngoài ra, còn có phương pháp tiếp cận dựa trên học một lớp nghĩa là mô hình được xây dựng chỉ mô tả một lớp mục tiêu hay chỉ học dựa trên các phần

tử dữ liệu của lớp mục tiêu [21] Phương pháp này không tìm ra ranh giới để phân biệt các phần tử giữa các lớp mà chỉ cố gắng tìm ra đường biên bao quanh lớp mục tiêu Với mục tiêu phân lớp như vậy, nó thực hiện đo sự tương tự của phần tử cần xác định nhãn lớp với các phần tử lớp mục tiêu Hai thuật toán học phân lớp được học trong ngữ cảnh sự tiếp cận vấn đề học trên một lớp tiêu biểu

Ngày đăng: 20/02/2019, 08:39

TỪ KHÓA LIÊN QUAN

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

w