与Keras的不同

PyTorch相比Keras要更加低级一些,许多Keras中已经集成的操作,在PyTorch中是分散开需要自行组装的。而PyTorch中的层相比Keras要更多,尤其需要注意的是,在Keras中的密集连接层Dense,在PyTorch中为线性层Linear。以密集连接层为例,在Keras中只需要几个参数就可以完成的配置,在PyTorch中需要自行定义处理顺序。

Keras中的密集连接层示例。

x = Dense(64, activation='relu', padding='valid')(input)

在PyTorch中就要较为复杂一些。

pad = nn.ConstantPad1d(2, 0)
lin = nn.Linear(64, 10)
relu = nn.ReLU()

x = relu(lin(pad(input)))