
























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The naive bayes and decision tree algorithms, which are commonly used in machine learning for classification tasks. The decision tree algorithm uses a tree structure to make decisions based on feature values, while the naive bayes algorithm uses bayes' theorem and makes the assumption that features are independent. The document also covers the concepts of entropy, information gain, and overfitting.
Typology: Schemes and Mind Maps
1 / 32
This page cannot be seen from the preview
Don't miss anything!
Giáo viên hướng dẫn: Nguyễn Quang Hoan
Nhóm sinh viên thực hiện: Nhóm 13
Thành viên nhóm: Nguyễn Xuân Tùng Anh
Trần Hiếu
Vũ Văn Chính
Ngô Anh Quý
Nguyễn Văn Mạnh
Hà Nội, ngày 14 tháng 01 năm 2024
1.1 Giới thiệu về học máy
hơn là Machine Learning (Học Máy hoặc Máy Học) nổi lên như một bằng chứng
của cuộc cách mạng công nghiệp lần thứ tư (1 - động cơ hơi nước, 2 - năng lượng
điện, 3 - công nghệ thông tin). Trí Tuệ Nhân Tạo đang len lỏi vào mọi lĩnh vực
trong đời sống mà có thể chúng ta không nhận ra. Xe tự hành của Google và Tesla,
hệ thống tự tag khuôn mặt trong ảnh của Facebook, trợ lý ảo Siri của Apple, hệ
thống gợi ý sản phẩm của Amazon,...
Tính, nó có khả năng tự học hỏi dựa trên dữ liệu đưa vào mà không cần phải được
lập trình cụ thể.
một tầm cao mới và lượng dữ liệu khổng lồ được thu thập bởi các hãng công nghệ
lớn, Machine Learning đã tiến thêm một bước dài và một lĩnh vực mới được ra đời
gọi là Deep Learning. Nó đã giúp máy tính thực thi những việc tưởng chừng như
không thể như phân loại cả ngàn vật thể khác nhau trong các bức ảnh, tự tạo chú
thích cho ảnh, bắt chước giọng nói và chữ viết của con người, giao tiếp với con
người.
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 còn được gọi là (data, label), tức (dữ liệu, nhãn). Supervised
learning là nhóm phổ biến nhất trong các thuật toán Machine Learning. Chúng học
thông qua một bộ dữ liệu đã được gán nhãn chính xác và cố gắng đưa ra các dự
đoán đầu ra mục tiêu chính xác nhất có thể trên bộ dữ liệu cho trước.
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
giữa 2 phương pháp này là học bán giám sát (semi-supervised learning) khi dữ liệu
học chỉ có một phần nhỏ là có đầy đủ cặp đầu vào - đầu ra tương ứng và phần dữ
liệu còn lại chỉ có đầu vào. Phương pháp này phù hợp trong trường hợp việc gắn
đầu ra cho từng đầu vào là không khả thi hoặc tốn rất nhiều tài nguyên và việc sử
dụng dữ liệu không được gắn đầu ra sẽ hiệu quả hơn.
đầu vào. Giống như khi ta học, không có thầy cô giáo nào chỉ cho ta biết đó là chữ
A hay chữ B. Cụm không giám sát được đặt tên theo nghĩa này. Các dữ liệu không
được "hướng dẫn" trước như trong trường hợp học có giám sát.
1.2. Phương pháp học máy
1.2.1 Thuật toán Decision Tree
- Mục đích của phương pháp: là phân loại dữ liệu. Phương pháp này sử dụng một
cây quyết định để phân loại dữ liệu. Cây quyết định là một cấu trúc dữ liệu phân
cấp, trong đó mỗi nút đại diện cho một câu hỏi hoặc tiêu chí. Các nút con của một
nút đại diện cho các kết quả có thể của câu hỏi hoặc tiêu chí đó.
- Input: tập dữ liệu huấn luyện - Output: là một cây quyết định. Cây quyết định có thể được sử dụng để phân loại
các mẫu dữ liệu mới bằng cách duyệt qua cây và trả về nhãn mục tiêu của nút lá
mà mẫu dữ liệu kết thúc.
trong đó:
n j
: số mẫu nhánh có đặc trưng A i
( ví dụ đặc trưng A 1
:màu tóc;…) n t
: số tổng số
mẫu quan sát (n t
=8 trong ví dụ)
n ic
: số mẫu nhánh cây thứ i với giá trị đầu ra c (c=1:Rám; c=2)
để đánh giá một bộ phân loại hai lớp tạm gọi là dương và âm:
Số đúng dương (TP- True Positive): số phần tử dương thực tế được phân loại
đúng dương.
Số sai âm (FN- False Negative): số phần tử dương thực tế được phân loại sai
sang âm.
Số đúng âm (TN- True Negative): số phần tử âm thực tế được phân loại đúng
Để xem xét đầy đủ hơn ta có bảng các tiêu chí sau đây, kềm với các thuật ngữ phân
loại sai số.
Điều kiện dương (P): Số lượng các trường hợp thực sự tích cực trong dữ liệu Điều
kiện phủ định (N): Số lượng các trường hợp tiêu cực thực sự trong dữ liệu True
positive (TP): sự chính xác
Âm tính thực (TN):sự từ chối chính xác Dương tính giả (FP): báo động giả, lỗi loại
I Sai âm tính (FN): Lỗi, loại II lỗi
tỷ lệ thực dương (TPR) còn được gọi là Độ nhạy (sensitivity), thu hồi (recall), tỷ lệ
đạt
Cụ thể hoặc tỷ lệ tiêu cực thực sự (TNR)
Giá trị tiên đoán chính xác hoặc tích cực (PPV)
Giá trị tiên đoán âm (NPV)
Tỷ lệ bỏ lỡ hoặc tỷ lệ sai âm (FNR)
Rơi ra hoặc tỷ lệ dương tính giả (FPR)
Tỷ lệ khám phá sai (FDR)
Tỷ lệ bỏ sót sai (FOR)
Độ chính xác (ACC)
Điểm số F1: Là trung bình hài hòa cảu độ chính xác và độ nhạy
Hệ số tương quan Matthews (MCC)
kiện rời rạc hay sự kiện nhận giá trị logic (1 hoặc 0).
P(A=true)=1; P(A=false) = 0.
Sự kiện A có thể nhận một trong hai giá trị true (đúng) và false (sai). Ví dụ, cho A
là mệnh đề hay sự kiện “Ngày có (True) đi chơi Tennis” có thể nhận giá trị đúng
(hoặc 1) hoặc mệnh đề hay sự kiện “Ngày không (False) đi chơi Tennis” có thể
nhận giá trị sai (hoặc 0).
P(AvB)=P(A)+P(B)–P(A∧B)
Có thể minh họa tiên đề thứ 3 bằng biểu đồ Venn, với giả sử tập các sự kiện A và
giao nhau
Một cách tổng quát cho tiên đề 3, khi có nhiều sự kiện ngẫu nhiên X i
; i=1..n là sự
kiện ngẫu nhiên không giao nhau:
Ghi chú: Trường hợp sự kiện A và B không giao nhau: P(AvB)=P(A)+P(B)
Ngoài các tiên đề trên, xác suất có một số tính chất quan trọng sau
B nhận giá trị nhị phân.
a
P(A=a) = 1
trong đó, tổng lấy theo các giá trị a thuộc miền giá trị của A.
- Xác suất có điều kiện
Xác suất có điều kiện hay xác xuất Bayes. Ký hiệu P(A|B). Trong công thức P(A|
o biến (hay sự kiện) A được gọi là biến hỏi;
o biến (hay sự kiện) B được gọi là biến điều kiện, hay bằng chứng.
Xác suất có điều kiện, ký hiệu là P(A|B) là xác suất xẩy ra cả sự kiện A và cả sự
kiện B đồng thời xảy ra, hay chung nhau (tức là: P(A∧B) hay tương đương với
P(A, B) khi sự kiện B (hay biến cố B đã xảy ra). Dễ dàng mô tả hay biểu diễn P(A|
B) như sau:
Từ đó, dẫn tới công thức toán học, mô tả xác suất điều kiện theo định nghĩa như
sau:
Quá trình suy diễn theo Bayes là quá trình tính xác suất điều kiện của kết luận khi
biết bằng chứng ( bằng chứng có thể ký hiệu là E : ( E vidence). Cụ thể, khi biết các
bằng
chứng E
1
n
, suy diễn xác suất được thực hiện bằng cách tính xác suất
điều kiện P(Q|E 1
n
), tức là niềm tin kết luận Q ( Q uery) đúng khi có các bằng
chứng E 1
n
b. Định lý hay quy tắc Bayes
Chứng minh:
Theo định nghĩa: P(A|B) = P(A∧B)/P(B) hay 𝑃(𝐴 ∧ 𝐵) =
Tương tự, ta có: 𝑃(𝐵 ∧ 𝐴) =
¬V
0.05 0.
Biểu đồ trên là một biểu diễn hình vẽ của mạng Bayes cho ví dụ về loại virus gây
hậu quả mất file (F), máy chạy chậm (C), và máy tự khởi động lại (R), được biểu
diễn bằng biến ngẫu nhiên V.
V: Loại virus (có nhiễm virus hoặc không nhiễm virus)
F: Mất file (có mất file hoặc không mất file)
C: Máy chạy chậm (có máy chạy chậm hoặc không máy chạy chậm)
R: Máy tự khởi động lại (có máy tự khởi động lại hoặc không máy tự khởi động
lại)
Mũi tên từ V trỏ đến F, C và R, thể hiện rằng trạng thái của virus (V) có ảnh hưởng
đến việc máy bị mất file (F), chạy chậm (C), và tự khởi động lại (R).
P(F|V=0) = 0.05: Xác suất mất file khi không nhiễm virus
P(F|V=1) = 0.7: Xác suất mất file khi nhiễm virus
P(C|V=0) = 0.2: Xác suất máy chạy chậm khi không nhiễm virus
P(C|V=1) = 0.6: Xác suất máy chạy chậm khi nhiễm virus
P(R|V=0) = 0.05: Xác suất máy tự khởi động lại khi không nhiễm virus
P(R|V=1) = 0.4: Xác suất máy tự khởi động lại khi nhiễm virus
b) Một máy tính phòng thực hành chạy chậm. Tính xác suất máy đó nhiễm virus.
dụng công thức Bayes: P(V∣C) =
P ( C ∨ V ). P ( V )
P ( C )
Ta có P(V|C) + P (
¬V ∨ C ) = 1
P ( C ∨ V ). P ( V )
P ( C )
P ( C ∨ ¬V ). P ( ¬V )
P ( C )
0,6.0,
P ( C )
0,2.0,
P ( C )
P ( C ) = 0,
0,6.0,
Vậy xác suất máy tính phòng thực hành chạy chậm nhiễm virus là 0.5.
c) Một máy tính vừa bị mất file vừa chạy chậm. Tính xác suất máy đó nhiễm virus.
- Để tính xác suất máy tính vừa bị mất file vừa chạy chậm nhiễm virus, sử dụng
công thức Bayes:
P ( F , C ∨ V ). P ( V )
P ( F , C )
P ( F ∨ C , V ). P ( C ∨ V ). P ( V )
P ( F , C )
P ( F ∨ C , V ). P ( C ∨ V ). P ( V )
P ( F ∨ C ). P ( C )
P ( F ∨ V ). P ( C ∨ V ). P ( V )
P ( F ). P ( C )
0,7.0,6 .0,
P ( F ). P ( C )
Ta có P(V|F,C) + P(
¬V ∨ F , C ) = 1
0,7.0,6 .0,
P ( F ). P ( C )
P ( F ,C ) ¬V ¿. P ( ¬V )
¿
P ( F ,C )
P ( F , C )
P ( F ∨ ¬V ). P ( C ∨ ¬V ). P ( ¬V )
P ( F , C )¿
¿
= 1
0,
P ( F , C )
0,05.0,2.0,
P ( F , C ) ¿
¿
= 1
P ( F ,C ) = 0,
P ( F , C ∨ V ). P ( V )
P ( F , C )
0,42_._ 0,
0,
≈
0,
Vậy xác suất máy tính vừa bị mất file vừa chạy chậm khi nhiễm virus là khoảng
0,933(hoặc 93,3%)
Câu 2: Sử dụng thuật toán ILA để phân lớp. Đối tượng và dữ liệu tự chọn
{Chiều cao}: Trung bình:0 ,Thấp:
{Giới tính}:nam:
Chọn thấp : 1 (vì có chỉ số lớn nhất )
Dòng 2 được đánh dấu :Chiều Cao = “Thấp”->Châu Á
Ta rút được L1 :” Nếu chiều cao là Thấp” thì Châu Á.
Tổ hợp 2 trong 3 thuộc tính {Dáng, Chiều cao, Giới tính}
{Dáng, Chiều Cao}: {to, trung bình}:0 , {nhỏ, trung bình}:
{Dáng, Giới tính}: {to, nam}:0 , {nhỏ, nam}:
{Chiều cao, giới tính }: {trung bình , nam}:
Chọn {trung bình ,nam}
Dòng 1, 3 được đánh dấu .Chiều cao =”Trung Bình” và giới tính = “Nam”
Ta rút được L2 :”Nếu chiều cao là Trung bình và giới tính là Nam” thì Châu Á.
Tổ hợp 1 trong 3 thuộc tính {Dáng, Chiều cao, Giới tính}
{Dáng}: to:0, nhỏ:
{Chiều cao}: cao:3, trung binh:
{Giới tính}: nam:0 , nữ:
Chọn cao: 3 (vì có chỉ số lớn nhất )
Dòng 4, 6, 7 được đánh dấu: Chiều Cao = “cao” ->Châu Âu
Ta rút được luật L3: “Nếu chiều cao là cao thì Châu Âu”
Chỉ tính lại những tổ hợp thuộc tính có Ncb >0 mà chưa cho luật
{Giới tính}: nữ: 2
Ta rút được luật L4: “Nếu giới tính là nữ thì Châu Âu”
Câu 3: Sử dụng thuật toán NaiveBayes và Trees.J48 chạy cơ sở dữ liệu
1. Mô tả tập dữ liệu
Chieu Cao : Xác định chiều cao là dữ liệu phân loại: Cao, Tam Thuoc (Tầm
Thước), Thap (Thấp)
Can Nang : Xác định cân nặng là dữ liệu phân loại: Nang (Nặng), Nhe (Nhẹ),
Vua (Vừa)
Mau Toc : Xác định màu tóc là dữ liệu phân loại: Den (Đen), Nau (Nâu)
Hoan Canh: Xác định hoàn cảnh là dữ liệu phân loại: Kha Gia (Khá Giả), Binh
Thuong (Bình Thường)
Hoc Van: Xác định học vấn là dữ liệu phân loại: Gioi (Giỏi), Kha (Khá), Yeu
(Yếu)
That Nghiep : Xác định thất nghiệp là dữ liệu phân loại: Co (Có), Khong
(Không)
Canh, Hoc Van, That Nghiep) để dự đoán giá trị của thuộc tính That Nghiep.
2. Mô tả cách giải bài toán bằng phương pháp học máy. Sử dụng ứng dụng
weka để chạy cơ sở dữ liệu đã cho để đưa ra chuẩn đoán
từ dữ liệu huấn luyện.
Khi cây đã được xây dựng và cắt tỉa, quá trình phân loại diễn ra bằng cách
đi xuống cây theo các quyết định dựa trên giá trị của các thuộc tính.
Cuối cùng, một nhãn đích được dự đoán dựa trên đường đi từ gốc đến lá
của cây.
thuộc tính rời rạc (discrete) và thuộc tính liên tục (continuous). Nó cũng
có khả năng xử lý các giá trị bị khuyết (missing values) trong dữ liệu.
nhỏ hoặc tập dữ liệu có nhiều thuộc tính. Đồng thời, nó không tốt trong việc xử lý
dữ liệu có nhiễu hoặc lỗi.
phân loại, và nó đã được sử dụng rộng rãi trong nhiều ứng dụng thực tế.
Một số công thức tính toán được dùng trong thuật toán J48:
Công thức chọn gốc của thuật toán ID3: Max của Entropy
IG
(
n
t ,,
n
jc
= H ¿
Cho bài toán thời tiết: ∑
c
n
jc
n
j
=
− 9
14
log
2
9
14
−
− 5
14
log
2
5
14
Công thức chọn gốc của C4.5: Max của Entropy, gọi là
Tỷ số độ lợi
GainRatio ( S )=
IG ( S )
P ( S )
Trong đó:
G ( S )= E
Ai
( j )=
∑
i
n
j
n
t
∑
c
− n
jc
n
j
log
2
n
jc
n
j
P ( S )= SpitInfo ( S )=−
∑
i = 1
v
S
i
| S
|
log
2
S
i
S
=−
∑
j = 1
v
n
j
n
t
log
2
n
j
n
t
GainRatio ( S )=
IG ( S )
P ( S )
∑
c
n
c
n
t
−
∑
i
n
j
n
t
∑
c
− n
jc
n
j
log
2
n
jc
n
j
−
∑
j = 1
v
n
j
n
t
log
2
n
j
n
t
Khi dữ liệu có thuộc tính nào đó có nhiều giá trị hơn các thuộc tính khác, độ
lợi thông tin
I G ( S ) tăng đối với các thuộc tính có nhiều giá trị phân chia. Để giảm
bớt sự lệch này, Quinlan đề nghị sử dụng tỉ số độ lợi.
Tỉ số độ lợi
GainRatio ( S )=
G ( S )
P ( S )
đề cập đến số lượng và độ lớn của các nhánh
con của một đặc trưng khi chọn đặc trưng đó. Tỉ số độ lợi
GainRatio ( S )=
G ( S )
P ( S )
được
tính bằng độ lợi thông tin của nhánh đó chia cho Entropy thông tin phân phối dữ
liệu trên toàn bộ các đặc trưng. Giả sử khi sử dụng đặc trưng A chia dữ liệu S thành
v phần, thông tin của việc chia dữ liệu
SpitInfo ( S ) được tính theo công thức:
P ( S )= SpitInfo ( S )=− ∑
i = 1
v
S
i
| S
|
log
2
S
i
S
Ở đây,
S
i
, | S |
là lực lượng (số lượng) các đối tượng của đặc trưng thứ i (trong
ví dụ bài toán thời tiết i=1..4 ) S i
; và lực lượng (số lượng) các đối tượng của toàn bộ
dữ liệu học S (hay dữ liệu thử nghiệm).
P ( S ) thực chất là tổng Entropy của các
nhánh đặc trưng.
(trong bài toán thời tiết v=4 đặc trưng)
Và tỉ số độ lợi được tính như công thức
GainRatio ( S )=
IG ( S )
P ( S )
Cài đặt trước khi chạy thuật toán:
chạy chuẩn đoán
Kết quả khi chạy dữ liệu với Weka sử dụng thuật toán J48: