Мне нужна нейронная сеть (полностью подключенная), которая принимает пакет изображений размером 100 (эти изображения являются выходными данными кодировщика с размерностью (10,)) в форме тензора, поэтому [100,10] и выводит вектор с размером 20. Сначала я использовал этот код:
def mlp(sizes, activation=nn.Tanh, output_activation=nn.Identity):
layers = []
for j in range(len(sizes)-1):
act = activation if j < len(sizes)-2 else output_activation
layers += [nn.Linear(sizes[j], sizes[j+1]), act()]
return nn.Sequential(*layers)
Это дает мне тензор с размером [100,20]. Можно ли сгладить вывод последнего слоя перед nn.identity, а затем использовать еще два слоя [2000,100] и [100,20], чтобы мой результат имел форму (20,). Интересно, возможно ли это в полностью подключенная нейронная сеть, поскольку я видел, что nn.flatten используется только на последних уровнях CNN. Я ценю помощь.