AI智能
改变未来

pytorch构建深度学习算法网络的方式(简单)

pytorch中所有的网络都是实现为类,子类要调用nn.Module并实现__init__和forward方法。在__init__方法中初始化层,在forward方法中,把输入数据传给init方法中初始化的层,并返回最终的输出。非线性函数经常被forward函数直接调用,如下所示简单的实现:

class FirstNet(nn.Module):def __init__(self,input_size,hidden_size,output_size):super(firstNet,self).__init__()self.layer1 = nn.Linear(input.size,hidden_size)self.layer2 = nn.Linear(hidden.size,output_size)def __forward__(self,input):out = self.layer1(input)out = nn.ReLU(out)out = self.layer2(out)return out

这部分代码做的工作就是继承一个父类,并实现父类中的两个方法。通过将父类的名字作为参数传入来创建子类。init方法相当于python中的构造器,super方法用于将子类的参数传给父类。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » pytorch构建深度学习算法网络的方式(简单)