全部课

课程

九年级人工智能:Python 与机器学习

用 Python、NumPy 和 pandas 训练并评估经典的机器学习模型。

按顺序学完各课。学完后,你能用数据结构和可重复使用的函数写 Python。你能做向量加法,计算概率,并求出平均数和标准差。你能用 NumPy 和 pandas 加载、清洗表格并画图表。你能给数据拟合一条直线,训练逻辑回归、决策树和 k近邻分类器,并用 k均值给数据分组。你能计算准确率、精确率和召回率,发现过拟合,把模型和简单基准比较,并展示环境数据集上的预测。

这些课怎么用

  • 从标着做这个的课开始。标题下面那一行你自己会了,再往下。
  • 先玩游戏。再做测验。10题里对8题就通过。练习纸在纸上。答案在最下面。
  • 每一课都接上一课。每次实验都记下:改了什么,发生了什么,为什么。
  • 编程课用免费的在线笔记本写 Python。只用老师允许的 AI 工具。AI 帮你写的代码要能讲清楚。分享的数据集里不要放个人数据。

每一课都有游戏、测验和练习纸。

0/36

Python 编程

  1. 1语法复习用变量、条件和循环写 Python。
    • 使用变量、类型和 f-strings。
    • 写出 if、for 和 while 代码块。
    • 读 traceback,并改掉错误。
  2. 2数据结构在列表、元组、集合和字典这些数据结构里做选择。
    • 让每种数据结构做它最合适的事。
    • 写列表推导式和字典推导式。
    • 把结构嵌套起来,用来存放记录。
  3. 3函数和模块编写并测试可重复使用的函数。
    • 使用默认参数和关键字参数。
    • 用 assert 写测试。
    • 从模块导入你的函数。
  4. 4数据脚本写一个脚本来清洗文本文件。
    • 一行一行地读文件。
    • 改掉坏行,跳过空行。
    • 把清洗后的数据写进新文件。

机器学习要用的数学

  1. 5向量做向量加法,并求出点与点的距离。
    • 把一个数据点写成向量。
    • 把向量相加,并乘上一个数。
    • 计算欧氏距离和点积。
  2. 6概率计算简单概率和条件概率。
    • 计算一个事件的概率。
    • 根据表格计算条件概率。
    • 用抛硬币的模拟来核对答案。
  3. 7统计求出平均数、方差和标准差。
    • 用手算和代码各算一遍。
    • 说明标准差告诉你什么。
    • 按分散程度比较两个数据集。
  4. 8数学实验画出数据,并描述它的分散程度。
    • 画直方图。
    • 画散点图。
    • 描述中心、分散程度和离群点。

数据科学

  1. 9NumPy用 NumPy 对整个数组做运算。
    • 创建数组,并改变形状。
    • 用向量化运算,不用循环。
    • 用索引和切片取数组里的数。
  2. 10pandas用 pandas 加载、筛选并分组表格。
    • 把 CSV 读进 DataFrame。
    • 筛选行,选择列。
    • 分组并汇总数据。
  3. 11清洗数据清洗数据里的缺失值和错误类型。
    • 找出缺失值。
    • 填上或删掉,并说明你为什么这样选。
    • 改掉错误的类型和重复的行。
  4. 12可视化做出能回答问题的图表。
    • 按问题选对图表。
    • 标上坐标轴,并加上标题。
    • 找出一张误导人的图表并改掉。

机器学习基础

  1. 13什么是机器学习说明模型怎样从数据里学会一个规律。
    • 比较写规则和从数据里学习。
    • 说明模型、参数和训练是什么。
    • 说出机器学习的三个真实用途。
  2. 14监督学习和无监督学习分辨监督学习任务和无监督学习任务。
    • 说出监督学习要用标签。
    • 说出无监督学习不用标签也能找到结构。
    • 把 10 个任务分到这两组里。
  3. 15机器学习流程列出从数据到可用模型的步骤。
    • 把步骤排好序:问题、数据、特征、训练、评估、部署。
    • 说出每一步可能出什么错。
    • 说出这些步骤为什么要重复。
  4. 16比较机器学习任务把问题对应到回归、分类或聚类。
    • 说出每种任务预测什么。
    • 把 10 个问题对应到一种任务。
    • 把一个问题改写成另一种任务。

