Tải bản đầy đủ (.pdf) (55 trang)

TÌM HIỂU CÔNG NGHỆ HỌC MÁY (MACHINE LEARNING)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.1 MB, 55 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CƠNG NGHỆ THƠNG TIN

TÌM HIỂU CƠNG NGHỆ HỌC MÁY (MACHINE LEARNING)

Giảng viên hướng dẫn: VƯƠNG XUÂN CHÍ
Sinh viên thực hiện:
PHẠM THỊ KIM NGÂN
TRẦN HỒNG PHÚC
MSSV:
2000001163
2000000553
Chun ngành:
KHOA HỌC DỮ LIỆU
Mơn học:
ĐỒ ÁN CƠ SỞ CHUYÊN NGÀNH
Khóa:
2020

Tp.HCM, tháng

năm


BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CƠNG NGHỆ THƠNG TIN


TÌM HIỂU CƠNG NGHỆ HỌC MÁY (MACHINE LEARNING)

Giảng viên hướng dẫn: VƯƠNG XUÂN CHÍ
Sinh viên thực hiện:
PHẠM THỊ KIM NGÂN
TRẦN HỒNG PHÚC
MSSV:
2000001163
2000000553
Chun ngành:
KHOA HỌC DỮ LIỆU
Mơn học:
ĐỒ ÁN CƠ SỞ CHUYÊN NGÀNH
Khóa:
2020

Tp.HCM, tháng

năm


Trường Đại học Nguyễn Tất Thành
Khoa Công Nghệ Thông Tin

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

NHIỆM VỤ ĐỒ ÁN CƠ SỞ
(Sinh viên phải đóng tờ này vào báo cáo)


Họ và tên: Phạm Thị Kim Ngân

MSSV: 2000001163

Chuyên ngành: Khoa học dữ liệu

Lớp: 20DTH1D

Email:

SĐT: 0333322154

Tên đề tài: Tìm hiểu cơng nghệ Học máy (Machine learning)
Gíao viên hướng dẫn: Vương Xuân Chí
Thời gian thực hiện: 20 /6 /2022 đến 20 /9 /2022
MÔ TẢ ĐỀ TÀI:
Là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho
phép các hệ thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể.
NỘI DUNG VÀ PHƯƠNG PHÁP:
-

Giới thiệu học máy- Machine Learning.

-

Trình bày các quy trình học máy

-

Các ứng dụng của Machine Learning trong cuộc sống


-

Kết luận

YÊU CẦU:
-

Có kiến thức, đam mê, hiểu biết về công nghệ mới như Mạng neural, Machine Learning, Deep
Learning…. Đọc hiểu tài liệu tiếng Anh, kỹ năng trình bày văn bản trên máy tính tốt.

-

Có tác phong làm việc chăm chỉ, tinh thần trách nhiệm cao, có khả năng làm việc độc lập hoặc
làm việc trong nhóm tốt.

Nội dung và yêu cầu đã được thông qua Bộ môn.
Q. TRƯỞNG BỘ MƠN
(Ký và ghi rõ họ tên)
ThS. Vương Xn Chí

TP.HCM, ngày 26 tháng 06 năm 2022
GIÁO VIÊN HƯỚNG DẪN
(Ký và ghi rõ họ tên)

ThS. Vương Xuân Chí


Trường Đại học Nguyễn Tất Thành
Khoa Công Nghệ Thông Tin


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

NHIỆM VỤ ĐỒ ÁN CƠ SỞ
(Sinh viên phải đóng tờ này vào báo cáo)

Họ và tên: Trần Hoàng Phúc

MSSV: 2000001163

Chuyên ngành: Khoa học dữ liệu

Lớp: 20DTH2A

Email:

SĐT: 0816509547

Tên đề tài: Tìm hiểu cơng nghệ Học máy (Machine learning)
Gíao viên hướng dẫn: Vương Xuân Chí
Thời gian thực hiện: 20/6/2022 đến 20/9/2022
MÔ TẢ ĐỀ TÀI:
Là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho
phép các hệ thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể.
NỘI DUNG VÀ PHƯƠNG PHÁP:
-

Giới thiệu học máy- Machine Learning.


-

Trình bày các quy trình học máy

-

Các ứng dụng của Machine Learning trong cuộc sống

-

Kết luận

YÊU CẦU:
-

Có kiến thức, đam mê, hiểu biết về công nghệ mới như Mạng neural, Machine Learning, Deep
Learning…. Đọc hiểu tài liệu tiếng Anh, kỹ năng trình bày văn bản trên máy tính tốt.

-

