AI không thông minh — nó chỉ giỏi đoán
Machine learning nghe ghê gớm nhưng thật ra chỉ là dạy máy đoán pattern. Mình giải thích bằng chuyện nấu ăn — và cho bạn thử luôn trong 30 phút.
Bụi WirePop quiz nhanh: bạn nghĩ AI "học" giống ai nhất?
A) Một đứa sinh viên cày đề cương trước thi
B) Một đầu bếp nếm đi nếm lại cho đến khi vừa miệng
C) Một em bé tự khám phá đồ chơi mà không ai hướng dẫn
Đáp án? Cả ba. Và đó chính xác là ba cách mà machine learning hoạt động — supervised, unsupervised, và reinforcement learning. Ba cái tên tiếng Anh nghe thì choáng, nhưng mình hứa: đọc xong bài này, bạn sẽ phân biệt được cả ba dễ như chọn món ăn trưa.
Supervised learning — học có người kèm, giống nấu theo công thức
Hình dung thế này: bạn chưa biết nấu phở, nhưng có cuốn sách dạy nấu ăn ghi rõ — bò bao nhiêu gram, hành bao nhiêu củ, nước bao nhiêu lít, và kết quả cuối cùng phải ra vị thế nào. Bạn nấu theo, nếm thử, chưa đúng thì chỉnh. Lặp lại cho đến khi ra đúng vị.
Supervised learning y hệt vậy. Máy được cho dữ liệu có nhãn (labeled data) — tức là đã có "đáp án" sẵn.
Ví dụ cụ thể: giả sử team bạn 5 người đang làm app bán quần áo online. Bạn muốn AI tự phân loại "áo thun" vs "áo sơ mi" từ ảnh sản phẩm. Bạn chuẩn bị 1.000 tấm ảnh, mỗi tấm gắn nhãn sẵn. Máy nhìn ảnh + nhãn, tìm pattern, rồi khi gặp ảnh mới thì tự đoán.
Các algorithm phổ biến trong nhóm này: linear regression (dự đoán con số, ví dụ giá nhà), decision tree (phân loại theo cây quyết định), random forest (kết hợp nhiều decision tree cho chắc ăn hơn). Tất cả đều có sẵn trong thư viện open-source Scikit-learn — miễn phí, cài bằng một lệnh pip install.
Unsupervised learning — tự mò mẫm, như vào bếp không có công thức
Giờ tưởng tượng bạn vào bếp, có một đống nguyên liệu nhưng không có công thức nào cả. Không ai nói cho bạn biết món gì nên đi với món gì. Bạn phải tự nhóm: "Mấy cái này có vẻ là gia vị, mấy cái kia là rau, mấy cái này là protein."
Unsupervised learning hoạt động kiểu đó. Máy nhận dữ liệu không có nhãn, rồi tự tìm cách nhóm (clustering) hoặc phát hiện pattern ẩn mà mắt thường khó thấy.
Kịch bản thật: giả sử bạn làm marketing cho một startup ở Sài Gòn, có 10.000 khách hàng nhưng không biết phân nhóm thế nào. Thay vì ngồi đoán "chắc nhóm này thích giảm giá, nhóm kia thích freeship", bạn cho algorithm K-means clustering chạy trên dữ liệu mua hàng. Máy tự chia ra 4–5 nhóm khách có hành vi tương tự — bạn chỉ cần đặt tên và chạy campaign. Đỡ hẳn mấy buổi brainstorm vô hồn.
Deep learning — khi đầu bếp tự sáng tạo món mới
Đến đây mọi chuyện bắt đầu thú vị. Deep learning là nhánh con của machine learning, nhưng thay vì dùng algorithm đơn giản, nó dùng neural network — mạng lưới nhiều lớp lấy cảm hứng từ cách não người xử lý thông tin.
Nếu supervised learning là nấu theo công thức, deep learning là một đầu bếp đã ăn hàng ngàn món, tự rút ra quy luật mùi vị, rồi sáng tạo món mới mà không cần ai dạy từng bước. Transformer — kiến trúc đằng sau ChatGPT, Gemini, Llama — chính là "bộ não" kiểu này.
Nhưng — và đây là chỗ nhiều người mới hay hiểu lầm — deep learning không phải lúc nào cũng tốt hơn. Nó đòi rất nhiều dữ liệu và tài nguyên tính toán. Nếu bài toán của bạn đơn giản (phân loại 2 nhóm, dự đoán 1 con số), một linear regression chạy trong vài giây có thể cho kết quả tốt ngang ngửa con model train cả ngày.
Cái bẫy kinh điển: dùng dao mổ trâu để gọt táo
Mình biết một team ở Hà Nội, muốn dự đoán nhân viên nào sẽ nghỉ việc trong 3 tháng tới. Dữ liệu họ có? Khoảng 500 dòng Excel — tuổi, phòng ban, lương, số năm làm việc. Họ hào hứng deploy một mô hình deep learning với 3 hidden layer, cả team hì hục cả tuần.
Kết quả? Model overfit tệ hại — nôm na là nó "học thuộc lòng" 500 dòng đó, rồi khi gặp dữ liệu mới thì đoán sai be bét. Trong khi một logistic regression đơn giản, train trong 2 phút, lại cho kết quả ổn hơn rõ rệt.
Quy tắc ngón tay cái: dữ liệu ít + bài toán rõ ràng → model đơn giản trước. Deep learning để dành cho khi bạn có hàng chục ngàn đến hàng triệu data point, và bài toán phức tạp kiểu nhận diện hình ảnh, xử lý ngôn ngữ, hay tạo sinh nội dung.
Thử ngay chiều nay — 30 phút đầu tiên với machine learning
Chưa bao giờ chạm vào ML? Đây là lộ trình mình gợi ý:
Bước 1: Mở Google Colab — miễn phí, chạy trên trình duyệt, không cần cài gì.
Bước 2: Tạo notebook mới, import thư viện:
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
Bước 3: Load bộ dữ liệu Iris — dataset kinh điển cho người mới, phân loại 3 loại hoa dựa trên kích thước cánh hoa. Chia train/test:
data = load_iris()
X_train, X_test, y_train, y_test = train_test_split(
data.data, data.target, test_size=0.2
)
Bước 4: Train và đánh giá:
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
print("Accuracy:", model.score(X_test, y_test))
Xong. Bạn vừa train model machine learning đầu tiên trong đời. Giờ thử thay DecisionTreeClassifier bằng RandomForestClassifier hoặc LogisticRegression xem accuracy thay đổi thế nào — đó chính là bước đầu của model selection, kỹ năng quan trọng nhất khi làm ML.
Ngoài Scikit-learn, bạn có thể khám phá thêm PyTorch (mạnh cho deep learning, hoàn toàn open-source) và XGBoost (chuyên gradient boosting, hay thắng các cuộc thi Kaggle).
Nếu là mình, mình sẽ bắt đầu thế nào?
Mình sẽ không nhảy thẳng vào deep learning hay chạy theo trend LLM. Mình sẽ bắt đầu bằng supervised learning + Scikit-learn, vì nó dạy bạn vòng lặp tư duy đúng: chuẩn bị dữ liệu → chọn model → train → đánh giá → cải thiện. Vòng lặp đó không thay đổi dù bạn dùng linear regression hay GPT — chỉ có quy mô là khác.
Đừng tin mình, thử đi rồi biết.
---
Bụi Wire — nghiện đọc release notes lúc 2 giờ sáng