You are on page 1of 112

KHOA HỌC DỮ LIỆU TRONG

PHÂN TÍCH KINH DOANH


HỌC MÁY CƠ BẢN

TS. TRỊNH HOÀNG NAM


NỘI DUNG
• Tổng quan về học máy
• Các công cụ học có giám sát
• Các công cụ học không có giám sát
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
TỔNG QUAN VỀ HỌC MÁY
• Tổng quan về học máy
– Một lĩnh vực nhỏ của Khoa học máy tính
– Một lĩnh vực nghiên cứu của Trí tuệ nhân tạo

• Các định nghĩa về học máy


Học máy cơ bản

– Một quá trình nhờ đó một hệ thống cải thiện hiệu suất (hiệu
quả hoạt động) của nó [Simon, 1983]
– Một quá trình mà một chương trình máy tính cải thiện hiệu
suất của nó trong một công việc thông qua kinh nghiệm
[Mitchell, 1997]

– Việc lập trình các máy tính để tối ưu hóa một tiêu chí hiệu
suất dựa trên các dữ liệu mẫu hoặc kinh nghiệm trong quá
khứ [Alpaydin, 2020]
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
TỔNG QUAN VỀ HỌC MÁY
• Tổng quan về học máy
– Một lĩnh vực nhỏ của Khoa học máy tính
– Một lĩnh vực nghiên cứu của Trí tuệ nhân tạo

• Biểu diễn một bài toán học máy


Học máy cơ bản

Học máy = Cải thiện hiệu quả một công việc thông
qua kinh nghiệm
– Một công việc (nhiệm vụ) T
– Đối với các tiêu chí đánh giá hiệu năng P
– Thông qua (sử dụng) kinh nghiệm E
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MỘT SỐ VÍ DỤ VỀ HỌC MÁY
• Lọc thư rác
• Phân loại trang web
• Tư vấn đầu tư chứng khoán
Học máy cơ bản

• Dự đoán rủi ro cho vay tài chính

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC ỨNG DỤNG CỦA HỌC MÁY
• Tương tác người - máy
• Giải trí
• Giao thông
Học máy cơ bản

• Thương mại điện tử


• An ninh, an toàn hệ thống
• Quảng cáo

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ TRÌNH HỌC MÁY
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC THÀNH PHẦN CHÍNH (1)
• Lựa chọn các ví dụ học (training/learning examples)
– Các thông tin hướng dẫn quá trình học (training feedback) được
chứa ngay trong các ví dụ học, hay là được cung cấp gián tiếp (vd:
từ môi trường hoạt động)
– Các ví dụ học theo kiểu có giám sát (supervised) hay không có
Học máy cơ bản

giám sát (unsupervised)


– Các ví dụ học phải tương thích với (đại diện cho) các ví dụ sẽ được
sử dụng bởi hệ thống trong tương lai (future test examples)

• Xác định hàm mục tiêu (giả thiết, khái niệm) cần học
– F: X → {0,1}
– F: X → Một tập các nhãn lớp
– F: X → R+ (miền các giá trị số thực dương)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC THÀNH PHẦN CHÍNH (2)
• Lựa chọn cách biểu diễn cho hàm mục tiêu cần học
– Hàm đa thức (a polynomial function)
– Một tập các luật (a set of rules)
– Một cây quyết định (a decision tree)
Học máy cơ bản

– Một mạng nơ-ron nhân tạo (an artificial neural network)


