Если вы хотите выполнить классификацию для каждого объекта в ваших входных данных, вы должны держать объекты отдельно друг от друга; т. е. ваш ввод должен быть в форме (batch_size, list_size, object_size)
. Затем, учитывая количество полученных классов (скажем, m
классов), линейный слой преобразует входные данные в форму (batch_size, list_size, m)
. В этом случае у вас будет m
баллов для каждого объекта, которые можно использовать для прогнозирования метки класса.
Но теперь возникает вопрос; почему мы сглаживаемся в нейронных сетях вообще? Ответ прост: потому что вы хотите объединить всю информацию (в вашем конкретном случае c, информационные блоки являются объектами) внутри пакета, чтобы увидеть, влияют ли они каким-либо образом друг на друга, и если это так, проверить, Ваша сеть может изучать эти функции / шаблоны. На практике, учитывая природу вашей проблемы и данные, с которыми вы работаете, если различные объекты действительно связаны друг с другом, то ваша сеть сможет их изучить.