Tin Học KHMT
Ôn tập Tin học THPT › Tin học 12 - Khoa học máy tính › Bài 21
Tin học 12 - Khoa học máy tính

Bài 21. Học máy (machine learning) là gì?

Có những bài toán mà con người khó lòng viết ra một luật rõ ràng cho máy tính làm theo - chẳng hạn dạy máy nhận ra một bức ảnh có con mèo hay không. Bài học này giới thiệu học máy (machine learning): cách máy tính tự rút ra quy luật từ rất nhiều dữ liệu ví dụ, thay vì được lập trình theo từng luật do con người viết sẵn.

Chủ đề G · Trí tuệ nhân tạo & Học máy - đọc khoảng 10 phút · 23 câu luyện tập trong ứng dụng

Tương ứng sách giáo khoa
  • Cánh DiềuTin học 12 (Khoa học máy tính) - Chủ đề F(CS) · Bài 1. Giới thiệu về học máytr. 126
  • Chân trời sáng tạoTin học 12 (Khoa học máy tính) - Bài F14. Học máytr. 143
  • Kết nối tri thứcTin học 12 (Khoa học máy tính) - Bài 25. Làm quen với Học máytr. 134–139
Xem bảng đối chiếu cả bộ →

Bắt đầu bằng một hình dung

Giả sử bạn cần giúp một người chưa từng nhìn thấy con mèo bao giờ học cách nhận ra nó. Có hai cách để làm việc này.

Cách thứ nhất: đọc cho người đó một định nghĩa thật chi tiết - ‘mèo là loài vật có bốn chân, tai nhọn, đuôi dài, bộ ria quanh miệng, phát ra tiếng kêu đặc trưng’. Nghe có vẻ ổn, cho đến khi người đó gặp một con mèo tai cụp bẩm sinh, một con mèo bị cụt đuôi vì tai nạn, hay ngược lại, một con cáo cũng bốn chân, tai nhọn, đuôi dài chẳng kém gì mèo. Định nghĩa rõ ràng đến mấy cũng khó lòng liệt kê hết mọi trường hợp ngoại lệ.

Cách thứ hai: không đọc định nghĩa nào cả. Thay vào đó, đưa cho người đó xem thật nhiều bức ảnh, mỗi ảnh kèm một lời chú thích - ‘đây là mèo’ hoặc ‘đây không phải mèo’ - hết ảnh này đến ảnh khác, có khi lên đến hàng nghìn tấm. Không ai giảng giải luật gì cả, nhưng chỉ sau một thời gian, người đó tự nhiên nhận ra mèo ngay cả trong những bức ảnh hoàn toàn mới, dù có khi chính họ cũng không diễn đạt rành mạch được vì sao mình biết đó là mèo.

Cách thứ hai chính là tinh thần của học máy: thay vì viết luật, ta cho máy xem thật nhiều ví dụ, rồi để máy tự tìm ra quy luật ẩn trong đó.

Nội dung bài học

  1. 1) Lập trình truyền thống: viết sẵn từng luật cho máy
  2. 2) Học máy: đưa dữ liệu, để máy tự rút ra quy luật
  3. 3) Dữ liệu huấn luyện: nguyên liệu quyết định máy học đúng hay sai
  4. 4) Một số ứng dụng quen thuộc của học máy
  5. 5) Máy ‘học’ ở đây thực ra nghĩa là gì?

Tóm tắt lý thuyết cần nhớ

  • Lập trình truyền thống yêu cầu con người viết sẵn từng luật cụ thể cho máy; học máy (machine learning) thì ngược lại - máy tự rút ra quy luật từ rất nhiều dữ liệu ví dụ, không cần ai viết luật sẵn.
  • Học máy là một nhánh của trí tuệ nhân tạo (AI) - hướng đi phổ biến nhất hiện nay để giúp máy thực hiện những việc vốn cần đến trí thông minh của con người.
  • Dữ liệu huấn luyện (training data) là nguyên liệu duy nhất máy dựa vào để học; dữ liệu càng nhiều và càng chính xác, máy càng có cơ hội học đúng quy luật.
  • Máy ‘học’ nghĩa là điều chỉnh dần dần qua rất nhiều lần dự đoán và sửa sai để ngày càng chính xác hơn - ứng dụng quen thuộc gồm lọc thư rác, gợi ý phim, nhận diện chữ viết tay.

Thuật ngữ tiếng Anh trong bài

Tiếng AnhĐọc làNghĩa
machine learningmơ-sin lơ-ninhhọc máy
Là cách cho máy tính tự học từ thật nhiều ví dụ.
supervised learningsu-pơ-vai-zơ lơ-ninhhọc có giám sát
Là kiểu dạy máy mà mỗi ví dụ đều dán sẵn đáp án đúng.
unsupervised learningăn-su-pơ-vai-zơ lơ-ninhhọc không giám sát
Là kiểu máy tự học mà không ai nói đáp án.
datasetđây-tơ-séttập dữ liệu
Là một bộ dữ liệu gom lại để cho máy học.
modelmo-đờlmô hình
Là thứ máy tạo ra sau khi học xong, dùng để đoán việc mới.

