建立简单的神经网络

from torch import nn

import torch.nn.functional as f

class my(nn.Module):

def init(self):

super(my, self).init()

my.a=nn.Linear(3,3)

my.b=nn.Linear(3,1)

def forward(self, x):

x=f.relu(my.a(x))

x=f.relu(my.b(x))

return x


这是一个简单的过程,其中需要的主要就是init和forward,在init里面决定了要继承什么类,而forward里面决定了这个神经网络的形状——也就是积木是怎么搭建的。

在搭建的时候需要明确的是必须在init里面必须说明要搭建什么,也就是必须说明要几层的网络,而在下面,要以x作为【流向】,确定x是怎么流过去的。

2.在使用卷积层的时候记得修改一下原有的通道以使得能够成功,譬如

a=[[1,2],[3,4]]


是2行2列的,需要通过
s.reshape(1,1,2,2)修改为四个参数的,其中第一个1为通道,第二个1为batch
这几个参数得保证总的积和相等,用来控制整个的,卷积的过程,比如每次上1批,2批还是3批

在conver2d整个函数中padding影响的是要加几层,而不是这几层用什么填充