VietnamAI.orgHiểu đúng AI, đi trước cùng Việt Nam
Hiểu AI từ gốc

Học máy là gì? Máy "học" bằng cách nào, giải thích từ gốc

Học máy là cách cho máy xem rất nhiều ví dụ có đáp án, đo xem nó đoán sai bao nhiêu rồi chỉnh dần các con số bên trong cho sai ít đi.

Chủ xưởng may đứng soi lô áo mẫu bên cạnh máy tính bảng

Học máy là cách cho máy tính xem thật nhiều ví dụ, để nó tự tìm ra quy luật thay vì được người viết sẵn. Máy đoán, so với đáp án đúng, đo xem sai bao nhiêu, rồi chỉnh các con số bên trong cho lần sau sai ít hơn. Lặp lại hàng triệu lần như vậy gọi là "huấn luyện".

Chữ "học" ở đây dễ gây hiểu nhầm. Máy không hiểu bài như học sinh, nó chỉ điều chỉnh để khớp với ví dụ. Nhưng chỉ riêng việc đó, khi làm ở quy mô đủ lớn, đã đủ để nhận ra bệnh trên lá sầu riêng, đoán lượng bánh cần nướng sáng mai hay lọc thư rác.

Bài này giải thích máy học bằng cách nào, có mấy kiểu học, vì sao dữ liệu quyết định gần hết chất lượng, và những cái bẫy mà người mới làm học máy ở Việt Nam hay rơi vào.

Máy "học" thật ra là đang làm gì?

Hình dung một tiệm bánh mì muốn đoán sáng mai bán được bao nhiêu ổ. Chủ tiệm có sổ ghi mấy tháng: hôm đó thứ mấy, trời mưa hay nắng, có lễ không, bán được bao nhiêu. Một mô hình học máy bắt đầu bằng cách đoán bừa, kiểu "ngày nào cũng 300 ổ". So với sổ thì thấy chủ nhật đoán thiếu, ngày mưa đoán dư.

Bước then chốt là đo độ sai. Máy cộng hết các lần đoán lệch lại thành một con số, gọi là sai số. Sau đó nó nhích từng con số bên trong mô hình, như "mưa thì bớt bao nhiêu ổ", "chủ nhật thì thêm bao nhiêu", theo hướng làm sai số nhỏ đi. Nhích một chút, đo lại, nhích tiếp. Đó là toàn bộ bí mật của chữ "học".

Với tiệm bánh, mô hình chỉ có vài con số. Với mô hình nhận ảnh hay mô hình ngôn ngữ, con số đó lên tới hàng tỉ, và vòng đoán, đo, chỉnh chạy trên hàng nghìn chip suốt nhiều tuần. Bản chất không đổi, chỉ có quy mô khác.

Học xong, người ta đem mô hình đi dùng với dữ liệu mới mà nó chưa từng thấy, gọi là giai đoạn suy luận. Lúc này mô hình không học thêm nữa, chỉ áp các con số đã chỉnh vào tình huống mới. Đây là lý do một mô hình học từ năm ngoái không tự biết chuyện năm nay, trừ khi được huấn luyện lại hoặc được đưa thông tin mới vào câu hỏi.

Một chi tiết người trong nghề hay nhấn: muốn biết mô hình có tốt thật không, phải giữ riêng một phần dữ liệu không cho nó học, rồi dùng phần đó để chấm. Chấm bằng chính dữ liệu đã học thì cũng như cho học sinh thi lại đúng đề đã chữa, điểm cao mà chẳng nói lên gì.

Các kiểu học máy chính, kèm ví dụ dễ hình dung

Học có giám sát. Dữ liệu có sẵn đáp án, như ảnh lá cà phê đã được kỹ sư nông nghiệp ghi "bị gỉ sắt" hay "khoẻ". Máy học cách gắn đúng nhãn. Đây là kiểu phổ biến nhất.

Phân loại. Một nhánh của học có giám sát: chia vào nhóm. Tin nhắn lừa đảo hay không, đơn hàng có khả năng bị bom hay không.

Hồi quy. Nhánh còn lại: đoán một con số. Giá một căn hộ theo diện tích và vị trí, sản lượng điện mặt trời theo thời tiết.

Học không giám sát. Dữ liệu không có đáp án, máy tự gom những thứ giống nhau. Một chuỗi cửa hàng tiện lợi gom khách thành nhóm theo thói quen mua mà không cần ai định nghĩa trước.

Gom cụm khách hàng. Ứng dụng quen thuộc của học không giám sát. Kết quả cần người hiểu kinh doanh đặt tên và quyết định có ý nghĩa hay không.

Học tăng cường. Máy thử hành động, được thưởng khi làm tốt, bị trừ khi làm dở, và tự tìm cách tối đa phần thưởng. Hay dùng cho chơi cờ, điều khiển robot, tối ưu đèn giao thông trong mô phỏng.

