CHƯƠNG 2 Các mô hình phân lớp dữ liệu

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

CHƯƠNG 2: CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU

2.1. Các mô hình phân lớp dữ liệu:


Phân lớp dữ liệu (clasification) là một trong các hướng nghiên cứu chính
của việc khai phá dữ liệu. Ban đầu, tập dữ liệu có cấu trúc, nó được mô tả bằng
các thuộc tính và được tạo ra từ các bộ giá trị có thuộc tính đó. Một bộ giá trị sẽ
được coi là một phần tử của dữ liệu, ngoài ra còn thể thể là các mẫu, đối
tượng,... Trong tập dữ liệu này, mỗi phần tử dữ liệu thuộc về một lớp định
trước, lớp ở đây có nghĩa là các giá trị của một thuộc tính được chọn làm các
thuộc tính gắn nhãn hay còn gọi là các thuộc tính phân lớp. Sau đó, sử dụng các
quy tắc phân lớp dưới dạng if – then, cây quyết định (Decision tree), hồi quy
logistic (Regression Logistic), Mạng lưới Neural (Neural Network),…
2.1.1. Mô hình Logistic Regression:
Phương pháp hồi quy Logistic (Logistic Regression) là một mô hình xác
suất dự đoán giá trị đầu ra rời rạc (discrete target variable) từ một tập các giá
trị đầu vào (được thể hiện dưới dạng vector). Phương pháp này được sử dụng
để dự đoán xác suất của quan sát vào các loại biến phụ thuộc hay một hoặc
nhiều biến độc lập có thể các biến này là liên tục hay được phân loại.
Chúng ta có thể biểu diễn công thức của phương pháp hồi quy Logistic
như sau:
d
z=∑ wi xi
i=0

1
P ( y )=sigmoid ( z ) =
1+ e− z
Trong đó:
d là số lượng thuộc tính của dữ liệu.
w là trọng số, ban đầu sẽ được khởi tạo ngẫu nhiên, sau đó sẽ được điều chỉnh
lại cho phù hợp.
Hình 1. Mô hình phân lớp nhị phân sử dụng phương pháp hồi quy logistic

Nguồn: Tác giả tổng hợp


2.1.2. Mô Hình Decision Tree
Mô hình Decision Tree (Cây quyết định) là một cây phân cấp có cấu trúc
được dùng để phân lớp các đối tượng dựa vào dãy các luật. Các thuộc tính của
đối tượng có thể thuộc các kiểu dữ liệu khác nhau như Nhị phân (Binary) ,
Định danh (Nominal), Thứ tự (Ordinal), Số lượng (Quantitative) trong khi đó
thuộc tính phân lớp phải có kiểu dữ liệu là Binary hoặc Ordinal.
Ưu điểm:
- Dễ hiểu
- Không đòi hỏi việc chuẩn hóa dữ liệu
- Có thể xử lý trên nhiều kiểu dữ liệu khác nhau
- Xử lý tốt một lượng dữ liệu lớn trong thời gian ngắn
Khuyết điểm:
- Khó giải quyết trong tình huống dữ liệu phụ thuộc thời gian
- Chi phí xây dựng mô hình cao
Hình 2: Mô Hình Decision Tree

Nguồn: Tác giả tổng hợp


