亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

CIFAR10 數據加載器采樣器拆分

CIFAR10 數據加載器采樣器拆分

PHP
拉丁的傳說 2023-11-09 21:18:47
我正在嘗試分割 CIFAR10 的訓練數據,因此訓練集的最后 5000 個用于驗證。我的代碼size = len(CIFAR10_training)dataset_indices = list(range(size))val_index = int(np.floor(0.9 * size))train_idx, val_idx = dataset_indices[:val_index], dataset_indices[val_index:]train_sampler = SubsetRandomSampler(train_idx)val_sampler = SubsetRandomSampler(val_idx)train_dataloader = torch.utils.data.DataLoader(CIFAR10_training,                                          batch_size=config['batch_size'],                                          shuffle=False,  sampler = train_sampler)valid_dataloader = torch.utils.data.DataLoader(CIFAR10_training,                                           batch_size=config['batch_size'],                                           shuffle=False,  sampler = val_sampler)print(len(train_dataloader.dataset),len(valid_dataloader.dataset),但最后一個打印語句打印 50000 和 10000。當我打印 train_idx 和 val_idx 時,它不應該是 45000 和 5000 它打印正確的值([0:44999],[45000:49999] 我的代碼有什么問題嗎
查看完整描述

1 回答

?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

我無法復制您的結果,當我執行您的代碼時,打印語句輸出相同數字的兩倍:train_CIFAR10valid_dataloaderCIFAR10_test(50000, 50000)

train_dataloader.datasetvalid_dataloader.datasetCIFAR10_training

您不能要求len(train_dataloader)45000/batch_size

如果您需要知道分割的大小,那么您必須計算采樣器的長度:

print(len(train_dataloader.sampler), len(valid_dataloader.sampler))

除此之外,您的代碼很好,您正確地分割了數據。


查看完整回答
反對 回復 2023-11-09
  • 1 回答
  • 0 關注
  • 124 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號