成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > pytorch Dropout過(guò)擬合的操作

pytorch Dropout過(guò)擬合的操作

熱門標(biāo)簽:手機(jī)網(wǎng)頁(yè)嵌入地圖標(biāo)注位置 河北防封卡電銷卡 電銷機(jī)器人的風(fēng)險(xiǎn) 地圖標(biāo)注線上如何操作 開(kāi)封語(yǔ)音外呼系統(tǒng)代理商 400電話辦理哪種 天津電話機(jī)器人公司 開(kāi)封自動(dòng)外呼系統(tǒng)怎么收費(fèi) 應(yīng)電話機(jī)器人打電話違法嗎

如下所示:

import torch
from torch.autograd import Variable
import matplotlib.pyplot as plt
torch.manual_seed(1)
N_SAMPLES = 20
N_HIDDEN = 300
# training data
x = torch.unsqueeze(torch.linspace(-1, 1, N_SAMPLES), 1)
y = x + 0.3 * torch.normal(torch.zeros(N_SAMPLES, 1), torch.ones(N_SAMPLES, 1))
x, y = Variable(x), Variable(y)
# test data
test_x = torch.unsqueeze(torch.linspace(-1, 1, N_SAMPLES), 1)
test_y = test_x + 0.3 * torch.normal(torch.zeros(N_SAMPLES, 1), torch.ones(N_SAMPLES, 1))
test_x = Variable(test_x, volatile=True)
test_y = Variable(test_y, volatile=True)
# show data
# plt.scatter(x.data.numpy(), y.data.numpy(), c='magenta', s=50, alpha=0.5, label='train')
# plt.scatter(test_x.data.numpy(), test_y.data.numpy(), c='cyan', s=50, alpha=0.5, label='test')
# plt.legend(loc='upper left')
# plt.ylim((-2.5, 2.5))
# plt.show()
net_overfitting = torch.nn.Sequential(
    torch.nn.Linear(1, N_HIDDEN),
    torch.nn.ReLU(),
    torch.nn.Linear(N_HIDDEN, N_HIDDEN),
    torch.nn.ReLU(),
    torch.nn.Linear(N_HIDDEN, 1),
)
net_dropped = torch.nn.Sequential(
    torch.nn.Linear(1, N_HIDDEN),
    torch.nn.Dropout(0.5),
    torch.nn.ReLU(),
    torch.nn.Linear(N_HIDDEN, N_HIDDEN),
    torch.nn.Dropout(0.5),
    torch.nn.ReLU(),
    torch.nn.Linear(N_HIDDEN, 1),
)
print(net_overfitting)
print(net_dropped)
optimizer_ofit = torch.optim.Adam(
    net_overfitting.parameters(),
    lr = 0.01,
)
optimizer_drop = torch.optim.Adam(
    net_dropped.parameters(),
    lr = 0.01,
)
loss_func = torch.nn.MSELoss()
plt.ion()
for t in range(500):
    pred_ofit = net_overfitting(x)
    pred_drop = net_dropped(x)
    loss_ofit = loss_func(pred_ofit, y)
    loss_drop = loss_func(pred_drop, y)
    optimizer_ofit.zero_grad()
    optimizer_drop.zero_grad()
    loss_ofit.backward()
    loss_drop.backward()
    optimizer_ofit.step()
    optimizer_drop.step()
    if t % 10 == 0:
        net_overfitting.eval()
        net_dropped.eval()
        plt.cla()
        test_pred_ofit = net_overfitting(test_x)
        test_pred_drop = net_dropped(test_x)
        plt.scatter(x.data.numpy(), y.data.numpy(), c='magenta', s=50, alpha=0.3, label='train')
        plt.scatter(test_x.data.numpy(), test_y.data.numpy(), c='cyan', s=50, alpha=0.3, label='test')
        plt.plot(test_x.data.numpy(), test_pred_ofit.data.numpy(), 'r-', lw=3, label='overfitting')
        plt.plot(test_x.data.numpy(), test_pred_drop.data.numpy(), 'b--', lw=3, label='dropout(50%)')
        plt.text(0, -1.2, 'overfitting loss=%.4f' % loss_func(test_pred_ofit, test_y).data[0], fontdict={'size': 20, 'color':  'red'})
        plt.text(0, -1.5, 'dropout loss=%.4f' % loss_func(test_pred_drop, test_y).data[0], fontdict={'size': 20, 'color': 'blue'})
        plt.legend(loc='upper left'); plt.ylim((-2.5, 2.5));plt.pause(0.1)
        net_overfitting.train()
        net_dropped.train()