2.1.3. Mô Hình Support Vector Machine
SVM là một thuật toán giám sát, nhưng hầu như nó được dùng cho phân
loại. Ở thuật toán này, chúng ta sẽ vẽ đi đồ thị dữ liệu là các điểm trong chiều
(ta xác định là các tính năng mà chúng ta có sẵn) với giá trị của mỗi tính năng
sẽ là một phần liên kết.
SVM nhận dữ liệu vào, xem các dữ liệu đầu vào là các vector không gian,
sau đó chúng được phân loại vào các lớp khác nhau thông qua cơ chế xây dựng
một siêu phẳng trong không gian nhiều chiều làm mặt phân cách các lớp dữ
liệu.
Để chúng ta có thể tối ưu được kết quả phân lớp thì phải xác định siêu
phẳng (hyperplane) có khoảng cách đến các điểm dữ liệu (margin) của tất cả
các lớp xa nhất có thể.
SVM có nhiều dạng phù hợp với nhiều bài toán về phân loại. Để hiểu rõ
sâu hơn, chúng ta đi tìm các khái niệm về Margin cũng như là Support Vector.
Margin: là khoảng cách giữa siêu phẳng trong trường hợp không gian hai
chiều là đường thẳng đến hai điểm dữ liệu gần nhất tương ứng với hai phân
lớp.
SVM tối ưu bằng cách tối đa hóa giá trị margin này, từ đó sẽ tìm ra một
siêu phằng đẹp nhất và thích hợp nhất cho phân hai lớp dữ liệu. Vì thế, SVM
có thể làm giảm thiếu việc phân lớp bị sai (misclassification) đối với dữ liệu
điểm mới đưa vào.
Support Vectors: bài toán của chúng ta trở thành tìm ra 2 đường biên của
2 lớp dữ liệu sao cho khoảng cách giữa 2 đường này là lớn nhất. Siêu phẳng
cách đều 2 biên đó chính là siêu phẳng cần tìm. Các điểm xanh, đỏ nằm trên
hai đường biên (màu xanh lá) được gọi là các support vector, vì chúng có
nhiệm vụ hỗ trợ để tìm ra siêu phẳng (màu cam).
Hình 3: Hình ảnh minh họa Margin và Support Vectors

Nguồn: Tác giả tổng hợp

2.1.4. Mô Hình Neural Network


Neural Network còn có tên gọi khác là Mạng Neural nhân tạo là một chuỗi
thuật toán được đưa ra để dùng xác định các mối quan hệ trong tập hợp các dự
liệu cụ thể, thông qua việc bắt chước bộ não của con người. Nói một cách dễ
hiểu hơn có thể là nhân tạo về bản chất. Neural Network có khả năng tương
thích với mọi thứ ngay từ khi chúng ta thay đổi dữ liệu đầu vào. Nó có thể đưa
ra các kết quả một cách tốt nhất mà chúng ta không cần phải xây dựng các tiêu
chí đầu ra.
2.2. Quy Trình Phân Lớp Dữ Liệu
2.2.1. Phân Lớp Dữ Liệu
Phân lớp dữ liệu là quá trình phân các đối tượng vào một hay nhiều lớp đã
cho trước nhờ vào một mô hình phân lớp. Mô hình này được xây dựng dựa trên
một tập dữ liệu đã được gán nhãn trước đó (thuộc về lớp nào).
Quá trình gán nhãn cho đối tượng dữ liệu chính là quá trình phân lớp dữ
liệu. Phân lớp và dự đoán là một trong hai dạng của phân tích dữ liệu nhằm rút
ra một mô hình mô tả các lớp dữ liệu quan trọng hoặc dự đoán xu hướng của
dữ liệu trong tương lai.
Quy trình phân lớp dữ liệu gồm hai bước như sau:
- Bước 1: Xây dựng mô hình phân lớp (Learning)
Quá trình huấn luyện nhằm xây dựng một mô hình mô tả một tập dữ liệu sẵn
có.
+ Đầu vào của quá trình này là một tập dữ liệu mẫu đã được gán nhãn và tiền
xử lý, mỗi phần tử dữ liệu được giả định thuộc về một lớp phân trước, lớp ở
đây là giá trị của một thuộc tính được chọn làm thuộc tính gán nhãn hay thuộc
tính phân lớp. Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu, có thể là
các mẫu, ví dụ, đối tượng, hay trường hợp.
+ Kết quả của bước này là mô hình phân lớp đã được huấn luyện.
Hình 4: Mô hình phân lớp đã được huấn luyện

Nguồn: Nguyễn Thị Thùy Linh – Trường Đại học Công Nghệ (Đại học Quốc
Gia Hà Nội)
- Bước 2: Sử dụng mô hình, được chia thành 2 bước nhỏ:
 Bước 2.1: Đánh giá mô hình (kiểm tra tính đúng đắn của mô hình)