Có tác phong làm việc chăm chỉ, tinh thần trách nhiệm cao, có khả năng làm việc độc lập hoặc
làm việc trong nhóm tốt.

Nội dung và yêu cầu đã được thơng qua Bộ mơn.
Q. TRƯỞNG BỘ MƠN
(Ký và ghi rõ họ tên)

ThS. Vương Xuân Chí

TP.HCM, ngày 26 tháng 06 năm 2022

GIÁO VIÊN HƯỚNG DẪN
(Ký và ghi rõ họ tên)

ThS. Vương Xuân Chí


LỜI CẢM ƠN
Người mà em muốn cảm ơn đầu tiên là thầy Vương Xn Chí giảng viên hướng dẫn mơn đồ
án cơ sở khoa học dữ liệu đã nhiệt tình giúp đỡ em trong suốt khoảng thời gian học, giải đáp
mọi thắc mắc cũng như các vấn đề khó trong quá trình học tập cũng như thực hành. Trong
quá trình học tập thì thầy đã có các bài giảng hay, dễ tiếp thu giúp các sinh viên mới như em
dễ dàng tiếp thu được các kiến thức mới. Và trong suốt q trình thực hiện đồ án thì thầy
ln nhiệt tình giải đáp và đưa ra những lời khuyên bổ ích giúp e hoàn thiện tốt hơn cho đồ
án của mình.
Tiếp đến là em xin gửi lời cảm ơn của mình đến các anh chị khóa trên đã chia sẽ
nhưng kinh nghiệm q báo của mình cho e để cho e có thể làm tốt đồ án mơn học này của
mình. Các anh chị đã dành thời gian rãnh của mình để nhận xét và góp ý cho em. Đồng thời
cũng cảm ơn những người bạn luôn bên cạnh em, dù nội dung đồ án có khác nhau những vẫn
quan tâm, để ý đến bài làm của em.
Vì thời gian ngắn cịn phải chia đều thời gian cho các mơn cộng với việc vẫn chưa có
nhiều kinh nghiệm trọng việc layout nên khơng tránh được những thiếu sót và nhiều điểm
cịn chưa hợp lí. Em mong là mình sẽ nhận được sự thơng cảm và góp ý từ các thầy cơ để bổ
sung và hồn thiện, có thêm kinh nghiệm để cho các đồ án sau này được tốt hơn.

Em xin chân thành cảm ơn!

Sinh viên thực hiện

Phạm Thị Kim Ngân
Trần Hoàng Phúc



LỜI MỞ ĐẦU
Về Machine Learning Học máy là tấm vé hạng nhất đến với những nghề nghiệp thú vị nhất
trong phân tích dữ liệu ngày nay. Khi các nguồn dữ liệu gia tăng cùng với sức mạnh tính
tốn để xử lý chúng, đi thẳng đến dữ liệu là một trong những cách đơn giản nhất để nhanh
chóng có được thơng tin chi tiết và đưa ra dự đoán. Máy học tập hợp khoa học máy tính và
thống kê để khai thác sức mạnh dự đốn đó. Đó là kỹ năng cần phải có đối với tất cả các nhà
phân tích dữ liệu và nhà khoa học dữ liệu đầy tham vọng hoặc bất kỳ ai khác muốn giành tất
cả dữ liệu thơ đó thành các xu hướng và dự đốn đã được tinh chỉnh. Học máy sẽ dạy cho
bạn quy trình đầu cuối của việc điều tra dữ liệu thơng qua lăng kính máy học. Nó sẽ dạy bạn
cách trích xuất và xác định các tính năng hữu ích thể hiện tốt nhất dữ liệu của bạn, một số
thuật toán máy học quan trọng nhất và cách đánh giá hiệu suất của các thuật toán máy học
của bạn.


TRƯỜNG ĐH NGUYỄN TẤT THÀNH

KỲ THI KẾT THÚC HỌC PHẦN

TRUNG TÂM KHẢO THÍ

HỌC KỲ III NĂM HỌC 2021 - 2022

PHIẾU CHẤM THI TIỂU LUẬN/ĐỒ ÁN
Môn thi: Đồ án cơ sở Khoa học dữ liệu Lớp học phần: 20DTH2A
Nhóm sinh viên thực hiện:
1.Sinh viên: Trần Hồng Phúc

Tham gia đóng góp: Chỉnh sửa soạn thảo


2.Sinh viên: Phạm Thị Kim Ngân

Tham gia đóng góp: Tra cứu thơng tin

Ngày thi:

22/09/2022

Phịng thi: L.507