Câu hỏi trắc nghiệm có đáp án

Mấy câu mẫu để bạn tự kiểm tra ngay. Trong ứng dụng, bài này có đủ 23 câu, chấm điểm tự động và giải thích từng câu sai.

Câu 1 · Nhận biết
Điểm khác biệt cốt lõi giữa lập trình truyền thốnghọc máy (machine learning) là gì?
  1. Lập trình truyền thống dùng máy tính, còn học máy thì không cần dùng máy tính.
  2. Trong lập trình truyền thống, con người viết sẵn từng luật; trong học máy, máy tự rút ra quy luật từ dữ liệu ví dụ.
  3. Học máy chỉ áp dụng được cho các phép tính số học đơn giản như cộng, trừ.
  4. Lập trình truyền thống luôn cho kết quả chính xác hơn học máy trong mọi bài toán.
Đáp án: B - Trong lập trình truyền thống, người viết chương trình nghĩ ra và viết sẵn từng luật cụ thể. Trong học máy, máy được cho xem nhiều dữ liệu ví dụ và tự rút ra quy luật, không cần ai viết luật sẵn.
Câu 2 · Nhận biết
Học máy (machine learning) là một nhánh của lĩnh vực nào?
  1. Trí tuệ nhân tạo (AI)
  2. Thiết kế web
  3. Quản trị mạng máy tính
  4. Xử lý văn bản soạn thảo
Đáp án: A - Học máy là một nhánh của trí tuệ nhân tạo (AI) - lĩnh vực nghiên cứu cách giúp máy tính thực hiện những việc vốn cần đến trí thông minh của con người.
Câu 3 · Thông hiểu
Nếu dữ liệu huấn luyện đưa cho máy có rất nhiều nhãn bị gắn sai (ví dụ nhiều ảnh chó bị chú thích nhầm thành mèo), điều gì có khả năng xảy ra?
  1. Máy sẽ tự động phát hiện và loại bỏ những nhãn sai đó trước khi học.
  2. Máy vẫn học đúng quy luật vì máy tính luôn xử lý mọi dữ liệu một cách chính xác.
  3. Máy có khả năng học theo đúng những sai lầm đó, dẫn đến dự đoán sai trên dữ liệu mới.
  4. Lượng dữ liệu gắn nhãn sai không ảnh hưởng gì miễn là tổng số dữ liệu đủ nhiều.
Đáp án: C - Máy hoàn toàn dựa vào dữ liệu huấn luyện để rút ra quy luật; nếu dữ liệu có nhiều nhãn sai, máy sẽ học theo đúng những sai lầm đó, dẫn đến dự đoán không chính xác trên dữ liệu mới.
Câu Đúng/Sai (Phần II) · Thông hiểu
Cho biết mỗi phát biểu sau đúng hay sai:
  • a)Trong học máy, máy tự rút ra quy luật từ dữ liệu ví dụ, thay vì được lập trình theo từng luật do con người viết sẵn.Đúng
  • b)Học máy là một lĩnh vực hoàn toàn tách biệt, không liên quan gì đến trí tuệ nhân tạo (AI).Sai
  • c)Dữ liệu huấn luyện càng nhiều và càng chính xác thì máy càng có cơ hội học đúng quy luật.Đúng
  • d)Một khi đã huấn luyện xong, mô hình học máy sẽ luôn dự đoán chính xác tuyệt đối trên mọi dữ liệu mới, không bao giờ sai.Sai
Vì sao:
  • (a) Đúng - đây là đặc trưng cốt lõi của học máy, khác hẳn lập trình truyền thống.
  • (b) Sai - học máy là một nhánh của trí tuệ nhân tạo (AI), không tách biệt khỏi AI.
  • (c) Đúng - dữ liệu huấn luyện là nguyên liệu duy nhất máy dựa vào để học, nên càng nhiều và càng chính xác thì máy càng học đúng quy luật.
  • (d) Sai - mô hình học máy học quy luật từ dữ liệu đã có, nhưng vẫn có thể dự đoán sai trên dữ liệu mới, đặc biệt khi dữ liệu huấn luyện ít hoặc kém chất lượng.

Thử ngay: minh hoạ từng bước

Bấm từng bước để tự xem cơ chế hoạt động, hoặc bấm “Tự chạy” cho nó tiến mỗi giây một lần. Đổi được dữ liệu đầu vào - không cần đăng nhập.

Học trọn bài này trong ứng dụng

Bài giảng đầy đủ, 23 câu luyện tập chấm tự động, thi thử đúng cấu trúc đề tốt nghiệp (24 trắc nghiệm + 4 Đúng/Sai), bài thực hành máy tự chấm và gia sư AI giải thích chỗ sai.

Mở bài 21 trong ứng dụng

Phần học miễn phí, không cần tạo tài khoản.