标签:loss pred self torch PyTorch --- pytorch print model
pytorch写神经网络
(1)准备数据集
(2)涉及模型(yheight)
(3)构造损失函数和优化器
(4)训练周期(前馈、反馈、更新)
1 import torch 2 3 #1.准备数据 4 x_data=torch.tensor([[1.0],[2.0],[3.0]]) 5 y_data=torch.tensor([[2.0],[4.0],[6.0]]) 6 #2.构造模型 7 class LinearModel(torch.nn.Module): 8 def __init__(self):#构造函数 9 super(LinearModel,self).__init__() 10 self.linear=torch.nn.Linear(1,1)#构造对象;(1,1)指输入x和输出y的特征维度;第三个参数自动为true,是否要有b 11 12 def forward(self,x): 13 y_pred=self.linear(x)#计算y=ax+b 14 return y_pred 15 16 model=LinearModel()#实例化 17 18 criterion=torch.nn.MSELoss(size_average=False)#计算loss 19 optimizer=torch.optim.SGD(model.parameters(),lr=0.01)#lr:学习率 20 21 for epoch in range(100): 22 y_pred=model(x_data)#前向传播 23 loss=criterion(y_pred,y_data)#计算loss 24 print(epoch,loss.item()) 25 26 optimizer.zero_grad() 27 loss.backward()#反向传播,计算梯度 28 optimizer.step()#更新w,b的值 29 30 print('w=',model.linear.weight.item()) 31 print("b=",model.linear.bias.item()) 32 33 x_test=torch.tensor([4.0]) 34 y_test=model(x_test) 35 print("y_pred=",y_test)
标签:loss,pred,self,torch,PyTorch,---,pytorch,print,model 来源: https://www.cnblogs.com/miosk/p/14663144.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。