Đề tài tiểu luận/báo cáo của sinh viên: TÌM HIỂU CƠNG NGHỆ HỌC MÁY (MACHINE
LEARNING)
Phần đánh giá của giảng viên (căn cứ trên thang rubrics của mơn học):
Tiêu chí (theo CĐR HP)

Đánh giá của GV

Điểm tối đa

Điểm đạt được

Cấu trúc của báo cáo
Nội dung


Các nội dung thành phần


Lập luận



Kết luận


Trình bày
TỔNG ĐIỂM

Giảng viên chấm thi
(ký, ghi rõ họ tên)


PHẦN NHẬN XÉT + CHẤM ĐIỂM CỦA GIẢNG VIÊN

Điểm giáo viên hướng dẫn:

Điểm giảng viên chấm vòng 2:

TPHCM, Ngày …… tháng …… năm 2022

Giáo viên chấm vòng 2

Giáo viên hướng dẫn


MỤC LỤC
CHƯƠNG I: GIỚI THIỆU VỀ HỌC MÁY - MACHINE LEARNING ............................ 1
I.Giới thiệu về học máy. ...................................................................................................... 1
1.Định nghĩa.................................................................................................................. 1
2.Lý do cần tới học máy.................................................................................................... 2

II.Các loại thuật toán ........................................................................................................ 3
1. Học có giám sát ...................................................................................................... 3
2. Học khơng giám sát ............................................................................................... 6
3.Học nửa giám sát ....................................................................................................... 7
4.Học tăng cường .......................................................................................................... 8
III.Thuật toán................................................................................................................ 100
Một số thuật toán Machine learning ........................................................................... 11
IV. Lưu ý quan trọng trong Machine learning ............................................................... 11
V. Tơi nên sử dụng thuật tốn học máy nào? ................................................................. 12
1. Feature engineering............................................................................................... 133
2. Dữ liệu huấn luyện(Training data)........................................................................ 155
3. Dữ liệu kiểm thử và các độ đo .............................................................................. 155
4. Hiệu suất ............................................................................................................... 166
CHƯƠNG II: CÁC QUY TRÌNH HỌC MÁY ................................................................. 18
1. Các qui trình cơ bản của Machine learning ............................................................ 19
2. Gradient thuật tốn - tối ưu hóa thông tin số cho Học máy hệ thống ................... 255


3. Received format .................................................................................................... 266
4. Nhận sự kiện dạng .................................................................................................. 27
CHƯƠNG III: CÁC ỨNG DỤNG CỦA MACHINE LEARNING TRONG CUỘC SỐNG
........................................................................................................................................... 29
1. Cảnh báo giao thông (trên ứng dụng Google Maps) .............................................. 29
2. Ứng dụng của Machine Learning trong mạng xã hội Facebook .......................... 300
3. Trợ lý cá nhân ảo (Virtual Personal Assistants) – Ứng dụng của Machine Learning311
4. Truyền phát video trực tuyến trên Netflix (Online Video Streaming) ................. 311
5. Machine learning - Công nghê khai thác tối đa giá trị Big DATAError! Bookmark
not defined.2
6. Machine learning gắn liền với quá trình phát triển Internet ................................. 333
7. Machine learning và vai trò của con người .......................................................... 344

8. Machine learning hỗ trợ cho các thông báo xác định ........................................... 355
9. Học máy và tiếp thị nội dung ................................................................................ 366
10. Máy học áp dụng trong thực tế ............................................................................. 37
11. Tóm tắt lại ............................................................................................................. 38
CHƯƠNG IV: KẾT LUẬN ............................................................................................... 411
Nguồn: /> />
DANH MỤC CÁC BẢNG BIỂU

Bảng 1 ........................................................................................................................... 5
Bảng 2 ........................................................................................................................... 6



DANH MỤC CÁC BẢNG HÌNH

Hình 1 ........................................................................................................................... 1
Hình 2 ........................................................................................................................... 7
Hình 3 ........................................................................................................................... 8
Hình 4 ......................................................................................................................... 12
Hình 5 ......................................................................................................................... 19
Hình 6 ......................................................................................................................... 22
Hình 7 ......................................................................................................................... 23
Hình 8 ......................................................................................................................... 24
Hình 9 ......................................................................................................................... 25
Hình 10 ....................................................................................................................... 27
Hình 11 ....................................................................................................................... 28
Hình 12 ....................................................................................................................... 30


DANH MỤC CÁC TỪ VIẾT TẮT