回归

  1. 17线性回归给数据拟合一条直线。
    • 说明斜率和截距。
    • 用 scikit-learn 拟合一条直线。
    • 把这条直线画在数据上。
  2. 18特征选择特征并做缩放。
    • 使用不止一个特征。
    • 把特征缩放到同一个范围。
    • 给类别特征做编码。
  3. 19误差用均方误差度量误差。
    • 计算残差。
    • 计算均方误差和平均绝对误差。
    • 画出残差,找出规律。
  4. 20预测数值训练回归模型,并预测新的数值。
    • 用一部分数据来训练。
    • 预测剩下的部分。
    • 用真实的单位报告误差。

分类

  1. 21逻辑回归训练一个逻辑回归分类器。
    • 说明它怎样把一个分数变成概率。
    • 训练它,并预测概率。
    • 改动阈值,再做比较。
  2. 22决策树训练决策树,并读懂它的划分。
    • 训练一棵树。
    • 画出它的划分,并读懂。
    • 限制树的深度,并比较分数。
  3. 23k近邻用 k近邻分类,并选出 k。
    • 说明 k近邻怎样投票。
    • 试几个不同的 k。
    • 说明为什么缩放对 k近邻很重要。
  4. 24训练分类器在同一个数据集上比较三个分类器。
    • 在同一次划分上训练全部三个。
    • 比较它们的分数。
    • 选一个,并说明为什么。

无监督学习

  1. 25相似度度量两个样本有多相似。
    • 使用欧氏距离。
    • 使用余弦相似度。
    • 在数据集里找出最相似的项。
  2. 26k均值用 k均值聚类给数据分组。
    • 用手算走一遍 k均值。
    • 在 scikit-learn 里运行它。
    • 画出各个聚类。
  3. 27选择 k用肘部法选出聚类的个数。
    • 用几个不同的 k 运行 k均值。
    • 画出肘部曲线。
    • 检查这些聚类是否说得通。
  4. 28给样本分组给数据集做聚类,并描述每一组。
    • 给一个真实数据集做聚类。
    • 汇总每一个聚类。
    • 给每一个聚类起名字。

模型评估

  1. 29划分训练集和测试集划分训练集和测试集,并说明为什么。
    • 用 train_test_split 来划分。
    • 用验证集来调整。
    • 使用交叉验证。
  2. 30准确率、精确率和召回率计算准确率、精确率和召回率。
    • 做出混淆矩阵。
    • 用它算出每一项指标。
    • 选出适合这个问题的指标。
  3. 31过拟合比较训练分数和测试分数,发现过拟合。
    • 训练一个会过拟合的模型。
    • 画出训练分数和测试分数。
    • 减轻过拟合,再做比较。
  4. 32简单基准把模型和简单基准比较。
    • 做一个简单基准:它总是猜最常见的答案。
    • 把你的模型和它比较。
    • 说明什么时候一个模型不值得用。

机器学习项目

  1. 33选一个数据集选一个开放的环境数据集和一个问题。
    • 找一个开放的天气或空气质量数据集。
    • 写一个它能回答的问题。
    • 选择回归或分类。
  2. 34准备和探索清洗数据,并画出主要规律。
    • 清洗数据。
    • 画出三个规律的图表。
    • 选择特征。
  3. 35训练和比较训练两个模型,并把它们和简单基准比较。
    • 训练两个模型。
    • 把它们和简单基准比较。
    • 检查有没有过拟合。
  4. 36预测环境状况展示结果、局限和下一步。
    • 展示你的结果和图表。
    • 说明模型的局限。
    • 提出下一步。