plt.ioff()
plt.show()

補(bǔ)充:pytorch避免過(guò)擬合-dropout丟棄法的實(shí)現(xiàn)

對(duì)于一個(gè)單隱藏層的多層感知機(jī),其中輸入個(gè)數(shù)為4,隱藏單元個(gè)數(shù)為5,且隱藏單元的計(jì)算表達(dá)式為:

開(kāi)始實(shí)現(xiàn)drop丟棄法避免過(guò)擬合

定義dropout函數(shù):

%matplotlib inline
import torch
import torch.nn as nn
import numpy as np
def dropout(X, drop_prob):
    X = X.float()
    assert 0 = drop_prob = 1
    keep_prob = 1 - drop_prob
    # 這種情況下把全部元素都丟棄
    if keep_prob == 0:
        return torch.zeros_like(X)
    mask = (torch.rand(X.shape)  keep_prob).float()
    return mask * X / keep_prob

定義模型參數(shù):

num_inputs, num_outputs, num_hiddens1, num_hiddens2 = 784, 10, 256, 256
W1 = torch.tensor(np.random.normal(0, 0.01, size=(num_inputs, num_hiddens1)), dtype=torch.float, requires_grad=True)
b1 = torch.zeros(num_hiddens1, requires_grad=True)
W2 = torch.tensor(np.random.normal(0, 0.01, size=(num_hiddens1, num_hiddens2)), dtype=torch.float, requires_grad=True)
b2 = torch.zeros(num_hiddens2, requires_grad=True)
W3 = torch.tensor(np.random.normal(0, 0.01, size=(num_hiddens2, num_outputs)), dtype=torch.float, requires_grad=True)
b3 = torch.zeros(num_outputs, requires_grad=True)
params = [W1, b1, W2, b2, W3, b3]

定義模型將全連接層和激活函數(shù)ReLU串起來(lái),并對(duì)每個(gè)激活函數(shù)的輸出使用丟棄法。

分別設(shè)置各個(gè)層的丟棄概率。通常的建議是把靠近輸入層的丟棄概率設(shè)得小一點(diǎn)。

在這個(gè)實(shí)驗(yàn)中,我們把第一個(gè)隱藏層的丟棄概率設(shè)為0.2,把第二個(gè)隱藏層的丟棄概率設(shè)為0.5。

我們可以通過(guò)參數(shù)is_training來(lái)判斷運(yùn)行模式為訓(xùn)練還是測(cè)試,并只在訓(xùn)練模式下使用丟棄法。

drop_prob1, drop_prob2 = 0.2, 0.5
def net(X, is_training=True):
    X = X.view(-1, num_inputs)
    H1 = (torch.matmul(X, W1) + b1).relu()
    if is_training:  # 只在訓(xùn)練模型時(shí)使用丟棄法
        H1 = dropout(H1, drop_prob1)  # 在第一層全連接后添加丟棄層
    H2 = (torch.matmul(H1, W2) + b2).relu()
    if is_training:
        H2 = dropout(H2, drop_prob2)  # 在第二層全連接后添加丟棄層
    return torch.matmul(H2, W3) + b3
def evaluate_accuracy(data_iter, net):
    acc_sum, n = 0.0, 0
    for X, y in data_iter:
        if isinstance(net, torch.nn.Module):
            net.eval() # 評(píng)估模式, 這會(huì)關(guān)閉dropout
            acc_sum += (net(X).argmax(dim=1) == y).float().sum().item()
            net.train() # 改回訓(xùn)練模式
        else: # 自定義的模型
            if('is_training' in net.__code__.co_varnames): # 如果有is_training這個(gè)參數(shù)
                # 將is_training設(shè)置成False
                acc_sum += (net(X, is_training=False).argmax(dim=1) == y).float().sum().item() 
            else:
                acc_sum += (net(X).argmax(dim=1) == y).float().sum().item() 
        n += y.shape[0]
    return acc_sum / n

訓(xùn)練和測(cè)試模型:

num_epochs, lr, batch_size = 5, 100.0, 256
loss = torch.nn.CrossEntropyLoss()
def load_data_fashion_mnist(batch_size, resize=None, root='~/Datasets/FashionMNIST'):
    """Download the fashion mnist dataset and then load into memory."""
    trans = []
    if resize:
        trans.append(torchvision.transforms.Resize(size=resize))
    trans.append(torchvision.transforms.ToTensor())
    
    transform = torchvision.transforms.Compose(trans)
    mnist_train = torchvision.datasets.FashionMNIST(root=root, train=True, download=True, transform=transform)
    mnist_test = torchvision.datasets.FashionMNIST(root=root, train=False, download=True, transform=transform)
    if sys.platform.startswith('win'):
        num_workers = 0  # 0表示不用額外的進(jìn)程來(lái)加速讀取數(shù)據(jù)
    else:
        num_workers = 4
    train_iter = torch.utils.data.DataLoader(mnist_train, batch_size=batch_size, shuffle=True, num_workers=num_workers)
    test_iter = torch.utils.data.DataLoader(mnist_test, batch_size=batch_size, shuffle=False, num_workers=num_workers)
    return train_iter, test_iter
def train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size,
              params=None, lr=None, optimizer=None):
    for epoch in range(num_epochs):
        train_l_sum, train_acc_sum, n = 0.0, 0.0, 0
        for X, y in train_iter:
            y_hat = net(X)
            l = loss(y_hat, y).sum()
            
            # 梯度清零
            if optimizer is not None:
                optimizer.zero_grad()
            elif params is not None and params[0].grad is not None:
                for param in params:
                    param.grad.data.zero_()
            
            l.backward()
            if optimizer is None:
                sgd(params, lr, batch_size)
            else:
                optimizer.step()  # “softmax回歸的簡(jiǎn)潔實(shí)現(xiàn)”一節(jié)將用到
            
            
            train_l_sum += l.item()
            train_acc_sum += (y_hat.argmax(dim=1) == y).sum().item()
            n += y.shape[0]
        test_acc = evaluate_accuracy(test_iter, net)
        print('epoch %d, loss %.4f, train acc %.3f, test acc %.3f'
              % (epoch + 1, train_l_sum / n, train_acc_sum / n, test_acc))
train_iter, test_iter = load_data_fashion_mnist(batch_size)
train_ch3(net, train_iter, test_iter, loss, num_epochs, batch_size, params, lr)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PyTorch dropout設(shè)置訓(xùn)練和測(cè)試模式的實(shí)現(xiàn)
  • 淺談pytorch中的dropout的概率p
  • PyTorch 實(shí)現(xiàn)L2正則化以及Dropout的操作
  • pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout
  • pytorch 中nn.Dropout的使用說(shuō)明
  • Pytorch之如何dropout避免過(guò)擬合

