Giới thiệu về học máy *Học máy Machine learning là một nhánh của trí tuệ nhân tạo, sử dụng các thuật toán để phân tích dữ liệu và tự động rút ra quy luật từ đó, giúp máy tính học hỏi và
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
KHOA CÔNG NGHỆ ĐIỆN TỬ
BÀI TIỂU LUẬN
Môn học: Nhập môn Internet of Things
TP.HCM, ngày 11 tháng 08 năm 2024
Giảng viên hướng dẫn: PGS Nguyễn Ngọc Sơn
Sinh viên thực hiện: Trịnh Thị Phương Uyên_22659011
Nguyễn Thị Minh Hải_22648211 Diệp Võ Hữu Điền_22660851
Trang 2PHỤ LỤC
CHƯƠNG 1: Giới thiệu tổng quan về “Machine Learning” 1
1.1 Giới thiệu về học máy 2
1.2 Các khái niệm liên quan 2
CHƯƠNG 2: Giới thiệu về kiến trúc 4
2.1 Kiến trúc Machine learning là gì? 5
2.2 Nhập dữ liệu 5
2.3Các nội dung trọng tâm 5
CHƯƠNG 3: Các vấn đề liên quan đến chủ đề tìm hiểu 1
3.1 Nội dung 5
3.2 Nội dung 5
CHƯƠNG 4: Phân tích một vài ứng dụng theo chủ đề “nội dung chủ đề nghiên cứu”
4
4.1 Nội dung 5
4.2 Nội dung 5
CHƯƠNG 5: Mô phỏng ứng dụng cụ thể theo chủ đề “nội dung chủ đề nghiên cứu”
1
5.1 Nội dung 5
5.2 Nội dung 5
CHƯƠNG 6: Kết luận 4
6.1 Kiến trúc 5
6.2 Các nội dung trọng tâm 5
Trang 3CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ “MACHINE LEARNING”
1.1 Giới thiệu về học máy
*Học máy (Machine learning) là một nhánh của trí tuệ nhân tạo, sử dụng các
thuật toán để phân tích dữ liệu và tự động rút ra quy luật từ đó, giúp máy tính học hỏi
và đưa ra quyết định mà không cần lập trình cụ thể cho từng tác vụ.
Các giải thuật học máy cơ bản:
- Học có giám sát: Mô hình được huấn luyện trên dữ liệu có dán nhãn, liên tục điều chỉnh để đạt độ chính xác mong muốn
- Học không giám sát: Mô hình học từ dữ liệu không có nhãn, tự tìm ra các mẫu
và mối quan hệ ẩn trong dữ liệu
- Học bán giám sát: Kết hợp giữa học có giám sát và không giám sát, sử dụng cả
dữ liệu có nhãn và không nhãn khi việc gán nhãn khó khăn hoặc tốn kém.
Các ứng dụng của học máy: Học máy được sử dụng rộng rãi trong các ngành
khoa học, công nghệ, y học, tài chính,… và ngày càng phổ biến tiếp cận đến mọi người.
1.2 Các khái niệm liên quan
Dữ liệu và tiền xử lý:
*Dữ liệu (Data): là tập hợp các điểm dữ liệu chứ thông tin mà mô hình sẽ học hỏi để
tạo ra các dự đoán, dữ liệu được xem là nền tảng bất kỳ các mô hình máy học Một tập dữ liệu thông thường bao gồm các đặc trưng và các nhãn và được chia nhỏ để thực hiện quá trình huấn luyện.
- Tập huấn luyện (Training Set): là tập dữ liệu dùng để dạy mô hình nhận biết các
mẫu và quy luật
- Tập kiểm tra (Test Set): tập dữ liệu giữ lại để đánh giá hiệu suất mô hình sau khi
huấn luyện, không điều chỉnh mô hình dựa trên tập này
- Tập xác thực (Validation Set): tập dữ liệu dùng để theo dõi và tinh chỉnh mô hình
trong quá trình huấn luyện, giúp tránh overfitting và underfitting.
*Tiền xử lý: quá trình chuẩn bị dữ liệu, chuyển đổi và mã hóa dữ liệu để phù hợp với
thuật toán học máy, đảm bảo tính đồng bộ và nhất quán trên các tập dữ liệu.
Mối quan hệ của dữ liệu và tiền xử lý: Trong học máy, mối liên hệ giữa dữ liệu và các
tập huấn luyện, kiểm tra, xác thực rất chặt chẽ Tiền xử lý dữ liệu đảm bảo dữ liệu phù hợp
Trang 4với mô hình, tránh sai lệch trong kết quả đánh giá Xử lý tốt dữ liệu trước khi huấn luyện giúp cải thiện độ chính xác dự đoán.
CHƯƠNG 2: GIỚI THIỆU VỀ KIẾN TRÚC
2.1 Kiến trúc Machine learning là gì?
*Kiến trúc máy học là cấu trúc và tổ chức của nhiều thành phần và quy định là một phần
của hệ thống máy Nó xác định cách bạn xử lý dữ liệu, đạo tạo và đánh giá các mô hình học máy và tạo dự đoán Kiến trúc về cơ bản là một mô hình để tạo ra một hệ thống máy học.
2.2 Các thành phần của kiến trúc Machine learning
*Nhập dữ liệu là quá trình thu thập và xử lý dữ liệu cho các mô hình học máy Chất
lượng và số lượng dữ liệu ảnh hưởng lớn đến độ chính xác và hiệu quả của mô hình, do
đó, đây là một giai đoạn quan trọng trong học máy.
Hình 1: Một số bước nhập liệu phổ biến
- Thu thập dữ liệu: Tập hợp thông tin từ nhiều nguồn như cơ sở dữ liệu, API,
cảm biến, và bộ dữ liệu bên ngoài để phản ánh các trường hợp thực tế.
- Xử lý dữ liệu: Phát hiện và sửa lỗi, sự không nhất quán, hoặc thiếu giá trị trong
dữ liệu để đảm bảo chất lượng cao.
- Chuyển đổi dữ liệu: Biến đổi dữ liệu thô thành định dạng phù hợp với thuật
toán học máy để cải thiện hiệu suất.
- Tích hợp dữ liệu: Kết hợp dữ liệu từ nhiều nguồn thành một tập duy nhất.
- Lấy mẫu dữ liệu: Chọn phần dữ liệu đại diện để đảm bảo mô hình được đào tạo
trên tập cân bằng giữa các trường hợp dương và âm.
Trang 5- Chia tách dữ liệu: Phân chia tập dữ liệu thành các bộ khác nhau như huấn
luyện, xác thực, và kiểm tra để đánh giá hiệu suất trên dữ liệu mới.
Quá trình nhập dữ liệu không chỉ đảm bảo độ chính xác mà còn tối ưu hóa hiệu suất của
mô hình học máy Chuẩn bị dữ liệu là bước quan trọng, ảnh hưởng lớn đến hiệu suất của mô hình.
Các phương thức nhập dữ liệu phổ biến:
- Nhập dữ liệu hàng loạt: Thu thập dữ liệu theo lô từ nhiều nguồn và đưa vào hệ
thống định kỳ Phù hợp với dữ liệu không cần phân tích thời gian thực
- Nhập dữ liệu thời gian thực: Xử lý dữ liệu ngay khi có, phù hợp với các tác vụ
cần phản hồi tức thì như phát hiện gian lận
- Change Data Capture (CDC): Ghi lại các thay đổi dữ liệu theo thời gian thực,
dùng cho các hệ thống dữ liệu liên tục cập nhật
- Nhập dữ liệu trực tuyến: Thu thập từ các nguồn phát trực tiếp như cảm biến
IoT, hữu ích cho giám sát giao thông hay dự báo thời tiết
Công cụ phổ biến: Apache Kafka, Apache Spark, Amazon S3, Google Cloud Dataflow, Talend, StreamSets.
*Lưu trữ dữ liệu là yếu tố quan trọng trong dự án học máy, ảnh hưởng đến hiệu suất mô
hình trong sản xuất Mô hình phải có khả năng mở rộng, truy cập được, bảo mật và hoạt động hiệu quả.
Các giải pháp lưu trữ phổ biến:
- Lưu trữ tệp cục bộ: Tốt cho PoC nhưng giới hạn dung lượng, không phù hợp
với dữ liệu lớn.
- NAS (Lưu trữ gắn liền với mạng): An toàn nhưng hạn chế về khả năng mở
rộng với dữ liệu lớn.
- SAN (Mạng khu vực lưu trữ): Phức tạp và tốn kém, vẫn bị giới hạn về khả năng
mở rộng.
- Hệ thống tệp phân tán (DFS): Phân tán dữ liệu trên nhiều máy chủ, nhưng gặp
vấn đề khi quản lý số lượng tệp lớn.
- Lưu trữ đối tượng: Như Amazon S3, Azure Blob, cung cấp khả năng mở rộng
lớn, lý tưởng cho dữ liệu và mô hình khổng lồ.
Trang 6*Kiểm soát phiên bản dữ liệu cho phép các nhà phát triển xem lại các phiên bản trước và
thay đổi đã thực hiện Việc lập phiên bản dữ liệu, mô hình và cơ sở hạ tầng giúp tái tạo bất kỳ phiên bản nào của mô hình đã thử hoặc sử dụng.
*Đánh giá mô hình là quá trình phân tích hiệu suất của mô hình thông qua các số liệu,
thực hiện theo hai cách: Ngoại tuyến (đánh giá mô hình đã được đào tạo) và Trực tuyến (giám sát mô hình trong môi trường sản xuất)
Các số liệu được chọn dựa trên phương pháp học máy:
- Học có giám sát: Sử dụng số liệu phân loại (độ chính xác, độ chính xác, khả
năng nhớ và điểm F1) và hồi quy (MAE, RMSE).
- Học không giám sát: Sử dụng số liệu như thước đo hình bóng để đánh giá sự
tương đồng trong phân cụm.
Ngoài số liệu kỹ thuật, cần phát triển và báo cáo KPI kinh doanh để hiểu rõ tác động của mô hình trong sản xuất Đánh giá mô hình liên tục rất quan trọng cho các ứng dụng thời gian thực, vì sai sót có thể ảnh hưởng nghiêm trọng đến trải nghiệm người dùng và doanh thu.
*Triển khai mô hình
- Triển khai mô hình liên quan đến việc tích hợp mô hình học máy vào hệ thống
thực tế để tự động dự đoán hoặc thực hiện tác vụ
- Ví dụ, trong chăm sóc sức khỏe, mô hình dự đoán tái nhập viện cần được tích hợp vào hệ thống hồ sơ sức khỏe điện tử Sau khi triển khai, mô hình phân tích dữ liệu bệnh nhân để cung cấp thông tin hữu ích cho nhân viên y tế.
*Giám sát mô hình
- Giai đoạn giám sát diễn ra sau khi mô hình được triển khai để đảm bảo mô hình hoạt động và dự đoán chính xác.
- Các vấn đề có thể phát sinh như thiếu nguồn lực, nguồn cấp dữ liệu sai, hoặc người dùng không sử dụng ứng dụng đúng cách Cần giám sát hiệu suất thường xuyên bằng cách sử dụng công cụ tự động theo dõi số liệu và cảnh báo khi có thay đổi về độ chính xác hoặc hiệu suất
Trang 7- Các yếu tố như thay đổi trong dữ liệu có thể khiến mô hình xấu đi theo thời gian, nên việc tự động theo dõi và phát hiện sai lệch là rất cần thiết.
*Đào tạo mô hình là quá trình sử dụng tập dữ liệu để huấn luyện thuật toán học máy, kết
hợp dữ liệu đầu ra mẫu và dữ liệu đầu vào liên quan Mô hình được huấn luyện bằng cách
so sánh đầu ra xử lý với đầu ra mẫu để cải thiện độ chính xác.
Trong học có giám sát, dữ liệu bao gồm đầu vào và đầu ra, giúp mô hình học từ sự phân
kỳ giữa chúng Ngược lại, học không giám sát tìm kiếm mẫu trong dữ liệu mà không có đầu ra tham chiếu, cải thiện độ chính xác qua các cụm dự đoán.
*Đào tạo lại mô hình (hoặc đào tạo liên tục) là khả năng tự động và liên tục cập nhật
mô hình theo lịch trình hoặc khi có sự kiện kích hoạt Điều này giúp đảm bảo dự đoán luôn chính xác mà không cần can thiệp thủ công.
Các nhà khoa học dữ liệu cần thực hiện nghiên cứu kỹ lưỡng về đo lường và hiệu suất, tùy thuộc vào chiến lược dữ liệu
1 Giới thiệu — Tài liệu Machine Learning 101
Trang 8CHƯƠNG 3: Các vấn đề lên quan đến chủ đề tìm hiểu.
3.1 Chất lượng dữ liệu và sự đa dạng về dữ liệu
Trong lĩnh vực học máy, dữ liệu đóng vai trò cực kỳ quan trọng trong việc xác định hiệu quả và độ chính xác của mô hình Tuy nhiên, việc có sẵn nguồn dữ liệu chất lượng cao không phải lúc nào cũng dễ dàng Một trong những thách thức lớn nhất của học máy là sự thiếu hụt hoặc không đồng nhất của dữ liệu Điều này có thể gây mất cân bằng trong quá trình huấn luyện mô hình, ảnh hưởng nghiêm trọng đến kết quả dự đoán
Dữ liệu không đầy đủ, không chính xác, hoặc thiếu tính đa dạng có thể làm sai lệch mô hình, dẫn đến các dự đoán không chính xác
Ví dụ, nếu dữ liệu huấn luyện thiên lệch về một nhóm đối tượng cụ thể mà không bao gồm các biến số quan trọng khác, mô hình sẽ có xu hướng học theo mẫu lệch lạc này
và đưa ra kết quả thiếu chính xác Điều này đặc biệt nguy hiểm khi áp dụng trong các lĩnh vực như y tế hoặc tài chính, nơi các quyết định dựa trên dữ liệu có thể ảnh hưởng trực tiếp đến con người và tài sản
Ngoài ra, vấn đề dữ liệu không đồng nhất cũng là một thách thức phổ biến Dữ liệu thu thập từ các nguồn khác nhau thường có định dạng khác nhau Việc tích hợp và làm sạch dữ liệu để tạo ra một bộ dữ liệu hoàn chỉnh, chất lượng là một quá trình phức tạp và tốn nhiều thời gian Hơn nữa, đảm bảo rằng dữ liệu đầu vào đại diện đủ cho các tình huống thực tế không phải là điều dễ dàng Khi dữ liệu thiếu tính đại diện, mô hình học máy có thể trở nên kém hiệu quả khi triển khai trong môi trường thực tế
3.2 Bảo mật
Bảo mật thông tin trong machine learning là một chủ để rất quan trọng Muốn hệ thống hoạt đọng tốt và chính sác ta cần nạp một lượng lớn dữ liệu để hệ thống có thể tự học do đó nếu thông tin cung cấp cho hệ thống không được bảo mật tốt người tấn công có thể dễ dàng lấy cắp thông tin Nếu hệ thống không có tính bảo mật hacker có thê dễ dàng xâm nhập hệ thống sau đó huấn luyện hệ thống bằng những thông tin sai sự thật hoặc chiếm quyền kiểm soát hệ thống hay cài những đường dẫn độc hại nhằm đánh cắp thông tin hoặc lừa đảo tiền của người sử dụng
3.3 Lựa chọn mô hình
Việc xây dựng một hệ thống học máy thành công không chỉ phụ thuộc vào thuật toán mà còn rất nhiều vào việc lựa chọn mô hình phù hợp Giống như việc chọn một công
cụ để thực hiện một công việc, mỗi mô hình đều có những ưu nhược điểm riêng và phù hợp với một loại bài toán cụ thể
Để tìm ra "người bạn đồng hành" lý tưởng cho dữ liệu của mình, chúng ta cần trải qua một quá trình khám phá và thử nghiệm Đầu tiên, chúng ta cần làm sạch và chuẩn bị
dữ liệu, loại bỏ những thông tin nhiễu và đảm bảo rằng dữ liệu đã sẵn sàng để đưa vào
Trang 9mô hình Tiếp theo, chúng ta sẽ xây dựng và huấn luyện nhiều mô hình khác nhau, sau đó
sử dụng các tiêu chí đánh giá như AIC, BIC để so sánh và lựa chọn mô hình tốt nhất
AIC và BIC là hai thước đo phổ biến giúp chúng ta đánh giá mức độ phù hợp của
mô hình với dữ liệu Một mô hình tốt là mô hình vừa có khả năng giải thích dữ liệu một cách chính xác, vừa không quá phức tạp để tránh hiện tượng "học quá kỹ" (overfitting) Overfitting xảy ra khi mô hình học quá kỹ các chi tiết ngẫu nhiên trong dữ liệu huấn luyện, dẫn đến khả năng dự đoán kém trên dữ liệu mới
Ngoài AIC và BIC, còn có nhiều tiêu chí đánh giá khác như cross-validation, độ chính xác, độ nhạy, độ đặc hiệu, Việc lựa chọn tiêu chí phù hợp phụ thuộc vào mục tiêu của bài toán và đặc điểm của dữ liệu
3.3 Khả năng mở rộng
Tài nguyên tính toán: Khi lượng dữ liệu tăng lên và mô hình trở nên phức tạp
hơn, nhu cầu về bộ nhớ, sức mạnh xử lý của máy tính cũng tăng theo Điều này đồng nghĩa với việc chúng ta cần phải đầu tư vào các máy tính cấu hình cao hoặc các hệ thống máy tính lớn, vốn có chi phí khá cao
Thời gian đào tạo: Quá trình huấn luyện các mô hình học máy trên các tập dữ liệu
lớn có thể kéo dài hàng giờ, thậm chí hàng ngày Điều này làm giảm hiệu suất và khả năng đáp ứng các yêu cầu thực tế của doanh nghiệp
Độ phức tạp của việc quản lý: Để xử lý các tập dữ liệu lớn và các mô hình phức
tạp, chúng ta cần phải chia nhỏ công việc và phân phối nó trên nhiều máy tính Điều này đòi hỏi các kỹ thuật phức tạp để quản lý và đồng bộ hóa các máy tính này, đồng thời đảm bảo rằng kết quả cuối cùng là chính xác
3.4 Khó khăn trong việc triển khai machine learning
Ứng dụng Machine Learning vào thực tế không hề đơn giản như trong phòng thí nghiệm
Khoảng cách giữa lý thuyết và thực tiễn: Các mô hình Machine Learning thường
hoạt động rất tốt trên các tập dữ liệu được chuẩn bị kỹ lưỡng trong môi trường nghiên cứu Tuy nhiên, khi đưa vào môi trường thực tế, dữ liệu thường không đồng nhất, thiếu sót và liên tục thay đổi Điều này khiến hiệu suất của mô hình giảm sút đáng kể
Tích hợp phức tạp: Việc kết hợp các mô hình Machine Learning vào hệ thống
hiện có của doanh nghiệp là một quá trình phức tạp và tốn kém Nhiều hệ thống cũ không được thiết kế để tương thích với các công nghệ mới, đòi hỏi phải có sự điều chỉnh và cải tiến lớn
Thiếu nhân lực: Không phải doanh nghiệp nào cũng có đủ nguồn lực để xây dựng
một đội ngũ chuyên gia về Machine Learning Việc tìm kiếm, tuyển dụng và đào tạo những người có kỹ năng này là một thách thức lớn
Trang 10 Chi phí cao: Việc triển khai Machine Learning đòi hỏi đầu tư lớn vào phần cứng,
phần mềm, dữ liệu và nhân lực Điều này khiến nhiều doanh nghiệp nhỏ và vừa gặp khó khăn trong việc áp dụng công nghệ này
Các vấn đề khác: Bên cạnh những vấn đề trên, còn có những thách thức khác như
đạo đức, bảo mật dữ liệu và việc giải thích cách các mô hình đưa ra quyết định
Chương 4 Ứng dụng:”Dự đoán bệnh tim mạch bằng thuật toán học máy”.
Việc áp dụng các kỹ thuật học máy hứa hẹn trong cả việc phân loại và chẩn đoán các bệnh tim mạch Học máy, với các ứng dụng đa dạng, từ việc xác định các đặc điểm tăng rủi ro đến tăng cường hệ thống , cung cấp các công cụ mô hình dự đoán phổ biến để khắc phục những hạn chế hiện có Nghiên cứu này nỗ lực xác định nguy cơ mắc bệnh tim phát sinh trên các tiêu chí Nghiên cứu sâu rộng đã được tiến hành bằng cách sử dụng các thuật toán học máy để dự đoán bệnh tim
1 Các thuật toán
A, KNN:
"K-Nearest Neighbors (KNN)" là một kỹ thuật ML sắp xếp có giám sát Nó dự đoán kết quả dựa trên cùng một dữ liệu đào tạo được cung cấp Dữ liệu đầu vào được so sánh với các tính năng của dữ liệu hiện có và kỹ thuật tính toán khoảng cách, giữa các điểm tính năng để so sánh dữ liệu chưa được phân loại với dữ liệu được phân loại Cái tên KNN có nghĩa là tìm kiếm những dữ liệu gần nhất với dữ liệu đầu vào K-Nearest
Neighbors (KNN) là một thuật toán được sử dụng rộng rãi trong học máy có giám sát Kỹ thuật linh hoạt này có thể giải quyết hiệu quả các tuyên bố vấn đề liên quan đến cả phân loại và hồi quy
B, Hồi quy:
Phương pháp học tập có giám sát được gọi là hồi quy logistic rất giỏi trong việc giải quyết cả các thách thức phân loại và hồi quy Trong các bài toán phân loại, biến đích thường rời rạc hoặc nhị phân, nhận các giá trị như 0 hoặc 1 Hồi quy logistic sử dụng hàm sigmoid trong quá trình của nó, tạo ra các biến phân loại có thể được biểu diễn dưới dạng
0 hoặc 1, Có hoặc Không, Đúng hoặc Sai, Kỹ thuật phân tích dự đoán này dựa vào các phép toán để đưa ra dự đoán.Hồi quy logistic dựa trên một hàm là hàm sigmoid hoặc logistic Chức năng này tạo ra đầu ra trong phạm vi từ 0 đến 1 Cụ thể, nếu một giá trị giảm xuống dưới 0,5, nó được hiểu là 0, trong khi các giá trị vượt quá 0,5 được hiểu là 1
C, Cây quyết định: