Machine Learning là gì?
Machine Learning (Học máy) là một nhánh của trí tuệ nhân tạo (AI), trong đó máy tính tự tìm ra quy luật từ dữ liệu có sẵn thay vì được lập trình sẵn từng luật cụ thể. Thuật ngữ này được Arthur Samuel đặt ra năm 1959 khi ông viết một chương trình chơi cờ đam tự cải thiện qua từng ván đấu. Deep Learning (học sâu) là một kỹ thuật cụ thể trong Machine Learning, dùng mạng nơ-ron nhiều lớp, đứng sau phần lớn tiến bộ AI gần đây như nhận diện hình ảnh và mô hình ngôn ngữ lớn.
Sự khác biệt cốt lõi giữa lập trình truyền thống và Machine Learning: lập trình truyền thống viết luật rồi máy tính áp dụng luật đó lên dữ liệu để ra kết quả; Machine Learning đưa vào dữ liệu và kết quả mẫu, để máy tính tự tìm ra luật. Ví dụ, thay vì viết hàng trăm luật để phát hiện email rác, một mô hình Machine Learning học từ hàng nghìn email đã được gắn nhãn rác hay không rác, rồi tự áp dụng cho email mới. Trong doanh nghiệp, Machine Learning thường xuất hiện dưới dạng cụ thể: dự đoán nhu cầu hàng tồn kho, phát hiện giao dịch bất thường, chấm điểm khách hàng tiềm năng - chứ ít khi là một sản phẩm 'AI' chung chung.
Thành phần
Dữ liệu huấn luyện (training data)
Tập dữ liệu mẫu có kết quả đã biết, dùng để mô hình học ra quy luật. Chất lượng dữ liệu quyết định phần lớn độ chính xác.
Học có giám sát (supervised learning)
Học từ dữ liệu đã được gắn nhãn đúng/sai trước, dùng cho bài toán dự đoán hoặc phân loại.
Học không giám sát (unsupervised learning)
Tự tìm ra nhóm hoặc quy luật trong dữ liệu chưa gắn nhãn, dùng để phân khúc khách hàng hoặc phát hiện bất thường.
Deep Learning (mạng nơ-ron)
Kỹ thuật dùng nhiều lớp tính toán mô phỏng nơ-ron, hiệu quả với dữ liệu phức tạp như hình ảnh, âm thanh, văn bản.
Đánh giá mô hình
Đo độ chính xác trên dữ liệu chưa từng dùng để huấn luyện, tránh mô hình chỉ 'học thuộc' dữ liệu cũ mà không dự đoán tốt dữ liệu mới.
Lợi ích và thời điểm triển khai
Lợi ích
- Dự đoán nhu cầu hàng tồn kho, doanh thu, hoặc khách hàng có khả năng rời bỏ dựa trên dữ liệu lịch sử thực tế.
- Phát hiện quy luật hoặc bất thường trong hàng triệu giao dịch mà việc rà soát thủ công không khả thi.
- Mô hình có thể huấn luyện lại định kỳ để bắt kịp thay đổi trong hành vi khách hàng hoặc thị trường.
Nên triển khai khi
- Có dữ liệu lịch sử đủ lớn (hàng nghìn bản ghi trở lên) nhưng chưa dùng để dự đoán điều gì cả
- Đang dựa vào cảm tính hoặc kinh nghiệm cá nhân để quyết định nhập hàng, định giá, hoặc chăm sóc khách hàng
- Cần phát hiện giao dịch hoặc hành vi bất thường trong khối lượng dữ liệu quá lớn để rà soát tay
- Đã thử một bài toán dự đoán bằng công thức đơn giản (Excel) nhưng độ chính xác không đủ dùng
Câu hỏi thường gặp
Machine Learning, AI và Deep Learning khác nhau thế nào?
AI (trí tuệ nhân tạo) là khái niệm rộng nhất: mọi kỹ thuật giúp máy tính thực hiện việc thường cần trí thông minh con người. Machine Learning là một nhánh của AI, cho máy tự học từ dữ liệu. Deep Learning là một kỹ thuật cụ thể trong Machine Learning, dùng mạng nơ-ron nhiều lớp. Có thể hình dung ba vòng tròn lồng nhau: AI bao trùm Machine Learning, Machine Learning bao trùm Deep Learning.
Doanh nghiệp nhỏ có đủ dữ liệu để dùng Machine Learning không?
Tuỳ bài toán. Một số bài toán cần hàng chục nghìn bản ghi để mô hình học tốt, nhưng một số bài toán đơn giản hơn (phát hiện đơn hàng có khả năng gian lận theo vài đặc điểm rõ ràng) có thể làm được với dữ liệu ít hơn. Cách an toàn là đánh giá trước xem dữ liệu hiện có có đủ và đủ sạch hay không, trước khi đầu tư xây mô hình.
Machine Learning khác gì với việc dùng ChatGPT hoặc Claude cho doanh nghiệp?
ChatGPT, Claude là các mô hình ngôn ngữ lớn (một dạng Deep Learning) đã được huấn luyện sẵn trên dữ liệu khổng lồ, dùng ngay qua API mà không cần tự huấn luyện. Machine Learning cho bài toán riêng của doanh nghiệp (dự đoán tồn kho, chấm điểm tín dụng) thường cần huấn luyện mô hình riêng trên dữ liệu của chính doanh nghiệp đó, vì mô hình ngôn ngữ chung không biết về nghiệp vụ cụ thể này.
Xây một mô hình Machine Learning mất bao lâu?
Phần lớn thời gian không nằm ở việc huấn luyện mô hình mà ở việc thu thập, làm sạch và chuẩn hoá dữ liệu - thường chiếm phần lớn công sức của cả dự án. Thời gian cụ thể phụ thuộc vào chất lượng dữ liệu sẵn có và độ phức tạp của bài toán.
Khái niệm khác
Tất cảODC là gì?
ODC (Offshore Development Center - Trung tâm phát triển thuê ngoài) là mô hình trong đó một đội kỹ sư được đặt tại đơn vị thuê ngoài (thường ở nước khác, chi phí nhân sự thấp hơn) nhưng làm việc riêng, dài hạn cho một khách hàng duy nhất, giống như một chi nhánh mở rộng của đội kỹ thuật khách hàng. Khách hàng tự điều phối công việc hằng ngày cho đội đó, còn đơn vị thuê ngoài chỉ lo tuyển dụng, quản lý hành chính và hạ tầng.
Kiểm thử phần mềm là gì?
Kiểm thử phần mềm (software testing) là quá trình kiểm tra một phần mềm có hoạt động đúng như yêu cầu hay không, tìm ra lỗi trước khi người dùng thật gặp phải, và xác nhận phần mềm đủ ổn định để đưa vào sử dụng. Kiểm thử được chia thành nhiều loại theo phạm vi (kiểm thử đơn vị, tích hợp, toàn hệ thống) và theo cách thực hiện (kiểm thử thủ công do người thao tác trực tiếp, và kiểm thử tự động do các đoạn mã kịch bản chạy lại nhiều lần).