標(biāo)簽:駐馬店 常州 宿遷 成都 江蘇 六盤水 蘭州 山東

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pytorch Dropout過(guò)擬合的操作》,本文關(guān)鍵詞  pytorch,Dropout,過(guò),擬合,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pytorch Dropout過(guò)擬合的操作》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于pytorch Dropout過(guò)擬合的操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美a在线看| 成人午夜精品一区二区三区| 亚洲精品欧美日韩| 日本美女久久| 福利片一区二区三区| 19j韩国主播韩宝贝在线| 97人妻精品视频一区| 国产精品电影网| 中老年在线免费视频| 国产欧美一区二区白浆黑人| 国产午夜精品福利视频| 凸凹人妻人人澡人人添| 精品欧美一区二区三区在线观看| 蝌蚪视频在线播放| 韩国三级hd中文字幕有哪些| 久久精品夜色噜噜亚洲aⅴ| 伊人久久精品| 在线你懂的视频| 久草在线中文888| 在线观看网站黄不卡| 多野结衣av一区| 欧美日韩免费精品| 久久99久久99精品免费看小说| 国产亚洲久一区二区| 亚洲毛片在线播放| 国产喷水吹潮视频www| 中文官网资源新版中文第二页在线观看| 日韩在线视频网站| 日韩子在线观看| 五月婷六月丁香| 蜜桃臀一区二区三区| 欧美日韩午夜在线| 在线国产视频观看| 1区1区3区4区产品乱码芒果精品| 青青草原国产视频| 亚洲人成电影在在线观看网色| 五月天激情小说| 国产精品videossex撒尿| 性中国古装videossex| 一本久道在线| 欧美日韩国产精品| 国产精品一区2区3区| 四虎国产精品成人免费4hu| 欧美日韩国产不卡在线看| 欧美成人福利视频| 欧美一二三不卡| 人人草在线视频| 秋霞午夜电影| 天天在线女人的天堂视频| 亚洲欧美中文字幕在线一区| 亚洲成人av免费观看| 欧美成人黄色小视频| 精品剧情v国产在线观看| 成人性做爰aaa片免费看不忠| 国产免费久久av| 久久精品久久综合| 国产日韩亚洲| 在线视频国产三级| 国产日产精品一区二区三区的介绍| 国产精品免费麻豆入口| 国产一区亚洲一区| 久久免费精品| 99成人精品| 日韩免费成人av| 八戒八戒神马在线电影| 欧美日韩午夜在线| 日本免费在线一区| 天天综合中文字幕| 无码人妻aⅴ一区二区三区有奶水| 欧美黄色aaa| 国产高清在线| 亚洲最大的成人网| 2020久久国产精品| 国产乱了高清露脸对白| 日韩一区二区电影网| 视频一区二区三区国产| 国产精品免费久久久| 3d成人动漫网站| 蜜桃传媒一区二区三区| 日韩限制级电影在线观看| 免费成人蒂法| 在线亚洲精品福利网址导航| 99在线观看免费视频精品观看| 欧美激情aaa| 精品国产乱码久久久久久1区二区| 久久久久久久久久久久久久免费看| 国产亚洲欧美日韩高清| 国产成人一区三区| 国产黄a三级三级| 日韩精品无码一区二区三区| 日韩在线高清| aaa级精品久久久国产片| 久久久久久久综合日本| av鲁丝一区鲁丝二区鲁丝三区| 亚洲色欧美另类| 亚洲一卡二卡三卡四卡无卡网站在线看| 久久精品青青大伊人av| 97人人精品| 精品51国产黑色丝袜高跟鞋| 97在线观看视频| 国产日韩久久| 六月婷婷在线视频| 五月亚洲综合| 成人拍拍拍免费视频网站| 中文字幕在线观看欧美| 国产日韩一级二级三级| 午夜精品视频| 久久93精品国产91久久综合| 26uuu久久噜噜噜噜| 亚洲欧美一区二区三区孕妇| 激情小视频在线观看| 欧美激情护士| 视频一区中文字幕| 国产精品白丝喷水在线观看| 日韩二区三区在线| 亚洲性生活网站| 亚洲第一页在线| 99久久视频| 日韩一级免费| 中文字幕无码不卡免费视频| 国产成人免费视频网站高清观看视频| 欧美一区二视频| 亚洲欧洲日韩在线| 欧美在线观看视频网站| 东京热av一区| 日韩精品中文字幕吗一区二区| 超碰97久久国产精品牛牛| 成人亚洲视频| 风间由美中文字幕在线看视频国产欧美| 亚洲精品国产一区| 九九在线免费视频| jiuse九色最新地址| 欧美一级视频精品观看| 色婷婷狠狠五月综合天色拍| 色网站免费在线观看| 日韩美女一区二区三区在线观看| seerx性欧美巨大| 久久精品国亚洲| 久久久久久久爱| 天天插天天干天天操| 高清一区二区三区视频| 青青艹在线视频| 国产精品久久久久免费a∨| 国产亚洲精品熟女国产成人| 日本麻豆一区二区三区视频| 国产91精品一区二区| 久久伊人久久| 特级西西444www大胆免费看| 国内久久精品| 欧美一区二区性| 国产亚洲一区二区三区在线播放| 免费日韩视频| 国产精品久久a| 精品国产免费人成在线观看| 亚洲欧美一区二区激情| 欧美羞羞免费网站| gogogo高清在线观看免费完整版| 欧美三级午夜理伦三级小说| 日本一区二区在线免费播放| 成人精品亚洲人成在线| 国产色视频在线播放| 性做爰过程免费播放| 亚洲av无码专区在线| 青青草97国产精品免费观看无弹窗版| 欧美草草影院在线视频| 日本中文字幕影院| 日韩激情在线观看| 久久人妻精品白浆国产| 在线播放91灌醉迷j高跟美女| 直接在线观看的三级网址| 国产日本欧美一区二区三区在线| 最近免费中文字幕在线第一页| 成人av.网址在线网站| 99久久综合99久久综合网站| 美女少妇一区二区| 在线观看岛国片| 亚洲国产高清一区二区三区| 国产精品一二三四五| 在线网址91| 国产精品欧美精品| 亚洲中文字幕一区| 高清国产mv在线观看| 麻豆精品视频在线观看视频| 老司机免费视频| 18aaaa精品欧美大片h| 日韩不卡一区| 欧美久久电影| 天天撸天天射| 秋霞av在线| 国产无遮挡免费视频| 高清不卡一区二区三区| 尤物视频在线观看视频| 色资源在线观看| 欧美日韩一区中文字幕| 欧美另类bbbxxxxx另类| t66y永久入口地址| 一区二区三区精品视频| 欧美videossexotv100| 你懂的在线观看网站| 91精品尤物| 欧美在线观看网站| 免费看污片的网站| 国产高潮流白浆| 麻豆91在线观看| 日韩免费一级视频| 在线观看欧美日本| 成人午夜大片| 国产又粗又猛又黄又爽无遮挡| 老子影院午夜伦不卡大全| 亚洲激情电影在线| 成人在线免费观看黄色| 中文字幕在线观看不卡视频| 日本精品网站| 91在线精品入口| 久久亚洲国产精品日日av夜夜| 久久www免费人成精品| 欧美一级二级三级蜜桃| 国产精品网红福利| 免费不卡av网站| 精品无码国模私拍视频| 韩日毛片在线观看| 亚洲欧美一区二区三区极速播放| 中文字幕av一区| 欧美大片免费久久精品三p| 亚洲AV无码一区二区三区少妇| 黑人狂躁日本妞一区二区三区| 日韩xxxxxxxxx| 激情五月综合| 国产美女在线免费观看| 竹内纱里奈兽皇系列在线观看| 精品三级久久久| 天干夜天天夜天干天ww| 天天摸天天操天天爽| 最新日韩在线视频| a级黄色免费视频| 欧美精品色网| 欧洲一级毛片| 久久午夜鲁丝片| 欧美色网址大全| 成人在线黄色电影| 在线观看欧美日韩| 久久久五月婷婷| 国产一区二区三区免费在线| va天堂va亚洲va影视| 国产一区玩具在线观看| 在线视频观看日韩| 九色porny在线观看| 偷拍一区二区| 极度色播免费播放视频| 国产又粗又长又爽| 九九久久成人| 国产激情在线免费观看| 亚洲茄子视频| 日韩最新中文字幕| 国产欧美日韩在线观看视频| 在线国产精品一区| 午夜精品999| 国产精品第一页在线| www.99com| 成人久久精品人妻一区二区三区| 国产精品久久久久久av福利| 亚洲最大福利视频网站| 亚洲欧美国产精品久久久久久久| 污视频在线播放| 国产三级视频在线看| metart日本精品嫩模| 91精品国产91久久久| 日韩毛片一区| 无码精品国产一区二区三区免费| 成人中文字幕在线| 2021久久国产精品不只是精品| 欧美午夜美女看片| 色噜噜狠狠成人中文综合| 国产欧美一区二区三区另类精品| www.麻豆| 国产99久久精品一区二区永久免费| 美国欧美日韩国产在线播放| 99精品视频中文字幕| 嫩草影院永久一二三入口| 国产精品一二三区在线| 北条麻妃一区二区三区在线观看| 黄网在线免费| 97超碰国产一区二区三区| av自拍一区| 国产一二三av| 国产日韩欧美电影| 免费播放av| 精品在线播放免费| 亚洲摸下面视频| 日韩一二三四区| 午夜精品一区二区三区免费视频| 午夜影院免费观看视频| 欧美在线一区二区三区四| 亚洲线精品一区二区三区| 日韩欧美视频一区二区三区四区| 国产精品乱子伦| 麻豆短视频在线观看| 丝袜美腿亚洲一区二区图片| 在线免费看视频| 日本在线观看一区二区三区| 永久免费无码av网站在线观看| jizz国产在线观看| 波多野结衣mp4| 亚洲一级免费在线观看| 九色丨蝌蚪丨成人| 久久精品黄色片| 91免费国产网站| 涩涩屋黄网站| 91免费国产在线| 国内久久精品视频| 狠狠色2019综合网| 免费污污视频在线观看| 日韩欧美的一区二区| 视频免费在线观看| 中文在线网在线中文| 精品久久久久久中文字幕一区奶水| 国产极品999| 精品亚洲一区二区三区在线播放| 成人午夜福利一区二区| 中日韩av在线播放| 99麻豆久久久国产精品免费| 奇米综合一区二区三区精品视频| 寂寞护士中文字幕mp4| 欧美插天视频在线播放| 北条麻妃一区二区三区在线观看| 免费av片在线观看一道本| 欧美激情久久久久久久久久久| 欧美日韩一区中文字幕|