整理几个pytorch的简单例子,详见: Learning Pytorch with Examples.
一、构造一个简单的两层神经网络,并使用随机生成的数据训练参数:
import torch
from torch.autograd import Variable
# 构造一个两层的神经网络
class TwoLayerNet(torch.nn.Module):
def __init__(self, D_in, H, D_out):
"""
实例话两个nn.Linear模型然后把他们赋值给成员变量
"""
super(TwoLayerNet, self).__init__()
self.linear1 = torch.nn.Linear(D_in, H)
self.linear2 = torch.nn.Linear(H, D_out)
def forward(self, x):
"""
在forward中,接受一个Variable作为输入,也必须返回一个Variable作为输出
"""
h_relu = self.linear1(x).clamp(min=0)
y_pred = self.linear2(h_relu)
return y_pred
# N is batch size; D_in is input dimension;
# H is