Học tự giám sát. Máy tự tạo đáp án từ chính dữ liệu, ví dụ che một chữ trong câu rồi đoán chữ bị che. Nhờ cách này mà mô hình ngôn ngữ học được từ khối văn bản khổng lồ không ai gắn nhãn.

Học chuyển giao. Lấy mô hình đã học việc lớn rồi dạy thêm việc nhỏ. Một mô hình nhận ảnh chung có thể học thêm vài nghìn ảnh để nhận bệnh trên lá thanh long.

Tinh chỉnh. Dạng học chuyển giao dùng nhiều cho mô hình ngôn ngữ: cho học thêm văn bản của một ngành để nói đúng thuật ngữ ngành đó.

Học trực tuyến. Mô hình cập nhật liên tục khi có dữ liệu mới, như hệ thống chống gian lận thẻ phải theo kịp chiêu mới mỗi tuần.

Học từ phản hồi của người. Người chấm câu trả lời nào tốt hơn, máy học theo. Đây là bước giúp chatbot trả lời lịch sự và đúng ý hơn.

Vì sao dữ liệu quyết định gần hết chất lượng?

Rác vào thì rác ra. Sổ bán hàng ghi sai, bỏ sót ngày thì mô hình học sai theo. Không thuật toán nào cứu được dữ liệu tệ.

Nhãn sai là dạy sai. Nếu người gắn nhãn lá bệnh nhầm giữa hai loại nấm, mô hình sẽ nhầm y như vậy, thậm chí nhầm tự tin hơn.

Thiếu đa dạng thì hụt ngoài đời. Ảnh chụp toàn trong nhà kính sáng đẹp, đem ra vườn trưa nắng gắt là mô hình nhận kém hẳn.

Mất cân bằng nhóm. Trong một nghìn giao dịch chỉ có hai giao dịch gian lận. Mô hình cứ đoán "bình thường" hết là đúng gần như tuyệt đối mà vô dụng.

Dữ liệu cũ, đời đã đổi. Thói quen mua sắm trước và sau khi giao hàng nhanh phổ biến khác hẳn. Học dữ liệu cũ là đoán theo một thế giới không còn.

Rò rỉ đáp án. Lỗi kinh điển: vô tình để thông tin chỉ có sau sự việc lọt vào dữ liệu học, như cột "đã hoàn tiền" khi đoán đơn bị huỷ. Điểm thử rất đẹp, ra đời thì sập.

Dữ liệu cá nhân cần xin phép. Dữ liệu khách hàng, bệnh nhân, học sinh không phải muốn dùng là dùng. Cần sự đồng ý và cách ẩn danh phù hợp, hỏi luật sư khi không chắc.

Dữ liệu tiếng Việt cần làm sạch riêng. Văn bản bỏ dấu, gõ tắt, lẫn tiếng Anh rất phổ biến. Không chuẩn hoá thì mô hình học thành nhiều thứ khác nhau cho cùng một chữ.

Số lượng không bù được chất lượng. Mười nghìn ảnh mờ không bằng hai nghìn ảnh rõ, đúng nhãn, chụp đủ điều kiện ánh sáng.

Ghi chép từ đầu rẻ hơn sửa sau. Doanh nghiệp nhỏ muốn dùng học máy sau này thì nên ghi chép đơn hàng, tồn kho đều đặn ngay từ bây giờ.

Phải kiểm lại định kỳ. Mô hình chạy tốt hôm nay có thể kém dần khi khách hàng, mùa vụ, thị trường đổi. Cần đo lại chứ không chạy một lần rồi để đó.

Quá khớp: khi máy học thuộc lòng thay vì học quy luật

Có một lỗi mà ai làm học máy cũng gặp ít nhất một lần: mô hình đạt điểm gần tuyệt đối trên dữ liệu học, nhưng đem dùng thật thì kém. Lỗi này gọi là quá khớp. Mô hình đã nhớ luôn cả những chi tiết vụn vặt, ngẫu nhiên của dữ liệu học, thay vì nắm quy luật chung.

Ví dụ ở một nhà vườn chụp ảnh lá bệnh. Tình cờ ảnh lá bệnh phần lớn chụp buổi chiều, ánh vàng, còn ảnh lá khoẻ chụp buổi sáng. Mô hình có thể "học" rằng ánh vàng nghĩa là bệnh. Trên giấy điểm rất đẹp, ra vườn chụp lá khoẻ lúc chiều là báo bệnh ầm ầm.

