Как создать ученика с помощью API fastai

#pytorch #text-classification #imdb #fast-ai

Вопрос:

Я пишу классификатор imdb, используя API fastai. У меня возникли проблемы с созданием Ученика. Любая помощь была бы очень кстати. Спасибо.

версии: fastai = 2.5.0 pytorch = 1.7.1

Вот код для создания ученика

 imdb_clas = DataBlock(
    blocks=(TextBlock.from_df('review', seq_len=72), CategoryBlock),
    get_x=ColReader('review'), get_y=ColReader('sentiment'))
dls = imdb_clas.dataloaders(imdb, bs=5)

class IMDBModel(Module):
    def __init__(self, vocab_size, embed_dim, num_class):
        self.embedding = nn.Embedding(vocab_size, embed_dim)
        self.fc = nn.Linear(embed_dim, num_class)
        self.init_weights()

    def init_weights(self):
        initrange = 0.5
        self.embedding.weight.data.uniform_(-initrange, initrange)
        self.fc.weight.data.uniform_(-initrange, initrange)
        self.fc.bias.data.zero_()

    def forward(self, text):
        embedded = self.embedding(text)
        return self.fc(embedded)

learn = Learner(dls, IMDBModel(len(vocabs), 64, num_classes), metrics=[accuracy], loss_func=CrossEntropyLossFlat())



learn.fit_one_cycle(n_epoch=1)

ValueError: Expected input batch_size (16725) to match target batch_size (5).
 

Не удалось устранить эту ошибку.