lOMoARcPSD| 59031616
lOMoARcPSD| 59031616
LỜI CẢM ƠN
Trước tiên với tình cảm sâu sắc chân thành nhất, cho phép em ược bày tỏ
lòng biết ơn ến tất cả các cá nhân và tổ chức ã tạo iều kiện hỗ trợ, giúp ỡ em trong
suốt quá trình học tập nghiên cứu tài y. Trong suốt thời gian từ khi bắt ầu
học tập tại trường ến nay, em ã nhận ược rất nhiều sự quan tâm, giúp của các thầy
cô và bạn bè.
Với lòng biết ơn sâu sắc nhất, em xin gửi ến quý Thầy Học viện Công nghệ
Bưu Chính Viễn thông ã truyền ạt vốn kiến thức quý báu cho em trong suốt quá
trình học tập. Nhờ những lời hướng dẫn, dạy bảo của các thầy nên tài nghiên
cứu của em mới có thể hoàn thiện tốt ẹp.
Một lần nữa, em xin chân thành cảm ơn thầy Trần Đình Quế ã giúp ỡ, quan tâm
ể em có thể hoàn thành tốt bài báo cáo này trong thời gian qua.
Bước ầu i vào thực tế của em còn hạn chế và còn nhiều bỡ ngỡ nên không tránh
khỏi những thiếu sót, em rất mong nhận ược những ý kiến óng góp quý báu của
thầy ể kiến thức của em trong bộ môn này ược hoàn thiện hơn ồng thời có iều kiện
bổ sung, nâng cao ý thức của mình.
Em xin chân thành cảm ơn!
lOMoARcPSD| 59031616
1
MỤC LỤC
CHƯƠNG 1. Một số vấn ề cơ bản của Machine Learning ......................................... 1
1.1. Tại sao Machine Learning (Học Máy) ra ời và Mục ích của nó .......................... 1
1.2. Các Kỹ Thuật Machine Learning Cơ Bản ............................................................ 3
1.2.1. Học Có Giám Sát (Supervised Learning) ...................................................... 4
1.2.2. Học Không Giám Sát (Unsupervised Learning) ........................................... 5
1.2.3. Học Củng Cố (Reinforcement Learning) ...................................................... 6
1.3. Các Kỹ Thuật Của Deep Learning ....................................................................... 7
1.3.1. Mạng Nơ-ron Nhân Tạo (Artificial Neural Networks - ANN) ..................... 7
1.3.2. Mạng Nơ-ron Convolutional (Convolutional Neural Networks - CNNs) .... 7
1.3.3. Mạng Nơ-ron Hồi Tiếp (Recurrent Neural Networks - RNNs) .................... 8
1.3.4. Mạng LSTM (Long Short-Term Memory Networks) ................................... 8
1.3.5. Mạng Nơ-ron ch Hợp Attention (Attention Mechanisms) ......................... 8
1.3.6. Transformer Networks ................................................................................... 9
1.3.7. Generative Adversarial Networks (GANs) ................................................... 9
1.3.8. Autoencoders ................................................................................................. 9
1.3.9. Deep Reinforcement Learning (DRL) ........................................................ 10
1.4. Làm Sạch và Chuẩn Hóa Dữ Liệu (Data Cleaning and Preprocessing) ............. 10
1.4.1. Nhận diện và Xử lý Dữ Liệu Thiếu (Missing Data) ................................... 10
1.4.2. Xử lý Dữ Liệu Sai (Outliers) ....................................................................... 11
1.4.3. Chuyển Đổi Dữ Liệu (Data Transformation) .............................................. 12
1.4.4. Loại Bỏ Các Biến Không Cần Thiết (Feature Selection) ............................ 12
1.4.5. Chỉnh sửa Dữ Liệu Sai (Correcting Data Errors) ........................................ 13
1.4.6. Xử lý Dữ Liệu Không Đồng Nhất (Handling Inconsistent Data) ............... 13
Ví Dụ Cụ Thể ........................................................................................................ 13
CHƯƠNG 2. Deep Learning ..................................................................................... 15
2.1. Lịch sử phát triển ................................................................................................ 15
2.1.1. Khởi ầu của các mô hình học máy và mạng nơ-ron (1950s - 1980s) ......... 15
lOMoARcPSD| 59031616
2
2.1.2. Sự tái sinh của mạng nơ-ron và sự phát triển của backpropagation (1980s -
1990s) .................................................................................................................... 15
2.1.3. Kỷ nguyên của Deep Learning hiện ại (2000s - nay).................................. 16
2.2. Kiến trúc mạng Neuron ...................................................................................... 17
2.2.1. Các Thành Phần Chính trong Kiến Trúc Mạng Nơ-ron .............................. 18
2.2.2. Các Kiến Trúc Mạng Nơ-ron Tiêu Chuẩn ................................................... 20
2.3. Các bước xây dựng mô hình học sâu (Deep Learning) ...................................... 21
2.3.1. Xác ịnh bài toán ........................................................................................... 21
2.3.2. Thu thập và chuẩn bị dữ liệu ....................................................................... 21
2.3.3. Chọn kiến trúc mạng nơ-ron ....................................................................... 22
2.3.4. Chọn hàm mất mát (Loss Function) ............................................................ 22
2.3.5. Chọn thuật toán tối ưu hóa (Optimizer) ...................................................... 23
2.3.6. Thiết kế quá trình huấn luyện ...................................................................... 23
2.3.7. Triển khai huấn luyện mô hình .................................................................... 23
2.3.8. Đánh giá mô hình ........................................................................................ 24
2.3.9. Triển khai và cải tiến ................................................................................... 25
2.3.10. Tối ưu hóa và mở rộng .............................................................................. 25
2.4. Mạng Nơ-ron Tích Chập (Convolutional Neural Networks - CNNs) ................ 25
2.4.1. Cấu trúc CNN .............................................................................................. 25
2.4.2. Quy trình Trích xuất Đặc trưng và Phân loại .............................................. 27
2.4.3. Ưu iểm của CNN ......................................................................................... 28
2.4.4. Ví dụ ............................................................................................................ 28
2.5. Mạng Nơ-ron Hồi tiếp (Recurrent Neural Networks - RNNs) ........................... 41
2.5.1. Giới thiệu về RNN ...................................................................................... 41
2.5.2. Kiến trúc của RNN ...................................................................................... 41
2.5.3. Luồng xử lý trong RNN .............................................................................. 42
2.5.4. Công thức Toán học ..................................................................................... 42
2.5.5. Ưu iểm của RNN ......................................................................................... 43
2.5.6. Hạn chế của RNN ........................................................................................ 43
lOMoARcPSD| 59031616
3
2.5.7. Cải tiến của RNN ........................................................................................ 44
2.5.8. Ví dụ ............................................................................................................ 44
2.6. Mạng bộ nhớ dài - ngắn hạn (Long Short-Term Memory – LSTM) .................. 56
2.6.1. Giới thiệu về LSTM .................................................................................... 56
2.6.2. Cấu trúc LSTM ............................................................................................ 56
2.6.3. Luồng hoạt ộng của LSTM ......................................................................... 58
2.6.4. Ưu iểm của LSTM ....................................................................................... 58
2.6.5. Hạn chế ........................................................................................................ 58
2.6.6. Ví dụ ............................................................................................................ 59
2.8. Kết luận ............................................................................................................... 71
2.8.1. Hiệu quả của các kiến trúc mạng nơ-ron ..................................................... 71
2.8.2. Ứng dụng thực tế ......................................................................................... 71
2.8.3. Lợi ích và tiềm năng .................................................................................... 71
2.8.4. Thách thức ................................................................................................... 72
CHƯƠNG 3. Deep learning trong dự oán và xử lý ảnh ............................................ 72
3.1. Dữ liệu ảnh và áp dụng bài toán nhận dạng chữ viết tay ................................... 72
3.1.1. Biểu diễn Dữ liệu Ảnh ................................................................................ 72
3.1.2. Chuẩn hóa Dữ liệu Ảnh ............................................................................... 72
3.1.3. Chuyển ổi Dữ liệu ể Phù hợp với Mô Hình ................................................ 73
3.1.4. Xử Lý Ảnh Đầu Vào Từ Người Dùng ........................................................ 73
3.1.5. Kết quả áp dụng bài toán nhận dạng chữ viết tay sử dụng mô hình CNN .. 74
3.2. Dự oán và ví dụ dự oán iểm ............................................................................... 77
3.2.1. Clean và Chuẩn hóa Dữ liệu ....................................................................... 78
3.2.2. Xây dựng mô hình dự oán iểm .................................................................... 81
CHƯƠNG 4. Deep learning trong xử lý ngôn ngữ tự nhiên ..................................... 87
4.1. Tổng quan ........................................................................................................... 87
4.1.1. Ứng dụng của Deep Learning trong NLP ................................................... 87
4.1.2. Các mô hình Deep Learning phổ biến trong NLP ....................................... 87
4.1.3. Các bước thực hiện một bài toán NLP với Deep Learning ......................... 88
lOMoARcPSD| 59031616
4
4.1.4. Công cụ và thư viện hỗ trợ NLP ................................................................. 89
4.1.5. Thách thức trong NLP với Deep Learning .................................................. 89
4.1.6. Ứng dụng thực tế của NLP với Deep Learning ........................................... 89
4.1.7. Tương lai của Deep Learning trong NLP .................................................... 90
4.2. Áp dụng cho phân loại comment với word vector ............................................. 90
CHƯƠNG 5. Triển khai Mô hình học máy ............................................................... 96
5.1. Lý thuyết ............................................................................................................. 96
5.1.1. Deploying ML (Triển khai Mô hình Học Máy) .......................................... 96
5.1.2. Case Study (Nghiên cứu Tờng hợp) ........................................................ 97
5.1.3. Huấn luyện và Lưu trữ Mô hình .................................................................. 97
5.1.4. Triển khai Mô hình ...................................................................................... 98
5.1.5. Kiểm thử Mô hình ....................................................................................... 99
5.2. Dự oán nguy cơ mắc bệnh tiểu ường5.2.1. Xây dựng và triển khai mô hình học
máy ể dự oán bệnh tiểu ường ................................................................................... 99
(diabetes) ............................................................................................................... 99
5.2.2. Tạo giao diện ............................................................................................. 104
lOMoARcPSD| 59031616
1
CHƯƠNG 1. Một số vấn ề cơ bản của Machine Learning
1.1. Tại sao Machine Learning (Học Máy) ra ời và Mục ích của nó
Machine Learning (ML) là một nhánh của trí tuệ nhân tạo (AI), ra ời ể giải quyết
những vấn ề phức tạp mà các phương pháp lập trình truyền thống không thể xử lý hiệu
quả. Trong khi các hệ thống truyền thống yêu cầu người lập trình phải xác ịnh rõ các
quy tắc và thuật toán ể giải quyết các vấn ề cụ thể, ML cho phép máy tính tự học và tự
cải thiện từ dữ liệu mà không cần sự can thiệp của con người. Sự phát triển mạnh mẽ
của ML ược thúc ẩy bởi các yếu tố như lượng dữ liệu khổng lồ, khả năng tính toán
ngày càng mạnh mẽ, và yêu cầu xử lý các vấn ề phức tạp mà không thể giải quyết
bằng cách lập trình thủ công.
Lượng Dữ Liệu Ngày Càng Tăng và Phức Tạp
Vấn ề: Với sự gia tăng của dữ liệu từ Internet, cảm biến, thiết bị di ộng, và các
công nghệ số, lượng dữ liệu ngày nay vô cùng phong phú và a dạng. Các
phương pháp truyền thống dựa vào lập trình không thể xử lý hiệu quả lượng dữ
liệu khổng lồ này. Thêm vào ó, dữ liệu ngày càng trở nên không có cấu trúc rõ
ràng và chứa nhiều yếu tố phức tạp, như ngữ cảnh, mối quan hệ, và sự thay ổi
theo thời gian.
Giải pháp của ML: Machine Learning cho phép máy tính tự ộng phân tích và
học từ dữ liệu mà không cần phải lập trình từng quy tắc cụ thể. Thay vì yêu cầu
lập trình thủ công cho từng trường hợp, các thuật toán ML có thể tìm ra các
mẫu và mối quan hệ ẩn trong dữ liệu, iều này giúp hệ thống xử lý dữ liệu lớn
và phức tạp một cách hiệu quả.
Tự Động Hóa Quy Trình và Giảm Thiểu Can Thiệp Con Người
Vấn ề: Các công việc lặp i lặp lại như phân loại email, phân tích dữ liệu, hay tự
ộng iều khiển các quy trình kinh doanh, khi ược thực hiện thủ công, tốn rất
nhiều thời gian và công sức. Việc tự ộng hóa hoàn toàn các quy trình này thông
qua lập trình truyền thống là rất khó khăn và ắt ỏ.
Giải pháp của ML: Một trong những mục ích chính của ML là tự ộng hóa các
quy trình mà không cần sự can thiệp thủ công của con người. Các thuật toán
ML có thể học và tự ộng cải thiện qua thời gian. Chẳng hạn, trong một hệ thống
email, ML có thể tự ộng phân loại thư vào các thư mục khác nhau, trong khi
trong các hệ thống tài chính, ML có thể tự ộng phát hiện các giao dịch gian lận
dựa trên các mẫu ã học từ dữ liệu trước ó.
Nhận Diện Mẫu và Dự Đoán Kết Quả
lOMoARcPSD| 59031616
2
Vấn ề: Một trong những thách thức lớn nhất khi xử lý dữ liệu là phát hiện ra
các mẫu ẩn và các xu hướng trong dữ liệu. Các mô hình truyền thống khó có
thể nhận diện những mẫu này khi dữ liệu quá phức tạp hoặc có rất nhiều yếu tố
thay ổi.
Giải pháp của ML: ML có khả năng nhận diện các mẫu ẩn trong dữ liệu mà
con người không thể dễ dàng nhận ra. Các thuật toán như Học có giám sát
(Supervised Learning)Học không giám sát (Unsupervised Learning)
giúp tìm ra các mối quan hệ và phân loại dữ liệu thành các nhóm có sự tương
ồng. Điều này ặc biệt hữu ích trong việc ưa ra dự oán về các sự kiện tương lai
dựa trên các mẫu lịch sử. Ví dụ, trong ngành tài chính, ML có thể dự oán xu
hướng thị trường chứng khoán dựa trên dữ liệu quá khứ. Khả Năng Học và
Cải Thiện Qua Thời Gian
Vấn ề: Các hệ thống truyền thống khi ối mặt với dữ liệu mới thường yêu cầu
sự can thiệp và cập nhật của lập trình viên. Trong khi ó, môi trường và dữ liệu
luôn thay ổi, và các hệ thống phải có khả năng thích nghi nhanh chóng ể ảm
bảo hiệu suất ổn ịnh.
Giải pháp của ML: Một trong những iểm mạnh của ML là khả năng học và cải
thiện qua thời gian mà không cần sự can thiệp của con người. Các mô hình học
máy có thể ược huấn luyện ể nhận ra những ặc trưng mới từ dữ liệu và tự ộng
iều chỉnh ể cải thiện kết quả dự oán. Điều này giúp các hệ thống ML duy trì
hiệu quả trong những tình huống thay ổi liên tục. Ví dụ, trong một hệ thống
phát hiện gian lận, ML có thể học từ các mẫu giao dịch mới và phát hiện các
hành vi bất thường mà không cần cập nhật thủ công các quy tắc.
Giải Quyết Các Bài Toán Phức Tạp và Không Thể Lập Trình Truyền Thống
Vấn ề: Các bài toán như nhận diện hình ảnh, phân tích ngữ nghĩa trong ngôn
ngữ tự nhiên, hay phân tích hành vi của khách hàng trong môi trường phức tạp
òi hỏi các hệ thống phải có khả năng tự học và phân tích, iều mà các phương
pháp lập trình truyền thống khó có thể xử lý.
Giải pháp của ML: Machine Learning cho phép giải quyết những bài toán này
thông qua việc sử dụng các mô hình như Deep Learning, giúp máy tính tự ộng
nhận diện và phân loại các mẫu phức tạp trong dữ liệu mà không cần phải lập
trình chi tiết từng bước. Ví dụ, trong nhận diện hình ảnh, ML có thể phát hiện
và phân loại các ối tượng trong hình ảnh mà không cần phải lập trình thủ công
cho mỗi loại hình ảnh.
Xử Lý Dữ Liệu Không Có Nhãn (Unsupervised Learning)
lOMoARcPSD| 59031616
3
Vấn ề: Nhiều dữ liệu không có nhãn sẵn (dữ liệu không ược phân loại hay gắn
nhãn), và việc áp dụng các phương pháp truyền thống ể phân tích loại dữ liệu
này là rất khó khăn.
Giải pháp của ML: Unsupervised Learning (Học không giám sát) cho phép
các mô hình học từ dữ liệu không có nhãn và tự ộng phát hiện các mẫu, nhóm
dữ liệu, hoặc các iểm bất thường. Điều này giúp máy tính tìm ra các cấu trúc
tiềm ẩn trong dữ liệu, từ ó ưa ra những quyết ịnh hoặc dự oán mà không cần
gán nhãn từ trước.
Dự Đoán và Ra Quyết Định Trong Môi Trường Thay Đổi Nhanh
Vấn ề: Các lĩnh vực như tài chính, y tế, và thương mại iện tử òi hỏi phải ưa ra
quyết ịnh dựa trên dữ liệu thời gian thực. Khi môi trường thay ổi nhanh chóng,
các phương pháp truyền thống không thể phản ứng kịp thời và chính xác.
Giải pháp của ML: Machine Learning giúp các hệ thống có thể ưa ra quyết
ịnh nhanh chóng và chính xác bằng cách học từ dữ liệu thời gian thực. Ví dụ,
trong giao dịch chứng khoán, ML có thể phân tích các biến ộng của thị trường
và dự oán xu hướng tiếp theo. Trong ngành y tế, ML có thể phân tích các chỉ số
sức khỏe của bệnh nhân và ưa ra dự oán về tình trạng sức khỏe trong thời gian
ngắn.
Khả Năng Sáng Tạo và Phát Triển Công Nghệ
Vấn ề: Việc lập trình các hệ thống sáng tạo, chẳng hạn như tạo ra âm nhạc,
nghệ thuật, hoặc viết văn, bằng các quy tắc truyền thống là rất phức tạp và hạn
chế.
Giải pháp của ML: Deep Learning và các mô hình học máy có khả năng sáng
tạo, giúp tạo ra các sản phẩm sáng tạo như âm nhạc, văn bản, hình ảnh nghệ
thuật. Các hệ thống này học từ các dữ liệu sáng tạo trước ó ể tạo ra các sản
phẩm mới, iều này không chỉ giúp ích trong nghệ thuật mà còn mở ra khả năng
sáng tạo trong nhiều lĩnh vực khác.
1.2. Các Kỹ Thuật Machine Learning Cơ Bản
Machine Learning (ML) có nhiều kỹ thuật và phương pháp khác nhau ược áp dụng tùy
thuộc vào loại bài toán và dữ liệu có sẵn. Dưới ây là các kỹ thuật cơ bản trong học
máy, phân chia theo các phương pháp học chính: Học có giám sát (Supervised
Learning), Học không giám sát (Unsupervised Learning) và Học củng cố
(Reinforcement Learning).
lOMoARcPSD| 59031616
4
1.2.1. Học Có Giám Sát (Supervised Learning)
Học có giám sát là kỹ thuật học máy phổ biến nhất, trong ó các mô hình ược huấn
luyện trên dữ liệu ã ược gán nhãn (có kết quả ầu ra rõ ràng). Mục tiêu là tạo ra một mô
hình có thể dự oán ược ầu ra cho dữ liệu chưa thấy.
Các Kỹ Thuật Cơ Bản Trong Học Có Giám Sát:
1. Hồi quy tuyến tính (Linear Regression) o Mô tả: Đây là một kỹ thuật học
máy ơn giản ược sử dụng ể dự oán giá trị liên tục. Ví dụ, dự oán giá nhà dựa
trên diện tích, số phòng ngủ, vị trí,...
o Cách hoạt ộng: Mô hình học từ dữ liệu ể tìm ra mối quan hệ tuyến tính
giữa các ặc trưng ầu vào (features) và giá trị ầu ra (target).
o Ứng dụng: Dự báo giá nhà, dự oán doanh thu, phân tích xu hướng.
2. Hồi quy logistic (Logistic Regression) o tả: Đây là một kỹ thuật dùng ể
giải quyết bài toán phân loại nhị phân (chẳng hạn như phân loại email là spam
hay không).
o Cách hoạt ộng: Mô hình dùng một hàm sigmoid ể chuyển ổi các giá trị
ầu ra thành xác suất từ 0 ến 1, sau ó phân loại dựa trên ngưỡng xác suất.
o Ứng dụng: Phân loại, chẩn oán bệnh, phân tích tín dụng.
3. Cây quyết ịnh (Decision Tree) o Mô tả: Cây quyết ịnh là một mô hình phân
loại và hồi quy, trong ó dữ liệu ược chia thành các nhóm con bằng cách sử
dụng các câu hỏi hoặc ặc trưng ặc trưng.
o Cách hoạt ộng: Mô hình tạo ra một cấu trúc giống cây với các nhánh ại
diện cho các câu hỏi hoặc các iều kiện kiểm tra, và các lá cây là các d
oán.
o Ứng dụng: Phân loại khách hàng, phân loại email, phân tích kinh doanh.
4. K-Nearest Neighbors (KNN)
o Mô tả: Đây là một thuật toán phân loại dựa trên khoảng cách giữa các
iểm dữ liệu. KNN phân loại một iểm dữ liệu mới dựa trên nhãn của các
iểm dữ liệu gần nhất.
o Cách hoạt ộng: Đối với mỗi iểm dữ liệu mới, thuật toán tìm kiếm k iểm
gần nhất trong dữ liệu huấn luyện và dự oán nhãn dựa trên a số phiếu
bầu của các iểm ó.
lOMoARcPSD| 59031616
5
o Ứng dụng: Phân loại văn bản, nhận diện hình ảnh, phân tích hành vi
khách hàng.
5. Máy Vector Hỗ trợ (SVM - Support Vector Machine) o Mô tả: SVM là một
thuật toán phân loại mạnh mẽ, tìm kiếm siêu phẳng tốt nhất ể phân tách các lớp
dữ liệu.
o Cách hoạt ộng: SVM tìm ra một siêu phẳng trong không gian dữ liệu
sao cho khoảng cách giữa các iểm dữ liệu và siêu phẳng là lớn nhất.
o Ứng dụng: Nhận dạng hình ảnh, phân loại văn bản, phân tích sinh học.
6. Mạng nơ-ron nhân tạo (Artificial Neural Networks - ANN) o Mô tả: Mạng
nơ-ron nhân tạo mô phỏng cách thức hoạt ộng của bộ não con người, sử dụng
các lớp nơ-ron ể học và ưa ra dự oán.
o Cách hoạt ộng: Mô hình học thông qua việc iều chỉnh trọng số trong
các kết nối giữa các nơ-ron trong mạng, sao cho ầu ra khớp với kết quả
mong muốn.
o Ứng dụng: Nhận dạng hình ảnh, dịch máy, phân tích ngữ nghĩa.
1.2.2. Học Không Giám Sát (Unsupervised Learning)
Trong học không giám sát, dữ liệu không có nhãn sẵn. Mô hình học từ các ặc trưng
của dữ liệu ể khám phá các cấu trúc ẩn trong dữ liệu mà không cần dựa vào các nhãn
ầu ra.
Các Kỹ Thuật Cơ Bản Trong Học Không Giám Sát:
1. Phân cụm K-means (K-means Clustering) o Mô tả: Là một thuật toán phân
cụm phổ biến, K-means tìm cách chia dữ liệu thành k nhóm sao cho các iểm
trong mỗi nhóm có sự tương ồng cao nhất.
o Cách hoạt ộng: Thuật toán xác ịnh các tâm cụm (centroids) và gán mỗi
iểm dữ liệu vào nhóm gần nhất, sau ó iều chỉnh các tâm cụm ể tối ưu
hóa sự phân tách.
o Ứng dụng: Phân khúc khách hàng, phân tích dữ liệu lớn, nghiên cứu thị
trường.
lOMoARcPSD| 59031616
6
2. Phân tích thành phần chính (PCA - Principal Component Analysis) o
tả: PCA là một kỹ thuật giảm chiều dữ liệu, giúp giảm bớt số lượng biến trong
dữ liệu mà vẫn giữ lại phần lớn thông tin quan trọng.
o Cách hoạt ộng: PCA xác ịnh các thành phần chính (principal
components) mới, là các kết hợp tuyến tính của các ặc trưng ban ầu,
giúp giảm bớt ộ phức tạp của dữ liệu.
o Ứng dụng: Giảm chiều dữ liệu, tìm kiếm mẫu ẩn, phân tích hình ảnh.
3. Phát hiện bất thường (Anomaly Detection) o Mô tả: Là một kỹ thuật trong
học không giám sát dùng ể phát hiện các iểm dữ liệu khác biệt hoặc không
bình thường so với phần còn lại của tập dữ liệu.
o Cách hoạt ộng: Thuật toán học các mẫu chuẩn trong dữ liệu và phát
hiện các iểm bất thường có sự khác biệt lớn.
o Ứng dụng: Phát hiện gian lận trong giao dịch tài chính, kiểm tra chất
lượng sản phẩm, phát hiện sự cố trong hệ thống.
4. Mạng nơ-ron tự mã hóa (Autoencoders) o Mô tả: Autoencoders là một loại
mạng nơ-ron ược huấn luyện ể học cách nén dữ liệu vào một không gian kích
thước nhỏ và sau ó phục hồi lại dữ liệu gốc.
o Cách hoạt ộng: Mạng nơ-ron học cách biểu diễn dữ liệu dưới dạng ít
chiều hơn và sử dụng kiến thức này ể tái tạo lại dữ liệu.
o Ứng dụng: Giảm chiều dữ liệu, nhận diện mẫu, lọc nhiễu trong dữ liệu.
1.2.3. Học Củng Cố (Reinforcement Learning)
Học củng cố là một kỹ thuật trong ó mô hình học từ môi trường bằng cách thực hiện
các hành ộng và nhận lại phản hồi dưới dạng phần thưởng hoặc hình phạt. Đây là
phương pháp phổ biến trong các bài toán quyết ịnh liên tục và các trò chơi.
Các Kỹ Thuật Cơ Bản Trong Học Củng Cố:
1. Q-learning o Mô tả: Là một thuật toán học củng cố, nơi ại lý học cách tối
ưu hóa phần thưởng lâu dài thông qua các hành ộng trong môi trường.
o Cách hoạt ộng: Mô hình học cách chọn hành ộng ể tối a hóa phần
thưởng tích lũy trong tương lai, sử dụng bảng Q ể lưu trữ giá trị của các
hành ộng tại mỗi trạng thái.
lOMoARcPSD| 59031616
7
o Ứng dụng: Tự ộng hóa quá trình ra quyết ịnh trong robot, xe tự lái, và
các trò chơi chiến thuật.
2. Deep Q-Network (DQN) o Mô tả: Đây là một sự kết hợp giữa học củng cố
và học sâu, nơi mạng nơ-ron học ể ước tính bảng Q cho các tình huống
phức tạp hơn.
o Cách hoạt ộng: Mạng nơ-ron ược huấn luyện ể ước tính giá trị của các
hành ộng tại mỗi trạng thái, giúp cải thiện khả năng ra quyết ịnh.
o Ứng dụng: Được sử dụng trong các trò chơi iện tử, tự ộng lái xe, và các
ứng dụng robot phức tạp.
1.3. Các Kỹ Thuật Của Deep Learning
Deep Learning (Học sâu) là một nhánh con của Machine Learning (ML), với mục
tiêu phát triển các mô hình học tự ộng thông qua các mạng -ron nhân tạo sâu. Các
kỹ thuật trong Deep Learning sử dụng nhiều lớp mạng nơ-ron ể tự học từ dữ liệu, giúp
giải quyết các bài toán phức tạp trong nhận dạng hình ảnh, ngữ âm, ngôn ngữ tự
nhiên, và nhiều ứng dụng khác.
1.3.1. Mạng Nơ-ron Nhân Tạo (Artificial Neural Networks - ANN)
Mô tả: Mạng nơ-ron nhân tạo (ANN) là mô hình học sâu cơ bản nhất, mô
phỏng cách thức hoạt ộng của bộ não con người. Mạng này bao gồm nhiều lớp
nơ-ron (hoặc ơn vị xử lý) kết nối với nhau ể học và tạo ra các dự oán.
Cấu trúc: Một mạng ANN bao gồm ba loại lớp:
o Lớp ầu vào (Input Layer): Chứa các ặc trưng của dữ liệu ầu vào.
o Lớp ẩn (Hidden Layers): Các lớp này thực hiện tính toán và học các ặc
trưng phức tạp từ dữ liệu.
o Lớp ầu ra (Output Layer): Cung cấp kết quả dự oán hoặc phân loại.
Ứng dụng: Phân loại văn bản, dự báo thời tiết, nhận diện hình ảnh.
1.3.2. Mạng Nơ-ron Convolutional (Convolutional Neural Networks - CNNs)
Mô tả: CNNs là một loại mạng nơ-ron ược thiết kế ặc biệt ể xử lý và phân tích
dữ liệu có cấu trúc dạng lưới, chẳng hạn như hình ảnh và video. CNN sử dụng
các phép toán convolution ể phát hiện các ặc trưng như cạnh, hình dạng trong
ảnh.
Cấu trúc: Một CNN iển hình bao gồm:
lOMoARcPSD| 59031616
8
o Lớp convolution (Convolutional Layer): Áp dụng các bộ lọc (filters) ể
trích xuất các ặc trưng từ ảnh.
o Lớp pooling (Pooling Layer): Giảm ộ phân giải của hình ảnh ể giảm
tính toán và giữ lại các ặc trưng quan trọng.
o Lớp fully connected (Fully Connected Layer): Kết nối các ặc trưng ã
học ể ưa ra kết quả phân loại.
Ứng dụng: Nhận diện hình ảnh, phân loại ảnh, nhận dạng ối tượng, nhận dạng
khuôn mặt, nhận dạng chữ viết tay.
1.3.3. Mạng Nơ-ron Hồi Tiếp (Recurrent Neural Networks - RNNs)
Mô tả: RNNs ược thiết kế ể xử lý dữ liệu theo chuỗi, như văn bản, âm thanh
hoặc chuỗi thời gian. Mô hình này có khả năng nhớ các thông tin trong quá khứ
nhờ vào các kết nối hồi tiếp, giúp xử lý các dữ liệu tuần tự.
Cấu trúc: Các nơ-ron trong RNN có kết nối hồi tiếp, giúp thông tin từ các
bước trước ó ược lưu trữ và sử dụng cho các bước tiếp theo trong chuỗi.
Ứng dụng: Xử lý ngôn ngữ tự nhiên (NLP), dịch máy, phân tích chuỗi thời
gian, nhận dạng giọng nói, dự báo tài chính.
1.3.4. Mạng LSTM (Long Short-Term Memory Networks)
Mô tả: LSTM là một dạng mở rộng của RNN, ược thiết kế ể khắc phục vấn ề
"biến mất gradient" trong quá trình huấn luyện RNN với chuỗi dài. LSTM có
các cổng (gates) giúp lưu trữ thông tin lâu dài và loại bỏ thông tin không cần
thiết.
Cấu trúc: LSTM sử dụng các cổng input gate, forget gate, và output gate
iều khiển dòng thông tin trong mạng, cho phép mô hình học các mối quan hệ
dài hạn.
Ứng dụng: Dịch máy, tạo văn bản tự ộng, phân tích chuỗi thời gian phức tạp,
nhận diện giọng nói.
1.3.5. Mạng Nơ-ron Tích Hợp Attention (Attention Mechanisms)
Mô tả: Attention là một kỹ thuật trong deep learning giúp mô hình tập trung
vào các phần quan trọng nhất của dữ liệu ầu vào. Kỹ thuật này giúp cải thiện
hiệu suất của các mô hình xử lý ngôn ngữ tự nhiên (NLP) và các bài toán liên
quan ến chuỗi.
lOMoARcPSD| 59031616
9
Cấu trúc: Mô hình sử dụng cơ chế attention ể tự ộng iều chỉnh trọng số cho
từng phần của dữ liệu, giúp mô hình quyết ịnh phần nào của dữ liệu cần chú ý
nhiều hơn.
Ứng dụng: Dịch máy (machine translation), tóm tắt văn bản, tạo caption cho
ảnh, trả lời câu hỏi tự ộng.
1.3.6. Transformer Networks
Mô tả: Transformer là một kiến trúc deep learning ược giới thiệu trong bài báo
"Attention is All You Need". Mô hình này sử dụng hoàn toàn cơ chế
selfattention ể xử lý thông tin, thay vì sử dụng các mạng hồi tiếp như RNN và
LSTM.
Cấu trúc: Các mô hình Transformer bao gồm hai phần chính:
o Encoder: Xử lý thông tin ầu vào và chuyển ổi chúng thành các vector ặc
trưng.
o Decoder: Sử dụng các vector ặc trưng ể tạo ra ầu ra.
Ứng dụng: Dịch máy, tạo văn bản tự ộng, phân tích ngữ nghĩa trong văn bản,
GPT, BERT, các mô hình ngôn ngữ tự nhiên tiên tiến.
1.3.7. Generative Adversarial Networks (GANs)
Mô tả: GANs bao gồm hai mạng nơ-ron cạnh tranh: Generator (Tạo sinh) và
Discriminator (Phân biệt). Mô hình này học cách tạo ra dữ liệu giống như dữ
liệu gốc bằng cách cố gắng "lừa" phân biệt. Generator tạo ra dữ liệu giả, trong
khi Discriminator cố gắng phân biệt giữa dữ liệu thật và giả.
Cấu trúc:
o Generator: Tạo ra dữ liệu giả từ một vector ngẫu nhiên.
o Discriminator: Nhận dữ liệu và quyết ịnh liệu nó là dữ liệu thật hay giả.
Ứng dụng: Tạo hình ảnh, tạo video, tạo văn bản, tạo âm nhạc, tăng cường dữ
liệu, chuyển ổi ảnh (style transfer).
1.3.8. Autoencoders
Mô tả: Autoencoders là mạng nơ-ron không giám sát ược huấn luyện ể học một
biểu diễn nén (compressed representation) của dữ liệu ầu vào. Mô hình này học
cách tái tạo lại dữ liệu ầu vào từ biểu diễn nén, giúp giảm chiều dữ liệu và phát
hiện các ặc trưng quan trọng.
lOMoARcPSD| 59031616
10
Cấu trúc: Một Autoencoder bao gồm hai phần: o Encoder: Mã hóa ầu vào
thành một vector nén.
o Decoder: Tái tạo lại ầu ra từ vector nén.
Ứng dụng: Giảm chiều dữ liệu, học ặc trưng, phát hiện bất thường, lọc nhiễu.
1.3.9. Deep Reinforcement Learning (DRL)
Mô tả: Deep Reinforcement Learning kết hợp giữa học củng cố và học sâu.
Các mô hình DRL sử dụng các mạng nơ-ron sâu ể học cách tối ưu hóa hành
ộng trong môi trường, thông qua việc tối a hóa phần thưởng tích lũy.
Cấu trúc: DRL sử dụng các mô hình học sâu (như CNN hoặc RNN) ể học các
chiến lược hành ộng trong các môi trường phức tạp. Hệ thống này có thể tự ộng
học và tối ưu hóa chính sách hành ộng qua nhiều vòng huấn luyện.
Ứng dụng: Xe tự lái, game, robot tự ộng, tối ưu hóa chiến lược.
1.4. Làm Sạch và Chuẩn Hóa Dữ Liệu (Data Cleaning and Preprocessing)
Làm sạch và chuẩn hóa dữ liệu là một bước quan trọng trong quy trình phân tích dữ
liệu và xây dựng mô hình học máy. Dữ liệu thô có thể chứa nhiều lỗi và sự thiếu sót,
và chúng cần ược xử lý trước khi có thể ưa vào mô hình học máy.
Các bước trong quá trình làm sạch và chuẩn hóa dữ liệu thường bao gồm:
Các Bước Cơ Bản:
1.4.1. Nhận diện và Xử lý Dữ Liệu Thiếu (Missing Data)
Trong quá trình phân tích và xử lý dữ liệu, dữ liệu thiếu là một vấn ề phổ biến có thể
ảnh hưởng nghiêm trọng ến hiệu quả của mô hình học máy. Các phương pháp ể xử lý
dữ liệu thiếu bao gồm: Phát hiện dữ liệu thiếu
Sử dụng phương pháp thống kê:
o Đếm số lượng giá trị thiếu trong mỗi cột ể xác ịnh mức ộ nghiêm trọng
của dữ liệu thiếu.
o Thường sử dụng các phương pháp như .isnull() hoặc .sum() trong thư
viện Pandas ể phát hiện và ếm các giá trị bị thiếu.
Xử lý dữ liệu thiếu
Điền giá trị thay thế:
lOMoARcPSD| 59031616
11
o Điền giá trị trung bình (mean) cho dữ liệu số, hoặc mode (giá trị xuất
hiện nhiều nhất) ối với dữ liệu phân loại. o dụ: Cột Age có thể iền
giá trị trung bình hoặc iền giá trị của ộ tuổi nhóm tương ứng (ví dụ nhóm
tuổi 30-40).
Sử dụng thuật toán ể dự oán giá trị thiếu (Imputation):
o Một số kỹ thuật nâng cao sử dụng các mô hình học máy ể dự oán giá trị
thiếu dựa trên các ặc trưng khác. Thường sử dụng các mô hình như
KNN, Decision Trees ể dự oán giá trị.
o Thư viện như sklearn.impute.SimpleImputer hoặc IterativeImputer
có thể ược sử dụng.
Loại bỏ dữ liệu thiếu:
o Nếu tỉ lệ dữ liệu thiếu quá cao (ví dụ, hơn 40% dữ liệu bị thiếu trong
một cột), có thể loại bỏ cột ó.
o Loại bỏ hàng khi dữ liệu thiếu quá nhiều, nhưng chỉ thực hiện khi số
lượng hàng thiếu không quá lớn so với tổng số hàng.
1.4.2. Xử lý Dữ Liệu Sai (Outliers)
Outliers hay giá trị ngoại lai là các giá trị nằm ngoài phạm vi dự oán bình thường của
dữ liệu. Các giá trị này có thể là sai sót trong quá trình thu thập hoặc nhập liệu, hoặc
có thể là những giá trị cực oan nhưng hợp lệ.
Phát hiện Outliers
Phương pháp IQR (Interquartile Range):
o Cách phổ biến ể phát hiện outliers là sử dụng khoảng tứ phân vị (IQR). Giá
trị ngoại lai có thể ược xác ịnh là những giá trị nằm ngoài phạm vi [Q1 -
1.5*IQR, Q3 + 1.5*IQR], với Q1 và Q3 là tứ phân vị thứ nhất và thứ ba.
Phương pháp Z-score:
o Nếu dữ liệu có phân phối chuẩn, có thể sử dụng Z-score ể phát hiện
outliers. Các giá trị có Z-score > 3 hoặc < -3 ược coi là ngoại lai. Xử lý
Outliers
Loại bỏ các outliers: Trong một số trường hợp, nếu giá trị ngoại lai không có ý
nghĩa thực tế, có thể loại bỏ chúng khỏi bộ dữ liệu.
lOMoARcPSD| 59031616
12
Thay thế các outliers: Thay thế giá trị ngoại lai bằng giá trị trung bình hoặc
giá trị gần nhất trong phạm vi hợp lý.
1.4.3. Chuyển Đổi Dữ Liệu (Data Transformation)
Chuyển ổi dữ liệu giúp ưa dữ liệu vào một dạng có thể sử dụng ược cho mô hình học
máy.
Chuyển ổi dữ liệu phân loại thành dữ liệu số (Encoding Categorical Variables):
Label Encoding: Chuyển các giá trị phân loại thành các giá trị số nguyên. Tuy
nhiên, phương pháp này có thể gây hiểu nhầm nếu dữ liệu phân loại không có
thứ tự (ordinal). Ví dụ, cột Gender với các giá trị "Male", "Female" có thể mã
hóa thành 0 và 1.
One-Hot Encoding: Tạo các cột nhị phân cho mỗi giá trị phân loại. Ví dụ, với
cột City, "New York" có thể trở thành cột City_New York, có giá trị 1 hoặc 0.
Chuẩn hóa và Tỉ lệ hóa Dữ Liệu:
Chuẩn hóa (Normalization): Là quá trình thay ổi giá trị của các thuộc tính sao
cho tất cả các giá trị của dữ liệu nằm trong khoảng từ 0 ến 1. Điều này rất quan
trọng khi sử dụng các thuật toán yêu cầu tính toán khoảng cách như KNN,
SVM. o Công thức chuẩn hóa: Xnorm=X−XminXmax−XminX_{\text{norm}}
= \frac{X - X_{\text{min}}}{X_{\text{max}} - X_{\text{min}}}Xnorm
=Xmax−XminX−Xmin
Tỉ lệ hóa (Standardization): Là quá trình thay ổi các giá trị sao cho dữ liệu có
giá trị trung bình là 0 và ộ lệch chuẩn là 1. Kỹ thuật này thích hợp với các thuật
toán học máy như Linear Regression, Logistic Regression và PCA. o Công
thức chuẩn hóa: Xscaled=X−μσX_{\text{scaled}} = \frac{X -
\mu}{\sigma}Xscaled=σX−μ trong ó μ\muμ là giá trị trung bình và σ\sigmaσ
ộ lệch chuẩn.
1.4.4. Loại Bỏ Các Biến Không Cần Thiết (Feature Selection)
Chọn lựa các ặc trưng (features) có ảnh hưởng ến mô hình là một bước quan trọng ể
cải thiện hiệu quả và giảm ộ phức tạp của mô hình.
Kỹ thuật Feature Selection:
Variance Threshold: Loại bỏ các biến có phương sai thấp, vì chúng không
mang nhiều thông tin.
lOMoARcPSD| 59031616
13
Correlation Matrix: Kiểm tra ma trận tương quan giữa các biến số. Nếu hai
biến có tương quan cao, có thể loại bỏ một trong số chúng ể tránh hiện tượng a
cộng tuyến (multicollinearity).
Đặc trưng quan trọng từ mô hình: Sử dụng các mô hình học máy như
Random Forest hoặc XGBoost ể xác ịnh mức ộ quan trọng của các ặc trưng
và chọn ra các ặc trưng quan trọng.
1.4.5. Chỉnh sửa Dữ Liệu Sai (Correcting Data Errors)
Dữ liệu có thể bị lỗi do quá trình thu thập hoặc nhập liệu. Những lỗi này có thể ảnh
hưởng lớn ến kết quả phân tích. Các bước sửa chữa dữ liệu sai bao gồm:
Kiểm tra tính hợp lệ của kiểu dữ liệu: Kiểm tra và sửa các kiểu dữ liệu
không hợp lệ. Ví dụ, cột Date_of_Birth nên là kiểu datetime, không phải kiểu
chuỗi.
Sửa lỗi nhập liệu: Dữ liệu nhập sai như tên không úng, số iện thoại thiếu, hay
ịa chỉ email không hợp lệ cần ược xử lý. Cũng có thể sửa các giá trị sai như giá
trị âm trong các trường không thể có giá trị âm (ví dụ: thu nhập, tuổi).
1.4.6. Xử lý Dữ Liệu Không Đồng Nhất (Handling Inconsistent Data)
Dữ liệu không ồng nhất có thể bao gồm các vấn ề như:
Các giá trị ghi không thống nhất (ví dụ: viết "yes", "Yes", "YES" cho cùng
một giá trị phân loại).
Các ơn vị o lường không thống nhất (ví dụ: chiều cao ghi bằng cm và m).
Xử lý dữ liệu không ồng nhất:
Chuẩn hóa các giá trị phân loại: Đảm bảo rằng các giá trị phân loại như
"yes", "Yes" ều ược chuẩn hóa về một dạng duy nhất (ví dụ: "yes").
Chuyển ổi ơn vị o lường: Nếu cần thiết, chuyển ổi các ơn vị o lường về một
dạng chuẩn.
Ví Dụ Cụ Thể
Giả sử có bộ dữ liệu khách hàng với các cột như Age, Income, Gender, City,
Purchase_Amount, và Credit_Score. Cụ thể:
1. Dữ liệu thiếu: Cột Age có 5 giá trị thiếu, có thể iền giá trị trung bình của tuổi.
Cột Gender có nhiều cách viết khác nhau (ví dụ: "male", "Male", "M"), nên cần
chuẩn hóa thành "Male" và "Female".
lOMoARcPSD| 59031616
14
2. Dữ liệu ngoại lai: Cột Income có một vài giá trị ngoại lai rất cao (ví dụ: 1 triệu
USD), có thể sử dụng phương pháp IQR ể phát hiện và loại bỏ.
3. Chuyển ổi phân loại: Cột City có các giá trị như "New York", "Los Angeles",
có thể áp dụng One-Hot Encoding ể chuyển thành các cột riêng biệt như
City_New York, City_Los Angeles.
4. Chuẩn hóa dữ liệu: Cột Income có giá trị rất lớn, có thể chuẩn hóa