CHƯƠNG I: GIỚI THIỆU VỀ HỌC MÁY - MACHINE LEARNING
I.Giới thiệu về học máy.
1.Định nghĩa
Trong hai thập kỷ qua, Học máy đã trở thành một trong những trụ cột của cơng nghệ
thơng tin và cùng với đó, một cơng cụ khá trung tâm, mặc dù thường là ẩn, một phần
cuộc sống của chúng ta. Với số lượng ngày càng tăng của dữ liệu trở nên có sẵn lý do
chính đáng để tin rằng phân tích dữ liệu thơng minh sẽ trở thànhthậm chí cịn phổ biến
hơn như một thành phần cần thiết cho tiến bộ cơng nghệ. Mục đích của chương này là
cung cấp cho người đọc một cái nhìn tổng quan về phạm vi rộng lớn của các ứng dụng
có trung tâm là máy học vấn đề và để mang lại một số mức độ trật tự cho các vấn đề.
Sau đó, chúng ta sẽ thảo luận về một số công cụ cơ bản từ thống kê và lý thuyết xác
suất, vì chúng tạo thành ngơn ngữ mà trong đó nhiều vấn đề học máy phải
được diễn đạt để trở nên dễ giải quyết. Cuối cùng, chúng tôi sẽ phác thảo một tập hợp
các thuật toán khá cơ bản nhưng hiệu quả để giải quyết một vấn đề quan trọng, cụ thể là
phân loại. Các công cụ phức tạp hơn, một cuộc thảo luận về tổng quát hơn các vấn đề
và phân tích chi tiết sẽ tiếp theo trong các phần sau của cuốn sách.
Học máy (machine learning) là khả năng của chương trình máy tính sử dụng kinh
nghiệm, quan sát, hoặc dữ liệu trong quá khứ để cải thiện cơng việc của mình trong
tương lai thay vì chỉ thực hiện theo đúng các quy tắc đã được lập trình sẵn. Chẳng hạn,
máy tính có thể học cách dự đốn dựa trên các ví dụ, hay học cách tạo ra các hành vi
phù hợp dựa trên quan sát trong q khứ.
Học máy có thể xuất hiện dưới nhiều hình thức. Bây giờ chúng ta thảo luận về một số
ứng dụng, các loại dữ liệu mà chúng xử lý và cuối cùng, chúng tơi chính thức hóa vấn
đề theo kiểu cách điệu hơn một chút. Điều sau là chìa khóa nếu chúng ta muốn tránh
phát minh lại bánh xe cho mọi ứng dụng mới. Thay vào đó, phần lớn nghệ thuật của
máy học là giảm thiểu một loạt các vấn đề khá khác nhau để một tập hợp các nguyên

1



mẫu khá hẹp. Phần lớn khoa học của máy học là sau đó để giải quyết những vấn đề đó
và cung cấp các đảm bảo tốt cho các giải pháp.
Ví dụ. Xét một số ví dụ sau. Ví dụ thứ nhất là học cách đánh cờ. Chương trình có thể
quan sát các ván cờ cùng với kết quả (thắng hay thua) để cải thiện khả năng chơi cờ và
tăng số ván thắng trong tương lai. Trong trường hợp này, kinh nghiệm là các ván cờ
trong quá khứ (có thể là ván cờ chương trình tự chơi với chính mình), được sử dụng để
học cách làm tốt hơn công việc chơi cờ với tiêu chí đánh giá là số ván thắng.
Ví dụ thứ hai là học nhận dạng các ký tự. Chương trình được cung cấp dữ liệu dưới
dạng ảnh chụp các ký tự (chữ cái) cùng mã UNICODE của ký tự đó. Sau khi học,
chương trình cần có khả năng nhận dạng các ảnh chụp ký tự mới, tức là xác định được
mã UNICODE của các ảnh mới chụp ký tự đã được học.
Tương tự q trình học thơng thường, một hệ thống học máy cần có khả năng ghi nhớ,
thích nghi, và đặc biệt là tổng qt hóa. Tổng quát hóa là khả năng của hệ thống học
máy ra quyết định chính xác trong các trường hợp mới, chưa gặp, dựa trên kinh nghiệm
học được từ dữ liệu hoặc các quan sát trước đó.

2.Lý do cần tới học máy
Học máy là một nhánh nghiên cứu rất quan trọng của trí tuệ nhân tạo với khá nhiều ứng
dụng thành cơng trong thực tế. Hiện nay, học máy là một trong những lĩnh vực phát triển
mạnh nhất của trí tuệ nhân tạo. Có một số lý do giải thích cho sự cần thiết và phát triển
của học máy:


Thứ nhất, rất khó xây dựng hệ thống thơng minh có thể thực hiện các cơng việc liên
quan đến trí tuệ như thị giác máy, xử lý ngôn ngữ tự nhiên mà không sử dụng tới kinh
nghiệm và q trình học. Thơng thường, khi viết chương trình, cần có thuật tốn rõ
ràng để chuyển đổi đầu vào thành đầu ra. Tuy nhiên, trong nhiều bài tốn, rất khó để
xây dựng được thuật tốn như vậy. Như trong ví dụ về nhận dạng chữ ở trên, người


