iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 20
0
Google Developers Machine Learning

初心者的自我挑戰系列 第 20

菜雞 Pytorch MNIST 實戰 final part

  • 分享至 

  • xImage
  •  

今天繼續學習.接續昨天的程式碼:

for epoch in range(EPOCH):
    for step, (x, y) in enumerate(train_loader):
        b_x = Variable(x, requires_grad=False)
        b_y = Variable(y, requires_grad=False)
#決定跑幾個epoch,enumerate把load進來的data列出來成(x,y)

        if if_use_gpu:
            b_x = b_x.cuda()
            b_y = b_y.cuda()
#使用cuda加速        
        output = cnn(b_x)          #把data丟進網路中
        loss = loss_function(output, b_y)
        optimizer.zero_grad()      #計算loss,初始梯度
        loss.backward()            #反向傳播
        optimizer.step()       

        if step % 100 == 0:
            print('Epoch:', epoch, '|step:', step, '|train loss:%.4f'%loss.data)
        
        #每100steps輸出一次train loss

以上就是Mnist training 的code
藉由了解其中每一步可以初步掌握搭建神經網路的基礎!


上一篇
菜雞 Pytorch MNIST 實戰 part2
下一篇
程式菜鳥的自我檢討
系列文
初心者的自我挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言