Preview text:

lOMoAR cPSD| 59031616 lOMoAR cPSD| 59031616 LỜI CẢM ƠN
Trước tiên với tình cảm sâu sắc và chân thành nhất, cho phép em ược bày tỏ
lòng biết ơn ến tất cả các cá nhân và tổ chức ã tạo iều kiện hỗ trợ, giúp ỡ em trong
suốt quá trình học tập và nghiên cứu ề tài này. Trong suốt thời gian từ khi bắt ầu
học tập tại trường ến nay, em ã nhận ược rất nhiều sự quan tâm, giúp ỡ của các thầy cô và bạn bè.
Với lòng biết ơn sâu sắc nhất, em xin gửi ến quý Thầy Cô ở Học viện Công nghệ
Bưu Chính Viễn thông ã truyền ạt vốn kiến thức quý báu cho em trong suốt quá
trình học tập. Nhờ có những lời hướng dẫn, dạy bảo của các thầy cô nên ề tài nghiên
cứu của em mới có thể hoàn thiện tốt ẹp.
Một lần nữa, em xin chân thành cảm ơn thầy Trần Đình Quế ã giúp ỡ, quan tâm
ể em có thể hoàn thành tốt bài báo cáo này trong thời gian qua.
Bước ầu i vào thực tế của em còn hạn chế và còn nhiều bỡ ngỡ nên không tránh
khỏi những thiếu sót, em rất mong nhận ược những ý kiến óng góp quý báu của
thầy ể kiến thức của em trong bộ môn này ược hoàn thiện hơn ồng thời có iều kiện
bổ sung, nâng cao ý thức của mình.
Em xin chân thành cảm ơn! lOMoAR cPSD| 59031616 MỤC LỤC
CHƯƠNG 1. Một số vấn ề cơ bản của Machine Learning ......................................... 1
1.1. Tại sao Machine Learning (Học Máy) ra ời và Mục ích của nó .......................... 1
1.2. Các Kỹ Thuật Machine Learning Cơ Bản ............................................................ 3
1.2.1. Học Có Giám Sát (Supervised Learning) ...................................................... 4
1.2.2. Học Không Giám Sát (Unsupervised Learning) ........................................... 5
1.2.3. Học Củng Cố (Reinforcement Learning) ...................................................... 6
1.3. Các Kỹ Thuật Của Deep Learning ....................................................................... 7
1.3.1. Mạng Nơ-ron Nhân Tạo (Artificial Neural Networks - ANN) ..................... 7
1.3.2. Mạng Nơ-ron Convolutional (Convolutional Neural Networks - CNNs) .... 7
1.3.3. Mạng Nơ-ron Hồi Tiếp (Recurrent Neural Networks - RNNs) .................... 8
1.3.4. Mạng LSTM (Long Short-Term Memory Networks) ................................... 8
1.3.5. Mạng Nơ-ron Tích Hợp Attention (Attention Mechanisms) ......................... 8
1.3.6. Transformer Networks ................................................................................... 9
1.3.7. Generative Adversarial Networks (GANs) ................................................... 9
1.3.8. Autoencoders ................................................................................................. 9
1.3.9. Deep Reinforcement Learning (DRL) ........................................................ 10
1.4. Làm Sạch và Chuẩn Hóa Dữ Liệu (Data Cleaning and Preprocessing) ............. 10
1.4.1. Nhận diện và Xử lý Dữ Liệu Thiếu (Missing Data) ................................... 10
1.4.2. Xử lý Dữ Liệu Sai (Outliers) ....................................................................... 11
1.4.3. Chuyển Đổi Dữ Liệu (Data Transformation) .............................................. 12
1.4.4. Loại Bỏ Các Biến Không Cần Thiết (Feature Selection) ............................ 12
1.4.5. Chỉnh sửa Dữ Liệu Sai (Correcting Data Errors) ........................................ 13
1.4.6. Xử lý Dữ Liệu Không Đồng Nhất (Handling Inconsistent Data) ............... 13
Ví Dụ Cụ Thể ........................................................................................................ 13
CHƯƠNG 2. Deep Learning ..................................................................................... 15
2.1. Lịch sử phát triển ................................................................................................ 15
2.1.1. Khởi ầu của các mô hình học máy và mạng nơ-ron (1950s - 1980s) ......... 15 1 lOMoAR cPSD| 59031616
2.1.2. Sự tái sinh của mạng nơ-ron và sự phát triển của backpropagation (1980s -
1990s) .................................................................................................................... 15
2.1.3. Kỷ nguyên của Deep Learning hiện ại (2000s - nay).................................. 16
2.2. Kiến trúc mạng Neuron ...................................................................................... 17
2.2.1. Các Thành Phần Chính trong Kiến Trúc Mạng Nơ-ron .............................. 18
2.2.2. Các Kiến Trúc Mạng Nơ-ron Tiêu Chuẩn ................................................... 20
2.3. Các bước xây dựng mô hình học sâu (Deep Learning) ...................................... 21
2.3.1. Xác ịnh bài toán ........................................................................................... 21
2.3.2. Thu thập và chuẩn bị dữ liệu ....................................................................... 21
2.3.3. Chọn kiến trúc mạng nơ-ron ....................................................................... 22
2.3.4. Chọn hàm mất mát (Loss Function) ............................................................ 22
2.3.5. Chọn thuật toán tối ưu hóa (Optimizer) ...................................................... 23
2.3.6. Thiết kế quá trình huấn luyện ...................................................................... 23
2.3.7. Triển khai huấn luyện mô hình .................................................................... 23
2.3.8. Đánh giá mô hình ........................................................................................ 24
2.3.9. Triển khai và cải tiến ................................................................................... 25
2.3.10. Tối ưu hóa và mở rộng .............................................................................. 25
2.4. Mạng Nơ-ron Tích Chập (Convolutional Neural Networks - CNNs) ................ 25
2.4.1. Cấu trúc CNN .............................................................................................. 25
2.4.2. Quy trình Trích xuất Đặc trưng và Phân loại .............................................. 27
2.4.3. Ưu iểm của CNN ......................................................................................... 28
2.4.4. Ví dụ ............................................................................................................ 28
2.5. Mạng Nơ-ron Hồi tiếp (Recurrent Neural Networks - RNNs) ........................... 41
2.5.1. Giới thiệu về RNN ...................................................................................... 41
2.5.2. Kiến trúc của RNN ...................................................................................... 41
2.5.3. Luồng xử lý trong RNN .............................................................................. 42
2.5.4. Công thức Toán học ..................................................................................... 42
2.5.5. Ưu iểm của RNN ......................................................................................... 43
2.5.6. Hạn chế của RNN ........................................................................................ 43 2 lOMoAR cPSD| 59031616
2.5.7. Cải tiến của RNN ........................................................................................ 44
2.5.8. Ví dụ ............................................................................................................ 44
2.6. Mạng bộ nhớ dài - ngắn hạn (Long Short-Term Memory – LSTM) .................. 56
2.6.1. Giới thiệu về LSTM .................................................................................... 56
2.6.2. Cấu trúc LSTM ............................................................................................ 56
2.6.3. Luồng hoạt ộng của LSTM ......................................................................... 58
2.6.4. Ưu iểm của LSTM ....................................................................................... 58
2.6.5. Hạn chế ........................................................................................................ 58
2.6.6. Ví dụ ............................................................................................................ 59
2.8. Kết luận ............................................................................................................... 71
2.8.1. Hiệu quả của các kiến trúc mạng nơ-ron ..................................................... 71
2.8.2. Ứng dụng thực tế ......................................................................................... 71
2.8.3. Lợi ích và tiềm năng .................................................................................... 71
2.8.4. Thách thức ................................................................................................... 72
CHƯƠNG 3. Deep learning trong dự oán và xử lý ảnh ............................................ 72
3.1. Dữ liệu ảnh và áp dụng bài toán nhận dạng chữ viết tay ................................... 72
3.1.1. Biểu diễn Dữ liệu Ảnh ................................................................................ 72
3.1.2. Chuẩn hóa Dữ liệu Ảnh ............................................................................... 72
3.1.3. Chuyển ổi Dữ liệu ể Phù hợp với Mô Hình ................................................ 73
3.1.4. Xử Lý Ảnh Đầu Vào Từ Người Dùng ........................................................ 73
3.1.5. Kết quả áp dụng bài toán nhận dạng chữ viết tay sử dụng mô hình CNN .. 74
3.2. Dự oán và ví dụ dự oán iểm ............................................................................... 77
3.2.1. Clean và Chuẩn hóa Dữ liệu ....................................................................... 78
3.2.2. Xây dựng mô hình dự oán iểm .................................................................... 81
CHƯƠNG 4. Deep learning trong xử lý ngôn ngữ tự nhiên ..................................... 87
4.1. Tổng quan ........................................................................................................... 87
4.1.1. Ứng dụng của Deep Learning trong NLP ................................................... 87
4.1.2. Các mô hình Deep Learning phổ biến trong NLP ....................................... 87
4.1.3. Các bước thực hiện một bài toán NLP với Deep Learning ......................... 88 3 lOMoAR cPSD| 59031616
4.1.4. Công cụ và thư viện hỗ trợ NLP ................................................................. 89
4.1.5. Thách thức trong NLP với Deep Learning .................................................. 89
4.1.6. Ứng dụng thực tế của NLP với Deep Learning ........................................... 89
4.1.7. Tương lai của Deep Learning trong NLP .................................................... 90
4.2. Áp dụng cho phân loại comment với word vector ............................................. 90
CHƯƠNG 5. Triển khai Mô hình học máy ............................................................... 96
5.1. Lý thuyết ............................................................................................................. 96
5.1.1. Deploying ML (Triển khai Mô hình Học Máy) .......................................... 96
5.1.2. Case Study (Nghiên cứu Trường hợp) ........................................................ 97
5.1.3. Huấn luyện và Lưu trữ Mô hình .................................................................. 97
5.1.4. Triển khai Mô hình ...................................................................................... 98
5.1.5. Kiểm thử Mô hình ....................................................................................... 99
5.2. Dự oán nguy cơ mắc bệnh tiểu ường5.2.1. Xây dựng và triển khai mô hình học
máy ể dự oán bệnh tiểu ường ................................................................................... 99
(diabetes) ............................................................................................................... 99
5.2.2. Tạo giao diện ............................................................................................. 104 4 lOMoAR cPSD| 59031616
CHƯƠNG 1. Một số vấn ề cơ bản của Machine Learning
1.1. Tại sao Machine Learning (Học Máy) ra ời và Mục ích của nó
Machine Learning (ML)
là một nhánh của trí tuệ nhân tạo (AI), ra ời ể giải quyết
những vấn ề phức tạp mà các phương pháp lập trình truyền thống không thể xử lý hiệu
quả. Trong khi các hệ thống truyền thống yêu cầu người lập trình phải xác ịnh rõ các
quy tắc và thuật toán ể giải quyết các vấn ề cụ thể, ML cho phép máy tính tự học và tự
cải thiện từ dữ liệu mà không cần sự can thiệp của con người. Sự phát triển mạnh mẽ
của ML ược thúc ẩy bởi các yếu tố như lượng dữ liệu khổng lồ, khả năng tính toán
ngày càng mạnh mẽ, và yêu cầu xử lý các vấn ề phức tạp mà không thể giải quyết
bằng cách lập trình thủ công.
Lượng Dữ Liệu Ngày Càng Tăng và Phức Tạp
Vấn ề: Với sự gia tăng của dữ liệu từ Internet, cảm biến, thiết bị di ộng, và các
công nghệ số, lượng dữ liệu ngày nay vô cùng phong phú và a dạng. Các
phương pháp truyền thống dựa vào lập trình không thể xử lý hiệu quả lượng dữ
liệu khổng lồ này. Thêm vào ó, dữ liệu ngày càng trở nên không có cấu trúc rõ
ràng và chứa nhiều yếu tố phức tạp, như ngữ cảnh, mối quan hệ, và sự thay ổi theo thời gian. •
Giải pháp của ML: Machine Learning cho phép máy tính tự ộng phân tích và
học từ dữ liệu mà không cần phải lập trình từng quy tắc cụ thể. Thay vì yêu cầu
lập trình thủ công cho từng trường hợp, các thuật toán ML có thể tìm ra các
mẫu và mối quan hệ ẩn trong dữ liệu, iều này giúp hệ thống xử lý dữ liệu lớn
và phức tạp một cách hiệu quả.
Tự Động Hóa Quy Trình và Giảm Thiểu Can Thiệp Con Người
Vấn ề: Các công việc lặp i lặp lại như phân loại email, phân tích dữ liệu, hay tự
ộng iều khiển các quy trình kinh doanh, khi ược thực hiện thủ công, tốn rất
nhiều thời gian và công sức. Việc tự ộng hóa hoàn toàn các quy trình này thông
qua lập trình truyền thống là rất khó khăn và ắt ỏ. •
Giải pháp của ML: Một trong những mục ích chính của ML là tự ộng hóa các
quy trình mà không cần sự can thiệp thủ công của con người. Các thuật toán
ML có thể học và tự ộng cải thiện qua thời gian. Chẳng hạn, trong một hệ thống
email, ML có thể tự ộng phân loại thư vào các thư mục khác nhau, trong khi
trong các hệ thống tài chính, ML có thể tự ộng phát hiện các giao dịch gian lận
dựa trên các mẫu ã học từ dữ liệu trước ó.
Nhận Diện Mẫu và Dự Đoán Kết Quả 1 lOMoAR cPSD| 59031616 •
Vấn ề: Một trong những thách thức lớn nhất khi xử lý dữ liệu là phát hiện ra
các mẫu ẩn và các xu hướng trong dữ liệu. Các mô hình truyền thống khó có
thể nhận diện những mẫu này khi dữ liệu quá phức tạp hoặc có rất nhiều yếu tố thay ổi. •
Giải pháp của ML: ML có khả năng nhận diện các mẫu ẩn trong dữ liệu mà
con người không thể dễ dàng nhận ra. Các thuật toán như Học có giám sát
(Supervised Learning)
Học không giám sát (Unsupervised Learning)
giúp tìm ra các mối quan hệ và phân loại dữ liệu thành các nhóm có sự tương
ồng. Điều này ặc biệt hữu ích trong việc ưa ra dự oán về các sự kiện tương lai
dựa trên các mẫu lịch sử. Ví dụ, trong ngành tài chính, ML có thể dự oán xu
hướng thị trường chứng khoán dựa trên dữ liệu quá khứ. Khả Năng Học và
Cải Thiện Qua Thời Gian