2


bình thường có khả năng nhận dạng các chữ rất tốt nhưng rất khó để giải thích vì sao
từ đầu vào là ảnh lại kết luận được đây là ký tự cụ thể nào. Học máy cho phép tìm ra
giải pháp cho những trường hợp như vậy dựa trên dữ liệu, chẳng hạn bằng cách tìm ra
điểm chung và riêng giữa rất nhiều ảnh chụp các ký tự.


Thứ hai, nhiều ứng dụng địi hỏi chương trình máy tính phải có khả năng thích nghi.
Ví dụ, hành vi mua sắm của khách hàng có thể thay đổi theo thời điểm cụ thể trong
ngày, trong năm, hoặc theo tuổi tác. Việc xây dựng thuật tốn cố định cho những ứng
dụng cần thích nghi và thay đổi là không phù hợp. Học máy mang lại khả năng thích
nghi nhờ phân tích dữ liệu thu thập được.



Thứ ba, việc tìm được chun gia và thu thập được tri thức cần thiết cho việc thiết kế
thuật toán để giải quyết các vấn đề tương đối khó, trong khi dữ liệu ngày càng nhiều
và có thể thu thập dễ dàng hơn. Khả năng lưu trữ và tính tốn của máy tính cũng ngày
càng tăng, cho phép thực hiện thuật tốn học máy trên dữ liệu có kích thước lớn.



Cuối cùng, bản thân khả năng học là một hoạt động trí tuệ quan trọng của con người,
do vậy học tự động hay học máy luôn thu hút được sự quan tâm khi xây dựng hệ
thống thông minh.

II.Các loại thuật toán

Các thuật toán học máy được phân loại theo kết quả mong muốn của thuật toán. Các loại
thuật tốn thường dùng bao gồm:
1. Học có giám sát
Trong đó, thuật toán tạo ra một hàm ánh xạ dữ liệu vào tới kết quả mong muốn.
Một phát biểu chuẩn về một việc học có giám sát là bài tốn phân loại: chương
trình cần học (cách xấp xỉ biểu hiện của) một hàm ánh xạ một vector [X1, X2,
X3,... Xn ] tới một vài lớp bằng cách xem xét một số mẫu dữ liệu - kết quả của hàm
đó.

3


Học có giám sát là một hướng tiếp cận của Máy học để làm cho máy tính có khả
năng "học". Trong hướng tiếp cận này, người ta "huấn luyện" máy tính dựa trên
những quan sát có dán nhãn. Ta có thể hình dung những quan sát này như là
những câu hỏi, và nhãn của chúng là những câu trả lời. Ý tưởng của học có giám
sát là: bằng việc ghi nhớ và tổng quát hóa một số quy tắc từ một tập câu hỏi có
đáp án trước, máy tính sẽ có thể trả lời được những câu hỏi dù chưa từng gặp
phải, nhưng có mối liên quan.
Ví dụ ta dạy máy tính "1 + 1 = 2" và hy vọng nó sẽ học được phép tính cộng, x +
1 và trả lời được là "2 + 1 = 3". Học có giám sát mơ phỏng việc con người học
bằng cách đưa ra dự đốn của mình cho một câu hỏi, sau đó đối chiếu với đáp án.
Sau đó con người rút ra phương pháp để trả lời đúng không chỉ câu hỏi đó, mà
cho những câu hỏi có dạng tương tự.
Trong học có giám sát, các quan sát bắt buộc phải được dán nhãn trước. Đây
chính là một trong những nhược điểm của phương pháp này, bởi vì khơng phải
lúc nào việc dán nhãn chính xác cho quan sát cũng dễ dàng. Ví dụ như trong dịch
thuật, từ một câu của ngơn ngữ gốc có thể dịch thành rất nhiều phiên bản khác
nhau trong ngôn ngữ cần dịch sang. Tuy nhiên, việc quan sát được dán nhãn cũng
lại chính là ưu điểm của học có giám sát bởi vì một khi đã thu thập được một bộ

