摘要: 到目前为止,我们忽略了建立网络时需要做的以下这些事情: 我们定义了网络架构,但没有指定输入维度。 我们添加层时没有指定前一层的输出维度。 我们在初始化参数时,甚至没有足够的信息来确定模型应该包含多少参数。 有些读者可能会对我们的代码能运行感到惊讶。 毕竟,深度学习框架无法判断网络的输入维度是什么。 阅读全文
posted @ 2023-11-01 13:55 Yohoc 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 参数访问 我们从已有模型中访问参数。 当通过Sequential类定义模型时, 我们可以通过索引来访问模型的任意层。 这就像模型是一个列表一样,每层的参数都在其属性中。 如下所示,我们可以检查第二个全连接层的参数。 print(net[2].state_dict()) OrderedDict([(' 阅读全文
posted @ 2023-11-01 13:43 Yohoc 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 一个块可以由许多层组成;一个块可以由许多块组成。 块可以包含代码。 块负责大量的内部处理,包括参数初始化和反向传播。 层和块的顺序连接由Sequential块处理。 下面给出一个例子(以pyTorch为例) class NestMLP(nn.Module): def __init__(self): 阅读全文
posted @ 2023-11-01 13:11 Yohoc 阅读(8) 评论(0) 推荐(0) 编辑