分类数据:特征组合练习

Playground 是一个交互式应用,可让您操控机器学习模型训练和测试的各个方面。借助 Playground,您可以选择特征并调整超参数,然后了解您的选择对模型有何影响。

本页包含两个 Playground 练习。

练习 1:基本特征组合

对于本练习,请重点关注 Playground 界面的以下部分:

  • 在“特征”下方,请注意三个可能的模型特征:
    • x1
    • x2
    • x1x2
  • 在“输出”下方,您会看到一个包含橙点和蓝点的方块。假设您正在看一个方形森林,其中橙色圆点标记了患病树的位置,蓝色圆点标记了健康树的位置。
  • 如果您仔细观察“特征”和“输出”之间的区域,会看到三条细小的虚线,它们将每个特征与输出连接起来。 每条虚线的宽度表示当前与每个地图项关联的权重。这些线条非常细微,因为每个特征的初始权重都初始化为 0。随着粗细度的增大或缩小,这些线条的粗细度也会随之增大或缩小。

任务 1:执行以下操作,探索 Playground:

  1. 点击将特征 x1 连接到输出的细线。系统随即会显示一个弹出式窗口。
  2. 在弹出式窗口中,输入重量 1.0
  3. 按 Enter 键。

请注意以下几点:

  • 随着权重从 0 增加到 1.0,x1 的虚线会变粗。
  • 现在,系统会显示一个橙色和蓝色的背景。
    • 橙色背景是模型对患病树木位置的猜测。
    • 蓝色背景是模型对健康树木所在位置的猜测。模型的表现非常糟糕;大约一半的猜测结果都是错误的。
  • 由于 x1 的权重为 1.0,而其他特征的权重为 0,因此该模型会与 x1 的值完全匹配。

任务 2:更改三个特征中的任一特征或所有特征的权重,使模型(背景颜色)成功预测出哪些树是健康的,哪些树是生病的。解决方案会显示在 Kotlin 园地下方。



练习 2:更复杂的特征组合

对于第二个练习,请查看输出模型中橙色圆点(生病的树)和蓝色圆点(健康的树)的排列方式,并注意以下几点:

  • 这些点形成大致球形的图案。
  • 点的排列很杂乱;例如,请注意橙点外圈偶尔会出现蓝点。因此,即使是出色的模型,也不可能正确预测每个数据点。

任务 1:执行以下操作,探索 Playground 界面:

  1. 点击“运行/暂停”按钮,该按钮是一个黑色圆圈内白色三角形。Playground 将开始训练模型;观察“Epochs”计数器的增加情况。
  2. 在系统训练至少 300 个周期后,按同一“运行/暂停”按钮可暂停训练。
  3. 查看模型。模型的预测结果准确吗?换句话说,蓝点通常是蓝色背景环绕,橙点通常是橙色背景环绕吗?
  4. 检查“输出”下方的“测试损失”值。此值是更接近 1.0(损失更高)还是更接近 0(损失更低)?
  5. 按“运行/暂停”按钮左侧的弯曲箭头,重置 Playground。

任务 2:通过以下操作构建更好的模型:

  1. 选择或取消选择五种可能的功能的任意组合。
  2. 调整学习速率。
  3. 至少训练系统 500 个周期。
  4. 检查“测试损失”的值。您能否将测试损失降低到 0.2 以下?

解决方案会显示在 Kotlin 园地下方。