dữ liệu lớn được dán nhãn chuẩn xác, thì việc huấn luyện trở nên dễ dàng hơn rất
nhiều so với khi dữ liệu không được dán nhãn.
Ví dụ: Trong nhận dạng chữ viết tay, ta có ảnh của hàng nghìn ví dụ của mỗi chữ
số được viết bởi nhiều người khác nhau. Chúng ta đưa các bức ảnh này vào trong
một thuật toán và chỉ cho nó biết mỗi bức ảnh tương ứng với chữ số nào. Sau khi
thuật tốn tạo ra một mơ hình, tức một hàm số mà đầu vào là một bức ảnh và đầu
ra là một chữ số, khi nhận được một bức ảnh mới mà mơ hình chưa nhìn thấy bao
giờ, nó sẽ dự đốn bức ảnh đó chứa chữ số nào.

4


Hình 1
Ví dụ này khá giống với cách học của con người khi còn nhỏ. Ta đưa bảng chữ
cái cho một đứa trẻ và chỉ cho chúng đây là chữ A, đây là chữ B. Sau một vài lần
được dạy thì trẻ có thể nhận biết được đâu là chữ A, đâu là chữ B trong một cuốn
sách mà chúng chưa nhìn thấy bao giờ.
1.1. Phân loại(Classification)
Khi đầu ra mong muốn của chúng ta là một tập hữu hạn và rời rạc. Khi đó bài tốn của
chúng ta được gọi là bài tốn phân loại. VD2 phía trên có thể xếp vào bài toán phân loại;
Các đầu ra mong muốn của chúng ta là: tích cực, tiêu cực và trung tính; Khi đó, tập dữ liệu
huấn luyện có thể giống thế này:
Bảng 1

Text
“Món này ngon phết, giá cả sinh viên nhưng
phải chờ khá lâu vì đơng khách.”

Label


Tích cực

“Chờ lâu q thể đáng.”

Tiêu cực





5


1.2. Hồi quy(Regression)
Khi đầu ra mong muốn là một dải giá trị liên tục. Chẳng hạn như giá trị xác suất, khi đó bài
tốn sẽ thuộc loại hồi quy. VD3 phía trên là một bài tốn dự đốn điểm tin cậy trong [0; 1];
Nó thể hiện xác suất một người sẽ trả các khoản vay của mình. Khi đó, dữ liệu sẽ giống như
sau:
Bảng 2

Nghề nghiệp

Thu nhập

Tuổi

Điểm tin cậy

Lập trình viên


> 1000$

25

0.85

Sinh viên

< 200$

18

0.3









Học có giám sát là thuật tốn phổ biến nhất trong các thuật toán machine learning. Hạn chế
khi sử dụng thuật toán này là chúng ta cần cung cấp dữ liệu có gán nhãn. Trong nhiều trường
hợp, để có được dữ liệu gán nhãn này rất tốn rất nhiều chi phí. Chẳng hạn trong VD2, nếu ta
cần 10.000 review có nhãn(tích cực, tiêu cực, trung tính) để huấn luyện mơ hình; Việc này sẽ
cần con người đọc từng review và gán nhãn thủ công; Điều này rất tốn thời gian và công sức.
Đây cũng là một rào cản của ML: xây dựng các tập dữ liệu gán nhãn chất lượng.

2. Học khơng giám sát

Mơ hình hóa một tập dữ liệu, khơng có sẵn các ví dụ đã được gắn nhãn.
Trong thuật tốn này, chúng ta khơng biết được dữ liệu đầu ra hay nhãn mà chỉ
có dữ liệu đầu vào. Thuật tốn Học khơng giám sát dựa vào cấu trúc của dữ liệu

6


để thực hiện một cơng việc nào đó, ví dụ như phân nhóm hoặc giảm số chiều của
dữ liệu để thuận tiện trong việc lưu trữ và tính tốn.
Một cách tốn học, Học khơng giám sát là khi chúng ta chỉ có dữ liệu vào X mà
khơng biết nhãn Y tương ứng.
Những thuật toán loại này được gọi là Học khơng giám sát vì khơng giống như
Học có giám sát, chúng ta khơng biết câu trả lời chính xác cho mỗi dữ liệu đầ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.

Hình 2
Ứng dụng phổ biến nhất của Học khơng giám sát là bài tốn về phân cụm.
3. Học nửa giám sát
Kết hợp các ví dụ có gắn nhãn và không gắn nhãn để sinh một hàm hoặc một bộ
phân loại thích hợp.
Nằm ở đâu đó giữa học tập được giám sát và khơng giám sát, vì chúng sử dụng cả
dữ liệu được gắn nhãn và không dán nhãn để đào tạo - thường là một lượng nhỏ
dữ liệu có nhãn và một lượng lớn dữ liệu không được dán nhãn. Các hệ thống sử
dụng phương pháp này có thể cải thiện đáng kể độ chính xác của việc học. Thông
thường, việc học bán giám sát được chọn khi dữ liệu được dán nhãn được yêu cầu
đòi hỏi tài nguyên có kỹ năng và có liên quan để đào tạo/học hỏi từ nó. Nếu
khơng, dữ liệu được gắn nhãn thường không yêu cầu tài nguyên bổ sung.
7