+ Đầu vào là một tập dữ liệu mẫu được chọn ngẫu nhiên và độc lập với các
mẫu trong tập dữ liệu huấn luyện, cũng đã được gán nhãn và tiền xử lý. Tuy
nhiên thuộc tính đã được gán nhãn này bị “lờ” khi được đưa vào mô hình tiến
hành phân lớp.
+ Bằng cách so sánh thuộc tính gán nhãn của dữ liệu đầu vào và kết quả phân
lớp từ mô hình, ta dễ dàng xác định được tính đúng đắn của mô hình. Holdout
là một kỹ thuật đơn giản để ước lượng tính đúng đắn này dựa trên tỷ lệ phần
trăm các các mẫu trong tập dữ liệu dự báo được mô hình phân lớp đúng (so với
thực tế). Kết quả của bước này là mô hình sẽ được sử dụng để phân lớp những
dữ liệu cần thiết trong tương lai, hoặc những dữ liệu mà giá trị của thuộc tính
phân lớp là chưa biết nếu của mô hình phù hợp và có độ chính xác cao.
Hình 6: Mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết
trong tương lai

Kết quả phân


lớp

Thuộc tính bị “lờ”


đi – Trường Đại học Công Nghệ (Đại học Quốc
Nguồn: Nguyễn Thị Thùy Linh
Gia Hà Nội)
 Bước 2.2: Phân lớp dữ liệu mới
+ Ở bước này, dữ liệu đầu vào là dữ liệu “khuyết” thuộc tính cần dự đoán lớp
(nhãn).
+Mô hình sẽ tự động phân lớp (gán nhãn) cho các đối tượng dữ liệu này dựa
vào những gì được huấn luyện ở bước 1.

Nguồn: Nguyễn Thị Thùy Linh – Trường Đại học Công Nghệ (Đại học Quốc
Gia Hà Nội)
2.2.2. Đánh Giá Tính Hiệu Quả
Các phương pháp đánh giá mô hình phân lớp dùng để kiểm tra tính hiệu
quả của mô hình phân lớp trên dữ liệu có đặc thù cụ thể, từ đó quyết định có sử
dụng mô hình đó hay không.
Một mô hình lý tưởng là một mô hình không quá đơn giản, không quá
phức tạp và không quá nhạy cảm với nhiễu (tránh underfitting và overfitting).
Good fitting: là trường hợp mô hình cho ra kết quả hợp lý với cả tập dữ liệu
huấn luyện và các giá trị mới, tức mang tính tổng quát. Ngoài thực tế, mô hình
tốt là mô hình cho kết quả hợp lý một cách chấp nhận được trên dữ liệu mẫu
lẫn dữ liệu mới.

Trong tất cả các giả thiết có thể giải thích được một hiện tượng, ta nên chọn giả
thiết đơn giản nhất (Occam’s Razor).
=> Do đó trong tất cả các model “đúng”, chọn model đơn giản nhất.
Underfitting (chưa khớp): Mô hình được coi là chưa khớp nếu nó chưa phù
hợp với tập dữ liệu huấn luyện vá cả các mẫu mới khi dự đoán. Nguyên nhân
có thể là do mô hình chưa đủ độ phức tạp cần thiết để bao quát được tập dữ
liệu. Tồn tại nhiều điểm dữ liệu mà mô hình không phân loại được đúng dẫn
đến độ chính xác mô hình thấp.

Overfitting (quá khớp): là hiện tượng mô hình tìm được quá khớp với dữ liệu
huấn luyện. Điều này dẫn đến việc dự đoán cả nhiễu nên mô hình không còn tốt
khi phân lớp trên dữ liệu mới. Quá khớp xảy ra khi lượng dữ liệu huấn luyện
quá nhỏ trong khi độ phức tạp của mô hình quá cao nên mặc dù độ chính xác
cao nhưng không thể mô tả được xu hướng tổng quát của dữ liệu mới (Còn
được gọi là High Variance).

You might also like