update to torch 0.4
This commit is contained in:
@ -3,12 +3,11 @@ View more, visit my tutorial page: https://morvanzhou.github.io/tutorials/
|
||||
My Youtube Channel: https://www.youtube.com/user/MorvanZhou
|
||||
|
||||
Dependencies:
|
||||
torch: 0.1.11
|
||||
torch: 0.4
|
||||
matplotlib
|
||||
numpy
|
||||
"""
|
||||
import torch
|
||||
from torch.autograd import Variable
|
||||
from torch import nn
|
||||
from torch.nn import init
|
||||
import torch.utils.data as Data
|
||||
@ -39,10 +38,10 @@ noise = np.random.normal(0, 2, test_x.shape)
|
||||
test_y = np.square(test_x) - 5 + noise
|
||||
|
||||
train_x, train_y = torch.from_numpy(x).float(), torch.from_numpy(y).float()
|
||||
test_x = Variable(torch.from_numpy(test_x).float(), volatile=True) # not for computing gradients
|
||||
test_y = Variable(torch.from_numpy(test_y).float(), volatile=True)
|
||||
test_x = torch.from_numpy(test_x).float()
|
||||
test_y = torch.from_numpy(test_y).float()
|
||||
|
||||
train_dataset = Data.TensorDataset(data_tensor=train_x, target_tensor=train_y)
|
||||
train_dataset = Data.TensorDataset(train_x, train_y)
|
||||
train_loader = Data.DataLoader(dataset=train_dataset, batch_size=BATCH_SIZE, shuffle=True, num_workers=2,)
|
||||
|
||||
# show data
|
||||
@ -72,8 +71,8 @@ class Net(nn.Module):
|
||||
self._set_init(self.predict) # parameters initialization
|
||||
|
||||
def _set_init(self, layer):
|
||||
init.normal(layer.weight, mean=0., std=.1)
|
||||
init.constant(layer.bias, B_INIT)
|
||||
init.normal_(layer.weight, mean=0., std=.1)
|
||||
init.constant_(layer.bias, B_INIT)
|
||||
|
||||
def forward(self, x):
|
||||
pre_activation = [x]
|
||||
@ -127,7 +126,6 @@ for epoch in range(EPOCH):
|
||||
plot_histogram(*layer_inputs, *pre_acts) # plot histogram
|
||||
|
||||
for step, (b_x, b_y) in enumerate(train_loader):
|
||||
b_x, b_y = Variable(b_x), Variable(b_y)
|
||||
for net, opt in zip(nets, opts): # train for each network
|
||||
pred, _, _ = net(b_x)
|
||||
loss = loss_func(pred, b_y)
|
||||
|
||||
Reference in New Issue
Block a user