用 Python 学习机器学习
免费的动手实践机器学习课程。编写真正的 scikit-learn 代码,在真实数据集上训练模型,看着你的图表出现在“图表”标签页中,一次只迈一小步。
233 节课231 个挑战965 道测验题
- 适合初学者
AI 辅助编程帮助
动手实践的互动课程
每节课都有语音讲解
检验所学的测验
免费结业证书
在浏览器中训练模型
真实的 scikit-learn 代码和真实的输出。拖动滑块修改一行代码,看看模型学到了什么。
k 值较小时会记住每个训练点,画出锯齿状的边界。k 值越大,边界越平滑。
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()
课程大纲
在实践中学习
编写真实代码、查询数据库、搭建网站、掌握 AI 提示词。我们的互动课程涵盖现代开发者需要的每一项技能。
打造你的连胜
坚持下去,看着自己不断进步!记录每天的编程习惯,用冻结天数保护连胜,每天打卡都能赢取奖励。
12 天连胜
明天再来,保持你的连胜!
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
加倍或归零
第 5 天,共 7 天
连胜冻结
2 left
你并不孤单
在全球排行榜上一较高下,邀请好友赢取奖励,为彼此的成就喝彩。和好友一起编程更有趣!
多种学习方式
阅读、收听、自我测验、问 AI,或者查阅学过的任何内容。每节课都配合你的节奏。
变量是一个有名字的容器,用来存储值,方便你在程序后面引用。
在 Python 中,创建变量只需写下名字、一个等号,再写上要存储的值。
值可以随时间变化。给这个名字重新赋值,它就会指向新的值。
获得证书
每完成一门课程都能获得证书。把证书添加到你的 LinkedIn 个人资料和简历中,向雇主展示你的编程能力。
为什么在 Coddy 学机器学习
- 先看到,再读懂。每节课都以一张图表或示意图开头:鸢尾花散点图、决策边界、树状图。然后你写代码,你自己的图表就会出现在旁边的“图表”标签页中。
- 真正的 Python,真正的库。
numpy、pandas、matplotlib、scipy和scikit-learn都在 Coddy 上运行,版本和数据科学家用的一样,所以这里的model.fit(X_train, y_train)就是工作中的model.fit(X_train, y_train)。什么都不用安装,也不用配置 notebook。 - 四个单元,按实际工作的顺序排列:数据与绘图、机器学习中的统计学、监督学习,最后是无监督学习。共 233 节短课,每节课讲一个新概念,并配一道用到它的练习。
- 有故事的真实数据集:鸢尾花、葡萄酒化学成分、手写数字、帕尔默企鹅。你会完成两个项目:一个企鹅物种分类器和一个数字探索器,每张图表都有标题和标签,可以直接放进报告里。
关于学习机器学习的常见问题
机器学习是什么?
机器学习就是通过示例而不是规则来教计算机。你给模型看很多行数据,比如一批花的花瓣尺寸和品种,它就会学到一种规律,用在从没见过的数据上。如果数据带有答案,那就是监督学习;如果没有答案,由模型自己找出分组,那就是无监督学习。这门课程两种都教。
学机器学习需要数学很好吗?
不需要。你只需要中小学的算术,以及耐心看懂图表。课程会通过模拟和图片来讲机器学习用到的统计学(平均值、离散程度、分布、相关性、p 值),繁重的数学计算由 scikit-learn 替你完成。如果以后想自己设计新算法,微积分和线性代数会有帮助,但训练、测试和理解模型并不需要它们。
需要先会 Python 吗?
if、循环、函数和列表。这就是 Python 课程 的“基础”单元,每天一小时,几周就能学完。之后的一切,包括 import、NumPy、pandas、matplotlib 和 scikit-learn,都会在这里从第一行代码教起。我会学到哪些 Python 库?
标准的机器学习工具栈:用于数组的 NumPy、用于表格的 pandas、用于图表的 matplotlib、用于统计的 SciPy,以及用于模型的 scikit-learn(k 近邻、线性回归和逻辑回归、决策树、随机森林、梯度提升、k-means、DBSCAN、PCA 等)。它们在 Coddy 上运行的都是最新版本,所以你在这里写的代码,在自己的电脑上也能同样运行。
需要 GPU 或高性能电脑吗?
不需要。你的代码在 Coddy 的服务器上运行,图表会传回你的浏览器,所以一台笔记本、Chromebook 或平板就够了。况且用 scikit-learn 做的经典机器学习在普通处理器上就能流畅运行;GPU 只在训练大型神经网络时才重要,而这门课程不涉及这部分内容。
学完这门课程能做什么?
能根据一张表格回答实际问题的模型:这封邮件是不是垃圾邮件、哪些客户可能会流失、这只企鹅是哪个物种、明天会租出多少辆自行车、顾客可以分成哪几类、哪些服务器读数看起来不正常。你还会学会用测试集、交叉验证、混淆矩阵和 ROC 曲线客观地评估它们,这才是让模型值得信任的关键。
学机器学习需要多长时间?
这门机器学习课程免费吗?
免费。课程内容、图表、AI 提示和证书都免费。免费账号每天可以学几节课,Pro 会取消每日限制。