美文网首页
生成batch生成器的简单方法

生成batch生成器的简单方法

作者: 英文名字叫dawntown | 来源:发表于2020-02-12 00:35 被阅读0次

关键在于yield的用法,廖雪峰老师的这篇文章解释得非常清楚详细。以下是生成batch训练训练集的简单方法:

方法一:

train_data = torch.tensor(...)

def data_iter(batch_size, train_data, train_labels):
    num_examples = len(train_data)
    indices = list(range(num_examples))
    random.shuffle(indices)  # random read 10 samples
    for i in range(0, num_examples, batch_size):
        j = torch.LongTensor(indices[i: min(i + batch_size, num_examples)]) # the last time may be not enough for a whole batch
        yield  train_data.index_select(0, j), train_labels.index_select(0, j)

方法二:

# combine featues and labels of dataset
dataset = Data.TensorDataset(features, labels)

# put dataset into DataLoader
data_iter = Data.DataLoader(
    dataset=dataset,            # torch TensorDataset format
    batch_size=batch_size,      # mini batch size
    shuffle=True,               # whether shuffle the data or not
    num_workers=2,              # read data in multithreading
)

使用方法分别为:

# 方法一
for X, y in data_iter(batch_size, train_data, train_labels):
    pass
# 方法二
for X, y in data_iter:

相关文章

  • 生成batch生成器的简单方法

    关键在于yield的用法,廖雪峰老师的这篇文章解释得非常清楚详细。以下是生成batch训练训练集的简单方法: 方法...

  • fit_generator() 函数

    1、函数与参数 1.1 功能: 利用Python的生成器,逐个生成数据的batch并进行训练。生成器与模型将并行执...

  • python生成器函数的应用场景举例---为copy过程添加进度

    首先看一个最简单的生成器,并判断是否是生成器,代码如下: 生成器的特点是可以迭代,通过dir 查看生成器的方法, ...

  • 生成器(Generator)

    生成器(generator)是一种特殊的迭代器,它的实现更简单优雅。创建生成器的方法主要有两种:生成器函数和生成器...

  • 生成器

    创建生成器方法1 要创建一个生成器,有很多种方法。第一种方法很简单,只要把一个列表生成式的 [ ] 改成 ( ) ...

  • keras图片生成器ImageDataGenerator

    深度学习模型中很多数据是通过batch形式来进行训练的,这需要创建一个batch生成器。ImageDataGene...

  • Dart之旅11: 其他特性

    生成器 当你想要生成一个值的序列考虑使用生成器方法,在在Dart中内置了两种生成器方法: 同步生成器:返回一个It...

  • ES6 生成器Generator

    生成器 生成器(Generators): 一个更好的方法来构建遍历器。 --- 生成器和迭代器 生成器就是一类...

  • 生成器

    什么是生成器? 生成器就是一种可循环可计算的机制 创建生成器方法1 要创建一个生成器,有很多种方法。第一种方法很简...

  • PHP生成器

    Generators 生成器提供了一种容易的方法来实现简单的迭代器 生成器允许您编写使用foreach的代码迭代一...

网友评论

      本文标题:生成batch生成器的简单方法

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