Học Machine Learning với Python
Khóa học machine learning thực hành miễn phí. Viết code scikit-learn thật, huấn luyện mô hình trên bộ dữ liệu thật và xem biểu đồ của bạn hiện ra trong tab Plots, mỗi lần một bước nhỏ.
233 bài học231 thử thách965 câu hỏi trắc nghiệm
- Phù hợp cho người mới
Trợ giúp lập trình bằng AI
Bài học tương tác thực hành
Có thuyết minh âm thanh cho mọi bài học
Bài trắc nghiệm để kiểm tra kiến thức
Giấy chứng nhận hoàn thành miễn phí
Huấn luyện mô hình ngay trên trình duyệt
Code scikit-learn thật với đầu ra thật. Kéo thanh trượt để đổi một dòng và xem mô hình học được gì.
k nhỏ thì ghi nhớ từng điểm huấn luyện và vẽ đường biên lởm chởm. k lớn hơn làm nó mượt lại.
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_moons
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
X, y = make_moons(n_samples=200, noise=0.3, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
k = 5
model = KNeighborsClassifier(n_neighbors=k)
model.fit(X_train, y_train)
print(f"train accuracy: {model.score(X_train, y_train):.2f}")
print(f"test accuracy: {model.score(X_test, y_test):.2f}")
xx, yy = np.meshgrid(np.linspace(-2, 3, 56), np.linspace(-1.5, 2, 40))
proba = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])[:, 1]
proba = proba.reshape(xx.shape)
plt.figure(figsize=(5, 4))
plt.pcolormesh(xx, yy, proba, cmap="coolwarm", alpha=0.35)
plt.scatter(X_train[:, 0], X_train[:, 1], c=y_train,
cmap="coolwarm", edgecolors="k")
plt.title(f"k-nearest neighbors, k = {k}")
plt.show()
Đề cương
Phần 1
Dữ liệu và biểu đồTrang riêng
Bắt đầu phầnBắt đầuBộ công cụ khởi đầu cho mọi dự án machine learning: mảng NumPy, biểu đồ matplotlib và bảng pandas. Tải bộ dữ liệu thực tế, tóm tắt dữ liệu và vẽ biểu đồ để thể hiện những gì bạn tìm thấy.Giới thiệu
4 bài học320Mảng NumPy
5 bài học520Phép toán với mảng
6 bài học625Định hình dữ liệu
4 bài học415Biểu đồ đường và biểu đồ phân tán
6 bài học625Biểu đồ dữ liệu
5 bài học520DataFrame trong pandas
6 bài học625Lọc và sắp xếp
5 bài học520Nhóm và làm sạch dữ liệu
5 bài học520Vẽ biểu đồ DataFrame
5 bài học520Bộ dữ liệu dành cho ML
5 bài học520Thử thách cuối cùng
4 bài học420Phần 2
Thống kê cho machine learningTrang riêng
Bắt đầu phầnBắt đầuNền tảng thống kê của mọi mô hình: xu hướng trung tâm và độ phân tán, phân phối, xác suất qua mô phỏng, mẫu, giá trị ngoại lệ, tương quan, đường xu hướng và kiểm định giữa các nhóm, sau đó là chuẩn hóa và mã hóa đặc trưng. Bạn sẽ tính toán từng khái niệm trên dữ liệu thực tế và vẽ biểu đồ.Giá trị trung tâm và độ phân tán
6 bài học625Các phân phối
6 bài học625Xác suất qua mô phỏng
6 bài học625Mẫu và tổng thể
5 bài học520Giá trị ngoại lệ
5 bài học520Mối quan hệ
6 bài học525Đường xu hướng
6 bài học625So sánh các nhóm
6 bài học625Co giãn đặc trưng
5 bài học520Mã hóa danh mục
4 bài học415Khám phá bộ dữ liệu
5 bài học520Thử thách cuối
4 bài học420Phần 3
Học có giám sátTrang riêng
Bắt đầu phầnBắt đầuHuấn luyện mô hình thực tế bằng scikit-learn: chia dữ liệu, huấn luyện, dự đoán và đo lường. Tìm hiểu k-NN, hồi quy tuyến tính và hồi quy logistic, cây quyết định, rừng và boosting, cách đánh giá khách quan bằng kiểm định chéo, cùng pipeline. Kết thúc bằng một dự án về chim cánh cụt từ đầu đến cuối.Mô hình đầu tiên của bạn
5 bài học520Láng giềng gần nhất
5 bài học520Hồi quy tuyến tính
5 bài học520Hồi quy logistic
5 bài học520Đánh giá bộ phân loại
6 bài học625Cây quyết định
5 bài học520Quá khớp
5 bài học520Kiểm định chéo
4 bài học415Các mô hình tổ hợp
4 bài học415Quy trình xử lý
5 bài học520Dự án: Các loài chim cánh cụt
5 bài học525Thử thách cuối cùng
4 bài học420Phần 4
Học không giám sátTrang riêng
Bắt đầu phầnBắt đầuTìm cấu trúc trong dữ liệu không có nhãn: phân cụm k-means, phân cụm phân cấp và phân cụm dựa trên mật độ, PCA để trực quan hóa và nén nhiều đặc trưng, cùng cách phát hiện bất thường. Kết thúc bằng một dự án khám phá chữ số.Tìm các nhóm
5 bài học520Chọn k
5 bài học520Đọc hiểu các cụm
5 bài học520Phân cụm phân cấp
4 bài học415Phân cụm dựa trên mật độ
4 bài học415Ít chiều hơn
5 bài học520PCA trong thực tế
5 bài học520Phát hiện bất thường
5 bài học520Cụm trong thực tế
4 bài học415Dự án: Khám phá chữ số
5 bài học525Thử thách cuối
4 bài học420
Học qua thực hành
Viết code thật, truy vấn cơ sở dữ liệu, xây dựng trang web và làm chủ prompt AI. Các bài học tương tác bao quát mọi kỹ năng mà lập trình viên hiện đại cần.
Xây dựng streak
Học đều đặn và nhìn tiến độ của bạn lớn dần! Theo dõi thói quen code mỗi ngày, bảo vệ streak bằng ngày đóng băng và nhận phần thưởng khi học mỗi ngày.
12 ngày streak
Quay lại ngày mai để giữ streak!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
Gấp đôi hoặc mất hết
Ngày 5/7
Đóng băng streak
2 left
Bạn không đơn độc
Thi đấu trên bảng xếp hạng toàn cầu, mời bạn bè để nhận phần thưởng và cùng nhau ăn mừng thành công. Học code cùng bạn bè vui hơn nhiều!
Mọi cách để học
Đọc, nghe, tự kiểm tra, hỏi AI hoặc tra cứu bất cứ điều gì bạn đã học. Mỗi bài học phù hợp với trình độ của bạn.
Biến là một vùng chứa có tên, lưu một giá trị mà bạn có thể dùng lại sau trong chương trình.
Trong Python, bạn tạo biến bằng cách viết tên, dấu bằng, rồi giá trị muốn lưu.
Giá trị có thể thay đổi theo thời gian. Gán lại tên đó chỉ đơn giản là trỏ nó tới một giá trị mới.
Nhận chứng nhận
Nhận chứng nhận cho mỗi khóa học bạn hoàn thành. Thêm vào hồ sơ LinkedIn và CV để cho nhà tuyển dụng thấy kỹ năng lập trình của bạn.
Vì sao nên học machine learning với Coddy
- Bạn nhìn thấy trước khi đọc. Mỗi bài học mở đầu bằng một biểu đồ hay sơ đồ: biểu đồ phân tán của hoa iris, một đường ranh giới quyết định, một dendrogram. Rồi bạn viết code và biểu đồ của chính bạn hiện ra trong tab Plots ngay bên cạnh.
- Python thật, thư viện thật.
numpy,pandas,matplotlib,scipyvàscikit-learnchạy trên Coddy, đúng các phiên bản mà nhà khoa học dữ liệu dùng, nênmodel.fit(X_train, y_train)ở đây cũng làmodel.fit(X_train, y_train)khi đi làm. Không cần cài đặt, không cần thiết lập notebook. - Bốn phần theo đúng thứ tự công việc diễn ra: dữ liệu và biểu đồ, thống kê cho ML, học có giám sát, rồi học không giám sát. 233 bài học ngắn, mỗi bài một ý tưởng mới và một nhiệm vụ áp dụng nó.
- Bộ dữ liệu thật có câu chuyện: hoa iris, thành phần hóa học của rượu vang, chữ số viết tay, chim cánh cụt Palmer. Bạn hoàn thành hai dự án, một bộ phân loại loài chim cánh cụt và một công cụ khám phá chữ số, và mọi biểu đồ đều có tiêu đề và nhãn để có thể đưa vào báo cáo.
Câu hỏi thường gặp về học machine learning
Machine learning là gì?
Machine learning (học máy) là dạy máy tính bằng ví dụ thay vì bằng quy tắc. Bạn cho mô hình xem nhiều hàng dữ liệu, chẳng hạn những bông hoa cùng kích thước cánh hoa và loài của chúng, và mô hình học được một quy luật để áp dụng cho những hàng nó chưa từng thấy. Nếu các hàng có kèm đáp án, đó là học có giám sát (supervised learning); nếu không có và mô hình tự tìm ra các nhóm, đó là học không giám sát (unsupervised learning). Khóa học này dạy cả hai.
Có cần giỏi toán để học machine learning không?
Không. Bạn cần số học phổ thông và sự kiên nhẫn để đọc biểu đồ. Khóa học dạy phần thống kê mà machine learning dùng (trung bình, độ phân tán, phân phối, tương quan, p-value) bằng mô phỏng và hình ảnh, còn scikit-learn lo phần toán nặng giúp bạn. Giải tích và đại số tuyến tính có ích nếu sau này bạn muốn xây thuật toán mới, nhưng bạn không cần chúng để huấn luyện, kiểm thử và hiểu mô hình.
Có cần biết Python trước không?
if, vòng lặp, hàm và list. Đó là phần Fundamentals của khóa học Python, vài tuần nếu học một giờ mỗi ngày. Mọi thứ sau đó, import, NumPy, pandas, matplotlib và scikit-learn, đều được dạy ở đây từ dòng đầu tiên.Sẽ học những thư viện Python nào?
Bộ công cụ machine learning tiêu chuẩn: NumPy cho mảng, pandas cho bảng, matplotlib cho biểu đồ, SciPy cho thống kê và scikit-learn cho mô hình (k-nearest neighbors, hồi quy tuyến tính và hồi quy logistic, cây quyết định, random forest, gradient boosting, k-means, DBSCAN, PCA và nhiều hơn nữa). Các thư viện chạy trên Coddy ở phiên bản hiện hành, nên những gì bạn viết ở đây chạy y hệt trên máy tính của bạn.
Có cần GPU hay máy tính cấu hình mạnh không?
Không. Code của bạn chạy trên máy chủ của Coddy và biểu đồ được gửi về trình duyệt, nên một chiếc laptop, Chromebook hay máy tính bảng là đủ. Dù sao thì machine learning cổ điển với scikit-learn vẫn chạy tốt trên bộ xử lý thông thường; GPU chỉ quan trọng khi huấn luyện mạng nơ-ron lớn, phần mà khóa học này không dạy.
Học xong khóa này có thể xây được gì?
Những mô hình trả lời câu hỏi thật từ một bảng dữ liệu: email này có phải spam không, khách hàng nào có khả năng rời đi, chú chim cánh cụt này thuộc loài nào, ngày mai sẽ có bao nhiêu xe đạp được thuê, có những nhóm người mua sắm nào, chỉ số máy chủ nào trông bất thường. Bạn cũng học cách đánh giá chúng một cách trung thực bằng tập kiểm thử, cross-validation, ma trận nhầm lẫn và đường cong ROC, chính là điều khiến một mô hình đáng tin cậy.
Học machine learning mất bao lâu?
Khóa học machine learning này có miễn phí không?
Có. Bài học, biểu đồ, gợi ý AI và chứng nhận đều miễn phí. Tài khoản miễn phí học được vài bài mỗi ngày, còn gói Pro bỏ giới hạn hằng ngày.