Hình 3
4. Học tăng cường
Trong đó, thuật tốn học một chính sách hành động tùy theo các quan sát về thế
giới. Mỗi hành động đều có tác động tới mơi trường, và môi trường cung cấp
thông tin phản hồi để hướng dẫn cho thuật tốn của q trình học.
Trong ngành khoa học máy tính, học tăng cường (tiếng Anh: reinforcement
learning) là một lĩnh vực con của học máy, nghiên cứu cách thức một agent trong
một môi trường nên chọn thực hiện các hành động nào để cực đại hóa một
khoản thưởng (reward) nào đó về lâu dài. Các thuật tốn học tăng cường cố gắng
tìm một chiến lược ánh xạ các trạng thái của thế giới tới các hành động mà agent
nên chọn trong các trạng thái đó.
Mơi trường thường được biểu diễn dưới dạng một quá trình quyết định
Markov trạng thái hữu hạn (Markov decision process - MDP), và các thuật tốn
học tăng cường cho ngữ cảnh này có liên quan nhiều đến các kỹ thuật quy hoạch
động. Các xác suất chuyển trạng thái và các xác suất thu lợi trong MDP thường là

8


ngẫu nhiên nhưng lại tĩnh trong quá trình của bài tốn (stationary over the course
of the problem).
Khác với học có giám sát, trong học tăng cường khơng có các cặp dữ liệu vào/kết
quả đúng, các hành động gần tối ưu cũng không được đánh giá đúng sai một cách
tường minh. Hơn nữa, ở đây hoạt động trực tuyến (on-line performance) được
quan tâm, trong đó có việc tìm kiếm một sự cân bằng giữa khám phá (lãnh thổ
chưa lập bản đồ) và khai thác (tri thức hiện có). Trong học tăng cường, sự được và
mất giữa khám phá và khai thác đã được nghiên cứu chủ yếu qua bài toán multiarmed bandit.
Một cách hình thức, mơ hình học tăng cường bao gồm:
1. S: tập các trạng thái của môi trường;

2. A: tập các hành động; và
3. : tập các khoản "thưởng" với giá trị vô hướng.
Tại mỗi thời điểm t, agent thấy được trạng thái của nó là st ∈ S và tập các hành
động có thể A(st). Nó chọn một hành động a ∈ A(st) và nhận được từ môi trường
trạng thái mới st+1 và một khoản thưởng rt+1. Dựa trên các tương tác này, agent
học tăng cường phải phát triển một chiến lược π:S →A có tác dụng cực đại hóa
lượng R=r0+r1+...+rn với các MDP có một trạng thái kết thúc, hoặc
lượng R=Σtγtrt với các MDP khơng có trạng thái kết thúc (trong đó γ là một hệ số
giảm khoản "thưởng trong tương lai" nào đó, với giá trị trong khoảng 0.0 và 1.0).
Do đó, học tăng cường đặc biệt thích hợp cho các bài tốn có sự được mất giữa
các khoản thưởng ngắn hạn và dài hạn. Học tăng cường đã được áp dụng thành
công cho nhiều bài tốn, trong đó có điều khiển robot, điều vận thang máy, viễn
thơng, các trị chơi backgammon và cờ vua.

9


1.

Chuyển đổi—tương tự học có giám sát nhưng khơng xây dựng hàm một cách rõ
ràng. Thay vì thế, cố gắng đoán kết quả mới dựa vào các dữ liệu huấn luyện, kết
quả huấn luyện, và dữ liệu thử nghiệm có sẵn trong q trình huấn luyện.

2.

Học cách học—trong đó thuật tốn học thiên kiến quy nạp của chính mình, dựa
theo các kinh nghiệm đã gặp.

Phân tích hiệu quả các thuật toán học máy là một nhánh của ngành thống kê, được biết
với tên lý thuyết học điện toán.