• Lựa chọn một giải thuật học máy có thể học (xấp xỉ)
được hàm mục tiêu
– Phương pháp học hồi quy (Regression-based)
– Phương pháp học quy nạp luật (Rule induction)
– Phương pháp học cây quyết định (ID3 hoặc C4.5)
– Phương pháp học lan truyền ngược (Back-propagation
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC VẤN ĐỀ TRONG HỌC MÁY (1)
• Giải thuật học máy (Learning algorithm)
– Những giải thuật học máy nào có thể học (xấp xỉ) một
hàm mục tiêu cần học?
– Với những điều kiện nào, một giải thuật học máy đã
Học máy cơ bản

chọn sẽ hội tụ (tiệm cận) hàm mục tiêu cần học?


– Đối với một lĩnh vực bài toán cụ thể và đối với một cách
biểu diễn các ví dụ (đối tượng) cụ thể, giải thuật học
máy nào thực hiện tốt nhất?

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC VẤN ĐỀ TRONG HỌC MÁY (2)
• Các ví dụ học (Training examples)
– Bao nhiêu ví dụ học là đủ?
– Kích thước của tập học (tập huấn luyện) ảnh hưởng thế
nào đối với độ chính xác của hàm mục tiêu học được?
Học máy cơ bản

– Các ví dụ lỗi (nhiễu) và/hoặc các ví dụ thiếu giá trị thuộc


tính (missing-value) ảnh hưởng thế nào đối với độ chính
xác?

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC VẤN ĐỀ TRONG HỌC MÁY (3)
• Quá trình học (Learning process)
– Chiến lược tối ưu cho việc lựa chọn thứ tự sử dụng
(khai thác) các ví dụ học?
– Các chiến lược lựa chọn này làm thay đổi mức độ phức
Học máy cơ bản

tạp của bài toán học máy như thế nào?


– Các tri thức cụ thể của bài toán thực tế (ngoài các ví dụ
học) có thể đóng góp thế nào đối với quá trình học?

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC VẤN ĐỀ TRONG HỌC MÁY (4)
• Khả năng/giới hạn học (Learning capability)
– Hàm mục tiêu nào mà hệ thống cần học?
• Biểu diễn hàm mục tiêu: Khả năng biểu diễn (vd: hàm tuyến tính / hàm phi
tuyến) vs. Độ phức tạp của giải thuật và quá trình học

– Các giới hạn đối với khả năng học của các giải thuật học máy?
Học máy cơ bản

– Khả năng khái quát hóa (generalization) của hệ thống từ các ví dụ


học?
• Vấn đề “học chưa khớp” (under-fitting)
• Vấn đề “học quá khớp” (over-fitting)

– Khả năng hệ thống tự động thay đổi (thích nghi) biểu diễn (cấu trúc)
bên trong của nó?
• Để cải thiện khả năng (của hệ thống đối với việc) biểu diễn và học hàm
mục tiêu

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC VẤN ĐỀ TRONG HỌC MÁY (5)
• (WHEN) Khi nào một mô hình (đã được huấn luyện
trước đó) cần được huấn luyện lại?
– Mô hình đã huấn luyện hoạt động (rất) tốt đối với các ví
dụ cũ
Học máy cơ bản

– Nhưng đến một thời điểm nhất định, mô hình đó hoạt


động kém đi (rất) đáng kể đối với các ví dụ mới đưa vào
hệ thống

• (HOW) Một mô hình (đã được huấn luyện trước đó)


nên được huấn luyện lại như thế nào?
– Để phù hợp (thích nghi) với các ví dụ mới đưa vào hệ
thống

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
PHÂN LOẠI GIẢI THUẬT HỌC MÁY
• Học có giám sát
– Supervised learning là thuật toán dự đoán đầu ra
(outcome) của một dữ liệu mới (new input) dựa trên các
cặp (input, outcome) đã biết từ trước. Cặp dữ liệu này
Học máy cơ bản

còn được gọi là (data, label), tức (dữ liệu, nhãn).

• Học không có giám sát


– Thuật toán unsupervised learning sẽ dựa vào cấu trúc
của dữ liệu để thực hiện một công việc nào đó, ví dụ
như phân nhóm (clustering) hoặc giảm số chiều của dữ
liệu (dimension reduction) để thuận tiện trong việc lưu
trữ và tính toán.
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Tổng quan
– Việc đánh giá hiệu năng của hệ thống học máy (hoặc
khai phá dữ liệu) thường được thực hiện dựa trên thực
nghiệm, hơn là dựa trên phân tích
Học máy cơ bản

• Các đánh giá phân tích (analytical evaluation) nhằm chứng


minh một hệ thống là đúng đắn và hoàn chỉnh
• Không thể xây dựng một đặc tả (định nghĩa) hình thức của vấn
đề mà một hệ thống học máy giải quyết
– Đối với bài toán học máy, tính đúng đắn và tính hoàn chỉnh là gì?

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Tổng quan
– Tập trung vào việc đánh giá hiệu năng của hệ thống
• Thực hiện một cách tự động bởi hệ thống, sử dụng một tập các ví
dụ (test set)
• Không cần sự tham gia (can thiệp) của người dùng
Học máy cơ bản

• Các phương pháp đánh giá


– Làm sao có được một đánh giá đáng tin cậy về hiệu năng
của hệ thống?
• Các tiêu chí đánh giá (evaluation metrics)
– Làm sao để đo (tính toán) hiệu năng của hệ thống?
– Khác nhau đối với các kiểu bài toán (hồi quy, phân cụm,
phân loại, phát hiện luật kết hợp)
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Các phương pháp đánh giá
– Làm thế nào để thu được một đánh giá đáng tin cậy về hiệu
năng của hệ thống?
• Tập huấn luyện càng lớn, thì hiệu năng của hệ thống càng tốt
• Tập kiểm thử càng lớn, thì việc đánh giá càng chính xác
Học máy cơ bản

• Tuy nhiên, rất khó (ít khi) có thể có được các tập dữ liệu (rất) lớn
– Hiệu năng của hệ thống không chỉ phụ thuộc vào giải thuật
được sử dụng, mà còn phụ thuộc vào:
• Phân bố lớp (Class distribution)
• Chi phí của việc phân lớp sai (Cost of misclassification)
• Kích thước của tập huấn luyện (Size of the training set)
• Kích thước của tập kiểm thử (Size of the test set)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Các phương pháp đánh giá
– Hold-out (Splitting)
– Stratified sampling
Học máy cơ bản

– Repeated hold-out
– Cross-validation
• k-fold
• Leave-one-out

– Bootstrap sampling

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Hold-out (Splitting)”
– Toàn bộ tập ví dụ D được chia thành 2 tập con không giao nhau
• Tập huấn luyện D_train – để huấn luyện hệ thống
• Tập kiểm thử D_test – để đánh giá hiệu năng của hệ thống
– D = D_train  D_test
Học máy cơ bản

– |D_train| >> |D_test|

– Các yêu cầu


• Bất kỳ ví dụ nào thuộc vào tập kiểm thử D_test đều không được sử dụng trong
quá trình huấn luyện hệ thống
• Bất kỳ ví dụ nào được sử dụng trong giai đoạn huấn luyện hệ thống đều không
được sử dụng trong giai đoạn đánh giá hệ thống
• Các ví dụ kiểm thử trong D_test cho phép một đánh giá không thiên vị đối với
hiệu năng của hệ thống
– Các lựa chọn thường gặp: |D_train|=(2/3).|D|, |D_test|=(1/3).|D|
– Phù hợp khi tập ví dụ D có kích thước lớn

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Stratified sampling”
– Đối với các tập ví dụ có kích thước nhỏ hoặc không cân
xứng (unbalanced datasets), các ví dụ trong tập huấn luyện
và thử nghiệm có thể không phải là đại diện
– Mục tiêu: Phân bố lớp (class distribution) trong tập huấn
Học máy cơ bản

luyện và tập kiểm thử phải xấp xỉ như trong tập toàn bộ các
ví dụ (D)
– Lấy mẫu phân tầng (Stratified sampling)
• Là một phương pháp để cân xứng (về phân bố lớp)
• Đảm bảo tỷ lệ phân bố lớp (tỷ lệ các ví dụ giữa các lớp) trong tập
huấn luyện và tập kiểm thử là xấp xỉ nhau
– Phương pháp lấy mẫu phân tầng không áp dụng được cho
bài toán hồi quy (vì giá trị đầu ra của hệ thống là một giá trị
số, không phải là một nhãn lớp)
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Repeated hold-out”
– Áp dụng phương pháp đánh giá Hold-out nhiều lần, để sinh
ra (sử dụng) các tập huấn luyện và thử nghiệm khác nhau
• Trong mỗi bước lặp, một tỷ lệ nhất định của tập D được lựa chọn
ngẫu nhiên để tạo nên tập huấn luyện (có thể sử dụng kết hợp với
Học máy cơ bản

phương pháp lấy mẫu phân tầng – stratified sampling)


• Các giá trị lỗi (hoặc các giá trị đối với các tiêu chí đánh giá khác)
thu được trong các bước lặp này được lấy trung bình cộng
(averaged) để xác định giá trị lỗi tổng thể
– Phương pháp này vẫn không hoàn hảo
• Mỗi bước lặp sử dụng một tập kiểm thử khác nhau
• Có một số ví dụ trùng lặp (được sử dụng lại nhiều lần) trong các
tập kiểm thử này

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Cross-validation“
– Để tránh việc trùng lặp giữa các tập kiểm thử (một số ví dụ cùng
xuất hiện trong các tập kiểm thử khác nhau)
– k-fold cross-validation
• Tập toàn bộ các ví dụ D được chia thành k tập con không giao nhau (gọi là
Học máy cơ bản

“fold”) có kích thước xấp xỉ nhau


• Mỗi lần (trong số k lần) lặp, một tập con được sử dụng làm tập kiểm thử,
và (k-1) tập con còn lại được dùng làm tập huấn luyện
• k giá trị lỗi (mỗi giá trị tương ứng với một fold) được tính trung bình cộng
để thu được giá trị lỗi tổng thể
– Các lựa chọn thông thường của k: 10, hoặc 5
– Thông thường, mỗi tập con (fold) được lấy mẫu phân tầng (xấp xỉ
phân bố lớp) trước khi áp dụng quá trình đánh giá Cross-validation
– Phù hợp khi ta có tập ví dụ D vừa và nhỏ

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Cross-validation“
– Leave-one-out cross-validation
• Một trường hợp (kiểu) của phương pháp Cross-validation
• Số lượng các nhóm (folds) bằng kích thước của tập dữ liệu (k=|D|)
Học máy cơ bản

• Mỗi nhóm (fold) chỉ bao gồm một ví dụ


• Khai thác tối đa (triệt để) tập ví dụ ban đầu
• Không hề có bước lấy mẫu ngẫu nhiên (no random sub sampling)
• Áp dụng lấy mẫu phân tầng (stratification) không phù hợp
→ Vì ở mỗi bước lặp, tập thử nghiệm chỉ gồm có một ví dụ

• Chi phí tính toán (rất) cao


• Phù hợp khi ta có một tập ví dụ D (rất) nhỏ

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Bootstrap sampling”
– Sử dụng việc lấy mẫu có lặp lại (sampling with
replacement) để tạo nên tập huấn luyện
• Giả sử tập toàn bộ D bao gồm n ví dụ
Học máy cơ bản

• Lấy mẫu có lặp lại n lần đối với tập D, để tạo nên tập huấn
luyện D_train gồm n ví dụ
– Từ tập D, lấy ra ngẫu nhiên một ví dụ x (nhưng không loại bỏ x khỏi tập D)
– Đưa ví dụ x vào trong tập huấn luyện: D_train = D_train  x
– Lặp lại 2 bước trên n lần

• Sử dụng tập D_train để huấn luyện hệ thống


• Sử dụng tất cả các ví dụ thuộc D nhưng không thuộc D_train để
tạo nên tập thử nghiệm: D_test = {zD; zD_train}

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Bootstrap sampling”
1
– Trong mỗi bước lặp, một ví dụ có xác suất (1 − ) để không được
𝑛
lựa chọn đưa vào tập huấn luyện
– Vì vậy, xác suất để một ví dụ (sau quá trình lấy mẫu lặp lại –
bootstrap sampling) được đưa vào tập kiểm thử là:
Học máy cơ bản

1 𝑛
(1 − ) ≈ 𝑒 −1 ≈ 0.368
𝑛
– Có nghĩa rằng:
• Tập huấn luyện (có kích thước =n) bao gồm xấp xỉ 63.2% các ví dụ trong D
(Lưu ý: Một ví dụ thuộc tập D có thể xuất hiện nhiều lần trong tập D_train)
• Tập kiểm thử (có kích thước <n) bao gồm xấp xỉ 36.8% các ví dụ trong D
(Lưu ý: Một ví dụ thuộc tập D chỉ có thể xuất hiện tối đa 1 lần trong tập
D_test)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
ĐÁNH GIÁ HIỆU NĂNG CỦA HỆ THỐNG
• Phương pháp “Bootstrap sampling”
– Các lưu ý quan trọng:
• Tập huấn luyện D_train có kích thước n, và một ví dụ thuộc tập
dữ liệu ban đầu D có thể xuất hiện nhiều lần trong tập huấn
Học máy cơ bản

luyện
• Tập kiểm thử D_test có kích thước <n, và một ví dụ thuộc tập
dữ liệu ban đầu D chỉ có thể xuất hiện tối đa 1 lần trong tập
kiểm thử

– Phù hợp với tập dữ liệu D (rất) nhỏ

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Tính chính xác (Accuracy)
– Mức độ dự đoán (phân lớp) chính xác của hệ thống (đã
được huấn luyện) đối với các ví dụ kiểm chứng (test
instances)
Học máy cơ bản

• Tính hiệu quả (Efficiency)


– Chi phí về thời gian và tài nguyên (bộ nhớ) cần thiết cho
việc huấn luyện và kiểm thử hệ thống

• Khả năng xử lý nhiễu (Robustness)


– Khả năng xử lý (chịu được) của hệ thống đối với các ví
dụ nhiễu (lỗi) hoặc thiếu giá trị
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Khả năng mở rộng (Scalability)
– Hiệu năng của hệ thống (vd: tốc độ huấn luyện/phân
loại) thay đổi như thế nào đối với kích thước của tập dữ
liệu
Học máy cơ bản

• Khả năng diễn giải (Interpretability)


– Mức độ dễ hiểu (đối với người sử dụng) của các kết
quả và hoạt động của hệ thống

• Mức độ phức tạp (Complexity)


– Mức độ phức tạp của mô hình hệ thống (hàm mục tiêu)
học được
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán phân loại (classification)
– Confusion matrix:
• Thể hiện được có bao nhiêu điểm dữ liệu thực sự thuộc vào
một class, và được dự đoán là rơi vào một class
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán phân loại (classification)
– Classification Accuracy thể hiện bao nhiêu phần trăm
lượng dữ liệu được phân loại đúng
𝑇𝑟𝑢𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 +𝑇𝑟𝑢𝑒𝑁𝑒𝑔𝑎𝑡𝑖𝑣𝑒
Học máy cơ bản

CA=
𝑇𝑜𝑡𝑎𝑙 𝑆𝑎𝑚𝑝𝑙𝑒

124+54 178
CA= = = 0.77
124+54 +(22+31) 231

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán phân loại (classification)
– Precision thể hiện mức độ dự đoán đúng cho từng
nhóm PR(𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒) =
𝑇𝑟𝑢𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒
𝑇𝑟𝑢𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 +𝐹𝑎𝑙𝑠𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒
Học máy cơ bản

124
PR 0 = = 0.85
124+22
54
PR 1 = = 0.64
31+54

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán phân loại (classification)
– Recall thể hiện tỷ lệ dự báo chính xác các trường hợp
positive trên toàn bộ các mẫu thuộc nhóm positive
𝑇𝑟𝑢𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒
RE=
Học máy cơ bản

𝑇𝑟𝑢𝑒𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 +𝐹𝑎𝑙𝑠𝑒𝑁𝑒𝑔𝑎𝑡𝑖𝑣𝑒

124
RE 0 = = 0.8
124+31
54
RE 1 = = 0.71
54+22
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán phân loại (classification)
– Accuracy thể hiện bao nhiêu phần trăm lượng dữ liệu
được phân loại đúng
– Precision thể hiện mức độ dự đoán đúng cho từng
Học máy cơ bản

nhóm
– Recall thể hiện tỷ lệ dự báo chính xác các trường hợp
positive trên toàn bộ các mẫu thuộc nhóm positive

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÁC TIÊU CHÍ ĐÁNH GIÁ
• Bài toán hồi quy (regression)
– MSE (Mean Square Error) thể hiện trung bình của bình
phương sai số giữa giá trị thực tế và giá trị dự đoán
– MAE (Mean Absolute Error) thể hiện trung bình giá trị
Học máy cơ bản

tuyệt đối sai số giữa giá trị thực tế và giá trị dự đoán

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢI THUẬT HỌC MÁY
• Học có giám sát
– Phân loại (classification)
– Hồi quy (regression)
Học máy cơ bản

• Học không có giám sát


– Gom cụm (clustering)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÔ HÌNH TUYẾN TÍNH
• Hồi quy tuyến tính (linear regression)
– Đầu ra có giá trị bất kỳ

• Thuật toán học Perceptron (Perceptron learning algorithm)


Học máy cơ bản

– Đầu ra có giá trị 1 hoặc -1

• Hồi quy logistic (logistic regression)


– Đầu ra có giá trị từ 0 đến 1

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Tình huống: Một căn nhà rộng x1 m2, có x2 phòng
ngủ và cách trung tâm thành phố x3 km có giá là
bao nhiêu?
– Giả sử chúng ta đã có số liệu thống kê từ 1000 căn nhà
Học máy cơ bản

trong thành phố đó, liệu rằng khi có một căn nhà mới
với các thông số về diện tích, số phòng ngủ và khoảng
cách tới trung tâm, chúng ta có thể dự đoán được giá
của căn nhà đó không?
– Phương trình hồi quy tuyến tính
𝑦ො ≈ 𝑦 = 𝑓 𝑥 = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + 𝑤0

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
𝑦ො ≈ 𝑦 = 𝑓 𝑥 = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + 𝑤0
– y là giá trị thực của outcome (dựa trên số liệu thống kê
chúng ta có trong tập training data), 𝑦ො là giá trị mà mô
hình hồi quy tuyến tính dự đoán; hai giá trị khác nhau do
Học máy cơ bản

có sai số mô hình, tuy nhiên, chúng ta mong muốn rằng


sự khác nhau này rất nhỏ
– Tuyến tính được hiểu là thẳng / phẳng
• Không gian hai chiều -> đồ thị dạng đường thẳng
• Không gian ba chiều -> đồ thị dạng mặt phẳng
• Không gian hơn ba chiều -> đồ thị dạng siêu mặt phẳng

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
𝑦ො ≈ 𝑦 = 𝑓 𝑥 = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + 𝑤0 = 𝑥𝑤
ҧ
– Sai số dự đoán 𝑒 = 𝑦ො − 𝑦
1 2 1
• Mong đợi 𝑒 = (𝑦ො − 𝑦)2 càng nhỏ càng tốt
2 2
𝑁
Học máy cơ bản

– Hàm mất mát 1


𝐿(𝑤) = ෍(𝑦𝑖 − 𝑥ഥ𝑖𝑤)2
2
𝑖=1
• Nhiệm vụ tìm w để L(w) đạt giá trị nhỏ nhất

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Giới thiệu dữ liệu
– Cho bộ dữ liệu Bảo hiểm với 7 thuộc tính (tuổi, giới tính,
chỉ số khối cơ thể, số con, hút thuốc lá, khu vực sống,
tổng chi phí phải trả) (xem insurance.csv)
Học máy cơ bản

• Yêu cầu: Dự đoán tổng chi phí phải trả dựa vào
1. Tuổi của khách hàng không hút thuốc.
2. Tuổi của khách hàng không hút thuốc và chỉ số khối cơ
thể
3. Tuổi, chỉ số khối cơ thể, tình trạng hút thuốc của khách
hàng
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Xây dựng mô hình (1), sử dụng scikit learn
Học máy cơ bản

Regression-Ví dụ 1
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Xây dựng mô hình (2), sử dụng scikit learn
Học máy cơ bản

Regression-Ví dụ 2
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Xây dựng mô hình (3), sử dụng scikit learn
Học máy cơ bản

Regression-Ví dụ 3
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Xây dựng mô hình (3), sử dụng statsmodels
Học máy cơ bản

Regression-Ví dụ 4
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY TUYẾN TÍNH
• Xây dựng mô hình (3), sử dụng statsmodels
Học máy cơ bản

Regression-Ví dụ 4
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢI THUẬT HỌC GIẢM ĐỘ DỐC
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢI THUẬT HỌC GIẢM ĐỘ DỐC
• Một số biến thể
– Batch Gradient Descent: Sử dụng tất cả các điểm dữ liệu để
cập nhật θ, cần tính toán đạo hàm trên toàn bộ dữ liệu ở mỗi
vòng lặp nên tốn nhiều thời gian
Học máy cơ bản

– Stochastic Gradient Descent: Tính đạo hàm trên một điểm


dữ liệu rồi rồi cập nhật lại θ dựa trên đạo hàm. Quá trình này
thường phải thực hiện lại nhiều lần, mỗi lần sẽ duyệt qua tất
qua các điểm dữ liệu gọi là một epoch
– Mini-batch Gradient Descent: Chia các điểm dữ liệu thành
nhiều phần, mỗi phần có k điểm dữ liệu (k thường nhỏ hơn
so với toàn bộ dữ liệu) mỗi bước lặp sẽ cập nhật θ khi duyệt
qua hết k điểm dữ liệu

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢI THUẬT HỌC GIẢM ĐỘ DỐC
• Hồi quy tuyến tính với GD
Học máy cơ bản

GradientRegressor-Ví dụ 5
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
• Giới thiệu
– Perceptron learning algorithm (PLA) là một thuật toán phân
lớp cho trường hợp đơn giản nhất: chỉ có hai lớp được gán
màu (nhãn) khác nhau
Học máy cơ bản

– Bài toán đặt ra là: Hãy xây dựng một classifier (bộ phân lớp)
để khi có một điểm dữ liệu hình tam giác màu xám mới, ta có
thể dự đoán được màu (nhãn) của nó

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
Học máy cơ bản

Phần có nền màu xanh được coi là lãnh thổ của lớp xanh, phần có
nên màu đỏ được coi là lãnh thổ của lớp đỏ. Trong trường hợp này,
điểm dữ liệu mới hình tam giác được phân vào lớp đỏ

Bài toán classification có thể coi là bài toán đi tìm boundary giữa các
class. Boundary đơn giản nhất trong không gian hai chiều là một
đường thẳng, trong không gian ba chiều là một mặt phẳng, trong
không gian nhiều chiều là một siêu mặt phẳng
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
𝑓𝑤 𝑥 = 𝑤1 𝑥1 + ⋯ + 𝑤𝑑 𝑥𝑑 + 𝑤0 𝑥0 = 𝑤 𝑇 𝑥ҧ = 0
Phương trình đường biên của tập dữ liệu gồm N điểm với số chiều là d
Học máy cơ bản

Xét trường hợp d = 2, đường biên chia tập điểm thành 2 phần, các
điểm cùng bên sẽ cùng dấu (cùng dương hoặc cùng âm)
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
𝑓𝑤 𝑥 = 𝑤1 𝑥1 + ⋯ + 𝑤𝑑 𝑥𝑑 + 𝑤0 𝑥0 = 𝑤 𝑇 𝑥ҧ = 0
Nếu w là một nghiệm của bài toán PLA, với một điểm dữ liệu x chưa
được gán nhãn, vị trí của nó được xác định như sau:
Học máy cơ bản

label 𝑥 = 1, 𝑛ế𝑢 𝑤 𝑇 𝑥ҧ ≥ 0, 𝑛𝑔ượ𝑐 𝑙ạ𝑖 = −1

Ngắn gọn hơn:


label 𝑥 = 𝑠𝑖𝑔(𝑤 𝑇 𝑥)ҧ

Khi đó, hàm mất mát:


L 𝑤 = σ𝑥(−𝑦𝑖𝑤 𝑇 𝑥)ҧ

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
𝑓𝑤 𝑥 = 𝑤1 𝑥1 + ⋯ + 𝑤𝑑 𝑥𝑑 + 𝑤0 𝑥0 = 𝑤 𝑇 𝑥ҧ = 0

Bước 1: Chọn ngẫu nhiên vector hệ số w với các phần tử gần bằng 0
Bước 2: Duyệt ngẫu nhiên qua từng điểm dữ liệu xi
Học máy cơ bản

- Nếu xi được phân đúng lớp, tức 𝒔𝒊𝒈 𝒘𝑻 𝒙


ഥ = 𝟏 , tiếp tục

- Nếu xi bị phân sai lớp, cập nhật w theo công thức w = w + yixi
Bước 3: Kiểm tra có bao nhiêu điểm bị phân sai lớp.
- Nếu không còn điểm nào, dừng thuật toán
- Nếu còn, quay lại bước 2

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
• Giới thiệu dữ liệu
– Bộ dữ liệu bệnh tiểu đường của Ấn Độ để kiểm tra khả
năng phân loại của thuật toán PLA
– Bộ dữ liệu gồm 768 bản ghi với tám tiêu chí chẩn đoán
Học máy cơ bản

và tình trạng mắc bệnh tiểu đường của người bệnh


Nguồn: Kaggle

• Yêu cầu
– Xây dựng mô hình nhận diện bệnh nhân tiểu đường

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
• Xây dựng mô hình
Học máy cơ bản

Perceptron-Ví dụ 6
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
THUẬT TOÁN HỌC PERCEPTRON
• Trực quan hóa kết quả
Học máy cơ bản

Perceptron-Ví dụ 7
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Giới thiệu
– Một dạng hồi quy tuyến tính với đầu ra có thể được thể
hiện ở dạng xác suất, tức là
• Số thực (như LR)
Học máy cơ bản

• Bị chặn trong khoảng [0,1] như PLA

– Áp dụng nhiều trong loại bài toán phân lớp

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Đầu ra dự đoán
– Hồi quy tuyến tính 𝑓𝑤 𝑥 = 𝑤 𝑇 𝑥ҧ
– Học PLA 𝑓𝑤 𝑥 = 𝑠𝑖𝑔(𝑤 𝑇 𝑥)ҧ
𝑓𝑤 𝑥 = 𝜃(𝑤 𝑇 𝑥)ҧ
Học máy cơ bản

– Hồi quy xác suất


• Hàm liên tục, nhận giá trị thực, trong khoảng (0,1)
• Nếu coi điểm có tung độ ½ làm điểm phân chia, thì các điểm
càng xa về phía trái có giá trị càng gần 0, các điểm càng xa về
phía phải có giá trị càng gần 1
• Có đạo hàm tại mọi điểm
𝟏
Hàm sigmoid: 𝒇 𝒔 = −𝒔
= 𝝈(𝒔)
𝟏+𝒆
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Đầu ra dự đoán
𝟏
Hàm sigmoid: 𝒇 𝒔 = −𝒔
= 𝝈(𝒔)
𝟏+𝒆
• Hàm mất mát
Học máy cơ bản

L 𝑤 = −𝑙𝑜𝑔𝑃 𝑦 𝑋; 𝑤
= − σ𝑁
𝑖=1(𝑦𝑖𝑙𝑜𝑔𝑧𝑖 + 1 − 𝑦𝑖 log(1 − 𝑧𝑖))

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Giới thiệu dữ liệu
– Bộ dữ liệu bệnh tiểu đường của Ấn Độ để kiểm tra khả
năng phân loại của thuật toán PLA
– Bộ dữ liệu gồm 768 bản ghi với tám tiêu chí chẩn đoán
Học máy cơ bản

và tình trạng mắc bệnh tiểu đường của người bệnh


Nguồn: Kaggle

• Yêu cầu
– Xây dựng mô hình xác định xác suất bị tiểu đường của
người bệnh

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Xây dựng mô hình
Học máy cơ bản

Logistics-Ví dụ 8
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỒI QUY XÁC SUẤT
• Trực quan hóa kết quả
Học máy cơ bản

Logistics-Ví dụ 9
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Tổng quan
– Quá khớp không phải là một thuật toán trong Học máy,
mà là một hiện tượng không mong muốn thường gặp
– Người xây dựng mô hình Học máy cần nắm được các
Học máy cơ bản

kỹ thuật để tránh hiện tượng này

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Tổng quan
– Trong học có giám sát, cần tìm một hàm số f sao cho
𝑦_𝑖≈𝑓(𝑥_𝑖 ), ∀𝑖=1,2,3,⋯𝑁
=> quá trình huấn luyện có xu hướng tìm các tham số của mô
Học máy cơ bản

hình sao cho việc xấp xỉ có sai số càng nhỏ càng tốt

– Tuy nhiên, nếu mô hình quá khớp với dữ liệu huấn


luyện thì nó có thể phản tác dụng.

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Tổng quan
– Quá khớp (overfitting) là hiện tượng mô hình tìm được quá
trùng khớp với tập huấn luyện. Điều này có nghĩa là cả dữ
liệu nhiễu, hoặc dữ liệu bất thường trong tập huấn luyện đều
được chọn và học để đưa ra quy luật mô hình
Học máy cơ bản

– Những quy luật này sẽ không có ý nghĩa nhiều khi áp dụng


với bộ dữ liệu mới có dạng dữ liệu nhiễu khác. Khi đó, nó
ảnh hưởng tiêu cực tới độ chính xác của mô hình nói chung
– Overfitting xảy ra khi mô hình quá phức tạp để mô phỏng dữ
liệu huấn luyện. Điều này đặc biệt 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

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Các kỹ thuật
– Kiểm chứng chéo (cross-validation)
– Chính quy hóa (regularization)
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Kiểm chứng chéo (cross-validation)
– Chia tập huấn luyện ra k tập con không có phần tử
chung, có kích thước gần bằng nhau
– Mỗi lần kiểm thử, một trong số k tập con được lấy ra
Học máy cơ bản

làm tập kiểm thử (validate set). Mô hình được xây dựng
dựa vào hợp của k-1 tập con còn lại
– Mô hình cuối được xác định dựa trên trung bình của
các train error và validation error. Cách làm này còn có
tên gọi là k-fold cross validation

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Kiểm chứng chéo (cross-validation)
Học máy cơ bản

Nguồn: Scikit-learn.org
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Kiểm chứng chéo (cross-validation)
Học máy cơ bản

CrossValidation_Boston-Ví dụ 10
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
– Chính quy hóa là thay đổi mô hình một chút để tránh
quá khớp trong khi vẫn giữ được tính tổng quát của nó
(tính tổng quát là tính mô tả được nhiều dữ liệu)
Học máy cơ bản

=> Di chuyển nghiệm của bài toán tối ưu hàm mất mát tới
một điểm gần nó. Hướng di chuyển sẽ là hướng làm cho
mô hình ít phức tạp hơn mặc dù giá trị của hàm mất mát
có tăng lên một chút.

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
– Dừng sớm (Early stopping), dừng thuật toán trước khi
hàm mất mát đạt giá trị quá nhỏ, giúp tránh quá khớp
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
– Thêm số hạng vào hàm mất mát, số hạng này thường
dùng để đánh giá độ phức tạp của mô hình
• Số hạng này càng lớn, thì mô hình càng phức tạp
Học máy cơ bản

• Hàm mất mát mới này thường được gọi là regularized loss
function, và được định nghĩa như sau

𝐽𝑟𝑒𝑔 𝜃 = 𝐽 𝜃 + 𝜆𝑅(𝜃)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
– Chính quy hóa l2 (l2 regularization), Ridge regression
• Trong kỹ thuật này, số hạng chính quy R định nghĩa như sau
Học máy cơ bản

2
𝑅 𝑤 = 𝑤 2
• Hàm này có đặc điểm
– Có đạo hàm tại mọi điểm, đạo hàm của nó đơn giản là w
– Việc tối thiểu R(w) đồng nghĩa làm cho các giá trị của hệ số w trở nên gần
với 0, nhờ vậy tránh hiện tượng quá khớp

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
– Chính quy hóa l1 (l1 regularization), LASSO regression
• Trong kỹ thuật này, số hạng chính quy R định nghĩa như sau
𝑑
Học máy cơ bản

𝑅 𝑤 = 𝑤 1 = ෍ 𝑤𝑖
1
• Hàm này có đặc điểm
– Có đạo hàm tại mọi điểm, đạo hàm của nó đơn giản là w
– Việc tối thiểu R(w) đồng nghĩa làm cho nhiều hệ số w có giá trị bằng 0,
nhờ vậy tránh hiện tượng quá khớp

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
QUÁ KHỚP (OVERFITTING)
• Chính quy hóa (regularization)
Học máy cơ bản

Regularization-Ví dụ 12
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Support vector machines (SVM)
– Thuật toán giúp tìm ra một siêu phẳng tối ưu để chia dữ
liệu tuyến tính ra làm hai lớp khác nhau
• Lớp các dữ liệu có nhãn dương
Học máy cơ bản

• Lớp các dữ liệu có nhãn âm

– Các hàm nhân (kernel functions), cũng được gọi là các


hàm biến đổi (transformation functions), được dùng cho
các trường hợp phân lớp phi tuyến
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Support vector machines (SVM)
– SVM có một nền tảng lý thuyết chặt chẽ – dựa trên
nhiều định lý toán học
– SVM là một phương pháp tốt (phù hợp) đối với những
Học máy cơ bản

bài toán phân lớp có không gian biểu diễn thuộc tính lớn
– các đối tượng cần phân lớp được biểu diễn bởi một
tập rất lớn các thuộc tính

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Ứng dụng SVM
– Sử dụng dữ liệu báo cáo tài chính để phân loại “có khả
năng phá sản” và “khó có khả năng phá sản”
– Sử dụng dữ liệu văn bản để phân loại “tâm lý tích cực”
Học máy cơ bản

và “tâm lý tiêu cực”

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Phát biểu bài toán
– Cho các cặp dữ liệu của tập huấn luyện là (x1,y1), …,
(xN,yN) với xi∈Rd thể hiện đầu vào của một điểm dữ liệu
và yi là nhãn của điểm dữ liệu đó với hai giá trị -1 và +1
Học máy cơ bản

Mặt phân chia của hai lớp:


wTx+b = w1x1+w2x2+b = 0
Khoảng cách từ 1 điểm (x,y) bất kỳ đến
mặt phân chia của hai lớp:
𝑦𝑛 (𝑤 𝑇 𝑥𝑛 + 𝑏)
𝑤 2

𝑦𝑛 (𝑤 𝑡 𝑥𝑛 +𝑏)
– Tìm (w,b) sao cho max min
𝑤 2
𝑤,𝑏 𝑛

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Hàm nhân (kernel function)
– Công cụ xác định tích vô hướng của hai điểm trong
không gian
– Bốn loại hàm kernel trong SVM
Học máy cơ bản

• Linear
• Polynomial
• Gaussian
• Sigmoid

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Các vấn đề
– SVM chỉ làm việc với không gian đầu vào là các số thực
– SVM chỉ làm việc (thực hiện phân lớp) với 2 lớp
Học máy cơ bản

– Siêu phẳng phân tách (ranh giới quyết định phân lớp)
xác định được bởi SVM thường khó hiểu đối với người
dùng

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
Tạo tập dữ liệu huấn luyện
Học máy cơ bản

Trực quan hóa dữ liệu

SupportVectorMachine-Ví dụ 13
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
Xây dựng mô hình Trực quan hóa kết quả
Học máy cơ bản

SupportVectorMachine-Ví dụ 13
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
• Minh họa
– Tập dữ liệu ung thư mô tả các đặc điểm của nhân tế
bào có trong hình ảnh (xem breast_cancer)
– Tập dữ liệu gồm 30 thuộc tính và chia làm hai loại ung
Học máy cơ bản

thư: ác tính (có hại), lành tính (không có hại)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
MÁY VÉC-TƠ HỖ TRỢ
Xây dựng mô hình Trực quan hóa kết quả
Học máy cơ bản

Đánh giá mô hình

SupportVectorMachine-Ví dụ 14
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC CÂY QUYẾT ĐỊNH
• Tổng quan
– Phương pháp học / tìm một hàm mục tiêu có giá trị rời rạc
(còn gọi là hàm phân lớp)
– Hàm phân lớp được biểu diễn bởi một cây quyết định
Học máy cơ bản

• Đặc điểm
– Là một trong các phương pháp học quy nạp được dùng phổ
biến nhất
– Có thể thực hiện ngay cả với các dữ liệu có chứa nhiễu/lỗi
– Được áp dụng thành công trong rất nhiều các bài toán ứng
dụng thực tế

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC CÂY QUYẾT ĐỊNH
• Ví dụ: Tôi quan tâm tin tức nào?
Học máy cơ bản

– (…, “sport”, …, “player”, …) -> Interested


– (…, “goal”, …) -> Interested
– (…, “sport”, …) -> Uninterested

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC CÂY QUYẾT ĐỊNH
• Biểu diễn cây quyết định (1)
– Mỗi nút trong biểu diễn một thuộc tính cần kiểm tra giá
trị đối với các ví dụ
– Mỗi nhánh từ một nút sẽ tương ứng với một giá trị có
Học máy cơ bản

thể của thuộc tính gắn với nút đó


– Mỗi nút lá biểu diễn một phân lớp
– Một cây quyết định học được sẽ phân lớp đối với một ví
dụ, bằng cách duyệt cây từ nút gốc đến một nút lá

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC CÂY QUYẾT ĐỊNH
• Biểu diễn cây quyết định (2)
– Một cây quyết định biểu diễn một phép tuyển
(disjunction) của các kết hợp (conjunctions) của các
ràng buộc đối với các giá trị thuộc tính của các ví dụ
Học máy cơ bản

– Mỗi đường đi (path) từ nút gốc đến một nút lá sẽ tương


ứng với một kết hợp (conjunction) của các kiểm tra giá
trị thuộc tính (attribute tests)
– Cây quyết định (bản thân nó) chính là một phép tuyển
(disjunction) của các kết hợp (conjunctions) này

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC CÂY QUYẾT ĐỊNH
• Ví dụ: Tôi quan tâm tin tức nào?
Học máy cơ bản

[(“sport” is present)  (“player” is present)] 


[(“sport” is absent)  (“football” is present)] 
[(“sport” is absent)  (“football” is absent)  (“goal” is present)]

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÂY QUYẾT ĐỊNH
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

DecisionTree-Ví dụ 15
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÂY QUYẾT ĐỊNH
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
CÂY QUYẾT ĐỊNH
• Ưu điểm
– Dễ hiểu và dễ trực quan hóa
– Dễ dàng nắm bắt các mẫu phi tuyến tính
– Ít yêu cầu xử lý trước dữ liệu
Học máy cơ bản

– Không có giả định về phân phối

• Nhược điểm
– Nhạy cảm với dữ liệu nhiễu
– Nhạy cảm với sự thay đổi (dù nhỏ) trong dữ liệu
– Sai lệch với tập dữ liệu không cân bằng
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
K-LÁNG GIỀNG GẦN
• Ý tưởng
– Thuật toán đi tìm đầu ra của một điểm dữ liệu mới bằng
cách chỉ dựa trên thông tin của K điểm dữ liệu trong
training set gần nó nhất (K-lân cận)
Học máy cơ bản

– Trong bài toán phân lớp, nhãn của một điểm dữ liệu
mới được suy ra trực tiếp từ K điểm dữ liệu gần nhất
trong tập huấn luyện
– Trong bài toán hồi quy, đầu ra của một điểm dữ liệu sẽ
bằng chính đầu ra của điểm dữ liệu đã biết gần nhất,
hoặc là trung bình có trọng số của đầu ra của những
điểm gần nhất

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
K-LÁNG GIỀNG GẦN (KNNClassifier)
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

KNNClassifier-Ví dụ 16
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
K-LÁNG GIỀNG GẦN (KNNRegressor)
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

KNNRegressor-Ví dụ 17a
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
K-LÁNG GIỀNG GẦN (KNNRegressor)
Nạp dữ liệu
Học máy cơ bản

Xây dựng và đánh giá mô hình

KNNRegressor-Ví dụ 17b
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
PHÂN CỤM K-means
• Giới thiệu
– Một trong những thuật toán cơ bản nhất trong học
không giám sát
– Phân dữ liệu thành các cụm (cluster) khác nhau sao
Học máy cơ bản

cho dữ liệu trong cùng một cụm có tính chất giống nhau

• Ý tưởng
– Tập hợp các điểm ở gần nhau trong một không gian nào
đó (không gian này có thể có rất nhiều chiều trong
trường hợp thông tin về một điểm dữ liệu là rất lớn)

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
PHÂN CỤM K-means
Nạp dữ liệu
Học máy cơ bản

Xây dựng và đánh giá mô hình

Kmean-Ví dụ 18
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
PHÂN CỤM K-means
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

Kmean-Ví dụ 19
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢM CHIỀU DỮ LIỆU
• Giới thiệu
– Dữ liệu đa chiều, có thể có chiều “kém chất lượng”, làm
giảm hiệu năng của mô hình
– Cần thiết phải “giảm chiều” hay loại bỏ các chiều “kém
Học máy cơ bản

chất lượng”

• Phương pháp
– Lựa chọn và giữ lại các chiều “tốt”
– Giảm chiều bằng cách kết hợp các chiều hiện có

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
GIẢM CHIỀU DỮ LIỆU
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM
• Giới thiệu
– Kết hợp nhiều mô hình học lại với nhau có thể cho ra kết quả
dự báo tốt hơn so với kết quả dự báo tốt nhất từ một mô
hình đơn lẻ
– Nhóm (ensemble): một nhóm các mô hình dự báo
Học máy cơ bản

– Học nhóm (ensemble learning): kỹ thuật học dựa trên một


nhóm các mô hình dự báo

• Một số phương pháp


– Bagging (đóng bao)
– Boosting (tăng cường)
– Stacking (xếp chồng)
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BAGGING)
• Ý tưởng
– Xây dựng một lượng lớn các mô hình (thường là cùng
loại) trên những tập mẫu con khác nhau từ tập huấn
luyện ban đầu. Các mô hình này sẽ được huấn luyện
Học máy cơ bản

