美文网首页
批数据训练

批数据训练

作者: 地平线上的背影 | 来源:发表于2019-02-13 10:59 被阅读0次

为应对大数据和内存限制,我们常采用批训练的方式以提高训练效率

1. 数据准备

import torch
import torch.utils.data as Data

torch.manual_seed(1)    # reproducible

BATCH_SIZE = 5
# BATCH_SIZE = 8

x = torch.linspace(1, 10, 10)       # this is x data (torch tensor)
y = torch.linspace(10, 1, 10)       # this is y data (torch tensor)

2.数据装载与分批次

torch_dataset = Data.TensorDataset(x, y)
loader = Data.DataLoader(
    dataset=torch_dataset,      # torch TensorDataset format
    batch_size=BATCH_SIZE,      # mini batch size
    shuffle=True,               # random shuffle for training
    num_workers=2,              # subprocesses for loading data
)

注:

  1. Data.TensorDataset():包装数据和目标张量的数据集,通过沿着第一个维度索引两个张量来恢复每个样本。
  2. batch_size: mini batch size
  3. shuffle: random shuffle for training
  4. num_workers=2:subprocesses for loading data,数据有x,y两类
  5. Data.DataLoader(): 数据加载器, 用以组合数据集和采样器,并在数据集上提供单进程或多进程迭代器。

3. 批训练

def show_batch():
    for epoch in range(3):   # train entire dataset 3 times
        for step, (batch_x, batch_y) in enumerate(loader):  # for each training step
            # train your data...
            print('Epoch: ', epoch, '| Step: ', step, '| batch x: ',
                  batch_x.numpy(), '| batch y: ', batch_y.numpy())


if __name__ == '__main__':
    show_batch()

注:

  1. epoch:表示所有数据的训练次数
  2. batch:每一批次装载
  3. 补充:zip()函数,将zip(x,y)装载为元组,以成对提取数据

相关文章

  • 批数据训练

    为应对大数据和内存限制,我们常采用批训练的方式以提高训练效率 1. 数据准备 2.数据装载与分批次 注:Data....

  • Pytorch神经网络-批训练

    神经网络中的训练形式不是将所有的数据一起打包一起进行训练。有时数据非常大。可以训练数据中的一小批,不断的进行。这样...

  • TensorFlow(4)MNIST数据集

    加载数据包 解压、读取数据包 观察数据集 训练集数据元素的直观展示 获得一批数据并观察数据类型和形状

  • Optimizer 优化器

    本文介绍常见的优化器及其作用 1.数据及超参数准备 2. 批训练数据 注:Data.DataLoader ,组合数...

  • yolov3代码涉及到的Keras Model fit_gene

    fit_generator 使用 Python 生成器(或 Sequence 实例)逐批生成的数据,按批次训练模型...

  • 深度学习 - 草稿

    mini-batch size = m则为批梯度下降 进行梯度下降时处理全部的训练样本,如果训练样本的数据量很大,...

  • 深度学习 - 草稿 - 草稿

    mini-batch size = m则为批梯度下降 进行梯度下降时处理全部的训练样本,如果训练样本的数据量很大,...

  • 深度学习 - 草稿 - 草稿 - 草稿

    8mini-batch size = m则为批梯度下降 进行梯度下降时处理全部的训练样本,如果训练样本的数据量很大...

  • 正则化dropout

    Dropout方法总结:在前向传播算法和反向传播算法训练模型时,每轮梯度下降迭代时,它需要将训练数据分成若干批,然...

  • 最最基础的概念们

    Batch_Size Full Batch Learning 并不适用大数据集,所以分批训练,称为批梯度下降法(M...

网友评论

      本文标题:批数据训练

      本文链接:https://www.haomeiwen.com/subject/zwureqtx.html