III.Thuật toán
Đi sâu hơn để hiểu rõ hơn cách machine learning làm việc. Để thực hiện chuyển đổi
từ input thành output mong muốn, chúng ta có thể sử dụng các mơ hình khác nhau. Machine
learning khơng phải là một loại thuật tốn duy nhất; Có thể bạn đã nghe tới Support vector
machine(SVM), Naive Bayes, Cây quyết định(Decision Trees) hay Học sâu(Deep learning).
Các thuật toán này đều cố gắng giải quyết một bài toán: Học cách chuyển đổi
mọi input thành output chính xác của mà nó thuộc về.
Những thuật tốn machine learning này sử dụng các mơ hình/ kỹ thuật khác nhau để thực
hiện quá trình học tập và thể hiện kiến thức về những gì nó được học.
Nhưng trước khi đi vào từng thuật tốn, có một ngun tắc chung: Các thuật tốn machine
learning cố gắng khái quát hóa. Nghĩa là, nó sẽ tìm và giải thích theo cách đơn giản nhất;
Ngun tắc đó được biết đến là Occam’s razor.
Mọi thuật tốn machine learning đều cố gắng đưa ra những giả thiết đơn giản nhất mà có thể
đúng với hầu hết các mẫu trong tập dữ liệu huấn luyện.
Có rất nhiều thuật tốn machine learning khác nhau. Nhưng tơi sẽ trình bày ngắn gọn về 3
thuật toán phổ biến nhất:

10


Một số thuật tốn Machine learning


Support Vector Machines: Một thuật tốn cố gắng xây dựng một siêu mặt phẳng
trong khơng gian nhiều chiều để phân biệt các đối tượng ở các lớp khác nhau; Làm
sao cho khoảng cách giữa 2 đối tượng khác label gần nhau nhất có khoảng cách
cực đại. Ý tưởng của thuật toán cực kỳ đơn giản, nhưng mơ hình này lại rất phức
tạp và có hiệu quả. Thực tế, ở một số bài toán, SVM là một mơ hình machine
learning cho hiệu quả tốt nhất.




Mơ hình xác suất(Probabilistic Models): Các mơ hình này cố gắng giải quyết bài
toán bằng phân bố xác suất. Một thuật toán phổ biến nhất là phân loại Naive
Bayes; Nó sử dụng lý thuyết Bayes và giả thiết các đặc trưng là độc lập. Điểm
mạnh của mơ hình xác suất là đơn giản nhưng hiệu quả. Đầu ra của nó khơng chỉ
là label mà còn đi kèm xác suất thể hiện độ chính xác cho kết quả đó.



Học sâu(Deep learning): Hiện đang là xu hướng trong machine learning dựa trên
các mơ hình mạng nơ ron nhân tạo(Artificial Neural Networks). Mạng nơ ron có
cách tiếp cận kết nối và sử dụng ý tưởng theo cách bộ não con người làm việc.
Chúng bao gồm số lượng lớn các nơ ron liên kết với nhau; được tổ chức thành các
lớp(layers). Học sâu liên tục được phát triển với các cấu trúc mới sâu hơn; Nó
khơng chỉ cố gắng học mà còn xây dựng các cấu trúc biểu diễn các đặc trưng quan
trọng một cách tự động.

IV. Lưu ý quan trọng trong Machine learning
Nhắc lại, Machine learning nghe có vẻ rất thần thánh. Nhưng machine learning không tự
động làm tất cả mọi thứ cho bạn được. Thực tế, có nhiều bước thủ cơng cần làm để thiết kế
ra một giải pháp. Tuy nhiên, chúng lại có ảnh hưởng lớn tới kết quả của bài toán. Một số
điều cần lưu ý là:

11


V. Tơi nên sử dụng thuật tốn học máy nào?


Hình 4
Lựa chọn thuật tốn machine learning phù hợp
1.1. Học có giám sát hay học không giám sát?
Dữ liệu của bạn có nhãn(label) hay khơng? Tức là, mỗi mẫu dữ liệu huấn luyện có một đầu
ra tương ứng hay khơng? Nếu có, bạn hãy sử dụng học có giám sát để giải bài tốn. Nếu
khơng, học khơng giám sát là thuật toán bạn nên dùng.
1.2. Phân loại, hồi quy hay phân cụm?
Điều đó phụ thuộc chủ yếu vào câu hỏi: Bạn đang muốn giải quyết cái gì? Nếu bạn muốn
gắn thẻ cho một bài báo; phân loại có thể là lựa chọn đúng đắn. Nhưng nếu bạn cần kết quả
là một con số, chẳng hạn dự báo giá nhà đất, hồi quy là lựa chọn tốt nhất. Nếu bạn có một
trang web bán hàng và muốn gợi ý sản phẩm tương tự cho khách, lựa chọn hợp lý nhất trong
trường hợp này là phân cụm.
5.1. Deep learning, SVM, Naive Bayes, Decision Trees… thuật tốn nào tốt nhất?
Câu trả lời là: Khơng có thuật tốn nào là tốt nhất cho mọi bài tốn. Có thể bạn thấy Deep
learning và SVM đã chứng minh chúng mạnh mẽ và hiệu quả trong nhiều ứng dụng khác
12


×