首页 > 解决方案 > 如何使所有批次共享一层(批次大小为1)?

问题描述

我想制作训练字体的编码器-解码器模型。

# Encoder
(batch x 1 x 128 x 128) -> (batch x 512 x 1 x 1)

# Concatenate embedding layers
(batch x 512 x 1 x 1) + (batch x 128 x 1 x 1) # which is embedding layer

# Decoder
(batch x 640 x 1 x 1) -> (batch x 1 x 128 x 128)

通常,编码器-解码器模型训练计算机输入的单词,但我想让模型可以制作具有多种字体的各种单词。因此,我添加了呈现字体种类的嵌入层。(和word2vec一样,可能是font2vec?)

但是,该嵌入层是 128 维的,所有批次都应立即共享和更新。它可以使用 batch_size 为 1 进行训练,但我想使用大的 batch_size。如何使用一个 (128 x 1 x 1) 嵌入层将它们的权重共享给所有批次?

(框架是 pytorch 或 keras 或 tensorflow 之一)

标签: pythonautoencoder

解决方案


推荐阅读