单元五

第16课 一层层认出整幅图——多层变换粗知

任务场景:一层层滤镜,理解多层特征粗知
任务场景:一层层滤镜,理解多层特征粗知

一、任务目标

理解「深」指一层层变换:前一层的输出作为下一层的输入;能按顺序完成两层计算,得到最终结果。

二、我们要学什么

  • 学习要点:一层层认出整幅图|多层变换粗知
  • 本课过关:能完成:说出须按次序走完每一层,不能只算第一层;载入体验程序,指出 [1,2,3] 经两层后得到 [1,3,5];只跑一层则结果不同。
  • 示例对齐:体验题对应本课「编程体验」;完整代码对应编程题1;补全与独立编写对应编程题2–3。均在 Mixly 图形化积木中完成。

三、本节要点

本课要认识多层变换。重难点是管道:输入→层1→层2→输出,层的次序属于结构。要点对齐「一层层认出整幅图|多层变换粗知」。

1读场景明确真实任务
2对要点一层层认出整幅图|多层变换粗知
3载入运行图形化积木

四、解题思路

任务:把输入依次送入两层,得到最终列表。请分清:每一层做什么,最终输出是什么。

本课主要用到:Mixly 图形化积木与屏幕输出。

  1. 1明确任务「两层串联」:必须两层都走完。
  2. 2先做第一层变换,把结果送入第二层。
  3. 3核对 [1,2,3] 的最终结果是否为 [1,3,5]。

流程示意(可对照左侧文字)

任务:两层串联先做第一层变换,把结果送入第二层核对 [1,2,3] 的最终结果是否为 [1,3,5]

五、图形块功能讲解

本课用到的 Mixly 图形块均已在前面的课讲过。请直接对照编程练习搭积木;若有遗忘,回到该积木首次出现的课页复习。

六、知识点讲解

多层变换把输入一层层变成更抽象的表示:前一层的输出接着当下一层的输入。本课用两层小计算建立「管道」,体会图像怎样被一层层处理,不推导训练公式。深度描述的是结构多层;有没有标签是另一件事,二者可以叠用。

先弄清:要按次序走完每一层;再进编程练习对照变换结果。

七、编程练习

用下拉列表切换题目;下方 Mixly 默认显示图形化积木。请在 Mixly 工具栏点「运行」;「检查」读取 Mixly 代码自动判题。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

参考代码(对照抄写到下方 Mixly)
def layer1(xs):
    out = []
    for x in xs:
        out.append(x * 2)
    return out

def layer2(xs):
    out = []
    for x in xs:
        out.append(x - 1)
    return out

def forward(xs):
    return layer2(layer1(xs))

print(forward([1, 2, 3]))

八、课堂练习

先完成两道正误判断,再做其余题目;选出后点「检查」。

  1. 判断:本课的前向计算要按顺序经过两层,不能只调用一层却声称完成了 forward。

  2. 判断:深度学习与有监督是互斥的,永远不能一起用。

  3. 多层结构常见于?

  4. 本课说的「深」,直观上指?

  5. 本课对多层网络的要求是?

九、本节小结

本课主题是多层变换:输入按次序经过每一层。深=层数多;本课只要求看清管道,不要求背公式。