Vấn ề: Các hệ thống truyền thống khi ối mặt với dữ liệu mới thường yêu cầu
sự can thiệp và cập nhật của lập trình viên. Trong khi ó, môi trường và dữ liệu
luôn thay ổi, và các hệ thống phải có khả năng thích nghi nhanh chóng ể ảm
bảo hiệu suất ổn ịnh. •
Giải pháp của ML: Một trong những iểm mạnh của ML là khả năng học và cải
thiện qua thời gian mà không cần sự can thiệp của con người. Các mô hình học
máy có thể ược huấn luyện ể nhận ra những ặc trưng mới từ dữ liệu và tự ộng
iều chỉnh ể cải thiện kết quả dự oán. Điều này giúp các hệ thống ML duy trì
hiệu quả trong những tình huống thay ổi liên tục. Ví dụ, trong một hệ thống
phát hiện gian lận, ML có thể học từ các mẫu giao dịch mới và phát hiện các
hành vi bất thường mà không cần cập nhật thủ công các quy tắc.
Giải Quyết Các Bài Toán Phức Tạp và Không Thể Lập Trình Truyền Thống
Vấn ề: Các bài toán như nhận diện hình ảnh, phân tích ngữ nghĩa trong ngôn
ngữ tự nhiên, hay phân tích hành vi của khách hàng trong môi trường phức tạp
òi hỏi các hệ thống phải có khả năng tự học và phân tích, iều mà các phương
pháp lập trình truyền thống khó có thể xử lý. •
Giải pháp của ML: Machine Learning cho phép giải quyết những bài toán này
thông qua việc sử dụng các mô hình như Deep Learning, giúp máy tính tự ộng
nhận diện và phân loại các mẫu phức tạp trong dữ liệu mà không cần phải lập
trình chi tiết từng bước. Ví dụ, trong nhận diện hình ảnh, ML có thể phát hiện
và phân loại các ối tượng trong hình ảnh mà không cần phải lập trình thủ công cho mỗi loại hình ảnh.
Xử Lý Dữ Liệu Không Có Nhãn (Unsupervised Learning) 2 lOMoAR cPSD| 59031616 •
Vấn ề: Nhiều dữ liệu không có nhãn sẵn (dữ liệu không ược phân loại hay gắn
nhãn), và việc áp dụng các phương pháp truyền thống ể phân tích loại dữ liệu này là rất khó khăn. •
Giải pháp của ML: Unsupervised Learning (Học không giám sát) cho phép
các mô hình học từ dữ liệu không có nhãn và tự ộng phát hiện các mẫu, nhóm
dữ liệu, hoặc các iểm bất thường. Điều này giúp máy tính tìm ra các cấu trúc
tiềm ẩn trong dữ liệu, từ ó ưa ra những quyết ịnh hoặc dự oán mà không cần gán nhãn từ trước.
Dự Đoán và Ra Quyết Định Trong Môi Trường Thay Đổi Nhanh
Vấn ề: Các lĩnh vực như tài chính, y tế, và thương mại iện tử òi hỏi phải ưa ra
quyết ịnh dựa trên dữ liệu thời gian thực. Khi môi trường thay ổi nhanh chóng,
các phương pháp truyền thống không thể phản ứng kịp thời và chính xác. •
Giải pháp của ML: Machine Learning giúp các hệ thống có thể ưa ra quyết
ịnh nhanh chóng và chính xác bằng cách học từ dữ liệu thời gian thực. Ví dụ,
trong giao dịch chứng khoán, ML có thể phân tích các biến ộng của thị trường
và dự oán xu hướng tiếp theo. Trong ngành y tế, ML có thể phân tích các chỉ số
sức khỏe của bệnh nhân và ưa ra dự oán về tình trạng sức khỏe trong thời gian ngắn.
Khả Năng Sáng Tạo và Phát Triển Công Nghệ
Vấn ề: Việc lập trình các hệ thống sáng tạo, chẳng hạn như tạo ra âm nhạc,
nghệ thuật, hoặc viết văn, bằng các quy tắc truyền thống là rất phức tạp và hạn chế. •
Giải pháp của ML: Deep Learning và các mô hình học máy có khả năng sáng
tạo, giúp tạo ra các sản phẩm sáng tạo như âm nhạc, văn bản, hình ảnh nghệ
thuật. Các hệ thống này học từ các dữ liệu sáng tạo trước ó ể tạo ra các sản
phẩm mới, iều này không chỉ giúp ích trong nghệ thuật mà còn mở ra khả năng
sáng tạo trong nhiều lĩnh vực khác.
1.2. Các Kỹ Thuật Machine Learning Cơ Bản
Machine Learning (ML) có nhiều kỹ thuật và phương pháp khác nhau ược áp dụng tùy
thuộc vào loại bài toán và dữ liệu có sẵn. Dưới ây là các kỹ thuật cơ bản trong học
máy, phân chia theo các phương pháp học chính: Học có giám sát (Supervised
Learning), Học không giám sát (Unsupervised Learning) và Học củng cố (Reinforcement Learning). 3 lOMoAR cPSD| 59031616
1.2.1. Học Có Giám Sát (Supervised Learning)
Học có giám sát là kỹ thuật học máy phổ biến nhất, trong ó các mô hình ược huấn
luyện trên dữ liệu ã ược gán nhãn (có kết quả ầu ra rõ ràng). Mục tiêu là tạo ra một mô
hình có thể dự oán ược ầu ra cho dữ liệu chưa thấy.
Các Kỹ Thuật Cơ Bản Trong Học Có Giám Sát:
1. Hồi quy tuyến tính (Linear Regression) o Mô tả: Đây là một kỹ thuật học
máy ơn giản ược sử dụng ể dự oán giá trị liên tục. Ví dụ, dự oán giá nhà dựa
trên diện tích, số phòng ngủ, vị trí,...
o Cách hoạt ộng: Mô hình học từ dữ liệu ể tìm ra mối quan hệ tuyến tính
giữa các ặc trưng ầu vào (features) và giá trị ầu ra (target).
o Ứng dụng: Dự báo giá nhà, dự oán doanh thu, phân tích xu hướng.
2. Hồi quy logistic (Logistic Regression) o Mô tả: Đây là một kỹ thuật dùng ể
giải quyết bài toán phân loại nhị phân (chẳng hạn như phân loại email là spam hay không).
o Cách hoạt ộng: Mô hình dùng một hàm sigmoid ể chuyển ổi các giá trị
ầu ra thành xác suất từ 0 ến 1, sau ó phân loại dựa trên ngưỡng xác suất.
o Ứng dụng: Phân loại, chẩn oán bệnh, phân tích tín dụng.
3. Cây quyết ịnh (Decision Tree) o Mô tả: Cây quyết ịnh là một mô hình phân
loại và hồi quy, trong ó dữ liệu ược chia thành các nhóm con bằng cách sử
dụng các câu hỏi hoặc ặc trưng ặc trưng.
o Cách hoạt ộng: Mô hình tạo ra một cấu trúc giống cây với các nhánh ại
diện cho các câu hỏi hoặc các iều kiện kiểm tra, và các lá cây là các dự oán.
o Ứng dụng: Phân loại khách hàng, phân loại email, phân tích kinh doanh.
4. K-Nearest Neighbors (KNN)
o Mô tả: Đây là một thuật toán phân loại dựa trên khoảng cách giữa các
iểm dữ liệu. KNN phân loại một iểm dữ liệu mới dựa trên nhãn của các
iểm dữ liệu gần nhất.
o Cách hoạt ộng: Đối với mỗi iểm dữ liệu mới, thuật toán tìm kiếm k iểm
gần nhất trong dữ liệu huấn luyện và dự oán nhãn dựa trên a số phiếu bầu của các iểm ó. 4 lOMoAR cPSD| 59031616
o Ứng dụng: Phân loại văn bản, nhận diện hình ảnh, phân tích hành vi khách hàng.
5. Máy Vector Hỗ trợ (SVM - Support Vector Machine) o Mô tả: SVM là một
thuật toán phân loại mạnh mẽ, tìm kiếm siêu phẳng tốt nhất ể phân tách các lớp dữ liệu.
o Cách hoạt ộng: SVM tìm ra một siêu phẳng trong không gian dữ liệu
sao cho khoảng cách giữa các iểm dữ liệu và siêu phẳng là lớn nhất.
o Ứng dụng: Nhận dạng hình ảnh, phân loại văn bản, phân tích sinh học.
6. Mạng nơ-ron nhân tạo (Artificial Neural Networks - ANN) o Mô tả: Mạng
nơ-ron nhân tạo mô phỏng cách thức hoạt ộng của bộ não con người, sử dụng
các lớp nơ-ron ể học và ưa ra dự oán.
o Cách hoạt ộng: Mô hình học thông qua việc iều chỉnh trọng số trong
các kết nối giữa các nơ-ron trong mạng, sao cho ầu ra khớp với kết quả mong muốn.
o Ứng dụng: Nhận dạng hình ảnh, dịch máy, phân tích ngữ nghĩa.
1.2.2. Học Không Giám Sát (Unsupervised Learning)
Trong học không giám sát, dữ liệu không có nhãn sẵn. Mô hình học từ các ặc trưng
của dữ liệu ể khám phá các cấu trúc ẩn trong dữ liệu mà không cần dựa vào các nhãn ầu ra.
Các Kỹ Thuật Cơ Bản Trong Học Không Giám Sát:
1. Phân cụm K-means (K-means Clustering) o Mô tả: Là một thuật toán phân
cụm phổ biến, K-means tìm cách chia dữ liệu thành k nhóm sao cho các iểm
trong mỗi nhóm có sự tương ồng cao nhất.
o Cách hoạt ộng: Thuật toán xác ịnh các tâm cụm (centroids) và gán mỗi
iểm dữ liệu vào nhóm gần nhất, sau ó iều chỉnh các tâm cụm ể tối ưu hóa sự phân tách.
o Ứng dụng: Phân khúc khách hàng, phân tích dữ liệu lớn, nghiên cứu thị trường. 5 lOMoAR cPSD| 59031616
2. Phân tích thành phần chính (PCA - Principal Component Analysis) o
tả: PCA là một kỹ thuật giảm chiều dữ liệu, giúp giảm bớt số lượng biến trong
dữ liệu mà vẫn giữ lại phần lớn thông tin quan trọng.
o Cách hoạt ộng: PCA xác ịnh các thành phần chính (principal
components) mới, là các kết hợp tuyến tính của các ặc trưng ban ầu,
giúp giảm bớt ộ phức tạp của dữ liệu.
o Ứng dụng: Giảm chiều dữ liệu, tìm kiếm mẫu ẩn, phân tích hình ảnh.
3. Phát hiện bất thường (Anomaly Detection) o Mô tả: Là một kỹ thuật trong
học không giám sát dùng ể phát hiện các iểm dữ liệu khác biệt hoặc không
bình thường so với phần còn lại của tập dữ liệu.
o Cách hoạt ộng: Thuật toán học các mẫu chuẩn trong dữ liệu và phát
hiện các iểm bất thường có sự khác biệt lớn.
o Ứng dụng: Phát hiện gian lận trong giao dịch tài chính, kiểm tra chất
lượng sản phẩm, phát hiện sự cố trong hệ thống.
4. Mạng nơ-ron tự mã hóa (Autoencoders) o Mô tả: Autoencoders là một loại
mạng nơ-ron ược huấn luyện ể học cách nén dữ liệu vào một không gian kích
thước nhỏ và sau ó phục hồi lại dữ liệu gốc.
o Cách hoạt ộng: Mạng nơ-ron học cách biểu diễn dữ liệu dưới dạng ít
chiều hơn và sử dụng kiến thức này ể tái tạo lại dữ liệu.
o Ứng dụng: Giảm chiều dữ liệu, nhận diện mẫu, lọc nhiễu trong dữ liệu.
1.2.3. Học Củng Cố (Reinforcement Learning)
Học củng cố là một kỹ thuật trong ó mô hình học từ môi trường bằng cách thực hiện
các hành ộng và nhận lại phản hồi dưới dạng phần thưởng hoặc hình phạt. Đây là
phương pháp phổ biến trong các bài toán quyết ịnh liên tục và các trò chơi.
Các Kỹ Thuật Cơ Bản Trong Học Củng Cố:
1. Q-learning o Mô tả: Là một thuật toán học củng cố, nơi ại lý học cách tối
ưu hóa phần thưởng lâu dài thông qua các hành ộng trong môi trường.
o Cách hoạt ộng: Mô hình học cách chọn hành ộng ể tối a hóa phần
thưởng tích lũy trong tương lai, sử dụng bảng Q ể lưu trữ giá trị của các
hành ộng tại mỗi trạng thái. 6 lOMoAR cPSD| 59031616
o Ứng dụng: Tự ộng hóa quá trình ra quyết ịnh trong robot, xe tự lái, và
các trò chơi chiến thuật.
2. Deep Q-Network (DQN) o Mô tả: Đây là một sự kết hợp giữa học củng cố
và học sâu, nơi mạng nơ-ron học ể ước tính bảng Q cho các tình huống phức tạp hơn.
o Cách hoạt ộng: Mạng nơ-ron ược huấn luyện ể ước tính giá trị của các
hành ộng tại mỗi trạng thái, giúp cải thiện khả năng ra quyết ịnh.
o Ứng dụng: Được sử dụng trong các trò chơi iện tử, tự ộng lái xe, và các
ứng dụng robot phức tạp.
1.3. Các Kỹ Thuật Của Deep Learning
Deep Learning (Học sâu)
là một nhánh con của Machine Learning (ML), với mục
tiêu phát triển các mô hình học tự ộng thông qua các mạng nơ-ron nhân tạo sâu. Các
kỹ thuật trong Deep Learning sử dụng nhiều lớp mạng nơ-ron ể tự học từ dữ liệu, giúp
giải quyết các bài toán phức tạp trong nhận dạng hình ảnh, ngữ âm, ngôn ngữ tự
nhiên, và nhiều ứng dụng khác.
1.3.1. Mạng Nơ-ron Nhân Tạo (Artificial Neural Networks - ANN)
Mô tả: Mạng nơ-ron nhân tạo (ANN) là mô hình học sâu cơ bản nhất, mô
phỏng cách thức hoạt ộng của bộ não con người. Mạng này bao gồm nhiều lớp
nơ-ron (hoặc ơn vị xử lý) kết nối với nhau ể học và tạo ra các dự oán. •
Cấu trúc: Một mạng ANN bao gồm ba loại lớp:
o Lớp ầu vào (Input Layer): Chứa các ặc trưng của dữ liệu ầu vào.
o Lớp ẩn (Hidden Layers): Các lớp này thực hiện tính toán và học các ặc
trưng phức tạp từ dữ liệu.
o Lớp ầu ra (Output Layer): Cung cấp kết quả dự oán hoặc phân loại. •
Ứng dụng: Phân loại văn bản, dự báo thời tiết, nhận diện hình ảnh.
1.3.2. Mạng Nơ-ron Convolutional (Convolutional Neural Networks - CNNs)
Mô tả: CNNs là một loại mạng nơ-ron ược thiết kế ặc biệt ể xử lý và phân tích
dữ liệu có cấu trúc dạng lưới, chẳng hạn như hình ảnh và video. CNN sử dụng
các phép toán convolution ể phát hiện các ặc trưng như cạnh, hình dạng trong ảnh. •
Cấu trúc: Một CNN iển hình bao gồm: 7 lOMoAR cPSD| 59031616
o Lớp convolution (Convolutional Layer): Áp dụng các bộ lọc (filters) ể
trích xuất các ặc trưng từ ảnh.
o Lớp pooling (Pooling Layer): Giảm ộ phân giải của hình ảnh ể giảm
tính toán và giữ lại các ặc trưng quan trọng.
o Lớp fully connected (Fully Connected Layer): Kết nối các ặc trưng ã
học ể ưa ra kết quả phân loại. •
Ứng dụng: Nhận diện hình ảnh, phân loại ảnh, nhận dạng ối tượng, nhận dạng
khuôn mặt, nhận dạng chữ viết tay.
1.3.3. Mạng Nơ-ron Hồi Tiếp (Recurrent Neural Networks - RNNs)
Mô tả: RNNs ược thiết kế ể xử lý dữ liệu theo chuỗi, như văn bản, âm thanh
hoặc chuỗi thời gian. Mô hình này có khả năng nhớ các thông tin trong quá khứ
nhờ vào các kết nối hồi tiếp, giúp xử lý các dữ liệu tuần tự. •
Cấu trúc: Các nơ-ron trong RNN có kết nối hồi tiếp, giúp thông tin từ các
bước trước ó ược lưu trữ và sử dụng cho các bước tiếp theo trong chuỗi. •
Ứng dụng: Xử lý ngôn ngữ tự nhiên (NLP), dịch máy, phân tích chuỗi thời
gian, nhận dạng giọng nói, dự báo tài chính.
1.3.4. Mạng LSTM (Long Short-Term Memory Networks)
Mô tả: LSTM là một dạng mở rộng của RNN, ược thiết kế ể khắc phục vấn ề
"biến mất gradient" trong quá trình huấn luyện RNN với chuỗi dài. LSTM có
các cổng (gates) giúp lưu trữ thông tin lâu dài và loại bỏ thông tin không cần thiết. •
Cấu trúc: LSTM sử dụng các cổng input gate, forget gate, và output gate
iều khiển dòng thông tin trong mạng, cho phép mô hình học các mối quan hệ dài hạn. •
Ứng dụng: Dịch máy, tạo văn bản tự ộng, phân tích chuỗi thời gian phức tạp, nhận diện giọng nói.
1.3.5. Mạng Nơ-ron Tích Hợp Attention (Attention Mechanisms)
Mô tả: Attention là một kỹ thuật trong deep learning giúp mô hình tập trung
vào các phần quan trọng nhất của dữ liệu ầu vào. Kỹ thuật này giúp cải thiện
hiệu suất của các mô hình xử lý ngôn ngữ tự nhiên (NLP) và các bài toán liên quan ến chuỗi. 8 lOMoAR cPSD| 59031616 •
Cấu trúc: Mô hình sử dụng cơ chế attention ể tự ộng iều chỉnh trọng số cho
từng phần của dữ liệu, giúp mô hình quyết ịnh phần nào của dữ liệu cần chú ý nhiều hơn. •
Ứng dụng: Dịch máy (machine translation), tóm tắt văn bản, tạo caption cho
ảnh, trả lời câu hỏi tự ộng.
1.3.6. Transformer Networks
Mô tả: Transformer là một kiến trúc deep learning ược giới thiệu trong bài báo
"Attention is All You Need". Mô hình này sử dụng hoàn toàn cơ chế
selfattention ể xử lý thông tin, thay vì sử dụng các mạng hồi tiếp như RNN và LSTM. •
Cấu trúc: Các mô hình Transformer bao gồm hai phần chính:
o Encoder: Xử lý thông tin ầu vào và chuyển ổi chúng thành các vector ặc trưng.
o Decoder: Sử dụng các vector ặc trưng ể tạo ra ầu ra. •
Ứng dụng: Dịch máy, tạo văn bản tự ộng, phân tích ngữ nghĩa trong văn bản,
GPT, BERT, các mô hình ngôn ngữ tự nhiên tiên tiến.
1.3.7. Generative Adversarial Networks (GANs)
Mô tả: GANs bao gồm hai mạng nơ-ron cạnh tranh: Generator (Tạo sinh) và
Discriminator (Phân biệt). Mô hình này học cách tạo ra dữ liệu giống như dữ
liệu gốc bằng cách cố gắng "lừa" phân biệt. Generator tạo ra dữ liệu giả, trong
khi Discriminator cố gắng phân biệt giữa dữ liệu thật và giả. • Cấu trúc:
o Generator: Tạo ra dữ liệu giả từ một vector ngẫu nhiên.
o Discriminator: Nhận dữ liệu và quyết ịnh liệu nó là dữ liệu thật hay giả. •
Ứng dụng: Tạo hình ảnh, tạo video, tạo văn bản, tạo âm nhạc, tăng cường dữ
liệu, chuyển ổi ảnh (style transfer). 1.3.8. Autoencoders
Mô tả: Autoencoders là mạng nơ-ron không giám sát ược huấn luyện ể học một
biểu diễn nén (compressed representation) của dữ liệu ầu vào. Mô hình này học
cách tái tạo lại dữ liệu ầu vào từ biểu diễn nén, giúp giảm chiều dữ liệu và phát
hiện các ặc trưng quan trọng. 9 lOMoAR cPSD| 59031616 •
Cấu trúc: Một Autoencoder bao gồm hai phần: o Encoder: Mã hóa ầu vào thành một vector nén.
o Decoder: Tái tạo lại ầu ra từ vector nén. •
Ứng dụng: Giảm chiều dữ liệu, học ặc trưng, phát hiện bất thường, lọc nhiễu.
1.3.9. Deep Reinforcement Learning (DRL)
Mô tả: Deep Reinforcement Learning kết hợp giữa học củng cố và học sâu.
Các mô hình DRL sử dụng các mạng nơ-ron sâu ể học cách tối ưu hóa hành
ộng trong môi trường, thông qua việc tối a hóa phần thưởng tích lũy. •
Cấu trúc: DRL sử dụng các mô hình học sâu (như CNN hoặc RNN) ể học các
chiến lược hành ộng trong các môi trường phức tạp. Hệ thống này có thể tự ộng
học và tối ưu hóa chính sách hành ộng qua nhiều vòng huấn luyện. •
Ứng dụng: Xe tự lái, game, robot tự ộng, tối ưu hóa chiến lược.
1.4. Làm Sạch và Chuẩn Hóa Dữ Liệu (Data Cleaning and Preprocessing)
Làm sạch và chuẩn hóa dữ liệu là một bước quan trọng trong quy trình phân tích dữ
liệu và xây dựng mô hình học máy. Dữ liệu thô có thể chứa nhiều lỗi và sự thiếu sót,
và chúng cần ược xử lý trước khi có thể ưa vào mô hình học máy.
Các bước trong quá trình làm sạch và chuẩn hóa dữ liệu thường bao gồm:
Các Bước Cơ Bản:
1.4.1. Nhận diện và Xử lý Dữ Liệu Thiếu (Missing Data)
Trong quá trình phân tích và xử lý dữ liệu, dữ liệu thiếu là một vấn ề phổ biến có thể
ảnh hưởng nghiêm trọng ến hiệu quả của mô hình học máy. Các phương pháp ể xử lý
dữ liệu thiếu bao gồm: Phát hiện dữ liệu thiếu
Sử dụng phương pháp thống kê:
o Đếm số lượng giá trị thiếu trong mỗi cột ể xác ịnh mức ộ nghiêm trọng của dữ liệu thiếu.
o Thường sử dụng các phương pháp như .isnull() hoặc .sum() trong thư
viện Pandas ể phát hiện và ếm các giá trị bị thiếu.
Xử lý dữ liệu thiếu
Điền giá trị thay thế: 10 lOMoAR cPSD| 59031616
o Điền giá trị trung bình (mean) cho dữ liệu số, hoặc mode (giá trị xuất
hiện nhiều nhất) ối với dữ liệu phân loại. o Ví dụ: Cột Age có thể iền
giá trị trung bình hoặc iền giá trị của ộ tuổi nhóm tương ứng (ví dụ nhóm tuổi 30-40). •
Sử dụng thuật toán ể dự oán giá trị thiếu (Imputation):
o Một số kỹ thuật nâng cao sử dụng các mô hình học máy ể dự oán giá trị
thiếu dựa trên các ặc trưng khác. Thường sử dụng các mô hình như
KNN, Decision Trees ể dự oán giá trị.
o Thư viện như sklearn.impute.SimpleImputer hoặc IterativeImputer có thể ược sử dụng. •
Loại bỏ dữ liệu thiếu:
o Nếu tỉ lệ dữ liệu thiếu quá cao (ví dụ, hơn 40% dữ liệu bị thiếu trong
một cột), có thể loại bỏ cột ó.
o Loại bỏ hàng khi dữ liệu thiếu quá nhiều, nhưng chỉ thực hiện khi số
lượng hàng thiếu không quá lớn so với tổng số hàng.
1.4.2. Xử lý Dữ Liệu Sai (Outliers)
Outliers hay giá trị ngoại lai là các giá trị nằm ngoài phạm vi dự oán bình thường của
dữ liệu. Các giá trị này có thể là sai sót trong quá trình thu thập hoặc nhập liệu, hoặc
có thể là những giá trị cực oan nhưng hợp lệ. Phát hiện Outliers
Phương pháp IQR (Interquartile Range):
o Cách phổ biến ể phát hiện outliers là sử dụng khoảng tứ phân vị (IQR). Giá
trị ngoại lai có thể ược xác ịnh là những giá trị nằm ngoài phạm vi [Q1 -
1.5*IQR, Q3 + 1.5*IQR], với Q1 và Q3 là tứ phân vị thứ nhất và thứ ba. •
Phương pháp Z-score:
o Nếu dữ liệu có phân phối chuẩn, có thể sử dụng Z-score ể phát hiện
outliers. Các giá trị có Z-score > 3 hoặc < -3 ược coi là ngoại lai. Xử lý Outliers
Loại bỏ các outliers: Trong một số trường hợp, nếu giá trị ngoại lai không có ý
nghĩa thực tế, có thể loại bỏ chúng khỏi bộ dữ liệu. 11 lOMoAR cPSD| 59031616 •
Thay thế các outliers: Thay thế giá trị ngoại lai bằng giá trị trung bình hoặc
giá trị gần nhất trong phạm vi hợp lý.
1.4.3. Chuyển Đổi Dữ Liệu (Data Transformation)
Chuyển ổi dữ liệu giúp ưa dữ liệu vào một dạng có thể sử dụng ược cho mô hình học máy.
Chuyển ổi dữ liệu phân loại thành dữ liệu số (Encoding Categorical Variables):
Label Encoding: Chuyển các giá trị phân loại thành các giá trị số nguyên. Tuy
nhiên, phương pháp này có thể gây hiểu nhầm nếu dữ liệu phân loại không có
thứ tự (ordinal). Ví dụ, cột Gender với các giá trị "Male", "Female" có thể mã hóa thành 0 và 1. •
One-Hot Encoding: Tạo các cột nhị phân cho mỗi giá trị phân loại. Ví dụ, với
cột City, "New York" có thể trở thành cột City_New York, có giá trị 1 hoặc 0.
Chuẩn hóa và Tỉ lệ hóa Dữ Liệu:
Chuẩn hóa (Normalization): Là quá trình thay ổi giá trị của các thuộc tính sao
cho tất cả các giá trị của dữ liệu nằm trong khoảng từ 0 ến 1. Điều này rất quan
trọng khi sử dụng các thuật toán yêu cầu tính toán khoảng cách như KNN,
SVM. o Công thức chuẩn hóa: Xnorm=X−XminXmax−XminX_{\text{norm}}
= \frac{X - X_{\text{min}}}{X_{\text{max}} - X_{\text{min}}}Xnorm =Xmax−XminX−Xmin •
Tỉ lệ hóa (Standardization): Là quá trình thay ổi các giá trị sao cho dữ liệu có
giá trị trung bình là 0 và ộ lệch chuẩn là 1. Kỹ thuật này thích hợp với các thuật
toán học máy như Linear Regression, Logistic Regression và PCA. o Công
thức chuẩn hóa: Xscaled=X−μσX_{\text{scaled}} = \frac{X -
\mu}{\sigma}Xscaled=σX−μ trong ó μ\muμ là giá trị trung bình và σ\sigmaσ là ộ lệch chuẩn.
1.4.4. Loại Bỏ Các Biến Không Cần Thiết (Feature Selection)
Chọn lựa các ặc trưng (features) có ảnh hưởng ến mô hình là một bước quan trọng ể
cải thiện hiệu quả và giảm ộ phức tạp của mô hình.
Kỹ thuật Feature Selection:
Variance Threshold: Loại bỏ các biến có phương sai thấp, vì chúng không mang nhiều thông tin. 12 lOMoAR cPSD| 59031616 •
Correlation Matrix: Kiểm tra ma trận tương quan giữa các biến số. Nếu hai
biến có tương quan cao, có thể loại bỏ một trong số chúng ể tránh hiện tượng a
cộng tuyến (multicollinearity). •
Đặc trưng quan trọng từ mô hình: Sử dụng các mô hình học máy như
Random Forest hoặc XGBoost ể xác ịnh mức ộ quan trọng của các ặc trưng
và chọn ra các ặc trưng quan trọng.
1.4.5. Chỉnh sửa Dữ Liệu Sai (Correcting Data Errors)
Dữ liệu có thể bị lỗi do quá trình thu thập hoặc nhập liệu. Những lỗi này có thể ảnh
hưởng lớn ến kết quả phân tích. Các bước sửa chữa dữ liệu sai bao gồm: •
Kiểm tra tính hợp lệ của kiểu dữ liệu: Kiểm tra và sửa các kiểu dữ liệu
không hợp lệ. Ví dụ, cột Date_of_Birth nên là kiểu datetime, không phải kiểu chuỗi. •
Sửa lỗi nhập liệu: Dữ liệu nhập sai như tên không úng, số iện thoại thiếu, hay
ịa chỉ email không hợp lệ cần ược xử lý. Cũng có thể sửa các giá trị sai như giá
trị âm trong các trường không thể có giá trị âm (ví dụ: thu nhập, tuổi).
1.4.6. Xử lý Dữ Liệu Không Đồng Nhất (Handling Inconsistent Data)
Dữ liệu không ồng nhất có thể bao gồm các vấn ề như: •
Các giá trị ghi không thống nhất (ví dụ: viết "yes", "Yes", "YES" cho cùng
một giá trị phân loại). •
Các ơn vị o lường không thống nhất (ví dụ: chiều cao ghi bằng cm và m).
Xử lý dữ liệu không ồng nhất:
Chuẩn hóa các giá trị phân loại: Đảm bảo rằng các giá trị phân loại như
"yes", "Yes" ều ược chuẩn hóa về một dạng duy nhất (ví dụ: "yes"). •
Chuyển ổi ơn vị o lường: Nếu cần thiết, chuyển ổi các ơn vị o lường về một dạng chuẩn. Ví Dụ Cụ Thể
Giả sử có bộ dữ liệu khách hàng với các cột như Age, Income, Gender, City,
Purchase_Amount, và Credit_Score. Cụ thể:
1. Dữ liệu thiếu: Cột Age có 5 giá trị thiếu, có thể iền giá trị trung bình của tuổi.
Cột Gender có nhiều cách viết khác nhau (ví dụ: "male", "Male", "M"), nên cần
chuẩn hóa thành "Male" và "Female". 13 lOMoAR cPSD| 59031616
2. Dữ liệu ngoại lai: Cột Income có một vài giá trị ngoại lai rất cao (ví dụ: 1 triệu
USD), có thể sử dụng phương pháp IQR ể phát hiện và loại bỏ.
3. Chuyển ổi phân loại: Cột City có các giá trị như "New York", "Los Angeles",
có thể áp dụng One-Hot Encoding ể chuyển thành các cột riêng biệt như
City_New York, City_Los Angeles.
4. Chuẩn hóa dữ liệu: Cột Income có giá trị rất lớn, có thể chuẩn hóa 14