độc lập và song song với nhau nhưng đầu ra của chúng
sẽ được trung bình cộng để cho ra kết quả cuối cùng

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BAGGINGClassifier)
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

BaggingClassifier-Ví dụ 20
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BAGGINGRegressor)
Nạp dữ liệu
Học máy cơ bản

Xây dựng và đánh giá mô hình

BaggingRegressor-Ví dụ 21
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BOOSTING)
• Ý tưởng
– Xây dựng một lượng lớn các mô hình (thường là cùng
loại); mô hình sau sẽ học cách sửa lỗi của mô hình
trước. Kết quả của mô hình cuối cùng (tốt nhất) là kết
Học máy cơ bản

quả trả về

• Phân loại
– Adaptive Boosting (AdaBoost)
– Gradient Boosting

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BOOSTINGClassifier)
Nạp dữ liệu Trực quan hóa
Học máy cơ bản

Xây dựng và đánh giá mô hình

BoostingClassifier-Ví dụ 22
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
HỌC NHÓM (BOOSTINGRegressor)
Nạp dữ liệu
Học máy cơ bản

Xây dựng và đánh giá mô hình

BoostingRegressor-Ví dụ 23
… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam
TÓM TẮT
• Tổng quan về học máy
• Các công cụ học có giám sát
• Các công cụ học không có giám sát
Học máy cơ bản

… những bước chập chững vào thế giới Khoa học dữ liệu … TS. Trịnh Hoàng Nam

You might also like