Cách chống quá khớp không có gì cao siêu: dữ liệu đa dạng hơn, giữ riêng tập chấm điểm thật nghiêm, dừng huấn luyện đúng lúc, và chọn mô hình không phức tạp quá mức cần thiết. Quan trọng nhất là người làm phải tò mò hỏi "mô hình đang nhìn vào cái gì để quyết định", chứ không chỉ nhìn con số độ chính xác.

Ngược lại cũng có lỗi chưa khớp: mô hình quá đơn giản, chưa nắm nổi quy luật. Giống đoán ngày nào cũng 300 ổ bánh. Làm học máy là tìm điểm cân bằng giữa hai đầu đó, và việc này cần thử, đo, sửa nhiều vòng, không có công thức một lần là xong.

Một dự án học máy nhỏ đi qua những bước nào?

Nói rõ bài toán bằng lời. Không phải "áp dụng AI" mà là "đoán trước ba ngày lượng sữa tươi cần nhập cho mỗi cửa hàng". Bài toán mơ hồ thì dự án trôi.

Hỏi xem có cần học máy không. Nhiều việc chỉ cần một bảng tính với vài công thức. Học máy đáng làm khi luật quá nhiều, quá đổi, hoặc người không tự viết ra được.

Gom dữ liệu đã có. Sổ bán hàng, phần mềm tính tiền, file bảng tính của từng chi nhánh. Thường mất nhiều thời gian nhất ở bước này.

Làm sạch và thống nhất. Tên sản phẩm mỗi nơi ghi một kiểu, ngày tháng lộn xộn, ô trống. Người trong nghề hay nói phần lớn công sức nằm ở đây, không nằm ở thuật toán.

Chọn cách đo thành công. Đoán sai thiếu hàng và đoán sai dư hàng có giá khác nhau. Phải quyết định sai kiểu nào đắt hơn trước khi chấm mô hình.

Dựng một mốc so sánh đơn giản. Ví dụ "bán bằng trung bình bốn tuần trước". Mô hình không vượt được mốc này thì chưa đáng dùng.

Huấn luyện và chấm trên phần dữ liệu giữ riêng. Chia theo thời gian: học các tháng trước, chấm tháng gần nhất. Giống cách mô hình sẽ được dùng thật.

Soi xem mô hình dựa vào đâu. Nếu nó dựa vào một cột vô lý thì có thể dữ liệu đang rò rỉ đáp án hoặc chứa trùng hợp ngẫu nhiên.

Chạy thử song song với cách cũ. Vài tuần để người quản lý cửa hàng so sánh. Niềm tin của người dùng quan trọng ngang độ chính xác.

Đưa vào quy trình thật. Kết quả phải hiện đúng chỗ người ta ra quyết định, như trong màn hình đặt hàng, không nằm trong một báo cáo không ai mở.

Theo dõi và huấn luyện lại. Mùa vụ, giá cả, thói quen khách đổi theo thời gian. Đặt lịch đo lại để biết khi nào mô hình bắt đầu lệch.

Câu hỏi thường gặp

Học máy và AI khác nhau thế nào?

AI là mục tiêu rộng: làm cho máy làm được việc cần trí óc. Học máy là cách phổ biến nhất để đạt mục tiêu đó hiện nay, bằng việc học từ dữ liệu. Có những AI cũ không dùng học máy mà dùng luật viết tay.

Cần bao nhiêu dữ liệu để làm một mô hình học máy?

Không có con số chung. Bài toán đơn giản với vài cột thông tin có khi vài nghìn dòng là đủ, bài toán ảnh phức tạp cần nhiều hơn hẳn. Dùng học chuyển giao từ mô hình có sẵn giúp giảm mạnh lượng dữ liệu cần tự gom.

Doanh nghiệp nhỏ có tự làm học máy được không?

Được với bài toán gọn, như dự báo hàng bán hay phân nhóm khách, bằng các công cụ có sẵn trong phần mềm bảng tính hoặc dịch vụ đám mây. Điều kiện tiên quyết là có số liệu ghi chép đều đặn và đúng.

Mô hình học xong có tự học thêm khi dùng không?

Phần lớn là không. Mô hình đã huấn luyện thường đứng yên khi dùng, muốn cập nhật phải huấn luyện lại. Chỉ một số hệ thống được thiết kế để học liên tục, và loại này cần giám sát chặt.

Học máy có cần giỏi toán không?

Để dùng công cụ có sẵn thì không cần nhiều. Để tự xây và hiểu sâu mô hình thì cần nền tảng xác suất, đại số tuyến tính và giải tích ở mức đại học.

Cần tư vấn cụ thể cho trường hợp của bạn?

Chúng tôi sẽ liên hệ trong vòng 24 giờ.

Đăng ký tư vấn ngay

Bài viết liên quan

Bạn cần hỗ trợ thêm?

Để lại thông tin, chúng tôi sẽ liên hệ trong 24 giờ.