@minamisa

Как сделать так, чтобы модель работала для любых входов/выходов?

Как сделать так, чтобы модель работала для любых входов/выходов? Мне нужно написать модель по схеме на картинке. Но я не понимаю как сделать так, чтобы модель работала для любых int/out, а не только для int = 20, out = 10.
import torch
import torch.nn as nn

class MyModel(nn.Module):
    def __init__(self, inp, out):
        super(MyModel, self).__init__()
        layers = []
        for i in range(9):
            layers.append(nn.Linear(inp, inp - 1))
            layers.append(nn.ReLU())
            inp -= 1
        layers.append(nn.Linear(inp, out))
        self.layers = nn.ModuleList(layers)

    def forward(self, x):
        for layer in self.layers:
            x = layer(x)
        return x

model = MyModel(inp=20, out=10)

Как исправить код?
66df43522dfea806439126.png
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Делаешь простой цикл for i in range(inp, out, -1):, в теле цикла добавляешь в список слоёв ещё один слой c размером входа i и размером выхода i-1.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы